基于IP設(shè)計(jì)的8位SoC微微器ET44M210
關(guān)鍵詞:IP SoC ET44M210芯片設(shè)計(jì) 可重用程序設(shè)計(jì)
1 概述
當(dāng)前,使用8位單片機(jī)作為控制核心的應(yīng)用仍然是主流。主要原因是,有相當(dāng)數(shù)量的應(yīng)用項(xiàng)目只需要使用8位單片機(jī)就完全能滿足技術(shù)要求。8位單片機(jī)的低成本、易開(kāi)發(fā)、技術(shù)資源豐富等優(yōu)點(diǎn),使得其它高位單片機(jī)無(wú)法與其匹配,因此,無(wú)論是芯片制造商還是系統(tǒng)應(yīng)用開(kāi)發(fā)人員,對(duì)8位單片機(jī)的現(xiàn)狀和發(fā)展都給予了極大的關(guān)注。
8位嵌入式微處理器發(fā)展的一個(gè)重要特點(diǎn)是片上系統(tǒng)SoC(System on Chip)化。SoC化的技術(shù)含義就是在一個(gè)芯片上廣泛使用知識(shí)產(chǎn)權(quán)IP(Intellectual Property),從而加速了嵌入式系統(tǒng)的研制和開(kāi)發(fā)過(guò)程。從設(shè)計(jì)上來(lái)說(shuō),SoC是一個(gè)通用設(shè)計(jì)復(fù)用達(dá)到高生產(chǎn)率的軟、硬件協(xié)同設(shè)計(jì);從方法學(xué)的角度來(lái)說(shuō),SoC在開(kāi)發(fā)工具和程序設(shè)計(jì)方面作了許多突出的改進(jìn),例如IP核可重用設(shè)計(jì)、規(guī)范化的接口及測(cè)試方法、內(nèi)置嵌入式操作系統(tǒng)等。這些改進(jìn)為8位嵌入式微處理器的深入應(yīng)用開(kāi)辟了更為廣泛的前景。綜合有關(guān)文獻(xiàn),8位嵌入式微處理器研制技術(shù)的發(fā)展特點(diǎn)如圖1所示。
SoC嵌入式系統(tǒng)從真正意義上實(shí)現(xiàn)了所謂“片上系統(tǒng)”,即芯片級(jí)的系統(tǒng)應(yīng)用。一個(gè)嵌入式微處理器芯片可以包含若干個(gè)知識(shí)產(chǎn)權(quán)IP模塊,用戶可以根據(jù)需求選用某種型號(hào)的芯片或向制造廠商定制。長(zhǎng)期以來(lái),嵌入式系統(tǒng)的軟件開(kāi)發(fā)一直落后于硬件技術(shù)的發(fā)展,是阻撓嵌入式系統(tǒng)快速發(fā)展的一個(gè)“瓶頸”。解決這一問(wèn)題的重要途徑就是使用“可重用”的IP模塊程序IPP(Intellectual Property Program),它可以極大地加速軟件的開(kāi)發(fā)過(guò)程。這一方法有望可以使得嵌入系統(tǒng)應(yīng)用程序的開(kāi)發(fā)變得簡(jiǎn)單、方便和快捷。
繼JTAG接口之后,一種使用USB接口的“仿真+實(shí)驗(yàn)模板”實(shí)現(xiàn)全仿真的開(kāi)發(fā)方式,引起業(yè)界的越大關(guān)注。使用這種開(kāi)發(fā)工具,只需要花費(fèi)幾百元錢(qián)就可以得到全功能的仿真操作和程序代碼寫(xiě)入工具。這種廉價(jià)而又高質(zhì)量的開(kāi)發(fā)方式,無(wú)疑將對(duì)嵌入式微處理器的普及和推廣產(chǎn)生巨大的影響。本文介紹的ET44M210芯片是一款低價(jià)格、高性能、采用CMOS工藝制造、具有RISC架構(gòu)的8位微控制器芯片。芯片采用SMA封裝,引腳數(shù)為100,由臺(tái)灣義統(tǒng)電子股份有限公司(Etoms Electronics Corp.)設(shè)計(jì)生產(chǎn)。ET44M210的設(shè)計(jì)充分體現(xiàn)了當(dāng)今SoC化產(chǎn)品的特征,在IP模塊、開(kāi)發(fā)工具和程序設(shè)計(jì)方面頗具特色。
2 ET44M210芯片的IP模塊
ET44M210芯片包含有10個(gè)IP模塊,其結(jié)構(gòu)如圖2所示。
微控制器MCU
MCU是ET44M210芯片的核心。它的工作電壓范圍為2.2V~3.6V DC,工作頻率范圍為0Hz~48MHz。該芯片采用RISC指令架構(gòu),有直接、間接和相對(duì)三種尋址方式,除了條件轉(zhuǎn)移指令是雙字節(jié)以外,其它所有指令均為單字節(jié);具有上電復(fù)位、看門(mén)狗、密碼保護(hù)等功能;共有20個(gè)中斷源,16層堆棧;采用CMOS工藝制造,具有低功耗特點(diǎn),典型工作電流為1.5mA(使用6MHz晶振、工作電壓3.V時(shí)),待機(jī)時(shí)的工作電流僅為1μA。
鎖相振蕩環(huán)PLL
外部晶振為6MHz,可編程產(chǎn)生6、12、24和48MHz的時(shí)鐘信號(hào),提供給其它各IP模塊使用。通過(guò)對(duì)有關(guān)寄存器的設(shè)置,可以選用“休眠”、“綠色”或“普通”系統(tǒng)時(shí)鐘模式。
存儲(chǔ)器ROM/RAM
程序存儲(chǔ)器ROM是雙字節(jié)的。程序計(jì)數(shù)器PC(Program Counter)是14位的,因此總共有16K的容量分為2個(gè)頁(yè)面,每個(gè)頁(yè)面為8K。源地址從0x0000起始,從0x10開(kāi)始到0xA8用來(lái)存放中斷服務(wù)程序的程序段,一共可以響應(yīng)20個(gè)中斷,每個(gè)程序段為8個(gè)字節(jié)。系統(tǒng)對(duì)各功能模塊的響應(yīng)使用統(tǒng)一的中斷方式,因此極大地提高了芯片的工作效率,并使得程序的編制變得非常容易和清晰。ET44M210芯片ROM的內(nèi)容可以重復(fù)改寫(xiě)。
ET44M210芯片的數(shù)據(jù)存儲(chǔ)器RAM是單字節(jié)的靜態(tài)存儲(chǔ)器,總共有1321個(gè),全部可以作為寄存器使用。在這些寄存器中有相當(dāng)一部分已經(jīng)賦予了特定的功能。如果這些功能進(jìn)行分類(lèi),可以分為:通用寄存器、系統(tǒng)控制/初始化寄存器、特殊功能寄存器、USB控制/狀態(tài)寄存器、無(wú)線調(diào)制解調(diào)器控制/狀態(tài)寄存器/SPI控制/狀態(tài)寄存器/定時(shí)器/計(jì)數(shù)器和I/O狀態(tài)/控制寄存器等。ET44M210芯片所有功能的實(shí)現(xiàn)都是通過(guò)這些寄存器的設(shè)置來(lái)實(shí)現(xiàn)的。
輸入輸出I/O接口
芯片最多可以有42個(gè)I/O引腳,通過(guò)有關(guān)寄存器的設(shè)置可以定義輸入、輸出、上拉電阻選用、開(kāi)路輸出選用和按鍵喚醒選擇等。
定時(shí)器/計(jì)數(shù)器
除了通常的帶預(yù)除器的8位計(jì)數(shù)器外,還有一個(gè)16位的“長(zhǎng)時(shí)計(jì)數(shù)器”(FRC,F(xiàn)ree Run Counter),可以很方便地實(shí)現(xiàn)長(zhǎng)時(shí)間定時(shí)或大容量計(jì)數(shù)。
脈寬調(diào)制輸出PWM
芯片有2個(gè)脈沖寬度調(diào)制輸出端,調(diào)制精度為16位,即脈沖寬度調(diào)制的最小量是脈沖周期的1/65536。
模擬/數(shù)字轉(zhuǎn)換ADC
16通道、10位轉(zhuǎn)換精度,提供內(nèi)部3V標(biāo)準(zhǔn)參考電壓。使用6MHz時(shí)鐘源泉時(shí)的最快轉(zhuǎn)換時(shí)間為4μs。
同步串行外圍接口SPI
主/從通信模式均可選用,MSB和LBS的傳輸順序可選。
通用串行總線集線器(USB HUB)
含內(nèi)置式、可進(jìn)行1點(diǎn)對(duì)3點(diǎn)通信的USB集線器,符合USB1.1標(biāo)準(zhǔn)。數(shù)據(jù)上傳速度為12Mbps,下行速度為12Mbps。5V電源可由PC計(jì)算機(jī)USB接口提供。
無(wú)線射頻調(diào)制解調(diào)器Wieless/RF Modem
通信頻率為2.4GHz,可連接到RF102調(diào)制解調(diào)器的并行接口端,帶CRC校驗(yàn)。無(wú)線傳輸距離≤10m。
3 ET44M210芯片的開(kāi)發(fā)工具
ET_USBICE仿真軟件ET44M210芯片采用“USB接口仿真+實(shí)驗(yàn)?zāi)0濉弊鳛橛布_(kāi)發(fā)工具,如圖3所示。
開(kāi)發(fā)板的前半部分是仿真模板,在其上有一個(gè)ET44M210芯片,內(nèi)部固化了仿真程序。仿真模板通過(guò)板上的USB接口與PC機(jī)進(jìn)行通信,在仿真軟件的配合下構(gòu)成一個(gè)低成本,高性能的在線仿真器ICE和寫(xiě)入器。
開(kāi)發(fā)板的后半部分是實(shí)驗(yàn)?zāi)0澹谄渖弦彩且粋€(gè)ET44M210芯片,用戶通過(guò)實(shí)驗(yàn)?zāi)0暹M(jìn)行系統(tǒng)開(kāi)發(fā)和模擬實(shí)驗(yàn)。實(shí)驗(yàn)?zāi)0迳嫌?個(gè)USB接口,供用戶開(kāi)展USB應(yīng)用實(shí)驗(yàn)使用。仿真模板的前端可外接1個(gè)WM通信模板,為開(kāi)展WM通信實(shí)驗(yàn)使用。實(shí)驗(yàn)板上還有1個(gè)48引腳的插座,可供連接I/O接口、ADC、PWM、SPI等使用。
ET44M210芯片采用ET_USBICE仿真軟件作為軟件開(kāi)發(fā)工具,如圖4所示。
ET_USBICE仿真軟件使用USB接口與PC計(jì)算機(jī)進(jìn)行通信。軟件具有標(biāo)準(zhǔn)的通用仿真軟件界面和工程導(dǎo)向管理功能,適用于Windows98/2000/XP等多種操作系統(tǒng),可以很方便地對(duì)源程序進(jìn)行編寫(xiě)、編譯、偵錯(cuò)、仿真運(yùn)行、代碼生成、寫(xiě)入等全過(guò)程。
4 ET44M210芯片的程序設(shè)計(jì)
ET44M210芯片的程序設(shè)計(jì)有如下幾個(gè)特點(diǎn)。
(1)匯編過(guò)程可以使用宏定義頭文件(Head File)
ET44M210芯片中的各知識(shí)產(chǎn)權(quán)IP的功能選擇是通過(guò)寄存器內(nèi)容設(shè)置來(lái)完成的。知識(shí)產(chǎn)權(quán)功能設(shè)置寄存器多達(dá)數(shù)百個(gè),為了使用方便,設(shè)計(jì)廠商為每個(gè)寄存器以及相應(yīng)的位制定了一個(gè)特定的名稱(chēng)。在為這些名稱(chēng)建立了相應(yīng)的名稱(chēng)-地址宏定義以后,用戶在設(shè)置豁口內(nèi)容時(shí)就不再需要使用地址,只需要直接使用寄存器及其相應(yīng)的位的名稱(chēng)就可以了。所有關(guān)于寄存器及其位的名稱(chēng)-地址宏定義都被放入一個(gè)以H為后綴名的頭文件中。ET_USBICE仿真軟件的編譯器可以接受類(lèi)似C語(yǔ)言中所使用的頭文件,這樣做不僅為程序設(shè)計(jì)帶來(lái)了極大的方便,同時(shí)也使程序設(shè)計(jì)實(shí)現(xiàn)了統(tǒng)一和規(guī)范。廠商提供的包含所有寄存器名稱(chēng)宏定義的頭文件是ET44M210_REG.H。
(2)智能模塊采用統(tǒng)一的中斷工作方式
ET44M210芯片提供了多種特色知識(shí)產(chǎn)權(quán),如USB通信接口、無(wú)線調(diào)制解調(diào)器WM等,還提供了許多流行的知識(shí)產(chǎn)權(quán),如ADC、SPI、PWM等,所有這些知識(shí)產(chǎn)權(quán)的響應(yīng)都是通過(guò)中斷工作方式來(lái)實(shí)現(xiàn)的。ET44M210將ROM存儲(chǔ)器的0x10~0xA8的區(qū)域作為20個(gè)中斷響應(yīng)入口,在使用時(shí)通過(guò)對(duì)有關(guān)的中斷控制寄存器的設(shè)置控制優(yōu)先級(jí),這樣很方便地就可以實(shí)現(xiàn)多知識(shí)產(chǎn)權(quán)工作的協(xié)調(diào)和統(tǒng)一。
(3)可重用知識(shí)產(chǎn)權(quán)模塊程序IPP
由于ET44M210芯片在設(shè)計(jì)時(shí)采用了IP核可重用設(shè)計(jì)和規(guī)范化的接口,因此對(duì)于同一系列的不同芯片,知識(shí)產(chǎn)權(quán)應(yīng)用程序可以重用。用戶只需要對(duì)功能模塊的數(shù)據(jù)接口進(jìn)行安排,無(wú)需從頭開(kāi)始,可以極大地提高程序設(shè)計(jì)效率。
圖4
設(shè)計(jì)廠商提供了各知識(shí)產(chǎn)權(quán)的功能演示程序。通過(guò)演示程序,用戶一方面可以學(xué)習(xí)功能模塊程序的應(yīng)用方法另一方面也可以將功能模塊的演示程序移植到用戶實(shí)際的應(yīng)用程序中,大大加快了程序設(shè)計(jì)的進(jìn)度。
(4)支持C高級(jí)語(yǔ)言編程
ET_USBICE仿真軟件提供C高級(jí)語(yǔ)言編譯器,支持使用臺(tái)灣義隆電子系統(tǒng)有限公司所定義的C語(yǔ)言標(biāo)準(zhǔn)編寫(xiě)源程序。
結(jié)語(yǔ)
8位嵌入式微處理器芯片正在向SoC化發(fā)展,通過(guò)設(shè)計(jì)重用和硬、軟件協(xié)同設(shè)計(jì)的方法達(dá)到高效率。ET44M210芯片正是這種SoC化發(fā)展的一個(gè)范例。該芯片具有多個(gè)知識(shí)產(chǎn)權(quán),最為突出的是有1個(gè)符合USB1.1協(xié)議標(biāo)準(zhǔn)的USB集線器和1個(gè)2.4GHz的高頻無(wú)線調(diào)制解調(diào)器。ET44M210采用獨(dú)特的“仿真+實(shí)驗(yàn)?zāi)K”開(kāi)發(fā)方式,價(jià)格低、性能好,可以完全達(dá)到硬件在線仿真器ICE的功能。在程序設(shè)計(jì)中采用匯編宏定義頭文件和可得用知識(shí)產(chǎn)權(quán),使得嵌入系統(tǒng)應(yīng)用程序的開(kāi)發(fā)變得簡(jiǎn)單、方便和快捷。