FPGA與嵌入式一點見解
FPGA:即現場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎上進一步發展的產物。它是作為專用集成電路(ASIC)領域中的一種半定製電路而出現的,既解決了定製電路的不足,又克服了原有可編程器件門電路數有限的缺點。
嵌入式系統(Embedded system),是一種「完全嵌入受控器件內部,為特定應用而設計的專用計算機系統」,根據英國電器工程師協會(U.K. Institution of Electrical Engineer)的定義,嵌入式系統為控制、監視或輔助設備、機器或用於工廠運作的設備。
下面以單片機為例介紹。
所以這兩個概念不是同一層次的。前一概念是指硬體實現,後者則是系統層面的東西了。
單片機(比如很火的stm32或者ARM)的硬體架構已經決定了,用戶通過編寫指令控制單片機順序執行任務。
FPGA可以看做許多邏輯門,用戶通過HDL將邏輯門組織成電路。所以從應用層次上來說,FPGA更接近硬體。比如,要算一個4位加法,如果用單片機,最多就一個ADD指令,具體怎麼實現你是管不了的;那麼在FPGA上你可以採用不同的電路來實現(並行OR串列),執行效率和資源佔用都可以精確到門級。
FPGA也可以作為嵌入式系統的計算核心。既然FPGA比單片機更接近硬體,那麼FPGA可以模擬出一個單片機應該也不會感到奇怪吧?這就是所謂的「軟核」。
所以單片機能做的FPGA也能做,FPGA能做的單片機不一定能做。
做FPGA構造的是硬體,單品機寫的是軟體。
版權所有權歸卿萃科技,轉載請註明出處。
作者:卿萃科技ALIFPGA


※USB2.0和USB3.0區別
※Stratix IV GX內嵌的SERDES(一)
TAG:卿萃科技FPGA |