Mips
文章平均质量分 61
CPU设计实战Mips指令集
weixin_46191137
这个作者很懒,什么都没留下…
展开
-
基于华莱士树+booth2位编码+32压缩器实现的乘法器(Verilog实现)
3-2压缩器实际上就是一个保存进位加法器(csa)。他的功能就是将3个操作数转换为2个操作数(不会溢出,最多1+1+1=10,2位足够了)。原理部分只做简要说明,想要深入理解的话可自行搜索资料或查看文章末尾的参考资料。华莱士树实际上就是将多个32压缩器拼接起来。8种booth_code对应的部分积操作。代码部分有详细注释,请结合注释理解代码。[4]CPU设计实战(汪文祥)第五章。压缩器内的逻辑运算如下。原创 2023-10-09 13:51:36 · 1362 阅读 · 7 评论 -
CPU设计实战(汪文祥)第五章指令添加
不止op_div,src_is_signed也要考虑。因为实际上在div信号到来时,有符号除法器和无符号除法器都会收到信号。不区分符号会导致complete信号和div64_result信号的混乱。原创 2023-10-16 09:18:12 · 159 阅读 · 1 评论 -
乘法运算器(操作数32位_结果64位)verilog实现
移动乘积寄存器和乘数寄存器,这样只需要和乘积寄存器的左半部分做加法(即只需要32位的加法器就能满足需求)(3周期1个循环)将乘数放到乘积寄存器的低32位,节省了一个寄存器(无需使用乘数寄存器了),减少了一个时钟周期(2周期1个循环)原创 2023-09-28 10:22:06 · 384 阅读 · 0 评论 -
除法计算器(补码一位除法)
我的理解是,不要在移位时控制是否要加回原码和上商为1或0,最好能和移位控制分离。虽然代码能跑通,结果也对,但是感觉写的不是很好。原创 2023-09-29 16:59:43 · 106 阅读 · 1 评论 -
加减乘除计算器(32位)verilog实现
关于相关原理可以百度相关介绍或者参照我之前的文章。加减法采用纯组合逻辑,没有做busy判定(后续可以加上)。目前没有做符号位判定。除法低32位为余数,33-64位为商。原创 2023-09-30 15:51:58 · 654 阅读 · 1 评论