下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
FPGA或將取代CPU而成為機器人開發(fā)的新寵FPGA這個詞可能很多人都有所耳聞,尤其是理工科的同學們大多數應該都自愿或被迫被這個詞刷屏過。但要真追究起來FPGA到底是個什么東西。很多非相關專業(yè)的人都會陷入一臉迷茫。不過說起開發(fā)板,可能知道的人就很多了,有些人會以為FPGA就是開發(fā)板。但實際上FPGA指的只是開發(fā)板上面的那一小塊芯片而已(下圖黃圈處),整個開發(fā)板的其余部件都是為了協(xié)同它工作,讓它發(fā)揮出它的性能而存在的??杉词褂行牡耐瑢W曾經查到了這里,或許也搞不懂它和CPU到底有什么區(qū)別,畢竟把它的位置換成CPU,整個開發(fā)板看起來就變成一塊普通的電腦主板了嘛,感覺簡直分分鐘接上硬盤和顯示器就可以開始LOL了。確實,不管從外形上來看還是實際的功能上來看,F(xiàn)PGA和CPU都表現(xiàn)得太像了,但在這兩者相似的外表之下,其內部構造其實有著根本性的差別,因為它的構造決定了它在處理機器人需要的很多運算,尤其是在機器感知這方面的處理時的速度會比CPU快很多,同時還能將功耗控制在很低的水平。在講FPGA之前,我們先從大家比較熟悉的CPU的數據處理方式講起。首先需要強調的一點是,處理我們指令的計算機元件本身是無法理解我們的指令的,它們只能理解作為組成CPU最基本的元件——晶體管能實現(xiàn)的兩種狀態(tài):“開”和“關”的含義,對應的就是1和0這兩個機器碼數字,這也是計算機的整個體系都基于二進制建立的原因。而為了讓我們下達的各種各樣的指令變成CPU能理解的0和1,CPU需要一個專門的譯碼器來翻譯我們的指令。其中的Control部分就是控制取指、譯碼等整個流程的部分,Cache是在高速的CPU與相對低速的內存間為了提高從內存獲得指令的效率而設置的一個臨時指令存儲器,DRAM則是速度比較慢的那一部分指令存儲器。可以看到,真正的計算單元ALU只占了CPU結構中不大的一部分。這樣的設計是有原因的。CPU存在的目的是作為通用計算機的處理核心,注意“通用”二字,這意味著塊核心必須具備處理各式各樣千奇百怪的指令要求的能力,并且因為要處理來自多個設備的請求,它必須擁有隨時中止目前的運算轉而進行其他運算,完成后再從中斷點繼續(xù)當前運算的能力。把這些話看完你可能都快睡著了,但在CPU內這些都要求在一瞬間完成。所以CPU需要有非常復雜的邏輯控制單元和這套獨特的指令翻譯結構。這都是保證CPU能順利完成它的使命的必須的東西??梢哉f,在計算效率和通用性上CPU犧牲前者選擇了后者。而FPGA最早是從專用集成電路發(fā)展而來的半定制化的可編程電路。從誕生的那一天起它的身世就決定了它不像CPU那樣可以靈活的處理各種沒有見過的指令,而只能根據一個固定的模式來處理輸入的數據然后輸出,F(xiàn)PGA的結構是這樣的很簡單,絕大部分都是計算單元(上圖中黃色部分其實就相當于CPU結構圖中綠色的部分),但沒有控制單元并不代表FPGA就不會執(zhí)行指令了,事實上FPGA里控制單元的角色就是由圖中的每個控制單元和單元之間可編程的邏輯連接線來完成的,通過FPGA編程,開發(fā)者可以更改FPGA的每個單元的運算邏輯和單元之間的連接方式,從而使其達到和一般的運行程序差不多的效果。它與CPU的不同,在于它無法應對沒有被編程過的指令。編程方式一旦確定,F(xiàn)PGA就只能根據被編程的處理邏輯和方式來處理特定的數據輸入。但這樣的架構換來的是FPGA內部幾乎全是計算單元,因此FPGA的實際運算能力會比看起來強得多,尤其是在運行簡單但重復性高的任務的時候,由于簡單,因此很少的幾個邏輯單元,甚至一個就能獨立輸出這個運算的結果。而由于省去了CPU的取指和譯碼兩個步驟,F(xiàn)PGA重復運行相同代碼的效率得到了極大的提高。有一個比喻打得很恰當,CPU就像大學里一位德高望重的老教授,積分微分啥都會算,但畢竟它只有一個人,當計算任務太重的時候也會被累趴下,而FPGA這樣的結構,就像是整個小學里所有小學生組成的隊列,每個人都只會算簡單的加減乘除,但有些量大但不復雜的運算任務交給他們就是會比較快。具體表現(xiàn)在性能上,很明顯的一點就是一般的CPU只能同時處理4到8個指令,而不算太差的只要FPGA優(yōu)化得當,可以同時處理256個甚至更多的指令。其實GPU的設計思路同F(xiàn)PGA類似,都是為了處理大量簡單重復的運算而出現(xiàn)的設備。但GPU的性能強悍的同時耗能也很高,而FPGA因為編程和優(yōu)化都是直接在硬件層面進行的,能耗會低很多。不難發(fā)現(xiàn),整個過程重復性極高,并且其中并沒有過于復雜的運算。因此使用FPGA進行該算法的計算會比使用CPU快很多。事實上,文章中表示根據加州大學洛杉磯分校的一項相關的實驗結果,F(xiàn)PGA在運行SIFT指令時的執(zhí)行效率是CPU的足足30倍。處理速度快這么多,耗能又如此小。也難怪有些人會認為FPGA擁有取代CPU和GPU的能力了。人類設計機器人的最終目的是希望它們能變得像我們一樣,用跟我們類似的方式思考,擁有獨立判斷形勢、處理任務的能力。我們目前還不是很了解大腦工作的具體原理,但無論從經驗還是直覺來看,類似人類的思維都不是由無數邏輯簡單的堆積起來的。因為思維這件事物的復雜程度已經遠遠超出了運算的范疇。比如說,如果你想計算213x312而你想將它簡化,你只需要很簡單的將它分解成213個312相加,甚至是重復213次312個1相加。但如果你想算2的64次方呢?如果你想算sin(27°)呢?甚至如果你想算log230呢?如果你一定要將其分拆成簡單
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《倉庫庫存管理系統(tǒng)》課件
- 《小學細節(jié)描寫》課件
- 單位管理制度合并匯編【職員管理】
- 四川省南充市重點高中2024-2025學年高三上學期12月月考地理試卷含答案
- 《運算律》教案(20篇)
- 2024管理演講稿(33篇)
- 《微觀經濟學》試題及參考答案(三)
- 《倉庫設備管理》課件
- 《宋璽事例作文》課件
- 《流感的合理用藥》課件
- 產品經理必備BP模板(中文版)
- 維西縣城市生活垃圾熱解處理工程環(huán)評報告
- GB/T 9128.2-2023鋼制管法蘭用金屬環(huán)墊第2部分:Class系列
- 網絡經濟學PPT完整全套教學課件
- 2023年主治醫(yī)師(中級)-臨床醫(yī)學檢驗學(中級)代碼:352考試參考題庫附帶答案
- 機械原理課程設計鎖梁自動成型機床切削機構
- 順產臨床路徑
- 人教版培智一年級上生活適應教案
- 推動架機械加工工序卡片
- RoHS檢測報告完整版
- 中國近現(xiàn)代史綱要(上海建橋學院)智慧樹知到答案章節(jié)測試2023年
評論
0/150
提交評論