資料介紹
十年前,微軟創(chuàng)始人比爾 · 蓋茨在其文章《A Robot in Every Home》里提出他對未來的憧憬:機器人將會像個人電腦一樣進(jìn)入每個家庭,為人類服務(wù)。隨著人工智能以及智能硬件在過去幾年的飛速發(fā)展,到了2016年的今天,筆者堅信各項技術(shù)已臻成熟,智能機器人很快進(jìn)入商業(yè)化時代,蓋茨的愿景也極有可能在5到10年內(nèi)實現(xiàn)。
要想機器人有智能,必先賦予其感知能力。感知計算,特別是視覺以及深度學(xué)習(xí),通常計算量比較大,對性能要求高。但是機器人受電池容量限制,可分配給計算的能源比較低。除此之外,由于感知算法不斷發(fā)展,我們還需要不斷更新機器人的感知處理器。與其它處理器相比,FPGA具有低能耗、高性能以及可編程等特性,十分適合感知計算。本文首先解析FPGA的特性,然后介紹FPGA對感知算法的加速以及節(jié)能,最后談一談機器人操作系統(tǒng)對FPGA的支持。
FPGA:高性能、低能耗、可編程
與其它計算載體如CPU與GPU相比,F(xiàn)PGA具有高性能、低能耗以及可硬件編程的特點。圖1介紹了FPGA的硬件架構(gòu),每個FPGA主要由三個部分組成:輸入輸出邏輯,主要用于FPGA與外部其他部件,比如傳感器的通信;計算邏輯部件,主要用于建造計算模塊;以及可編程連接網(wǎng)絡(luò),主要用于連接不同的計算邏輯部件去組成一個計算器。在編程時,我們可以把計算邏輯映射到硬件上,通過調(diào)整網(wǎng)絡(luò)連接把不同的邏輯部件連通在一起去完成一個計算任務(wù)。比如要完成一個圖像特征提取的任務(wù),我們會連接FPGA的輸入邏輯與照相機的輸出邏輯,讓圖片可以進(jìn)入FPGA。然后,連接FPGA的輸入邏輯與多個計算邏輯部件,讓這些計算邏輯部件并行提取每個圖片區(qū)域的特征點。最后,我們可以連接計算邏輯部件與FPGA的輸出邏輯,把特征點匯總后輸出。由此可見,F(xiàn)PGA通常把算法的數(shù)據(jù)流以及執(zhí)行指令寫死在硬件邏輯中,從而避免了CPU的Instruction Fetch與Instruction Decode 工作。

圖1 FPGA硬件架構(gòu)
高性能
雖然FPGA的頻率一般比CPU低,但是可以用FPGA實現(xiàn)并行度很大的硬件計算器。比如一般CPU每次只能處理4到8個指令,在FPGA上使用數(shù)據(jù)并行的方法可以每次處理256個或者更多的指令,讓FPGA可以處理比CPU多很多的數(shù)據(jù)量。另外,如上所述,在FPGA中一般不需要Instruction Fetch與Instruction Decode, 減少了這些流水線工序后也節(jié)省了不少計算時間。
為了讓讀者對FPGA加速有更好的了解,我們總結(jié)了微軟研究院2010年對BLAS算法的FPGA加速研究。BLAS是矩陣運算的底層庫,被廣泛運用到高性能計算、機器學(xué)習(xí)等領(lǐng)域。在這個研究中,微軟的研究人員分析了CPU、GPU以及FPGA對BLAS的加速以及能耗。圖2對比了FPGA以及CPU、GPU執(zhí)行GaxPy算法每次迭代的時間,相對于CPU,GPU與FPGA都達(dá)到了60%的加速。圖中顯示的是小矩陣運算,隨著矩陣的增大,GPU與FPGA相對與CPU的加速比會越來越明顯。

圖2 GaxPy 算法性能對比 (單位:微秒)
低能耗
FPGA相對于CPU與GPU有明顯的能耗優(yōu)勢,主要有兩個原因。首先,在FPGA中沒有Instruction Fetch與Instruction Decode,在Intel的CPU里面,由于使用的是CISC架構(gòu),僅僅Decoder就占整個芯片能耗的50%;在GPU里面,F(xiàn)etch與Decode也消耗了10%~20%的能源。其次,F(xiàn)PGA的主頻比CPU與GPU低很多,通常CPU與GPU都在1GHz到3GHz之間,而FPGA的主頻一般在500MHz以下。如此大的頻率差使得FPGA消耗的能源遠(yuǎn)低于CPU與GPU。
圖3對比了FPGA以及CPU、GPU執(zhí)行GaxPy算法每次迭代的能源消耗??梢园l(fā)現(xiàn)CPU與GPU的能耗是相仿的,而FPGA的能耗只是CPU與GPU的8%左右。由此可見,F(xiàn)PGA計算比CPU快60%,而能耗只是CPU的1/12,有相當(dāng)大的優(yōu)勢,特別在能源受限的情況下,使用FPGA會使電池壽命延長不少。
要想機器人有智能,必先賦予其感知能力。感知計算,特別是視覺以及深度學(xué)習(xí),通常計算量比較大,對性能要求高。但是機器人受電池容量限制,可分配給計算的能源比較低。除此之外,由于感知算法不斷發(fā)展,我們還需要不斷更新機器人的感知處理器。與其它處理器相比,FPGA具有低能耗、高性能以及可編程等特性,十分適合感知計算。本文首先解析FPGA的特性,然后介紹FPGA對感知算法的加速以及節(jié)能,最后談一談機器人操作系統(tǒng)對FPGA的支持。
FPGA:高性能、低能耗、可編程
與其它計算載體如CPU與GPU相比,F(xiàn)PGA具有高性能、低能耗以及可硬件編程的特點。圖1介紹了FPGA的硬件架構(gòu),每個FPGA主要由三個部分組成:輸入輸出邏輯,主要用于FPGA與外部其他部件,比如傳感器的通信;計算邏輯部件,主要用于建造計算模塊;以及可編程連接網(wǎng)絡(luò),主要用于連接不同的計算邏輯部件去組成一個計算器。在編程時,我們可以把計算邏輯映射到硬件上,通過調(diào)整網(wǎng)絡(luò)連接把不同的邏輯部件連通在一起去完成一個計算任務(wù)。比如要完成一個圖像特征提取的任務(wù),我們會連接FPGA的輸入邏輯與照相機的輸出邏輯,讓圖片可以進(jìn)入FPGA。然后,連接FPGA的輸入邏輯與多個計算邏輯部件,讓這些計算邏輯部件并行提取每個圖片區(qū)域的特征點。最后,我們可以連接計算邏輯部件與FPGA的輸出邏輯,把特征點匯總后輸出。由此可見,F(xiàn)PGA通常把算法的數(shù)據(jù)流以及執(zhí)行指令寫死在硬件邏輯中,從而避免了CPU的Instruction Fetch與Instruction Decode 工作。

圖1 FPGA硬件架構(gòu)
高性能
雖然FPGA的頻率一般比CPU低,但是可以用FPGA實現(xiàn)并行度很大的硬件計算器。比如一般CPU每次只能處理4到8個指令,在FPGA上使用數(shù)據(jù)并行的方法可以每次處理256個或者更多的指令,讓FPGA可以處理比CPU多很多的數(shù)據(jù)量。另外,如上所述,在FPGA中一般不需要Instruction Fetch與Instruction Decode, 減少了這些流水線工序后也節(jié)省了不少計算時間。
為了讓讀者對FPGA加速有更好的了解,我們總結(jié)了微軟研究院2010年對BLAS算法的FPGA加速研究。BLAS是矩陣運算的底層庫,被廣泛運用到高性能計算、機器學(xué)習(xí)等領(lǐng)域。在這個研究中,微軟的研究人員分析了CPU、GPU以及FPGA對BLAS的加速以及能耗。圖2對比了FPGA以及CPU、GPU執(zhí)行GaxPy算法每次迭代的時間,相對于CPU,GPU與FPGA都達(dá)到了60%的加速。圖中顯示的是小矩陣運算,隨著矩陣的增大,GPU與FPGA相對與CPU的加速比會越來越明顯。

圖2 GaxPy 算法性能對比 (單位:微秒)
低能耗
FPGA相對于CPU與GPU有明顯的能耗優(yōu)勢,主要有兩個原因。首先,在FPGA中沒有Instruction Fetch與Instruction Decode,在Intel的CPU里面,由于使用的是CISC架構(gòu),僅僅Decoder就占整個芯片能耗的50%;在GPU里面,F(xiàn)etch與Decode也消耗了10%~20%的能源。其次,F(xiàn)PGA的主頻比CPU與GPU低很多,通常CPU與GPU都在1GHz到3GHz之間,而FPGA的主頻一般在500MHz以下。如此大的頻率差使得FPGA消耗的能源遠(yuǎn)低于CPU與GPU。
圖3對比了FPGA以及CPU、GPU執(zhí)行GaxPy算法每次迭代的能源消耗??梢园l(fā)現(xiàn)CPU與GPU的能耗是相仿的,而FPGA的能耗只是CPU與GPU的8%左右。由此可見,F(xiàn)PGA計算比CPU快60%,而能耗只是CPU的1/12,有相當(dāng)大的優(yōu)勢,特別在能源受限的情況下,使用FPGA會使電池壽命延長不少。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 仿貓腿機器人跳躍能力評估分析 5次下載
- 基于TI處理器的外骨骼輔助康復(fù)機器人 15次下載
- 智能農(nóng)業(yè)除草機器人研究分析綜述 17次下載
- 上肢康復(fù)機器人現(xiàn)狀及研究分析 8次下載
- 機器人無線充電電路設(shè)計 49次下載
- 基于Matlab的機構(gòu)與機器人分析資料下載 13次下載
- 基于DSP和PC的農(nóng)業(yè)機器人控制系統(tǒng) 18次下載
- 基于DSP的高壓訓(xùn)線機器人數(shù)字化控制器 11次下載
- 基于DSP芯片的足球機器人實現(xiàn)與設(shè)計 27次下載
- 如何分析新型二自由度平動并聯(lián)機器人的結(jié)構(gòu)和運動學(xué) 7次下載
- 機器人設(shè)計教程之機器人控制和決策子系統(tǒng) 25次下載
- 基于ARM處理器的吸塵機器人與硬件設(shè)計 8次下載
- 基于FPGA的機器人圖像監(jiān)視系統(tǒng) 9次下載
- 多感知機器人夾持器設(shè)計 18次下載
- 仿人機器人足部姿態(tài)實時感知系統(tǒng)
- 基于智能制造的工業(yè)機器人應(yīng)用實踐 1486次閱讀
- 北京航空航天大學(xué)發(fā)布軟體機器人智能感知系統(tǒng)最新進(jìn)展 945次閱讀
- 基于嵌入式處理器S698-T芯片實現(xiàn)機器人移動平臺電控系統(tǒng)的設(shè)計 4117次閱讀
- 基于LPC2114處理器實現(xiàn)人形機器人控制系統(tǒng)的設(shè)計 3719次閱讀
- 視覺處理器讓自適應(yīng)機器人成為現(xiàn)實 2033次閱讀
- 面對疫情 醫(yī)療機器人能幫上什么忙? 2236次閱讀
- 服務(wù)機器人市場需求及前景分析 8646次閱讀
- 機器人控制器有哪些類型_機器人控制器發(fā)展 1.2w次閱讀
- 協(xié)作機器人的起源_為什么需要協(xié)作機器人 8322次閱讀
- 工業(yè)機器人最常見的15種應(yīng)用 1.4w次閱讀
- 機器視覺的機器人取代四臺傳統(tǒng)的火焰處理機器人 3370次閱讀
- 新寵七軸工業(yè)機器人有哪些優(yōu)勢 4326次閱讀
- 如何設(shè)計機器人處理器? 8177次閱讀
- 基于FPGA的NoC多核處理器的設(shè)計 4727次閱讀
- 基于FPGA處理器的C編譯指令 2703次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1491次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機和 SG3525的程控開關(guān)電源設(shè)計
- 0.23 MB | 4次下載 | 免費
- 8基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關(guān)電源設(shè)計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537793次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論