当前位置:网站首页>【Verilog】HDLBits题解——Verification: Writing Testbenches
【Verilog】HDLBits题解——Verification: Writing Testbenches
2022-08-03 12:03:00 【wjh776a68】
Clock
module top_module ( );
reg clk;
initial begin
clk = 0;
forever #5 clk = ~clk;
end
dut dut_inst(.clk(clk)) ;
endmodule
Testbench1
module top_module ( output reg A, output reg B );//
// generate input patterns here
initial begin
A = 0;
B = 0;
#10
A = 1;
#5
B = 1;
#5
A = 0;
#20
B = 0;
end
endmodule
AND gate
module top_module();
reg [1:0] in;
wire out;
initial begin
in = 'b0;
#10;
in = 'b01;
#10;
in = 'b10;
#10;
in = 'b11;
#10;
//$finish;
end
andgate andgate_inst (
.in(in),
.out(out)
);
endmodule
Testbench2
module top_module();
reg clk;
reg in;
reg [2:0] s;
reg [5:0] STAT;
wire out;
initial begin
STAT = 0;
clk = 0;
in = 0;
s = 'h2;
forever #5 clk = ~clk;
end
always @ (negedge clk) begin
case (STAT)
0: begin
s <= 'h6;
end
1: begin
s <= 'h2;
in <= 1;
end
2: begin
s <= 'h7;
in <= 0;
end
3: begin
s <= 'h0;
in <= 1;
end
6: begin
s <= 'h0;
in <= 0;
end
default: begin
end
endcase
if (STAT < 6) begin
STAT <= STAT + 1;
end
end
q7 q7_inst(
.clk(clk),
.in(in),
.s(s),
.out(out)
);
endmodule
T flip-flop
module top_module ();
reg clk, reset, t;
reg [5:0] STAT;
wire q;
initial begin
clk = 0;
reset = 0;
t = 0;
STAT = 0;
forever #1 clk = ~clk;
end
always @ (posedge clk) begin
case (STAT)
0: begin
reset <= 1;
STAT <= 1;
end
1: begin
reset <= 0;
t <= 1;
STAT <= 2;
end
2: begin
t <= 0;
end
endcase
end
tff tff_inst(
.clk(clk),
.reset(reset), // active-high synchronous reset
.t(t), // toggle
.q(q)
);
endmodule
边栏推荐
猜你喜欢
随机推荐
ROS中编译通过但是遇到可执行文件找不到的问题
Go 语言快速入门指南: 介绍及安装
fastposter v2.9.0 程序员必备海报生成器
bash if条件判断
LeetCode-1796. 字符串中第二大的数字
Matlab学习13-图像处理之可视化GUI程序
Take you understand the principle of CDN technology
使用.NET简单实现一个Redis的高性能克隆版(一)
bash for loop
如图,想批量读取mysql,批量处理,有哪个地方参数需要改变呢?
【一起学Rust】Rust学习前准备——注释和格式化输出
解决oracle安装在linux中jdk的冲突
LyScript implements memory stack scanning
App自动化测试怎么做?实战分享App自动化测试全流程
[深入浅出]三位数排序
码率vs.分辨率,哪一个更重要?
CDH6.3.2开启kerberos认证
LyScript 实现对内存堆栈扫描
苹果发布 AI 生成模型 GAUDI,文字生成 3D 场景
SmobilerService 推送实现








