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


作者:包云崗

來(lái)源:中國(guó)科學(xué)院大學(xué)

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



編 者 按

 

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


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


包云崗介紹說(shuō),這項(xiàng)計(jì)劃源于對(duì)“如何將教學(xué)和開(kāi)源芯片結(jié)合起來(lái)”這一問(wèn)題的思考,更啟發(fā)于中國(guó)通訊科技巨頭華為面臨的芯片困境。


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


在當(dāng)天的發(fā)布會(huì)上,團(tuán)隊(duì)也介紹了“一生一芯”計(jì)劃的愿景目標(biāo):在國(guó)科大實(shí)踐經(jīng)驗(yàn)的基礎(chǔ)上向全國(guó)輻射,力爭(zhēng)實(shí)現(xiàn)3年后在全國(guó)每年能培養(yǎng)500名學(xué)生,5年后實(shí)現(xiàn)每年培養(yǎng)1000名學(xué)生,10年達(dá)到每年培養(yǎng)1萬(wàn)名學(xué)生。


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




一、醞釀


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


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


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



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


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


但是,我們是做開(kāi)源芯片,華為暫時(shí)還用不上;我們采用的是開(kāi)放的RISC-V指令集,而華為的主力芯片都是基于ARM??雌饋?lái)我們是無(wú)法幫助華為解決燃眉之急了。


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


因?yàn)槿A為的芯片架構(gòu)設(shè)計(jì)團(tuán)隊(duì)很多在美國(guó)硅谷,由于美國(guó)的出口管制,雖然是華為的全資子公司,但其技術(shù)也不能輸入到華為總部。這導(dǎo)致華為在美國(guó)的芯片設(shè)計(jì)人才不能再發(fā)揮作用,但在國(guó)內(nèi)又招不到這樣的人才。這才是華為的心腹之患。


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


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



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


為了應(yīng)對(duì)人才危機(jī),美國(guó)國(guó)防部高級(jí)研究計(jì)劃署 (DARPA) 在1981年啟動(dòng)MOSIS 項(xiàng)目,為大學(xué)提供流片服務(wù),通過(guò)MPW模式大幅降低芯片設(shè)計(jì)門(mén)檻。


30 余年來(lái)MOSIS為大學(xué)和研究機(jī)構(gòu)流了60000多款芯片,培養(yǎng)了數(shù)萬(wàn)名學(xué)生。



由此可見(jiàn),降低芯片設(shè)計(jì)門(mén)檻,讓學(xué)生能設(shè)計(jì)自己的芯片并流片,可大幅提高人才培養(yǎng)效率。這和我此前的構(gòu)想和目標(biāo)完全一致。我們不能再耽誤了,要加速人才培養(yǎng)計(jì)劃。


二、正式啟動(dòng)


我自作主張地給這個(gè)計(jì)劃起了個(gè)名字:“一生一芯”。


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


然后,我又聯(lián)系了幾位國(guó)科大本科生,詢問(wèn)他們?cè)覆辉敢鈪⒓舆@個(gè)“一生一芯”計(jì)劃當(dāng)小白鼠。出于意料地是,這些準(zhǔn)00后(98/99出生)都表示愿意挑戰(zhàn)一下,愿意當(dāng)小白鼠。


6月20日,我在開(kāi)源芯片工作組群向大家宣布:?jiǎn)?dòng)“一生一芯”計(jì)劃!這并不是研制產(chǎn)品級(jí)芯片,而是一次教學(xué)實(shí)踐。很快唐丹老師為未來(lái)的芯片起好了內(nèi)部代號(hào)“COOSCA”,三門(mén)課Computer Organization/Operating System/Computer Architecture的縮寫(xiě)。



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



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


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



8月20日,當(dāng)唐丹老師和解壁偉老師終于落實(shí)中芯國(guó)際110nm工藝的流片渠道后,“一生一芯”計(jì)劃一切準(zhǔn)備就緒。


8月27日,參加“一生一芯”計(jì)劃的首批五位同學(xué)和教學(xué)團(tuán)隊(duì)一起在我的辦公室開(kāi)了一次簡(jiǎn)單但意義重大的動(dòng)員大會(huì)。


“一生一芯”計(jì)劃正式啟動(dòng)!


項(xiàng)目分工


三、四個(gè)月高強(qiáng)度開(kāi)發(fā)


開(kāi)弓沒(méi)有回頭箭。唐丹老師確定了最合適的流片班車(chē)是12月17日,距離動(dòng)員大會(huì)不到4個(gè)月!這樣芯片能在4月份完成封裝,返回進(jìn)行測(cè)試。


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


我們?cè)诖_定總體方案時(shí)有兩個(gè)決定:


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


二是以余子濠為南大開(kāi)發(fā)的一款教學(xué)RISC-V處理器核為基礎(chǔ)進(jìn)行改進(jìn),這主要是因?yàn)橛嘧渝┰陂_(kāi)發(fā)這款處理器的過(guò)程中構(gòu)建了豐富的工具,包括NEMU軟件模擬器、指令差分測(cè)試框架等,這些都有助于加速開(kāi)發(fā)。


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


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


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



雖然任務(wù)極具挑戰(zhàn),但不斷有進(jìn)展。每取得一個(gè)小里程碑,大家都會(huì)記錄下那個(gè)時(shí)刻,精確到分鐘,因?yàn)橛X(jué)得未來(lái)有一天也許用得上。后來(lái),這些時(shí)刻真的用上了,就是宣傳視頻中的那條時(shí)間線。


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


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



四、疫情中的測(cè)試驗(yàn)證


等待芯片返回是一種既期盼又擔(dān)憂的感覺(jué)。這種感覺(jué)又進(jìn)一步被突如其來(lái)的疫情放大了。


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



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


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


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


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



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


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


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

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


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


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


后來(lái),王凱帆又將國(guó)科大操作系統(tǒng)課程上同學(xué)們自己編寫(xiě)的UCAS-Core移植到了COOSCA核上,實(shí)現(xiàn)了用自己寫(xiě)的CPU運(yùn)行自己寫(xiě)的操作系統(tǒng)這個(gè)小目標(biāo)。

六、“果殼”公開(kāi)亮相


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

同學(xué)們討論后,決定改名為“果殼(NutShell)”,和國(guó)科大的“國(guó)科”同音??梢钥吹贸鰜?lái),他們對(duì)國(guó)科大確實(shí)有些深厚的情感。

五位同學(xué)開(kāi)始一起為“果殼”的首次亮相做了大量準(zhǔn)備工作:王凱帆整理了代碼以及相應(yīng)的文檔,并在Github上開(kāi)源,王華強(qiáng)整理了一份介紹“果殼”設(shè)計(jì)的報(bào)告PPT。

7月18日,王華強(qiáng)在技術(shù)研討會(huì)第二個(gè)出場(chǎng),介紹了果殼的設(shè)計(jì)細(xì)節(jié)和一些開(kāi)發(fā)過(guò)程中的經(jīng)驗(yàn)體會(huì)。

這是報(bào)告視頻: 《NutShell-本科生設(shè)計(jì)的可運(yùn)行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



“果殼”設(shè)計(jì)開(kāi)源鏈接:https://github.com/OSCPU/NutShell

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

9月3日,王華強(qiáng)同學(xué)將代表團(tuán)隊(duì)向全球業(yè)界介紹“果殼”的設(shè)計(jì),這也是“果殼”首次在國(guó)際舞臺(tái)上亮相??戳艘幌逻@次RISC-V全球論壇的日程,報(bào)告均來(lái)自世界各地的業(yè)界資深專家,還包括圖靈獎(jiǎng)得主David Patterson教授。

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


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



七、收獲與體會(huì)


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

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

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

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



如今,這五位同學(xué)正在參與一個(gè)更有挑戰(zhàn)的項(xiàng)目,開(kāi)發(fā)一款高性能亂序多發(fā)射RISC-V處理器核的設(shè)計(jì)。一年前,他們?cè)谧觥肮麣ぁ睍r(shí)還有些吃力,現(xiàn)在已是這個(gè)新團(tuán)隊(duì)中的骨干,和其他博士生和工程師們一起攻堅(jiān)克難。

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

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



從教學(xué)團(tuán)隊(duì)角度來(lái)看,除了前期在總體方案、環(huán)境平臺(tái)等方面需做好充分準(zhǔn)備以外,在開(kāi)發(fā)過(guò)程中有四方面指導(dǎo)尤其重要(以下為余子濠老師總結(jié)):

1. 項(xiàng)目規(guī)劃和分工 。學(xué)生在開(kāi)發(fā)初期不一定能完全掌握芯片中各個(gè)模塊之前的關(guān)系,此時(shí)需要教師對(duì)學(xué)生的工作進(jìn)行較為細(xì)致的分工,讓學(xué)生通過(guò)一些初期的任務(wù)來(lái)認(rèn)識(shí)芯片的全貌。

隨著項(xiàng)目的進(jìn)行,學(xué)生對(duì)芯片的認(rèn)識(shí)逐漸清晰之后,教師進(jìn)行的分工可以向粗略的方向轉(zhuǎn)變,向?qū)W生提出清晰的任務(wù)目標(biāo),并讓學(xué)生嘗試提出自己的解決方案。

2. 引導(dǎo)學(xué)生了解項(xiàng)目中的每一處細(xì)節(jié)。 芯片是一個(gè)復(fù)雜的系統(tǒng),學(xué)生需對(duì)芯片每一個(gè)模塊的行為都有所了解,還需要了解程序在芯片上運(yùn)行的每一處細(xì)節(jié)。但是學(xué)生一開(kāi)始往往不能從課程設(shè)計(jì)的模式中轉(zhuǎn)變過(guò)來(lái),認(rèn)為只需要了解自己任務(wù)相關(guān)的模塊即可,不去主動(dòng)了解其它模塊,不去了解軟件層次的行為。

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

3. 指導(dǎo)學(xué)生使用在課堂學(xué)習(xí)的知識(shí)解決開(kāi)發(fā)中遇到的實(shí)際問(wèn)題。 芯片開(kāi)發(fā)過(guò)程中可能會(huì)遇到各種困難,一些表面上看像是硬件設(shè)計(jì)的問(wèn)題,最終可能是軟件配置錯(cuò)誤造成的。

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

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

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

“一生一芯”Logo 最終版



-END-




推薦閱讀



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


免責(zé)聲明:整理文章為傳播相關(guān)技術(shù),版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系刪除

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

嵌入式ARM

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

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
關(guān)閉
關(guān)閉