处理器制造技术

技术编号:2820031 阅读:177 留言:0更新日期:2012-04-11 18:40
本发明专利技术的处理器具有转发功能,包括:属性信息保持部(141),保持与向寄存器的写入抑制有关的属性信息;以及寄存器写入抑制电路(126),在发生转发时,按照属性信息抑制被转发的数据向寄存器的写入。属性信息保持部(141)至少与一个寄存器相对应保持所述属性信息。或所述属性信息保持部是多个流水线缓冲器的一部分,将转发对象的数据和所述属性信息一起传递给后级的流水线缓冲器。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及具有转发(forwarding)控制的处理器,尤其涉及低耗电化。
技术介绍
以往,在被流水线化的处理器中,为了提高处理性能采用了转发(FWD) 控制。转发控制是指,将作为指令的执行结果的数据,从输出在先执行的 指令的执行结果的阶段(例如,MEM(存储器访问)阶段、WB(写回)阶段) 提前到读取在后指令的数据的阶段(EX阶段)执行。据此,由于可以通过 旁路(bypass)来传送作为在先执行的指令的执行结果的数据,因此可以 解除或降低数据竞争(data hazard)。图1示出了具有转发控制结构的、以往的被流水线化的处理器的结构。 图中粗线主要表示数据,细线主要表示控制信号。如该图所示,具有转发控制结构的、以往的被流水线化的处理器包括 指令译码部910、指令控制部920、指令执行部930、以及寄存器文件940。 指令控制部920具有FWD控制电路921、寄存器文件写入电路922、 流水线缓冲控制电路923、运算处理控制电路924、以及存储器存取控制 电路925。指令执行部930具有运算处理执行电路931、存储器存取执 行电路932、 FWD选择器933、MEM选择器934、流水线缓冲器(EX)935、 流水线缓冲器(MEM)936、以及流水线缓冲器(WB)937。寄存器文件940 具有以寄存器编号(并0 并N)管埋的多个寄存器(Reg并0 Reg并N)所构成的 数据保持部942。并且,流水线包括五个阶段DEC(Decode :译码)阶段、 ED(Instruction Dispatch and register fetch :指令发行/寄存器读取) 阶段、EX(EXecute :执行)阶段、MEM(MEMory access :存储器访问)阶 段、以及WB(Write Back :写回)阶段。首先,按各个流水线的阶段对以往的被流水线化的处理器中指令执行时的工作进行说明。在DEC阶段,指令译码部910生成ID阶段以后被使用的指令译码信 息,并输出到指令控制部920。在ID阶段,按照指令译码信息从寄存器文件940中读取寄存器数据, 从而生成指令执行时所使用的输入数据,并输出到流水线缓冲器(EX)935。在EX阶段,按照指令译码信息,对流水线缓冲器(EX)935中所存储的 指令执行输入数据,运算处理控制电路924或存储器存取控制电路925生 成控制信号,并使运算处理执行电路931和存储器存取执行电路93 2工作。并且,流水线缓冲控制电路923将针对执行运算处理的指令的指令执 行结果存储到流水线缓冲器(MEM)936,所述执行运算处理的指令即是运算 处理执行电路931的输出。在MEM阶段,流水线缓冲控制电路923按照指令译码信息,生成选 择控制信号,并输出到MEM选择器934,以使MEM选择器934选择流 水线缓冲器(MEM)936的值或存储器存取执行电路932的输出的任一个, 所述存储器存取执行电路932的输出是指,针对进行存储器存取的指令的 指令执行结果。并且,流水线缓冲控制电路923将作为MEM选择器934的输出的指 令执行结果存储到流水线缓冲器(WB)937。在WB阶段,按照指令译码信息,寄存器文件写入控制电路922生成 针对寄存器文件940的写入控制信号,并通过将作为流水线缓冲器 (WB)937的输出的指令执行结果写入到寄存器文件940,从而使数据保持 部942得以更新。以下,对转发控制结构进行说明。FWD控制电路921进行判断,判断由作为在先被执行的指令的EX阶 段、MEM阶段、WB阶段的指令写入的各寄存器,和由作为在后被执行的 指令的ID阶段的指令读取的寄存器是否一致。根据上述的判断结果,可分 为以下(1)一(4)的工作。(l)判断结果为,由ID阶段的指令读取的寄存器,和由EX阶段、MEM 阶段、WB阶段的指令写入的寄存器中的某个一致的情况下,FWD控制电 路921生成选择控制信号,作为指令执行输入数据输出到FWD选择器933,以使FWD选择器933选择从寄存器文件940中读取的寄存器数据。(2) 在由ID阶段的指令读取的寄存器,和由EX阶段的指令写入的寄 存器一致的情况下,由于针对应该被读取的寄存器的指令执行结果还没有 被正确地写入,因此,FWD控制电路921使流水线暂时停止。(3) 在由ID阶段的指令读取的寄存器,和由MEM阶段的指令写入的 寄存器一致的情况下,由于存在将指令执行结果从MEM阶段转发到ID阶 段的通路,因此,FWD控制电路921生成选择控制信号,作为指令执行 时所使用的输入数据输出到FWD选择器933,以使FWD选择器933选 择将指令执行结果从MEM阶段转发到ID阶段的通路。(4) 在由ID阶段的指令读取的寄存器,和由WB阶段的指令写入的寄 存器一致的情况下,由于存在将指令执行结果从WB阶段转发到ID阶段的 通路,因此,FWD控制电路921生成选择控制信号,作为指令执行时所 使用的输入数据输出到FWD选择器933,以使FWD选择器933选择将 指令执行结果从WB阶段转发到ID阶段的通路。据此,实现了从WB阶段 转发到ID阶段的工作。流水线缓冲控制电路923将作为FWD选择器933的输出的指令执行 输入数据,存储到流水线缓冲器(EX)935。接着,利用图2A到图2D,对实现转发工作的指令串的一个例子进行 说明。图2A示出了具有数据依赖关系的指令串的一个例子。该图的在先被 执行的加敏ld)指令是指,从存储器中读取值为Reg并31的地址的数据,并 将读取的数据加载到Reg并0。接在后边的加法(add)指令是指,使Reg#0 的值和Reg并l的值相加,将相加后的结果存储到Reg孝2。图2B示出了在转发的定时,尤其是从MEM阶段向ID阶段进行转发 的定时的一个例子,示出了在执行图2A的指令串时的流水级和执行周期。 不过,省略DEC阶段以前的阶段。上述的加载指令在ID阶段、EX阶段、 MEM阶段、WB阶段以tl到t4这四个周期被顺序地进行了流水线处理, 没有发生流水线竞争。上述的add指令在上述的四个阶段以t2到t5这五 个周期被处理,在t3周期发生了流水线竞争。在t3周期,由于在先被执 行的加载指令的执行(从存储器中读取应该被存储到Reg并O中的数据)还没有结束,因此,接在后边的add指令的执行中所需要的输入数据(应该 被存储到Reg并0中的数据)没有被读取。但是,在t3周期(尤其是后半 部分),由在先被执行的加载指令的MEM阶段对接在后边的加法指令的ID 阶段,输入数据(应该被存储到Reg并O中的数据)通过FWD选择器933, 由MEM选择器934被转发到流水线缓冲器(EX)935。据此,在从t3周期 变化为t4周期时,即使向Reg并0的写入没有结束,接在后边的add指令 也可以从ID阶段转移到EX阶段。另外,图2B的定时与在图2A中的加载指令和加法指令之间插入一个 不进行存储器存取的单纯指令(例如,寄存器、作为指示对存储器不进行 任何处理的指令的nop指令等)时的定时相同。这样,从MEM阶段向ID 阶段的转发工作,在图2A的指令串的情况,或对于图2A的指令串,在加 载指令和加法指令之间插入一个单纯的指令的情况下被执行。并且,在插 入一个指令的情况下不发生本文档来自技高网...

【技术保护点】
一种处理器,具有转发功能,其特征在于,包括: 保持单元,保持与向寄存器的写入抑制有关的属性信息;以及 控制单元,在发生了转发时,按照属性信息来抑制被转发的数据向寄存器的写入。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:深井慎一郎川村信
申请(专利权)人:松下电器产业株式会社
类型:发明
国别省市:JP[日本]

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

1