各品牌ARM SoC技術(shù)比較分析
ARM9族群
ARM9大約可以達到180MHz~200 MHz的工作速率。因此,它能驅動(dòng)的周邊裝置比ARM7多,應用范圍也比較廣。下面舉Atmel的AT91RM9200來(lái)說(shuō)明。
Atmel的AT91RM9200
它的CPU核心是16/32-bit的ARM920T,其主要功能簡(jiǎn)述如下:
內建有16 Kbytes的SRAM和128 Kbytes的ROM。
外部總線(xiàn)接口(External Bus Interface;EBI):可以支持SDRAM、SRAM、“暴量傳輸的(burst)”FLASH(亦即NOR FLASH)、能直接(glueless)和CompactFlash、SmartMedia、NAND FLASH連接。
7個(gè)外部中斷來(lái)源,1個(gè)快速中斷來(lái)源。
4個(gè)32-bit可程序I/O控制器,122個(gè)可程序I/O腳位,每個(gè)I/O腳位具有輸入變動(dòng)中斷和”開(kāi)路泄極”(open-drain)的功能。“開(kāi)路泄極”是指在芯片內部的MOS FET輸出電路上的泄極沒(méi)有連接任何組件(電阻)。通常,它可以用來(lái)驅動(dòng)高電流或高電壓的負載;或者說(shuō),多個(gè)外部裝置可以和此單一線(xiàn)路做雙向通信。
具有20個(gè)信道的周邊裝置控制器(DMA)。
4個(gè)可程序外部時(shí)脈信號。
內建2個(gè)振蕩器,以及2個(gè)PLL。
軟件控制的功率最佳化功能。
實(shí)時(shí)時(shí)脈產(chǎn)生器具有警報中斷功能。
中斷控制器具有8個(gè)不同等級的優(yōu)先級。能個(gè)別屏蔽的向量式中斷來(lái)源,可抑制寄生信號對中斷信號的干擾。
支持以太MAC 10/100 Base-T、MII或RMII,整合了28-byte的FIFO和專(zhuān)屬的DMA傳收通道。
支持USB 2.0(12 Mbps)主機端口(host port)和裝置端口(device port)。主機端口有整合FIFO和專(zhuān)屬的DMA。
多媒體記憶卡接口(multimedia card interface;MCI):支持自動(dòng)的通信協(xié)議控制、和自動(dòng)化的數據快速傳輸;與MMC和SD標準兼容,最多可支持2個(gè)SD記憶卡。
3個(gè)同步的序列控制器(SSC):每個(gè)傳送器和接收器都具有獨立的時(shí)脈和訊包同步信號。支持I2S模擬接口,采用分時(shí)多任務(wù)技術(shù)。
4個(gè)萬(wàn)用同步/異步接收傳送器(USART):可支持RS485、IrDA、調制解調器(modem)、ISO 7816的T0/T1 Smart Card。
主從式序列外圍接口(SPI):8到16-bit的可程序數據長(cháng)度,可以選擇4個(gè)外部外圍芯片。
2組3-通道、16-bit的定時(shí)器/計數器(TC):3個(gè)外部輸入時(shí)脈、每個(gè)通道具有2個(gè)多用途I/O腳位。能夠產(chǎn)生雙PWM信號。
雙線(xiàn)路界面(two-wire interface;TWI):支持主控模式(master mode),支持Atmel所有的雙線(xiàn)路EEPROM。
所有數字腳位都支持IEEE 1149.1 JTAG邊界掃描。
AT91RM9200算是性能非常強大的SoC,它可以用來(lái)開(kāi)發(fā)通信、儲存、控制等產(chǎn)品。由于它的功能很多,所以本文無(wú)法逐項詳細說(shuō)明,在此僅介紹它的USB 2.0主機端口。
它的USB 2.0主機端口支持“開(kāi)放式主機控制器接口”(Open Host Controller Interface;OHCI) v1.0規格,以及USB v2.0全速(12 Mbps)和低速(1.5 Mbps)規格的信訊協(xié)議。它整合了1個(gè)“根部集線(xiàn)器”(root hub)和下游的2個(gè)USB傳收器。標準的OHCI USB通訊堆棧驅動(dòng)程序可以輕易地移植到此架構中,不需要顧慮硬件的兼容問(wèn)題;可以執行現有全部的USB類(lèi)別驅動(dòng)程序,這表示所有標準的USB類(lèi)別裝置(class device)都能被自動(dòng)偵測,讓使用者應用。圖5是其內部架構圖。
在主機控制器和主機控制器驅動(dòng)程序之間,有兩個(gè)通信信道。第一個(gè)信道使用主機控制器內部的作業(yè)緩存器組,這個(gè)信道的通信對象(目的地)就是主機控制器。這組緩存器包含了控制、狀態(tài)、串行指針(list pointer)緩存器。它們都被映像至系統總線(xiàn)(ASB)的映像區域內。其中有一個(gè)指標是指向處理器的地址空間—稱(chēng)為“主機控制器通訊區域”(Host Controller Communication Area;HCCA)。HCCA正是第二個(gè)通信信道。在此信道內,主機控制器是通信主控(主導)者。HCCA包含一些起始指標(head pointer),分別指向中斷模式的“端點(diǎn)描述者”(Endpoint Descriptor)串行、已處理完畢的隊列(done queue),和“訊框起始”(start-of-frame;SOF)所代表的狀態(tài)信息。
此接口的基本建構區塊包含:端點(diǎn)描述者(ED)和傳輸描述者(Transfer Descriptor;TD)。主機控制器對系統內的每一個(gè)端點(diǎn)各別分配一個(gè)ED,TD隊列連結至特定的ED上。
雖然有了硬件的USB 2.0主機端口,但是USB的軟件驅動(dòng)程序仍然是不可或缺的。圖7是它的USB驅動(dòng)程序架構。USB的數據處理作業(yè)是透過(guò)下列的通信層完成的:
主機控制器硬件和序列引擎(serial engine):在總線(xiàn)上,傳送和接收USB數據。
主機控制器驅動(dòng)程序:驅動(dòng)主機控制器硬件和處理USB通信協(xié)議。
USB總線(xiàn)驅動(dòng)程序和集線(xiàn)器驅動(dòng)程序:處理USB命令和“列舉”(enumeration)。提供一個(gè)硬件的獨立接口。
迷你驅動(dòng)程序(mini driver):處理USB裝置特有的命令。不同廠(chǎng)牌的USB裝置可能具有不同功能的特殊命令。
類(lèi)別驅動(dòng)程序:處理標準的裝置及其命令。某一標準類(lèi)別的USB裝置之類(lèi)別驅動(dòng)程序都具有共同的特性,或類(lèi)似的程序代碼和邏輯;例如:人機接口裝置(HID)的驅動(dòng)程序。
目前在國外市場(chǎng)上TMS470、LPC2214、AT91RM9200等ARM SoC很受到歡迎。當然,還有其它廠(chǎng)牌的ARM SoC也很受歡迎,譬如:Samsung、Analog等。雖然在價(jià)格上它們不見(jiàn)得是最便宜的,但是由于它們的性能優(yōu)異、容易應用,所以擁有許多忠實(shí)的用戶(hù)。
分頻器相關(guān)文章:分頻器原理
評論