99精品在线观看-99精品在线免费观看-99精品在线视频观看-99精品这里只有精品高清视频-99九九精品国产高清自在线

x

特斯拉自動駕駛FSD芯片NPU詳解

2019-09-23 13:34:21 EETOP
點(diǎn)擊關(guān)注->創(chuàng)芯網(wǎng)公眾號,后臺告知EETOP論壇用戶名,獎勵200信元
特斯拉的FSD芯片是在年度IEEE Hot Chips大會上眾多出色的演講之一。特斯拉在今年4月首次公開了其全自駕(FSD)芯片。在最近的“ Hot Chips 31”會議上,特斯拉對芯片的一些關(guān)鍵組件提供了更多的解析。

特斯拉工程師為FSD芯片和平臺制定了許多主要目標(biāo)。他們希望在功率范圍內(nèi)盡可能多地封裝TOPS。出于安全原因,芯片的主要設(shè)計(jì)要點(diǎn)是批量使用一個芯片時,更好的提高芯片的利用率。值得注意的是,F(xiàn)SD芯片隨附了一組用于通用處理的CPU和一個用于后處理的輕量級GPU,這不在本文的討論范圍之內(nèi)。

 


NPU

盡管芯片上的大多數(shù)邏輯都使用經(jīng)過行業(yè)驗(yàn)證的IP塊來降低風(fēng)險并加快開發(fā)周期,但Tesla FSD芯片上的神經(jīng)網(wǎng)絡(luò)加速器(NPU)是由Tesla硬件團(tuán)隊(duì)完全定制設(shè)計(jì)的。它們也是FSD芯片上最大的組件,也是最重要的邏輯部分。
 

特斯拉談?wù)摰囊粋€有趣的花絮是仿真。在開發(fā)過程中,特斯拉希望通過運(yùn)行自己的內(nèi)部神經(jīng)網(wǎng)絡(luò)來驗(yàn)證其NPU性能。因?yàn)樗麄儧]有盡早進(jìn)行仿真,所以需要借助于使用開源的Verilator驗(yàn)證模擬器,其運(yùn)行速度比商業(yè)模擬器快50倍。“我們廣泛使用Verilator來證明我們的設(shè)計(jì)非常出色,”特斯拉自動駕駛硬件高級總監(jiān)Venkataramanan說。
 

每個FSD芯片內(nèi)部有兩個相同的NPU –在物理上彼此相鄰集成。當(dāng)被問及擁有兩個NPU實(shí)例而不是一個更大的單元的原因時,特斯拉指出,每個NPU的大小都是物理設(shè)計(jì)(時序,面積,布線)的最佳選擇。

 

指令集(ISA)


NPU是具有亂序內(nèi)存子系統(tǒng)的有序計(jì)算機(jī)。總體設(shè)計(jì)有點(diǎn)像是一種狀態(tài)機(jī)。指令集比較簡單,只有8條指令:DMA Read,DMA Write,Convolution,Deconvolution,Inner-product,Scale,Eltwidth,Stop。NPU只是運(yùn)行這些命令,直到碰到停止命令為止。還有一個額外的參數(shù)slots ,可以更改指令的屬性(例如,卷積運(yùn)算的不同變體)。有一個標(biāo)志slots ,用于數(shù)據(jù)依賴性處理。還有另一個擴(kuò)展slots 。該slots 存儲了整個微程序命令序列,每當(dāng)有一些復(fù)雜的后處理時,這些序列就會發(fā)送到SIMD單元。因?yàn)檫@,指令從32字節(jié)一直到非常長的256字節(jié)不等。稍后將更詳細(xì)地討論SIMD單元。


 

初始操作
 

NPU的程序最初駐留在內(nèi)存中。它們被帶入NPU,并存儲在命令隊(duì)列中。NPU本身是一個非常花哨的狀態(tài)機(jī),旨在顯著減少控制開銷。來自命令隊(duì)列的命令連同需要從中獲取數(shù)據(jù)的一組地址一起解碼為原始操作-包括權(quán)重和數(shù)據(jù)。例如,如果傳感器是新拍攝的圖像傳感器照片,則輸入緩沖區(qū)地址將指向該位置。一切都存儲在NPU內(nèi)部的超大緩存中,不需要與DRAM交換數(shù)據(jù)。
 

高速緩存的容量為32 MB,有一個完善的bank仲裁程序,與一些編譯器提示一起,用于減少bank沖突。每個周期中,最多可以將256個字節(jié)的數(shù)據(jù)讀取到數(shù)據(jù)緩沖區(qū)中,并且最多可以將128個字節(jié)的權(quán)重讀取到權(quán)重緩沖區(qū)中。根據(jù)步幅,NPU可能在操作開始之前將多條線路帶入數(shù)據(jù)緩沖區(qū),以實(shí)現(xiàn)更好的數(shù)據(jù)重用。每個NPU的組合讀取帶寬為384B/周期,其本地緩存的峰值讀取帶寬為786GB/s。特斯拉表示,這使他們能夠非常接近維持其MAC所需的理論峰值帶寬,通常利用率至少為80%,而很多時候則要達(dá)到更高的利用率。

 

MAC陣列


CNN的主要操作當(dāng)然是卷積,占特斯拉軟件在NPU上執(zhí)行的所有操作的98.1%,而反卷積又占1.6%。在優(yōu)化MAC上花費(fèi)了大量的精力。
 

MAC陣列中的數(shù)據(jù)重用很重要,否則,即使每秒1 TB的帶寬也無法滿足要求。在某些設(shè)計(jì)中,為了提高性能,可以一次處理多個圖像。但是,由于出于安全原因,延遲是其設(shè)計(jì)的關(guān)鍵屬性,因此它們必須盡快處理單個圖像。特斯拉在這里做了許多其他優(yōu)化。NPU通過合并輸出通道中X和Y維度上的輸出像素,在多個輸出通道上并行運(yùn)行。這樣一來,他們可以并行處理工作,并同時處理96個像素。換句話說,當(dāng)它們作用于通道中的所有像素時,所有輸入權(quán)重將被共享。此外,它們還交換輸出通道和輸入通道循環(huán)(請參見下圖的代碼段)。這使它們能夠依次處理所有輸出通道,共享所有輸入激活,而無需進(jìn)一步的數(shù)據(jù)移動。這是帶寬需求的另一個很好的降低。

通過上述優(yōu)化,可以簡化MAC陣列操作。每個陣列包括9,216個MAC,并排列在96 x 96的獨(dú)立單周期MAC反饋環(huán)路的單元中(請注意,這不是脈動陣列,單元間沒有數(shù)據(jù)移位)。為了簡化其設(shè)計(jì)并降低功耗,它們的MAC由8x8位整數(shù)乘法和32位整數(shù)加法組成。特斯拉自己的模型在發(fā)送給客戶時都經(jīng)過了預(yù)先量化,因此芯片只將所有數(shù)據(jù)和權(quán)重存儲為8位整數(shù)。

 

在每個周期中,將在整個MAC陣列中廣播輸入數(shù)據(jù)的底行和權(quán)重的最右列。每個單元獨(dú)立執(zhí)行適當(dāng)?shù)某朔ɡ奂舆\(yùn)算。在下一個循環(huán)中,將輸入數(shù)據(jù)向下推一行,而將權(quán)重網(wǎng)格向右推一行。在整個數(shù)組中廣播輸入數(shù)據(jù)的最底行和權(quán)重的最右列,重復(fù)此過程。單元繼續(xù)獨(dú)立執(zhí)行其操作。全點(diǎn)積卷積結(jié)束時,MAC陣列一次向下移動一行96個元素,這也是SIMD單元的吞吐量。


NPU本身實(shí)際上可以在2 GHz以上的頻率上運(yùn)行,盡管特斯拉根據(jù)2 GHz時鐘引用了所有數(shù)字,所以大概是生產(chǎn)時鐘。在2 GHz的頻率下,每個NPU可獲得36.86 teraOPS(Int8)的最高計(jì)算性能。NPU的總功耗為7.5 W,約占FSD功耗預(yù)算的21%。這使它們的性能功率效率約為4.9 TOPs / W,這是我們迄今為止在出貨芯片中看到的最高功率效率之一–與英特爾最近宣布的NNP-I(Spring Hill)推理加速器配合使用。盡管特斯拉NPU在實(shí)際中的通用性有點(diǎn)疑問。請注意,每個芯片上有兩個NPU,它們消耗的總功率預(yù)算略超過40%。

 

SIMD單元

從MAC陣列,將一行壓入SIMD單元。SIMD單元是可編程執(zhí)行單元,旨在為Tesla提供一些額外的靈活性。為此,SIMD單元為諸如sigmoid, tanh, argmax和其他各種功能提供支持。它帶有自己豐富的指令集,這些指令由從機(jī)指令定序器執(zhí)行。從指令定序器從前面描述的指令的擴(kuò)展槽中獲取操作。特斯拉表示,它支持在普通CPU中可以找到的大多數(shù)典型指令。除此之外,SIMD單元還配備了可執(zhí)行歸一化,縮放和飽和的點(diǎn)狀量化單元。

將結(jié)果從SIMD單元轉(zhuǎn)發(fā)到合并單元,或直接轉(zhuǎn)發(fā)到寫組合,在其中以128B /周期的速度將其有機(jī)會寫回到SRAM。該單元進(jìn)行2×2和3×3合并,在conv單元中進(jìn)行更高階的處理。它可以進(jìn)行max pooling 和 average pooling。對于average pooling,使用基于2×2/3×3的常量的定點(diǎn)乘法單元替換除法。由于特斯拉最初對MAC陣列的輸出通道進(jìn)行了交錯處理,因此它們會首先進(jìn)行適當(dāng)?shù)闹匦聦R以進(jìn)行校正。


總而言之,特斯拉實(shí)現(xiàn)了其性能目標(biāo)。FSD計(jì)算機(jī)(HW 3.0)與上一代產(chǎn)品(HW 2.5)相比,性能提高了21倍,而功耗僅提高了25%。


由于時間所限,翻譯水平有限,如需更詳細(xì)了解請查看英文原版:

https://fuse.wikichip.org/news/2707/inside-teslas-neural-processor-in-the-fsd-chip/

關(guān)鍵詞: 特斯拉 自動駕駛

  • EETOP 官方微信

  • 創(chuàng)芯大講堂 在線教育

  • 半導(dǎo)體創(chuàng)芯網(wǎng) 快訊

全部評論

主站蜘蛛池模板: 天天操综| 国产日韩精品欧美一区色| 丰满大乳女啪啪中文字幕| 国产精品一区二区久久精品| 免费a级毛片在线观看| 久久精品免费播放| 色爱综合区| 噜噜噜噜精品视频在线观看| 国产视频 每日更新| 亚洲欧美成人中文在线网站| 91av一区| 国产大片免费在线观看| 国产无遮挡又黄又爽在线视频 | 亚洲综合欧美日韩| 国产欧美一区二区三区视频 | 日本大片久久久高清免费看| 亚洲高清免费在线观看| 精品一区在线| 成 人免费va视频| 亚洲欧洲国产日产| 黄色一级免费观看| 欧美日韩一日韩一线不卡| 亚洲一区国产| 一区视频| 久久免费视频播放| 欧美日韩不卡视频| 亚洲色图视频在线| 夜夜草影院| 九九黄色网| 嗯啊在线观看免费影院| 日韩精品欧美在线| 久久五月女厕所一区二区| 国产aaa免费视频国产| 91精品啪在线观看国产色| 精品九九九| 日本大片在线观看免费视频| 国产精品综合视频| 成熟女人特级毛片www免费| 亚洲精品第一综合99久久| 国产精品一区二区三区高清在线| 久久精品视频亚洲|