处理器及其数据操作方法技术

技术编号:2848773 阅读:149 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种数据处理器及其数据操作方法。所述处理器的数据操作方法包括:接收处理器内核发出的操作,当所述操作为不可高速缓存非连续操作时,在所述不可高速缓存非连续操作的第一周期,在高速缓存控制器与封装器之间的处理器总线上发出空闲操作;在所述不可高速缓存非连续操作的第二周期,在所述处理器总线上发出连续操作。所述方法进一步包括:当所述处理器内核发出的操作为不可高速缓存连续操作时,在所述高速缓存控制器与封装器之间的处理器总线上发出的连续操作的下一个周期开始时,对所述连续操作的下一次操作地址进行预测。本发明专利技术在处理器中使用I-S操作模式和地址预测技术后,能显著提高处理器性能,减少CPU的等待时间。

【技术实现步骤摘要】

本专利技术涉及嵌入式处理器,更具体地说,涉及一种。
技术介绍
ARM7TDMI是ARM公司应用较为广泛的嵌入式处理器内核,主要应用于低端的嵌入式系统。ARM公司通常以硬核结构将ARM7TDMI提供给用户,ARM7TDMI不包括任何储存单元,也不包括PU及MMU逻辑,该处理器核使用独立的CPU总线接口。A7TWrap是ARM公司随ARM7TDMI一起提供的处理器外包逻辑,该逻辑的主要功能是将CPU总线传输时序转换为AHB总线传输时序。ARM7TDMI+A7TWrap结构是目前使用得较广的ARM7芯片的一种处理器结构,如图1a所示。ARM7TDMI通过A7TWrap和AHB总线进行交互。在ARM7TDMI和A7Wrap之间嵌入一个冯·诺依曼结构的高速缓存(Cache),是ARM7TDMI处理器性能扩展的一个较好的方法,其结构如图1b所示(图中ARM7TDMI和A7TWrap的交互信号是部分非传输管脚的配置信号)。这种结构可以提高ARM7TDMI的处理能力,减少ARM7TDMI对主存访问的等待时间,减少外设功耗,使ARM7芯片能够以单周期完成大多数数据和指令的读写。高速缓存的存在可以提高系统性能,对于可高速缓存的数据或指令,如果高速缓存命中,该操作单周期内即可完成。但是对于系统中很多不可高速缓存的地址区域,例如DMA搬运区、外设接口等等,在ARM7TDMI直接访问这些区域时,高速缓存的存在通常会使访问操作增加额外的损耗周期(PenaltyCycle),即高速缓存缺失的访问开销。日本的IC厂商针对ARM7TDMI+A7TWrap结构设计了冯·诺依曼结构的高速缓存,4路级联,块长度为8,使用LRU替换算法,并包括有PU模块。该高速缓存在ARM7TDMI发出指令操作时首先对该操作进行寄存,然后在后一周期完成命中、可高速缓存、PU的判定后,如果该操作地址不可高速缓存才对A7TWrap发出操作请求。因为高速缓存实际发出的操作请求较ARM7TDMI原来的操作请求晚了一个周期,该高速缓存对ARM7TDMI的每次操作请求都增加了一个空闲(IDLE)操作周期的开销,即一个IDLE Penalty。因此,ARM7TDMI的每一个不可高速缓存的操作在传输给A7TWrap时都被分成了一个IDLE操作加一个NONSEQ(非连续)操作。而且,由于该高速缓存对ARM7TDMI的每一个不可高速缓存的操作都增加了一个IDLE操作,因此该高速缓存无法支持ARM7TDMI发出的不可高速缓存的连续操作,即所有不可高速缓存的连续操作都被拆分为独立操作,每一个独立操作再由一个IDLE操作加一个NONSEQ操作来实现。未采用高速缓存时(如图1a所示),ARM7TDMI对A7TWrap的操作时序如图2a所示。采用了高速缓存时(如图1b所示),ARM7TDMI对A7TWrap的操作时序如图2b所示。这里的时序图没有考虑A7TWrap将CPU总线时序转换为AHB总线时序时的延迟,其中nMREQ信号为操作请求信号,n表示低有效,SEQ信号为连续操作请求信号。由该时序图可以看到,在IDLE周期的时候CPU刚发出请求,这个时候无法完成命中判定,在下一个时钟上升沿高速缓存打了一拍,没命中的操作就被输出。RM7TDMI通过nMREQ信号及SEQ信号实现其不同的操作模式,这两个信号的不同值对应的操作模式如下表1所示。 表1 ARM7TDMI的操作模式和AHB总线操作模式类似。非连续操作是指ARM7TDMI的单次操作或者指连续操作的第一个操作位,非连续操作的上一个操作可以是其他任何一种操作模式。连续操作是指ARM7TDMI发起的一次连续的数据或指令操作,连续操作过程中,总线信号都不可改变。通常而言,连续操作是由非连续操作发起的,也就是说,连续操作的第一个操作位必须是非连续操作,即NONSEQ+SEQ+SEQ+SEQ……。空闲操作为ARM7TDMI内部操作,此时总线处于空闲状态。本专利技术不涉及协处理器,所以后续描述中不考虑协处理器操作。对于ARM7TDMI,其连续操作还存在一个特殊的操作模式,即I-S操作模式,其包括第一周期的IDLE操作和第二周期的SEQ操作。此时,连续操作不是以非连续操作开始的,而是以空闲操作开始,即IDLE+SEQ+SEQ+SEQ……。如图5所示是I-S操作模式的时序图,I-S操作过程中,ARM7TDMI在IDLE操作周期就已经给出了连续操作的地址信息,在连续操作时再给出操作请求。I-S操作模式是ARM公司在ARM7TDMI设计时进行的一个特殊优化,该操作模式下地址信号较普通操作模式要提前一个周期,即地址信号可以和控制信号同时有效,这可以使地址译码的时间较之普通模式提前。由于I-S操作模式下,操作地址在IDLE周期就已经给出,因此A7Twrap不再对该操作的时序进行延时。A7TWrap针对ARM7TDMI的各种不同操作时序产生不同的逻辑变化,将处理器总线时序转换为AHB总线时序。其中,为保证AHB总线的译码正确,地址有效必须在HCLK时钟一个周期以前,即在每次操作开始时都必须增加一个周期的等待。A7TWrap对ARM7TDMI的操作时序的转换延时如下表2所示。 表2 由前面的介绍可知,在处理器内增加高速缓存后,ARM7TDMI的操作请求不能直接反映到A7Twrap上,这主要是因为ARM7TDMI的地址信号只比HCLK上升沿早半周期出现,而在该信号被HCLK上升沿获取之前无法进行地址命中判定。如果在命中判定前就将ARM7TDMI操作请求发送给A7TWrap,则可能会使A7TWrap和高速缓存都对该操作请求产生反应。但是实际上,如果地址判定高速缓存命中,该操作请求是不应该在A7TWrap上产生反应的。如图6的时序图所示,第3周期的上升沿之前ARM7TDMI的数据信号不可以发送到A7TWrap,这时便会产生一个周期的延时。这个延时产生的损耗周期影响了系统的处理速度,并且该技术将不可高速缓存的地址的连续操作都拆分为独立操作,大大降低了AHB总线连续传输的性能
技术实现思路
本专利技术要解决的技术问题在于,针对上述现有技术的不足,提供一种,使用空闲-连续(I-S)操作模式减少损耗周期。本专利技术解决其技术问题所采用的技术方案是提供一种处理器的数据操作方法,包括(a)接收处理器内核发出的操作,当所述操作为不可高速缓存非连续操作时,在所述不可高速缓存非连续操作的第一周期,在高速缓存控制器与封装器之间的处理器总线上发出空闲操作;(b)在所述不可高速缓存非连续操作的第二周期,在所述处理器总线上发出连续操作。在本专利技术所述处理器的数据操作方法中,所述方法还包括(c)转换所述处理器总线上的第一周期的空闲操作和第二周期的连续操作为系统总线上的空闲操作和非连续操作。在本专利技术所述处理器的数据操作方法中,所述方法进一步包括(d)当所述处理器内核发出的操作为不可高速缓存连续操作时,在所述高速缓存控制器与封装器之间的处理器总线上发出的连续操作的下一个周期开始时,对所述连续操作的下一次操作地址进行预测。在本专利技术所述处理器的数据操作方法中,所述步骤(d)中对连续操作的操作地址提前进行预测包括在当前操作地址的基础上根据当前操作的位宽信号增加相应的增量来预测所述连续操作的下一本文档来自技高网
...

【技术保护点】
一种处理器的数据操作方法,其特征在于,包括:    (a)接收处理器内核发出的操作,当所述操作为不可高速缓存非连续操作时,在所述不可高速缓存非连续操作的第一周期,在高速缓存控制器与封装器之间的处理器总线上发出空闲操作;    (b)在所述不可高速缓存非连续操作的第二周期,在所述处理器总线上发出连续操作。

【技术特征摘要】
1.一种处理器的数据操作方法,其特征在于,包括(a)接收处理器内核发出的操作,当所述操作为不可高速缓存非连续操作时,在所述不可高速缓存非连续操作的第一周期,在高速缓存控制器与封装器之间的处理器总线上发出空闲操作;(b)在所述不可高速缓存非连续操作的第二周期,在所述处理器总线上发出连续操作。2.根据权利要求1所述的处理器的数据操作方法,其特征在于,还包括(c)转换所述处理器总线上的第一周期的空闲操作和第二周期的连续操作为系统总线上的空闲操作和非连续操作。3.根据权利要求1所述的处理器的数据操作方法,其特征在于,所述方法进一步包括(d)当所述处理器内核发出的操作为不可高速缓存连续操作时,在所述高速缓存控制器与封装器之间的处理器总线上发出的连续操作的下一个周期开始时,对所述连续操作的下一次操作地址进行预测。4.根据权利要求3所述的处理器的数据操作方法,其特征在于,所述步骤(d)中对连续操作的操作地址提前进行预测包括在当前操作地址的基础上根据当前操作的位宽信号增加相应的增量来预测所述连续操作的下一次操作地址。5.根据权利要求3所述的处理器的数据操作方法,其特征在于,所述步骤(d)中对连续操作的操作地址提前进行预测包括在当前操作地址的基础上根据所述连续操作的第一次操作的位宽信号增加相应的增量来预测所述连续操作的下一次操作地址。...

【专利技术属性】
技术研发人员:董杰明夏晶
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1