使用可定制微控制器高效開(kāi)發(fā)系統級芯片 (SoC)
作者:愛(ài)特梅爾公司 (Atmel) 微控制器部傳訊經(jīng)理Peter Bishop
為了應對成本、尺寸、功耗和開(kāi)發(fā)時(shí)間的壓力,許多電子產(chǎn)品都建構于系統級芯片 (SoC)之上。這個(gè)單片集成電路集成了大多數的系統功能。然而,隨著(zhù)這些器件越來(lái)越復雜,要在有限的時(shí)間里經(jīng)濟地進(jìn)行產(chǎn)品開(kāi)發(fā)以滿(mǎn)足產(chǎn)品上市時(shí)間的壓力已變得越來(lái)越困難。SoC集成了一些可編程部件 (特別是微控制器),使得其軟件開(kāi)發(fā)與硬件開(kāi)發(fā)同樣的昂貴和耗時(shí)。
使用基于業(yè)界標準、帶有片上存儲器和各種標準接口的ARMò處理器,再加上面向特定應用邏輯和非標接口的金屬可編程模塊 (MP模塊),構成的可定制微控制器是切實(shí)可行的SoC開(kāi)發(fā)方法,能夠解決上述問(wèn)題:
-采用經(jīng)過(guò)驗證的軟/硬件模塊、較短的金屬布局布線(xiàn)的設計階段,以及并行的軟/硬件開(kāi)發(fā),再加上業(yè)界標準ARM架構所提供的廣泛支持,可以縮短設計時(shí)間。
-采用預先已經(jīng)準備好的基礎晶圓,僅針對定制部分添加金屬層,可以縮短器件生產(chǎn)制造的時(shí)間。
-最大限度地減少集成特定應用邏輯方面的設計耗費,并減少制備工藝中所需的光罩數,可以降低開(kāi)發(fā)成本。
-仿真板包括了處理器、內存、外設和標準接口,并用FPGA來(lái)代替MP模塊,實(shí)現了軟/硬件全速并行測試,提高了器件生產(chǎn)制造和軟件開(kāi)發(fā)的首次成功率。
可定制微控制器架構
圖1:基于A(yíng)RM9的可定制微控制器架構
如圖1所示,可定制微控制器的基礎為業(yè)界標準的ARM7或ARM9處理器內核,以及連接片上SRAM和ROM、外部總線(xiàn)接口和系統外設的多層AHB總線(xiàn)矩陣,并可橋接面向系統控制器和低速外設的高能效APB。該架構的一個(gè)主要特點(diǎn)是分布式DMA,這種DMA加上由AHB總線(xiàn)矩陣提供的并行數據通道,能為器件提供極高的內部數據帶寬。外設到內存的數據傳輸只需極少的處理器干預,使器件能支持多個(gè)高速內部接口而不會(huì )降低處理器的性能。器件中的MP模塊具有多個(gè)DMA端口,因此由其實(shí)現的專(zhuān)用IP也能受益于這種高速內部帶寬。
該架構具有齊備的標準外設和接口,能滿(mǎn)足大多數應用對用戶(hù)接口、聯(lián)網(wǎng)/連接和存儲的要求。此外,在MP模塊中還可以實(shí)現各種外設實(shí)例或其它外設/接口。
該架構實(shí)現了復雜的系統控制器,集成了所有的系統和功率管理功能,可以控制系統的啟動(dòng)和關(guān)閉。該控制器具有多個(gè)時(shí)鐘源和外設開(kāi)關(guān)控制線(xiàn),使每個(gè)功能構件都能以支持應用的最小時(shí)鐘頻率運行,也可在不需要時(shí)進(jìn)入閑置模式。因此能最大限度地降低器件的功耗。
金屬可編程模塊
圖2:金屬可編程模塊
如圖2所示,金屬可編程模塊 (MP模塊) 的門(mén)密度與實(shí)現器件固定功能部分的標準單元密度接近。MP模塊需要足夠的容量來(lái)實(shí)現第二個(gè)ARM處理器核、一個(gè)數字信號處理器 (DSP)、額外的接口以及復雜邏輯模塊,如GPS相關(guān)器。它還需要一些內部功能和專(zhuān)門(mén)的外部連接,以提高其實(shí)現特定應用邏輯的效率。MP模塊還需要多個(gè)分布式單端口及雙端口RAM,并與需要他們的邏輯單元緊密耦合。
可定制微控制器設計/制備流程
如圖3所示,可定制微控制器設計流程的目標是要在最短時(shí)間內,以合理的成本和極高的首次硅和軟件成功率,開(kāi)發(fā)面向特定應用的系統級芯片 (SoC),并包含軟件和硬件。
圖3:可定制微控制器設計流程
軟/硬件并行開(kāi)發(fā)。設計流程調整為適合軟/硬件并行開(kāi)發(fā),克服了系統級芯片開(kāi)發(fā)的主要障礙之一。
快速將面向特定應用的硬件集成在微控制器平臺上。面向特定應用的硬件以RTL語(yǔ)言設計;這些RTL模塊可以集成到已經(jīng)包含了AHB接口、DMA信道、I/O信道等單元的MP模塊代碼模板中。
面向特定應用的軟件/操作系統與接口/外設驅動(dòng)程序的快速集成。平臺上所有接口/外設均有驅動(dòng)程序。這些驅動(dòng)程序也可作為MP模塊中相同接口/外設的驅動(dòng)程序模板。已經(jīng)有很多業(yè)界領(lǐng)先的操作系統被移植到微控制器架構上。將這些軟件模塊與應用代碼模塊和用戶(hù)接口集成起來(lái)的工作可與硬件開(kāi)發(fā)一同進(jìn)行。
在物理設計/掩模光刻之前進(jìn)行軟/硬件實(shí)時(shí)仿真。仿真板利用一個(gè)標準芯片實(shí)現了MCU平臺,利用FPGA來(lái)模擬MP模塊。這樣就可以接近真實(shí)運行的速度仿真特定應用的硬件和底層軟件,且無(wú)需任何成本就可修正錯誤。
快速完成布線(xiàn)布局,只需針對金屬層。采用成熟的布局方案快速完成MP模塊的金屬層布線(xiàn)布局。
高效、低成本的掩模光刻。只需要對器件金屬層進(jìn)行掩模。
快速的生產(chǎn)制造過(guò)程,只需針對金屬層。各特定應用器件的光刻制備以預制的微控制器平臺為起點(diǎn),只需添加金屬層。
以FPGA為基礎的仿真板
圖4:可定制微控制器的仿真板架構
設計流程的一個(gè)關(guān)鍵步驟是在仿真板 (見(jiàn)圖4) 對硬件以及至少底層軟件進(jìn)行仿真。該仿真板包括完整的內存、標準接口和網(wǎng)絡(luò )連接,以及可按應用要求配置的其它附加連接。具體包括:
-器件固定功能部分用帶外接FPGA接口的單芯片來(lái)實(shí)現。
-使用高密度的FPGA仿真MP模塊,包括內嵌存儲器和外部I/O。
-采用FPGA配置存儲器為MP模塊保存編譯好的HDL代碼。
-外部總線(xiàn)接口 (EBI) 和FPGA的外接I/O連接到擴展板上不同類(lèi)型的內存,如SDRAM、移動(dòng)DDRAM、猝發(fā)Cellular RAM、NOR閃存、NAND閃存等。這些存儲器將加載應用軟件和應用數據集。
-所有標準接口 (CAN、USB、Ethernet、I2S、AC97、ADC、MCI等) 都通過(guò)收發(fā)器/物理層/編解碼協(xié)議層與外部連接,因此可以對器件的外部接口和聯(lián)網(wǎng)/通信鏈路進(jìn)行全方位的測試和調試。
-圖形用戶(hù)界面 (GUI) 的所有部件都連接到相應的板上器件或接口,比如LCD、鍵盤(pán)、觸摸屏接口等。這樣就可在板上完成GUI基本接口的測試。
-仿真板提供外部并行I/O (PIO) 和FPGA I/O,用于連接特定應用的外接器件,以及實(shí)現非標接口。剩余的FPGA I/O也可用于驗證。
-仿真板配有JTAG仿真器 (ICE) 端口;通過(guò)該端口可用帶有JTAG-to-USB的接口和標準開(kāi)發(fā)工具對ARM核及其外設進(jìn)行驗證。
-仿真板還配有FPGA JTAG端口;通過(guò)該端口可用FPGA廠(chǎng)家提供的工具對FPGA的內部信號進(jìn)行跟蹤和分析。
這種MCU/FPGA組合可以接近最終器件的工作頻率運行。這樣就能完成器件的即時(shí)性測試,包括平臺中的MCU和各種標準接口、MP模塊中實(shí)現的各種功能,以及到目前為止已開(kāi)發(fā)的所有軟件。這種測試至少涵蓋了如下測試對象:設備驅動(dòng)程序、操作系統端口,以及用于控制MP模塊各種功能的應用代碼模塊。而更改器件的軟/硬件單元無(wú)需任何額外成本。
結論
可定制微控制器是特定應用系統級芯片的高效開(kāi)發(fā)平臺。其設計流程能夠解決系統級芯片設計的大多數問(wèn)題,而且開(kāi)發(fā)成本較低、風(fēng)險較小,并能提高硬件制備和軟件開(kāi)發(fā)的首次成功率。而本文所描述的架構和設計流程由愛(ài)特梅爾的CAP 可定制微控制器系列所實(shí)現。
評論