日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > > 嵌入式微處理器
[導讀]作者:包云崗 來源:中國科學院大學 知乎地址:https://www.zhihu.com/question/409298856/answer/1363569013 編 者 按? 7月25日,中國科學院大學正式公布首期“一生一芯”計劃成果——5位本科畢業(yè)生主導完成一款64位RISC-V處理器SoC芯片設計并實現(xiàn)流片。 如


作者:包云崗

來源:中國科學院大學

知乎地址:https://www.zhihu.com/question/409298856/answer/1363569013



編 者 按

 

7月25日,中國科學院大學正式公布首期“一生一芯”計劃成果——5位本科畢業(yè)生主導完成一款64位RISC-V處理器SoC芯片設計并實現(xiàn)流片。


如何評價中國科學院大學“一生一芯”計劃?這一問題在知乎引發(fā)熱議。27日,該計劃負責人、國科大計算機學院教授、中科院計算所先進計算機系統(tǒng)研究中心主任包云崗現(xiàn)身知乎,詳細介紹了“一生一芯”背后的故事。


包云崗介紹說,這項計劃源于對“如何將教學和開源芯片結合起來”這一問題的思考,更啟發(fā)于中國通訊科技巨頭華為面臨的芯片困境。


包云崗曾與華為專家交流,了解到短期內(nèi)的需求華為自己基本能應對,而最需要的是處理器芯片設計人才。


在當天的發(fā)布會上,團隊也介紹了“一生一芯”計劃的愿景目標:在國科大實踐經(jīng)驗的基礎上向全國輻射,力爭實現(xiàn)3年后在全國每年能培養(yǎng)500名學生,5年后實現(xiàn)每年培養(yǎng)1000名學生,10年達到每年培養(yǎng)1萬名學生。


以下為包云崗在知乎的回答全文,科學網(wǎng)公號經(jīng)授權轉(zhuǎn)載。




一、醞釀


2018年11月8日,烏鎮(zhèn),世界互聯(lián)網(wǎng)大會,經(jīng)過9個月籌備工作,中國開發(fā)指令生態(tài)(RISC-V)聯(lián)盟正式成立。晚上在烏鎮(zhèn)的一家餐館慶祝時,坐在我邊上的一位老師問了個問題:“以后打算怎么做開源芯片生態(tài)?”


其實這也是在2018年期間我經(jīng)常問自己的一個問題,我有一個很粗的想法——能不能讓學生參與到開源芯片生態(tài)建設中——經(jīng)常會浮現(xiàn)出來。


聽了那位老師的問題,我在腦海中又浮現(xiàn)出這個想法,然后就在飯桌上一邊整理思路一邊介紹如何將教學和開源芯片結合起來。這應該是“一生一芯”計劃的最初萌芽。



那時還沒想到“一生一芯”這個名字,但已經(jīng)大致形成了這樣的目標——讓本科生也能做處理器芯片,讓本科生能帶著自己設計的處理器芯片畢業(yè)。但聯(lián)盟成立后,這個想法并沒有實質(zhì)性推動。


2019年5月16日華為被美國列入實體名單,全國震驚。各界都在想能為華為做些什么,我們也在思考。


但是,我們是做開源芯片,華為暫時還用不上;我們采用的是開放的RISC-V指令集,而華為的主力芯片都是基于ARM??雌饋砦覀兪菬o法幫助華為解決燃眉之急了。


但和華為專家交流后,他們說短期內(nèi)的需求華為自己基本能應對,他們更需要的是中長期的先進技術,而最需要的是處理器芯片設計人才


因為華為的芯片架構設計團隊很多在美國硅谷,由于美國的出口管制,雖然是華為的全資子公司,但其技術也不能輸入到華為總部。這導致華為在美國的芯片設計人才不能再發(fā)揮作用,但在國內(nèi)又招不到這樣的人才。這才是華為的心腹之患。


華為在國內(nèi)找不到處理器芯片設計人才的情況是在意料之中。


2017年,我曾安排組里的學生統(tǒng)計過2008~2017十年的體系結構頂級會議ISCA論文第一作者的情況,最后統(tǒng)計數(shù)據(jù)發(fā)現(xiàn)這些優(yōu)秀人才 85%選擇在美國就業(yè),僅有 4%在中國就業(yè),差距巨大。這和國內(nèi)很多大學不開展處理器芯片設計相關教學與研究密切相關。



事實上,類似的人才危機美國也曾經(jīng)歷過,1982 年全美上千所大學中只有不到100 位教授和學生從事半導體相關的研究 。


為了應對人才危機,美國國防部高級研究計劃署 (DARPA) 在1981年啟動MOSIS 項目,為大學提供流片服務,通過MPW模式大幅降低芯片設計門檻。


30 余年來MOSIS為大學和研究機構流了60000多款芯片,培養(yǎng)了數(shù)萬名學生。



由此可見,降低芯片設計門檻,讓學生能設計自己的芯片并流片,可大幅提高人才培養(yǎng)效率。這和我此前的構想和目標完全一致。我們不能再耽誤了,要加速人才培養(yǎng)計劃。


二、正式啟動


我自作主張地給這個計劃起了個名字:“一生一芯”。


初衷是希望有一天能讓每一個學生都能帶著自己設計的芯片畢業(yè),不管未來是不是真得能實現(xiàn),這至少聽起來是一個美好的理想,而且還有一點爛漫——后來很多人聽到這個名字,第一印象大多是“一輩子做一顆芯片”。還有女生有更浪漫地理解:“一生一心一意愛一人”。不管如何,看來大家對這個名字似乎還都不反感。


然后,我又聯(lián)系了幾位國科大本科生,詢問他們愿不愿意參加這個“一生一芯”計劃當小白鼠。出于意料地是,這些準00后(98/99出生)都表示愿意挑戰(zhàn)一下,愿意當小白鼠。


6月20日,我在開源芯片工作組群向大家宣布:啟動“一生一芯”計劃!這并不是研制產(chǎn)品級芯片,而是一次教學實踐。很快唐丹老師為未來的芯片起好了內(nèi)部代號“COOSCA”,三門課Computer Organization/Operating System/Computer Architecture的縮寫。



隨后開始組建教學團隊,隨著項目的進行教學團隊也在不斷擴大:唐丹老師和工程師劉彤負責SoC架構設計指導,余子濠老師負責處理器核設計(其實子濠還是博士生,但因為在國內(nèi)計算機系統(tǒng)教學領域很有名,所以我們也半開玩笑地叫他老師),張科老師負責項目協(xié)調(diào)、與國科大對接,并和常軼松老師、趙然老師一起在FPGA模擬仿真方面進行指導,解壁偉老師和李嶧工程師在后端物理設計上給予支持,深圳大學蔡曄老師則參與幫助設計PCB板卡,另外蔣德鈞老師和王卅老師是國科大本科操作系統(tǒng)任課老師,在操作系統(tǒng)方面給予支持,兩位博士生王誨喆與徐易難也擔任起助教的角色,幫助答疑解惑。而我自己,則更像是一個啦啦隊長,給大家打雞血。



教學團隊開始行動起來了,大家討論制定總體方案,確定技術路線,選擇基礎平臺,搭建開發(fā)環(huán)境,選擇流片工藝和班車……參加首期“一生一芯”計劃的同學也最終確定,一共有五位,他們是金越、王華強、王凱帆、張林雋和張紫飛。


這五位同學通過了計算所暑期夏令營面試,均被錄取為計算所研究生,其中金越導師是陳明宇研究員,王華強導師是蔣德鈞副研究員,王凱帆是孫凝暉院士,張林雋和張紫飛的導師則是我。但接下來的時間,他們將組成一個團隊,一起挑戰(zhàn)帶著自己設計的處理器芯片畢業(yè)這個任務。



8月20日,當唐丹老師和解壁偉老師終于落實中芯國際110nm工藝的流片渠道后,“一生一芯”計劃一切準備就緒。


8月27日,參加“一生一芯”計劃的首批五位同學和教學團隊一起在我的辦公室開了一次簡單但意義重大的動員大會。


“一生一芯”計劃正式啟動!


項目分工


三、四個月高強度開發(fā)


開弓沒有回頭箭。唐丹老師確定了最合適的流片班車是12月17日,距離動員大會不到4個月!這樣芯片能在4月份完成封裝,返回進行測試。


如果一切順利,那就可以趕上五月底或六月初的國科大本科畢業(yè)答辯,到時可以在答辯現(xiàn)場展示芯片。但是如果錯過這趟班車,那就需要再等2個月趕下一趟班車,這就意味著芯片不可能在畢業(yè)答辯時返回?!耙簧恍尽眻F隊需要跟時間賽跑。


我們在確定總體方案時有兩個決定:


一是用Chisel開發(fā),此前我們實驗室做過Chisel與Verilog在開發(fā)效率和開發(fā)質(zhì)量上的對比實驗,證明Chisel能數(shù)倍替身開發(fā)速度,同時開發(fā)質(zhì)量不比Verilog差,相關結果發(fā)表在論文《芯片敏捷開發(fā)實踐:標簽化RISC-V》。


二是以余子濠為南大開發(fā)的一款教學RISC-V處理器核為基礎進行改進,這主要是因為余子濠在開發(fā)這款處理器的過程中構建了豐富的工具,包括NEMU軟件模擬器、指令差分測試框架等,這些都有助于加速開發(fā)。


而教學處理器功能還很基礎,要能運行Linux并且支持流片,需要新增大量新功能,包括RV64IM/RVC/RVA等指令擴展、時鐘中斷、硬件填充的TLB、M/S/U特權級、缺頁異常、Cache預取、SDRAM控制器、外圍I/O設備……這是一種貼近實戰(zhàn)的開發(fā)模式——實際的產(chǎn)品研發(fā)和科研工作中,往往不是總是從頭開始,更多的是在已有的基礎上,增加新的功能,提高性能等等。這就需要培養(yǎng)學生“理解-消化-創(chuàng)新”的能力。


接下來是4個月高強度的開發(fā),然而有些關鍵模塊的工作原理是課堂上沒有介紹過的,同學們還需要進行一些探索性的嘗試,有時甚至需要將此前的設計推倒重來,他們會因此感到焦慮或沮喪,這對他們的心態(tài)也是很大的考驗。


教學團隊不僅僅需要給予技術指導,還需要對學生的心態(tài)進行正確的引導,告訴他們不確定性是探索過程中的客觀規(guī)律,然后引導他們?nèi)タ偨Y探索失敗的經(jīng)驗,去深刻地分析當前方案不可行的原因,從而加深對問題的理解,讓他們正確認識到探索失敗的意義。



雖然任務極具挑戰(zhàn),但不斷有進展。每取得一個小里程碑,大家都會記錄下那個時刻,精確到分鐘,因為覺得未來有一天也許用得上。后來,這些時刻真的用上了,就是宣傳視頻中的那條時間線。


這個過程中,國科大各方給了很大的支持,從校領導到本科部、計算機學院各級都很關心和重視;在中科院計算所,所長孫凝暉院士、主管教學的陳熙霖副所長、教育處李琳老師等都給予全方位的保障與支持。這也賦予了“一生一芯”團隊某種使命感,更激發(fā)了大家的斗志。


12月19日,COOSCA 1.0芯片版圖凍結。當唐丹老師告知版圖已經(jīng)正式提交,大家就如高考交卷,終于舒了一口氣,卻又懸起了一顆心。



四、疫情中的測試驗證


等待芯片返回是一種既期盼又擔憂的感覺。這種感覺又進一步被突如其來的疫情放大了。


當1月23日宣布武漢封城后疫情不斷發(fā)展,我們也越來越擔憂正在流片中的那顆COOSCA芯片還能不能按時回來,還能不能趕上畢業(yè)答辯。出乎意外的是芯片基本按照預期時間返回了,在這里我們要對中芯國際和封測企業(yè)的員工們表達深深的敬意!



然而疫情還是對測試工作產(chǎn)生了影響,因為學生不能返校,無法到在現(xiàn)場調(diào)試與測試。余子濠、蔡曄和劉彤三位挺身而出,協(xié)助調(diào)試測試工作。測試驗證工作其實也是非常具有挑戰(zhàn)性,因為從底層PCB版圖、內(nèi)存顆粒到中間處理器設計、到上層操作系統(tǒng)、應用軟件,每個層次都可能出問題。哪怕一個小問題,都會造成芯片無法正常工作。


經(jīng)過大約1個月的調(diào)試測試,終于證明芯片一切正常,可以啟動Linux操作系統(tǒng)。但也發(fā)現(xiàn)了芯片的I/O模塊存在bug,影響了SD卡的讀寫。


測試驗證也是充滿了戲劇性。一開始調(diào)試時比較保守,將芯片降到了50MHz,沒想到系統(tǒng)出現(xiàn)了很多問題。后來把芯片頻率從50MHz跳到了200MHz,結果原來很多問題都消失了,能穩(wěn)定地運行Linux。


又進一步把頻率提高到了350MHz,啟動Linux出現(xiàn)了問題,但是可以穩(wěn)定地運行RT-Thread。這個頻率和后端仿真基本一致。這也驗證了用Chisel開發(fā)和Verilog開發(fā)對后端物理設計并沒有很大的影響。



五、畢業(yè)答辯演示


2020年6月2日,國科大本科生畢業(yè)設計答辯日。五位同學分別介紹了他們基于COOSCA處理器核的進一步優(yōu)化工作:


  • 王華強:《基于RISC-V的亂序多發(fā)射處理器設計》
  • 張紫飛:《基于RISC-V的向量處理單元設計》
  • 張林雋:《開源處理器分支預測器的設計與性能優(yōu)化》
  • 金越:《基于敏捷開發(fā)語言的開源處理器非阻塞緩存的設計與實現(xiàn)》
  • 王凱帆:《RISC-V平臺下的二進制翻譯與優(yōu)化》

其中王凱帆的畢業(yè)設計中使用了COOSCA核,也是他們自己設計的核首次在科研中得到應用。


王華強同學代表“一生一芯”團隊展示了COOSCA芯片的功能。他進一步又將這個核改進為亂序多發(fā)射,在FPGA上進行了測試驗證,結果顯示比COOSCA核的IPC提升了一倍。他的畢業(yè)設計也獲得了國科大校級優(yōu)秀畢業(yè)設計。


五位本科生,實現(xiàn)了帶著自己設計的處理器芯片畢業(yè)這個目標!


后來,王凱帆又將國科大操作系統(tǒng)課程上同學們自己編寫的UCAS-Core移植到了COOSCA核上,實現(xiàn)了用自己寫的CPU運行自己寫的操作系統(tǒng)這個小目標。

六、“果殼”公開亮相


CRVA聯(lián)盟將于7月18日召開RISC-V年中技術研討會,“一生一芯”團隊決定讓王華強提交一份設計報告,正式向社區(qū)介紹COOSCA核的設計。提交前,大家覺得COOSCA是一個內(nèi)部代號,現(xiàn)在要公開亮相了,應該有個正式一點的名字。

同學們討論后,決定改名為“果殼(NutShell)”,和國科大的“國科”同音??梢钥吹贸鰜?,他們對國科大確實有些深厚的情感。

五位同學開始一起為“果殼”的首次亮相做了大量準備工作:王凱帆整理了代碼以及相應的文檔,并在Github上開源,王華強整理了一份介紹“果殼”設計的報告PPT。

7月18日,王華強在技術研討會第二個出場,介紹了果殼的設計細節(jié)和一些開發(fā)過程中的經(jīng)驗體會。

這是報告視頻: 《NutShell-本科生設計的可運行Linux的RISC-V芯片》。

https://www.bilibili.com/video/BV1c54y1B7ay?share_medium=android&share_plat=android&share_source=WEIXIN&share_tag=s_i&timestamp=1595371668&unique_k=slzWhJ



“果殼”設計開源鏈接:https://github.com/OSCPU/NutShell

7月22日,王華強又收到了“果殼”被RISC-V Global Forum被接收的通知。

9月3日,王華強同學將代表團隊向全球業(yè)界介紹“果殼”的設計,這也是“果殼”首次在國際舞臺上亮相??戳艘幌逻@次RISC-V全球論壇的日程,報告均來自世界各地的業(yè)界資深專家,還包括圖靈獎得主David Patterson教授。

國科大本科生能登上RISC-V全球論壇介紹他們設計的處理器核,這在國際上也是非常難得了。作為教學團隊成員,我們內(nèi)心也有一份自豪。


日程:https://events.linuxfoundation.org/riscv-global-forum/program/schedule/



七、收獲與體會


我們在調(diào)研中發(fā)現(xiàn)和“一生一芯”計劃目標最接近的是2017年春季開始UC Berkeley開了一門新課  EE194/290C “28nm SoC for IoT”,目標是設計一個SoC芯片,集成各種IP模塊,包括一個Berkeley開發(fā)的RISC-V Rocket處理器核。這門課以流片為目標,2017年春由9位本科生與1位研究生參加,通過1學期完成了流片,但未提供信息證明芯片能正常工作。

伯克利EE194/290C這門課是根據(jù)已有的RISC-V核和其他IP核進行SoC集成。而“一生一芯”與EE194/290C課程的區(qū)別在于要讓本科生直接設計一款64位RISC-V處理器,然后在這個核的基礎上,學生們需進一步集成與驗證一系列外圍IP,最終形成一個能運行Linux操作系統(tǒng)的SoC芯片,這極具挑戰(zhàn)。

一年前,我們不知道這個目標是不是可行,最終能不能成功。但如今,我們探了回路,并且把路走通了,證明是可行的。這個摸索的過程積累了不少經(jīng)驗,也充滿了教訓。五位同學作為小白鼠參與首期“一生一芯”計劃,成長了很多。

他們不僅在項目中掌握了處理器芯片設計所需的專業(yè)知識,也鍛煉出了優(yōu)秀人才所具備的出色心理素質(zhì)。一起來看看他們的感悟:



如今,這五位同學正在參與一個更有挑戰(zhàn)的項目,開發(fā)一款高性能亂序多發(fā)射RISC-V處理器核的設計。一年前,他們在做“果殼”時還有些吃力,現(xiàn)在已是這個新團隊中的骨干,和其他博士生和工程師們一起攻堅克難。

去掉團隊中蔡曄、唐丹和我這三位40歲以上的中年人,這支隊伍平均年齡只有23.1歲,但他們表現(xiàn)出來的戰(zhàn)斗力卻是驚人的——不到三個星期就從頭開始完成了亂序處理器主流水線的設計與實現(xiàn),并且通過CoreMark測試。

等到他們30歲時,就可以說已經(jīng)是處理器芯片和計算機系統(tǒng)設計領域的“老兵”了。那時,他們將進入各自的工作崗位,也許去工業(yè)界研發(fā)產(chǎn)品,也許在學術界做科研。相信那時他們的創(chuàng)造力會得到更大的發(fā)揮和展現(xiàn)。我對這批年輕人的未來充滿期待。



從教學團隊角度來看,除了前期在總體方案、環(huán)境平臺等方面需做好充分準備以外,在開發(fā)過程中有四方面指導尤其重要(以下為余子濠老師總結):

1. 項目規(guī)劃和分工 。學生在開發(fā)初期不一定能完全掌握芯片中各個模塊之前的關系,此時需要教師對學生的工作進行較為細致的分工,讓學生通過一些初期的任務來認識芯片的全貌。

隨著項目的進行,學生對芯片的認識逐漸清晰之后,教師進行的分工可以向粗略的方向轉(zhuǎn)變,向?qū)W生提出清晰的任務目標,并讓學生嘗試提出自己的解決方案。

2. 引導學生了解項目中的每一處細節(jié)。 芯片是一個復雜的系統(tǒng),學生需對芯片每一個模塊的行為都有所了解,還需要了解程序在芯片上運行的每一處細節(jié)。但是學生一開始往往不能從課程設計的模式中轉(zhuǎn)變過來,認為只需要了解自己任務相關的模塊即可,不去主動了解其它模塊,不去了解軟件層次的行為。

這導致他們在遇到問題會想不出解決的思路。此時教師需要對學生進行引導,讓他們主動去認識芯片甚至是軟件行為的每一處細節(jié)。在遇到困難的時候,這些認識就會成為解決問題的線索,順著線索去追溯問題的過程又會進一步加深學生對這些認識的理解,從而形成良性循環(huán)。

3. 指導學生使用在課堂學習的知識解決開發(fā)中遇到的實際問題。 芯片開發(fā)過程中可能會遇到各種困難,一些表面上看像是硬件設計的問題,最終可能是軟件配置錯誤造成的。

解決這些困難需要學生站在全局的視角來分析問題,并與課堂上學習到的知識建立聯(lián)系,從中尋找解決問題的可能性。教師需要引導學生根據(jù)觀測到的現(xiàn)象進行思維的發(fā)散,主動思考可能與哪些學過的知識建立聯(lián)系。如果學生面對一些比較困難的問題,也會需要教師進行點撥。

4. 引導學生正確認識探索過程中的不確定性。 在一款功能完整的芯片,有一些關鍵模塊的原理是課堂上沒有詳細介紹的,學生要正確地實現(xiàn)這些模塊,需要一個探索的過程。這意味著學生不能像課程作業(yè)那樣按部就班地完成,而是會經(jīng)歷設計方案的調(diào)整,甚至是整個方案的推倒重來。

這容易導致學生感到焦慮或沮喪,因此教師需要對學生的心態(tài)進行正確的引導,告訴他們不確定性是探索過程中的客觀規(guī)律,然后引導學生去總結探索失敗的經(jīng)驗,去深刻地分析當前方案不可行的原因,從而加深對問題的理解,讓學生正確認識到探索失敗的意義。

“一生一芯”Logo 最終版



-END-




推薦閱讀



【01】精彩!由FPGA觸發(fā)的芯片戰(zhàn)爭!
【02】國產(chǎn)芯片的真實水平如何?
【03】中興的芯片,到底什么水平?
【04】打假!你被假芯片坑慘過嗎?今天教你一招!
【05】回顧史上25款經(jīng)典芯片:曾震撼了世界


免責聲明:整理文章為傳播相關技術,版權歸原作者所有,如有侵權,請聯(lián)系刪除

免責聲明:本文內(nèi)容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

嵌入式ARM

掃描二維碼,關注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
關閉