[发明专利]一种低功耗流水线的实现方法有效
申请号: | 201510123301.8 | 申请日: | 2015-03-20 |
公开(公告)号: | CN104699463B | 公开(公告)日: | 2017-05-17 |
发明(设计)人: | 赵元;童元满;李仁刚 | 申请(专利权)人: | 浪潮集团有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 姜明 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 功耗 流水线 实现 方法 | ||
技术领域
本发明公开一种低功耗流水线的实现方法,属于芯片设计领域。
背景技术
本发明涉及芯片设计领域,具体涉及一种多节点网络之中网络控制协议芯片的电路实现过程中数据通路的流水线调度处理的新型实现方法。
随着服务器应用领域的不断发展,高端服务器的应用需求已经进入了一个重要阶段。复杂的体系结构实现支持高端服务器系统实现高性能指标即高安全性、高可用性、高可靠性等特点。其中网络控制类芯片控制多路处理器系统,使系统内部报文传输达到高效可靠、安全稳定的目的。对于该类的控制芯片的设计来说,多路高速报文的流水线高效调度是非常有必要的。利用流水线的高效调度,一般情况下需要每一级都进行寄存器锁存传输,然后根据每级流水线设定的处理对数据进行更新,并传输至下一级寄存器。对于大规模高速协议处理器而言,单位时间处理的数据量相当庞大,且没有必然的相关性,采用常规方法导致寄存器的反转率非常高,而对于芯片电路的供电与压降变化是有很高的设计要求与设计难度的,传统的流水线结构处理方式已不能满足要求,并且传统流水线结构的功耗与驱动也难达要求,导致电路后端设计具有极大的风险。不利于电路的设计者设计电路。
鉴于此,本发明提供一种低功耗流水线的实现方法,有助于在保持寄存器与逻辑电路规模不变的情况下,降低寄存器的反转率,在电路持续长时间有效工作的时候,对于动态功耗的降低有显著的帮助。采用新型的流水线电路结构,构建了唯一不变的寄存器堆栈,只有部分数据在流水线处理过程中进行更新,有助于在保持寄存器与逻辑电路规模不变的情况下,降低寄存器的反转率,在电路持续长时间有效工作的时候,对于动态功耗的降低有显著的帮助,优化了电路设计的资源,简化了电路结构,减轻了芯片后端设计的复杂度,从整体上降低整个芯片系统设计复杂度。
发明内容
本发明针对流水线的高效调度,对于大规模高速协议处理器而言,数据量庞大,采用常规方法导致寄存器的反转率非常高,增加设计要求与设计难度,并且传统的流水线结构处理方式不能满足现有要求,导致电路后端设计具有极大的风险,不利于电路的设计者设计电路等不足和缺陷,提供一种低功耗流水线的实现方法,有助于在保持寄存器与逻辑电路规模不变的情况下,降低寄存器的反转率,在电路持续长时间有效工作的时候,对于动态功耗的降低有显著的帮助。
本发明提出的具体方案是:
一种低功耗流水线的实现方法,具体步骤如下:
①建立新型流水线,从流水线输入端建立流水线第1级直至流水线第n级的流水线输出端,逐级流水线电路相连,且跨级流水线电路也互相连通,每级流水线内设寄存器数据指针,流水线外设寄存器堆栈,寄存器堆栈按照流水线级数内的寄存器数据指针进行分组,根据流水线级数多少,对应设有多少组寄存器在寄存器堆栈中;
②每级流水线内构建流水线主控单元,使用流水线主控单元读取本级流水线需要处理的数据,以及将本级寄存器修改的数据内容输出到寄存器堆栈,并给出寄存器堆栈需要写入的寄存器数据指针,以及给出下一级流水线主控单元和寄存器堆栈需要读出的寄存器数据指针;
③寄存器堆栈设数据指针管理单元,将每个寄存器组的数据与每级流水线的数据以及读写指针进行动态桥接管理,每一组数据进入到流水线中,需要在寄存器堆栈中占用一组寄存器,最后一级流水线输出后,对应在寄存器堆栈相应寄存器数据指针中的数据失效,此指针与对应的寄存器组提供给新进入流水线的数据使用;每一级流水线只更新本级流水线修改的数据到寄存器堆栈中;每一级流水线主控单元根据本级处理决定输出到下级流水线主控单元的数据,将其寄存器数据指针同时送至寄存器堆栈和下一级主控单元。
将各级流水线主控单元的写入数据线与对应写入寄存器数据指针所指定寄存器组的输入数据接口相连接,各级流水线的读出数据线与对应读出寄存器数据指针所指定的寄存器组的输出数据接口相连接。
所述的数据从进入到流水线,到从最后一级流水线输出的过程为:数据进入流水线第1级时,寄存器堆栈的数据指针管理单元块分配了一个固定指针用于存储数据,在流水线1处理完成后,将更新的数据写入分配的固定指针中,同时将指针锁存给第2级流水线使用;第2级流水线根据从第一级流水线锁存的指针数值,选取寄存器堆栈中对应指针的寄存器组数据作为输入数据,进行数据处理后,同样是将数据写入此指针指定的寄存器堆栈组中去;以后每一级流水线更新数据都是写入寄存器堆栈的同一组数据中去,直到最后一级流水线处理完成后直接输出最终处理结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮集团有限公司,未经浪潮集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510123301.8/2.html,转载请声明来源钻瓜专利网。