两输入计算器Verilog代码

以下代码已经在VIVADO 2019版本运行成功。

设计代码

`timescale 1ns / 1ps
module Test1025(a,b,sel,dout);

	input [7:0] a,b;
	input [1:0] sel;
	output [7:0] dout;
	reg [7:0] dout;

	always @(sel)
	   case(sel)
  	 		0:dout=a+b;
   			1:dout=a-b;
 	  		2:dout=a*b;
 	  	 	3:dout=a/b;
   			default: dout=0;
  	   endcase  
endmodule

测试代码

`timescale 1ns / 1ps

module Test1100;
reg [7:0] a,b;
reg [1:0] sel;
wire [7:0] dout;

initial begin
   sel=0;
   a=0;
   b=0;
   #100;
   a=12;
   b=3;
   #50 sel=1;
   #50 sel=0;
   #50 sel=1;
   #50 sel=2;
   #50 sel=3;
   #50 sel=4;
end

Test1025 s1(.a	  (a    ),
            .b	  (b    ),
            .sel  (sel  ),
            .dout (dout ));
endmodule

本人也在学习Verilog代码中,欢迎前辈指点。

猜你喜欢

转载自blog.csdn.net/Hennys/article/details/107516852
今日推荐