03.04 RISC-V AI芯片Celerity史上最詳細解讀(上)(附開源地址)

引者按:ICForce與千芯科技合作,推出FPGA與AI/深度學習的技術競爭力課程,力爭為人工智能和相關集成電路行業方向的人才缺口提供一個人才來源。也歡迎大家關注和轉發來自千芯科技關於AI芯片最新技術前沿的文章,關注ICForce的人才課程。


(本文包括Celerity中二值化神經網絡的介紹)

作者系TensorChip專家。

在Hot Chips 29大會上,基於RISC-V核心的AI芯片Celerity一亮相便引起開源社區的關注。

Celerity的設計展現了兩個特點:

1) 設計了基於RISC-V核心的多級(Tier)異構AI加速結構,兼顧計算中靈活性和能耗的要求,在硬件層面直接支持AI計算,實現了更好的功能和更高的能效。

2) 採用了HLS+Chipsel+開源IP的敏捷設計方法提升芯片的設計速度,明顯縮短芯片的研發週期到幾個月。

該芯片由Michigan大學, Cornell 大學,和 Bespoke Silicon Group(目前屬於Washington大學)共同完成。並且該項目受到了DARPA(美國國防高級研究計劃局)的資助。Celerity的設計源碼已經可以下載。(文末)

Celerity的多級架構

Celerity多級結構組成。(圖1)它們分別為通用級(General-Purpose Tier),眾核級(Manycore Tier)和專用級( Specialization Tier)。三級之間兩兩互連。

RISC-V AI芯片Celerity史上最詳細解讀(上)(附開源地址)


圖1 Celerity的多級架構

與FSB和主板連接的是由5個高性能RISC-V Rocket核心組成的通用級。通用級具備完整的計算功能,可以執行各類計算操作以及與內存、I/O和板載芯片的通信。通用級也可用於承載操作系統。通用級的功能多樣,能效較低,可運行在625MHz。

通用級後面的眾核級由496個低功耗RISC -V Vanilla -5標量處理核心陣列(16x31)組成,負責粗粒度與細粒度的並行計算。這些Vanilla -5處理核心由80Gbps的全雙工片上網絡(NoC)連接在一起。眾核級的功能與能效相對摺中。

專用級則由專門用於AI計算的二值神經網絡(Binarized Neural Network,BNN)核心組成。該BNN核心可直接支持13.4M大小的9層模型(包括一層定點卷積層,6層二值卷積層與2層全連接層)。專用級功能單一,卻具有最高的能效。


Manycore Tier與NoC

RISC-V AI芯片Celerity史上最詳細解讀(上)(附開源地址)

圖2 眾核級的Vanilla -5標量處理核心陣列

如圖2所示,眾核級採用了496(16x31)個Vanilla-5版本的RISC-V核心。Vanilla結構簡潔易用,可以很高效的執行C語言代碼而不用對編譯器進行修改。它採用了RV32IM指令集,5級流水線,有序發射。

眾核級內部核心通過網格網絡(Mesh Network,圖7)互聯。網格網絡的每個節點都是緩衝路由(Buffered Router),按照所在位置確定X/Y座標編號,並通過前向包與反向包進行全雙工連接。緩衝路由間通過特定的連接協議進行通信與數據傳輸。其中前向連接為80bit位寬,反向連接為10bit位寬。

RISC-V AI芯片Celerity史上最詳細解讀(上)(附開源地址)

圖3 Vanilla-5核心間的網格網絡


二值化神經網絡(BNN)

Celerity專用級(圖1最右側)集成了二值化神經網絡(BNN)加速器。


RISC-V AI芯片Celerity史上最詳細解讀(上)(附開源地址)

圖4 二值化神經網絡計算流示意

這一神經網絡由1層定點卷積層、6層二值化卷積層和2層全連接層組成。根據文獻,這一結構的神經網絡在CIFAR-10數據集上可以達到89.8%的精度。可支持13.4M個權值。

RISC-V AI芯片Celerity史上最詳細解讀(上)(附開源地址)

(a)BNN核心的架構 (b) 二值化卷積模塊

圖5 BNN架構與二值化卷積模塊

在二值化卷積的計算過程中,每兩個特徵圖(feature map)分別與3卷積核進行卷積計算,生成累加後的3組下一級特徵圖。

BNN結構,既可以看作是Celerity芯片的亮點,也可以看作是Celerity不足之處。

Celerity的BNN為什麼難以用於實際應用?

Celerity的多級結構瓶頸在哪裡?

眾核級的問題與應用難點在什麼地方?

答案都在本文的下篇之中。

如果你對本文的下篇內容感興趣,想學習AI芯片的實戰知識,並瞭解Celerity不足在哪裡,歡迎加入TensorChip的AI芯片學習陣營。

附錄:

Celerity開源地址:http://opencelerity.org/

眾核級開源地址: https://bitbucket.org/taylor-bsg/bsg_manycore/src/master/

BNN開源地址: https://github.com/cornell-zhang/bnn-fpga


關於TensorChip

TensorChip(千芯科技)的研發核心團隊由來自北美AI巨頭、瑞薩與國內的芯片及人工智能領域資深專家組成,致力於國際領先的AI算法-芯片協同設計(算芯協同),聚焦AI算法及芯片系統在應用領域的落地。合作方包括兆易創新、深圳清華大學研究院、新松機器人、四維圖新等國內頂尖的技術領跑者。

TensorChip目前正通過定製化合作,協助客戶將自有算法在FPGA平臺、RISC-V架構、及x86架構產品落地。合作伙伴包括AI芯片企業與AI算法企業。未來,TensorChip會與合作伙伴一起,推出可重構的存算一體芯片方案和對應的算法編譯平臺,在人工智能批量投產時代提供最具市場競爭力的芯片平臺方案。

關於ICForce

ICForce(芯勢力)是一個位於北京的集成電路行業人才服務平臺。目前與千芯科技開展AI+FPGA方向的集成電路人才培訓,通過實例式課程培訓,為對AI+FPGA結合開發有興趣的朋友提升技術競爭力,開啟他們的理想職業之門。

對ICForce感興趣的朋友,可以關注並私信ICForce(點我的頭像,就可以關注和私信啦)!


分享到:


相關文章: