[发明专利]一种指令缓存系统及其取指方法有效

专利信息
申请号: 201110445531.8 申请日: 2011-12-27
公开(公告)号: CN102541510A 公开(公告)日: 2012-07-04
发明(设计)人: 陈弟虎;粟涛;叶靖文;陈俊锐 申请(专利权)人: 中山大学
主分类号: G06F9/30 分类号: G06F9/30;G06F9/38
代理公司: 广州新诺专利商标事务所有限公司 44100 代理人: 张玲春
地址: 510275 广东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 指令 缓存 系统 及其 方法
【说明书】:

技术领域

发明涉及微处理器系统中的指令缓存,尤其涉及一种新型高效指令缓存系统及其取指方法。

背景技术

众所周知,CPU的存取速度非常快,而内存的存取速度相对较慢。为解决CPU与内存之间存取速度不匹配的问题,通常会采用一个访问速度极快的小容量存储器即缓存(简称CACHE),如一级缓存,并将可能要访问的数据或指令预先存储在缓存中。当CPU需要读取一个数据时,首先以较快的速度在缓存中查找,如果找到就立即读取并送给CPU处理;如果在缓存中没找到匹配的数据,则以相对慢的速度向下一级的内存中继续查找并将数据读取送给CPU处理。尽管缓存的使用能够极大提高CPU读写数据的速度,但由于缓存的容量有限,仅能够存储内存中的少量数据。为了提高CPU访问的命中率,可采用一级缓存、二级缓存甚至三级缓存的多级缓存系统,使CPU能够逐级顺序访问多个缓存,直至查找到匹配的数据。为了进一步提高缓存的利用率,还可采用一些特定的替换算法,如最近最少使用算法,将最近最少被访问的数据淘汰出缓存。

由于CPU流水线一般都包括五个步骤,即每条指令的执行一般都经过IF(指令获取)、DE(指令译码)、EX(执行)、MEM(访问存储器)和WB(数据写回)。为了使CPU的性能得到最大程度的发挥,除了缓存之外,很多芯片内部都有预取指令和数据的功能。如MIPS早期适用于嵌入式领域的Mips4kc核就具有四字节大小的预取指令功能,它设计在取指令模块中。但该预取是针对顺序执行指令情况下而设计,如果遇上跳转或中断则一般是舍弃预取的指令。

同时,大部分CPU(包括mips4kc)向外部(例如CACHE或RAM)取指令时一般都是发出一个请求信号和相应32位的指令虚拟地址。该信号和虚拟地址被内存管理单元(简称MMU)接收。此时MMU根据指令的虚拟地址和CPU对虚拟地址空间的划分,将虚拟地址转换为相应的物理地址,就到CACHE(CACHE开启以及该地址对应的数据可在CACHE中有备份情况下)或内存RAM中获得32位的指令,然后将指令返回给CPU去执行。

在这种情况下,如果CPU执行的是顺序的四条指令,则MMU需要做四次地址转换,CACHE要匹配四次或者MMU四次经过总线向RAM获取指令。这在一定程度上增加了总线的带宽压力,也不利于降低芯片功耗。

发明内容

根据本发明的第一个方面,提供一种指令缓存系统,包括微处理器、系统控制协处理器、内存管理单元,该微处理器与系统控制协处理器、微处理器与内存管理单元、以及系统控制协处理器与内存管理单元之间分别建立连接,以进行指令的存取控制及处理,其中,内存管理单元通过总线与内存或外部存储器建立连接,微处理器中还设有零级缓存,其包括两个存储块,每个存储块中分别存储四条指令,且每个存储块设有标签值。

所述每个存储块的标签值为29位,其中,高28位为虚拟地址高位,最低位为有效位,每个存储块的容量为4字(即四条指令)。

所述新型指令缓存系统中还包括一级缓存,该一级缓存是一个四路组相联的传统缓存,其指令读写通道均为128位。

所述内存管理单元中还设有衔接零级缓存、一级缓存与内存之间逻辑控制的控制模块。

所述控制模块具有六个可转换的状态,分别是:空闲、一级缓存关闭、一级缓存命中、一级缓存未命中、一级缓存填充以及异常出错。

所述零级缓存通过内存管理单元中的控制逻辑,从一级缓存或利用总线突发传输从内存一次获取4条指令。所述零级缓存与一级缓存或内存的数据传输为每次4字。

根据本发明的第二个方面,提供一种指令缓存系统的取指方法,其中所述指令缓存系统包括零级缓存和一级缓存两个缓存存储器,该零级缓存包括两个存储块,每个存储块中分别存储四条指令,且每个存储块设有标签值,该指令缓存系统还包括内存管理单元,其可从一级缓存或通过总线向内存获取指令,该方法包括如下步骤:

(1)判定指令的虚拟地址是否与零级缓存的存储块的标签值匹配;

(2)执行所述步骤(1),若结果为是,则取出命中存储块中相应的指令,送至流水线;并判定未命中存储块中的指令是否为顺序执行的下一批指令;

(2’)执行所述步骤(1),若结果为否,则刷新零级缓存,并向内存管理单元发出请求,内存管理单元从内存或一级缓存中获得指令,并将指令填充分别至存储块中。

(3)执行所述步骤(2),若结果为是,则等待向流水线传送指令,执行步骤(1);

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中山大学,未经中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201110445531.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top