FPGA design sources时,思路:
module name(变量A,B,C,D…);
input 变量;
output 输出;
always@(…)
begin
逻辑行为
end
endmodule
完成逻辑模块设计
激励文件(testbench)通常在测试时所用,即在run simulation 处
“/”前面的1ns代表的是时间单位,后面的1ns是时间精度,很多时候在使用工具生成模块的代码时,出现的是1ns/1ps,
·/timescale 1ns/1ps
module name_tb();
reg (模块中的input,在测试中为reg寄存器);
wire; (模块中的输出 连线至测试端)
initial
begin
测试行为
#10 行为
end
name name_tb(
.变量a(变量a),
.变量b(变量b),
…
);
endmodule
reg类型的寄存器通常是用来当作被测试模块的输入,可以改变该类型的寄存的值,wire类型的用来连接被测试模块的输出,定义完被测试模块所需的变量,就可以开始对系统进行赋值。
initial…end这个语句是属于串行的,并且只会运行一次
#后为时间,#10就是延迟10个时间单位(默认ps,可修改为ns)
最后 模块例化,把测试模块和原模块联系起来