modelsim is exiting with code 7???

2019-07-15 21:41发布

在进行测试同步FIFO时候,写的testbench :
`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company:
// Engineer:
//
// Create Date: 2017/05/11 11:14:59
// Design Name:
// Module Name: sy_fifo_test
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
//////////////////////////////////////////////////////////////////////////////////


module sy_fifo_test;
reg         clk;
reg         rstn;
reg [3:0]   data_in;
reg         rd;
reg         wd;
wire [3:0]  data_out;
wire        full;
wire        empty;
//reg [3:0]   i;

always #20
data_in=data_in+1;

always #10  clk=~clk;

initial
begin
     rstn        =1'b0;
     clk         =1'b0;
     data_in     ={3'b0,1'b1};
#10  rstn        =1'b1;
#10  rstn        =1'b0;
#20  rd          =1'b0;
     wd          =1'b0;//不进行操作
#300 rd          =1'b0;
     wd          =1'b1;//进行写操作
#400 rd          =1'b1;
     wd          =1'b0;//进行读操作
#300 rd          =1'b0;
     wd          =1'b1;    //进行写操作
end
sy_fifo m(clk,rstn,data_in,data_out,full,empty,rd,wd);
endmodule

在进行仿真时候,就会出现上述问题,若把最后的写操作 改成为:#300 rd=1'b1;
                                                                                                       wd=1'b1;
就不会出现上述问题,求大神指点下???
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
reallmy
1楼-- · 2019-07-15 22:10
不知道你说的这个是为啥,但是一般fifo读写信号都要和clk同步,你同步一下试试吧!
youwozuozhujun
2楼-- · 2019-07-16 01:47
reallmy 发表于 2017-5-18 16:43
不知道你说的这个是为啥,但是一般fifo读写信号都要和clk同步,你同步一下试试吧!

你所说的FIFO读写信号与CLK同步是怎么同步呀
还有就是在testbench  initial begin end; 中不能对rd  wd赋两次值呀??                              
reallmy
3楼-- · 2019-07-16 04:45
同步的意思就是wr和rd是clk产生的,你要非要在initial里面做的话就这样
initial begin
   #200;
  @(posedge clk)
  begin
      wr = 1;
  end
#200;
@(posedge clk)
  begin
      wr = 0;
  end
end
差不多这个意思把!不能再不能的块对同一个变量赋值!
远望迫察
4楼-- · 2019-07-16 10:09
不清楚你是不是win10的,
win10 用10.2c不会退出。
youwozuozhujun
5楼-- · 2019-07-16 10:16
 精彩回答 2  元偷偷看……
youwozuozhujun
6楼-- · 2019-07-16 11:08
reallmy 发表于 2017-5-18 17:02
同步的意思就是wr和rd是clk产生的,你要非要在initial里面做的话就这样
initial begin
   #200;

我都把他们同步了,跟我预期的还是有些问题,主要是 run -all 然后zoom -full就会出现上述问题
我后来把仿真的总时间设置加长了,能够达到我预期的效果了,但是上述问题还是不知道怎么解决

一周热门 更多>