首页> 外国专利> Predecoding technique for indicating locations of opcode bytes in variable byte-length instructions within a superscalar microprocessor

Predecoding technique for indicating locations of opcode bytes in variable byte-length instructions within a superscalar microprocessor

机译:用于在超标量微处理器内指示可变字节长度指令中操作码字节位置的预解码技术

摘要

A predecode unit is configured to predecode variable byte- length instructions prior to their storage within an instruction cache of a superscalar microprocessor. The predecode unit generates three predecode bits associated with each byte of instruction code: a "start" bit, an "end" bit, and a "functional" bit. The start bit is set if the associated byte is the first byte of the instruction. Similarly, the end bit is set if the byte is the last byte of the instruction. The functional bits convey information regarding the location of an opcode byte for a particular instruction as well as an indication of whether the instruction can be decoded directly by the decode logic of the processor or whether the instruction is executed by invoking a microcode procedure controlled by an MROM unit. For fast path instructions, the functional bit is set for each prefix byte included in the instruction, and cleared for other bytes. For MROM instructions, the functional bit is cleared for each prefix byte and is set for other bytes. The type of instruction (either fast path or MROM) may thus be determined by examining the functional bit corresponding to the end byte of the instruction. If that functional bit is clear, the instruction is a fast path instruction. Conversely, if that functional bit is set, the instruction is an NMOM instruction. After an MROM instruction is identified, the functional bits for the instruction may be inverted. Subsequently, the opcode for both fast path and MROM instructions may readily be located (by the alignment logic) by determining the first byte within the instruction that has a cleared functional bit.
机译:预解码单元被配置为在将可变字节长度的指令存储在超标量微处理器的指令高速缓存中之前对其进行预解码。预解码单元产生与指令代码的每个字节相关的三个预解码位:“开始”位,“结束”位和“功能”位。如果相关字节是指令的第一个字节,则将设置起始位。同样,如果字节是指令的最后一个字节,则将设置结束位。功能位传达有关特定指令操作码字节位置的信息,以及是否可以通过处理器的解码逻辑直接解码指令或是否通过调用由处理器控制的微码程序执行指令的指示MROM单元。对于快速路径指令,将为指令中包含的每个前缀字节设置功能位,并为其他字节清除该功能位。对于MROM指令,将为每个前缀字节清除功能位,并为其他字节设置功能位。指令的类型(快速路径或MROM)因此可以通过检查与指令结束字节相对应的功能位来确定。如果该功能位清零,则该指令为快速路径指令。相反,如果该功能位被设置,则该指令为NMOM指令。识别MROM指令后,该指令的功能位可以反转。随后,通过确定指令中具有已清除功能位的第一个字节,可以轻松地定位快速路径和MROM指令的操作码(通过对齐逻辑)。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号