嵌入式处理器片内指令和数据推送装置制造方法及图纸

技术编号:4219849 阅读:334 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种嵌入式处理器片内指令和数据推送装置,用于解决现有技术下总线上数据流量大的技术问题,其技术方案是在二级混合Cache端增加一个推送地址保存和产生单元、一个推送时机控制单元,在一级指令Cache端增加一个指令推送Buffer,在一级数据Cache端增加一个数据推送Buffer。由于有了推送地址保存和产生单元、推送时机控制单元,使指令和数据调度的主动权由高层次存储系统转移到了低层次存储系统,由于低层次存储系统能够更好对访问进行有效调度,解决了一级Cache的访问冲突问题,并且也不需要一级Cache发送大量的访问请求,减少了总线上数据的流量。指令推送Buffer和数据推送Buffer的增加消除了推送带来的Cache污染问题。

【技术实现步骤摘要】

本专利技术涉及一种指令和数据推送装置,特别涉及嵌入式处理器片内指令和数据推送装置
技术介绍
文献1 "专利号为5778423的美国专利"公开了一种指令预取的装置,该装置通过 预测分支目标来预取新的指令,这样可以提高性能。但是这种方法会增加上层存储系统对 下层存储系统的请求次数,增加了数据的流量,而且也会受到分支误预测的影响。该专利中 还提到可以利用标准长度的指令中没被使用的位来标示出可能要跳转到的地址,这种方法 需要对部分指令的格式进行修改,不但需要硬件的支持也需要软件的支持。 文献2 "专利号为7246205 B2的美国专利"公开了一种推送Cache的装置,该装 置可以通过监控系统的性能参数也可以通过监控设备信用值来决定时候使用推送Cache 操作。参照图5。该装置基于哈佛结构的片内Cache层次结构,包括指令单元、Load/Store 单元、一级指令Cache、一级数据Cache、缺失队列、缺失队列/写回队列、二级混合Cache, 既没有预取装置也没有推送装置,在常见的处理器中被广泛使用,例如AMD Opteron、ARM的 Cortex-48等。但是在这种结构中,由于一级Cache的命中率较低,整个处理器的性能与有 预取或推送的装置的处理器相比性能较低。 参照图6。 文献3 "Improving Direct-M即ped Cache Performance by the Addition of a SmallFully-Associative Cache and Prefetch Buffers,17th Annual International Symposium on ComputerArchitecture, PP364_373,1990, ISBN : 0-8186-2047-1"公开了一种预取装置,该装置可以使高层次存储系统( 一级Cache)从低 层次存储系统中预取指令和数据,提高一级Cache的命中率,使处理器的性能得到提升。但 是,该装置导致高层存储系统过多的进行对低层次存储系统的访问操作。在哈佛结构的存 储系统中,这个问题将导致过多的一级指令和数据Cache同时访问二级混合Cache的冲突, 降低数据预取的时效性,并增加了总线上数据传输的流量。预取时效性的降低,导致处理器 性能的损失,这种损失严重的时候可能会抵消预取带来的性能提升。图6给出了该文献中 提出的用于存放预取数据的stream buffer和Cache连接的结构,该结构可以消除Cache污 染问题。但是本文中的push buffer被访问时是所有行都一起并行被查询,而不像stream buffer只有最上面一行被查询。另外文献3中地址的计算由Stream Buffer中的加法器来 完成。
技术实现思路
为了克服现有技术总线上数据流量大的不足,本专利技术提供一种嵌入式处理器片内 指令和数据推送装置,利用一级Cache与二级Cache之间总线的空闲时间向一级Cache顺 序推送指令和数据。可以像预取一样提高一级Cache的命中率、提高系统性能,克服预取带 来的影响,有效的减少一级数据和指令Cache同时访问二级Cache的可能性,提高数据预取的时效性,并可以有效的减少总线上数据的流量。 本专利技术解决其技术问题所采用的技术方案一种嵌入式处理器片内指令和数据推 送装置,包括指令单元、Load/Store单元、一级指令Cache 、一级数据Cache 、指令缺失队列、 数据缺失队列、数据写回队列以及二级混合Cache,其特征在于还包括推送地址保存和产 生单元、推送时机控制单元、指令推送Buffer和数据推送Buffer,所述推送地址保存和产 生单元包括指令推送地址寄存器、数据正向推送地址寄存器和数据反向推送地址寄存器, 指令单元取指令时将地址同时发送到指令推送Buffer和一级指令Cache,指令推送Buffer 和一级指令Cache都缺失时,地址被发送到二级混合Cache, 二级混合Cache将所需的指令 传递给一级指令Cache并用缺失地址更新指令推送地址寄存器;Load/Store单元存/取数 据时将地址同时发送到数据推送Buffer和一级数据Cache,数据推送Buffer和一级数据 Cache都缺失时,地址被发送到二级混合Cache, 二级混合Cache将所读到的数据优先传递 给一级数据Cache并用缺失地址同时更新数据正向推送地址寄存器和数据反向推送地址 寄存器,总线空闲时,二级混合Cache根据推送地址保存和产生单元中的地址向指令推送 Buffer和数据推送Buffer分别推送指令和数据。 本专利技术的有益效果是由于在二级混合Cache端增加了推送地址保存和产生单 元,推送时机控制单元,使指令和数据调度的主动权由高层次存储系统转移到了低层次存 储系统,由于低层次存储系统能够更好对访问进行有效调度,解决了一级Cache的访问冲 突问题,并且也不需要一级Cache发送大量的访问请求,减少了总线上数据的流量。指令推 送Buffer和数据推送Buffer的增加可以消除推送带来的Cache污染问题。 下面结合附图和实施例对本专利技术作详细说明。附图说明 图1是本专利技术嵌入式处理器片内指令和数据推送装置的结构框图。 图2是图1中推送地址保存和产生单元详图。 图3是图1中推送时机控制单元详图。 图4是图1中推送Buffer的结构详图。 图5是现有技术基于哈佛结构的片内Cache层次结构图。 图6是文献3中Stream Buffer与cache连接结构图。具体实施例方式参照图1 4,本专利技术采用了指令和数据的推送装置,包括指令单元、Load/Store 单元、 一级指令Cache 、 一级数据Cache 、缺失队列、缺失队列/写回队列、二级混合Cache 、推 送地址保存和产生单元、推送时机控制单元、指令推送Buffer和数据推送Buffer,所述推 送地址保存和产生单元包括指令推送地址寄存器、数据正向推送地址寄存器和数据反向推 送地址寄存器。推送地址保存和产生单元用于保存和计算下一个需要推送的指令或数据的 地址。 增加了这些装置后整个信号的流向如下 指令单元需要读取指令的时候,同时将地址发送到指令推送Buffer和一级指令 Cache。这两个装置分别检查是否命中,并根据后面介绍的替换算法进行数据替换。如果它们都没有命中,那么发生一级指令Cache缺失,地址被发送到二级混合Cache, 二级混合 Cache将同时进行以下过程(数据缺失优先处理)1、根据地址读二级混合Cache,并将所 读到的指令传递给一级指令Cache ;2、用缺失地址更新指令推送地址寄存器。以后每个时 钟周期都根据指令推送地址寄存器的地址,在推送时机控制单元的控制下推送指令,直到 指令推送Buffer满为止。 Load/Store单元需要读写数据的时候,同时将地址发送到数据推送Buffer和一 级数据Cache中。这两个装置分别检查是否命中,并根据后面介绍的替换算法进行数据替 换。如果它们都没有命中,那么发生一级数据Cache缺失,地址被发送到二级混合Cache, 二 级混合Cache将同时进行以下过程1根据地址读二级混合Cache,并将所读到的数据优先 传递本文档来自技高网
...

【技术保护点】
一种嵌入式处理器片内指令和数据推送装置,包括指令单元、Load/Store单元、一级指令Cache、一级数据Cache、指令缺失队列、数据缺失队列、数据写回队列以及二级混合Cache,其特征在于:还包括推送地址保存和产生单元、推送时机控制单元、指令推送Buffer和数据推送Buffer,所述推送地址保存和产生单元包括指令推送地址寄存器、数据正向推送地址寄存器和数据反向推送地址寄存器,指令单元取指令时将地址同时发送到指令推送Buffer和一级指令Cache,指令推送Buffer和一级指令Cache都缺失时,地址被发送到二级混合Cache,二级混合Cache将所需的指令传递给一级指令Cache并用缺失地址更新指令推送地址寄存器;Load/Store单元存/取数据时将地址同时发送到数据推送Buffer和一级数据Cache,数据推送Buffer和一级数据Cache都缺失时,地址被发送到二级混合Cache,二级混合Cache将所读到的数据优先传递给一级数据Cache并用缺失地址同时更新数据正向推送地址寄存器和数据反向推送地址寄存器,总线空闲时,二级混合Cache根据推送地址保存和产生单元中的地址向指令推送Buffer和数据推送Buffer分别推送指令和数据。...

【技术特征摘要】

【专利技术属性】
技术研发人员:高德远郑乔石田杭沛樊晓桠张盛兵王党辉魏廷存黄小平张萌郑然
申请(专利权)人:西北工业大学
类型:发明
国别省市:87[中国|西安]

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

1