你還沒聽過fpga?那你一定是好久沒有更新自己在企業級it領域的知識了。今天筆者就和大家聊聊何為fpga?fpga主要應用場景是什麼?有人說fpga是替代傳統cpu和gpu的未來,你信嗎?
fpga全稱現場可程式設計門陣列(field-programmable gate array),最初作為專用積體電路領域中的一種半定製電路而出現的,具有一定的可程式設計性,可同時進行資料並行和任務平行計算,在處理特定應用時有更加明顯的效率。
實際上,英特爾、紫光、浪潮等企業均已開始布局fpga。早在sc2015大會上,浪潮就聯合altera,以及中國最大的智慧型語音技術提供商科大訊飛,共同發布了一套面向深度學習、基於altera arria 10 fpga平台。
紫光是另一家希望通過收購手段直接接觸fpga最新科技的公司,繼尋求併購美光失利、收購硬碟大廠威騰(wd)破局後,紫光或將收購美國萊迪思半導體(lattice semiconductor)股份,為搶進fpga市場做布局。
那麼,fpga吸引如此多廠商為之瘋狂的原因究竟是什麼?
從應用場景角度分析,我們可以看到隨著谷歌的阿爾法狗打敗了人類圍棋冠軍後,深度學習已經從神壇走下來,越來越多的人開始認識到深度學習可能會改變未來的生活,成為未來科技發展的方向;而fpga設計工具使其對深度學習領域經常使用的上層軟體相容性更強,fpga正是助力深度學習的一大技術。
但是,如果說fpga是繼任傳統cpu與gpu的未來,就有些誇大其詞。且不論cpu與gpu技術已經成熟,擁有完善的生態鏈,cpu與fpga的結構也有所不同。cpu中擁有控制取指、解碼等流程,處理可信具備處理各式各樣千奇百怪的指令要求的能力。
相比之下fpga就不能向cpu一樣靈活的處理各種沒有見過的指令,只能根據乙個固定的模式來處理輸入的資料然後輸出,這也是為什麼fpga經常被看作一種行家專屬的架構。
不同於cpu的是,fpga和gpu內都有大量的計算單元,因此它們的計算能力都很強。在進行神經網路運算的時候,兩者的速度會比cpu快很多。但是gpu由於架構固定硬體原生支援的指令固定了,而fpga則是可程式設計的。
fpga的應用領域主要是深度學習和神經網路演算法,而傳統的cpu更關注的是「通用」,gpu雖然更注重計算速度,但是其指令仍然是固定的。而fpga的出現之所以風靡全球,就是因為其可程式設計性,這讓fpga在深度學習領域擁有了得天獨厚的優勢。這樣也就不奇怪谷歌為了發展深度學習,自己研發了名為tpu的自有晶元。正如谷歌資料中心負責人霍爾澤所言:谷歌研發自有晶元是為了解決哪些省為解決的問題。
有人認為,當市場需求發生變化,技術一定會隨之發展,當深度學習成為熱門領域時,與之最匹配的fpga也應聲成為廠商追逐的焦點。
幾種CPU架構
cpu架構 architecture 結構 架構,這個詞用於 cpu 的時候是指 cpu 接受和處理訊號的方式 及其內部元件的組織方式。cpu架構 從大的層面分兩類 cisc risc x86 cisc就是複雜指令集計算機,目前專指 x86 和 x86 64 兩類 其中 x86 又叫 ia32,即 ...
ARM架構 CPU的微架構
網上確實有說arm架構的,但是此架構泛指用arm指令系統的cpu,而不是cpu的微架構。硬體電路上,要用arm指令集系統,必然硬體設計電路上要要遵循,arm指令的特點和定址方式,所以說高通和蘋果的cpu是arm架構是可以的。但cpu的微架構就要複雜太多了,cpu微架構包括快取管理,快取設計,亂序執行...
CPU架構過程簡介
稍微寫一下cpu的發展過程,目的是為幫助理解現在的amd64架構,看懂linux或其它系統軟體的啟動彙編 一 8086 8088 16位暫存器 ax,bx,cx,dx,cs,ds,es,ss,bp,sp,ip flags,si,di 8位暫存器 ah,al,bh,bl,ch,cl,dh,cl 資料匯...