目前最熱門的技術之一,肯定要算上人工智能深度學習
。可能有童鞋會納悶,一個主要做硬件設計的老學究也會與“人工智能深度學習”等高大上沾邊嗎?其實我們倒不是研究“人工智能深度學習”算法,而是把成熟的“人工智能深度學習”應用到FPGA上進行加速,這是有實用價值的。基于FPGA的平臺和生態系統,旨在為各種應用提供人工智能,包括移動,智能家居,智能城市,智能工廠和智能車等,比如即將開始的光電競賽。目前幾大FPGA廠家都有自己的FPGA AI解決方案,比如lattice的sensAI就是一個“完整的技術堆棧”,它結合了模塊化硬件套件,神經網絡IP核,軟件工具,參考設計和定制設計服務 - 所有這些都旨在加速物聯網邊緣設備機器學習推理的開發。
以下給lattice打打廣告,就是不知道lattice給廣告費嗎?
機器人可以幫助傳統制造業提升產品質量、提高生產力和效率,且正快速應用于倉儲和供應自動化、采礦、農業和智慧城市等領域。萊迪思FPGA專為機器人應用的獨特需求而優化:
低功耗、確切的感知和控制
實時的工業網絡
機器視覺、深度感測
傳感器融合
馬達和馬達控制
人工智能
基于硬件的安全可信根
萊迪思FPGA專為機器人應用優化,提供以下優勢:
比同類FPGA降低多達75%功耗
小尺寸——4 mm x 4 mm起
比其他采用SRAM的FPGA的抗軟錯誤性能好100多倍
優化的傳感器接口
性能可拓展
萊迪思解決方案集合:Lattice mVision、Lattice sensAI
萊迪思解決方案集合提供即時可用、靈活的IP模塊、參考設計和平臺,進一步加速產品開發。



該參考設計使用一顆圖像傳感器在萊迪思低功耗ECP5 FPGA上實現了基于卷積神經網絡(CNN)的人臉識別應用。訓練過程是在GPU上完成的,可以讓CNN準確地檢測人臉上的點,從而檢測和分辨出人臉差異。該設計可用于檢測其他目標,只需修改訓練數據庫即可。
該設計通過硬件實現,包括SPI、DDR存儲器接口模塊、圖像信號處理引擎、8個CNN加速引擎和計數與標記疊加引擎來顯示注冊和識別的結果。該設計專為ECP5 85K LUT FPGA進行了優化。
該設計在FPGA上部署后,用戶可以在注冊階段通過提取和存儲256個16位值(代表不同的面部特征)來注冊其面部信息。在識別階段,注冊人員站在設備面前時,將提取其256個16位值并將之與存儲的數值列表進行比較驗證。
類似VGG8的網絡——8個(卷積、批標準化)層+4個池化層+1個全連接層
采用了約100萬張圖像對神經網絡進行訓練,包括針對各種環境下的識別增強
使用90 x 90 RGB輸入,以每秒2幀的速度運行
ECP5總功耗僅為850 mW
。。。。。。。。。在lattice網站上有很多有趣的應用設計實例。
也提供了對應的FPGA設計軟件和專門的Machine Learning Software 3.2軟件(其用于構建CNN卷積神經網絡):
我們可以用FPGA來加速運行一個tensorflow構建的CNN網絡,所以我們的工作就分為了兩部分:一部分是在PC機上構建一個cnn網絡,然后用tensorflow來訓練此網絡,另一部分就是設計一個FPGA硬件系統,來在FPGA上應用實現這個tensorflow訓練成熟的CNN網絡,比如用此FPGA實現的實現人臉識別、圖像分類....
下面給童鞋們演示如何在你的win10電腦上,利用win10的linux子系統安裝tensorflow,演示具體步驟與安裝的坑: