1.4位全加器:能实现4位二进制数全加的数字电路模块,称之为四位全加器(逐位进位 超前进位)多位全加器连接可以是逐位进位,也可以是超前进位。逐位进位也称串行进位,其逻辑电路简单,但速度也较低。 ①第一种方法:仿真源文件代码:(行为描述和结构描述基本上差不多) //数据流描述4位全加器 module add_4 ( input[3:0] a,b, output[3:0] sum, output cout, input cin ); assign{cout,sum} = a+b+cin; endmodule //测试文件 module adder_4(); wire 在写testbeach文件之前,先普及一点testbeach的知识: 一般来讲,在数据类型声明时,和被测模块的输入端口相连的信号定义为reg类型,这样便于在initial语句和always语句块中对其进行赋值;和被测模块输出端口相连的信号定义为wire类型,便于进行检测。Testbench模块最重要的的任务就是利用各种合法的语句,产生适当的时序和数据,以完成测试,并达到覆盖率要求。 测试文件源代码: module adder_4(); wire[3:0] sum; wire cout; reg[3:0] a,b; reg cin; initial begin//这个其实就是真值表的应用 #0 a = 4'b0001; b