FPGA新手 请教modelsim仿真 无波形显示,是no data
时间:10-02
整理:3721RD
点击:
module mutiplier2(x, y, clk, q);
input [7:0] x;
input [7:0] y;
input clk;
output [15:0] q;
reg [15:0] q;
parameter s0=0, s1=1, s2=2;
reg [2:0] count;
reg [1:0] state;
reg [15:0] p1, t;
reg [7:0] y_reg,z;
initial state<=s0;
always @(posedge clk) begin
case (state)
s0 : begin
y_reg <= y;
state <= s1;
count <= 0;
`timescale 1ns / 1ps
module tb_mul;
// Inputs
reg [7:0] x;
reg [7:0] y;
reg clk;
// Outputs
wire [15:0] q;
// Instantiate the Unit Under Test (UUT)
mul uut (
.x(x),
.y(y),
.clk(clk),
.q(q)
);
initial begin
clk=0;
forever#50 clk=~clk;
end
initial begin
// Initialize Inputs
x = 0;
y = 0;
clk = 0;
// Wait 100 ns for global reset to finish
#100;
x=8'b00001111;
y=8'b11110000;
#100 stop;
// Add stimulus here
end
//always
endmodule
乘法器的仿真,,请问是不是 testbench 的错误导致没有波形?
input [7:0] x;
input [7:0] y;
input clk;
output [15:0] q;
reg [15:0] q;
parameter s0=0, s1=1, s2=2;
reg [2:0] count;
reg [1:0] state;
reg [15:0] p1, t;
reg [7:0] y_reg,z;
initial state<=s0;
always @(posedge clk) begin
case (state)
s0 : begin
y_reg <= y;
state <= s1;
count <= 0;
`timescale 1ns / 1ps
module tb_mul;
// Inputs
reg [7:0] x;
reg [7:0] y;
reg clk;
// Outputs
wire [15:0] q;
// Instantiate the Unit Under Test (UUT)
mul uut (
.x(x),
.y(y),
.clk(clk),
.q(q)
);
initial begin
clk=0;
forever#50 clk=~clk;
end
initial begin
// Initialize Inputs
x = 0;
y = 0;
clk = 0;
// Wait 100 ns for global reset to finish
#100;
x=8'b00001111;
y=8'b11110000;
#100 stop;
// Add stimulus here
end
//always
endmodule
乘法器的仿真,,请问是不是 testbench 的错误导致没有波形?
你的程序就给了一半,尽量不要在design中用initial。
注:design没有波形属于正常,主要是看tb,如果tb没有波形的话就是程序问题了。
奇怪,你的第一个module最后怎么没有endmodule啊?