國科大五位本科生帶「芯」畢業!主導完成64位RISC-V處理器SoC晶片

2020-07-27     大數據文摘

原標題:國科大五位本科生帶「芯」畢業!主導完成64位RISC-V處理器SoC晶片

大數據文摘出品

畢業季,中國科學院大學(以下簡稱國科大)的五位本科畢業生給母校送上了一份「硬核」畢業禮物——主導完成了一款64位RISC-V處理器SoC晶片設計並實現流片。

處理器晶片被公認為晶片產業皇冠上的明珠,設計複雜度高、難度大。去年,正是為了加快此類人才的培養規模與培養速度,國科大啟動了名為「一生一芯」的培養計劃,以流片為目標,由5位2016級本科生主導完成一款64位RISC-V處理器SoC晶片設計並實現流片,這在國內還是史無前例的嘗試。

今年6月2日, 「一生一芯」團隊學生代表向國科大畢業答辯委員會演示處理器晶片的功能,交出了一份超出預期的本科畢業設計「答卷」。這5位2016級本科生主不僅實現了帶著自己設計的處理器晶片畢業這一目標,而且其主導設計的晶片目前能夠成功運行Linux作業系統以及學生自己編寫的國科大教學作業系統UCAS-Core。

這款處理器晶片被學生們命名為「果殼(NutShell)」,與「國科」發音相同。「一生一芯」計劃負責人、國科大計算機學院教授、中科院計算所先進計算機系統研究中心主任包雲崗透露:「『果殼』的設計原始碼已經向國際社區開源。前段時間,『果殼』的設計投稿到RISC-V全球論壇,最近剛收到被接收的通知,王華強同學將代表團隊於9月3日向全球業界介紹『果殼』的設計,這也是『果殼』首次在國際舞台上亮相。「

RISC-V全球論壇的報告均來自世界各地的業界資深專家,包括圖靈獎得主David Patterson教授。」

據中青報報道,這5位畢業生都將在中國科學院計算技術研究所讀研究生,「參與一個更有挑戰的項目,開發一款高性能亂序多發射RISC-V處理器核的設計」。

「一生一芯」一期圓滿結束!五位本科生帶著自己設計的晶片畢業了

7月25日,中國科學院大學舉行了一場特別的新聞發布會,公布了去年啟動的「一生一芯」計劃的研究成果。

國科大計算機科學與技術學院院長、中國科學院計算技術研究所所長孫凝暉院士宣布,經過9個月的努力,由國科大2016級計算機學院本科生金越、王華強、王凱帆、張林雋和張紫飛五位同學參與的首期「一生一芯」計劃取得圓滿成功,五位本科生可以帶著自己設計的處理器晶片畢業了

五位同學平均年齡只有23.1歲,他們合作開發的晶片是一款64位RISC-V 處理器SoC晶片,並已經實現流片(試生產),這款晶片能成功運行Linux作業系統以及學生自己編寫的國科大教學作業系統UCAS-Core。

「果殼」晶片

「果殼」晶片

「果殼」晶片

國科大計算機科學與技術學院院長、中國科學院計算技術研究所所長孫凝暉院士表示,「我國處理器晶片設計人才嚴重緊缺,如何加快此類人才的培養規模與培養速度,是我國迫在眉睫的難題。」

「一生一芯「計劃的發起,旨在通過讓本科生設計處理器晶片並完成流片,培養具有紮實理論與實踐經驗的處理器晶片設計人才。換句話說,這一計劃正是為了培養解決「卡脖子」的關鍵技術人才

國科大的第一期「一生一芯」計劃於去年8月正式啟動,經過立項分工各自研發後,五位同學在仿真環境中進行了系統聯合調試,設計的RISC-V處理器可在FPGA平台上分別運行遊戲和Linux Debian發行版

這在國內也是首次以流片為目標,指導五位本科生設計的RISC-V晶片「果殼」。

發布會上也詳細介紹了整個項目的時間線。

  • 2019年12月19日,一款 64 位 RISC-V 處理器 SoC 晶片完成設計,並基於中芯國際 110nm 工藝完成投片;
  • 2020年4月23日,處理器晶片返回,經過調試測試驗證,晶片成功運行 Linux 作業系統以及學生自己編寫的國科大教學作業系統 UCAS-Core;
  • 2020年5月28日,「果殼」在 Linux 上運行Busybox並展示中科院圖標。
  • 2020年6月2日,王華強同學代表 「一生一芯」團隊向畢業答辯委員會演示處理器晶片的功能,五位同學交出了一份超出預期的本科畢業設計 「答卷」。這標誌著首期 「一生一芯」計劃取得圓滿成功。

參與項目的王凱帆同學表示,他認為這與之前的課程實驗最與眾不同的地方就是沒有實驗手冊,一切都需要自己去探索。張紫飛和王華強也表示,對於他們來說這是一次非常難忘的項目經歷,和同學們一起協助開發、討論結構問題,一起「挖坑」「踩坑」,都是非常有意思的。

發布會上,國科大副校長董紀昌教授表示,去年,國科大在本科新生錄取通知書中嵌入了「龍芯三號」晶片,「硬核錄取通知書」至今讓人記憶猶新;今年,國科大本科生已經拿到了「超硬核畢業證書」。國科大將充分發揮科教融合優勢,培養更多國家緊缺的高技術人才,也歡迎更多優秀本科生加入第二期「一生一芯」計劃。

「一生一芯」背後的故事:4個月完成高強度開發

在發布會和知乎的熱議話題下,包雲崗教授詳細介紹了該計劃的啟動與實施背後的故事。

知乎全文連結:

https://www.zhihu.com/question/409298856/answer/1363569013

國內的處理器晶片設計人才面臨著流失困境,2017年,包雲崗教授就組織了一次針對2008~2017體系結構頂會ISCA論文第一作者的統計,他們發現,85%的人選擇在美國就業,只有4%在中國就業。

不過,在上個世紀80年代,類似的人才危機在美國也曾出現。當時為了應對危機,美國國防部高級研究計劃署 (DARPA) 在啟動MOSIS項目,為大學提供流片服務,通過MPW模式大幅降低晶片設計門檻。30餘年來MOSIS為大學和研究機構流了60000多款晶片,培養了數萬名學生。

這也是「一生一芯」計劃的目標。

在組建教學團隊上,這個計劃得到了老師和學生們的大力支持。

在知乎相關問題下,包雲崗也介紹了整個項目的強大指導老師團隊:「唐丹老師和工程師劉彤負責SoC架構設計指導,餘子濠老師負責處理器核設計,張科老師負責項目協調、與國科大對接,並和常軼松老師、趙然老師一起在FPGA模擬仿真方面進行指導,解壁偉老師和李嶧工程師在後端物理設計上給予支持,深圳大學蔡曄老師則參與幫助設計PCB板卡,另外蔣德鈞老師和王卅老師是國科大本科作業系統任課老師,在作業系統方面給予支持,兩位博士生王誨喆與徐易難也擔任起助教的角色,幫助答疑解惑。自己更像一個啦啦隊長,給大家打雞血。」

教學團隊組建完成後,團隊隨後就針對總體方案進行了討論和制定,包括確定技術路線,選擇基礎平台,搭建開發環境,選擇流片工藝和班車等。

圖片來自知乎

包雲崗稱,在確定了流片班車12月17日後,留給整個計劃的時間只有不到4個月,如果順利,就可以趕上五月底或六月初的國科大本科畢業答辯,屆時可以在答辯現場展示晶片。

在總體方案上,包雲崗回憶,團隊當時有兩個決定,一個是用Chisel開發,另一個是以餘子濠為南大開發的一款教學RISC-V處理器核為基礎進行改進,開發歷程如下圖所示:

整個項目時間緊任務重,眾所周知在晶片的測試上,從底層PCB版圖、內存顆粒到中間處理器設計、再到上層作業系統、應用軟體,每個層次都可能出問題,而哪怕只是一個小問題,都會造成晶片無法正常工作。

雖然歷程艱辛,但項目組終於還是按時完成了整個項目。6月2日,五位學生在國科大畢業答辯介紹了他們基於COOSCA處理器核的進一步優化工作:

  • 王華強:《基於RISC-V的亂序多發射處理器設計》
  • 張紫飛:《基於RISC-V的向量處理單元設計》
  • 張林雋:《開源處理器分支預測器的設計與性能優化》
  • 金越:《基於敏捷開發語言的開源處理器非阻塞緩存的設計與實現》
  • 王凱帆:《RISC-V平台下的二進位翻譯與優化》

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

包雲崗也在回答的最後稱:回想到一年前,「一生一芯」計劃還不知道是否可行,最終能不能成功也都是未知數。但如今,他們用實際經驗表示,這是可行的,雖然也一路上滿是教訓,但是對於這五位「小白鼠」同學,也累積了不少經驗

網友熱議:看得「熱血沸騰」

相關話題也在知乎上引發了熱議。

多數評論都表達了讚揚之情,稱看得「熱血沸騰」,希望自己本科時候也能接受這樣的教育。

但也有網友指出,設計團隊中值得肯定的不止是5位學生,還有背後支持的老師團體

知乎答友@勇敢的心表示,「晶片設計團隊不僅僅是這5位學生,還有背後支持的老師團隊,這是至關重要的!晶片設計最難的工作是系統架構定義(軟硬體架構),而這顆晶片是在已有的晶片基礎上做改善,不能說沒難度,但是難度相對小很多!另外從實現上來看,採用chisel來開發,確實比verilog來得快,這得給伯克利大學點個大讚!」

也有人指出五位本科生數量還是太少了,十幾個staff照顧5個學生的這種項目不可能年年搞。

「以後流程都走通了後最好能夠做到一個老師加3個TA帶5-10個學生走一遍tape-out全過程這樣比較好。」

正如包雲崗教授所說,這五位學生的平均年齡只有23.1歲,但他們不到三個星期就從頭開始完成了亂序處理器主流水線的設計與實現,通過CoreMark測試。可以試想,到他們30歲時,可以說已經是處理器晶片和計算機系統設計領域的「老兵」了,那時,不管去工業界研發產品,還在學術界做科研,他們的創造力都能得到更大的發揮和展現。

我們也希望國科大的「一生一芯」能夠繼續下去,向業內輸入更多晶片血液。

文章來源: https://twgreatdaily.com/TILlj3MBd4Bm1__Yf0y3.html