ARM微處理器硬件結(jié)構(gòu).ppt_第1頁
ARM微處理器硬件結(jié)構(gòu).ppt_第2頁
ARM微處理器硬件結(jié)構(gòu).ppt_第3頁
ARM微處理器硬件結(jié)構(gòu).ppt_第4頁
ARM微處理器硬件結(jié)構(gòu).ppt_第5頁
已閱讀5頁,還剩84頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第2章 ARM微處理器硬件結(jié)構(gòu),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,嵌入式處理器體系結(jié)構(gòu),按體系結(jié)構(gòu)的不同可分為五大類 ARM POWER PC MIPS X86 SH系列,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,第2章 ARM微處理器硬件結(jié)構(gòu),2.0 什么是ARM 2.0 CISC和RISC技術(shù) 2.1 計(jì)算機(jī)體系結(jié)構(gòu)分類 馮諾依曼結(jié)構(gòu) 哈佛結(jié)構(gòu) 2.2 ARM的版本及系列 2.3 ARM處理器結(jié)構(gòu) 2.4 存儲(chǔ)系統(tǒng)機(jī)制 2.5 嵌入式系統(tǒng)的開發(fā),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,掌握馮諾依曼體系結(jié)構(gòu)和哈佛體系結(jié)構(gòu)兩種計(jì)算機(jī)體系結(jié)構(gòu)及其區(qū)別。 了解RISC技術(shù)。 了解ARM

2、定義、版本及處理器版本。 了解ARM處理器結(jié)構(gòu)。 了解存儲(chǔ)系統(tǒng)機(jī)制。,本章要求:,第2章 ARM微處理器硬件結(jié)構(gòu),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.0 什么是ARM,ARM是Advanced RISC Machine的縮寫,它是一家微處理器行業(yè)的知名企業(yè),該企業(yè)設(shè)計(jì)大量高性能、廉價(jià)、耗能低的RISC處理器。,1985年第一個(gè)ARM原型在英國劍橋誕生。,公司的特點(diǎn)是只設(shè)計(jì)芯片,不生產(chǎn)芯片。 提供ARM技術(shù)知識(shí)產(chǎn)權(quán)(IP)核,將技術(shù)授權(quán)給世界上許多著名的半導(dǎo)體、軟體和OEM廠商,并提供服務(wù)。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.0 什么是ARM,有多個(gè)版本,除了一些Unix圖形工作站之外,大多數(shù)

3、ARM核心的處理器都是用在嵌入式領(lǐng)域。,ARM既可以認(rèn)為是一個(gè)公司的名字,也可認(rèn)為是對(duì)一類微處理器的通稱,還可以認(rèn)為是一種技術(shù)的名字。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ARM Partnership Model,CISC:復(fù)雜指令集計(jì)算機(jī)(Complex Instruction Set Computer) 具有大量的指令和尋址方式 8/2原則:80%的程序只使用20%的指令 大多數(shù)程序只使用少量的指令就能夠運(yùn)行。,RISC:精簡指令集計(jì)算機(jī)(Reduced Instruction Set Computer) 在通道中只包含最有用的指令 確保數(shù)據(jù)通道快速執(zhí)行每一條

4、指令 使CPU硬件結(jié)構(gòu)設(shè)計(jì)變得更為簡單,2.0 CISC和RISC技術(shù),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,RISC體系結(jié)構(gòu)特點(diǎn):,指令集中的大多數(shù)指令只需要執(zhí)行簡單和基本的功能; 減少存儲(chǔ)器訪問指令; 芯片邏輯采用硬布線邏輯; 減少指令數(shù)和尋址方式 指令譯碼簡化。,典型的高性能RISC處理器,MIPS公司的SGI:MIPS(1986) SUN公司的SPARC(1987) HP公司的PA-RISC, IBM, Motorola公司的PowerPC DEC、Compac公司的Alpha AXP IBM的RS6000(1990)第一臺(tái)Superscalar RISC機(jī),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,

5、CISC與RISC的對(duì)比,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,馮諾依曼體系結(jié)構(gòu),2.1 計(jì)算機(jī)體系結(jié)構(gòu)分類,哈佛體系結(jié)構(gòu),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,馮諾依曼體系結(jié)構(gòu)模型,指令寄存器,控制器,數(shù)據(jù)通道,輸入,輸出,中央處理器,存儲(chǔ)器,程序,指令0,指令1,指令2,指令3,指令4,數(shù)據(jù),數(shù)據(jù)0,數(shù)據(jù)1,數(shù)據(jù)2,2.1 計(jì)算機(jī)體系結(jié)構(gòu)分類,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,1)取指令(Instruction Fetch):TF 2)指令譯碼(Instruction Decode):TD 3)執(zhí)行指令(Instruction Execute):TE 4)存儲(chǔ)(Storage):TS,馮諾依曼體系結(jié)構(gòu)指

6、令的執(zhí)行周期T,2.1 計(jì)算機(jī)體系結(jié)構(gòu)分類,每條指令的執(zhí)行周期:T= TF+TD+TE+TS,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,1)數(shù)據(jù)與指令都存儲(chǔ)在存儲(chǔ)器中 2)被大多數(shù)計(jì)算機(jī)所采用,馮諾依曼體系結(jié)構(gòu)的特點(diǎn),2.1 計(jì)算機(jī)體系結(jié)構(gòu)分類,ARM7馮諾依曼體系結(jié)構(gòu),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,指令寄存器,控制器,數(shù)據(jù)通道,輸入,輸出,中央處理器,程序存儲(chǔ)器,指令0,指令1,指令2,數(shù)據(jù)存儲(chǔ)器,數(shù)據(jù)0,數(shù)據(jù)1,數(shù)據(jù)2,地址,指令,地址,數(shù)據(jù),哈佛體系結(jié)構(gòu),2.1 計(jì)算機(jī)體系結(jié)構(gòu)分類,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,1)程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器分開 2)提供了較大的存儲(chǔ)器帶寬 3)適合于數(shù)字信號(hào)處理

7、 4)大多數(shù)DSP都是哈佛結(jié)構(gòu),ARM9哈佛體系結(jié)構(gòu),哈佛體系結(jié)構(gòu)的特點(diǎn),2.1 計(jì)算機(jī)體系結(jié)構(gòu)分類,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ARM體系結(jié)構(gòu)從最初開發(fā)到現(xiàn)在有了很大的改進(jìn),并仍在完善和發(fā)展。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本,為了清楚地表達(dá)每個(gè)ARM應(yīng)用實(shí)例所使用的指令集,ARM公司定義了6種主要的ARM指令集體系結(jié)構(gòu)版本,以版本號(hào)V1V6表示。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,該版架構(gòu)只在原型機(jī)ARM1出現(xiàn)過,只有26位的尋址空間,沒有用于商業(yè)產(chǎn)品。 其基本性能有: 基本的數(shù)據(jù)處理指令(無乘法); 基于字節(jié)、半字和字的Load/Store指令; 轉(zhuǎn)移指令,包括子程序調(diào)用

8、及鏈接指令; 供操作系統(tǒng)使用的軟件中斷指令SWI; 尋址空間:64MB。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本I,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,該版架構(gòu)對(duì)V1版進(jìn)行了擴(kuò)展,例如ARM2和ARM3(V2a架構(gòu))。包含了對(duì)32位乘法指令和協(xié)處理器指令的支持。 版本2a是版本2的變種,ARM3芯片采用了版本2a,是第一片采用片上Cache的ARM處理器。同樣為26位尋址空間,現(xiàn)已廢棄不再使用。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本II,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,V2版架構(gòu)與版本V1相比,增加了以下功能: 乘法和乘加指令; 支持協(xié)處理器操作指令; 快速中斷模式; SWP/S

9、WPB的最基本存儲(chǔ)器與寄存器交換指令; 尋址空間:64MB,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本II,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ARM作為獨(dú)立的公司,在1990年設(shè)計(jì)的第一個(gè)微處理器采用的版本3的ARM6。它作為IP核、獨(dú)立的處理器、具有片上高速緩存、MMU和寫緩沖的集成CPU。 變種版本有3G和3M。版本3G是不與版本2a向前兼容的版本3,版本3M引入了有符號(hào)和無符號(hào)數(shù)乘法和乘加指令,這些指令產(chǎn)生全部64位結(jié)果。 V3架構(gòu)對(duì)ARM體系結(jié)構(gòu)做了較大的改動(dòng)。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本III,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,尋址空間增至32位(4GB) 當(dāng)前程

10、序狀態(tài)信息從原來的R15寄存器移到當(dāng)前程序狀態(tài)寄存器CPSR中(Current Program Status Register); 增加程序狀態(tài)保存寄存器SPSR(Saved Program Status Register); 增加了兩種異常模式,使操作系統(tǒng)代碼可方便地使用數(shù)據(jù)訪問中止異常、指令預(yù)取中止異常和未定義指令異常; 增加了MRS/MSR指令,以訪問新增的CPSR/SPSR寄存器; 增加了從異常處理返回的指令功能。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本III,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,V4版架構(gòu)在V3版上做了進(jìn)一步擴(kuò)充,V4版架構(gòu)是目前應(yīng)用最廣的ARM體系結(jié)構(gòu),ARM7

11、、ARM8、ARM9和StrongARM都采用該架構(gòu)。 V4不再強(qiáng)制要求與26位地址空間兼容,而且明確了哪些指令會(huì)引起未定義指令異常。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本IV,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,符號(hào)化和非符號(hào)化半字及符號(hào)化字節(jié)的存/取指令; 增加了T變種,處理器可工作在Thumb狀態(tài),增加了16位Thumb指令集; 完善了軟件中斷SWI指令的功能; 處理器系統(tǒng)模式引進(jìn)特權(quán)方式時(shí)使用用戶寄存器操作; 把一些未使用的指令空間捕獲為未定義指令。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本IV,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ARM和Thumb指令,簡介,ARM處理器是基

12、于精簡指令集計(jì)算機(jī)(RISC)原理設(shè)計(jì)的,指令集和相關(guān)譯碼機(jī)制較為簡單。,ARM體系結(jié)構(gòu)在V4版中增加了16位Thumb指令集。 ARM指令集效率高,但是代碼密度低; Thumb指令集具有較高的代碼密度,卻仍然保持ARM的大多數(shù)性能上的優(yōu)勢(shì),它是ARM指令集的子集。,ARM7TDMI(-S)指令系統(tǒng),ARM指令集與Thumb指令集的關(guān)系,Thumb指令集具有靈活、小巧的特點(diǎn),ARM指令集支持ARM核所有的特性,具有高效、快速的特點(diǎn),ARM和Thumb狀態(tài)切換,所有的ARM指令都是可以有條件執(zhí)行的,而Thumb指令僅有一條指令具備條件執(zhí)行功能。 ARM程序和Thumb程序可相互調(diào)用,相互之間的狀

13、態(tài)切換開銷幾乎為零。,進(jìn)入Thumb狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)態(tài)位為1 進(jìn)入ARM狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)態(tài)位為0,V5版架構(gòu)是在V4版基礎(chǔ)上增加了一些新的指令,ARM10和Xscale都采用該版架構(gòu)。 新增命令包括: 帶鏈接和交換的轉(zhuǎn)移BLX指令; 計(jì)數(shù)前導(dǎo)零CLZ指令; BRK中斷指令;,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本V,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,增加了數(shù)字信號(hào)處理指令(V5TE版); 為協(xié)處理器增加更多可選擇的指令; 改進(jìn)了ARM/Thumb狀態(tài)之間的切換效率; E增強(qiáng)型DSP指令集,包括全部算法操作和16位乘法操作; J支持新的JAVA,提供字節(jié)代碼執(zhí)行的硬件和

14、優(yōu)化軟件加速功能。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本V,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,V6版架構(gòu)是2001年發(fā)布的,首先在2002年春季發(fā)布的ARM11處理器中使用。在降低耗電量的同時(shí),還強(qiáng)化了圖形處理性能。 通過追加有效進(jìn)行多媒體處理的SIMD(Single Instruction,Multiple Data,單指令多數(shù)據(jù))功能,將語音及圖像的處理功能提高到原型機(jī)的4倍。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本VI,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,此架構(gòu)在V5版基礎(chǔ)上增加了以下功能: ThumbTM:35%代碼壓縮; DSP擴(kuò)充:高性能定點(diǎn)DSP功能; Jazelle

15、TM:Java性能優(yōu)化,可提高8倍; Media擴(kuò)充:音/視頻性能優(yōu)化,可提高4倍。,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本VI,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.2 ARM的版本及系列,ARM體系結(jié)構(gòu)版本,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ARM I ARM II ARM III ARM IV ARM V ARM VI,ARM公司開發(fā)了很多系列的ARM處理器核,目前最新的系列已經(jīng)是ARM11。 ARM7、ARM9、ARM9E和ARM10為4個(gè)通用處理器系列。 每個(gè)系列提供一套相對(duì)獨(dú)特的性能來滿足不同應(yīng)用領(lǐng)域的需求。,2.2 ARM的版本及系列,ARM處理器系列,中國礦業(yè)大學(xué)信息與電氣

16、工程學(xué)院,ARM7系列 ARM9系列 ARM9E系列 ARM10E系列 ARM11系列 SecurCore系列 Intel Xscale系列 Intel StrongARM系列,2.2 ARM的版本及系列,ARM處理器系列,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,低功耗的32bitRISC處理器,馮諾依曼體系結(jié)構(gòu)。極低的功耗,適合便攜式產(chǎn)品。 具有嵌入式ICE-RT邏輯,調(diào)試開發(fā)方便。 能提供0.9MIPS的三級(jí)流水線結(jié)構(gòu); 代碼密度高,兼容16位的Thumb指令集; 廣泛支持操作系統(tǒng),包括Windows CE、Linux、Palm OS、VxWorks等; 指令系統(tǒng)與ARM9系列、ARM9E系列和A

17、RM10E系列兼容,便于用戶的產(chǎn)品升級(jí)換代; 主頻最高可達(dá)130MIPS。,2.2 ARM的版本及系列,ARM處理器ARM7系列,主要應(yīng)用于:工業(yè)控制、Internet設(shè)備、網(wǎng)絡(luò)和調(diào)制解調(diào)器設(shè)備、移動(dòng)電話等多種多媒體和嵌入式應(yīng)用。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,包括六種類型:ARM7TDMI、ARM7TDMI-S、 ARM710T、 ARM720T、 ARM740T、 ARM7EJ; ARM7TDMI是目前最廣泛的32位嵌入式RISC處理器,屬低端ARM處理器核。,2.2 ARM的版本及系列,ARM處理器ARM7TDMI系列,ARM7 T D M I - S,ARM7TDMI的可綜合(syn

18、thesizable)版本(軟核),對(duì)應(yīng)用工程師來說其編程模型與ARM7TDMI一致;,嵌入式Embedded-ICE,支持片上斷點(diǎn)和調(diào)試點(diǎn);,支持64位乘法;,支持片上調(diào)試Debug;,支持高密度16位的壓縮Thumb指令集,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ARM7的產(chǎn)品線。 ARM7TDMI:同時(shí)具備四個(gè)模塊,當(dāng)然用戶也可選擇其中的幾個(gè)或一個(gè)。 ARM7TDMI-S:軟件與ARM7TDMI完全兼容,硬件預(yù)留功能擴(kuò)展口。 ARM710T:ARM7TDMI+8K Cache+MMU,Cache:片內(nèi)緩存,提高CPU性能,MMU:內(nèi)存管理單元。 ARM740T: ARM7TDMI+8K Cach

19、e+Protection Unit。 ARM720T: ARM7TDMI+8K Cache+WinCE Support。,2.2 ARM的版本及系列,ARM處理器ARM7TDMI系列,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,5級(jí)流水線; 哈佛體系結(jié)構(gòu); 支持32位ARM指令集和16位Thumb指令集。 全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統(tǒng); 支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處理能力。,2.2 ARM的版本及系列,ARM處理器ARM9系列,主要應(yīng)用于:無線設(shè)備、儀器儀表、安全系統(tǒng)、機(jī)頂盒、高端打印機(jī)、數(shù)碼照相機(jī)和數(shù)碼攝像機(jī)。

20、,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,支持DSP指令集; 5級(jí)整數(shù)流水線,指令執(zhí)行效率更高; 支持32位ARM指令集和16位Thumb指令集; 支持VFP9浮點(diǎn)處理協(xié)處理器; 全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統(tǒng); MPU支持實(shí)時(shí)操作系統(tǒng); 支持?jǐn)?shù)據(jù)Cache和指令Cache; 主頻最高可達(dá)300MIPS。,2.2 ARM的版本及系列,ARM處理器ARM9E系列,主要應(yīng)用于:下一代無線設(shè)備、數(shù)字消費(fèi)品、成像設(shè)備、工業(yè)控制、存儲(chǔ)設(shè)備和網(wǎng)絡(luò)設(shè)備等領(lǐng)域。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,與同等的ARM9比較,在同樣的時(shí)鐘頻率下,性能提高了近50%,

21、功耗極低; 支持DSP指令集; 6級(jí)整數(shù)流水線,指令執(zhí)行效率更高; 支持32位ARM指令集和16位Thumb指令集。 支持VFP10浮點(diǎn)處理協(xié)處理器。 全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統(tǒng)。 支持?jǐn)?shù)據(jù)Cache和指令Cache; 主頻最高可達(dá)400MIPS; 內(nèi)嵌并行讀/寫操作部件。,2.2 ARM的版本及系列,ARM處理器ARM10E系列,主要應(yīng)用于:下一代無線設(shè)備、數(shù)字消費(fèi)品、成像設(shè)備、工業(yè)控制、通信和信息系統(tǒng)等領(lǐng)域。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,專為安全需要設(shè)計(jì),提供了完善的32位RISC技術(shù)的安全解決方案; 靈活的保護(hù)單元,以

22、確保操作系統(tǒng)和應(yīng)用數(shù)據(jù)的安全。 采用軟內(nèi)核技術(shù),防止外部對(duì)其進(jìn)行掃描探測(cè); 可集成用戶自己的安全特性和其他協(xié)處理器。,2.2 ARM的版本及系列,ARM處理器SecurCore系列,主要應(yīng)用于:對(duì)安全性要求較高的應(yīng)用產(chǎn)品及應(yīng)用系統(tǒng),如電子商務(wù)、電子政務(wù)、電子銀行業(yè)務(wù)、網(wǎng)絡(luò)和認(rèn)證系統(tǒng)等領(lǐng)域。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.2 ARM的版本及系列,Intel StrongARM SA-1100系列微處理器是采用ARM體系結(jié)構(gòu)高度集成的32位RISC微處理器。 融合Intel公司的設(shè)計(jì)和處理技術(shù)以及ARM體系結(jié)構(gòu)的電源效率,采用在軟件上兼容ARM V4,同時(shí)兼具Intel技術(shù)優(yōu)點(diǎn)。,ARM處理

23、器StrongARM系列,主要應(yīng)用于:便攜式通信產(chǎn)品和消費(fèi)類電子產(chǎn)品。,基于ARMv5TE體系結(jié)構(gòu)的解決方案,是一款全性能、高性價(jià)比、低功耗的處理器; 支持16位的Thumb指令和DSP指令集。,2.2 ARM的版本及系列,ARM處理器Xscale系列,已使用在:數(shù)字移動(dòng)電話、個(gè)人數(shù)字助理和網(wǎng)絡(luò)產(chǎn)品等場(chǎng)合。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.2 ARM的版本及系列,ARM系列總結(jié),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ARM7TDMI,4T,1,支持Halfword 和signed halfword / byte 和System mode,支持Thumb指令集,2,

24、4,ARM9TDMI,ARM720T,ARM940T,改良的ARM/Thumb 交互作用 以及CLZ 指令,5TE,Saturated maths DSP multiply-accumulate instructions,XScale,ARM1020E,ARM9E-S,ARM966E-S,3,早期的ARMs,ARM9EJ-S,5TEJ,ARM7EJ-S,ARM926EJ-S,Jazelle 支持 Java字節(jié)碼,6,ARM11,SIMD,2.2 ARM的版本及系列,ARM版本及系列總結(jié),ARM7 TDMI 內(nèi)核結(jié)構(gòu),基于精簡指令集RISC結(jié)構(gòu),指令集和相關(guān)的譯碼機(jī)制相對(duì)簡單 結(jié)構(gòu)圖,書P32,

25、圖2-7,指令集包含11種基本類型 2種類型:片上算術(shù)邏輯單元、桶式移位器和乘法器(在31個(gè)寄存器間執(zhí)行) 3種類型:指令控制數(shù)據(jù)(存儲(chǔ)器和寄存器之間) 3種類型:控制流程和特權(quán)級(jí)執(zhí)行 3種類型:控制外部的協(xié)處理器,SHARP公司的LH77790A芯片,ARM7DI CPU,Cache,LCD控制器,總線控制器,PWM,82C54計(jì)數(shù)器/定時(shí)器,16C450 UART,82C55可編程外圍接口,CPU部分,JTAG調(diào)試接口,中斷/復(fù)位,控制部分,典型應(yīng)用:,液晶顯示系統(tǒng),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,SAMSUNG公司KS32C6200芯片,ARM7TDMI內(nèi)核,Cache(2K),CPU部

26、分,并口接口,雙通道DMA,UART/SIO,中斷 控制器,典型應(yīng)用:,網(wǎng)絡(luò)打印機(jī),可編程方波發(fā)生器,存儲(chǔ)器控制器,總線接口,定時(shí)器,看門狗定時(shí)器,Derasterizer/shifter,顯示屏,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ATMEL公司的AT91芯片,ARM7TDMI內(nèi)核,ICE接口,外部總線接口,片內(nèi)存儲(chǔ)器,典型應(yīng)用:,工控系統(tǒng),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,CIRRUS公司的EP系列芯片,ARM720T內(nèi)核 控制電路 DAI:數(shù)字音頻接口 LCD控制器 存儲(chǔ)器控制器 DC-DC變換器(PWM) 27位通用I/O 動(dòng)態(tài)可編程時(shí)鐘 其它控制電路,典型應(yīng)用:,音頻系統(tǒng),中國礦業(yè)大學(xué)信息

27、與電氣工程學(xué)院,帶Cache的ARM7TDMI,ARM710T 8K 統(tǒng)一的 cache 完整的內(nèi)存管理單元(mmu),支持虛擬地址和存儲(chǔ)器保護(hù) 寫緩沖,ARM720T 同ARM710T,但支持 WinCE ARM740T 8K 統(tǒng)一的 cache 內(nèi)存管理單元 寫緩沖,ARM7TDMI 內(nèi)核,地址,地址,數(shù)據(jù)讀,AMBA接口,寫 緩沖,MMU,數(shù)據(jù)寫,數(shù)據(jù),ARM7xxT,控制 邏輯,Cache,AMBA 總線 接口,JTAG 和非 AMBA 信號(hào),CP15,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,高速緩存(Cache),1、為什么采用高速緩存 微處理器的時(shí)鐘頻率比內(nèi)存速度提高快得多,高速緩存可以提

28、高內(nèi)存的平均性能。 2、高速緩存的工作原理 高速緩存是一種小型、快速的存儲(chǔ)器,它保存部分主存內(nèi)容的拷貝。,CPU,高速緩存控制器,CACHE,主存,數(shù)據(jù),數(shù)據(jù),地址,2.3 ARM處理器結(jié)構(gòu),從以下四個(gè)方面介紹: ARM和Thumb狀態(tài) RISC技術(shù) 流水線技術(shù) 超標(biāo)量執(zhí)行,二級(jí)流水,串行執(zhí)行,取指令 取指令單元 完成,總有一個(gè)部件 空閑,指令預(yù)取,若 取指 和 執(zhí)行 階段時(shí)間上 完全重疊,指令周期 減半 速度提高 1 倍,執(zhí)行指令 執(zhí)行指令單元 完成,2.3.3 流水線技術(shù),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.3.3 流水線技術(shù),流水線(Pipeline)技術(shù):幾個(gè)指令可以并行執(zhí)行 提高了C

29、PU的運(yùn)行效率 內(nèi)部信息流要求通暢流動(dòng),譯碼,取指,執(zhí)行add,譯碼,取指,執(zhí)行sub,譯碼,取指,執(zhí)行mov,時(shí)間,Add,Sub,mov,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,流水線(pipeline)是 Intel首次在486芯片中開始使用的。 流水線的工作方式就象工業(yè)生產(chǎn)上的裝配流水線。,指令流水線,為增加處理器指令流的速度,ARM7 系列使用3級(jí)流水線. 允許多個(gè)操作同時(shí)處理,比逐條指令執(zhí)行要快。 PC指向正被取指的指令,而非正在執(zhí)行的指令,Fetch,Decode,Execute,從存儲(chǔ)器中讀取指令,解碼指令,寄存器讀(從寄存器Bank) 移位及ALU操作 寄存器寫(到寄存器Bank )

30、,PCPC,PC - 4PC-2,PC - 8PC - 4,ARMThumb,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,最佳流水線,該例中用6個(gè)時(shí)鐘周期執(zhí)行了6條指令 所有的操作都在寄存器中(單周期執(zhí)行) 指令周期數(shù) (CPI) = 1,操作,周期,1 2 3 45 6,Fetch,Decode,Execute,Fetch,Decode,Execute,Fetch,Decode,Execute,Fetch,Decode,Execute,Fetch,Decode,Execute,Decode,Execute,Fetch,Decode,Fetch,Fetch,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,LDR 流水線舉

31、例,該例中,用6周期執(zhí)行了4條指令 指令周期數(shù) (CPI) = 1.5,周期,操作,123456,Fetch,Decode,Execute,Fetch,Decode,Execute,Fetch,Decode,Execute,Data,Writeback,Fetch,Decode,Execute,Fetch,Decode,Fetch,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,縮短程序執(zhí)行時(shí)間,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.3.3 流水線技術(shù),ARM的流水線設(shè)計(jì)問題,:執(zhí)行一段程序所需時(shí)間;,:執(zhí)行該段程序的指令條數(shù);,:執(zhí)行每條指令的平均時(shí)鐘周期數(shù);,:處理器的時(shí)鐘頻率。,降低CPI,提供時(shí)鐘頻率,

32、解決流水線的相關(guān)問題,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.3.3 流水線技術(shù),ARM的流水線設(shè)計(jì)問題,1)流水線結(jié)構(gòu)相關(guān)問題:,資源沖突導(dǎo)致,對(duì)數(shù)據(jù)通路訪問的沖突 對(duì)寄存器訪問的沖突,措施:,分離式指令Cache和數(shù)據(jù)Cache ALU中采用獨(dú)立的加法器完成地址計(jì)算,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,解決流水線的相關(guān)問題,2.3.3 流水線技術(shù),ARM的流水線設(shè)計(jì)問題,2)流水線數(shù)據(jù)相關(guān)問題:,當(dāng)前指令需要之前指令執(zhí)行的結(jié)果,而之前指令均在流水線中重疊執(zhí)行。,寫后讀 寫后寫 讀后寫,措施:,定向技術(shù):將之前指令運(yùn)算結(jié)果直接傳遞給后面需要的指令,不必寫入寄存器。 流水線互鎖技術(shù):通過編譯器及匯編程

33、序員修改來減少管道互鎖的數(shù)量。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,解決流水線的相關(guān)問題,2.3.3 流水線技術(shù),ARM的流水線設(shè)計(jì)問題,3)流水線控制相關(guān)問題:,流水線遇到分支指令和其他會(huì)改變PC值的指令,暫停分支指令之后的所有指令,直到分支指令確定了新的PC值為止。,措施:,引入延時(shí)分支:直接跟在分支指令后面的指令被執(zhí)行,保證流水線處于滿的狀態(tài)。 盡早計(jì)算分支轉(zhuǎn)移成功時(shí)的PC值:通過采用一個(gè)專用加法器計(jì)算分支的目標(biāo)地址。,引入控制阻滯延時(shí) (分支損失),Instruction Fetch,Shift + ALU,Memory Access,Reg Write,Reg Read,Reg Deco

34、de,FETCH,DECODE,EXECUTE,MEMORY,WRITE,ARM9TDMI,ARM or ThumbInst Decode,Reg Select,Reg Read,Shift,ALU,Reg Write,ThumbARMdecompress,ARM decode,Instruction Fetch,FETCH,DECODE,EXECUTE,ARM7TDMI,三級(jí)流水線,五級(jí)流水線,2.3.3 指令流水線,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,指令 取指,移位+ ALU,寄存器 寫,寄存器 讀,寄存器 譯碼,FETCH,DECODE,EXECUTE,MEMORY,WRITE,ARM9T

35、DMI,ARM 或 Thumb指令解碼,ARM10,指令地址 生成,移位+ ALU,數(shù)據(jù) Cache 接口,寄存器 寫,FETCH,DECODE,EXECUTE,MEMORY,WRITE,寄存器 讀 + 結(jié)果 前向遷移 + 記分板,乘法,乘 加,協(xié)處理器 數(shù)據(jù)接口,分支 預(yù)測(cè),指令 取指,ISSUE,寄存器 訪問,數(shù)據(jù)+ 分支地址 生成,ARM 或 Thumb指令解碼,協(xié)處理器 指令發(fā)出,五級(jí)流水線,2.3.3 指令流水線,六級(jí)流水線,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ARM的流水線技術(shù),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.3.4 超標(biāo)量執(zhí)行,超標(biāo)量技術(shù):通過重復(fù)設(shè)置多套指令執(zhí)行部件,同時(shí)處理并

36、完成多條指令,實(shí)現(xiàn)并行操作來達(dá)到提高處理速度的目的。,控制,指令1,寄存器,指令單元,指令單元,指令2,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.3.4 超標(biāo)量執(zhí)行,超標(biāo)量技術(shù):超標(biāo)量CPU采用多條流水線結(jié)構(gòu)。,執(zhí)行1,取指,指令,譯碼2,譯碼1,執(zhí)行2,執(zhí)行1,取指,譯碼2,譯碼1,執(zhí)行2,流水線1,流水線2,數(shù)據(jù)回寫,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.4 存儲(chǔ)系統(tǒng)機(jī)制,軟件,嵌入式處理器,接口,接口,存儲(chǔ)器,板級(jí)支持包,嵌入式操作系統(tǒng),應(yīng)用程序,輸入,輸出,硬 件,軟 件,存放程序和數(shù)據(jù),ARM體系中的存儲(chǔ)空間,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.4 .1ARM存儲(chǔ)系統(tǒng),ARM體系使用單一的平

37、板地址空間。 地址空間大小 個(gè)8位的字節(jié)。 其單元地址為無符號(hào)的32位數(shù),范圍為0,ARM體系的也可視為地址空間大小 個(gè)32位的字。 其單元地址為無符號(hào)的30位數(shù),范圍為0,地址為A的字?jǐn)?shù)據(jù)包括A,A+1,A+2,A+3中的4字節(jié)內(nèi)容,ARM體系的也可視為地址空間大小 個(gè)16位的半字。 其單元地址為無符號(hào)的31位數(shù),范圍為0,地址為A的字?jǐn)?shù)據(jù)包括A,A+1中的2字節(jié)內(nèi)容,ARM處理器支持一下6種數(shù)據(jù)類型:,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.4 .1ARM存儲(chǔ)系統(tǒng),8位有符號(hào)和無符號(hào)字節(jié);,16位有符號(hào)和無符號(hào)半字;(2字節(jié)邊界對(duì)齊),32位有符號(hào)和無符號(hào)字;(4字節(jié)邊界對(duì)齊),ARM操作面向

38、32位操作數(shù),以字為單位對(duì)齊;,Thumb操作面向16位操作數(shù),以半字為單位對(duì)齊;,ARM體系結(jié)構(gòu)將存儲(chǔ)器看作是從零地址開始的字節(jié)的線性組合。從零字節(jié)到三字節(jié)放置第一個(gè)存儲(chǔ)的字?jǐn)?shù)據(jù),從第四個(gè)字節(jié)到第七個(gè)字節(jié)放置第二個(gè)存儲(chǔ)的字?jǐn)?shù)據(jù),依次排列。 作為32位的微處理器,ARM體系結(jié)構(gòu)所支持的最大尋址空間為4GB(232字節(jié))。,ARM體系結(jié)構(gòu)的存儲(chǔ)器格式,2.4.1 ARM存儲(chǔ)系統(tǒng),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,ARM體系結(jié)構(gòu)可以用兩種方法存儲(chǔ)字?jǐn)?shù)據(jù),稱之為大端格式和小端格式。 大端格式(big-endian):字?jǐn)?shù)據(jù)的高字節(jié)存儲(chǔ)在低地址中,而字?jǐn)?shù)據(jù)的低字節(jié)則存放在高地址中,中國礦業(yè)大學(xué)信息與電氣

39、工程學(xué)院,ARM體系結(jié)構(gòu)的存儲(chǔ)器格式(大端),2.4 .1ARM存儲(chǔ)系統(tǒng),小端格式(little-endian):與大端存儲(chǔ)格式相反。低地址中存放的是字?jǐn)?shù)據(jù)的低字節(jié),高地址存放的是字?jǐn)?shù)據(jù)的高字節(jié)。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.4 .1ARM存儲(chǔ)系統(tǒng),ARM體系結(jié)構(gòu)的存儲(chǔ)器格式(小端),ARM 可以用 little/big endian 格式存取數(shù)據(jù).,r0 = 0 x11223344,STR r0, r1,LDRB r2, r1,r1 = 0 x00,Memory,3 2 1 0,0 1 2 3,Byte Lane,31,24,23,16,15,8,7,0,11,22,33,44,31

40、,24,23,16,15,8,7,0,44,33,22,11,31,24,23,16,15,8,7,0,11,22,33,44,31,24,23,16,15,8,7,0,00,00,00,44,31,24,23,16,15,8,7,0,00,00,00,11,Little endian,Big endian,R2 = 0 x44,R2 = 0 x11,2.4 .1ARM存儲(chǔ)系統(tǒng),中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.4.2高速緩沖存儲(chǔ)器,cache能夠減少內(nèi)存平均訪問時(shí)間。 Cache可以分為統(tǒng)一cache和獨(dú)立的數(shù)據(jù)程序cache。 當(dāng)CPU更新了cache的內(nèi)容時(shí),要將結(jié)果寫回到主存中,可以

41、采用寫通法(write-through)和寫回法(write-back)。 寫通法是指CPU在執(zhí)行寫操作時(shí),必須把數(shù)據(jù)同時(shí)寫入cache和主存。采用寫通法進(jìn)行數(shù)據(jù)更新的cache稱為寫通cache。 寫回法是指CPU在執(zhí)行寫操作時(shí),被寫的數(shù)據(jù)只寫入cache不寫入主存。僅當(dāng)需要替換時(shí),才把已經(jīng)修改的cache塊寫回到主存中。采用寫回法進(jìn)行數(shù)據(jù)更新的cache稱為寫回cache。,當(dāng)進(jìn)行數(shù)據(jù)寫操作時(shí),cache分為兩類:讀操作分配cache和寫操作分配cache 。 對(duì)于讀操作分配cache,當(dāng)進(jìn)行數(shù)據(jù)寫操作時(shí),如果cache未命中,只是簡單地將數(shù)據(jù)寫入主存中。主要在數(shù)據(jù)讀取時(shí),才進(jìn)行cache

42、內(nèi)容預(yù)取。 對(duì)于寫操作分配cache,當(dāng)進(jìn)行數(shù)據(jù)寫操作時(shí),如果cache未命中,cache系統(tǒng)將會(huì)進(jìn)行cache內(nèi)容預(yù)取,從主存中將相應(yīng)的塊讀取到cache中相應(yīng)的位置,并執(zhí)行寫操作,把數(shù)據(jù)寫入到cache中。,2.4.3存儲(chǔ)管理單元,MMU(Memory Manage Unit, 存儲(chǔ)管理單元)在CPU和物理內(nèi)存之間進(jìn)行地址轉(zhuǎn)換,將地址從邏輯空間映射到物理空間,這個(gè)轉(zhuǎn)換過程一般稱為內(nèi)存映射。 MMU主要完成以下工作: (1)虛擬存儲(chǔ)空間到物理存儲(chǔ)空間的映射。 (2)存儲(chǔ)器訪問權(quán)限的控制。 (3)設(shè)置虛擬存儲(chǔ)空間的緩沖的特性。,2.4.4存儲(chǔ)器系統(tǒng)的層次結(jié)構(gòu),在這種存儲(chǔ)器分層結(jié)構(gòu)中,上面一層的

43、存儲(chǔ)器作為下一層存儲(chǔ)器的高速緩存。 CPU寄存器就是cache的高速緩存,寄存器保存來自cache的字; cache又是內(nèi)存層的高速緩存,從內(nèi)存中提取數(shù)據(jù)送給CPU進(jìn)行處理,并將CPU的處理結(jié)果返回到內(nèi)存中; 內(nèi)存又是主存儲(chǔ)器的高速緩存,它將經(jīng)常用到的數(shù)據(jù)從Flash等主存儲(chǔ)器中提取出來,放到內(nèi)存中,從而加快了CPU的運(yùn)行效率。 嵌入式系統(tǒng)的主存儲(chǔ)器容量是有限的,磁盤、光盤或CF、SD卡等外部存儲(chǔ)器用來保存大信息量的數(shù)據(jù)。 在某些帶有分布式文件系統(tǒng)的嵌入式網(wǎng)絡(luò)系統(tǒng)中,外部存儲(chǔ)器就作為其他系統(tǒng)中被存儲(chǔ)數(shù)據(jù)的高速緩存。,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,1)按在系統(tǒng)中的地位分類,存儲(chǔ)器部件的幾種分類

44、,主存儲(chǔ)器(Main Memory),(內(nèi)存、主存),輔助存儲(chǔ)器(Auxiliary Memory、Secondary Memory),(外存、輔存),CPU直接訪問,速度快,用于存放系統(tǒng)軟件、參數(shù)以及當(dāng)前要運(yùn)行的應(yīng)用軟件和數(shù)據(jù)、系統(tǒng)軟件的部分軟件。,速度慢,存放全部應(yīng)用軟件及剩余系統(tǒng)軟件。,通過專門設(shè)備將數(shù)據(jù)先置于內(nèi)存,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2)按信息存取方式分類,2.4 存儲(chǔ)系統(tǒng)機(jī)制,存儲(chǔ)器部件的幾種分類,隨機(jī)存取存儲(chǔ)器RAM,只讀存儲(chǔ)器ROM,Randomly Access Memory,Read Only Memory,掩膜式ROM,可編程只讀存儲(chǔ)器PROM,可改寫的只讀存儲(chǔ)器EPROM,靜態(tài)RAM,動(dòng)態(tài)RAM,準(zhǔn)靜態(tài)RAM,按功能分,按信息存儲(chǔ)的方式分,中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,2.4 存儲(chǔ)系統(tǒng)機(jī)制,Flash ROM,MX 29 LV 040 C T C 70 G,Options: G: Lead-free package R: Restricted VCC(3.0V3.6V) Q: Restricted VCC(3.0V3.6V) with Lead-free package,Speed: 5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論