微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 我要在testbench中读入一个外部文件作为输入信号,在modelsim仿真中,显示的输入信号一直为 未知 求解中!

我要在testbench中读入一个外部文件作为输入信号,在modelsim仿真中,显示的输入信号一直为 未知 求解中!

时间:10-02 整理:3721RD 点击:


总是显示读取数据失败     代码没看出什么问题    哪位大神救救我吧

解决了   还得心细 啊

你好,请问你是怎么解决的,方便贴一下代码吗?谢谢

cic cic1(
              .clk(clk),
                             .rst(rst),
                             .xin(xin),
                             .Yout(Yout),
                                  .rdy(rdy),
                                  .intout(intout),
                             .dout(dout),
                             .yt(yt)
               );
                                                  
        initial clk = 1;
        always#(`clk_period/2) clk = ~clk;
       
        initial
           begin
             rst = 0;
           #(`clk_period*5) rst = 1'b1;
           end
        initial begin
            $readmemb("D:/altera/cic/E6_8_sin_in.txt",data_mem);//将sin_in中数据读入存储器data_mem
                 xin = 0;
                 #(`clk_period*10)
                  for(i=0;i<=4000;i=i+1)
             @(posedge clk) xin = data_mem;
            //#(`clk_period*10)
                 $stop;
                end
               
//滤波器输出信号写入文件
initial        
   begin       
   fid = $fopen("D:/altera/cic/sin_out.txt");
        for(j=0;j<=800;j=j+1)
        @(negedge rdy)
   $fdisplay(fid,"%d",Yout);
        if(j == 800)
   $fclose(fid);
        end

我是新手可能问的有点基础,你的intout和dout分别是什么接口。我最近正在学习FPGA的FIR滤波器。谢谢

这是testbench里面的例化,它们接的是上一级的输出以及下一级的输入,中间信号

还有一个问题 ,你贴出来的正确代码中  data_mem和i都没有定义啊 testbench怎么仿真通过的?

这个只是testbench中主要的部分代码,端口定义没有贴出来,下面所使用到的端口都定义了,不然肯定出不了结果啊

小编方便把其他的也贴出来吗?学习一下。谢谢

小编 我还有其他问题不明白,能不能加个QQ学习一下啊,我的QQ578240076,谢谢。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top