為快速增長的網(wǎng)絡邊緣人工智能應用提供更高性能的解決方案
存在檢測和對象計數(shù)等網(wǎng)絡邊緣人工智能應用越來越受歡迎,但設計人員越來越多地要求在不影響性能的情況下實現(xiàn)低功耗和小尺寸的網(wǎng)絡邊緣人工智能解決方案。萊迪思的sensAI技術集合的最新版本,適用于ECP5和iCE40 UltraPlus FPGA,為設計人員提供了在網(wǎng)絡邊緣實現(xiàn)低功耗、高性能AI所需的硬件平臺、IP、軟件工具、參考設計和設計服務。
摘要
低成本、高性能的網(wǎng)絡邊緣解決方案的市場競爭日益激烈。領先的市場研究公司預測,在未來六年內,網(wǎng)絡邊緣解決方案市場將迎來大爆發(fā)。IHS預計到2025年,將有超過400億臺設備在網(wǎng)絡邊緣運行,而市場情報機構Tractica預測,屆時每年將出貨超過25億臺網(wǎng)絡邊緣設備。
隨著新一代網(wǎng)絡邊緣應用的出現(xiàn),設計人員越來越傾向于開發(fā)結合低功耗和小尺寸而不降低性能的解決方案。推動這些新的AI解決方案的是越來越多的網(wǎng)絡邊緣應用,例如家庭控制中智能門鈴和安全攝像頭的存在檢測,零售應用中用于庫存的對象計數(shù),以及工業(yè)應用中的物體和存在檢測。一方面,市場要求設計人員開發(fā)出性能比以往更高的解決方案。另一方面,延遲、帶寬、隱私、功耗和成本問題限制了他們依賴云的計算資源來執(zhí)行分析。
同時,性能、功耗和成本限制因應用而異。隨著實時在線網(wǎng)絡邊緣應用的數(shù)據(jù)需求不斷推動對基于云的服務的需求,設計人員必須解決傳統(tǒng)的功耗、電路板面積和成本問題。開發(fā)人員如何解決系統(tǒng)對于日益嚴格的功耗(毫瓦級)和小尺寸(5mm2到100mm2)要求。單論各種性能要求就已經很難滿足。
利用FPGA的優(yōu)勢
萊迪思的FPGA具有獨特的優(yōu)勢,可以滿足網(wǎng)絡邊緣設備快速變化的市場需求。設計人員可以在不依賴云端的情況下,快速為網(wǎng)絡邊緣設備提供更多計算資源的其中一個方法是使用FPGA中本身的并行處理能力來加速神經網(wǎng)絡性能。此外,通過使用針對低功耗運行而優(yōu)化的低密度、小尺寸封裝FPGA,設計人員可以滿足新的消費和工業(yè)應用對功耗和尺寸的嚴格限制。例如,萊迪思的iCE40 UltraPlus?和ECP5?產品系列支持網(wǎng)絡邊緣解決方案的開發(fā),功耗低至1mW到1W,硬件平臺尺寸小至5.5mm2到100mm2。通過將超低功耗、高性能和高精度與全面的傳統(tǒng)接口支持相結合,這些FPGA為網(wǎng)絡邊緣設備開發(fā)人員提供了滿足不斷變化的設計要求所需的靈活性。
圖1:萊迪思半導體的低功耗、小尺寸FPGA提供適當?shù)男阅芎凸δ芙M合,支持網(wǎng)絡邊緣人工智能應用
為了滿足這一需求并加速開發(fā),萊迪思推出了業(yè)界第一款技術集合sensAI?,為設計人員提供了開發(fā)智能家居、智能工廠、智能城市和智能汽車中低功耗、高性能網(wǎng)絡邊緣設備所需的所有工具。sensAI旨在滿足支持AI的網(wǎng)絡邊緣設備不斷增長的需求,提供全面的硬件和軟件解決方案,用于在網(wǎng)絡邊緣運行的智能設備中實現(xiàn)低功耗、實時在線的AI功能。它于2018年推出,旨在無縫創(chuàng)建新設計或更新現(xiàn)有設計,其低功耗AI推理針對這些新應用要求進行了優(yōu)化。
這個綜合設計生態(tài)系統(tǒng)中有什么?首先,萊迪思的模塊化硬件平臺,如帶有HM01B0 Shield開發(fā)板的iCE40 UPduino 2.0和基于ECP5的嵌入式視覺開發(fā)套件(EVDK),為應用開發(fā)提供了堅實的基礎。UPduino可用于僅需幾毫瓦的AI設計,而EVDK支持需要更高功耗但通常工作在1W以下的應用。
軟IP可以很容易地實例化到FPGA中,以加速神經網(wǎng)絡的開發(fā)。因此,sensAI開發(fā)包包括CNN加速器IP,能讓設計人員在iCE40 UltraPlus FPGA中實現(xiàn)深度學習應用。sensAI還提供完整的CNN可設置參數(shù)的加速器IP核,可以在萊迪思的ECP5 FPGA中實現(xiàn)。這些IP支持可變量化。這反過來又使設計人員能夠在數(shù)據(jù)準確性和功耗之間進行權衡。
Lattice的sensAI技術集合允許設計人員通過易于使用的工具流程探索設計選項和權衡。設計人員可以使用Caffe、TensorFlow和Keras等行業(yè)標準框架進行網(wǎng)絡訓練。開發(fā)環(huán)境還提供神經網(wǎng)絡編譯器,將訓練的網(wǎng)絡模型映射為固定點表示,支持權重和激活的可變量化。設計人員可以使用編譯器來幫助分析、仿真和編譯不同類型的網(wǎng)絡,以便在沒有RTL經驗的情況下在萊迪思的加速器IP核上實現(xiàn)。然后,設計人員可以使用傳統(tǒng)的FPGA設計工具,如Lattice Radiant和Diamond來實現(xiàn)整個FPGA設計。
為加快設計實現(xiàn),sensAI提供了越來越多的參考設計和演示。包括面部識別、手勢檢測、關鍵詞檢測、人員存在檢測、面部跟蹤、對象計數(shù)和速度標志檢測。最后,設計團隊通常需要一定的專業(yè)知識才能完成設計。為滿足這一需求,萊迪思與全球各地的眾多設計服務合作伙伴建立了合作關系,以便為AI/ML專業(yè)知識不足的客戶提供支持。
圖2:Lattice senseAI是一整套硬件和軟件解決方案,適用于網(wǎng)絡邊緣人工智能應用的開發(fā)
主要更新
為了滿足網(wǎng)絡邊緣AI快速增長的性能要求,萊迪思在2019年發(fā)布sensAI更新,增強了其性能并優(yōu)化了設計流程。更新后的sensAI比上一版本的性能提升了10倍,這是由多個優(yōu)化促成的,包括通過更新CNN IP和神經網(wǎng)絡編譯器,新增8位激活量化、智能層合并以及雙DSP引擎等特性,優(yōu)化了存儲器的訪問。
在最新版本中,由于更新了神經網(wǎng)絡編譯器,支持8位輸入數(shù)據(jù),存儲器訪問序列得到大幅優(yōu)化。因此不僅外部存儲器的訪問減少了一半,還支持使用更高分辨率的圖像作為數(shù)據(jù)輸入。使用更高分辨率的圖像,解決方案自然更為精確。
為進一步加速性能,萊迪思優(yōu)化了sensAI神經網(wǎng)絡中的卷積層,減少了卷積計算耗費的時間。萊迪思將器件中的卷積引擎數(shù)量翻倍,減少了約50%的卷積時間。
萊迪思在不增加功耗的情況下提升了sensAI的性能,設計人員因此可以選擇ECP5 FPGA產品系列中門數(shù)較少的器件。經優(yōu)化的演示示例可以幫助實現(xiàn)性能提升。例如,針對低功耗運行進行優(yōu)化、采用CMOS圖像傳感器的人員偵測演示,通過VGG8網(wǎng)絡提供64x64x3的分辨率。該系統(tǒng)以每秒5幀的速率運行,使用iCE40 UltraPlus FPGA功耗僅為7mW。第二個性能經優(yōu)化的演示,針對人員計數(shù)應用,同樣也使用CMOS圖像傳感器,通過VGG8網(wǎng)絡提供128x128x3的分辨率。該演示以每秒30幀的速率運行,使用ECP5-85K FPGA功耗為850mW。
圖3:這些參考設計展示了sensAI提供的功耗與性能可選方案
與此同時,sensAI給用戶帶來無縫的設計體驗,它支持更多神經網(wǎng)絡模型和機器學習框架,從而縮短設 計周期。全新可定制化的參考設計可簡化對象計數(shù)和存在檢測等常見的網(wǎng)絡邊緣解決方案的開發(fā),同時設計合作伙伴生態(tài)也在不斷拓展,為用戶提供重要的設計服務。有了這些,萊迪思能為開發(fā)人員提供他們復制或調整其設計所需的全部關鍵工具。例如,下列框圖展示了萊迪思提供的一系列全面的組件,包括訓練模型、訓練數(shù)據(jù)集、訓練腳本、經過更新的神經網(wǎng)絡IP和神經網(wǎng)絡編譯器。
圖4: sensAI的設計流程包括了行業(yè)領先的機器學習框架、訓練數(shù)據(jù)和腳本、神經網(wǎng)絡IP等設計和訓練網(wǎng)絡邊緣AI設備必需的資源
萊迪思還拓展了對機器學習框架的支持,致力于提供無縫的用戶體驗。最初版本的sensAI支持Caffe和TensorFlow,最新版本新增支持Keras,這是用Python編寫的開源神經網(wǎng)絡,可在TensorFlow、Microsoft Cognition Toolkit或Theano上運行。Keras旨在幫助工程師快速實現(xiàn)深度神經網(wǎng)絡,它可以提供用戶友
好、模塊化和可拓展的環(huán)境,加速原型設計。Keras最初被當做一種接口而非獨立的機器學習框架,它的高度抽象性能讓開發(fā)人員加速開發(fā)深度學習模型。
為進一步簡化使用,萊迪思更新了sensAI神經網(wǎng)絡編譯器工具,它可以在機器學習模型轉換為固件文件時自動選擇最精確的分數(shù)位數(shù)。sensAI更新還新增了一個硬件調試工具,讓用戶可以在神經網(wǎng)絡每個層進行讀取和寫入。進行軟件仿真之后,工程師也需要知道他們的網(wǎng)絡在實際硬件上的表現(xiàn)。使用此工具,工程師可以在短短幾分鐘內看到硬件運行的結果。
此外,最新版本的sensAI得到了越來越多公司的支持,他們?yōu)槿R迪思提供專為低功耗、實時在線的網(wǎng)絡邊緣設備而優(yōu)化的設計服務和產品開發(fā)技能。這些公司通過無縫更新現(xiàn)有設計或針對特定應用開發(fā)完整的解決方案來幫助客戶構建網(wǎng)絡邊緣AI設備。
sensAI設計案例
萊迪思這一更高性能的全新解決方案可用于下列四種不同的加速器設計案例。在第一個設計案例中(圖5),設計工程師使用sensAI來構建獨立運行模式的解決方案。這種系統(tǒng)架構能讓設計工程師在萊迪思iCE40 UltraPlus或ECP5 FPGA上開發(fā)出實時在線的集成解決方案,具有延遲低、安全性高的特點,其中FPGA資源可用于系統(tǒng)控制。典型的一種應用就是使用獨立運行的傳感器實現(xiàn)人員偵測和計數(shù)。
圖5:將sensAI作為獨立運行的網(wǎng)絡邊緣AI處理解決方案
設計人員還使用sensAI開發(fā)兩種不同類型的預處理解決方案。第一種情況下(圖6),設計人員采用了萊迪思sensAI以及一片低功耗的iCE40 UltraPlus FPGA對傳感器數(shù)據(jù)進行預處理,從而最大程度地降低了向SoC或云端傳輸數(shù)據(jù)進行分析的成本。例如,如果是用在智能門鈴上,sensAI會初步讀取來自圖像傳感器的數(shù)據(jù)。如果判斷為不是人,比如說是一只貓,那么系統(tǒng)就不會喚醒SoC或連接到云端作進一步處理。因此,這種方法可以最大程度降低數(shù)據(jù)傳輸成本和功耗。如果預處理系統(tǒng)判斷門口的對象是人,則喚醒SoC作進一步處理。這能極大減少系統(tǒng)需要處理的數(shù)據(jù)量,同時降低功耗要求,這對于實時在線的網(wǎng)絡邊緣應用來說至關重要。
圖6:在此案例中,sensAI會預處理傳感器數(shù)據(jù)來判斷該數(shù)據(jù)是否需要發(fā)送到SoC作進一步處理
在第二個預處理應用中,設計人員可以使用ECP5 FPGA實現(xiàn)神經網(wǎng)絡加速(圖7)。在此案例中,設計人員利用ECP5 IO的靈活性將各類現(xiàn)有的板載器件(如傳感器)連接到低端MCU,實現(xiàn)高度靈活的系統(tǒng)控制。
圖7:第二個系統(tǒng)架構也采用了預處理,設計人員可以使用ECP5和sensAI預處理傳感器數(shù)據(jù),加強神經網(wǎng)絡的綜合性能
設計人員還可以在后處理系統(tǒng)中使用sensAI加速器(圖8)。越來越多的設計案例表明,很多公司雖然已經開發(fā)出經過驗證、基于MCU的解決方案,但是他們希望在不更換組件或重新設計的情況下新增某種AI功能。但是在某些情況下,他們的MCU性能相對不足。典型的例子就是智能工業(yè)或智能家庭應用,在進行分析之前需要圖像濾波。設計人員可以在這里添加另一個MCU,然后經歷耗時的設計驗證過程,或者也可以在MCU和數(shù)據(jù)中心之間添加加速器進行后處理,最大限度地減少發(fā)送到云端的數(shù)據(jù)量。這種方法對想要添加AI功能的物聯(lián)網(wǎng)設備開發(fā)人員尤其有吸引力。
圖8:通過sensAI增強該基于MCU的設計,讓現(xiàn)有的設計支持網(wǎng)絡邊緣AI功能
結論
顯然,未來幾年將是實時在線的網(wǎng)絡邊緣智能設備這一市場發(fā)展的關鍵時期。由于應用變得越來越復
雜,設計人員將急需能夠以低功耗支持更高性能的工具。萊迪思最新版本的sensAI技術配合ECP5和iCE40 UltraPlus FPGA,將為設計人員提供硬件平臺、IP、軟件工具、參考設計和設計服務,幫助他們戰(zhàn)勝競爭對手,快速開發(fā)出成功的解決方案。