[发明专利]带有复制寄存器文件的VLIW处理器无效
申请号: | 200710086397.0 | 申请日: | 2003-10-28 |
公开(公告)号: | CN101097513A | 公开(公告)日: | 2008-01-02 |
发明(设计)人: | B·斯里尼瓦桑;M·J·G·贝库伊 | 申请(专利权)人: | 皇家飞利浦电子股份有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 中国专利代理(香港)有限公司 | 代理人: | 程天正;梁永 |
地址: | 荷兰艾*** | 国省代码: | 荷兰;NL |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 带有 复制 寄存器 文件 vliw 处理器 | ||
本发明涉及一种数据处理设备,其所具有的指令字包含了用于多个并行功能部件的指令,例如超长指令字(VLIW)处理设备。
VLIW处理器包含多个能够执行来自程序的指令的功能部件。指令以包含用于多个并行功能部件的指令的指令字的形式发出。通过寄存器文件在功能部件之间传送操作数数据。每个寄存器文件包含一组寄存器和用于访问选中的寄存器的多个读和写端口。每个功能部件(或功能部件组)耦合到不同的端口组。因而,一个功能部件能够读取由其它功能部件产生的操作数并写下结果供其它功能部件使用。
实际上VLIW处理器可以包括非常多的功能部件。这使得无法耦合所有功能部件到单个寄存器文件。作为一种替代体系结构,已经提出将功能部件组织成集群。对每个集群提供一个寄存器文件,以使一个集群中的所有功能部件耦合到这个集群的端口。在这种体系结构中由某个特定功能部件产生的结果只能由与该特定功能部件同属一个集群的功能部件从寄存器文件读取。在这后面的思想是来自需要交换结果的不同任务的指令通常只由功能部件的子集执行,即由某一特定集群中的功能部件执行。因此那些任务不需要到集群之外的寄存器文件的连接。
不过,有时需要在不同集群的功能部件之间交换有限的操作数和结果。已经提出了多种不同的解决方案来从一个寄存器文件传送数据到另一个寄存器文件,以使一个集群中的功能部件所产生的结果可以由别的集群中的功能部件使用。
美国专利号6,269,437公开了具有多个寄存器文件和一个复制器的处理器。该复制器执行在不同寄存器文件中指定源和目标寄存器的指令。该复制器与所述寄存器文件的读和写端口相耦合。该复制器响应指令而从源寄存器复制数据到目标寄存器。
当编译该处理器的一个程序时编译器生成用于多种不同功能部件的一个指令集合并确定分别产生和使用特定结果的指令之间的依赖关系。编译器确定由不属于相同集群(没有耦合到一个共同的寄存器文件的端口)的功能部件执行的指令之间何时存在这种依赖关系。假使这样,编译器就为复制器生成一条指令以将生产指令的结果复制到与执行该使用指令的功能单元相耦合的寄存器文件中的一个寄存器。
这项技术对指令字的生成施加了额外的调度限制。在生产指令执行之后,必须调度复制指令,然后是使用指令。所涉及的寄存器必须至少保持分配到相关指令已经执行过为止。这降低了处理器的效率。
除了别的以外,本发明的一个目标是为使用分布在不同寄存器文件上的寄存器,具有多个能并行执行来自一个指令字的指令的功能部件的数据处理设备提高效率。
权利要求1中阐明了依照本发明的数据处理设备。依照本发明提供了一个特殊的复制寄存器文件,它充当复制功能部件的操作数源。写到寄存器文件的寄存器中的结果被作为产生该结果的指令执行的一部分复制到复制寄存器文件,即不需要额外的指令。复制功能部件由来自指令字的指令控制。复制功能部件的指令指示哪些结果需要从复制寄存器文件复制到其它寄存器文件。
优选地,其中复制寄存器文件通过一个端口耦合链路与寄存器文件的至少部分端口相耦合,用于将写入到那些端口中各端口的数据各自复制到复制寄存器文件中一个相应寄存器中,该相应寄存器的选择依赖于该相应的写入端口,但与用来向该相应的端口提供数据所用的寄存器地址至少部分无关。因而,对每个源寄存器文件在复制寄存器文件中只需要有限数量的复制寄存器,少于源寄存器文件中寄存器的总数。优选地,完全独立于寄存器地址选择复制寄存器。
原则上,写入普通寄存器的每个结果可以被自动复制到复制寄存器文件。但是,这可能会导致覆盖需要从复制寄存器文件复制出的先前的结果。为了限制或防止不必要的复制,依照本发明的数据处理设备的一种实施方案使用的指令包括一个指示是否必须将指令中至少一条指令的结果复制到复制寄存器文件的字段,端口耦合链路被安排用来根据所述字段中的值复制数据。因而,可以由程序防止不必要的覆盖,为复制指令留下更多时间用于从复制寄存器文件复制。
本发明的主要应用是不具有耦合到相同寄存器文件的端口的功能部件的寄存器文件之间的结果复制。进一步的应用是减小寄存器使用上的压力,即在一个寄存器文件之外临时保存数据,以便使该寄存器文件中的寄存器可以用于其它数据。假使这样就用复制寄存器文件保存最初写入到一个寄存器文件随后又被覆盖的结果,随后当需要该结果时可以再次写回那个寄存器文件。写回可以从复制寄存器文件直接进行,或者在存储在另一寄存器文件之后或在另一寄存器文件中进行。
将用下列附图阐明该数据处理设备的这些和其它目标以及优势方面、数据处理的方法以及编译指令字的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于皇家飞利浦电子股份有限公司,未经皇家飞利浦电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710086397.0/2.html,转载请声明来源钻瓜专利网。