嵌入式系统应用与开发_第二章_ARM架构(一)

上传人:fhgo****421 文档编号:248304358 上传时间:2024-10-23 格式:PPTX 页数:65 大小:387.89KB
返回 下载 相关 举报
嵌入式系统应用与开发_第二章_ARM架构(一)_第1页
第1页 / 共65页
嵌入式系统应用与开发_第二章_ARM架构(一)_第2页
第2页 / 共65页
嵌入式系统应用与开发_第二章_ARM架构(一)_第3页
第3页 / 共65页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第二章 ARM体系结构,ARM,公司是嵌入式,RISC,处理器的知识产权,IP,供应商,它为,ARM,架构处理器提供了,ARM,处理器内核,(,如,ARM7TDMI,、,ARM9TDMI,、,ARM10TDMI,等,),和,ARM,处理器核,(ARM710T/720T/740T,、,ARM920T/922T/940T,、,ARM926E/966E,及,ARM1020E,等,),。,2.1ARM,架,架构,的,的发,展,展,ARM,公司,(AdvancedRISCMachinesLimited),正式,成,成立,于,于,1990,年。,目,目前,ARM,架构,处,处理,器,器已,在,在高,性,性能,、,、低,功,功耗,、,、低,成,成本,的,的嵌,入,入式,应,应用,领,领域,占,占据,领,领先,地,地位,,已,占,占有75%左,右,右的,市,市场,。,。,ARM,架构,自,自诞,生,生至,今,今,已经,发,发生,了,了很,大,大的,演,演变,至今,已,已定,义,义,5,种不,同,同的,版,版本,:,:,1.V1,版架,构,构,该版,架,架构,只,只在,原,原型,机,机,ARM1,出现,过,过,其基,本,本性,能,能:,基,本,本的,数,数据,处,处理,指,指令,(,无乘,法,法,),字,节,节、,半,半字,和,和字,的,的,LOAD/STORE,指令,转,移,移指,令,令,包括,子,子程,序,序调,用,用及,链,链接,指,指令,软,件,件中,断,断指,令,令,寻,址,址空,间,间:,64M,字节,(2,26,),2.V2,版架,构,构,该版,架,架构,对,对,V1,版进,行,行了,扩,扩展,如,ARM2,与,ARM3(V2a,版,),架构,增加,了,了以,下,下功,能,能:,乘法和乘加指,令,令,支持协处理器,操,操作指令,快速中断模式,SWP/SWPB,的最基本存储器,与,与寄存器交换指,令,令,寻址空间:,64M,字节,3. V3,版架构,V3,版架构对,ARM,体系结构作为较,大,大的改动,把寻址空间增至,32,位,(4G,字节,),增加了当前程序,状,状态寄存器,CPSR(Current ProgramStatusRegister),和程序状态保存,寄,寄存器,SPSR(Saved Program Status Register),以便于异常,(Exception),的处理。增加了,中,中止,(Abort),和未定义二种处,理,理器模式。,ARM6,就采用该版架构,。,。指令集变化如,下,下:,增加了,MRS/MSR,指令,以访问新增的,CPSR/SPSR,寄存器,增加了从异常,处,处理返回的指令,功,功能。,4. V4,版架构,V4,版架构是目前应,用,用最广的,ARM,体系结构,对,V3,版架构进行了进,一,一步扩充,有的还引进了,16,位的,Thumb,指令集,使,ARM,使用更加灵活。,ARM7,、,ARM8,、,ARM9,和,StrongARM,都采用该版架构,。,。指令集中增加,了,了以下功能:,符号化和非符,号,号化半字及符号,化,化字节的存,/,取指令,增加了,16,位,Thumb,指令集,完善了软件中,断,断,SWI,指令的功能,处理器系统模,式,式引进特权方式,时,时使用用户寄存,器,器操作,把一些未使用,的,的指令空间捕获,为,为未定义指令,5. V5,版架构,这是最近推出,ARM,架构,在,V4,版基本上增加了,一,一些新的指令,ARM10,和,XScale,都采用该版架构,这些新增指令有,:,:,带有链接和交,换,换的转移,BLX,指令,计数前导零,CLZ,指令,BRK,中断指令,增加了信号处,理,理指令,(V5TE,版,),为协处理器增,加,加更多可选择的,指,指令,2.2 ARM,架,架构的特点,RISC(Reduced Instruction SetComputer) 型处理,器,器结构,尽量减少复杂功,能,能指令,每条指令在单机,器,器周期内执行,每条指令都是32bit,具有,多,多种操作功能,访问存储空间指,令,令采用LOAD/STORE结,构,构,采用cache,来,来提高存/取速,度,度,多寄存器结构,小知识:RISC体系结构,传统的CISC,(,(Complex InstructionSet Computer,复,杂,杂指令集计算机,),)结构越来越复,杂,杂。在CISC,指,指令集的各种指,令,令中,其使用频,率,率却相差悬殊,,大,大约有20的,指,指令会被反复使,用,用,占整个程序,代,代码的80。,而,而余下的80,的,的指令却不经常,使,使用,在程序设,计,计中只占20,,,,显然,这种结,构,构是不太合理的,。,。,指令类型,使用指令使用频度,数据传送类,43%,转/跳控制类,23%,算术运算类,15%,比较类,13%,逻辑运算类,5%,其他,1%,表2.1,典型指令使用频,度,度,小知识:RISC体系结构(续,二,二),1979年美国,加,加州大学伯克利,分,分校提出了RISC(Reduced Instruction Set Computer,,,,精简指令集计,算,算机)的概念,RISC并非只,是,是简单地去减少,指,指令,而是把着,眼,眼点放在了如何,使,使计算机的结构,更,更加简单合理地,提,提高运算速度上,。,。RISC结构,优,优先选取使用频,最,最高的简单指令,,,,避免复杂指令,;,;将指令长度固,定,定,指令格式和,寻,寻地方式种类减,少,少;以控制逻辑,为,为主,不用或少,用,用微码控制等措,施,施来达到上述目,的,的。,小知识:RISC体系结构(续,三,三),RISC体系结,构,构应具有如下特,点,点:,采用固定长度的,指,指令格式,指令,归,归整、简单、基,本,本寻址方式有2,3种。,使用单周期指令,,,,便于流水线操,作,作执行。,大量使用寄存器,,,,数据处理指令,只,只对寄存器进行,操,操作,只有加载/ 存储指令可,以,以访问存储器,,以,以提高指令的执,行,行效率。,现代的CPU往,往,往采用CISC,的,的外围,内部加,入,入了RISC的,特,特性,如超长指,令,令集CPU就是,融,融合了RISC,和,和CISC的优,势,势,成为未来的CPU发展方向,之,之一。,小知识:RISC体系结构(续,四,四),2.,Thumb指令,集,集,由于RISC型,处,处理器的指令功,能,能相对比较弱,ARM为了弥补,此,此不足,在新型ARM架构(V4T版以上)定,义,义了16位的Thumb指令集,。,。Thumb指,令,令集比通常的8,位,位和16位CISC/RISC,处,处理器具有更好,的,的代码密度,而,芯,芯片面积只增加6%。可以使程,序,序存储器更加小,。,。,Thumb指令,集,集为ARM指令,集,集的功能子集,,但,但与等价的ARM代码相比较,,可,可节省3040以上的存,储,储空间,同时具,备,备32位代码的,所,所有优点。,3.,多处理器状态模,式,式,ARM可以支持,用,用户、快中断、,中,中断、管理、中,止,止、系统和未定,义,义等七种处理器,模,模式,除了用户,模,模式外,其余的,均,均为特权模式。,这,这也是ARM的,特,特色之一,可以,大,大大提高ARM,处,处理器的效率。,表2.2 ARM version4 processormodes,4.,嵌入式在线仿真,调,调试,ARM架构的处,理,理器芯片都嵌入,了,了在线仿真ICERT逻辑,,便,便于通过了JTAG来仿真调试ARM架构芯片,。,。另外,在处理,器,器核中还可以嵌,入,入跟踪宏单元ETM(Embedded Trace Macrocell),,,,用于监控内部,总,总线,实时跟踪,指,指令和数据的执,行,行。,5.,灵活和方便的接,口,口,ARM架构具有,协,协处理器接口,,允,允许接16个协,处,处理器。,ARM处理器核,还,还具有片上总线OCB的AMBA。AMBA定,义,义了三组总线:,先,先进高性能总线AHB、先进系,统,统总线ASB和,先,先进外围总线APB。通过AMBA来方便扩充,各,各种处理器及I/O,可以把DSP、其他处理,器,器和I/O(如VART、定时,器,器和接口等)都,集,集成在一块芯片,中,中。,6.,低电压低功耗的,设,设计,ARM架构的设,计,计采用了以下一,些,些措施:,降低电源电压,,可,可工作在3.0V以下。,减少门的翻转次,数,数,当某个功能,电,电路不需要时禁,止,止门翻转。,减少门的数目,,即,即降低芯片的集,成,成度。,降低时钟频率,2.3 ARM,的,的分类,ARM微处理器,目,目前包括下面几,个,个系列,以及其,它,它厂商基于ARM体系结构的处,理,理器,ARM7系列, ARM9系列, ARM9E,系,系列ARM10E系,列,列 SecurCore系列Intel的Xscale, Intel的StrongARM,1. ARM7,微,微处理器系列,ARM7系列微,处,处理器为低功耗,的,的32位RISC处理器,最适,合,合用于对价位和,功,功耗要求较高的,消,消费类应用。ARM7微处理器,系,系列特点:,具有嵌入式ICERT逻辑,,调,调试开发方便。,极低的功耗,适,合,合对功耗要求较,高,高的应用。,能够提供0.9MIPS/MHz的三级流水线,结,结构。,代码密度高并兼,容,容16位的Thumb指令集。,对操作系统的支,持,持广泛,包括WindowsCE、Linux、PalmOS等。,指令系统与ARM9系列、ARM9E系列和ARM10E系列,兼,兼容,便于用户,的,的产品升级换代,。,。,主频最高可达130MIPS,,高,高速的运算处理,能,能力能胜任绝大,多,多数的复杂应用,。,。,ARM7系列微,处,处理器的主要应,用,用领域为:工业,控,控制、Internet设备、,网,网络和调制解调,器,器设备、移动电,话,话等多种多媒体,和,和嵌入式应用。ARM7,系,系列微处理器包,括,括如下几种类型,的,的核:ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ。,其中ARM7TMDI是目前使,用,用最广泛的32,位,位嵌入式RISC处理器,属低,端,端ARM处理器,核,核。,内核后缀TDMI的基本含义为,:,:T:,支,支持16为压缩,指,指令集Thumb;D:,支,支持片上Debug;M:内嵌硬件乘,法,法器(Multiplier)I: 嵌,入,入式ICE,支,持,持片上断点和调,试点;,处理器后缀的含,义,义,S,:,可综合,的,的软核,Softcore,E,:,具有,DSP,的功能,J,:,Jazeller,允许直,接,接执行,Java,字节码,2.ARM9微处,理,理器系,列,列,ARM9系列,微,微处理,器,器在高,性,性能和,低,低功耗,特,特性方,面,面提供,最,最佳的,性,性能。,具,具有以,下,下特点,:,:,5级整,数,数流水,线,线,指,令,令执行,效,效率更,高,高。,提供1.1MIPS/MHz的哈,佛,佛结构,。,。,支持32位ARM指,令,令集和16位Thumb指,令,令集。,支持32位的,高,高速AMBA,总,总线接,口,口。,全性能,的,的MMU,支,持,持WindowsCE、Linux、Palm OS等多,种,种主流,嵌,嵌入式,操,操作系,统,统。,MPU,支,支持实,时,时操作,系,系统。,支持数,据,据Cache,和,和指令Cache,,具,具有更,高,高的指,令,令和数,据,据处理,能,能力。,ARM9系列,微,微处理,器,器主要,应,应用于,无,无线设,备,备、仪,器,器仪表,、,、安全,系,系统、,机,机顶盒,、,、高端,打,打印机,、,、数字,照,照相机,和,和数字,摄,摄像机,等,等。ARM9,系,系列微,处,处理器,包,包含ARM920T,、,、ARM922T和ARM940T三种,类,类型,,以,以适用,于,于不同,的,的应用,场,场合。,3.ARM9E微,处,处理器,系,系列,ARM9E系,列,列微处,理,理器为,可,可综合,处,处理器,,,,使用,单,单一的,处,处理器,内,内核提,供,供了微,控,控制器,、,、DSP、Java,应,应用系,统,统的解,决,决方案,,,,极大,的,的减少,了,了芯片,的,的面积,和,和系统,的,的复杂,程,程度。ARM9E系,列,列微处,理,理器提,供,供了增,强,强的DSP处,理,理能力,,,,很适,合,合于那,些,些需要,同,同时使,用,用DSP和微,控,控制器,的,的应用,场,场合。ARM9系列,微,微处理,器,器主要,应,应用于,下,下一代,无,无线设,备,备、数,字,字消费,品,品、成,像,像设备,、,、工业,控,控制、,存,存储设,备,备和网,络,络设备,等,等领域,。,。ARM9E,系,系列微,处,处理器,包,包含ARM926EJ-S,、,、ARM946E-S和ARM966E-S三,种,种类型,。,。,ARM9E系,列,列微处,理,理器的,主,主要特,点,点如下,:,:,支持DSP指,令,令集,,适,适合于,需,需要高,速,速数字,信,信号处,理,理的场,合,合。,5级整,数,数流水,线,线,指,令,令执行,效,效率更,高,高。,支持32位ARM指,令,令集和16位Thumb指,令,令集。,支持32位的,高,高速AMBA,总,总线接,口,口,支持VFP9,浮,浮点处,理,理协处,理,理器。,全性能,的,的MMU,支,持,持WindowsCE、Linux、Palm OS等多,种,种主流,嵌,嵌入式,操,操作系,统,统。,MPU,支,支持实,时,时操作,系,系统。,支持数,据,据Cache,和,和指令Cache,,具,具有更,高,高的指,令,令和数,据,据处理,能,能力。,主频最,高,高可达300MIPS。,4.ARM10E,微,微处理,器,器系列,ARM10E,系,系列具,有,有高性,能,能、低,功,功耗的,特,特点,,由,由于采,用,用了新,的,的体系,结,结构,,与,与同等,的,的ARM9器,件,件相比,较,较,在,同,同样的,时,时钟频,率,率下,,性,性能提,高,高了近50,,,,同时,,,,ARM10E系列,微,微处理,器,器采用,了,了两种,先,先进的,节,节能方,式,式,使,其,其功耗,极,极低。ARM10E,系,系列微,处,处理器,主,主要应,用,用于下,一,一代无,线,线设备,、,、数字,消,消费品,、,、成像,设,设备、,工,工业控,制,制、通,信,信和信,息,息系统,等,等领域,。,。包含ARM1020E、ARM1022E和ARM1026EJ-S三,种,种类型,。,。,ARM10E,系,系列微,处,处理器,的,的主要,特,特点如,下,下:,支持DSP指,令,令集,,适,适合于,需,需要高,速,速数字,信,信号处,理,理的场,合,合。,6级整,数,数流水,线,线,指,令,令执行,效,效率更,高,高。,支持32位ARM指,令,令集和16位Thumb指,令,令集。,支持32位的,高,高速AMBA,总,总线接,口,口。,支持VFP10浮点,处,处理协,处,处理器,。,。,全性能,的,的MMU,支,持,持WindowsCE、Linux、Palm OS等多,种,种主流,嵌,嵌入式,操,操作系,统,统。,支持数,据,据Cache,和,和指令Cache,,具,具有更,高,高的指,令,令和数,据,据处理,能,能力,主频最,高,高可达400MIPS。,内嵌并,行,行读/,写,写操作,部,部件。,2.4ARM架构,ARM,架,架构由32位ALU,、,、31,个,个32,位,位通用,寄,寄存器,及,及6位,状,状态寄,存,存器、328位乘,法,法器、3232位,桶,桶形移,位,位寄存,器,器、指,令,令译码,及,及控制,逻,逻辑、,指,指令流,水,水线和,数,数据/,地,地址寄,存,存器组,成,成。,图2.1ARM,架,架构图,1.ALU,算,算术逻,辑,辑运算,单,单元,ALU,是,是处理,器,器核心,的,的中心,处,处理部,分,分,实,现,现对数,据,据进行,运,运算处,理,理。由,二,二个操,作,作数锁,存,存器、,加,加法器,、,、逻辑,功,功能、,结,结果及,零,零检测,逻,逻辑构,成,成。,图2.2ALU,逻,逻辑框,图,图,2.,Barrelshifter,桶,桶形移,位,位寄存,器,器,为了减,少,少移位,的,的延迟,时,时间,ARM,采,采用了3232位,的,的桶形,移,移位寄,存,存器。,这,这样,,可,可以使,左,左移/,右,右移n,位,位、环,移,移n位,和,和算术,右,右移n,位,位等都,可,可以一,次,次完成,。,图2.344,位,位桶形,移,移位寄,存,存器示,意,意图,3.,Multiplicator,高速乘,法,法器,ARM,的,的高速,乘,乘法器,采,采用328,位,位的结,构,构,这,样,样,可,以,以降低,集,集成度,,,,(其,相,相应芯,片,片面积,不,不到并,行,行乘法,器,器的1/3),,,,完成3232位,乘,乘法也,只,只需5,个,个时钟,周,周期。,图2.4 高,速,速乘法,器,器逻辑,框,框图,4.,FloatPoint,浮点部,件,件,浮点部,件,件是作,为,为选件,为,为ARM架构,选,选用,FPA10浮,点,点加速,器,器是作,为,为协处,理,理器方,式,式与ARM相,连,连,并,通,通过协,处,处理器,指,指令的,解,解释来,执,执行。,浮,浮点的LOAD/STORE指令,使,使用频,度,度要达,到,到67%,故FPA10内,部,部也采,用,用LOAD/STORE结,构,构,有,八,八个80位浮,点,点寄存,器,器组,,指,指令执,行,行也采,用,用流水,线,线结构,。,。,图2.5FPA10浮,点,点加速,器,器内部,结,结构框,图,图,5.Controller,控制器,ARM,的,的控制,器,器采用,硬,硬接线,的,的可编,程,程逻辑,阵,阵列PLA,,其,其输入,端,端14,根,根,输,出,出40,根,根,分,散,散控制LOAD/STORE多路,、,、乘法,器,器、协,处,处理器,以,以及地,址,址、寄,存,存器、ALU,和,和移位,器,器的控,制,制。新,型,型的ARM采,用,用了二,块,块PLA,一,块,块小的,快,快速PLA,,用,用来产,生,生与时,间,间相关,的,的输出,;,;一块,大,大的慢,速,速PLA用来,产,产生其,他,他输出,。,。,图2.6ARM,控,控制逻,辑,辑结构,图,图,6.Registers,寄存器,ARM,处,处理器,共,共有37个寄,存,存器,,被,被分为,若,若干个,组,组(BANK,),),这,些,些寄存,器,器包括,:,:,通用寄,存,存器,包括程,序,序计数,器,器(PC指针,),),,共31,个,个,,均为32位的,寄,寄存器,。,。,分为:,i.,R0R7:,与,与所有,处,处理器,模,模式无,关,关的寄,存,存器,,可以用,作,作任何,用,用途。,ii.R8,R14:与,处,处理器,模,模式有,关,关的寄,存,存器,,在,在不同,的,的模式,下,下,对,应,应到不,同,同的物,理,理寄存,器,器。其,中,中 R13又,叫,叫做sp,,一,一般用,于,于堆栈,指,指针。R14,又,又叫做lr,,一,一般用,于,于保存,返,返回地,址,址。这,两,两个寄,存,存器在,每,每种异,常,常模式,下,下都对,应,应到不,同,同的物,理,理寄存,器,器上,,例,例如lr_irq、lr_svc,、,、lr_fiq 等,。,。,iii.R15,:又叫做,程,程序计数,器,器,即,pc,,所有的,模,模式下都,使,使用同一,个,个,pc,。,b)状态,寄,寄存器,用以标识CPU的,工,工作状态,及,及程序的,运,运行状态,。共6个,,,,,均为32,位,位。,CPSR,:当前程,序,序状态寄,存,存器(CurrentProgramStatus Register) ,所,有,有的模式,下,下都使,用,用同一个,CPSR,。,SPSR,:,:保存程,序,序状态寄,存,存器(Saved Program StatusRegister )。,每,每种异常,模,模式下都,有,有自己的SPSR,,,,一共有5种SPSR,即SPSR_irq、SPSR_fiq、SPSR_svc、SPSR_abt,、,、SPSR_und。usr和sys 态下,没,没有 SPSR,。,。,条件码标,识,识,N:负数,标,标识,Z:结果,为,为零标识,C:进位,位,位标识,V:溢出,标,标识,*Q:DSP的溢,出,出/饱和,(,(选用),控制位,I:IRQ中断禁,止,止位,F:FIQ快中断,禁,禁止位,T:Thumb位,M,4:0,:处理器,工,工作模式,ARM处,理,理器又有7种不同,的,的处理器,模,模式,在,每,每一种处,理,理器模式,下,下均有一,组,组相应的,寄,寄存器与,之,之对应。,即,即在任意,一,一种处理,器,器模式下,,,,可访问,的,的寄存器,包,包括15,个,个通用寄,存,存器(R0R14)、一,至,至二个状,态,态寄存器,和,和程序计,数,数器。在,所,所有的寄,存,存器中,,有,有些是在7种处理,器,器模式下,共,共用的同,一,一个物理,寄,寄存器,,而,而有些寄,存,存器则是,在,在不同的,处,处理器模,式,式下有不,同,同的物理,寄,寄存器。,2.5ARM流,水,水线结构,LaundryExample,Ann,Brian,Cathy, Daveeach have one loadof clothesto wash,dry, and fold,Washer takes30minutes,Dryer takes40 minutes,“Folder”takes 20 minutes,A,B,C,D,Sequential Laundry,Sequential laundry takes6 hoursfor4 loads,If theylearnedpipelining,howlongwouldlaundrytake?,A,B,C,D,30,40,20,30,40,20,30,40,20,30,40,20,6 PM,7,8,9,10,11,Midnight,T,a,s,k,O,r,d,e,r,Time,Pipelined Laundry: Startwork ASAP,Pipelined laundry takes3.5hours for 4loads,A,B,C,D,6 PM,7,8,9,10,11,Midnight,T,a,s,k,O,r,d,e,r,Time,30,40,40,40,40,20,Pipelining doesn,t helplatencyof single task,it helpsthroughputof entire workload,Pipelinerate limited byslowestpipelinestage,Multipletasks operatingsimultaneously usingdifferent resources,Potential speedup =Number pipestages,Unbalanced lengths of pipe stages reduces speedup,Timeto,“,“fill” pipeline and timeto “drain” itreducesspeedup,Stall for Dependences,计算机中,的,的一条指,令,令的执行,可,可以分若,干,干个阶段,:,:,1.取指,,,,从存储,器,器中取出,指,指令(fetch,),),2.译码,,,,指令译,码,码(dec),3.取操,作,作数,假,定,定操作数,从,从寄存器,组,组中取(reg),4.执行,运,运算(ALU),5.存储,器,器访问,,操,操作数与,存,存储器有,关,关(mem),6.结果,写,写回寄存,器,器(res),图2.8,指,指令,执,执行流水,线,线,图2.9 流,水,水线的停顿,图2.10,流,流水线的转移指,令,令的情况,1. ARM三,级,级流水线结构,ARM7架构采,用,用了三级流水线,,,,分为取指,译,码,码和执行。,图2.11ARM单周期三,级,级流水线,图2.12 ARM 多周期三,级,级流水线,2. ARM五,级,级流水线结构,三级流水线阻塞,主,主要产生在存储,器,器访问和数据通,路,路的占用上。因,此,此ARM9及StrongARM架构都采用了,五,五级流水线。把,存,存储器的取指与,数,数据存取分开,,同,同时,还增加了I-Cache,和,和D-Cache以提高存储器,存,存取的效率;其,次,次,增加了数据,写,写回的专门通路,和,和寄存器,以减,少,少数据通路冲突,,,,这样,五级流,水,水线分为:取指,、,、指令译码、执,行,行、数据缓存和,写,写回等。,The Five Stages of Load,Ifetch:Instruction Fetch,Fetch the instructionfrom the InstructionMemory,Reg/Dec: Registers Fetch and InstructionDecode,Exec: Calculate the memory address,Mem: Read thedata from theData Memory,Wr: Write thedata back to the registers,Stage 1,Stage 2,Stage 3,Stage 4,Stage 5,Ifetch,Reg/Dec,Exec,Mem,Wr,Load,3. ARM流,水,水线设计,流水线除了加深,流,流水线的深度和,加,加快时钟频率来,提,提高流水线的效,率,率和吞吐率,还,需,需要解决流水线,中,中的结构,冲突,、数据,冲突,和控制,冲突,等流水线,冲突,问题。,结构冲突,解决方法:,采用分离式指令Cache和数,据,据Cache。,使,使取指和存储器,的,的数据访问不再,发,发生冲突。同时,也,也解决了相应的,数,数据通路问题。,ALU中采用单,独,独加法器来完成,地,地址计算。使执,行,行周期的运算不,再,再产生资源冲突,。,。,b) 数据冲突,有“写后读RAW”、“写后写WAW”和“读,后,后写 WAR”,等,等几种,主要是RAW。,解决方法:,定向Forwarding,流水线互锁PipelineInterlock,编译器的指令调,度,度,c) 控制冲突,流水线遇到跳转,指,指令或者其它更,改,改PC值的指令,就,就会产生控制冲,突,突。,解决方法:,指令预测。尽,早,早判断分支转移,是,是否成功,从而,采,采取相应的预测,转,转移和延迟转移,,,,以降低分支转,移,移的损失。,尽早计算出分支,转,转移成功时的PC值(即分支的,目,目标地址)。有,些,些ARM架构处,理,理器流水线的译,码,码阶段增加了一,个,个专用加法器来,计,计算分支的目标,地,地址。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 幼儿教育


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!