- 嵌入式系統(tǒng)技術(shù)應(yīng)用與開(kāi)發(fā)
- 陸淵章 徐敏主編
- 1532字
- 2022-05-07 18:24:24
2.1.2 ARM微處理器架構(gòu)
ARM微處理器的架構(gòu)是構(gòu)建每個(gè)ARM處理器的基礎(chǔ)。ARM架構(gòu)隨著時(shí)間的推移不斷發(fā)展,其中包含的架構(gòu)功能可滿足不斷增長(zhǎng)的新功能、高性能需求以及新興市場(chǎng)的需要。
1.精簡(jiǎn)指令集計(jì)算機(jī)
早期的計(jì)算機(jī)采用復(fù)雜指令集計(jì)算機(jī)(Complex Instruction Set Computer,CISC)體系,如Intel公司的x86系列CPU。在CISC指令集的各種指令中,大約有20%的指令會(huì)被反復(fù)使用,占整個(gè)程序代碼的80%。而余下的80%的指令卻不經(jīng)常使用,在程序設(shè)計(jì)中只占20%。在CISC中有許多復(fù)雜的指令,雖然通過(guò)增強(qiáng)指令系統(tǒng)的功能簡(jiǎn)化了軟件,但增加了硬件的復(fù)雜程度。在VLSI制造工藝中,要求CPU控制邏輯具有規(guī)整性,而CISC為了實(shí)現(xiàn)大量復(fù)雜的指令,控制邏輯極不規(guī)整,給VLSI工藝造成很大困難。
精簡(jiǎn)指令集計(jì)算機(jī)(Reduced Instruction Set Computer,RISC)體系結(jié)構(gòu)優(yōu)先選取使用頻率最高的簡(jiǎn)單指令,避免復(fù)雜指令;將指令長(zhǎng)度固定,指令格式和尋址方式種類減少,以控制邏輯為主,不用或少用微碼控制等。RISC是在CISC的基礎(chǔ)上產(chǎn)生并發(fā)展起來(lái)的,RISC通過(guò)簡(jiǎn)化指令系統(tǒng)使計(jì)算機(jī)的結(jié)構(gòu)更加簡(jiǎn)單合理,運(yùn)算效率更高。
RISC結(jié)構(gòu)優(yōu)先選取使用頻率最高的簡(jiǎn)單指令,避免復(fù)雜指令;固定指令長(zhǎng)度,減少指令格式和尋址方式種類;以控制邏輯為主。到目前為止,RISC體系結(jié)構(gòu)還沒(méi)有嚴(yán)格的定義,采用RISC架構(gòu)的ARM微處理器一般具有如下特點(diǎn)。
1)支持Thumb(16位)、ARM(32位)雙指令集,能很好地兼容8位/16位元器件。Thumb指令集比通常的8位和16位CISC/RISC處理器具有更好的代碼密度。
2)指令執(zhí)行采用3級(jí)/5級(jí)流水線技術(shù)。
3)帶有指令Cache和數(shù)據(jù)Cache且大量使用寄存器,指令執(zhí)行速度更快,大多數(shù)數(shù)據(jù)操作都在寄存器中完成;尋址方式靈活簡(jiǎn)單,執(zhí)行效率高;指令長(zhǎng)度固定(在ARM狀態(tài)下是32位,在Thumb狀態(tài)下是16位)。
4)支持大端格式和小端格式兩種方法存儲(chǔ)字?jǐn)?shù)據(jù)。
5)支持字節(jié)(Byte,8位)、半字(Halfword,16位)和字(Word,32位)3種數(shù)據(jù)類型。
6)支持用戶、快中斷、中斷、管理、中止、系統(tǒng)和未定義7種處理器模式,除了用戶模式外,其余的均為特權(quán)模式。
7)處理器芯片上都嵌入了在線仿真ICE-RT邏輯,便于通過(guò)JTAG來(lái)仿真調(diào)試ARM體系結(jié)構(gòu)芯片,可以避免使用昂貴的在線仿真器。另外,在處理器核中還可以嵌入跟蹤宏單元ETM,用于監(jiān)控內(nèi)部總線,實(shí)時(shí)跟蹤指令和數(shù)據(jù)的執(zhí)行。
8)具有片上總線協(xié)議(Advanced Micro-controller Bus Architecture,AMBA)。通過(guò)AMBA可以方便地?cái)U(kuò)充各種處理器及I/O,可以把DSP、其他處理器和I/O(如UART、定時(shí)器和接口等)都集成在一塊芯片中。
這些在基本RISC結(jié)構(gòu)上的特性使ARM嵌入式微處理器在高性能、低代碼規(guī)模、低功耗和小的硅片尺寸方面取得了良好的平衡。
ARM經(jīng)典處理器包括ARM11、ARM9和ARM7處理器系統(tǒng)。這些處理器在全球范圍內(nèi)仍被廣泛授權(quán),為當(dāng)今眾多應(yīng)用領(lǐng)域提供經(jīng)濟(jì)有效的解決方案。ARM處理器的推出時(shí)間已超過(guò)15年,ARM7TDMI仍是市場(chǎng)上應(yīng)用較廣的32位處理器。
2.哈佛(Harvard)結(jié)構(gòu)
在ARM7以前,處理器采用的是馮·諾依曼結(jié)構(gòu),從ARM9以后的處理器多采用哈佛結(jié)構(gòu)。哈佛結(jié)構(gòu)的主要特點(diǎn)是將程序和數(shù)據(jù)存儲(chǔ)在不同的存儲(chǔ)空間中,即程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器是兩個(gè)相互獨(dú)立的存儲(chǔ)器,每個(gè)存儲(chǔ)器獨(dú)立編址、獨(dú)立訪問(wèn)。系統(tǒng)中具有程序的數(shù)據(jù)總線與地址總線,以及數(shù)據(jù)的數(shù)據(jù)總線與地址總線。這種分離的程序總線和數(shù)據(jù)總線可允許在一個(gè)機(jī)器周期內(nèi)同時(shí)獲取指令字(來(lái)自程序存儲(chǔ)器)和操作數(shù)(來(lái)自數(shù)據(jù)存儲(chǔ)器),從而提高了執(zhí)行速度及數(shù)據(jù)的吞吐率。又由于程序和數(shù)據(jù)存儲(chǔ)器在兩個(gè)分開(kāi)的物理空間中,因此取址和執(zhí)行能完全重疊,具有較高的執(zhí)行效率。
3.流水線技術(shù)
流水線技術(shù)應(yīng)用于計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的各個(gè)方面,其基本思想是將一個(gè)重復(fù)的時(shí)序分解成若干個(gè)子過(guò)程,而每個(gè)子過(guò)程都可以有效地在其專用功能段上與其他子過(guò)程同時(shí)執(zhí)行。指令流水線就是將一條指令分解成一連串執(zhí)行的子過(guò)程。例如,把指令的執(zhí)行過(guò)程細(xì)分為取指令、指令譯碼和執(zhí)行3個(gè)過(guò)程。在CPU中,把一條指令的串行執(zhí)行子過(guò)程變?yōu)槿舾蓷l指令的子過(guò)程在CPU中重疊執(zhí)行。
- 用Proteus可視化設(shè)計(jì)玩轉(zhuǎn)Arduino
- TinyML:基于TensorFlow Lite在Arduino和超低功耗微控制器上部署機(jī)器學(xué)習(xí)
- 單片機(jī)應(yīng)用項(xiàng)目化教程
- 嵌入式Qt實(shí)戰(zhàn)教程
- 嵌入式Linux接口開(kāi)發(fā)技術(shù)
- 零起點(diǎn)學(xué)Proteus單片機(jī)仿真技術(shù)
- 嵌入式系統(tǒng)設(shè)計(jì)與實(shí)踐:Linux篇
- 單片機(jī)原理與應(yīng)用技術(shù)
- 單片機(jī)原理與接口技術(shù)
- 單片機(jī)應(yīng)用技術(shù)實(shí)訓(xùn)指導(dǎo)
- C51單片機(jī)項(xiàng)目設(shè)計(jì)實(shí)踐教程(第2版)
- 我和PIC單片機(jī):基于PIC18
- 零基礎(chǔ)學(xué)西門子S7- 200 SMART PLC編程及應(yīng)用
- 單片機(jī)原理與應(yīng)用技術(shù)
- 51單片機(jī)應(yīng)用開(kāi)發(fā)案例手冊(cè)