Verilog循环+BCD加法器+16位移位式乘法器

循环结构与BCD加法器解析
本文介绍多种循环结构的使用方法,包括for、while、forever-disable、repeat等,并探讨了wait语句的功能及应用。此外,还详细解释了BCD加法器的工作原理及其修正方法。

1.for循环

循环体为多条语句用begin<循环语句>end

7fd823d409364604844e6d37bc4c6eec.jpg

 2.while循环

d9231e8f6a2f49a98c1d0185e61899c4.jpg

3.forever-disable循环(详细见上图)

4.repeat循环

若repeat表达式中出现x或z,则表达式将被当成0,语句块不被执行。

repeat循环中出现disable立即结束循环,不管循环了几次或是否结束。

5.wait语句

使程序操作流程暂停,直到wait的表达式变为真后,再执行wait语句块

cffb4e27a6a74b49a11c6ec1956581ca.jpg

 6.begin-end  包含多条语句,语句按顺序执行

fork-join  包含多条语句,语句并行执行

7.BCD加法器

当两数之和大于9时,需加0110进行修正

修正方法F=C4+(S2+S1)

c4c627b79c38485aadf140dca472ccdc.jpg

 8.16位移位式乘法器

①先判断被乘数与乘数是否为0,若为0,积P为0

②判断被乘数与乘数是否为1,若一个为1,积P等于另一个数

③看乘数的第N位是否为1:

     若为1,乘积缓存器等于被乘数左移N位,       乘积等于乘积数加乘积缓存器。

     若为0,则乘数第N位等于第N位加1。

ef865c2fa435426ea95275ff5097c1f4.jpg

 附:hdlbits题

283fecbba1a74aada9b2fe5131f6ab95.jpg

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值