Advertisement

串行与并行的乘法

阅读量:

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

串行乘法

OR1200系统中串行乘法模块采用了"移位加法"迭代算法,在设计过程中参考了传统手工二进制乘法的步骤。例如:如图8.1所示的二进制数相乘案例。

图8.1 手工计算二进制乘法的过程

根据图形可知,在手工计算过程中

图8.2 “移位——加”迭代算法的结构图、运算过程

计算步骤如下:

(1)初始化B为被乘数,A为乘数,D为0,进位标志C为0。

(2)首先判定 A\left [ 0 \right ] 的值是否等于1;如果上述条件满足,则执行 D+B 的操作;否则则执行 D+0 的操作;不论上述条件中的变量 A\left [ 0 \right ] 取何值,在完成上述计算后其运算结果会被存储至变量 D 中,并会将进位传递至变量 C

(3)检测此时的A[0]是否为乘数的最末位。如

全部评论 (0)

还没有任何评论哟~