32位ARM內(nèi)核微處理器W90N740及其應(yīng)用 文章出處:國外電子元器件 作者:肖金钅皇 殷小貢 周 英
發(fā)布時間:2007/8/20 0:00:00 訪問次數(shù):517
摘要:在對ARM體系結(jié)構(gòu)進行分析的基礎(chǔ)上,介紹了32位ARM核處理器W90N740的結(jié)構(gòu)特點和優(yōu)異性能,討論了它的應(yīng)用方法。給出了用W90N740芯片降低系統(tǒng)成本的實現(xiàn)方案。
關(guān)鍵詞:ARM7TDMI;RISC;W90N740;片上系統(tǒng);路由器
W90N740是臺灣Winbond公司開發(fā)的基于32位ARM核的高性能、低功耗微處理器。W90N740采用ARM7TDMI內(nèi)核,內(nèi)建兩個10/100Mb MACs以太網(wǎng)絡(luò)控制器,并采用Winbond獨家專利的網(wǎng)絡(luò)地址轉(zhuǎn)換加速器NAT Accelerator。該器件用硬件方式加速網(wǎng)絡(luò)封包的轉(zhuǎn)換,不僅減少了中央處理器的負擔(dān),同時也大幅提高了寬頻的整體系統(tǒng)效能。而芯片方式集成的USB控制器則可透過USB界面連結(jié)各種電腦周邊設(shè)備,以增添產(chǎn)品附加值。此外,W90N740內(nèi)部還集成了EBI(external bus interface)控制器、系統(tǒng)管理器、GDMA控制器等。因而在許多應(yīng)用領(lǐng)域,用該器件設(shè)計的系統(tǒng)成本比目前同類產(chǎn)品要低。加上ARM公司開發(fā)環(huán)境支持匯編語言、C和C++,其軟件開發(fā)也十分方便。因此,W90N740雖不是主流產(chǎn)品,但也是許多網(wǎng)絡(luò)電子產(chǎn)品的選擇方案之一。
。薄。粒遥腕w系結(jié)構(gòu)
1.1 ARM體系的指令集
ARM體系具有ARM和Thumb兩種指令集。當(dāng)處理器工作在ARM狀態(tài)時,執(zhí)行ARM指令集;而當(dāng)其工作在Thumb狀態(tài)時,則執(zhí)行Thumb指令集。
所有ARM指令都是32位長度。指令以字對準方式保存,這樣,ARM狀態(tài)指令地址的最低2位總是零。實際上,一些指令通常使用最低有效位來判定代碼是轉(zhuǎn)向Thumb代碼還是ARM代碼。
ARM指令集主要包括存儲器訪問指令、數(shù)據(jù)移動指令、數(shù)據(jù)處理指令、分支指令、協(xié)處理器指令、狀態(tài)寄存器轉(zhuǎn)移指令和異常處理指令等。
所有Thumb指令都是16位長度,這些指令可在存儲器中以半字對準方式保存。因而,指令的最低有效位在Thumb狀態(tài)下總為零。實際上,Thumb指令集是32位ARM指令集的功能子集。
1.2 ARM體系的編程模型
(1)ARM支持的數(shù)據(jù)類型
ARM處理器支持下列數(shù)據(jù)類型:Byte(字節(jié)),8位;Halfword(半字),16位;Word(字,必須與4字節(jié)邊界對齊),32位。
(2)ARM處理器模式
ARM體系結(jié)構(gòu)支持7種處理器模式:用戶模式(User)、 快速中斷請求(FIQ,Fast Interrupt request)、中斷請求(IRQ,Interrupt ReQuest)、管理(Supervisor)、中止(Abort)、系統(tǒng)(System)和未定義(Undefined)。除用戶模式外,其它模式統(tǒng)稱為特權(quán)模式。大多數(shù)應(yīng)用程序可在用戶模式下執(zhí)行。當(dāng)處理器工作在用戶模式時,正在執(zhí)行的程序不能訪問被保護的系統(tǒng)資源,也不能改變模式,除非發(fā)生異常。因此,開發(fā)中應(yīng)適當(dāng)編寫操作系統(tǒng)來控制系統(tǒng)資源的使用。
(3)ARM寄存器組織
ARM處理器總共有37個寄存器其中有31個32位的通用寄存器(包括程序計數(shù)器PC)和6個32位的狀態(tài)寄存器(但是只使用了其中的12位)。該處理器將寄存器安排成部分重疊的組,每種處理器模式使用不同的寄存器組。同時在所有處理器模式下都可以訪問當(dāng)前程序狀態(tài)寄存器CPSR。而CPSR則包含條件碼標志、中斷標志位、當(dāng)前處理器模式以及其它狀態(tài)和控制信息。每種異常模式都有一個程序狀態(tài)保存寄存器SPSR。當(dāng)異常出現(xiàn)時SPSR可用于保留CPSR的狀態(tài)。
(4)異常處理
異常通常由內(nèi)部或外部源產(chǎn)生,并引起一個事件。比如,外部中斷或試圖執(zhí)行未定義指令都會引起異常。在處理異常之前,必須保留處理器狀態(tài),以便在異常處理程序完成后,使原來的程序能夠重新執(zhí)行。同一時刻可能出現(xiàn)多個異常。ARM支持七種類型的異常。異常出現(xiàn)后,系統(tǒng)將強制從異常類型對應(yīng)的固定存儲器地址開始執(zhí)行程序。
(5)存儲器和存儲器映射I/O
ARM體系結(jié)構(gòu)允許使用現(xiàn)有的存儲器和I/O器件來進行各種各樣的存儲系統(tǒng)設(shè)計。ARM體系結(jié)構(gòu)使用232個8位字節(jié)的單一線性地址空間。設(shè)計時可將字節(jié)地址作為無符號數(shù)看待,范圍為0~232-1。而將地址空間看作由230個32位字組成。每個字的地址都是字對準的,故地址可被4整除。其存儲器的存儲使用了兩種映射方法:小端存儲系統(tǒng)和大端存儲系統(tǒng),其映射方式分別如圖1(a)、(b)所示。
&
摘要:在對ARM體系結(jié)構(gòu)進行分析的基礎(chǔ)上,介紹了32位ARM核處理器W90N740的結(jié)構(gòu)特點和優(yōu)異性能,討論了它的應(yīng)用方法。給出了用W90N740芯片降低系統(tǒng)成本的實現(xiàn)方案。
關(guān)鍵詞:ARM7TDMI;RISC;W90N740;片上系統(tǒng);路由器
W90N740是臺灣Winbond公司開發(fā)的基于32位ARM核的高性能、低功耗微處理器。W90N740采用ARM7TDMI內(nèi)核,內(nèi)建兩個10/100Mb MACs以太網(wǎng)絡(luò)控制器,并采用Winbond獨家專利的網(wǎng)絡(luò)地址轉(zhuǎn)換加速器NAT Accelerator。該器件用硬件方式加速網(wǎng)絡(luò)封包的轉(zhuǎn)換,不僅減少了中央處理器的負擔(dān),同時也大幅提高了寬頻的整體系統(tǒng)效能。而芯片方式集成的USB控制器則可透過USB界面連結(jié)各種電腦周邊設(shè)備,以增添產(chǎn)品附加值。此外,W90N740內(nèi)部還集成了EBI(external bus interface)控制器、系統(tǒng)管理器、GDMA控制器等。因而在許多應(yīng)用領(lǐng)域,用該器件設(shè)計的系統(tǒng)成本比目前同類產(chǎn)品要低。加上ARM公司開發(fā)環(huán)境支持匯編語言、C和C++,其軟件開發(fā)也十分方便。因此,W90N740雖不是主流產(chǎn)品,但也是許多網(wǎng)絡(luò)電子產(chǎn)品的選擇方案之一。
1。粒遥腕w系結(jié)構(gòu)
1.1 ARM體系的指令集
ARM體系具有ARM和Thumb兩種指令集。當(dāng)處理器工作在ARM狀態(tài)時,執(zhí)行ARM指令集;而當(dāng)其工作在Thumb狀態(tài)時,則執(zhí)行Thumb指令集。
所有ARM指令都是32位長度。指令以字對準方式保存,這樣,ARM狀態(tài)指令地址的最低2位總是零。實際上,一些指令通常使用最低有效位來判定代碼是轉(zhuǎn)向Thumb代碼還是ARM代碼。
ARM指令集主要包括存儲器訪問指令、數(shù)據(jù)移動指令、數(shù)據(jù)處理指令、分支指令、協(xié)處理器指令、狀態(tài)寄存器轉(zhuǎn)移指令和異常處理指令等。
所有Thumb指令都是16位長度,這些指令可在存儲器中以半字對準方式保存。因而,指令的最低有效位在Thumb狀態(tài)下總為零。實際上,Thumb指令集是32位ARM指令集的功能子集。
1.2 ARM體系的編程模型
(1)ARM支持的數(shù)據(jù)類型
ARM處理器支持下列數(shù)據(jù)類型:Byte(字節(jié)),8位;Halfword(半字),16位;Word(字,必須與4字節(jié)邊界對齊),32位。
(2)ARM處理器模式
ARM體系結(jié)構(gòu)支持7種處理器模式:用戶模式(User)、 快速中斷請求(FIQ,Fast Interrupt request)、中斷請求(IRQ,Interrupt ReQuest)、管理(Supervisor)、中止(Abort)、系統(tǒng)(System)和未定義(Undefined)。除用戶模式外,其它模式統(tǒng)稱為特權(quán)模式。大多數(shù)應(yīng)用程序可在用戶模式下執(zhí)行。當(dāng)處理器工作在用戶模式時,正在執(zhí)行的程序不能訪問被保護的系統(tǒng)資源,也不能改變模式,除非發(fā)生異常。因此,開發(fā)中應(yīng)適當(dāng)編寫操作系統(tǒng)來控制系統(tǒng)資源的使用。
(3)ARM寄存器組織
ARM處理器總共有37個寄存器其中有31個32位的通用寄存器(包括程序計數(shù)器PC)和6個32位的狀態(tài)寄存器(但是只使用了其中的12位)。該處理器將寄存器安排成部分重疊的組,每種處理器模式使用不同的寄存器組。同時在所有處理器模式下都可以訪問當(dāng)前程序狀態(tài)寄存器CPSR。而CPSR則包含條件碼標志、中斷標志位、當(dāng)前處理器模式以及其它狀態(tài)和控制信息。每種異常模式都有一個程序狀態(tài)保存寄存器SPSR。當(dāng)異常出現(xiàn)時SPSR可用于保留CPSR的狀態(tài)。
(4)異常處理
異常通常由內(nèi)部或外部源產(chǎn)生,并引起一個事件。比如,外部中斷或試圖執(zhí)行未定義指令都會引起異常。在處理異常之前,必須保留處理器狀態(tài),以便在異常處理程序完成后,使原來的程序能夠重新執(zhí)行。同一時刻可能出現(xiàn)多個異常。ARM支持七種類型的異常。異常出現(xiàn)后,系統(tǒng)將強制從異常類型對應(yīng)的固定存儲器地址開始執(zhí)行程序。
(5)存儲器和存儲器映射I/O
ARM體系結(jié)構(gòu)允許使用現(xiàn)有的存儲器和I/O器件來進行各種各樣的存儲系統(tǒng)設(shè)計。ARM體系結(jié)構(gòu)使用232個8位字節(jié)的單一線性地址空間。設(shè)計時可將字節(jié)地址作為無符號數(shù)看待,范圍為0~232-1。而將地址空間看作由230個32位字組成。每個字的地址都是字對準的,故地址可被4整除。其存儲器的存儲使用了兩種映射方法:小端存儲系統(tǒng)和大端存儲系統(tǒng),其映射方式分別如圖1(a)、(b)所示。
&
熱門點擊
- MMIC和RFIC的CAD 王紹東,高學(xué)邦,
- 遲滯比較器
- 壓電晶體
- LabVIEW與MATLAB混合編程
- 精工電波掛鐘:自動對時、自動發(fā)光
- 射頻功率放大器的自適應(yīng)前饋線性化技術(shù) 蔡鐘斌
- 3G W-CDMA FDD直接轉(zhuǎn)換零中頻接收
- EDA海外發(fā)展前景(上)
- 數(shù)字動態(tài)偏置IC提供完整的功率放大器偏置解決
- 采用微流體背部冷卻技術(shù)實現(xiàn)芯片散熱(圖)
推薦技術(shù)資料
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究