任何人都可以帮我写一个测试平台或只是我以下代码的输入代码。 由于我不知道如何编写测试平台,我正在使用XINLINX。谢谢
module fsmb (input rst,clk,a,
output reg x);
parameter sta = 2'b00, stb = 2'b01, stc = 2'b10,
std = 2'b11;
reg[1:0] st, nst;
always @(posedge clk)
begin
if (rst)
st <= 2'b00;
else
st <= nst;
end
always @*
begin
st = nst; x =0'b0;
case (st)
sta: if(a) nst = stb;
else nst = sta;
stb: if(a) nst = stc;
else nst = stb;
stc: begin
if(a) nst = stc;
else nst = std;
x =1'b1;
end
std: begin
if(a) nst = stc;
else nst = sta;
x = 1'b1;
end
default: nst = sta;
endcase
end
endmodule
提前欣赏!!!
答案 0 :(得分:4)
Testbench 101
示例:
module tb;
reg rst,clk,a;
wire x;
initial begin
clk = 0;
forever #5 clk = ~clk;
end
initial begin
rst = 1;
a = 0;
#50 rst = 0;
#50 $finish;
end
fsmb fsmb (
.clk (clk),
.rst (rst),
.a (a),
.x (x)
);
endmodule
答案 1 :(得分:1)
Xilinx ISE将自动生成骨架测试夹具。转到菜单项Project-&gt; New Source。该对话框将要求您“选择源类型”,单击“Verilog Test Fixture”并为其命名,如testbench1,然后单击“下一步”。然后它会询问您项目中的哪个模块与之关联。选择fsmb。单击“下一步”并完成。
您仍然需要调整测试平台,例如设置初始输入值,生成时钟,并在几个时钟后提升复位。