新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于ARM的可定制MCU可替代FPGA

基于ARM的可定制MCU可替代FPGA

作者: 時間:2010-12-23 來源:網(wǎng)絡(luò) 收藏

  如今的產(chǎn)品生命周期可能短至六個月,因此在這種情況下要想取得定制ASIC的低成本、低功耗和高性能優(yōu)勢幾乎是不可能的。定制ASIC的設(shè)計周期通常要一年左右,這通常要比終端產(chǎn)品的生命周期還要長。另外,標(biāo)準(zhǔn)單元ASIC還具有NRE費用(非重復(fù)工程成本),對于基本的0.13微米設(shè)計,該成本約為30萬美元,而對于具有復(fù)雜IP內(nèi)容的90nm設(shè)計將超過100萬美元。因而當(dāng)每年的批量小于10萬片時,從經(jīng)濟角度看就不具有可行性。

  為此人們研發(fā)出了平臺化或結(jié)構(gòu)化ASIC,它們具有預(yù)設(shè)計的IP塊和可編程的ASIC門,可顯著降低成本并縮短設(shè)計周期。這種方案將設(shè)計周期從一年甚至更長的時間縮短到幾個月,還將NRE成本降低到大約15萬美元,不過與門陣列相關(guān)的較大尺寸使得單片成本過高而無法補償NRE。

  利用現(xiàn)成的標(biāo)準(zhǔn)微來實現(xiàn)設(shè)計通常會較快且具有較高的成本效益,許多微都是系統(tǒng)級芯片(SoC),能夠提供大量的網(wǎng)絡(luò)功能和人機接口功能,例如LCD和相機接口。這些現(xiàn)成的SoC常常具有所有功能,性能高且成本低,采用基于單元的ASIC即可實現(xiàn)。但是, 需要硬件加速的一些設(shè)計中要求一些高強度運算的功能,如Turbo編碼、GPS環(huán)形解調(diào)器和圖形處理等,它們都需要用硬件實現(xiàn)。未來發(fā)展趨勢是利用來實現(xiàn)這些DSP功能。由于工藝技術(shù)的進步,這種設(shè)計的成本將明顯降低,而且?guī)缀跤型耆〈脚_ASIC。

  不過,也有一些缺點,最顯著的是功耗高,執(zhí)行速度慢,中IP的安全性也相對較差。盡管其成本下降很快,但當(dāng)批量達到1萬片時,其批量成本就不再下降了。因此FPGA還比較貴。

  目前有種新的ASIC技術(shù),它采用一種金屬-可編程的單元結(jié)構(gòu)(MPCF),所實現(xiàn)的硅片效率與單元ASIC相當(dāng)(在130nm工藝上為170K-210K門/mm2)。例如,在130nm工藝節(jié)點,利用MCPF實現(xiàn)一個D觸發(fā)器(DFF)所用的硅片面積與標(biāo)準(zhǔn)單元相比幾乎相同(圖1:用130nm MPCF和130nm 標(biāo)準(zhǔn)單元實現(xiàn)的D觸發(fā)器)。

  目前正在利用開發(fā)可定制的微控制器,它不僅具有單元ASIC的超低單片成本優(yōu)勢,還具備結(jié)構(gòu)化ASIC的低NRE和不到兩個月設(shè)計周轉(zhuǎn)期的優(yōu)點?;旧希哂蠸oC級集成度的現(xiàn)有MCU結(jié)合金屬化可編程單元結(jié)構(gòu)就可用來實現(xiàn)可定制的SoC平臺。

  作為這種可定制微處理器的一個例子,它采用了基于200 MHz 926EJ-S的現(xiàn)有MCU,帶有用于確定性處理且均為16 Kbytes的緊耦合程序和數(shù)據(jù)高速緩存,32 Kbytes的附加SRAM,32 Kbytes的ROM以及支持網(wǎng)絡(luò)、數(shù)據(jù)傳輸、人機接口的外設(shè),并增加了一個等效于28K 或 56K FPGA LUTs (250K 或 500K 可布線 ASIC門)的金屬化可編程塊(MP)。(圖2- AT91CAP9方框圖)。器件上已有的外設(shè)包括USB 主機和器件、10/100 以太網(wǎng)MAC、LCD控制器、用于連接CAN、MCI和SPI總線的圖像傳感接口。

  

基于ARM的可定制MCU可替代FPGA

圖1:用130nm MPCF和130nm 標(biāo)準(zhǔn)單元實現(xiàn)的D觸發(fā)器。

圖2: AT91CAP9框圖。

  用實現(xiàn)的MP塊大得足以實現(xiàn)一個二級處理器核、一個數(shù)字信號處理(DSP)、一些額外的標(biāo)準(zhǔn)(或非標(biāo)準(zhǔn))的接口以及其他的復(fù)雜邏輯塊,如GPS環(huán)形解調(diào)器。它具有眾多固有功能和專用的外部連接,可以提高特殊應(yīng)用邏輯單元的實現(xiàn)效率。它內(nèi)部含有多個分布式的單口和雙口RAM塊,能夠與需要它們的邏輯單元實現(xiàn)緊耦合。MP塊的時鐘可以來自時鐘發(fā)生器和電源管理控制器的所有時鐘。這為其內(nèi)部所實現(xiàn)的特殊應(yīng)用邏輯單元的定時提供了最大的靈活性。

  所有外設(shè)都實現(xiàn)了DMA進行外設(shè)和存儲器之間的數(shù)據(jù)傳輸。否則,外設(shè)和存儲器之間的數(shù)據(jù)傳送將耗盡9的資源。例如,一個20Mbps的高速SPI數(shù)據(jù)傳送將需要占用ARM的所有周期。簡單的DMA在每臺外設(shè)的芯片上實現(xiàn),并由一個卸載數(shù)據(jù)傳送任務(wù)的DMA控制器來管理,這樣,在進行20Mbps SPI傳輸?shù)耐瑫r,還能留出88%的ARM9周期用于程序處理(圖2)。此外,還有一個四通道DMA控制器負(fù)責(zé)以太網(wǎng)MAC、LCD控制器和相機接口。

  一個具有六主和六從的六層高級高速總線(AHB)矩陣可以徹底消除總線競爭。六主分別是CPU數(shù)據(jù)、CPU指令、外設(shè)DMA控制器、以太網(wǎng)和USB主機。而六從則是存儲器、USB器件以及外設(shè)總線橋。任何一個主在需要時都可以控制任何可用的總線。正因為總線數(shù)量與主一樣的多,因此根本不會出現(xiàn)任何總線競爭。

  MP塊的外部連接包括到AHB總線矩陣的多路主連接和從連接、在MP塊中實現(xiàn)的用于外設(shè)的一組中斷線、一組外設(shè)使能線、兩套并行的專用I/O口和一個到USB接收器的復(fù)用連接。這樣,就可以在MP塊里實現(xiàn)第二個USB設(shè)備。

  該芯片包括一個SD/MMC存儲卡接口(MCI)和一個外部總線接口(EBI),這些接口支持SDRAM、帶誤碼糾錯(ECC)功能的NAND閃存以及支持可與板上GByte-plus的True IDE模式接口連接的CompactFlash,或者包括USB記憶棒的可移動存儲器。

  一個完整集成的系統(tǒng)控制器可管理設(shè)備的中斷處理、復(fù)位、啟動/關(guān)機、定時、電源管理和并行I/O控制,因而支持實時操作。

  金屬可編程塊

  金屬可編程塊具有眾多的內(nèi)部功能和專門的外部連接,可提高特殊應(yīng)用邏輯單元的實現(xiàn)效率。在內(nèi)部,它含有多個與需要它們的邏輯單元緊耦合的單端/雙端口RAM塊(圖3:金屬可編程塊接口)。

  

圖3:金屬可編程塊接口。

  MP的外部連接包括:

  1. 連接到AHB總線矩陣的多路并行主連接和從連接。它們與專用的DMA通道一起,可以經(jīng)配置產(chǎn)生連接到特殊應(yīng)用邏輯單元的高帶寬數(shù)據(jù)鏈路。如果在MP塊中需要APB外設(shè),可以在內(nèi)部構(gòu)建一個AHB/APB橋和外設(shè)DMA控制器(PDC),以便提供所需的接口;

  2. 一組中斷線。該中斷線使特殊應(yīng)用邏輯單元產(chǎn)生由高級中斷控制器處理的中斷;

  3. 一組外設(shè)使能線。它允許特殊應(yīng)用邏輯單元在設(shè)備的固定端口中連接或斷開外設(shè);

  4. 兩組并行的專用I/O口。它們提供大量用于特殊應(yīng)用邏輯單元的外部I/O,也能提供連接到MP塊的I/O的電氣特性;

  5. 一個到USB接收器的復(fù)用連接。這使得在MP塊中可以實現(xiàn)第二個USB器件。

  MP塊的時鐘可以來自時鐘發(fā)生器和電源管理控制器的所有時鐘。這為其內(nèi)部實現(xiàn)的特殊應(yīng)用邏輯單元的定時提供了最大的靈活性。

  設(shè)計流程

  基于MPCF的可定制微控制器的設(shè)計流程與采用現(xiàn)成ARM9 MCU和FPGA的設(shè)計流程非常類似。實際上,為了試探市場,MCU+FPGA設(shè)計可能進行批量制造。一旦證明成功,整個設(shè)計流程就可以直接移植到可定制的微控制器上。

  FPGA寄存器傳輸級(RTL)網(wǎng)表可以被直接移植到已經(jīng)包含AHB接口、DMA通道以及I/O通道的MP功能塊上。

  平臺中的所有外設(shè)/接口都提供了設(shè)備驅(qū)動程序。它們也可以作為模板用作MP功能塊中定義的外設(shè)/接口的等效驅(qū)動程序。

  業(yè)界領(lǐng)先的操作系統(tǒng)都已經(jīng)具有到可定制微處理器架構(gòu)的端口。這些軟件模塊與應(yīng)用代碼模塊和用戶接口的集成可以與硬件開發(fā)并行進行。

  系統(tǒng)規(guī)范和硬件/軟件劃分

  可定制MCU設(shè)計流程的一個主要優(yōu)點是可以在硬件生產(chǎn)之前的仿真階段中對硬件/軟件進行驗證,如果需要的話還可以加以修正。這樣可以節(jié)省時間和重新流片的昂貴費用。

  定制MP功能塊的工作通常由客戶和合格的第三方設(shè)計公司共同完成。第一階段主要是開發(fā)特殊應(yīng)用的硬件塊和相關(guān)的軟件驅(qū)動程序。在絕大多數(shù)情況下,硬件塊編碼用的是Verilog RTL ,而軟件開發(fā)用的是C、 C++ 或ARM匯編語言。

  已經(jīng)寫入由MCU供應(yīng)商提供并針對MP Block RTL代碼開發(fā)的模板中的功能塊的占位符(placeholder)實例化可以簡化將特殊應(yīng)用功能塊集成到MP功能塊中去的工作。為AHB主/從設(shè)備和APB從設(shè)備提供有不同的模板。在某些功能塊中,DMA或PDC連接是預(yù)先編程好的。例如,一個帶有PDC連接的APB連接功能的HDL如下所示:

  需要驗證MP功能塊的RTL代碼與微控制器的固定端口之間的兼容性。然后再利用供應(yīng)商提供的特殊工藝目標(biāo)庫對RTL代碼進行綜合,并對整個器件執(zhí)行功能仿真。

  平臺的低級設(shè)備驅(qū)動程序由MCU產(chǎn)商提供,而MP功能塊的驅(qū)動程序則來自用戶或者第三方設(shè)計公司。這些驅(qū)動程序再與編程MCU和外設(shè)/接口的應(yīng)用模塊集成在一起。如果需要操作系統(tǒng),可以從有資質(zhì)的第三方獲得pre-ported版本并集成進軟件包中。軟件包還需要利用業(yè)界標(biāo)準(zhǔn)的開發(fā)工具進行測試。當(dāng)然也可以在該階段進行硬件/軟件的協(xié)同仿真。

  仿真

  設(shè)計流程的關(guān)鍵步驟是硬件和至少低層軟件的仿真。AT91CAP仿真板包括一個完全互補的存儲器、標(biāo)準(zhǔn)接口、網(wǎng)絡(luò)和可配置連接(圖4:AT91CAP仿真板)。

  

基于ARM的可定制MCU可承擔(dān)FPGA的工作

圖4:AT91CAP仿真板。

  實際經(jīng)驗證明,這種仿真步驟幾乎總能發(fā)現(xiàn)設(shè)備的硬件和/或軟件、或者設(shè)備硬件/軟件接口中的各種錯誤。在這一階段對設(shè)備完整設(shè)計的校正和再測試能力是縮短設(shè)計時間和降低設(shè)計成本的主要因素,它能提高首次流片和軟件開發(fā)成功的概率。額外的好處是最終設(shè)計的仿真版本可以用作未來設(shè)計反復(fù)的起點,從而大大節(jié)省設(shè)計工作量。

  可定制MCU供應(yīng)商利用針對設(shè)備和MP塊的固定端口確立的底層規(guī)劃實施布局和布線。只需要對MP塊的金屬層進行布局布線。后版圖仿真可以確保不違反時序約束。

  該方案的優(yōu)點之一是設(shè)計團隊無需等待設(shè)計原型就能完成軟件開發(fā)。應(yīng)用軟件的開發(fā)和測試可以和布局布線與原型制造同時進行。一旦設(shè)備和軟件在目標(biāo)應(yīng)用中得到驗證,客戶就可以基于滾動預(yù)測正式地批準(zhǔn)產(chǎn)品的批量生產(chǎn)。因為掌握著空白晶圓的庫存,因此可以根據(jù)市場的需求隨時調(diào)整實際產(chǎn)量。

  當(dāng)設(shè)備的批量需求滿足投資需求時,網(wǎng)表可以被重新映射到完全標(biāo)準(zhǔn)單元的設(shè)計,帶來的優(yōu)點是減小裸片尺寸,提高性能并降低功耗。

  沒有ASIC NRE和設(shè)計周期的ASIC性價比

  具有金屬可編程單元結(jié)構(gòu)的可定制微控制器可以幫助設(shè)計師將他們的定制IP集成到準(zhǔn)現(xiàn)成的解決方案中。它能提供全定制ASIC的成本、功耗和性能優(yōu)勢,而NRE和設(shè)計周期與現(xiàn)成的MCU+FPGA設(shè)計沒有太多的區(qū)別。



關(guān)鍵詞: ARM FPGA MPCF技術(shù) 控制器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉