版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
本章將對ARM技術(shù)進(jìn)行全面論述,通過本章的學(xué)習(xí),使大家對ARM技術(shù)有個(gè)全面的了解和掌握,建立起以ARM技術(shù)為基礎(chǔ)的嵌入式系統(tǒng)應(yīng)用和以ARM核為基礎(chǔ)的嵌入式SoC芯片設(shè)計(jì)的技術(shù)基礎(chǔ)。第二章ARM技術(shù)概述
本章的主要內(nèi)容為:
2.1ARM體系結(jié)構(gòu)的發(fā)展歷史和技術(shù)特征2.2ARM體系結(jié)構(gòu)不同版本的發(fā)展概述2.3Thumb技術(shù)介紹2.4ARM處理器工作狀態(tài)2.5ARM處理器工作模式2.6ARM寄存器組成2.7ARM異常中斷2.8ARM組織結(jié)構(gòu)簡介2.9ARM存儲(chǔ)器接口及存儲(chǔ)器層次2.10ARM協(xié)處理器2.11ARM片上總線AMBA2.12ARM的調(diào)試結(jié)構(gòu)2.13ARM核綜述2.14基于ARM核的芯片選擇
2.1ARM體系結(jié)構(gòu)的發(fā)展歷史和技術(shù)特征2.1.1ARM發(fā)展的歷程 2.1.2ARM體系結(jié)構(gòu)的技術(shù)特征最近10多年來ARM技術(shù)的突出成果表現(xiàn)在:使用“Thumb”的新型壓縮指令格式,使得應(yīng)用系統(tǒng)開發(fā)可降低系統(tǒng)成本和功耗;ARM9、ARM10、Strong-ARM和ARM11等系列處理器的開發(fā),顯著地提高了ARM的性能,使得ARM技術(shù)在面向高端數(shù)字音、視頻處理等多媒體產(chǎn)品的應(yīng)用中更加廣泛;更好的軟件開發(fā)和調(diào)試環(huán)境,加快用戶產(chǎn)品開發(fā);更為廣泛的產(chǎn)業(yè)聯(lián)盟使得基于ARM的嵌入式應(yīng)用領(lǐng)域更加廣闊;嵌入在復(fù)雜SoC中、基于ARM核的調(diào)試系統(tǒng)代表著當(dāng)今片上調(diào)試技術(shù)的前沿。 2.1.1ARM發(fā)展的歷程第一片ARM處理器是1983年10月到1985年4月間在位于英國劍橋的AcornComputer公司開發(fā)。1990年,為廣泛推廣ARM技術(shù)而成立了獨(dú)立的公司。20世紀(jì)90年代,ARM快速進(jìn)入世界市場。 ARM發(fā)展的歷程在ARM的發(fā)展歷程中,從ARM7開始,ARM核被普遍認(rèn)可和廣泛使用。1995年StrongARM問世。XScale是下一代StrongARM芯片的發(fā)展基礎(chǔ)。ARM10TDMI是ARM處理器核中的高端產(chǎn)品。ARM11是ARM家族中性能最強(qiáng)的一個(gè)系列。ARM技術(shù)還將不斷發(fā)展。在嵌入式領(lǐng)域,ARM已取得了極大的成功,造就了IP核商業(yè)化、市場化的神話,迄今為止,還沒有任何商業(yè)化的IP核交易和使用達(dá)到ARM的規(guī)模。據(jù)最新統(tǒng)計(jì),全球有103家巨型IT公司在采用ARM技術(shù),20家最大的半導(dǎo)體廠商中有19家是ARM的用戶,包括德州儀器,意法半導(dǎo)體,Philips,Intel等。ARM系列芯片已經(jīng)被廣泛的應(yīng)用于移動(dòng)電話、手持式計(jì)算機(jī)以及各種各樣的嵌入式應(yīng)用領(lǐng)域,成為世界上銷量最大的32位微處理器。 ARM發(fā)展的歷程ARM的體系結(jié)構(gòu)采用了若干BerkeleyRISC處理器設(shè)計(jì)中的特征Load/store體系結(jié)構(gòu)固定的32位指令地址指令格式也放棄了其它若干BerkeleyRISC特征寄存器窗口延遲轉(zhuǎn)移所有的指令單周期執(zhí)行 2.2ARM體系結(jié)構(gòu)的技術(shù)特征2.2.1ARM體系結(jié)構(gòu)的基本版本 2.2.2ARM體系結(jié)構(gòu)的演變 2.2.3ARM體系結(jié)構(gòu)的命名規(guī)則
2.2ARM體系結(jié)構(gòu)不同版本的發(fā)展概述版本1,,本版本本包括下下列指令令:乘法指令令之外的的基本數(shù)數(shù)據(jù)處理理指令;;基于字節(jié)節(jié),字和和多字的的存儲(chǔ)器器訪問操操作指令令(Load/Store);子程序調(diào)調(diào)用指令令BL在內(nèi)的跳跳轉(zhuǎn)指令令;完成系統(tǒng)統(tǒng)調(diào)用的的軟件中中斷指令令SWI。。體系結(jié)構(gòu)構(gòu)的基本本版本版本2,,與版版本1相相比版本本2(2a)增加了下下列指令令:乘和乘加加指令;;支持協(xié)處處理器的的指令;;對于FIQ模式,提提供了額額外的影影子寄存存器;SWP指令及SWPB指令。ARM體系結(jié)構(gòu)構(gòu)的基本本版本版本3較較以前的的版本發(fā)發(fā)生了大大的變化化地址空間間擴(kuò)展到到了32位,但但除了版版本3G外的其他他版本是是向前兼兼容的,,也支持持26位位的地址址空間;;分開的當(dāng)當(dāng)前程序序狀態(tài)寄寄存器CPSR(CurrentProgramStatusRegister))和備份的的程序狀狀態(tài)寄存存器SPSR(SavedProgramStatusRegister),SPSR用于在程程序異常常中斷時(shí)時(shí)保存被被中斷的的程序狀狀態(tài);增加了兩兩種異常常模式,,使操作作系統(tǒng)代代碼可以以方便地地使用數(shù)數(shù)據(jù)訪問問中止異異常、指指令預(yù)取取中止異異常和未未定義指指令異常常;增加了MRS指令和MSR指令用于于完成對對CPSR和SPSR寄存器的的讀寫。。修改了原原來的從從異常中中返回的的指令。。ARM體系結(jié)構(gòu)構(gòu)的基本本版本版本4。。與版本本3相比比,版本本4增加加了下列列指令有符號(hào)、、無符號(hào)號(hào)的半字字和有符符號(hào)字節(jié)節(jié)的load和store指令。增加了T變種,處處理器可可以工作作于Thumb狀態(tài),在在該狀態(tài)態(tài)下的指指令集是是16位位的Thumb指令集。。增加了處處理器的的特權(quán)模模式。在在該模式式下,使使用的是是用戶模模式下的的寄存器器。ARM體系結(jié)構(gòu)構(gòu)的基本本版本版本5主主要由兩兩個(gè)變型型版本5T、5TE組成相比與版版本4,,版本5的指令令集有了了如下的的變化::提高了T變種中ARM/Thumb混合使用用的效率率。增加前導(dǎo)導(dǎo)零記數(shù)數(shù)(CLZ))指令,該該指令可可使整數(shù)數(shù)除法和和中斷優(yōu)優(yōu)先級(jí)排排隊(duì)操作作更為有有效;增加了BKPT(軟件斷點(diǎn)點(diǎn))指令令;為協(xié)處理理器設(shè)計(jì)計(jì)提供了了更多的的可供選選擇的指指令;更加嚴(yán)格格地定義義了乘法法指令對對條件碼碼標(biāo)志位位的影響響。ARM體系結(jié)構(gòu)構(gòu)的基本本版本ARM體系版本本6是2001年發(fā)布布的。新新架構(gòu)v6在降低耗耗電量的的同時(shí)還還強(qiáng)化了了圖形處處理性能能。通過過追加有有效進(jìn)行行多媒體體處理的的SIMD功能,將將語音及及圖像的的處理功功能提高高到了原原機(jī)型的的4倍。。ARM體系版本本6首先先在2002年年春季發(fā)發(fā)布的ARM11處理器器中使使用。。除此此之外外,v6還支持持多微微處理理器內(nèi)內(nèi)核。。ARM體系結(jié)結(jié)構(gòu)的的基本本版本本ARM體系結(jié)結(jié)構(gòu)總總結(jié)核體系結(jié)構(gòu)ARM1V1ARM2V2ARM2aS,ARM3V2aARM6,ARM600,ARM610V3ARM7,ARM700,ARM710V3ARM7TDMI,ARM710T,ARM720TARM740TV4TStrongARM,ARM8,ARM810V4ARM9TDMI,ARM920T,ARM940TV4TARM9E-SV5TEARM10TDMI,ARM1020EV5TEARM11,ARM1156T2-S,ARM1156T2F-S,ARM1176JZ-S,ARM11JZF-SV6ARM體系結(jié)結(jié)構(gòu)的的基本本版本本1)Thumb指令集集(T變種))Thumb指令集集是把把32位的的ARM指令集集的一一個(gè)子子集重重新編編碼后后而形形成的的一個(gè)個(gè)特殊殊的16位位的指指令集集2)長長乘指指令((M變種))長乘指指令是是一種種生成成64位相相乘結(jié)結(jié)果的的乘法法指令令(此此指令令為ARM指令)),M變種增增加了了兩條條長乘乘指令令體系結(jié)結(jié)構(gòu)的的演變變3)增增強(qiáng)型型DSP指令((E變種))E變種的的ARM體系增增加了了一些些增強(qiáng)強(qiáng)處理理器對對典型型的DSP算法處處理能能力的的附加加指令令。4)Java加速器器Jazelle(J變種))ARM的Jazelle技術(shù)是是Java語言和和先進(jìn)進(jìn)的32位位RISC芯片完完美結(jié)結(jié)合的的產(chǎn)物物。。5)ARM媒體功功能擴(kuò)擴(kuò)展((SIMD變種))ARM體系結(jié)結(jié)構(gòu)的的演變變表示ARM/Thumb體系版版本的的命名名格式式的ARM/Thumb體系版版本由由下面面幾部部分組組成的的:基本字字符串串ARMv。。基本字字符串串后為為ARM指令集集版本本號(hào),,目前前是1-6的數(shù)數(shù)字字字符。。ARM指令集集版本本號(hào)后后為表表示所所含變變種的的字符符。由由于在在ARM體系版版本4以后后,M變種成成為系系統(tǒng)的的標(biāo)準(zhǔn)準(zhǔn)部件件,所所以字字符M通常也也不單單獨(dú)列列出來來。最后使使用的的字符符x表示排排除某某種功功能。。體系結(jié)結(jié)構(gòu)的的命名名規(guī)則則ARM的RISC體系結(jié)結(jié)構(gòu)的的發(fā)展展中已已經(jīng)提提供了了低功功耗、、小體體積、、高性性能的的方案案。而而為了了解決決代碼碼長度度的問問題,,ARM體系結(jié)結(jié)構(gòu)又又增加加了TT變種種,開開發(fā)了了一種種新的的指令令體系系,這這就是是Thumb指令集集,它它是ARM技術(shù)的的一大大特色色。的技術(shù)術(shù)概述述的技術(shù)術(shù)實(shí)現(xiàn)現(xiàn)技術(shù)的的特點(diǎn)點(diǎn)2.3Thumb技術(shù)介介紹Thumb是ARM體系結(jié)結(jié)構(gòu)的的擴(kuò)展展。它它有從從標(biāo)準(zhǔn)準(zhǔn)32位ARM指令集集抽出出來的的36條指指令格格式,,可以以重新新編成成16位的的操作作碼。。這能能帶來來很高高的代代碼密密度ARM7TDMI是第一一個(gè)支支持Thumb的核,,支持持Thumb的核僅僅僅是是ARM體系結(jié)結(jié)構(gòu)的的一種種發(fā)展展的擴(kuò)擴(kuò)展,,所以以編譯譯器既既可以以編譯譯Thumb代碼,,又可可以編編譯ARM代碼支持Thumb的ARM體系結(jié)結(jié)構(gòu)的的處理理器狀狀態(tài)可可以方方便的的切換換、運(yùn)運(yùn)行到到Thumb狀態(tài),,在該該狀態(tài)態(tài)下指指令集集是16位位的Thumb指令集集。。的技術(shù)術(shù)概述述在性能能和代代碼大大小之之間取取得平平衡,,在需需要較較低的的存儲(chǔ)儲(chǔ)代碼碼時(shí)采采用Thumb指令系系統(tǒng),,但有有比純純粹的的16位系系統(tǒng)有有較高高的實(shí)實(shí)現(xiàn)性性能,,因?yàn)闉閷?shí)際際執(zhí)行行的是是32位指指令,,用Thumb指令編編寫最最小代代碼量量的程程序,,卻取取得以以ARM代碼執(zhí)執(zhí)行的的最好好性能能技術(shù)的的特點(diǎn)點(diǎn)與ARM指令集集相比比.Thumb指令集集具有有以下下局限限完成相相同的的操作作,Thumb指令通通常需需要更更多的的指令令,因因此在在對系系統(tǒng)運(yùn)運(yùn)行時(shí)時(shí)間要要求苛苛刻的的應(yīng)用用場合合ARM指令集集更為為適合合;Thumb指令集集沒有有包含含進(jìn)行行異常常處理理時(shí)需需要的的一些些指令令,因因此在在異常常中斷斷時(shí),,還是是需要要使用用ARM指令,,這種種限制制決定定了Thumb指令需需要和和ARM指令配配合使使用。。Thumb技術(shù)的的特點(diǎn)點(diǎn)ARM處理器器核可可以工工作在在以下下2種種狀態(tài)態(tài)1)ARM狀態(tài)32位位,ARM狀態(tài)下下執(zhí)行行字對對準(zhǔn)的的32位ARM指令;;2)Thumb狀態(tài)16位位,Thumb狀態(tài)下下執(zhí)行行半字字對準(zhǔn)準(zhǔn)的16位位Thumb指令。。在Thumb狀態(tài)下下,程程序計(jì)計(jì)數(shù)器器PC使用位位1選選擇另另一個(gè)個(gè)半字字。2.4ARM處理器器工作作狀態(tài)態(tài)在程序序執(zhí)行行的過過程中中,處處理器器可以以在兩兩種狀狀態(tài)下下切換換。。ARM和Thumb之間狀狀態(tài)的的切換換不影影響處處理器器的模模式或或寄存存器的的內(nèi)容容。ARM指令集集和Thumb指令集集都有有相應(yīng)應(yīng)的狀狀態(tài)切切換命命令。。ARM處理器器在開開始執(zhí)執(zhí)行代代碼時(shí)時(shí),只只能處處于ARM狀態(tài)。。ARM處理器器工作作狀態(tài)態(tài)ARM處理器器在兩兩種工工作狀狀態(tài)之之間切切換方方法::進(jìn)入Thumb狀態(tài)::當(dāng)操作作數(shù)寄寄存器器Rm的狀態(tài)態(tài)位bit[0]為1時(shí)時(shí),執(zhí)執(zhí)行BXRm指令進(jìn)進(jìn)入Thumb狀態(tài)((指令令詳細(xì)細(xì)介紹紹見第第三章章)。。如果果處理理器在在Thumb狀態(tài)進(jìn)進(jìn)入異異常,,則當(dāng)當(dāng)異常常處理理(IRQ,F(xiàn)IQ,Undef,Abort和SWI)返回時(shí)時(shí),自自動(dòng)切切換到到Thumb狀態(tài)。。ARM處理器器工作作狀態(tài)態(tài)進(jìn)入ARM狀態(tài)::當(dāng)操作作數(shù)寄寄存器器Rm的狀態(tài)態(tài)位bit[0]為0時(shí)時(shí),執(zhí)執(zhí)行BXRm指令進(jìn)進(jìn)入ARM狀態(tài)。。如果果處理理器進(jìn)進(jìn)行異異常處處理((IRQ,F(xiàn)IQ,Undef,Abort和SWI),,在此情情況下下,把把PC放入異異常模模式鏈鏈接寄寄存器器LR中,從從異常常向量量地址址開始始執(zhí)行行也可可以進(jìn)進(jìn)入ARM狀態(tài)。。CPSR((當(dāng)前程程序狀狀態(tài)寄寄存器器)的的低5位用用于定定義當(dāng)當(dāng)前操操作模模式,如如圖示示:2.5ARM處理器器工作作模式式除用戶戶模式式外的的其他他6種種模式式稱為為特權(quán)權(quán)模式式。。特權(quán)模模式中中除系系統(tǒng)模模式以以外的的5種種模式式又稱稱為異異常模模式,,即::FIQ(FastInterruptRequest))IRQ(InterruptReQuest)SVC(Supervisor))中止((Abort)未定義義(Undefined)ARM處理器器工作作模式式寄存器器組成成概述述狀態(tài)下下的寄寄存器器組織織狀態(tài)下下的寄寄存器器組織織2.6ARM寄存器器組成成ARM處理器器總共共有37個(gè)個(gè)寄存存器,,可以以分為為以下下兩類類寄存存器::1)31個(gè)通用用寄存存器::R0~~R15;;R13_svc、R14_svc;R13_abt、R14_abt;R13_und、R14_und;R13_irq、R14_irq;R8_frq-R14_frq。。2)6個(gè)狀態(tài)態(tài)寄存存器CPSR;;SPSR_svc、SPSR_abt、、SPSR_und、SPSR_irq和SPSR_fiq。寄存器器組成成概述述1)ARM狀態(tài)的的寄存存器簡簡介::ARM狀態(tài)下下的寄寄存器器組織織:狀態(tài)下下的寄寄存器器組織織2)ARM狀態(tài)的的通用用寄存存器不分組組寄存存器((Theunbankedregisters))R0~R7分組寄存器器(Thebankedregisters)): R8~R14程序計(jì)數(shù)器器:R15(PC)ARM狀態(tài)下的寄寄存器組織織不分組寄存存器R0~R7R0~R7是不分組寄寄存器。這這意味著在在所有處理理器模式下下,它們每每一個(gè)都訪訪問的是同同一個(gè)物理理寄存器。。它們是真真正并且在在每種狀態(tài)態(tài)下都統(tǒng)一一的通用寄寄存器。未分組寄存存器沒有被被系統(tǒng)用于于特別的用用途,任何何可采用通通用寄存器器的應(yīng)用場場合都可以以使用未分分組寄存器器,但必須須注意對同同一寄存器器在不同模模式下使用用時(shí)的數(shù)據(jù)據(jù)保護(hù)。。ARM狀態(tài)下的寄寄存器組織織分組寄存器器R8-R14:分組寄存器器R8-R12:FIQ模式分組寄寄存器R8~R12。FIQ以外的分組組寄存器R8~R12。分組寄存器器R13、R14寄存器R13通常用做堆堆棧指針SP。寄存器R14用作子程序序鏈接寄存存器(LinkRegister-LR)),也稱為LR。ARM狀態(tài)下的寄寄存器組織織程序計(jì)數(shù)器器R15:寄存器R15被用作程序序計(jì)數(shù)器,,也稱為PC。R15值的改變將將引起程序序執(zhí)行順序序的變化,,這有可能能引起程序序執(zhí)行中出出現(xiàn)一些不不可預(yù)料的的結(jié)果。。ARM處理器采用用多級(jí)流水水線技術(shù),,因此保存存在R15的程序地址址并不是當(dāng)當(dāng)前指令的的地址。。一些指令對對于R15的用法有一一些特殊的的要求。。ARM狀態(tài)下的寄寄存器組織織3)ARM程序狀態(tài)寄寄存器所有處理器器模式下都都可以訪問問當(dāng)前的程程序狀態(tài)寄寄存器CPSR。。CPSR包含條件碼碼標(biāo)志、中中斷禁止位位、當(dāng)前處處理器模式式以及其它它狀態(tài)和控控制信息。。在每種異常常模式下都都有一個(gè)對對應(yīng)的物理理寄存器——程序狀態(tài)保保存寄存器器SPSR。。當(dāng)異常出現(xiàn)現(xiàn)時(shí),SPSR用于保存CPSR的狀態(tài),以以便異常返返回后恢復(fù)復(fù)異常發(fā)生生時(shí)的工作作狀態(tài)。ARM狀態(tài)下的寄寄存器組織織ARM狀態(tài)下的寄寄存器組織織CPSR和SPSR的格式在ARM體系結(jié)構(gòu)中中,異常中中斷用來處處理軟件中中斷、未定定義指令陷陷阱(它不不是真正的的“意外”事件)及系系統(tǒng)復(fù)位功功能(它在在邏輯上發(fā)發(fā)生在程序序執(zhí)行前而而不是在程程序執(zhí)行中中,盡管處處理器在運(yùn)運(yùn)行中可能能再次復(fù)位位)和外部部事件,這這些“不正?!笔录急粍潉潥w“異?!?,因?yàn)樵谔幪幚砥鞯目乜刂茩C(jī)制中中,它們都都使用同樣樣的流程進(jìn)進(jìn)行異常處處理。2.7ARM的異常中斷斷ARM的異常中斷斷響應(yīng)過程程;從異常中斷斷處理程序序中返回;;異常中斷向向量表;異常中斷的的優(yōu)先級(jí);;ARM的異常中斷斷ARM處理器對異異常中斷的的響應(yīng)過程程如下:將CPSR的內(nèi)容保存存到將要執(zhí)執(zhí)行的異常常中斷對應(yīng)應(yīng)的SPSR中。設(shè)置當(dāng)前狀狀態(tài)寄存器器CPSR中的相應(yīng)位位將引起異常常指令的下下一條指令令的地址保保存到新的的異常工作作模式的R14。給程序計(jì)數(shù)數(shù)器(PC)強(qiáng)制賦值。。ARM的異常中斷斷響應(yīng)過程程每個(gè)異常模模式對應(yīng)有有兩個(gè)寄存存器R13_<mode>、R14_<mode>分別保存相相應(yīng)模式下下的堆棧指指針、返回回地址;堆堆棧指針可可用來定義義一個(gè)存儲(chǔ)儲(chǔ)區(qū)域保存存其它用戶戶寄存器,,這樣異常常處理程序序就可以使使用這些寄寄存器。FIQ模式還有額額外的專用用寄存器R8_fiq~R12_fiq,使用這些寄寄存器可以以加快快速速中斷的處處理速度。。ARM的異常中斷斷響應(yīng)過程程從異常中斷斷處理程序序中返回時(shí)時(shí),需要執(zhí)執(zhí)行以下四個(gè)基基本操作::所有修改過過的用戶寄寄存器必須須從處理程程序的保護(hù)護(hù)堆棧中恢恢復(fù)(即出出棧)。將SPSR_mode寄存器內(nèi)容容復(fù)制到CPSR中,使得CPSR從相應(yīng)的SPSR中恢復(fù),即即恢復(fù)被中中斷的程序序工作狀態(tài)態(tài)。根據(jù)異常類類型將PC變回到用戶戶指令流中中相應(yīng)指令令處。最后清除CPSR中的中斷禁禁止標(biāo)志位位I/F。從異常中斷斷處理程序序中返回中斷向量表表中指定了了各異常中中斷與其處處理程序的的對應(yīng)關(guān)系系。每個(gè)異常中中斷對應(yīng)的的中斷向量量表的4個(gè)個(gè)字節(jié)的空空間中存放放一個(gè)跳轉(zhuǎn)轉(zhuǎn)指令或者者一個(gè)向PC寄存器中賦賦值的數(shù)據(jù)據(jù)訪問指令令。存儲(chǔ)器的前前8個(gè)字中中除了地址址0x00000014之外,全部部被用作異異常矢量地地址。異常中斷向向量表當(dāng)幾個(gè)異常常中斷同時(shí)時(shí)發(fā)生時(shí),,在ARM中通過給各各異常中斷斷賦予一定定的優(yōu)先級(jí)級(jí)來實(shí)現(xiàn)處處理次序::復(fù)位(最高高優(yōu)先級(jí)));數(shù)據(jù)異常中中止;FIQ;IRQ;預(yù)取指異常常中止;SWI、,,未定義指令令(包括缺缺協(xié)處理器器)。異常中斷的的優(yōu)先級(jí)三級(jí)流水線線ARM的組織五級(jí)流水線線ARM的組織2.8ARM典型流水線線技術(shù)簡介介1)ARM的3級(jí)流水水線介紹到ARM7為止的ARM處理器使用用的簡單3級(jí)流水線線分別為::取指級(jí);;譯碼級(jí);;執(zhí)行級(jí);;三級(jí)流水線線ARM的組織2)ARM3級(jí)流水線下下PC的行為在3級(jí)流水水線的執(zhí)行行過程中,,當(dāng)通過R15寄存器直接接訪問PC時(shí),必須考考慮到此時(shí)時(shí)流水線的的執(zhí)行過程程的真實(shí)情情況三級(jí)流水線的PC行為三級(jí)流水線線ARM的組織使用5級(jí)流流水線的ARM處理器包含含下面5個(gè)個(gè)流水線級(jí)級(jí):取指譯碼執(zhí)行緩沖\數(shù)據(jù)據(jù)回寫五級(jí)流水線線ARM的組織多級(jí)存儲(chǔ)器器使它包括括一個(gè)容量量小但速度度快的從存存儲(chǔ)器和一一個(gè)容量大大但速度慢慢的主存儲(chǔ)儲(chǔ)器,根據(jù)據(jù)典型程序序的實(shí)驗(yàn)統(tǒng)統(tǒng)計(jì),這個(gè)個(gè)存儲(chǔ)器系系統(tǒng)的外部部行為在絕絕大部分時(shí)時(shí)間象一個(gè)個(gè)即大又快快的存儲(chǔ)器器。這個(gè)容容量小但速速度快的元元件是Cache,它自動(dòng)地保保存處理器器經(jīng)常用到到的指令和和數(shù)據(jù)的拷拷貝。本節(jié)首先對對ARM支持的存儲(chǔ)儲(chǔ)數(shù)據(jù)類型型和處理器器中數(shù)據(jù)存存儲(chǔ)格式進(jìn)進(jìn)行介紹,,在此基礎(chǔ)礎(chǔ)上介紹了了ARM存儲(chǔ)器的接接口設(shè)計(jì),,主要包括括存儲(chǔ)器接接口、Cache、MMU和保護(hù)單元元,建立起起ARM處理器的整整個(gè)存儲(chǔ)體體系的概念念和設(shè)計(jì)方方法。2.9ARM存儲(chǔ)器接口口及存儲(chǔ)器器層次2.9.1ARM存儲(chǔ)數(shù)據(jù)類類型和存儲(chǔ)儲(chǔ)格式2.9.2ARM的存儲(chǔ)器層層次簡介2.9.3ARM存儲(chǔ)系統(tǒng)簡簡介ARM存儲(chǔ)器接口口及存儲(chǔ)器器層次ARM處理器支持持以下6種種數(shù)據(jù)類型型:8位有符號(hào)號(hào)和無符號(hào)號(hào)字節(jié)。16位有符符號(hào)和無符符號(hào)半字,,它們以兩兩字節(jié)的邊邊界定位。。32位有符符號(hào)和無符符號(hào)字,它它們以4字字節(jié)的邊界界定位。存儲(chǔ)數(shù)據(jù)類類型和存儲(chǔ)儲(chǔ)格式存儲(chǔ)器組織織在以字字節(jié)為單位位尋址的存存儲(chǔ)器中有有“小端”和“大端”兩種方式存存儲(chǔ)字,這這兩種方式式是根據(jù)最最低有效字字節(jié)與相鄰鄰較高有效效字節(jié)相比比是存放在在較低的還還是較高的的地址來劃劃分的,兩兩種存儲(chǔ)方方式如圖所所示。ARM存儲(chǔ)數(shù)據(jù)類類型和存儲(chǔ)儲(chǔ)格式寄存器組片上RAM片上Cache主存儲(chǔ)器硬盤2.9.2ARM的存儲(chǔ)器層層次簡介ARM通過增加硬硬件協(xié)處理理器來支持持對其指令令集的通用用擴(kuò)展,通通過未定義義指令陷阱阱支持這些些協(xié)處理器器的軟件仿仿真。簡單單的ARM核提供板級(jí)級(jí)協(xié)處理器器接口,因因此協(xié)處理理器可以作作為一個(gè)獨(dú)獨(dú)立的元件件接入。最常使用的的協(xié)處理器器是用于控控制片上功功能的系統(tǒng)統(tǒng)協(xié)處理器器,例如控控制ARM720上的高速緩緩存Cache和存儲(chǔ)器管管理單元MMU等。ARM也開發(fā)了浮浮點(diǎn)協(xié)處理理器,也可可以支持其其它的片上上協(xié)處理器器。ARM體系結(jié)構(gòu)支支持通過增增加協(xié)處理理器來擴(kuò)展展指令集的的機(jī)制。2.10ARM協(xié)處理器先進(jìn)的微控控制器總線線體系結(jié)構(gòu)構(gòu)AMBA是ARM公司公布的的總線標(biāo)準(zhǔn)準(zhǔn)AHB(AdvancedHigh-performanceBus):用于連接高高性能系統(tǒng)統(tǒng)模塊。它它支持突發(fā)發(fā)數(shù)據(jù)傳輸輸方式及單單個(gè)數(shù)據(jù)傳傳輸方式,,所有時(shí)序序參考同一一個(gè)時(shí)鐘沿沿。ASB(AdvancedSystemBus)::用于連接高高性能系統(tǒng)統(tǒng)模塊,它它支持突發(fā)發(fā)數(shù)據(jù)傳輸輸模式。APB(AdvancePeripheralBus):是一個(gè)簡單單接口支持持低性能的的外圍接口口。2.11ARM片上總線AMBA嵌入式調(diào)試試調(diào)試處理器器核ARM調(diào)試硬件EmbeddedICE2.12ARM的調(diào)試結(jié)構(gòu)構(gòu)在高性能的的32位嵌嵌入式SoC設(shè)計(jì)中,幾幾乎都是以以ARM作為處理器器核。ARM核已是現(xiàn)在在嵌入式SoC系統(tǒng)芯片的的核心,也也是現(xiàn)代嵌嵌入式系統(tǒng)統(tǒng)發(fā)展的方方向。ARM處理器核作作為基本處處理單元,,根據(jù)發(fā)展展需求還集集成了與處處理器核密密切相關(guān)的的功能模塊塊,如Cache存儲(chǔ)器和存存儲(chǔ)器管理理MMU硬件,這些些基于微處處理器核并并集成這些些IP核的標(biāo)準(zhǔn)配配置的ARM核都具有基基本“CPU”的配置,這這些內(nèi)核稱稱為CPU核。2.13ARM核綜述ARM處理器核當(dāng)當(dāng)前有6個(gè)個(gè)系列產(chǎn)產(chǎn)品:ARM7ARM9ARM9EARM10E,SecurCoreARM11Intel公司推出的的:StrongARMXScaleARM核綜述2.13.1ARM7系列核介紹紹2.13.2ARM9系列核介介紹系列核和XScale系列核系列核ARM核綜述ARM7TDMI是ARM公司最早早為業(yè)界界普遍認(rèn)認(rèn)可且得得到了最最為廣泛泛應(yīng)用的的處理器器核,特特別是在在手機(jī)和和PDA中,隨著著ARM技術(shù)的發(fā)發(fā)展,它它已是目目前最低低端的ARM核。ARM7:32位ARM體系結(jié)構(gòu)構(gòu)4T版本;T:“Thumb”16位壓縮指指令集;;D:支持片上上Debug(調(diào)試),,使處理理器能夠夠停止以以響應(yīng)調(diào)調(diào)試請求求;M:增強(qiáng)型Multiplier,與前代相相比具有有較高的的性能且且產(chǎn)生64位的的結(jié)果;;I:“EmbeddedICE”硬件以支支持片上上斷點(diǎn)和和觀察點(diǎn)點(diǎn)。系列核介介紹1)ARM7TDMI組織結(jié)::ARM7TDMI重要的特特性有實(shí)現(xiàn)ARM體系結(jié)構(gòu)構(gòu)版本4T,支持64位結(jié)果果的乘法法,半字字、有符符號(hào)字節(jié)節(jié)存??;;支持Thumb指令集,,可降低低系統(tǒng)開開銷;32×8DSP乘法器;;32位尋尋址空間間-4GB線性地址址空間;;它包含了了EmbeddedICE模塊以支支持嵌入入式系統(tǒng)統(tǒng)調(diào)試;;調(diào)試硬件件由JTAG測試訪問問端口訪訪問,因因此JTAG控制邏輯輯被認(rèn)為為是處理理器核的的一部分分。廣泛的ARM和第三方方支持,,并與ARM9Thumb系列ARM10Thumb系列和StrongARM處理器相相兼容。。ARM7系列核介介紹2)ARM7TDMI硬件接口口按接口信信號(hào)的功功能劃分分為存儲(chǔ)儲(chǔ)器接口口、MMU接口、片片上調(diào)試試、JTAG邊界掃描描擴(kuò)展以以及時(shí)鐘鐘接口等等十四類類接口信信號(hào)。各各接口信信號(hào)包括括接口信信號(hào)和接接口控制制信號(hào)ARM7TDMI核的外圍圍硬件接接口信號(hào)號(hào)圖ARM7系列核介介紹3)綜合合的ARM7TDMI-ARM7TDMI-SARM7TDMI-S是ARM7TDMI的一個(gè)可可綜合的的版本,,它是以以高級(jí)語語言描述述的“軟”IP核,可以以根據(jù)用用戶選擇擇的目標(biāo)標(biāo)工藝的的單元庫庫來進(jìn)行行邏輯綜綜合和物物理實(shí)現(xiàn)現(xiàn),它比比“硬”的IP核更易于于轉(zhuǎn)移到到新的工工藝技術(shù)術(shù)上實(shí)現(xiàn)現(xiàn)。綜合出的的整個(gè)核核比“硬”核大50%,電電源效率率降低50%。。同時(shí)ARM7TDMI-S在綜合過過程中存存在支持持關(guān)于處處理器核核功能的的選項(xiàng),,這些選選項(xiàng)會(huì)導(dǎo)導(dǎo)致綜合合出處理理器核較較小而且且的功能能有所下下降。ARM7系列核介介紹4)ARM7TDMI應(yīng)用ARM7TDMI處理器核核在存儲(chǔ)儲(chǔ)器配置置較簡單單的系統(tǒng)統(tǒng)中廣泛泛應(yīng)用,,最為成成功的典典型例子子是手機(jī)機(jī)、PDA,,在此應(yīng)用用中,ARM7TDMI已成為用用于控制制和用戶戶接口功功能的事事實(shí)上的的標(biāo)準(zhǔn)處處理器。。當(dāng)需要要實(shí)現(xiàn)高高性能時(shí)時(shí),具有有簡單存存儲(chǔ)器系系統(tǒng)單純純的ARM7TDMI已不能滿滿足,系系統(tǒng)的復(fù)復(fù)雜程度度必然要要增加。。往往是是在ARM7TDMI上增加Cache存儲(chǔ)器、、以ARMCPU核的形式式增加軟軟件從片片外存儲(chǔ)儲(chǔ)器讀、、寫性能能。ARM7系列核介介紹ARM8核是從1993年到1996年開發(fā)發(fā)的,并并開發(fā)了了具有片片上Cache及存儲(chǔ)器器管理單單元高性性能ARMCPU芯片以滿滿足比ARM7的3級(jí)流流水線更更高性能能的ARM核的需求求。ARM9TDMI將流水線線的級(jí)數(shù)數(shù)從ARM7TDMI的3級(jí)增增加到5級(jí),并并使用分分開的指指令與數(shù)數(shù)據(jù)存儲(chǔ)儲(chǔ)器的Harvard體系結(jié)構(gòu)構(gòu)。ARM9TDMI的性能在在相同工工藝條件件下近似似達(dá)到ARM7TDMI兩倍系列核介介紹1)ARM9TDMI技術(shù)特點(diǎn)點(diǎn)支持Thumb指令集;;含有EmbeddedICE模塊支持持片上調(diào)調(diào)試;通過采用用5級(jí)流流水線以以增加最最高時(shí)鐘鐘速率;;分開的指指令與數(shù)數(shù)據(jù)存儲(chǔ)儲(chǔ)器端口口以改善善CPI,,提高處理理器性能能。系列核介介紹2)ARM9TDMI組織ARM9內(nèi)核采用用了與后后面要講講到的StrongARM相同的5級(jí)流水水線。ARM9TDMI與StrongARM核的主要要區(qū)別在在于StrongARM有一個(gè)與與寄存器器讀出級(jí)級(jí)并行操操作的專專用的轉(zhuǎn)轉(zhuǎn)移加法法器進(jìn)行行轉(zhuǎn)移地地址計(jì)算算,而ARM9TDMI使用數(shù)據(jù)據(jù)路徑中中的ALU來計(jì)算轉(zhuǎn)轉(zhuǎn)移目標(biāo)標(biāo)地址。ARM9系列核介介紹3)ARM9TDMI的流水線線操作ARM9內(nèi)核采用用了與后后面要講講到的StrongARM相同的5級(jí)流水水線。ARM9TDMI與StrongARM核的主要要區(qū)別在在于StrongARM有一個(gè)與與寄存器器讀出級(jí)級(jí)并行操操作的專專用的轉(zhuǎn)轉(zhuǎn)移加法法器進(jìn)行行轉(zhuǎn)移地地址計(jì)算算,而ARM9TDMI使用數(shù)據(jù)據(jù)路徑中中的ALU來計(jì)算轉(zhuǎn)轉(zhuǎn)移目標(biāo)標(biāo)地址。。ARM9系列核介介紹4)Thumb解碼和存存儲(chǔ)器讀讀寫5)協(xié)處處理器支支持6)片上上調(diào)試7)低電電壓操作作8)ARM9TDMI應(yīng)用9)ARM9E-S及ARM946E-S和ARM966E-SARM9系列核介介紹ARM10TDMI屬于ARM處理器核核中的高高端處理理器核,,ARM10TDMI的性能在在相同工工藝條件件下近似似達(dá)到也也以ARM9TDMI的兩倍性性能工作作。ARM1020E/ARM10200是基于ARM10TDMI核設(shè)計(jì)的的高性能能CPU核。增加最高高時(shí)鐘速速率。系列核1995年,ARM、、Apple、、DEC公司聯(lián)合合聲明將將開發(fā)一一種應(yīng)用用于PDA的高性能能、低功功耗、基基于ARM體系結(jié)構(gòu)構(gòu)的StrongARM微處理器器。StrongARM主要特點(diǎn)點(diǎn)有:具有寄存存器前推推的5級(jí)級(jí)流水線線;除64位位乘法、、多寄存存器傳送送和存儲(chǔ)儲(chǔ)器/寄寄存器交交換指令令外,其其它所有有普通指指令均是是單周期期指令;;16KB、32路相聯(lián)的的指令Cache,每行32字節(jié);;16KB、32路相聯(lián)的的寫回式式數(shù)據(jù)Cache,每行32字節(jié);;分開的32數(shù)據(jù)據(jù)項(xiàng)的指指令和數(shù)數(shù)據(jù)地址址變換后后備緩沖沖器;和XScale系列核8數(shù)據(jù)項(xiàng)項(xiàng)的寫緩緩沖器,,每個(gè)數(shù)數(shù)據(jù)項(xiàng)16個(gè)字字節(jié);低功耗的的偽靜態(tài)態(tài)操作。。StrongARM的乘法部部件很有有特色。。不論處處理器的的時(shí)鐘速速率有多多高,乘乘法器以以每周期期計(jì)算12位,,用1~3個(gè)時(shí)時(shí)鐘周期期計(jì)算兩兩個(gè)32位操作作數(shù)的乘乘積。對對于數(shù)字字信號(hào)處處理性能能要求很很高的應(yīng)應(yīng)用來說說,StrongARM的高速乘乘法器有有很大的的潛力。。微處理器器使用系系統(tǒng)控制制協(xié)處理理器CP15來管理片片上MMU和Cache資源,并并且集成成了JTAG邊界掃描描測試電電路以支支持印制制板連接接測試。。(沒有有實(shí)現(xiàn)器器件內(nèi)部部電路測測試的JTAG“in-test”指令)。。StrongARM和XScale系列核StrongARM的五級(jí)流流水線取指(從從指令Cache)。。指令譯碼碼及寄存存器讀;;轉(zhuǎn)移目目標(biāo)計(jì)算算及執(zhí)行行。移位及ALU操作,包包括數(shù)據(jù)據(jù)傳送的的存儲(chǔ)器器地址計(jì)計(jì)算。數(shù)據(jù)Cache訪問結(jié)果寫回回到寄存存器文件件寄存器前前推通路路將中間間結(jié)果傳傳給下一一條指令令,以避避免讀后后寫冒險(xiǎn)險(xiǎn)引起的的寄存器器互鎖停停頓。從下一條條指令的的取指級(jí)級(jí)傳送PC+4的PC通路給出出當(dāng)前指指令的PC+8,作為r15并用于轉(zhuǎn)轉(zhuǎn)移目標(biāo)標(biāo)計(jì)算。。StrongARM和XScale系列核StrongARM處理器流流水線的的特點(diǎn)要在一個(gè)個(gè)周期內(nèi)內(nèi)完成寄寄存器控控制的移移位和基基址加變變址尋址址存儲(chǔ)操操作,寄寄存器需需要有三三個(gè)讀端端口。要在一個(gè)個(gè)周期內(nèi)內(nèi)完
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025廣東湛江市麻章區(qū)大學(xué)生鄉(xiāng)村醫(yī)生專項(xiàng)計(jì)劃招聘7人備考筆試題庫及答案解析
- 2026年中國林業(yè)集團(tuán)有限公司校園招聘(廣東11人)模擬筆試試題及答案解析
- 2025江西吉安市泰和縣新睿人力資源服務(wù)有限公司面向社會(huì)招聘項(xiàng)目制人員5人模擬筆試試題及答案解析
- 2025遼寧沈陽盛京資產(chǎn)管理集團(tuán)有限公司所屬子公司沈陽華海錕泰投資有限公司所屬子公司招聘5人參考考試題庫及答案解析
- 2025上海對外經(jīng)貿(mào)大學(xué)公開招聘工作人員備考筆試題庫及答案解析
- 2025湖南衡陽市衡陽縣湘南船山高級(jí)技工學(xué)校招聘專業(yè)技術(shù)人員6人參考筆試題庫附答案解析
- 2026上海銀清企業(yè)服務(wù)有限公司招聘備考筆試試題及答案解析
- 2025浙江溫州甌海招商發(fā)展有限公司招聘1人備考筆試題庫及答案解析
- 2025安徽皖新融資租賃有限公司服務(wù)人員招聘崗位核減備考筆試題庫及答案解析
- 2025年河南輕工職業(yè)學(xué)院招聘工作人員(博士)5名備考考試試題及答案解析
- 招投標(biāo)自查自糾報(bào)告
- 高校公寓管理述職報(bào)告
- HG-T 20583-2020 鋼制化工容器結(jié)構(gòu)設(shè)計(jì)規(guī)范
- 單位職工健康體檢總結(jié)報(bào)告
- 有序則安之現(xiàn)場定置管理技術(shù)
- V型濾池設(shè)計(jì)計(jì)算書2021
- 醫(yī)院護(hù)理培訓(xùn)課件:《老年患者靜脈輸液的治療與護(hù)理》
- 安全用電防止觸電主題教育PPT模板
- LY/T 1690-2017低效林改造技術(shù)規(guī)程
- 通信工程設(shè)計(jì)基礎(chǔ)doc資料
- 流體機(jī)械原理:05第四章 泵的汽蝕
評(píng)論
0/150
提交評(píng)論