发明名称 应用递延式时脉闸控机制以降低功率消耗之管线式运算电路及其相关驱动方法
摘要 本发明提供一种应用递延式时脉闸控机制以降低功率消耗之管线式运算电路及其相关驱动方法,且该驱动方法可避免影响该管线式运算电路的运作频率。一管线式运算电路包含有复数个运算器以串级方式连接形成至少一管线,一管线控制单元用来产生至少一控制讯号至每一运算器以控制每一运算器之输出资料是否传送至下一级运算器,以及一闸控数值运算单元,其系依据管线控制单元所产生之控制讯号以设定每下一级运算器之闸控数值,当每一级运算器开始执行时,其依据该闸控闸控数值之设定来决定是否启动一时脉闸控单元以隔绝输入下一级运算器之暂存单元之时脉讯号以降低功率消耗。
申请公布号 TWI253556 申请公布日期 2006.04.21
申请号 TW092115912 申请日期 2003.06.11
申请人 智原科技股份有限公司 发明人 陈崇辉
分类号 G06F1/04 主分类号 G06F1/04
代理机构 代理人 许锺迪 台北县永和市福和路389号5楼
主权项 1.一种运算电路,其包含有: 复数个运算器,以串级(cascade)方式连接形成至少一 管线(pipeline),每一运算器包含有: 一逻辑运算单元,用来执行一预定逻辑运算(logic operation); 一第一暂存单元,电连接于该逻辑运算单元,用来 依据一时脉讯号之驱动以将该逻辑运算单元之输 出资料传送(pipe)至下一级运算器之逻辑运算单元, 该时脉讯号系周期性地转变(transit)于一第一逻辑 准位与一第二逻辑准位之间; 一时脉闸(clock-gating)单元,电连接于该第一暂存单 元,用来于该运算器开始执行时,依据一闸控数値 决定是否隔绝(gate)输入该第一暂存单元之时脉讯 号而使该时脉讯号维持该第一逻辑准位;以及 一第二暂存单元,电连接于该时脉闸控单元,用来 储存该闸控数値; 一管线控制单元(pipeline control unit),用来产生至少 一控制讯号至每一运算器,以控制每一运算器之输 出资料是否传送至下一级运算器;以及 一闸控数値运算单元,用来依据该管线控制单元所 产生之控制讯号以设定每一运算器之闸控数値。 2.如申请专利范围第1项所述之运算电路,其中该第 一逻辑准位系为"0",以及该第二逻辑准位系为"1"。 3.如申请专利范围第1项所述之运算电路,其中该第 一暂存单元包含有至少一正反器(flip-flop)。 4.如申请专利范围第1项所述之运算电路,其中该第 二暂存单元包含有至少一正反器(flip-flop)。 5.如申请专利范围第1项所述之运算电路,其中该管 线控制单元可分别输出一第一控制讯号至每一运 算器以驱动其逻辑运算单元之输出资料传送至下 一级运算器,以及可分别输出一第二控制讯号至每 一运算器以取消(nullify)其逻辑运算单元之输出资 料。 6.如申请专利范围第5项所述之运算电路,其中当一 第一运算器之闸控数値设定为一预定値而使该第 一运算器之时脉闸控单元未隔绝该时脉讯号,该管 线控制单元未输出该第一控制讯号至前一级运算 器,该管线控制单元未输出该第一控制讯号至该第 一运算器,以及该管线控制单元未输出该第二控制 讯号至该第一运算器,则该闸控数値会维持(hold)该 预定値。 7.如申请专利范围第5项所述之运算电路,其中当该 管线控制单元输出该第一、二控制讯号至一第一 运算器,则下一级运算器之闸控数値会设定为一预 定値以使该下一级运算器之时脉闸控单元隔绝该 时脉讯号。 8.如申请专利范围第5项所述之运算电路,其中当该 管线控制单元输出该第一控制讯号至一第一运算 器,且该管线控制单元未输出该第一控制讯号至前 一级运算器时,该第一运算器之闸控数値会设定为 一预定値以使该第一运算器之时脉闸控单元隔绝 该时脉讯号。 9.如申请专利范围第5项所述之运算电路,其中当一 第一运算器之闸控数値对应一预定値而使该第一 运算器之时脉闸控单元隔绝该时脉讯号,且该管线 控制单元输出该第一控制讯号至该第一运算器,则 下一级运算器之闸控数値会设定为该预定値。 10.如申请专利范围第1项所述之运算电略,其系应 用一超纯量(super-scalar)架构。 11.如申请专利范围第1项所述之运算电路,其系应 用一超管线(super-pipeline)架构。 12.如申请专利范围第1项所述之运算电路,其系为 一微处理器(microprocessor)。 13.如申请专利范围第1项所述之运算电路,其中该 运算电路系为一数位讯号处理器(digital signal processor, DSP)。 14.一种运算电路之时脉控制方法,该运算电路包含 有: 复数个运算器,以串级(cascade)方式连接形成至少一 管线(pipeline),每一运算器包含有: 一逻辑运算单元,用来执行一预定逻辑运算(loglc operation);以及 一第一暂存单元,电连接于该逻辑运算单元,用来 依据一时脉讯号之驱动以将该逻辑运算单元之输 出资料传送(pipe)至下一级运算器之逻辑运算单元, 该时脉讯号系周期性地转变(transit)于一第一逻辑 准位与一第二逻辑准位之间; 该时脉控制方法包含有: 设置一时脉闸(clock-gating)单元于每一运算器中,电 连接该时脉闸单元与该第一暂存单元,用来隔绝( gate)输入该第一暂存单元之时脉讯号而使该时脉 讯号维持该第一逻辑准位; 设置一第二暂存单元于每一运算器中,电连接该第 二暂存单元与该时脉闸控单元,用来储存一闸控数 値; 设置一管线控制单元(pipeline control unit)于该运算 电路中,用来产生至少一控制讯号至每一运算器, 以控制每一运算器之输出资料是否传送(pipe)至下 一级运算器; 使用该管线控制单元所产生之控制讯号来设定每 一运算器之闸控数値;以及 当每一运算器闸始执行时,使用该运算器之闸控数 値来控制其相对应时脉闸控单元是否隔绝输入其 第一暂存单元之时脉讯号。 15.如申请专利范围第14项所述之时脉控制方法,其 中该第一逻辑准位系为"0"以及该第二逻辑准置系 为"1"。 16.如申请专利范围第14项所述之时脉控制方法,其 中该第一暂存单元包含有至少一正反器(flip-flop) 。 17.如申请专利范围第14项所述之时脉控制方法,其 中该第二暂存单元包含有至少一正反器(flip-flop) 。 18.如申请专利范围第14项所述之时脉控制方法,其 中该管线控制单元可分别输出一第一控制讯号至 每一运算器以驱动其逻辑运算单元之输出资料传 送至下一级运算器,以及可分别输出一第二控制讯 号至每一运算器以取消(nullify)其逻辑运算单元之 输出资料。 19.如申请专利范围第18项所述之时脉控制方法,其 中设定每一运算器之闸控数値的步骤包含有: 当一第一运算器之闸控数値设定为一预定値而使 该第一运算器之时脉闸控单元未隔绝该时脉讯号, 该管线控制单元未输出该第一控制讯号至前一级 运算器,该管线控制单元未输出该第一控制讯号至 该第一运算器,以及该管线控制单元未输出该第二 控制讯号至该第一运算器,则该闸控数値会维持( hold)该预定値。 20.如申请专利范围第18项所述之时脉控制方法,其 中设定每一运算器之闸控数値的步骤包含有: 当该管线控制单元输出该第一、二控制讯号至一 第一运算器,则下一级运算器之闸控数値会设定为 一预定値以使该下一级运算器之时脉闸控单元隔 绝该时脉讯号。 21.如申请专利范围第18项所述之时脉控制方法,其 中设定每一运算器之闸控数値的步骤包含有: 当该管线控制单元输出该第一控制讯号至一第一 运算器,且该管线控制单元未输出该第一控制讯号 至前一级运算器时,该第一运算器之闸控数値会设 定为一预定値以使该第一运算器之时脉闸控单元 隔绝该时脉讯号。 22.如申请专利范围第18项所述之时脉控制方法,其 中设定每一运算器之闸控数値的步骤包含有: 当一第一运算器之闸控数値对应一预定値而使该 第一运算器之时脉闸控单元隔绝该时脉讯号,且该 管线控制单元输出该第一控制讯号至该第一运算 器,则下一级运算器之闸控数値会设定为该预定値 。 23.如申请专利范围第14项所述之时脉控制方法,其 中该运算电路系应用一超纯量(super-scalar)架构。 24.如申请专利范围第14项所述之时脉控制方法,其 中该运算电路系应用一超管线(super-pipeline)架构。 25.如申请专利范围第14项所述之时脉控制方法,其 中该运算电路系为一微处理器(microprocessor)。 26.如申请专利范围第14项所述之时脉控制方法,其 中其中该运算电路系为一数位讯号处理器(digital signal processor,DSP)。 图式简单说明: 图一为习知时脉闸电路的简单示意图。 图二为图一所示之时脉闸电路的时脉讯号示意图 。 图三为习知管线式逻辑运算电路的方块示意图。 图四为图三所示之时脉闸控单元的简单电路示意 图。 图五为图三所示之时脉闸控单元的时脉时序示意 图。 图六为本发明管线式运算电路的功能方块示意图 。
地址 新竹市新竹科学工业园区力行三路5号