FPGA和單片機(ji)的區別有哪些
時間:2018-08-16 來源:未知
很多人不清楚FPGA和單片機的區別有哪些,這里小編整理了一下,從幾個角度對FPGA和單片機的區別進(jin)行說明(ming),希(xi)望對(dui)大家有所幫助。

FPGA和單片機在概念上的區別
單片機(ji)是(shi)什么(me)?單片(pian)(pian)機可以簡單理解(jie)為集成在單一(yi)芯片(pian)(pian)上的(de)(de)(de)微型計(ji)算機,也有(you)運算器(qi)、控制器(qi)、存儲(chu)器(qi)、總線及輸(shu)入輸(shu)出設備(bei),采用也是存儲(chu)程序(xu)(xu)執行的(de)(de)(de)方(fang)式,對單片(pian)(pian)機的(de)(de)(de)編(bian)程就是對其中(zhong)的(de)(de)(de)ROM寫入程序(xu)(xu),在加電(dian)后(hou)ROM中(zhong)的(de)(de)(de)程序(xu)(xu)會像(xiang)計(ji)算機內存中(zhong)的(de)(de)(de)程序(xu)(xu)一(yi)樣得(de)到(dao)逐(zhu)條的(de)(de)(de)執行。
單(dan)片機(ji)有很強的接口性能,非(fei)常適合(he)于(yu)工(gong)業控(kong)制,因此(ci)又叫微(wei)控(kong)制器(MCU) 。
FPGA是什么?FPGA則是操(cao)控層次更(geng)低,所以(yi)(yi)自由(you)度更(geng)大(da)的芯(xin)片,對FPGA的編(bian)程(cheng)在(zai)編(bian)譯后是轉化為FPGA內的連線(xian)表,相(xiang)當于FPGA內提供了(le)大(da)量的與(yu)非(fei)(fei)門(men)、或非(fei)(fei)門(men)、觸發器(qi)(可(ke)以(yi)(yi)用(yong)與(yu)非(fei)(fei)門(men)形成(cheng)吧)等(deng)基本數字器(qi)件,編(bian)程(cheng)決定了(le)有多少器(qi)件被使(shi)用(yong)以(yi)(yi)及它們之間的連接。只要FPGA規模夠(gou)大(da),這(zhe)些數字器(qi)件理論上能(neng)形成(cheng)一切數字系統,包括單片機甚至CPU。
FPGA是作為專(zhuan)用集成電路(ASIC)領(ling)域中的(de)(de)一種半定(ding)制電路而(er)出現的(de)(de),既解決了(le)定(ding)制電路的(de)(de)不足,又克服了(le)原有可編程器件(jian)門電路數有限的(de)(de)缺點。
FPGA和單片機在結構上的區別
單(dan)片機(ji)是一(yi)(yi)種微(wei)處(chu)理器(qi),類似于(yu)電腦(nao)CPU的(de)(de),它一(yi)(yi)般采用的(de)(de)是哈(ha)佛總線(xian)結構(gou),或者(zhe)馮(feng)諾依曼結構(gou),對單(dan)片機(ji)的(de)(de)編(bian)程(cheng)很大程(cheng)度上要考慮到它的(de)(de)結構(gou)和各個寄存器(qi)的(de)(de)作用,單(dan)片機(ji)用途(tu)比較廣,一(yi)(yi)般用在控制流水線(xian)上,還(huan)有日 常你(ni)看得到的(de)(de)東西上!
FPGA 它(ta)的(de)(de)(de)(de)結構(gou)是(shi)查找(zhao)表結構(gou),其程序不用去(qu)太(tai)考慮(lv)芯(xin)片的(de)(de)(de)(de)結構(gou),要注意的(de)(de)(de)(de)是(shi)時序上(shang)問題,它(ta)的(de)(de)(de)(de)結構(gou)比較復雜,功能也很(hen)強大,一般應用在(zai)通信領域等比較高端的(de)(de)(de)(de)場(chang)合,目(mu)前在(zai)FPGA還算是(shi)一個(ge)新(xin)興的(de)(de)(de)(de)行業(ye),當然它(ta)的(de)(de)(de)(de)價格也要比單片機貴(gui)得多!
單片(pian)(pian)機是(shi)一個微控(kong)制(zhi)器,通(tong)過加載(zai)模(mo)塊(kuai)軟件來(lai)實(shi)現某種功能,單片(pian)(pian)機是(shi)成(cheng)型(xing)的(de)芯(xin)(xin)片(pian)(pian);FPGA是(shi)用來(lai)設計芯(xin)(xin)片(pian)(pian)的(de)芯(xin)(xin)片(pian)(pian)。
FPGA和單片機速度上的區別
FPGA由于(yu)是(shi)硬件電路,運行速度直(zhi)接(jie)取決于(yu)晶(jing)振速度,系統穩定,特別適合高速接(jie)口電路。單(dan)(dan)片機(ji)由于(yu)是(shi)單(dan)(dan)線(xian)程(cheng),哪怕是(shi)常用的(de)M3系列(lie)流(liu)水線(xian)也是(shi)單(dan)(dan)線(xian)程(cheng)執行,程(cheng)序語句(ju)需(xu)要等待單(dan)(dan)片機(ji)周期(qi)才能執行。
單片機和FPGA的本質區別
FPGA和單(dan)片機(ji)的區(qu)別,本質上是軟件(jian)和硬件(jian)的區(qu)別,FPGA更偏向于(yu)硬件(jian)電路,而單(dan)片機(ji)更偏于(yu)軟件(jian)。
單(dan)片機設(she)計屬(shu)軟(ruan)件(jian)范疇;它的硬件(jian)(單(dan)片機芯片)是固定的,通過軟(ruan)件(jian)編程語言(yan)描述軟(ruan)件(jian)指令在硬件(jian)芯片上(shang)的執行;
FPGA設計屬(shu)硬(ying)件范疇,它的硬(ying)件(FPGA)是可編(bian)程(cheng)的,是一個(ge)通過硬(ying)件描述語言在FPGA芯片上自定義集成電路的過程(cheng);
FPGA和單片機的入門難易程度
單片機比FPGA簡(jian)單些(xie),價格也低一些(xie)。要做PID算法控制的用單片機可以,STM32F4系列已經到300M+跑PID完全(quan)足夠,如果是跑嵌入式的話可以上ARM芯片。涉及(ji)通信(xin)、圖(tu)像等高速部分可以采(cai)用單FPGA模塊。

