ARM體系結(jié)構(gòu)之:ARM體系結(jié)構(gòu)的特點(diǎn)
2.1 ARM體系結(jié)構(gòu)的特點(diǎn)
ARM內(nèi)核采用精簡(jiǎn)指令集結(jié)構(gòu)(RISC,Reduced Instruction Set Computer)體系結(jié)構(gòu)。RISC技術(shù)產(chǎn)生于上世紀(jì)70年代。其目標(biāo)是設(shè)計(jì)出一套能在高時(shí)鐘頻率下單周期執(zhí)行、簡(jiǎn)單而有效的指令集,RISC的設(shè)計(jì)重點(diǎn)在于降低硬件執(zhí)行指令的復(fù)雜度,這是因?yàn)檐浖扔布菀滋峁└蟮撵`活性和更高的智能。與其相對(duì)的傳統(tǒng)復(fù)雜指令級(jí)計(jì)算機(jī)(CISC)則更側(cè)重于硬件執(zhí)行指令的功能性,使CISC指令變得更復(fù)雜。
RISC的設(shè)計(jì)思想主要有以下特性。
· Load/Store體系結(jié)構(gòu)。
Load/Store體系結(jié)構(gòu)也稱為寄存器/寄存器體系結(jié)構(gòu)或者RR系統(tǒng)結(jié)構(gòu)。在這類機(jī)器中,操作數(shù)和運(yùn)算結(jié)果不是通過(guò)主存儲(chǔ)器直接取回而是借用大量標(biāo)量和矢量寄存器來(lái)取回的。與RR體系結(jié)構(gòu)相反,還有一種存儲(chǔ)器/存儲(chǔ)器體系結(jié)構(gòu),在這種體系結(jié)構(gòu)中,源操作數(shù)的中間值和最后的運(yùn)算結(jié)果是直接從主存儲(chǔ)器中取回的。這類機(jī)器的縮寫符號(hào)是SS體系結(jié)構(gòu)。
· 固定長(zhǎng)度指令。
固定長(zhǎng)度指令使得機(jī)器譯碼變得比較容易。由于指令簡(jiǎn)單,需要更多的指令來(lái)完成相同的工作,但是隨著存儲(chǔ)器存取速度的提高,處理器可以更快地執(zhí)行較大代碼段(即大量指令)。
· 硬聯(lián)控制。
RISC機(jī)以硬聯(lián)控制指令為特點(diǎn),而CISC的微代碼指令則相反。使用CISC(常常是可變長(zhǎng)度的)指令集時(shí)處理器的語(yǔ)義效率最大,而簡(jiǎn)單指令往往容易被機(jī)器翻譯。像CISC那樣通過(guò)執(zhí)行較少指令來(lái)完成工作未必省時(shí),因?yàn)檫€要包括微代碼譯碼所需要的時(shí)間。因此,由硬件實(shí)現(xiàn)指令在執(zhí)行時(shí)間方面提供了更好的平衡。除此之外,還節(jié)省了芯片上用于存儲(chǔ)微代碼的空間并且消除了翻譯微代碼所需的時(shí)間。
· 流水線。
指令的處理過(guò)程被拆分為幾個(gè)更小的、能夠被流水線并行執(zhí)行的單元。在理想情況下,流水線每周期前進(jìn)一步,可獲得更高的吞吐率。
· 寄存器。
RICS處理器擁有更多的通用寄存器,每個(gè)寄存器都可存放數(shù)據(jù)或地址。寄存器可為所有的數(shù)據(jù)操作提供快速的局部存儲(chǔ)訪問(wèn)。
表2.1總結(jié)了RISC和CISC之間主要的區(qū)別。
表2.1 RISC和CISC之間主要的區(qū)別
指 標(biāo) | RISC | CISC |
指令集 | 一個(gè)周期執(zhí)行一條指令,通過(guò)簡(jiǎn)單指令的組合實(shí)現(xiàn)復(fù)雜操作;指令長(zhǎng)度固定 | 指令長(zhǎng)度不固定,執(zhí)行需要多個(gè)周期 |
流水線 | 流水線每周期前進(jìn)一步 | 指令的執(zhí)行需要調(diào)用微代碼的一個(gè)微程序 |
寄存器 | 更多通用寄存器 | 用于特定目的的專用寄存器 |
Load/Store結(jié)構(gòu) | 獨(dú)立的Load和Store指令完成數(shù)據(jù)在寄存器和外部存儲(chǔ)器之間的傳輸 | 處理器能夠直接處理存儲(chǔ)器中的數(shù)據(jù) |
存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理
矢量控制相關(guān)文章:矢量控制原理
評(píng)論