AT91SAM9261片上系統(tǒng)介紹
時(shí)間:2016-12-22作者:華清遠(yuǎn)見(jiàn)
一.AT91SAM9261 SOC簡(jiǎn)介 AT91SAM9261是atmel公司生產(chǎn)的以ARM926EJ-S ARM Thumb處理器為核心的完全片上系統(tǒng)(SOC),它擴(kuò)展了DSP指令集和Jazelle Java加速器。主時(shí)鐘頻率190MHz時(shí)性能高達(dá)210MIPS。 AT91SAM926是一個(gè)為帶LCD顯示應(yīng)用而優(yōu)化了的主機(jī)處理器。它的集成LCD控制器支持BW而且達(dá)到16M色彩,主動(dòng)和被動(dòng)LCD顯示。16K字節(jié)的片上SRAM可配置為幀緩沖,能將LCD刷新對(duì)整體處理器性能上的影響降低到小。外部總線接口包括支持同步DRAM(SDRAM)和支持靜態(tài)存儲(chǔ)器的控制器,并有特殊接口電路以支持CompactFLASH和NandFLASH。 AT91SAM9261集成了一個(gè)支持映射的基于ROM的Bootloader,例如從外部DataFlash映射到外部SDRAM。由軟件控制的功率管理控制器(PMC)通過(guò)有選擇的啟用和關(guān)閉處理器、各種外設(shè)以及對(duì)工作頻率的調(diào)節(jié)使得系統(tǒng)功率損耗保持低。 AT91SAM9261還集成了寬范圍的調(diào)試特性。包括JTAG-ICE,一個(gè)專用的UART調(diào)試通道(DBUG)和嵌入式實(shí)時(shí)追蹤。這使所有應(yīng)用和開(kāi)發(fā),特別是嚴(yán)格要求實(shí)時(shí)性的應(yīng)用得以實(shí)現(xiàn)。下面是AT91SAM9261的功能框圖:
二.處理器ARM926EJ-S介紹 ARM926EJ-S是通用微處理器ARM9家族中的一員,屬于V5TEJ版ARM架構(gòu),針對(duì)的是多任務(wù)應(yīng)用,全存儲(chǔ)器管理、高性能、小核心尺寸和低功耗都是它的特點(diǎn)。 ARM926EJ-S處理器支持32位ARM和16位THUMB指令集,使得用戶能在高性能和高代碼密度上取得平衡。它支持8為JAVA指令集并且包括Java字節(jié)代碼有效執(zhí)行的功能部件,提供和JIT(Just In Time編譯器)形似的Java性能,這些性能為下一代Java無(wú)線應(yīng)用和嵌入式的設(shè)備提供了有效支持。為了提高DSP性能,還包含了一個(gè)增強(qiáng)的乘法器設(shè)計(jì)。 ARM926EJ-S提供了一個(gè)完整的處理器子系統(tǒng),包括:
ARM9EJ-S整核
三.AT91SAM9261的存儲(chǔ)器映射機(jī)制
如圖,由總線矩陣完成對(duì)初級(jí)地址解碼,也就是先進(jìn)高性能總線(AHB)對(duì)其附加功能部件的主控和從控接口的實(shí)現(xiàn)。 解碼時(shí)把4G字節(jié)地址空間分成16個(gè)256M字節(jié)的區(qū)域,1-8號(hào)區(qū)域(0x10000000~0x90000000)通過(guò)片選信號(hào)NGS0---NGS7指向EBI。區(qū)域0(0x0~0x0fffffff)是為片內(nèi)存儲(chǔ)器(32K ROM和16K SRAM)尋址的保留區(qū)域,并且一個(gè)二級(jí)解碼提供1M字節(jié)的內(nèi)部存儲(chǔ)區(qū)域。15號(hào)區(qū)域(0xf0000000~0xffffffff)是為外設(shè)預(yù)留的且外設(shè)預(yù)留的且提供訪問(wèn)先進(jìn)外圍總線(APB)的權(quán)限。其他區(qū)域是未被使用的,當(dāng)在該區(qū)域內(nèi)進(jìn)行存取操作時(shí),會(huì)向主控提供一個(gè)中斷。 總線矩陣管理五個(gè)主控和5個(gè)從控。每個(gè)主控有其自己的總線和解碼器,這樣就允許每個(gè)主控有一個(gè)不同的存儲(chǔ)器映射。每個(gè)從控有其自己的仲裁,這樣就允許每個(gè)從控有一個(gè)不同的仲裁。 總線矩陣主控制器列表:
總線矩陣從控制器列表:
嵌入式存儲(chǔ)器: 32K ROM --- 全速總線下單周期存取 16K 快速SRAM --- 全速總線下單周期存取 每個(gè)主控的內(nèi)部存儲(chǔ)器映射,取決于復(fù)位時(shí)重映射狀態(tài)和BMS狀態(tài)。 內(nèi)部存儲(chǔ)器映射:
四.AT91SAM9261的啟動(dòng)策略分析 系統(tǒng)上電復(fù)位后,首先會(huì)檢測(cè)BMS(Boot Mode Select)引腳上的電平,如果BMS檢測(cè)到1,系統(tǒng)從片上ROM啟動(dòng);如果檢測(cè)到BMS為0,系統(tǒng)從外部總線接口(EBI)片選0所接的存儲(chǔ)器(通常都是Nor Flash)啟動(dòng)。 這一過(guò)程可用下圖表示:
AT91SAM9261芯片的內(nèi)部ROM中固化了一段啟動(dòng)代碼,如果BMS引腳電平為1,則執(zhí)行這段啟動(dòng)代碼。啟動(dòng)代碼會(huì)檢測(cè)和芯片連接的外部的各個(gè)存儲(chǔ)媒介(SPI DATAFLASH, NAND FLASH or SDCARD)上是否有有效的應(yīng)用程序,如果有,則把它下載到內(nèi)部快速SRAM中去運(yùn)行;如果沒(méi)有發(fā)現(xiàn)有效的應(yīng)用程序,則執(zhí)行SAM-BA應(yīng)用程序,SAM-BA是一種小型監(jiān)控程序接口,也是固化在ROM中的程序。它實(shí)現(xiàn)以下功能: 用戶可以通過(guò)PC端的SAM-BA GUI程序通過(guò)USB或者串口下載有效的應(yīng)用到外部存儲(chǔ)器(DATAFLASH,NAND FLASH or SDCARD) 啟動(dòng)程序算法流程圖如下所示:
五.總結(jié) 本文從四個(gè)方面由淺入深介紹了AT91SAM9261片上系統(tǒng)。比起常用的32為ARM處理器S3C2410,AT91SAM9261采用了ARM926EJ-S內(nèi)核并外擴(kuò)了DSP指令設(shè)備和JAzELLEJava加速器。在工作頻率為180 MHz的情況下,其運(yùn)算速度為200 MIPS。S3C2410采用的是ARM920T內(nèi)核,雖然它的主頻高可達(dá)200 MHz,但在處理諸如乘加指令時(shí)沒(méi)有AT91SAM9261快,尤其在處理流媒體數(shù)據(jù)時(shí)更為明顯。16KB的內(nèi)部SRAM在播放流媒體數(shù)據(jù)時(shí)起到了很好的幀緩沖作用,另外,AT91SAM9261 發(fā)揮了ARM926EJ-S緊密式耦合內(nèi)存架構(gòu)的優(yōu)勢(shì),讓傳統(tǒng)(非高速緩存)SRAM直接連接到ARM處理器上而不會(huì)出現(xiàn)滯后情況。AT91SAM9261在工控和消費(fèi)電子領(lǐng)域均有廣泛應(yīng)用,尤其是應(yīng)用于工控領(lǐng)域的PDA手持設(shè)備。
相關(guān)資訊
發(fā)表評(píng)論
|