一种流水线可逆CPU设计与仿真系统技术方案

技术编号:11948573 阅读:81 留言:0更新日期:2015-08-26 18:06
本发明专利技术公开了一种流水线可逆CPU设计与仿真系统,流水线可逆CPU采用多种可逆指令进行操作,且可逆指令采用多条并行流水线来执行,流水线包括多个执行阶段。该流水线可逆CPU散热状况良好、程序执行速度快,程序执行时间短,数据处理的稳定性和准确性好。

【技术实现步骤摘要】

本专利技术属于计算机领域,具体涉及一种流水线可逆CPU设计与仿真系统
技术介绍
随着制造工艺的进步,集成电路的集成度越来越高,每平方毫米单位面积内包含的晶体管数量已到达百万数量级,芯片散热问题成为了制约集成电路进一步发展的重要因素,可逆计算是解决芯片散热问题的有效途径之一。区别于传统的计算模型,可逆计算不仅具备正向确定性,还具备反向确定性,其包含的所有逻辑操作均是可逆的,因此在计算过程不会擦除信息。Landauer曾指出,除了由工艺或材质导致的散热,计算本身也会导致热耗散,具体来说,每擦除1比特的信息将会产生kTln2焦耳的热量(其中k为玻尔兹曼常量、T为室温)。Bennett指出任何计算都可转换为可逆计算,从而在理想状况下产生的热耗散无限接近于零。可逆电路在功耗和散热方面的优势已在理论和实践方面都得到证明,很多学者对可逆CPU的ALU单元、整体架构和指令系统作了深入研究,Pendulum是可查的第一款可逆CPU,其为可逆CPU的设计提供了原型和模板,但Pendulum包括后来出现的可逆CPU均属于单周期CPU,即每条指令的全部动作都在一个时钟周期内完成,一个指令执行完才能再执行下一条指令,这种缺乏指令级并发的设计显然不符合现代处理器的发展趋势和特点。故一种散热状况良好、可以加快程序执行速度,缩短了程序执行时间,提高数据稳定性的一种流水线可逆CPU设计与仿真系统亟待提出。
技术实现思路
为了解决上述技术问题,本专利技术提出了一种流水线可逆CPU设计与仿真系统,该CPU散热状况良好、程序执行速度快,程序执行时间短,数据处理的稳定性和准确性好。为了达到上述目的,本专利技术的技术方案如下:一种流水线可逆CPU设计与仿真系统,流水线可逆CPU采用多种可逆指令进行操作,且可逆指令采用多条并行流水线来执行,流水线包括多个执行阶段。本专利技术一种流水线可逆CPU设计与仿真系统不同于单周期CPU,其采用流水线技术,大大加快程序执行速度,缩短了程序执行时间,且由于本专利技术为可逆CPU采用可逆指令来执行操作,散热效果好。在上述技术方案的基础上,还可做如下改进:作为优选的方案,可逆指令包括:算术运算/逻辑运算指令,用于进行算数/逻辑运算;跳转指令,用于进行指令的跳转;访存指令,用于对流水线可逆CPU的数据存储器进行直接访问。采用上述优选的方案,运用不同的指令来实现对本专利技术流水线可逆CPU的不同操作。作为优选的方案,流水线包括七个执行阶段,依次为:取指令阶段、指令译码阶段、读寄存器阶段、执行运算/访问存储器阶段、写寄存器阶段、指令编码阶段以及返回指令阶段。采用上述优选的方案,将可逆指令分解为多个阶段来执行,让不同可逆指令的各步操作重叠,从而实现多条可逆指令并行处理,有效加速程序运行过程。作为优选的方案,流水线的执行阶段具有对称性。采用上述优选的方案,保证本专利技术流水线可逆CPU可以有效实现正向和反向执行可逆指令。作为优选的方案,可逆CPU设有逆指令映射表,若流水线可逆CPU接受到反向执行的信号,从逆指令映射表中查询该逆指令操作码,根据逆指令操作码生成操作信号。采用上述优选的方案,无需为反向执行指令设置专门的运算器和传输总线,降低电路复杂度。作为优选的方案,流水线可逆CPU包括:运算器,用于进行算术运算;寄存器组,用于对计算过程中的中间数据进行存储;数据存储器,用于对数据进行存储;指令存储器,用于对可逆指令进行存储;控制逻辑器,用于根据操作码生成操作信号;逆控制逻辑器,用于根据操作信号还原操作码;DIR方向寄存器,用于控制执行方向;PC程序计数器,用于指向当前可逆指令;PPC先前程序计数器,用于指向当前可逆指令的前一条可逆指令;BR跳转寄存器,用于实现指令的跳转。采用上述优选的方案,结构简单,各司其职。作为优选的方案,流水线可逆CPU包括:IF/ID段寄存器,用于保存取指令阶段与指令译码阶段之间的数据;ID/RR段寄存器,用于保存指令译码阶段与读寄存器阶段之间的数据;RR/EXE段寄存器,用于保存读寄存器阶段与执行运算/访问存储器阶段之间的数据;EXE/WR段寄存器,用于保存执行运算/访问存储器阶段与写寄存器阶段之间的数据;WR/IE段寄存器,用于保存写寄存器阶段与指令编码阶段之间的数据;IE/IR段寄存器,用于保存指令编码阶段与返回指令阶段之间的数据。采用上述优选的方案,设置流水线不同阶段之间的段寄存器可以有效保证其不同阶段之间的数据不会发生错误和偏差。作为优选的方案,流水线可逆CPU还包括数据冒险检测转换单元。采用上述优选的方案,增加了数据冒险检测转换单元可以有效提高数据的稳定性和提高操作的执行效率。作为优选的方案,数据冒险检测转换单元包括:Read-Read转发器,用于测试ID/RR段寄存器中的寄存器ID字段和RR/EXE的源操作数寄存器ID字段是否有交集;如有交集,则选择转发自RR/EXE段寄存器的相应数据作为该可逆指令执行阶段的操作数;如没有交集,则选择来自于寄存器组的相应数据作为该可逆指令执行阶段的操作数;Write-Read转发器,判断RR/EXE段寄存器中的任一操作数和EXE/WR段寄存器中的目的操作数是否出自相同寄存器;若出自相同的寄存器,则将存储于EXE/WR段寄存器中的相应数据转发至运算器的输入端;若不是出自相同的寄存器,则将存储于RR/EXE段寄存器中的相应数据转发至运算器的输入端。采用上述优选的方案,Read-Read转发器用于解决Read-Read冒险;Write-Read转发器用于解决Write-Read冒险。附图说明图1为本专利技术实施例提供的一种流水线可逆CPU设计与仿真系统的逻辑结构示意图。图2为本专利技术实施例提供的可逆指令流水线结构示意图。图3为本专利技术实施例提供的Read-Read冒险示意图。图4为本专利技术实施例提供的Read-Read转发器数据通路图。图5为本专利技术实施例提供的Write-Read冒险示意图。图6为本专利技术实施例提供的Write-Read转发器数据通路图。具体实施方式下面结合附图详细说明本专利技术的优选实施方式。为了达到本专利技术的目的,在一种流水线可逆CPU设计与仿本文档来自技高网
...
一种流水线可逆CPU设计与仿真系统

【技术保护点】
一种流水线可逆CPU设计与仿真系统,其特征在于,所述流水线可逆CPU采用多种可逆指令进行操作,且所述可逆指令采用多条并行流水线来执行,所述流水线包括多个执行阶段。

【技术特征摘要】
1.一种流水线可逆CPU设计与仿真系统,其特征在于,所述流水线
可逆CPU采用多种可逆指令进行操作,且所述可逆指令采用多条并行流
水线来执行,所述流水线包括多个执行阶段。
2.根据权利要求1所述的流水线可逆CPU设计与仿真系统,其特征
在于,所述可逆指令包括:
算术运算/逻辑运算指令,用于进行算数/逻辑运算;
跳转指令,用于进行指令的跳转;
访存指令,用于对所述流水线可逆CPU的数据存储器进行直接访问。
3.根据权利要求2所述的流水线可逆CPU设计与仿真系统,其特征
在于,所述流水线包括七个执行阶段,依次为:取指令阶段、指令译码
阶段、读寄存器阶段、执行运算/访问存储器阶段、写寄存器阶段、指令
编码阶段以及返回指令阶段。
4.根据权利要求3所述的流水线可逆CPU设计与仿真系统,其特征
在于,所述流水线的执行阶段具有对称性。
5.根据权利要求1-4任一项所述的流水线可逆CPU设计与仿真系统,
其特征在于,所述可逆CPU设有逆指令映射表,若所述流水线可逆CPU
接受到反向执行的信号,从所述逆指令映射表中查询该逆指令操作码,
根据所述逆指令操作码生成操作信号。
6.根据权利要求6所述的流水线可逆CPU设计与仿真系统,其特征
在于,所述流水线可逆CPU包括:
运算器,用于进行算术运算;
寄存器组,用于对计算过程中的中间数据进行存储;
数据存储器,用于对数据进行存储;
指令存储器,用于对所述可逆指令进行存储;
控制逻辑器,用于根据操作码生成操作信号;
逆控制逻辑器,用于根据操作信号还原操作码;
DIR方向寄存器,用于控制执行方向;
PC程序计数器,用于指向当前所述可逆指令;
PPC先前程序计数器,用于指向当前所述可逆指令的前一条所述可
逆指令;
BR跳转寄存器,用于实现指令的跳...

【专利技术属性】
技术研发人员:卫丽华朱鹏程
申请(专利权)人:南通理工学院
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1