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