Menu
CoddyTech

编写测试平台

本课属于 Coddy Verilog 学习旅程的“基础知识”单元。第 45 课,共 90 课。

challenge icon

挑战

现在,我们需要测试半加器是否正常工作。请在 initial 块中添加测试代码。

重要:添加测试之前,你必须更改模块端口声明,才能让测试正常运行。

操作步骤:

第 1 步:更改端口声明

  • 将 input a, b 改为 reg a, b(使用分号)
  • 将 output sum, carry 改为 wire sum, carry(使用分号)
  • 完全移除模块端口(模块不应包含 ( ))

第 2 步:添加测试代码

  1. 添加一个 initial begin 块
  2. 在块中添加:
$display("a b | sum carry"); 
a = 0; b = 0; #1 $display("%d %d |  %d    %d", a, b, sum, carry); 
a = 0; b = 1; #1 $display("%d %d |  %d    %d", a, b, sum, carry); 
a = 1; b = 0; #1 $display("%d %d |  %d    %d", a, b, sum, carry); 
a = 1; b = 1; #1 $display("%d %d |  %d    %d", a, b, sum, carry);
    
  1. 添加 $finish; 以结束测试
  2. 添加 end 以关闭 initial 块

亲手试试

module half_adder (
  input a,
  input b,
  
  output sum,
  output carry
);
  assign sum = a ^ b;
  assign carry = a & b;
  
endmodule

基础知识中的所有课

自己练习: Verilog 在线编译器