MCU是Microcontroller的縮寫(xiě),中文翻譯是微控制器,可以簡(jiǎn)單理解為集成在單一芯片上的微型計(jì)算機(jī),它有運(yùn)算器、控制器、存儲(chǔ)器、總線及其他外設(shè),采用存儲(chǔ)程序執(zhí)行的方式,對(duì)MCU的編程就是對(duì)其中的ROM寫(xiě)入程序,系統(tǒng)上電后ROM中的程序會(huì)像計(jì)算機(jī)內(nèi)存中的程序一樣得到逐條地執(zhí)行。MCU相當(dāng)于一個(gè)微型的計(jì)算機(jī)芯片,因此,也有地方把MCU稱為單片機(jī)。MCU用途比較廣,幾乎所有電子產(chǎn)品都可以找到MCU的身影。
FPGA是Field Programmable Gate Array的縮寫(xiě),中文翻譯為現(xiàn)場(chǎng)可編程門(mén)陣列,它是在硅片上預(yù)先設(shè)計(jì)實(shí)現(xiàn)的具有可編程特性的集成電路,它能夠按照設(shè)計(jì)人員的需求配置為指定的電路結(jié)構(gòu),讓客戶不必依賴由芯片制造商設(shè)計(jì)和制造的 ASIC 芯片。廣泛應(yīng)用在ASIC原型驗(yàn)證、網(wǎng)絡(luò)通信、汽車(chē)電子、工業(yè)控制、航空航天、視頻監(jiān)控、數(shù)據(jù)中心等領(lǐng)域。
從以上描述來(lái)看,MCU和FPGA兩者之間的差異還是很大的。
1、結(jié)構(gòu)上的區(qū)別
MCU是一種微處理器,類(lèi)似于電腦CPU,通常采用哈佛總線結(jié)構(gòu),或者馮諾依曼結(jié)構(gòu),對(duì)單片機(jī)的編程很大程度上要考慮到它的內(nèi)核架構(gòu)(比如ARM內(nèi)核)和各個(gè)寄存器的作用。FPGA的結(jié)構(gòu)是基于查找表(LUT)的結(jié)構(gòu),LUT本質(zhì)上就是一個(gè)RAM,F(xiàn)PGA中多使用4輸入的LUT,所以每一個(gè)LUT可以看成一個(gè)有4位地址線的RAM。當(dāng)用戶通過(guò)原理圖或HDL語(yǔ)言描述了一個(gè)邏輯電路以后,F(xiàn)PGA開(kāi)發(fā)EDA軟件會(huì)自動(dòng)計(jì)算邏輯電路的所有可能結(jié)果,并把真值表(即結(jié)果)事先寫(xiě)入RAM,這樣,每輸入一個(gè)信號(hào)進(jìn)行邏輯運(yùn)算就等于輸入一個(gè)地址進(jìn)行查表,找出地址對(duì)應(yīng)的內(nèi)容,然后輸出即可。FPGA可以看作是純粹的數(shù)字電路,其程序不用考慮芯片的結(jié)構(gòu),自由度非常大。
2、代碼的執(zhí)行方式上的區(qū)別
MCU無(wú)論是哈佛總線結(jié)構(gòu)或者馮諾依曼結(jié)構(gòu)均為取指到執(zhí)行,指令是順序執(zhí)行的(即使是中斷/異常,其發(fā)生后的中斷服務(wù)程序也是順序執(zhí)行的);而FPGA是基于邏輯門(mén)和觸發(fā)器的,它是并行執(zhí)行方式,沒(méi)有取指到執(zhí)行這種操作。簡(jiǎn)單來(lái)說(shuō),就是通過(guò)燒寫(xiě)文件去配置查找表的內(nèi)容,從而在相同的電路情況下實(shí)現(xiàn)了不同的邏輯功能,數(shù)字電路中所有邏輯門(mén)和觸發(fā)器均可以實(shí)現(xiàn),它適合真正意義上的并行任務(wù)處理。FPGA程序在編譯后實(shí)際上是轉(zhuǎn)換為內(nèi)部的連線表,相當(dāng)于FPGA內(nèi)部提供了大量的與非門(mén)、或非門(mén)、觸發(fā)器等基本數(shù)字邏輯器件,編程決定了有多少器件被使用以及它們之間的連接方式。通過(guò)編程,用戶可對(duì)FPGA內(nèi)部的邏輯模塊和I/O模塊重新配置,以實(shí)現(xiàn)用戶的邏輯。它還具有靜態(tài)可重復(fù)編程和動(dòng)態(tài)在系統(tǒng)重新配置的特性,使得硬件的功能可以像軟件一樣通過(guò)編程來(lái)修改。只要FPGA規(guī)模夠大,這些數(shù)字器件理論上能形成一切數(shù)字系統(tǒng),包括MCU,甚至CPU。因FPGA是純數(shù)字電路,在抗干擾和速度性能上有很大優(yōu)勢(shì)。
既然MCU和FPGA有如此大的差異,那么有沒(méi)有一些應(yīng)用需要同時(shí)使用到MCU和FPGA呢?答案是肯定的。比如,有的應(yīng)用同時(shí)需要有靈活的控制和外設(shè)接口(比如USB接口等),同時(shí)需要支持高速并行運(yùn)算,如FFT等,那么就要考慮使用MCU+FPGA的系統(tǒng)架構(gòu),F(xiàn)PGA適合并行處理,性能可以比同樣主頻的MCU高出上百倍,一般MCU+FPGA異構(gòu)架構(gòu)都是把密集運(yùn)算交FPGA,而MCU處理邏輯復(fù)雜的業(yè)務(wù)。這種MCU+FPGA系統(tǒng)往往要求開(kāi)發(fā)人員不僅要熟悉MCU軟硬件開(kāi)發(fā),也需要熟悉FPGA的程序設(shè)計(jì),更為關(guān)鍵的是能夠設(shè)計(jì)MCU與FPGA之間的數(shù)據(jù)交互模式,常見(jiàn)方式有并行總線方式,實(shí)現(xiàn)MCU與FPGA之間的通信,或者通過(guò)MCU對(duì)FPGA在線進(jìn)行配置。典型的MCU+FPGA系統(tǒng)的產(chǎn)品案例,如下圖1:
圖1 MCU+FPGA架構(gòu)的產(chǎn)品案例
針對(duì)上述這樣的產(chǎn)品應(yīng)用中同時(shí)需要使用MCU和FPGA的情形,今天就來(lái)詳細(xì)介紹我們的主角,它就是來(lái)自國(guó)產(chǎn)半導(dǎo)體廠商安路科技“小而美”的MCU+FPGA Soc – ELF2系列。ELF2內(nèi)部包含了FPGA資源,并且內(nèi)嵌了一個(gè)ARM Cortex-M3硬核IP及豐富的外設(shè)資源。
FPGA資源包含LUT4/5混合邏輯架構(gòu),分布式RAM支持,16路全局時(shí)鐘,最大達(dá)670Kbits BRAM,15個(gè)18*18 DSP,LUT規(guī)模高達(dá)4480。如下圖2:
圖2 ELF2 Soc FPGA基本特性
Cortex-M3 MCU內(nèi)核最高主頻125MHz,4Mbit SPI Flash,48KB片上SRAM,QSPI接口支持內(nèi)置/外置SPI Flash操作,集成Timer,WDT,DMA,UART,SPI,I2C,ADC,RTC等外設(shè)。MCU特性如下:
ELF2M45 Soc資源及其封裝:
安路科技ELF2 Soc系統(tǒng)框圖,如下圖3:
圖3 ELF2 Soc系統(tǒng)框圖
根據(jù)LUT規(guī)模大小和RAM資源大小不同,ELF2系列有不同的型號(hào),ELF2 Soc選型表如下表1所示:
表1 ELF2 Soc選型表
ELF2的封裝形式也很豐富,一顆芯片可以實(shí)現(xiàn)由MCU和FPGA兩顆芯片實(shí)現(xiàn)的功能,大大簡(jiǎn)化了系統(tǒng)設(shè)計(jì),還節(jié)省了PCB面積。EFL2封裝形式如下表2所示:
表2 ELF2的封裝形式
ELF2 Soc內(nèi)部的MCU與FPGA有4種數(shù)據(jù)交互方式,用戶可以靈活選擇其中任何一種,如下圖4所示:
1、 AHB Slave
2、 共享SRAM(SRAM:32KByte)
3、 高16個(gè)GPIO
4、 16位用戶寄存器(MCU->FPGA)
圖4 ELF2 Soc MCU與FPGA交互方式
ELF2 Soc軟件開(kāi)發(fā)需要同時(shí)使用到安路科技自主開(kāi)發(fā)的TD EDA軟件和ARM公司的Keil MDK軟件,安路科技提供大量的Demo演示示例程序供客戶參考和學(xué)習(xí)。ELF2 Soc軟件開(kāi)發(fā)流程如下圖5所示:
圖5 ELF2 Soc軟件開(kāi)發(fā)流程
TD EDA軟件和ARM的Keil MDK軟件界面如下圖6所示:
圖6 TD EDA軟件和ARM的Keil MDK軟件界面
為了方便用戶評(píng)估和學(xué)習(xí),針對(duì)ELF2 Soc系列,安路科技特別推出了專用的開(kāi)發(fā)板,如下圖7所示:
圖7 ELF2 Soc開(kāi)發(fā)板
最后,我想談?wù)勱P(guān)于國(guó)產(chǎn)FPGA替代的觀點(diǎn)。
全球 FPGA 市場(chǎng)在 5G 和 AI 兩大驅(qū)動(dòng)因子下未來(lái)預(yù)計(jì)享有穩(wěn)健增長(zhǎng),而目前國(guó)內(nèi) 100 億人民幣市場(chǎng)中,國(guó)產(chǎn)廠商占比僅 4%,國(guó)產(chǎn)率極低,市場(chǎng)空間和潛力巨大;疊加中美貿(mào)易戰(zhàn)的因素,終端制造業(yè)特別是各個(gè)行業(yè)的頭部客戶正在尋求國(guó)產(chǎn)替代,避免全盤(pán)使用美國(guó)公司生產(chǎn)的芯片,國(guó)產(chǎn)替代進(jìn)程有明顯加速的趨勢(shì)。FPGA行業(yè)技術(shù)門(mén)檻較高,產(chǎn)業(yè)比較集中,國(guó)產(chǎn)廠商替代增速有望顯著高于行業(yè)平均。國(guó)外三大FPGA廠家分別是Xilinx,Intel(收購(gòu)原Altera)及Lattice,國(guó)內(nèi) FPGA 廠商主要有 8 家:安路科技、紫光同創(chuàng)、國(guó)微電子、成都華微電子、智多晶、廣州高云半導(dǎo)體、上海復(fù)旦微電子和京微齊力。國(guó)產(chǎn)FPGA廠商中,安路科技的FPGA產(chǎn)品有三大系列,分別是高端PHOENIX(鳳凰系列)、中端EAGLE(獵鷹系列)和低端ELF(精靈系列),數(shù)十款芯片。產(chǎn)品在核心架構(gòu)、軟件算法和系統(tǒng)集成等方面擁有多項(xiàng)技術(shù)專利。值得一提的是,在EDA軟件能力方面,國(guó)內(nèi)FPGA廠商目前只有兩家具有商用軟件全流程技術(shù),安路科技就是其中一家,自主開(kāi)發(fā)的全流程TD軟件系統(tǒng)和硬件芯片完美地結(jié)合在一起,提供了用戶從前端綜合到位流生成的完全開(kāi)發(fā)平臺(tái),而其他廠商都需要外購(gòu)邏輯綜合工具。安路科技FPGA芯片已經(jīng)成功應(yīng)用到通信設(shè)備、工業(yè)控制、消費(fèi)電子的部分領(lǐng)域。安路科技是國(guó)產(chǎn)FPGA廠商中綜合實(shí)力最強(qiáng),最具競(jìng)爭(zhēng)力的品牌之一,有望在國(guó)產(chǎn)FPGA替代及新市場(chǎng)開(kāi)拓中繼續(xù)獲得越來(lái)越大的市場(chǎng)份額和高速的業(yè)績(jī)?cè)鲩L(zhǎng)。
由此可見(jiàn),國(guó)產(chǎn)替代疊加行業(yè)增長(zhǎng)及中美貿(mào)易戰(zhàn)等因素,國(guó)產(chǎn)FPGA廠商將進(jìn)入增長(zhǎng)快車(chē)道。潤(rùn)欣科技作為安路科技的合作伙伴,如您有產(chǎn)品應(yīng)用需要用到FPGA,不限于MCU+FPGA異構(gòu)架構(gòu)的產(chǎn)品,都可以與我們潤(rùn)欣科技取得聯(lián)系,我們將竭誠(chéng)為您服務(wù),協(xié)助您加速產(chǎn)品上市時(shí)間,提升產(chǎn)品性價(jià)比。
-
FPGA設(shè)計(jì)
+關(guān)注
關(guān)注
9文章
428瀏覽量
26562 -
MCU方案
+關(guān)注
關(guān)注
0文章
21瀏覽量
9551
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論