目录
题目
Verilog实现一个2位带进位全加器,画出门级电路
核心思路
思路见代码注释
答案
//2位加法器顶层模块 module top(s, cout, a, b, cin); //输入输出端口及变量定义 output [1: 0] s; output cout; input [1 : 0] a, b; input cin; wire carry; //采用结构描述的方式实现一个8位加法器 fulladder m0(s[0], carry, a[0], b[0], cin); fulladder m1(s[1], cout, a[1], b[1], carry); endmodule //1位全加器模块 module fulladder(s, cout, a, b, cin); //输入输出端口定义 output s, cout; input a, b, cin; //采用行为描述的方式实现1位全加器 assign s = a ^ b ^ cin; assign cout = a & b | a & cin | b & cin; endmodule
<