除法器设计电路连接 |
送交者: 粱远声 2010年11月14日17:04:18 于 [灵机一动] 发送悄悄话 |
有一个芯片能做8位除以4位的计算(无符号)。请利用上8位除以4位
这个结果(商和余数)完成16位除以8位的计算(无符号)。写出算法即可。 解: 器件列表: (1) 商寄存器。一个16位的寄存器。 (2) 商加法器。一个16位的加法器,两组输入,加数,被加数。还有一个加减控 制位S,为0时做加法,为1时做减法。当加法器的输入悬空时,加法器把它理 解成逻辑0。 (3) 余数寄存器。一个17位的寄存器。最高位为符号位。 (4) 余数加法器。一个16位的加法器,4组输入,加数0,加数1,加数2,加数3。 每组16位。每个加数都有一个加减控制位,分别是S0,S1,S2,S3。控制位 为0时做加法,为1时做减法。当加法器的输入悬空时,加法器把它理解成逻 辑0。 (5) 幅值转换器。一组16位的数据输入,一位符号输入。一组16位的输出。当符 号位=0时,输出=输入。当符号位=1时,输出=输入的2补码。 (6) 除法器。被除数8位,除数4位,商8位,余数4位 (7) 乘法器。被乘数8位,乘数4位,积12位,余数4位 (8) 一个8位的2传1多路传输器。选择线为0时,第0组(8位)输入被传到输出端。 选择线为1时,第1组(8位)输入被传到输出端。 (9) 三个8位的1传2译码器。选择线为0时,输入(8位)被传到第0组输出端。选择 线为1时,输入(8位)被传到第1组输出端。 一个4位的1传2译码器。选择线为0时,输入(4位)被传到第0组输出端。选择 线为1时,输入(4位)被传到第1组输出端。 (10) 一个12位的1传2译码器。选择线为0时,输入(12位)被传到第0组输出端。选择 线为1时,输入(12位)被传到第1组输出端。 (11) 一个4位输入的或门,其输出为W。 (12)除数寄存器。一个8位的寄存器。 接法: 余数寄存器输出低16位接对应幅值转换器的数据输入16位。余数寄存器的最高位 接幅值转换器的符号位。幅值转换器高4位接或门的4个输入。 余数加法器的输出16位接余数寄存器输入低16位。余数加法器的进位位接余数寄存 器输入最高位(第16位)。余数寄存器输出16位接余数加法器的加数0,S0=0。 2传1多路传输器的第1组(8位)输入接到幅值转换器输出的高8位。2传1多路传输器 的第0组(8位)输入接到幅值转换器输出的中8位(第11位,第10位,... ,第4位) 2传1多路传输器的选择线接或门输出。 2传1多路传输器的输出(8位)接被除数1传2译码器输入(8位)。被除数译码器的 第1组输出接余数加法器加数1的高8位,第0组输出接余数加法器加数1的中8位, 余数寄存器的最高位经过非门接S1。或门输出接被除数译码器的选择线。 2传1多路传输器的输出(8位)接除法器被除数(8位)。除数寄存器的高4位接除法 器的除数(4位)。除法器的商(8位)接商1传2译码器输入(8位)。商译码器的 第1组输出接商加法器加数的中8位,第0组输出接商加法器加数的低8位。 余数寄存器的最高位接商加法器的加数控制位。或门输出接商译码器的选择线。 商加法器的输出(16位)接商寄存器的输入(16位)。商寄存器的输出(16位)接商 加法器的被加数(16位)。 除法器余数(4位)接余数1传2译码器输入(4位)。余数译码器第1组输出接余数加法 器加数2的第11位,第10位,... ,第8位。第0组输出接余数加法器加数2的第7位, 第6位,... ,第4位。余数寄存器的最高位接S2。或门输出W接被除数译码器的选 择线。 除法器的商(8位)接乘法器被乘数(8位)。除数寄存器的低4位接乘法器乘数(4位)。 乘法器的积(12位)接补偿1传2译码器输入(12位)。补偿译码器第1组输出接余数 加法器加数3的高12位,第0组输出接余数加法器加数3的低12位。余数寄存器的 最高位经过非门接S3。 停机逻辑: 幅值转换器输出低16位小于除数时停机。 |
|
|
|
实用资讯 | |