[发明专利]一种用于检测流水线数据相关的装置有效
| 申请号: | 201310138912.0 | 申请日: | 2013-04-19 |
| 公开(公告)号: | CN103235716A | 公开(公告)日: | 2013-08-07 |
| 发明(设计)人: | 王磊;汪涛;杨勇勇;谢少林;尹磊祖;刘子君;张星;王东琳 | 申请(专利权)人: | 中国科学院自动化研究所 |
| 主分类号: | G06F9/38 | 分类号: | G06F9/38 |
| 代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 宋焰琴 |
| 地址: | 100190 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 用于 检测 流水线 数据 相关 装置 | ||
技术领域
本发明属于计算机处理器领域,尤其涉及一种用于检测流水线数据相关的方法和装置。
背景技术
现代处理器通常采用流水线技术来提高处理器的处理速度。通过流水线技术,不同指令的不同阶段在同一时刻并行地执行,在时间上开发指令的并行性。然而,指令之间的数据相关,严重影响指令之间的并行性,使得流水线不能满负荷工作,从而降低流水线的利用率以及处理器的性能。
为了解决这一问题,许多多发射、多功能部件的通用处理器常采用Tomasulo算法来减少数据相关,提高处理器的性能,Tomasulo算法所带来的硬件开销相当于性能的提升则显得不重要。对于DSP(Digital Signal Processor)处理器和嵌入式处理器等对实时性和面积要求严格的处理器,若采用Tomasulo算法,所带来的性能提升有限,且由于Tomasulo算法的复杂性,附加面积很大,不符合DSP和嵌入式处理器的应用需求。对于这类处理器一般采用流水线停顿技术来解决数据相关,当产生流水线数据相关时,进入执行级之前的流水线停顿,直到相关解除。
不管是利用Tomasulo算法还是流水线停顿技术解决数据相关,首先都需要判断流水线中是否存在数据相关。即在流水线译码级,判断当前指令所需的硬件资源和流水线上其他指令正在使用的硬件资源是否存在冲突。一种常用的判断方法是比较硬件资源的ID号,如在译码级中,当前指令需要读寄存器的ID号和流水线中还未退出,将要写回寄存器的ID号是否相等,相等则发生数据相关。该方法主要是利用比较器来实现,硬件逻辑比较简单,但具有明显的局限性:
1)消耗过多的硬件资源,特别是对于多发射、多功能部件的流水线,译码流水级中每条指令都需要和之前发射但还没有从流水线退出的指令进行寄存器ID号比较,这需要很多的硬件资源,增加芯片的面积。
2)关键路径较长,比较器相当于加法器,特别是当需要比较的硬件资源较多时(如寄存器数量较多),加法器位宽使得关键路径加长,影响处理器的效率。
发明内容
有鉴于此,本发明提出了一种利用硬件位图判断流水线数据相关装置,其特别适用于多发射、多功能部件流水线,能减少流水线相关检测的硬件资源,缩短关键路径的长度,减少处理器的面积,有效提高处理器的性能。
本发明公开的用于检测流水线数据相关的装置,其包括:
主流水线逻辑单元,其根据流水线相关控制信号以流水线方式执行指令,并在指令开始执行时将读、写寄存器号分别发送至译码读寄存器位图产生单元和译码写寄存器位图产生单元,在指令执行完成后,将写寄存器号发送至功能部件写寄存器位图产生单元;
译码读寄存器位图产生单元,其根据所述主流水线逻辑单元发送的读寄存器ID号产生标示当前指令读寄存器ID号的译码读位图信息;
译码写寄存器位图产生单元,其根据所述主流水线逻辑单元发送的写寄存器号产生标示当前指令写寄存器ID号的译码写位图信息;
功能部件写寄存器位图产生单元,其根据所述主流水线逻辑单元发送的写寄存器号产生标示当前指令完成后的写寄存器ID号的功能部件写位图信息;
位图处理逻辑单元,其根据上述三种位图信息产生流水线数据相关控制信号,并返回至所述主流水线逻辑单元。
本发明减少了流水线相关检测的硬件资源,缩短了流水线关键路径的长度,减少处理器的面积,有效地提高了处理器的效率。
附图说明
图1示出了简化后的执行计算机指令的五级流水线示意图。
图2示出了本发明流水线中的各条指令不存在数据相关时的指令执行流程图。
图3示出了本发明流水线中存在数据相关时指令执行流程图。
图4示出了本发明中所述检测流水线数据相关的装置的功能模块结构示意图。
图5示出了本发明另一实施例中检测流水线数据相关的装置结构图。
图6示出了本发明中基本位图产生逻辑示意图。
图7示出了本发明中全局寄存器写位图生成单元内部结构图。
图8示出了本发明中RAW相关检测逻辑内部的具体实现示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明作进一步的详细说明。
本发明公开了一种用于检测流水线数据相关的方法和装置。下面首先根据附图介绍流水线的整个运行过程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院自动化研究所,未经中国科学院自动化研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310138912.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





