在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

TinyML,無需重新合成或重新啟動FPGA即可更新

星星科技指導員 ? 來源:microchip ? 作者:microchip ? 2023-05-06 09:44 ? 次閱讀

預計到本十年末,FPGA 芯片將主導物聯網端點深度神經網絡 (DNN)。它們比微控制器更節能、更快,并且比ASIC更容易開發。Infxl與Microchip合作,通過提供兩項技術優勢來加快其采用速度:

1. 從訓練數據到緊湊的 DNN 的簡單工具 C 語言和 HLS

2. TinyML FPGA實現,無需重新合成或重啟即可更新

其中第一個解決了嵌入式開發人員社區共同關注的問題:ML 和 FPGA 工具需要一定程度的專業知識,而這種專業知識既昂貴又難以找到。

第二個解決了機器學習 (ML) 固有的問題:ML 解決方案在一段時間后會過時,需要定期恢復活力。我們提出了一種 DNN-ON-FPGA 設計,可確保 DNN 無需重新合成、重新實現或重新啟動 FPGA 即可更新。

通過使用簡單緊湊的ML模型,可以進一步放大FPGA實現的能效和速度優勢。Infxl 網絡就是這樣一種模型(示例代碼 [2])。它使用 8/16 位數據路徑在簡單 C 中實現完全連接的 DNN,而無需使用乘法或任何浮點運算。

Infxl 網絡的一個關鍵特征是它在網絡結構/參數和推理引擎之間保持清晰的分離。我們通過在LSRAM中保留參數來利用此功能,同時使用LUT和FF實現引擎。這樣,當我們需要更新已部署的 Infxl 網絡時,我們不需要重新合成、重新實現甚至重新啟動 FPGA。我們只需更新LSRAM中的參數,FPGA幾乎立即開始根據更新的網絡結構/參數提供改進的結果。

開發過程包括兩個主要步驟:

? 將預處理的數據上傳到 cloud.infxl.com,并將經過訓練的 Infxl 網絡下載為即用型 C 代碼。此過程不需要任何 ML 背景。

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

Infxl net C 代碼包括一個測試平臺和一個通用接口。在將其部署到FPGA中之前,需要進行一些簡單的修改:

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

? 定義用于通信 Infxl 網絡預測的類的機制。

? 將 Infxl 網絡的存儲器類型更改為僅仿真,并定義 C 代碼外部但仍在 FPGA 內部的存儲器。

? 在 C 代碼中創建一個頂級函數以合并 Infxl 網絡。這將是之后實例化到整個FPGA系統中的IP。

默認的 Infxl net C 代碼通過少量 RAM 將推理引擎連接到輸入和輸出。這是微控制器的典型方法。對于FPGA實現,與類似FIFO的接口進行交互會更有效。在默認的 Infxl net C 代碼中添加了額外的小函數以適應這一點。然而,Infxl網絡的推理引擎的代碼保持不變。

有關原始 C 代碼和修改后的 C 代碼的比較,請參見下文。

源語言:

poYBAGRVsLaAFc3TAAImoke6FhQ900.png

改 性:

pYYBAGRVsLmAH0rhAAN0Fa46W1A923.png

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

下一步,函數內部RAM被提取出來,并將在SmartHLS的代碼生成過程中轉換為簡單的內存接口。這需要對 ROM16 陣列進行簡單的修改。ROM16封裝了Infxl網絡的結構以及所有參數。對于狀態監測用例,原始ROM16修改如下:

源語言:

chaijie_default.png

pYYBAGRVsMyAJV_LAAE0yG0XU2c681.png

在測試平臺中,ROM16 將在運行 Infxl 網絡之前填充。在整個FPGA設計中也需要等效負載。此加載機制還支持更新已部署的 Infxl 網絡:

poYBAGRVsNKAQhdnAAD_SpeP_K8120.png

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

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

? 763 個 LUT 和 776 FF 用于 IP,包括接口

? 546 個 LUT 和 610 FF,僅用于 Infxl 網絡

在此配置中,對單個輸入向量的推理大約需要 2800 個時鐘周期。以 100 MHz 或 200 MHz 運行,這將分別導致每 28 μs 或 14 μs 進行一次新分類。

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

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

從本質上講,Infxl net與Microsemi的SmartHLS相結合,提供了一種簡單且面向未來的方法,可以將ML整合到各種系統中。本文中討論的用例基于運動傳感器的數據。但是,使用 Infxl 網絡的應用程序不僅限于該用例。它可用于從預測性維護到環境監測機器人技術、惡意軟件檢測、醫療保健可穿戴設備等用例。

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1630

    文章

    21781

    瀏覽量

    604913
  • 機器人
    +關注

    關注

    211

    文章

    28593

    瀏覽量

    207823
  • 機器學習
    +關注

    關注

    66

    文章

    8434

    瀏覽量

    132871
收藏 人收藏

    評論

    相關推薦

    ESP8266如何進行OTA更新,但無需重新啟動

    - 有沒有辦法OTA下載新固件,但不能重新啟動 - 并在下一次系統啟動時檢查新固件和交換機。我想進行 OTA 更新,但無需重新啟動。 - E
    發表于 07-11 07:19

    重新啟動MPLABX后出現許多錯誤通知

    MPLABX后,很好,沒有找到調試工具…沒有理由,在重新啟動MPLABX之后,PACKIT3工作正常。許多錯誤警報/錯誤通知。斷點是垃圾(很多時候當他們拒絕放保存它們)…重新啟動后,工作正常。我認為你
    發表于 01-29 14:47

    重新啟動PHY時Stack不能工作該怎么辦?

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

    如何重新啟動BLE廣告?

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

    stm32為什么會不斷的重新啟動

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

    stm32系統為什么會不斷的重新啟動

    stm32系統為什么會不斷的重新啟動?是什么原因造成的?
    發表于 09-26 07:36

    如何在重新啟動esp32后用手機重新連接到ble?

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

    系統時間在重新啟動時損壞了怎么解決?

    。理論上。但是我注意到(查看日志時間戳)重新啟動后,系統時間非常錯誤。它跳到未來幾分鐘幾小時。在 NTP 事件發生后,它會得到更正。現在的問題是:是什么導致了這種行為以及如何在重新啟動時保持時間準確?
    發表于 03-02 08:35

    斷開連接后如何重新啟動WIFI?

    斷開連接后重新啟動 WIFI
    發表于 05-04 07:26

    電腦總是重新啟動原因分析

    電腦總是重新啟動原因分析 一、軟件   1.病毒破壞   自從有了計算機以后不久,計算機病毒也應運而生。當網絡成為
    發表于 02-24 13:43 ?966次閱讀

    Farichild推出重新啟動定時器FT8010 簡化智慧型

    Farichild推出重新啟動定時器 簡化智慧型電話“黑幕當機”重新啟動程序 實現一個按鍵快速重新啟動,且無需取出電池
    發表于 09-30 11:16 ?628次閱讀

    新iPhone銷售低迷 蘋果重新啟動iPhone X的生產

    蘋果正在重新啟動 iPhone X 的生產,因為新推出的 iPhone XS 系列銷量低迷,還有部分原因是與三星顯示器簽訂的合同有關。
    發表于 11-25 10:13 ?566次閱讀

    谷歌開始重新啟動機器人項目

    3月27日訊,據CNBC消息,谷歌正在重新啟動機器人(18.630, -0.17, -0.90%)項目。
    發表于 03-27 17:14 ?525次閱讀

    如何使用Web3Js來處理區塊鏈斷開重新啟動

    如果您的團隊在生產中使用Web3Js,那么您必須意識到在Web3Js中沒有內置的重新連接功能來處理區塊鏈斷開重新啟動。因此,通常情況下,當連接下降時,需要重新啟動NodeJS服務以便
    發表于 03-03 09:25 ?2291次閱讀

    如何重新啟動Linux服務器

    使用個人電腦工作的時候,可能會因為各種原因而關閉機器。對于 Linux 初學者來說,與電源相關(關機、重啟等)的任務總是最后才想到如何去實現的,所以有可能對于如何重新啟動遠程服務器不太了解。今天我們介紹一些可以用來通過終端來重新啟動 Linux 系統的命令。
    的頭像 發表于 05-14 16:03 ?2524次閱讀
    主站蜘蛛池模板: 成人窝窝午夜看片| 人人做人人爽久久久精品| 一级片在线免费| 色欧美综合| 色拍拍视频| 免费爱爱视频| 99久久免费精品国产免费高清| 亚洲1区2区3区4区| 1024手机在线观看视频| 欧美成人免费大片888| 久久免费国产| 午夜黄色网址| 视频一区 中文字幕| 一级毛片真人免费播放视频| 嗯!啊!使劲用力在线观看| 中国毛茸茸bbxx| 四虎影视色费永久在线观看| 青草99| 黄色大片a级| 亚洲 欧美 校园| 国产真实灌醉美女疯狂弄| 69 hd xxxx日本| 一区二区三区精品国产欧美| 三级黄色在线| 国产精品女人在线观看| 午夜免费视频福利集合100| 国产精品资源网站在线观看| 一二三区在线视频| 性欧美成人免费观看视| 免费日本黄色| 在线免费看高清视频大全| 护士巨好爽好大乳| 日本一区视频在线播放| 四虎影院在线看| 国产综合色精品一区二区三区| 天天影视网天天影网| 欧美在线黄| 一区二区三区福利| 亚洲国产成人精彩精品| 久久夜色精品国产噜噜小说| 亚洲情a成黄在线观看动|