[发明专利]快速执行加载存储指令模块有效
申请号: | 200910155142.4 | 申请日: | 2009-12-03 |
公开(公告)号: | CN101719055A | 公开(公告)日: | 2010-06-02 |
发明(设计)人: | 丁永林;葛海通;孟建熠;杨军 | 申请(专利权)人: | 杭州中天微系统有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F9/312 |
代理公司: | 杭州天正专利事务所有限公司 33201 | 代理人: | 王兵;王利强 |
地址: | 310012 浙江省杭州市西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 快速 执行 加载 存储 指令 模块 | ||
技术领域
本发明涉及嵌入式处理器领域,尤其是嵌入式处理器的快速执行 加载存储指令模块。
背景技术
近年来随着高性能嵌入式处理器的发展,大量原来需要在硬件加 速器协助下才能完成的任务,现在已经完全可以由嵌入式处理器独立 完成了。这大大推动了嵌入式处理器的广发应用,同时也极大的缩短 了电子产品的设计周期和也降低了电子产品的维护成本。
各大处理器厂商通常都会通过提高处理器内部各个执行单元的效 率和利用率(如多指令发射、乱序执行等方式),来提升嵌入式处理器 的整体性能。同时也会通过引入大量浮点指令,数字信号处理指令 (DSP指令)来实现原来需要额外的硬件加速器才能完成的任务。
参照图1所示,典型的嵌入式处理器架构包括指令取值单元,指 令发射单元,指令执行单元(包括逻辑指令处理单元,协处理器指令 处理单元,数字信号指令处理单元,加载存储指令处理单元等)。通过 指令取值单元从片外内存(或从片内高速缓存)取指令后,通过指令 发射单元的合理调度,将指令发射到各个执行单元中执行。嵌入式处 理器的设计者针对特定的应用,增加协处理器的加速指令,使得原来 需要额外硬件加速器才能完成的任务,直接通过软件就可以实现了。 但是无论指令执行单元设计的如何巧妙,处理器和片外内存的交互都 是无法避免的,而在类似于多媒体应用的环境中,大量的内存搬移是 不可避免的。通常加载存储指令出现数据相关性时,加载储存指令处 理单元就会发生堵塞,进而影响指令发射单元,此时无论指令处理单 元的性能如何强大,都将无法发挥优势;
所述的“数据相关性”是指当同时满足当前指令为存储指令和当前 指令所需存储的数据来源于前续未执行完成的加载指令时,认为存储 指令与前续加载指令存在数据相关性。
图2在传统的嵌入式处理器架构上进行了改进。对各个执行单元 增加了保留栈,鉴于逻辑指令单元、协处理器指令处理单元和数字信 号处理指令执行周期短,在保留栈未被填满前,相关性基本都能解除, 所以保留栈技术对于逻辑指令单元、协处理器指令处理单元和数字信 号处理指令来说已经足够了;而由于加载存储指令需要和片外内存进 行交互,当加载存储指令出现数据相关性时,加载储存指令处理单元 会发生堵塞,虽然加载存储指令处理单元的保留栈仍然可以接收几条 后续的加载存储指令,但是在需要大量内存搬移的指令流中,加载存 储指令处理单元会在保留栈被迅速填满后发生停顿,进而堵塞发射单 元,最终造成整个处理器流水线的停顿。
发明内容
为了克服已有的嵌入式处理器的加载存储指令处理单元的当出现 数据相关性时造成流水线阻塞、限制嵌入式处理器的性能的不足,本 发明提供一种当出现数据相关性时能够避免流水线阻塞、提升嵌入式 处理器的性能的快速执行加载存储指令模块。
本发明解决其技术问题所采用的技术方案是:
一种快速执行加载存储指令模块,该模块执行加载指令和存储指 令,所述快速执行加载存储指令模块包括:
相关性识别单元,用以当同时满足当前指令为存储指令和当前指 令所需存储的数据来源于前续未执行完成的加载指令时,判定存储指 令与前续加载指令存在数据相关性;
指令地址生成单元,用以根据输入的加载/存储指令流,计算当前 加载/存储指令所需要访问片上高速缓存和片外内存的地址;
指令缓冲单元,由指令缓冲单元表项组成,用以临时缓来源于相 关性识别单元和指令地址生成单元输出的与执行存储指令相关的所有 信息,同时旁路来自于前序加载指令完成时返回的数据。
作为优选的一种方案:所述快速执行加载存储指令模块采用两级 流水线布置,所述相关性识别单元和指令地址生成单元位于第一级流 水线,所述指令缓冲单元位于第二级流水线。当然,也可以将相关性 识别单元、指令地址生成单元和指令缓冲单元设置在同一级别的流水 线上,只是处理的速度相对会变慢。
进一步,所述相关性识别单元,无论判定存储指令与前续加载指 令存在数据相关性结果如何,后续加载存储指令均可以继续正常执行, 不会发生停顿。
所述指令缓冲单元由至少两个指令缓冲单元表项组成。
再进一步,所述指令缓冲单元表项包括指令标签比较器,用以当 存储指令所需要存储的数据相关与前序加载指令时,监视与存储指令 有相关性的前续加载指令是否完成;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州中天微系统有限公司,未经杭州中天微系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910155142.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种穿墙套管
- 下一篇:一种带有消毒巾的创可贴包装结构