马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
小弟初来乍到,还请大家多多指教。最近开始学Verilog,很多问题不懂。希望能够得到大家的帮助。 我想在testbench生产这样一个波形: 有个2位信号sel,产生前10ns为00,后面每30ns 加1的波形。如下 0 10ns 40ns 70ns 100ns 130ns....... 00 00 01 10 11 但我现在只能产生30ns循环的波形。code如下
- `timescale 1ns / 1ps
- module Test;
- // Inputs
- reg [7:0] ina;
- reg [7:0] inb;
- reg [1:0] sel;
- // Outputs
- wire result;
- // Instantiate the Unit Under Test (UUT)
- M_compare uut (
- .ina(ina),
- .inb(inb),
- .sel(sel),
- .result(result)
- );
- initial begin
- // Initialize Inputs
- ina = 0;
- inb = 0;
- sel = 0;
- end
-
- always
- begin
- #10 ina = 8'h23;
- #10 ina = 8'h8A;
- #10 ina = 8'h79;
- end
-
- always
- begin
- #10 inb = 8'h15;
- #10 inb = 8'hAC;
- #10 inb = 8'h79;
- end
- always #30 sel=sel+1;
-
- endmodule
复制代码
|