Verilog基础之四、乘法器实现
一、前言
本文介绍verilog实现乘法器,乘法的实现本质可以通过移位和加法实现,乘法的实现无需时序控制,用组合逻辑电路实现即可,因此即可用always或assign实现。
二、代码实现
2.1 工程代码
工程中同时包含了always和assign的实现两个4位2进制的乘法,always实现更多的是说明乘法实现的原理来编写代码,assign方法则更简便
仿真代码
2.2 综合结果
两种方式综合的结果相同,都是用LUT和CARRY实现

2.3 仿真结果
使用modelsim仿真结果如下,乘数a每5ns增加1,乘数b初始值为3,40ns和70ns时设为7和15,通过out_always和out_assign可知结果的正确性,并且两者的值一致。

三、参考
书籍《Vivado 入门与FPGA设计实例》中4.9乘法器