• 正文
    • 背景
    • 關(guān)于每個(gè)模擬器
  • 推薦器件
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

工程師說(shuō) | R-Car DNN模擬器的介紹

2023/01/31
1572
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

本篇文章我們將介紹瑞薩為R-Car V4H提供的三種類型的DNN開(kāi)發(fā)模擬器,以及它們的使用情況和特點(diǎn)。

背景

用于汽車(chē)SoC實(shí)時(shí)處理的深度學(xué)習(xí)的模型轉(zhuǎn)換

深度學(xué)習(xí)是使用底層軟件(深度學(xué)習(xí)框架)開(kāi)發(fā)的,如TensorFlow和PyTorch。

僅僅通過(guò)移植在深度學(xué)習(xí)框架中學(xué)習(xí)到的模型,不可能在R-Car這樣的車(chē)載SoC上進(jìn)行實(shí)時(shí)處理,因?yàn)樯疃葘W(xué)習(xí)的推斷過(guò)程需要大量的計(jì)算和內(nèi)存使用。因此,有必要對(duì)所學(xué)模型進(jìn)行非等價(jià)的模型壓縮,如量化和剪枝,以及使用深度學(xué)習(xí)編譯器進(jìn)行性能優(yōu)化。

首先,讓我們討論一下模型壓縮。在量化中,通常以浮點(diǎn)計(jì)算的推斷過(guò)程被轉(zhuǎn)換為近似的整數(shù)運(yùn)算,如8位。通過(guò)將對(duì)識(shí)別結(jié)果貢獻(xiàn)較小的權(quán)重設(shè)置為零并跳過(guò)對(duì)這些權(quán)重的計(jì)算,修剪減少了計(jì)算和內(nèi)存的使用。這兩種轉(zhuǎn)換都是對(duì)原始推斷過(guò)程的非等效的算法轉(zhuǎn)換,因此很可能會(huì)降低識(shí)別的準(zhǔn)確性。

在性能優(yōu)化方面,深度學(xué)習(xí)編譯器可以對(duì)訓(xùn)練過(guò)的模型的推斷過(guò)程進(jìn)行程序轉(zhuǎn)換,以便在深度學(xué)習(xí)加速器上進(jìn)行更快的處理,或者應(yīng)用內(nèi)存可以進(jìn)行優(yōu)化,例如將分配給一個(gè)層的輸出數(shù)據(jù)的快速小型SRAM重新用于另一個(gè)層的輸出數(shù)據(jù)。

應(yīng)用這種轉(zhuǎn)換可以在車(chē)載SoC上進(jìn)行實(shí)時(shí)處理。

在R-Car中使用瑞薩工具和軟件的推斷流程

瑞薩的R-Car中的H/W加速器CNN-IP,出于計(jì)算效率的考慮,可以使用整數(shù)值進(jìn)行推斷操作。由于這個(gè)原因,用戶必須使用瑞薩公司提供的R-Car CNN工具來(lái)進(jìn)行量化,這是上述模型轉(zhuǎn)換中的一種。

首先,在實(shí)際執(zhí)行量化之前,必須進(jìn)行校準(zhǔn),以計(jì)算量化參數(shù)(刻度和零點(diǎn)),用于將浮動(dòng)數(shù)轉(zhuǎn)換為整數(shù)。為此,一個(gè)外部工具(如TFMOT、ONNX runtime),根據(jù)網(wǎng)絡(luò)模型的格式,從大量的輸入圖像中找到每一層的最大/最小輸出值。從這些最大/最小值中,可以計(jì)算出比例/零點(diǎn)等量化參數(shù);R-Car CNN工具使用這些量化參數(shù)來(lái)量化每一層的參數(shù)。

R-Car CNN工具然后從網(wǎng)絡(luò)模型和每層的量化參數(shù)中創(chuàng)建一個(gè)命令列表。命令列表是二進(jìn)制數(shù)據(jù),用于指示CNN-IP執(zhí)行哪些命令和設(shè)置哪些參數(shù)(每個(gè)量化層的參數(shù))。通過(guò)向CNN-IP提供該命令列表并運(yùn)行它,可以進(jìn)行推斷。

命令列表是由網(wǎng)絡(luò)模型和量化參數(shù)唯一確定的,因此它只需要事先創(chuàng)建一次。上述命令列表可以對(duì)每個(gè)圖像執(zhí)行,以便在實(shí)際設(shè)備上進(jìn)行推斷。

使用瑞薩工具和軟件對(duì)R-Car V4H進(jìn)行推斷的框圖見(jiàn)圖1。

圖1 使用瑞薩工具和軟件進(jìn)行推斷的方框圖

關(guān)于每個(gè)模擬器

每個(gè)模擬器的概述和特點(diǎn)

瑞薩電子準(zhǔn)備了模擬器來(lái)解決以下兩個(gè)用戶挑戰(zhàn):

A)在開(kāi)發(fā)一個(gè)應(yīng)用程序之前,用戶希望檢查由于量化而導(dǎo)致的精度變化

B)想在不使用實(shí)際設(shè)備的情況下使用命令列表檢查和調(diào)試用戶應(yīng)用程序

瑞薩的模擬器有三種類型,每種類型解決不同的任務(wù),具有不同的功能。各自的特點(diǎn)見(jiàn)表1。每一種都在準(zhǔn)確性和處理速度上有所不同。對(duì)于每一種情況,都會(huì)參照框圖介紹其特點(diǎn)和使用情況的細(xì)節(jié)。

表1 各模擬器的概述和特點(diǎn)

(*1)命令列表是使用R-Car CNN工具創(chuàng)建的,基于網(wǎng)絡(luò)模型和量化參數(shù),使用與上述實(shí)際機(jī)器上的推斷相同的程序。

(*2)Accurate Simulator在R-Car CNN工具中運(yùn)行。用戶向R-Car CNN工具提供網(wǎng)絡(luò)模型和量化參數(shù),該工具會(huì)自動(dòng)計(jì)算每一層的量化參數(shù),然后將其輸入到Accurate Simulator。

ISS

該模擬器旨在使用與實(shí)際設(shè)備盡可能相同的軟件配置和輸入數(shù)據(jù)(命令列表,主要是寄存器設(shè)置)來(lái)調(diào)試輸出結(jié)果。它不能重現(xiàn)計(jì)時(shí),也不打算用于計(jì)時(shí)驗(yàn)證。

結(jié)果與實(shí)際設(shè)備完全相同,速度比Accurate Simulator慢,因?yàn)樗灾噶顬榛A(chǔ)重現(xiàn)輸出。

圖2 使用ISS的系統(tǒng)方框圖

精確的模擬器

該模擬器將網(wǎng)絡(luò)模型作為輸入,用于精度驗(yàn)證,無(wú)需使用實(shí)際設(shè)備。對(duì)于每一層,都要實(shí)現(xiàn)一種算法,使其輸出與設(shè)備的計(jì)算算法完全匹配。由于執(zhí)行速度比ISS快10倍左右,所以在只驗(yàn)證精度的情況下,它是很有用的。

圖3 使用Accurate Simulator的系統(tǒng)框圖

快速仿真器

該模擬器用于檢查大量圖像的定量誤差。

Fast Simulator擴(kuò)展了深度學(xué)習(xí)框架(R-Car V4H中的Tensor Flow),在每層推斷操作后都有一個(gè)偽量化功能,并帶有浮點(diǎn)數(shù)字。偽量子化是一種重現(xiàn)浮點(diǎn)數(shù)的偽量子化誤差的方法,在浮點(diǎn)數(shù)仍然是浮點(diǎn)數(shù)的情況下,加入與量子化導(dǎo)致的精度下降相同的誤差。

可以只在Tensor Flow中添加一個(gè)偽量化功能,其運(yùn)行速度與Tensor Flow相似,但速度更快。

另外,由于輸入/輸出接口與深度學(xué)習(xí)框架是通用的,所以用戶在切換到深度學(xué)習(xí)框架時(shí)很容易檢查出量化錯(cuò)誤。

然而,由于每層的推斷操作和偽量化都會(huì)產(chǎn)生一個(gè)小的浮點(diǎn)算術(shù)誤差,所以結(jié)果與實(shí)際的機(jī)器結(jié)果并不完全匹配。

圖4 使用快速仿真器的系統(tǒng)框圖

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
XTR111AIDGQR 1 Texas Instruments Voltage-to-current converter/transmitter with 3-V to 15-V regulator and resistor set I/O ratio 10-HVSSOP -40 to 125

ECAD模型

下載ECAD模型
$2 查看
XTR117AIDGKT 1 Texas Instruments XTR117 4-20mA Current Loop Transmitter 8-VSSOP -40 to 125

ECAD模型

下載ECAD模型
$3.8 查看
ADXL325BCPZ 1 Rochester Electronics LLC SPECIALTY ANALOG CIRCUIT, PQCC16, 4 X 4 MM, 1.45 MM HEIGHT, ROHS COMPLIANT, PLASTIC, LFCSP-16
$6.02 查看
瑞薩電子

瑞薩電子

(RENESAS)于2003年4月1日—由日立制作所半導(dǎo)體部門(mén)和三菱電機(jī)半導(dǎo)體部門(mén)合并成立。RENESAS結(jié)合了日立與三菱在半導(dǎo)體領(lǐng)域方面的先進(jìn)技術(shù)和豐富經(jīng)驗(yàn),是無(wú)線網(wǎng)絡(luò)、汽車(chē)、消費(fèi)與工業(yè)市場(chǎng)設(shè)計(jì)制造嵌入式半導(dǎo)體的全球領(lǐng)先供應(yīng)商。創(chuàng)立日期2003年4月1日公司法人董事長(zhǎng)&CEO伊藤達(dá)業(yè)務(wù)范圍單片機(jī)邏輯模擬等的系統(tǒng)LSI、分立半導(dǎo)體元件、SRAM等的存儲(chǔ)器開(kāi)發(fā)、設(shè)計(jì)、制造、銷(xiāo)售、服務(wù)的提供。集團(tuán)成員44家公司(日本20家,日本以外24家)年度銷(xiāo)售額2006財(cái)年(截止至2007年3月):9526億日元(約83億美元)從業(yè)人員:26000人(全世界20個(gè)國(guó)家、43家公司)瑞薩科技是世界十大半導(dǎo)體芯片供應(yīng)商之一,在很多諸如移動(dòng)通信、汽車(chē)電子和PC/AV 等領(lǐng)域獲得了全球最高市場(chǎng)份額。瑞薩集成電路設(shè)計(jì)(北京)有限公司蘇州分公司(RDB-SU)是瑞薩科技全資子公司,2004年1月成立以來(lái),現(xiàn)已擁有150多名優(yōu)秀工程師,承擔(dān)著家電和汽車(chē)電子領(lǐng)域MCU的一系列設(shè)計(jì)工作,并在2006年4月開(kāi)始開(kāi)發(fā)面向中國(guó)市場(chǎng)的MCU。

(RENESAS)于2003年4月1日—由日立制作所半導(dǎo)體部門(mén)和三菱電機(jī)半導(dǎo)體部門(mén)合并成立。RENESAS結(jié)合了日立與三菱在半導(dǎo)體領(lǐng)域方面的先進(jìn)技術(shù)和豐富經(jīng)驗(yàn),是無(wú)線網(wǎng)絡(luò)、汽車(chē)、消費(fèi)與工業(yè)市場(chǎng)設(shè)計(jì)制造嵌入式半導(dǎo)體的全球領(lǐng)先供應(yīng)商。創(chuàng)立日期2003年4月1日公司法人董事長(zhǎng)&CEO伊藤達(dá)業(yè)務(wù)范圍單片機(jī)邏輯模擬等的系統(tǒng)LSI、分立半導(dǎo)體元件、SRAM等的存儲(chǔ)器開(kāi)發(fā)、設(shè)計(jì)、制造、銷(xiāo)售、服務(wù)的提供。集團(tuán)成員44家公司(日本20家,日本以外24家)年度銷(xiāo)售額2006財(cái)年(截止至2007年3月):9526億日元(約83億美元)從業(yè)人員:26000人(全世界20個(gè)國(guó)家、43家公司)瑞薩科技是世界十大半導(dǎo)體芯片供應(yīng)商之一,在很多諸如移動(dòng)通信、汽車(chē)電子和PC/AV 等領(lǐng)域獲得了全球最高市場(chǎng)份額。瑞薩集成電路設(shè)計(jì)(北京)有限公司蘇州分公司(RDB-SU)是瑞薩科技全資子公司,2004年1月成立以來(lái),現(xiàn)已擁有150多名優(yōu)秀工程師,承擔(dān)著家電和汽車(chē)電子領(lǐng)域MCU的一系列設(shè)計(jì)工作,并在2006年4月開(kāi)始開(kāi)發(fā)面向中國(guó)市場(chǎng)的MCU。收起

查看更多

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計(jì)資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫(xiě)文章/發(fā)需求
立即登錄

瑞薩電子提供創(chuàng)新嵌入式設(shè)計(jì)和完整半導(dǎo)體解決方案。作為專業(yè)微控制器供應(yīng)商、模擬功率器件和SoC產(chǎn)品領(lǐng)導(dǎo)者,瑞薩電子為汽車(chē)、工業(yè)、家居、辦公自動(dòng)化、信息通信等應(yīng)用提供綜合解決方案。詳見(jiàn)瑞薩官網(wǎng)。我們將與您分享近期產(chǎn)品技術(shù)資訊和新聞動(dòng)態(tài)。