首页> 外国专利> Method and data processing unit for pipeline processing of register and register modifying specifiers within the same instruction

Method and data processing unit for pipeline processing of register and register modifying specifiers within the same instruction

机译:用于在同一指令内对寄存器和寄存器修改说明符进行流水线处理的方法和数据处理单元

摘要

In a pipeline processor, simultaneous decoding of multiple specifiers in a variable-length instruction causes a peculiar problem of an intra-instruction read conflict that occurs whenever an instruction includes an autoincrement or an autodecrement specifier which references either directly or indirectly a register specified by a previously occurring specifier for the current instruction. To avoid stalls during the preprocessing of instructions by the instruction unit, register pointers rather than register data are usually passed to the execution unit because register data is not always available at the time of instruction decoding. If an intra-instruction read conflict exists, however, the operand value specified by the conflicting register specifier is the initial value of the register being incremented or decremented, and this initial value will have been changed by the time that the execution unit executes the instruction. Preferably, the proper initial value is obtained prior to the incrementing or decrementing of the conflicting register by putting the instruction decoder into a special IRC mode in which only one specifier is decoded per cycle, and if a specifier being decoded is a register specifier, the content of the specified register is transmitted to the execution unit. Circuitry for detecting an intra-instruction read conflict is disclosed as well as an efficient method for handling interrupts, exceptions and flushes that may occur during the processing of an instruction having an intra-instruction read conflict.
机译:在流水线处理器中,同时解码可变长指令中的多个说明符会导致特殊的指令内读取冲突问题,每当一条指令包含直接或间接引用由a指定的寄存器的自动递增或自动递减说明符时,就会发生该冲突。当前指令的先前出现的说明符。为了避免在指令单元对指令进行预处理期间出现停顿,通常将寄存器指针而不是寄存器数据传递给执行单元,因为寄存器数据在指令解码时并不总是可用。但是,如果存在指令内读取冲突,则由冲突的寄存器说明符指定的操作数值为正在递增或递减的寄存器的初始值,并且该初始值将在执行单元执行指令时已被更改。 。优选地,通过使指令解码器进入特殊的IRC模式来在冲突寄存器的递增或递减之前获得适当的初始值,在该IRC模式中,每个周期仅解码一个指定符,并且如果被解码的指定符是寄存器指定符,则指定寄存器的内容被发送到执行单元。公开了用于检测指令内读取冲突的电路以及用于处理在具有指令内读取冲突的指令的处理期间可能发生的中断,异常和刷新的有效方法。

著录项

相似文献

  • 专利
  • 外文文献
  • 中文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号