色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

TinyML,無(wú)需重新合成或重新啟動(dòng)FPGA即可更新

星星科技指導(dǎo)員 ? 來(lái)源:microchip ? 作者:microchip ? 2023-05-06 09:44 ? 次閱讀

預(yù)計(jì)到本十年末,FPGA 芯片將主導(dǎo)物聯(lián)網(wǎng)端點(diǎn)深度神經(jīng)網(wǎng)絡(luò) (DNN)。它們比微控制器更節(jié)能、更快,并且比ASIC更容易開(kāi)發(fā)。Infxl與Microchip合作,通過(guò)提供兩項(xiàng)技術(shù)優(yōu)勢(shì)來(lái)加快其采用速度:

1. 從訓(xùn)練數(shù)據(jù)到緊湊的 DNN 的簡(jiǎn)單工具 C 語(yǔ)言和 HLS

2. TinyML FPGA實(shí)現(xiàn),無(wú)需重新合成或重啟即可更新

其中第一個(gè)解決了嵌入式開(kāi)發(fā)人員社區(qū)共同關(guān)注的問(wèn)題:ML 和 FPGA 工具需要一定程度的專業(yè)知識(shí),而這種專業(yè)知識(shí)既昂貴又難以找到。

第二個(gè)解決了機(jī)器學(xué)習(xí) (ML) 固有的問(wèn)題:ML 解決方案在一段時(shí)間后會(huì)過(guò)時(shí),需要定期恢復(fù)活力。我們提出了一種 DNN-ON-FPGA 設(shè)計(jì),可確保 DNN 無(wú)需重新合成、重新實(shí)現(xiàn)或重新啟動(dòng) FPGA 即可更新。

通過(guò)使用簡(jiǎn)單緊湊的ML模型,可以進(jìn)一步放大FPGA實(shí)現(xiàn)的能效和速度優(yōu)勢(shì)。Infxl 網(wǎng)絡(luò)就是這樣一種模型(示例代碼 [2])。它使用 8/16 位數(shù)據(jù)路徑在簡(jiǎn)單 C 中實(shí)現(xiàn)完全連接的 DNN,而無(wú)需使用乘法或任何浮點(diǎn)運(yùn)算。

Infxl 網(wǎng)絡(luò)的一個(gè)關(guān)鍵特征是它在網(wǎng)絡(luò)結(jié)構(gòu)/參數(shù)和推理引擎之間保持清晰的分離。我們通過(guò)在LSRAM中保留參數(shù)來(lái)利用此功能,同時(shí)使用LUT和FF實(shí)現(xiàn)引擎。這樣,當(dāng)我們需要更新已部署的 Infxl 網(wǎng)絡(luò)時(shí),我們不需要重新合成、重新實(shí)現(xiàn)甚至重新啟動(dòng) FPGA。我們只需更新LSRAM中的參數(shù),F(xiàn)PGA幾乎立即開(kāi)始根據(jù)更新的網(wǎng)絡(luò)結(jié)構(gòu)/參數(shù)提供改進(jìn)的結(jié)果。

開(kāi)發(fā)過(guò)程包括兩個(gè)主要步驟:

? 將預(yù)處理的數(shù)據(jù)上傳到 cloud.infxl.com,并將經(jīng)過(guò)訓(xùn)練的 Infxl 網(wǎng)絡(luò)下載為即用型 C 代碼。此過(guò)程不需要任何 ML 背景。

? 使用Microchip易于使用的SmartHLS編譯器[3],根據(jù)項(xiàng)目的確切要求從C代碼生成HLS。SmartHLS是一個(gè)基于Eclipse的IDE,它將C / C++代碼作為輸入,并生成SmartDesign IP組件(Verilog HDL)作為輸出。我們可以在Libero SoC設(shè)計(jì)套件[4]中提供的SmartDesign畫(huà)布中實(shí)例化生成的SmartDesign IP組件,以構(gòu)建FPGA系統(tǒng)。

Infxl net C 代碼包括一個(gè)測(cè)試平臺(tái)和一個(gè)通用接口。在將其部署到FPGA中之前,需要進(jìn)行一些簡(jiǎn)單的修改:

? 定義首選互連,例如,用于傳入傳感器數(shù)據(jù)的寄存器或 AXI4 接口

? 定義用于通信 Infxl 網(wǎng)絡(luò)預(yù)測(cè)的類的機(jī)制。

? 將 Infxl 網(wǎng)絡(luò)的存儲(chǔ)器類型更改為僅仿真,并定義 C 代碼外部但仍在 FPGA 內(nèi)部的存儲(chǔ)器。

? 在 C 代碼中創(chuàng)建一個(gè)頂級(jí)函數(shù)以合并 Infxl 網(wǎng)絡(luò)。這將是之后實(shí)例化到整個(gè)FPGA系統(tǒng)中的IP。

默認(rèn)的 Infxl net C 代碼通過(guò)少量 RAM 將推理引擎連接到輸入和輸出。這是微控制器的典型方法。對(duì)于FPGA實(shí)現(xiàn),與類似FIFO的接口進(jìn)行交互會(huì)更有效。在默認(rèn)的 Infxl net C 代碼中添加了額外的小函數(shù)以適應(yīng)這一點(diǎn)。然而,Infxl網(wǎng)絡(luò)的推理引擎的代碼保持不變。

有關(guān)原始 C 代碼和修改后的 C 代碼的比較,請(qǐng)參見(jiàn)下文。

源語(yǔ)言:

poYBAGRVsLaAFc3TAAImoke6FhQ900.png

改 性:

pYYBAGRVsLmAH0rhAAN0Fa46W1A923.png

修改或刪除了 Infxl 網(wǎng)絡(luò)的默認(rèn)測(cè)試平臺(tái)功能(copy_inp_vec_to_ram8_head 和 read_op_vec_frm_ram8_tail),并引入了新的函數(shù)net_and_interface。net_and_interface是將使用 SmartHLS 合成的頂級(jí)函數(shù)。該函數(shù)copy_inp_vec_to_ram8_head仍然從測(cè)試平臺(tái)獲取數(shù)據(jù),但是,它使用 FIFO 數(shù)據(jù)類型將數(shù)據(jù)輸出到頂級(jí)函數(shù)中。來(lái)自FPGA-IP的數(shù)據(jù)使用batch.read()命令讀取。然后,變量批次為預(yù)測(cè)類設(shè)置位。

下一步,函數(shù)內(nèi)部RAM被提取出來(lái),并將在SmartHLS的代碼生成過(guò)程中轉(zhuǎn)換為簡(jiǎn)單的內(nèi)存接口。這需要對(duì) ROM16 陣列進(jìn)行簡(jiǎn)單的修改。ROM16封裝了Infxl網(wǎng)絡(luò)的結(jié)構(gòu)以及所有參數(shù)。對(duì)于狀態(tài)監(jiān)測(cè)用例,原始ROM16修改如下:

源語(yǔ)言:

chaijie_default.png

pYYBAGRVsMyAJV_LAAE0yG0XU2c681.png

在測(cè)試平臺(tái)中,ROM16 將在運(yùn)行 Infxl 網(wǎng)絡(luò)之前填充。在整個(gè)FPGA設(shè)計(jì)中也需要等效負(fù)載。此加載機(jī)制還支持更新已部署的 Infxl 網(wǎng)絡(luò):

poYBAGRVsNKAQhdnAAD_SpeP_K8120.png

多路復(fù)用器 (MUX) 被放入 LSRAM 的一個(gè)端口的地址路徑中。與這些用戶可訪問(wèn)的地址和寫(xiě)入端口一起,LSRAM可以根據(jù)需要填充和更新。上圖顯示了 IP 核,其中 Infxl 網(wǎng)絡(luò)配置了 FIFO 接口,用于傳感器數(shù)據(jù)和可識(shí)別的類類型。但是,根據(jù)合成設(shè)置,可以更改此設(shè)置。

現(xiàn)在讓我們看一下硬件。IP 核的確切大小取決于所選接口和任何所需的附加組件。AXI4接口由于其額外的接口功能,將比類似FIFO的接口或連接到AHB總線的寄存器接口需要更多的資源。上面顯示的配置大約需要以下資源:

? 763 個(gè) LUT 和 776 FF 用于 IP,包括接口

? 546 個(gè) LUT 和 610 FF,僅用于 Infxl 網(wǎng)絡(luò)

在此配置中,對(duì)單個(gè)輸入向量的推理大約需要 2800 個(gè)時(shí)鐘周期。以 100 MHz 或 200 MHz 運(yùn)行,這將分別導(dǎo)致每 28 μs 或 14 μs 進(jìn)行一次新分類。

當(dāng)以上面顯示的方式實(shí)現(xiàn)時(shí),我們可以通過(guò)將現(xiàn)有的ROM16替換為更新版本來(lái)更新Infxl net的結(jié)構(gòu)和參數(shù)。交換 Infxl 網(wǎng)絡(luò)的內(nèi)容定義需要 ROM16 中每個(gè)項(xiàng)目一個(gè)時(shí)鐘周期。在我們的用例中,ROM16 陣列的長(zhǎng)度為 899。這相當(dāng)于899個(gè)時(shí)鐘周期,其中無(wú)法進(jìn)行識(shí)別。但是,可以在新舊ROM16之間進(jìn)行更快的切換,但需要犧牲一些額外的LSRAM。如果需要連續(xù)操作,可以使用兩個(gè)并聯(lián)LSRAM。在兩者中,只有一個(gè)在任何給定時(shí)間處于活動(dòng)狀態(tài),另一個(gè)處于待機(jī)狀態(tài)。要更新 Infxl 網(wǎng)絡(luò),備用 LSRAM 將使用新的 ROM16 進(jìn)行更新。之后,LSRAM輸出數(shù)據(jù)路徑中的多路復(fù)用器被切換,從而激活新加載的ROM16并停用前一個(gè)ROM《》。這種切換可以在一個(gè)時(shí)鐘周期內(nèi)完成,從而在沒(méi)有任何實(shí)際延遲的情況下進(jìn)行更新。

如果對(duì)分類率有更高的性能要求,Infxl 網(wǎng)絡(luò)也可以合成為并行結(jié)構(gòu),直至完全并行。這將大大加快分類速度。此優(yōu)化是實(shí)現(xiàn)大小和性能之間的權(quán)衡。此外,完全并行的實(shí)現(xiàn)將Infxl網(wǎng)絡(luò)的結(jié)構(gòu)和參數(shù)整合到IP核本身中。這將刪除在不重新合成和重新啟動(dòng)的情況下進(jìn)行簡(jiǎn)單更新的功能。我們一直在討論的用例的完全并行實(shí)現(xiàn)大約需要 10900 個(gè) LUT 和 4800 個(gè) FF,但將分類速度加快到大約 600 個(gè)時(shí)鐘周期(包括所有握手)。

從本質(zhì)上講,Infxl net與Microsemi的SmartHLS相結(jié)合,提供了一種簡(jiǎn)單且面向未來(lái)的方法,可以將ML整合到各種系統(tǒng)中。本文中討論的用例基于運(yùn)動(dòng)傳感器的數(shù)據(jù)。但是,使用 Infxl 網(wǎng)絡(luò)的應(yīng)用程序不僅限于該用例。它可用于從預(yù)測(cè)性維護(hù)到環(huán)境監(jiān)測(cè)機(jī)器人技術(shù)、惡意軟件檢測(cè)、醫(yī)療保健可穿戴設(shè)備等用例。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1629

    文章

    21729

    瀏覽量

    603017
  • 機(jī)器人
    +關(guān)注

    關(guān)注

    211

    文章

    28386

    瀏覽量

    206921
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8408

    瀏覽量

    132568
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ESP8266如何進(jìn)行OTA更新,但無(wú)需重新啟動(dòng)

    - 有沒(méi)有辦法OTA下載新固件,但不能重新啟動(dòng) - 并在下一次系統(tǒng)啟動(dòng)時(shí)檢查新固件和交換機(jī)。我想進(jìn)行 OTA 更新,但無(wú)需重新啟動(dòng)。 - E
    發(fā)表于 07-11 07:19

    重新啟動(dòng)MPLABX后出現(xiàn)許多錯(cuò)誤通知

    MPLABX后,很好,沒(méi)有找到調(diào)試工具…沒(méi)有理由,在重新啟動(dòng)MPLABX之后,PACKIT3工作正常。許多錯(cuò)誤警報(bào)/錯(cuò)誤通知。斷點(diǎn)是垃圾(很多時(shí)候當(dāng)他們拒絕放保存它們)…重新啟動(dòng)后,工作正常。我認(rèn)為你
    發(fā)表于 01-29 14:47

    重新啟動(dòng)PHY時(shí)Stack不能工作該怎么辦?

    你好,為了減少產(chǎn)品的功耗,我需要關(guān)掉PHY。問(wèn)題是當(dāng)我重新啟動(dòng)PHY時(shí),Stack不能工作:PHY配置正確,我可以讀取PHY內(nèi)部寄存器。我試著在PHY重新啟動(dòng)后調(diào)用StackInit(),但是它不工作。我怎么辦?
    發(fā)表于 08-09 11:30

    如何重新啟動(dòng)BLE廣告?

    你好,我有一個(gè)外圍設(shè)備,它周期性地連接到中央設(shè)備。第一個(gè)實(shí)例連接到中心,并按預(yù)期發(fā)送分組數(shù)據(jù)。但是在第二個(gè)實(shí)例中,它沒(méi)有連接間隙事件,并生成AybLeLeEvtGATTHeDeXeltTnIn和外圍停止廣告。如何重新啟動(dòng)BLE廣告?
    發(fā)表于 10-21 08:54

    stm32為什么會(huì)不斷的重新啟動(dòng)

    注意 由于 stm32 系統(tǒng) 不斷的重新啟動(dòng),最后的原因就是stm32開(kāi)發(fā)板子上面的 reset引腳 是 懸空的狀態(tài),受到其他信號(hào)的干擾的,不接的情況下 ,有可能 當(dāng)做是 天線的作用 導(dǎo)致mcu不斷的重新啟動(dòng)的原因
    發(fā)表于 08-02 06:58

    stm32系統(tǒng)為什么會(huì)不斷的重新啟動(dòng)

    stm32系統(tǒng)為什么會(huì)不斷的重新啟動(dòng)?是什么原因造成的?
    發(fā)表于 09-26 07:36

    如何在重新啟動(dòng)esp32后用手機(jī)重新連接到ble?

    你好任何人都有 BLE esp-idf 的任何示例代碼我想在重新啟動(dòng) esp32 后用我的手機(jī)重新連接到 ble(esp32),然后不要配對(duì)新設(shè)備(只是第一次進(jìn)行新配對(duì)),然后連接自動(dòng)連接到配對(duì)
    發(fā)表于 02-16 08:11

    系統(tǒng)時(shí)間在重新啟動(dòng)時(shí)損壞了怎么解決?

    。理論上。但是我注意到(查看日志時(shí)間戳)重新啟動(dòng)后,系統(tǒng)時(shí)間非常錯(cuò)誤。它跳到未來(lái)幾分鐘幾小時(shí)。在 NTP 事件發(fā)生后,它會(huì)得到更正。現(xiàn)在的問(wèn)題是:是什么導(dǎo)致了這種行為以及如何在重新啟動(dòng)時(shí)保持時(shí)間準(zhǔn)確?
    發(fā)表于 03-02 08:35

    斷開(kāi)連接后如何重新啟動(dòng)WIFI?

    斷開(kāi)連接后重新啟動(dòng) WIFI
    發(fā)表于 05-04 07:26

    電腦總是重新啟動(dòng)原因分析

    電腦總是重新啟動(dòng)原因分析 一、軟件   1.病毒破壞   自從有了計(jì)算機(jī)以后不久,計(jì)算機(jī)病毒也應(yīng)運(yùn)而生。當(dāng)網(wǎng)絡(luò)成為
    發(fā)表于 02-24 13:43 ?957次閱讀

    Farichild推出重新啟動(dòng)定時(shí)器FT8010 簡(jiǎn)化智慧型

    Farichild推出重新啟動(dòng)定時(shí)器 簡(jiǎn)化智慧型電話“黑幕當(dāng)機(jī)”重新啟動(dòng)程序 實(shí)現(xiàn)一個(gè)按鍵快速重新啟動(dòng),且無(wú)需取出電池
    發(fā)表于 09-30 11:16 ?625次閱讀

    新iPhone銷售低迷 蘋(píng)果重新啟動(dòng)iPhone X的生產(chǎn)

    蘋(píng)果正在重新啟動(dòng) iPhone X 的生產(chǎn),因?yàn)樾峦瞥龅?iPhone XS 系列銷量低迷,還有部分原因是與三星顯示器簽訂的合同有關(guān)。
    發(fā)表于 11-25 10:13 ?563次閱讀

    谷歌開(kāi)始重新啟動(dòng)機(jī)器人項(xiàng)目

    3月27日訊,據(jù)CNBC消息,谷歌正在重新啟動(dòng)機(jī)器人(18.630, -0.17, -0.90%)項(xiàng)目。
    發(fā)表于 03-27 17:14 ?514次閱讀

    如何使用Web3Js來(lái)處理區(qū)塊鏈斷開(kāi)重新啟動(dòng)

    如果您的團(tuán)隊(duì)在生產(chǎn)中使用Web3Js,那么您必須意識(shí)到在Web3Js中沒(méi)有內(nèi)置的重新連接功能來(lái)處理區(qū)塊鏈斷開(kāi)重新啟動(dòng)。因此,通常情況下,當(dāng)連接下降時(shí),需要重新啟動(dòng)NodeJS服務(wù)以便
    發(fā)表于 03-03 09:25 ?2249次閱讀

    如何重新啟動(dòng)Linux服務(wù)器

    使用個(gè)人電腦工作的時(shí)候,可能會(huì)因?yàn)楦鞣N原因而關(guān)閉機(jī)器。對(duì)于 Linux 初學(xué)者來(lái)說(shuō),與電源相關(guān)(關(guān)機(jī)、重啟等)的任務(wù)總是最后才想到如何去實(shí)現(xiàn)的,所以有可能對(duì)于如何重新啟動(dòng)遠(yuǎn)程服務(wù)器不太了解。今天我們介紹一些可以用來(lái)通過(guò)終端來(lái)重新啟動(dòng) Linux 系統(tǒng)的命令。
    的頭像 發(fā)表于 05-14 16:03 ?2475次閱讀
    主站蜘蛛池模板: 儿子好妈妈的HD3中字抢劫| 亚洲精品免费视频| 国产精品一国产AV麻豆| 性生大片免费看| 色悠悠电影网| 亚洲一区国产| 快播官方网站| yellow片高清视频免费看| 日本特交大片免费观看| 国产精品久久久久无码AV色戒| 亚洲精品国产在线观看 | 亚洲精品国产精品精| 久久99视热频国只有精品| 9477小游戏| 日本伦理片 中文字幕| 国产日韩在线欧美视频| 艺术片 快播| 秋霞电影网伦大理电影在线观看| 国产 亚洲 另类 欧美 在线 | 芒果视频看片在线观看| WWW污污污抽搐喷潮COM| 无码国产成人午夜在线观看不卡| 好吊妞在线成人免费| 7777色鬼xxxx欧美色夫| 日日夜夜狠狠干| 红色机尾快播| AV天堂午夜精品蜜臀AV| 无码国产成人午夜在线观看不卡| 久久精品熟一区二区三区| jlzz中国jizz日本老师水多| 无码中文字幕av免费放| 久久天堂视频| 丰满五十老女人性视频| 亚洲性夜夜夜色综合网| 欧美极品尿交| 国产在线观看免费| 97视频免费观看| 天天影视色欲 影视| 看免费人成va视频全| 丰满人妻妇伦又伦精品APP国产| 日韩无码在线|