modelsim自动化仿真

本文介绍了一种使用Verilog语言进行电路仿真,并将仿真结果输出到txt文件的方法。通过监测脉冲信号,利用fopen与fdisplay函数组合,实现仿真过程中特定事件的记录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

建立txt文件保存仿真结果

$display  显示、探测、监视类系统任务     $display(“格式控制字符串”,输出变量名表项);

$time  仿真时标类系统函数//找到当前的仿真时间
https://www.cnblogs.com/SYoong/p/5897150.html
fopen建立文件,用fdisplay打印,首先对脉冲出现进行判别,设置过一段仿真时间flag_get进行检查,用$time检查脉冲发生时间

always  @(posedge clk or negedge rst_n)begin
    if(rst_n==1'b0)begin
        flag_get <= 0;
    end
    else if(dout==1) begin
        flag_get <= 1;
    end
end

initial begin
    fp_w = $fopen("ex1_test_rpt.txt","a+");
    $fdisplay(fp_w,"--------------------------------------------------------- ");
    $fdisplay(fp_w,"---------------------begin test_pulse-------------------- ");
    $fdisplay(fp_w,"--------------------------------------------------------- ");
    #(100*CYCLE);
    if(flag_get==0)begin
        $fdisplay(fp_w,"Err at %0d ns ,hadn't get dout==1, flag_get=%0h ",$time,flag_get);
    end
    else begin
        $fdisplay(fp_w,"Rig at %0d ns ,hadn't get dout==1, flag_get=%0h ",$time,flag_get);
    end
    $fdisplay(fp_w,"--------------------------------------------------------- ");
    $fdisplay(fp_w,"---------------------end   test_pulse-------------------- ");
    $fdisplay(fp_w,"--------------------------------------------------------- ");

    $fclose(fp_w);
end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值