[发明专利]一种提高片上系统指令缓存命中率的系统及其方法有效
申请号: | 201510968364.3 | 申请日: | 2015-12-22 |
公开(公告)号: | CN105389270B | 公开(公告)日: | 2019-01-25 |
发明(设计)人: | 张良臣;周玉洁;王大永 | 申请(专利权)人: | 上海爱信诺航芯电子科技有限公司 |
主分类号: | G06F12/0875 | 分类号: | G06F12/0875 |
代理公司: | 上海信好专利代理事务所(普通合伙) 31249 | 代理人: | 徐雯琼 |
地址: | 200241 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提高 系统 指令 缓存 命中率 及其 方法 | ||
本发明公开了一种提高片上系统指令缓存命中率的系统及其方法,采用缓存寄存器、预读寄存器、第一逻辑判断模块、第二逻辑判断模块及预读发起判断模块组成上述系统。本发明通过在传统指令缓存内部添加可独立判断指令是否命中的预读寄存器,使得预读寄存器与缓存寄存器内的存储单元具有相同的功能,都能够存储预读反馈指令;只有当预读寄存器与缓存寄存器均未命中时,缓存寄存器将预读寄存器内的指令数据进行存储,预读寄存器中的数据更新为最新的预读反馈指令。本发明结构简单、容易实现、灵活度高,能够大大提高微小循环代码的命中率。
技术领域
本发明涉及片上系统的指令缓存实现技术,具体涉及一种提高片上系统指令缓存命中率的系统及其方法。
背景技术
指令缓存可以加快中央处理器取指操作访问主存的速度,提高了系统的整体性能,而缓存性能的高低,最重要的指标就是命中率。在提高指令缓存命中率的方法上,通常都在缓存未命中时替换哪个Way的算法上做工作,例如目前较为流行的算法为轮询缓存算法(Round-Robin)、随机缓存算法(Random)、最近最少使用算法(Least Recently Used ,简称LRU)等。
发明内容
本发明的目的在于提供一种提高片上系统指令缓存命中率的系统及其方法,采用缓存寄存器、预读寄存器、第一逻辑判断模块、第二逻辑判断模块及预读发起判断模块组成上述系统。本发明通过在传统指令缓存内部添加可独立判断指令是否命中的预读寄存器,使得预读寄存器与缓存寄存器内的存储单元具有相同的功能,都能够存储预读反馈指令;只有当预读寄存器与缓存寄存器均未命中时,缓存寄存器将预读寄存器内的指令数据进行存储,预读寄存器中的数据更新为最新的预读反馈指令。本发明结构简单、容易实现、灵活度高,能够大大提高微小循环代码的命中率。
为了达到上述目的,本发明通过以下技术方案实现:
一种提高片上系统指令缓存命中率的系统,其特点是,该系统包含:
缓存寄存器;
预读寄存器,与所述缓存寄存器进行数据通讯;
第一逻辑判断模块,与所述缓存寄存器连接;
第二逻辑判断模块,与所述预读寄存器连接;
预读发起判断模块,分别与所述第一逻辑判断模块、所述第二逻辑判断模块及所述预读寄存器连接。
优选地,
所述缓存寄存器用于存储预读反馈指令及所述预读寄存器内存储的预读反馈指令的地址信息;
所述预读寄存器用于获取并存储最新的预读反馈指令;
所述第一逻辑判断模块用于判断所述缓存寄存器是否命中;当该缓存寄存器命中时,所述第一逻辑判断模块输出标识信号置为1;当该缓存寄存器未命中时,所述第一逻辑判断模块输出标识信号置为0;
所述第二逻辑判断模块用于判断所述所述预读寄存器是否命中;当该预读寄存器命中时,所述第二逻辑判断模块输出标识信号置为1;当该缓存寄存器未命中时,所述第二逻辑判断模块输出标识信号置为0;
所述预读发起判断模块获取所述第一逻辑判断模块的输出标识信号、所述第二逻辑判断模块的输出标识信号,并将上述信号进行逻辑运算处理后,判断所述缓存寄存器、所述预读寄存器是否均未命中;当均未命中时,该预读发起判断模块控制所述预读寄存器获取并存储最新的预读反馈指令。
一种提高片上系统指令缓存命中率的方法,其特点是,该方法包含:
S1,第二逻辑判断模块判断预读寄存器是否命中,当判断所述预读寄存器未命中时,执行步骤S2;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海爱信诺航芯电子科技有限公司,未经上海爱信诺航芯电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510968364.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:处理器和ARINC429总线的通信方法
- 下一篇:资料储存系统及其运作方法