




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第3節(jié) ARM處理器結(jié)構(gòu)ARM處理器結(jié)構(gòu)計(jì)算機(jī)體系結(jié)構(gòu)分類ARM和Thumb狀態(tài) RISC技術(shù)流水線技術(shù)超標(biāo)量技術(shù)計(jì)算機(jī)體系結(jié)構(gòu)分類兩種典型的結(jié)構(gòu) :馮諾依曼結(jié)構(gòu)哈佛體系結(jié)構(gòu)馮諾依曼結(jié)構(gòu)馮諾依曼機(jī):將數(shù)據(jù)和指令都存儲在存儲器中的計(jì)算機(jī)。計(jì)算系統(tǒng)由一個中央處理單元(CPU)和一個存儲器組成。存儲器擁有數(shù)據(jù)和指令,并且可以根據(jù)所給的地址對它進(jìn)行讀或?qū)?。因此程序指令和?shù)據(jù)的寬度相同;如:Intel 8086、ARM7、MIPS處理器等哈佛體系結(jié)構(gòu)哈佛機(jī):為數(shù)據(jù)和程序提供了各自獨(dú)立的存儲器。程序計(jì)數(shù)器只指向程序存儲器而不指向數(shù)據(jù)存儲器,這樣做的后果是很難在哈佛機(jī)上編寫出一個自修改的程序 。獨(dú)立的程序存
2、儲器和數(shù)據(jù)存儲器為數(shù)字信號處理提供了較高的性能。指令和數(shù)據(jù)可以有不同的數(shù)據(jù)寬度;具有較高的效率;如摩托羅拉公司的MC68系列、Zilog公司的Z8系列、ARM10系列等ARM7使用馮諾依曼體系結(jié)構(gòu)。ARM 9使用哈佛體系結(jié)構(gòu)。中央處理器首先到程序指令存儲器中讀取程序指令內(nèi)容,解碼后得到數(shù)據(jù)地址,再到相應(yīng)的數(shù)據(jù)存儲器中讀取數(shù)據(jù),并進(jìn)行下一步的操作(通常是執(zhí)行)。程序指令存儲和數(shù)據(jù)存儲分開,可以使指令和數(shù)據(jù)有不同的數(shù)據(jù)寬度,如Microchip公司的PIC16芯片的程序指令是14位寬度,而數(shù)據(jù)是8位寬度。 哈佛結(jié)構(gòu)的微處理器通常具有較高的執(zhí)行效率。其程序指令和數(shù)據(jù)指令分開組織和存儲的,執(zhí)行時可以預(yù)
3、先讀取下一條指令。目前使用哈佛結(jié)構(gòu)的中央處理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,還有摩托羅拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安謀公司的ARM9、ARM10和ARM11,51單片機(jī)也屬于哈佛結(jié)構(gòu)ARM和Thumb狀態(tài)V4版以后有:(1)32位ARM指令集(2)16位Thumb指令集,功能是ARM指令集的功能子集。ARM7TDMI核以后,T變種的ARM微處理器有兩種工作狀態(tài):(1)ARM狀態(tài)(2)Thumb狀態(tài)。當(dāng)ARM微處理器執(zhí)行32位的ARM指令集時,工作在ARM狀態(tài);當(dāng)ARM微處理器執(zhí)行16位的Thumb指令集時
4、,工作在Thumb狀態(tài)Thumb技術(shù)介紹ARM7體系結(jié)構(gòu)被廣泛應(yīng)用的時候,嵌入式控制器的市場仍然由8位、16位處理器占領(lǐng)。這些產(chǎn)品不能滿足高端應(yīng)用。這些應(yīng)用需要32位RISC處理器的性能和更優(yōu)于16位CISC處理器的代碼密度。為了解決代碼密度的問題,ARM增加了T變種。Thumb從32位ARM指令集中抽出來的36條指令格式,可重新編成16位的操作碼。在運(yùn)行時,16位的Thumb指令又由處理器解壓成32位指令。Thumb核有2套獨(dú)立的指令集,它使設(shè)計(jì)者得到ARM32位指令性能的同時,又能享有Thumb指令集產(chǎn)生的代碼方面的優(yōu)勢,在性能和代碼大小之間取得平衡。和ARM指令集相比,Thumb指令集具
5、有以下的局限:完成相同的操作,Thumb指令通常需要更多的指令,因此在對系統(tǒng)運(yùn)行時間要求苛刻的場合,ARM指令集更為合適。Thumb指令集沒有包含進(jìn)行異常處理時需要的一些指令,因此在異常中斷時,還是需要使用ARM指令,這種限制決定了Thumb指令需要與ARM指令配合使用。ARM與Thumb狀態(tài)轉(zhuǎn)換在程序的執(zhí)行過程中,微處理器可以隨時在兩種工作狀態(tài)之間切換,并且該轉(zhuǎn)變不影響處理器的工作模式和相應(yīng)寄存器中的內(nèi)容。進(jìn)入Thumb狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)位(位0)為1時,執(zhí)行BX指令。進(jìn)入ARM狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)位(位0)為0時,執(zhí)行BX指令。RISC技術(shù)嵌入式微處理器可以分為兩類:CISC
6、和RISC;CISC(Complex Instruction Set Computer):復(fù)雜指令系統(tǒng)計(jì)算機(jī);隨著計(jì)算機(jī)技術(shù)的發(fā)展而不斷引入新的復(fù)雜的指令集,計(jì)算機(jī)的體系結(jié)構(gòu)會越來越復(fù)雜。大約有20的指令會被反復(fù)使用,占整個程序代碼的80,而余下的80的指令卻不經(jīng)常使用,在程序設(shè)計(jì)中只占20 。RISC(Reduced Instruction Set Computer):精簡指令系統(tǒng)計(jì)算機(jī); 采用固定長度的指令格式 使用單周期指令 大量使用寄存器 可用加載/存儲指令批量傳輸數(shù)據(jù) 在循環(huán)處理中使用地址的自動增減RISC技術(shù)與CISC技術(shù)比較RISC技術(shù)ARM處理器采用加載/存儲(Load/Sto
7、re)體系結(jié)構(gòu)是典型的RISC處理器,即只有Load/Store的存/取指令可以訪問存儲器,其余指令都不允許進(jìn)行存儲器操作。RISC體系結(jié)構(gòu)基本特點(diǎn):(1)大多數(shù)指令只需要執(zhí)行簡單和基本的功能,其執(zhí)行過程在一個機(jī)器周期內(nèi)完成。(2)只保留加載/存儲指令。操作數(shù)由加載/存儲指令從存儲器取出放寄存器內(nèi)操作。(3)芯片邏輯不采用或少采用微碼技術(shù),而采用硬布線邏輯。(4)減少指令數(shù)和尋址方式。(5)指令格式固定,指令譯碼簡化。(6)優(yōu)化編譯。RISC技術(shù)ARM體系結(jié)構(gòu)還采用了一些特別的技術(shù):所有的指令都可根據(jù)前面的執(zhí)行結(jié)果決定是否被執(zhí)行,提高了指令的執(zhí)行效率??捎肔oad/Store指令批量傳輸數(shù)據(jù),
8、以提高數(shù)據(jù)的傳輸效率??稍谝粭l數(shù)據(jù)處理指令中同時完成邏輯處理和移位處理。RISC和CISC各有優(yōu)勢,界限并不那么明顯。現(xiàn)代的CPU往往采用CISC的外圍,內(nèi)部加入了RISC的特性,如超常指令集CPU就是融合了RISC和CISC的優(yōu)勢,成為未來的CPU發(fā)展方向之一。流水線技術(shù)是一種將每條指令分解為多步,并讓各步操作重疊,從而實(shí)現(xiàn)幾條指令并行處理的技術(shù);程序中的指令仍是一條條順序執(zhí)行,但可以預(yù)先取若干條指令,并在當(dāng)前指令尚未執(zhí)行完時,提前啟動后續(xù)指令的另一些操作步驟,從而可加快程序的運(yùn)行速度;開發(fā)和設(shè)計(jì)嵌入式系統(tǒng)的過程中,CPU的性能是一個非常重要的考慮因素。流水線技術(shù)是在本質(zhì)上影響程序執(zhí)行速度的
9、因素。由于計(jì)算機(jī)中一條指令的各個執(zhí)行階段相對獨(dú)立,因此,現(xiàn)代CPU大多設(shè)計(jì)成流水線型的機(jī)器,在這種類型機(jī)器中幾個指令可以并行執(zhí)行。采用流水線的重疊技術(shù)大大提高了CPU的運(yùn)行效率。當(dāng)流水線內(nèi)部的信息通暢流動時,CPU流水線能夠工作得最好。但實(shí)際應(yīng)用中,指令各執(zhí)行階段的操作時間長短不同,有一些指令序列可能會打斷流水線內(nèi)的信息流,所以有時流水線操作不十分通暢,會暫時降低CPU的執(zhí)行速度。單周期指令的執(zhí)行過程ARM的3級流水線ARM7架構(gòu)采用了一個3段的流水線:(1)取指:將指令從內(nèi)存中取出來。(2)譯碼:操作碼和操作數(shù)被譯碼以決定執(zhí)行什么功能。為下一周期準(zhǔn)備數(shù)據(jù)路徑需要的控制信號。這一級指令”占有“
10、譯碼邏輯,而不是”占有”數(shù)據(jù)路徑(3)執(zhí)行:執(zhí)行已譯碼的指令。指令占有數(shù)據(jù)路徑,寄存器堆棧被讀取,操作數(shù)在桶行移位器中被移位。ALU產(chǎn)生運(yùn)算結(jié)果并回寫到目的寄存器中,ALU結(jié)果根據(jù)指令需求更改狀態(tài)寄存器的條件位。流水線模式下PC的更改過程多周期ARM指令的3級流水線操作數(shù)據(jù)路徑涉及到所有執(zhí)行周期、地址計(jì)算和數(shù)據(jù)傳送。譯碼邏輯總是產(chǎn)生數(shù)據(jù)路徑在下一個周期使用的控制信號,因此除譯碼周期以外,在STR地址計(jì)算周期也產(chǎn)生數(shù)據(jù)傳送所需的控制信號。取指的存儲器訪問和執(zhí)行的數(shù)據(jù)路徑占用都是不可同時共享的資源,對于多周期指令來說,如果指令復(fù)雜以至于不能在單個時鐘周期內(nèi)完成執(zhí)行階段,就會產(chǎn)生流水線阻塞。ARM的
11、流水線設(shè)計(jì)問題1)縮短程序執(zhí)行時間:Tprog:執(zhí)行一個程序所需時間;Ninst:執(zhí)行該程序的指令條數(shù);CPI:執(zhí)行每條指令的平均時鐘周期數(shù);Fclk:處理器的時鐘頻率。措施:提高時鐘頻率fclk(導(dǎo)致流水線的級數(shù)增加 )。減少每條指令的平均時鐘周期數(shù)CPI(需要解決流水線的相關(guān)問題 )2)解決流水線相關(guān):結(jié)構(gòu)相關(guān):某些指令在流水線中重疊執(zhí)行時,產(chǎn)生資源沖突 。措施:1)采用分離式指令Cache和數(shù)據(jù)Cache。2)ALU中采用單獨(dú)加法器來完成地址計(jì)算。數(shù)據(jù)相關(guān):當(dāng)一條指令需要前面指令的執(zhí)行結(jié)果,而這些指令均在流水線中重疊執(zhí)行時,就可能引起流水線的數(shù)據(jù)相關(guān)。數(shù)據(jù)相關(guān)有“寫后讀”、“寫后寫”和“
12、讀后寫”等。措施:1)旁路技術(shù)。2)流水線互鎖技術(shù)??刂葡嚓P(guān):當(dāng)流水線遇到分支指令和其他會改變PC值的指令時,就會發(fā)生控制相關(guān)。措施:1)引入延時分支。2)盡早計(jì)算出分支轉(zhuǎn)移成功時的PC值(即分支的目標(biāo)地址)。ARM的5級流水線ARM9和StrongARM架構(gòu)都采用了5級流水線.增加了I-Cache和D-Cache,把存儲器的取指與數(shù)據(jù)存取分開;增加了數(shù)據(jù)寫回的專門通路和寄存器;把指令的執(zhí)行過程分割為5部分:取指:將指令從指令存儲器中取出,放入指令流水線中。指令譯碼:對指令進(jìn)行譯碼,從寄存器堆中讀取寄存器操作數(shù)。執(zhí)行:把一個操作數(shù)移位,產(chǎn)生ALU結(jié)果。如果指令是Load或Store,在ALU中計(jì)算存儲器的地址。數(shù)據(jù)緩存:如果需要,訪問數(shù)據(jù)存儲器;否則,ALU的結(jié)果只是簡單地緩沖一個時鐘周期,以便使所有指令具有同樣地流水線流程。寫回 :將指令產(chǎn)生地結(jié)果寫回到寄存器堆。流水線對比超標(biāo)量執(zhí)行通過重復(fù)設(shè)置多套指令執(zhí)行部件,同時處理并完成多條指令,實(shí)現(xiàn)并行操作,來達(dá)到提高處理速度的目的。所有ARM內(nèi)核,包括流行的ARM7、ARM9和ARM11等,都是單周期指令機(jī)。ARM公司下一代處理器將是每周期能處理多重指令的超標(biāo)量機(jī)。超標(biāo)量處理機(jī):一個時鐘周期內(nèi)同時執(zhí)行多條
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 城市文脈下的工業(yè)遺存空間改造設(shè)計(jì)研究
- 入駐超市合同范例
- 2025年心電監(jiān)測考試題及答案
- 代收賬務(wù)合同范例
- 2025年冷漠型人格測試題及答案
- 信息跨境傳輸合同范例
- 入股五萬合同范例
- 儀器購銷合同范例格式
- 遼寧省朝陽市2024-2025學(xué)年高一上學(xué)期期末語文試題(解析版)
- 公司司機(jī)風(fēng)險合同范例
- 【MOOC】機(jī)器學(xué)習(xí)-北京理工大學(xué) 中國大學(xué)慕課MOOC答案
- 《森林防火安全教育》主題班會 課件
- 《類風(fēng)濕專病數(shù)據(jù)集技術(shù)規(guī)范》 編制說明
- 麻醉機(jī)故障應(yīng)急預(yù)案演練
- 2024年同等學(xué)力申碩英語考試真題
- 2024-2030年實(shí)驗(yàn)室自動進(jìn)樣器行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 七年級信息技術(shù)教案下冊(合集6篇)
- 專題07說明文閱讀(中考??紵狳c(diǎn)題型)20篇(原卷版)-2023-2024學(xué)年九年級語文上學(xué)期期末(一模)真題分類匯編
- 風(fēng)險投資中的人工智能應(yīng)用
- DB5204T 10-2024 農(nóng)產(chǎn)品地理標(biāo)志質(zhì)量要求 紫云花豬
- 07FD02 防空地下室電氣設(shè)備安裝
評論
0/150
提交評論