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