首页 > 代码库 > or1200中乘法除法指令说明

or1200中乘法除法指令说明

以下内容摘自《步步惊芯——软核处理器内部设计分析》一书


      OR1200中乘法除法类指令共有9条,表8.3给出了所有的乘法除法类指令的作用及说明。




      说明:表8.3是ORBIS32中给出的指令用法,但是通过分析OR1200的代码,发现有些指令并没有按照ORBIS32实现,如:l.mac、l.maci、l.msb,这三条指令有一个共同点就是涉及到乘法结果的低32位与{MACHI,MACLO}的运算,比如l.mac指令需要乘法结果的低32位加上{MACHI,MACLO},但是在OR1200实现中并没有只取乘法结果的低32位,而是直接使用64位的乘法结果与{MACHI,MACLO}进行相加运算,这就导致了计算结果的不同,这一点读者朋友在使用OR1200中的l.mac、l.maci、l.msb指令时需要特别注意。