【问题标题】:Read Variable length string in a file using SystemVerilog使用 SystemVerilog 读取文件中的可变长度字符串
【发布时间】:2018-05-08 18:38:47
【问题描述】:

假设我有如下可变长度字符串:

Write <Address> <Data0> <Data1> <Data2>
Read <Address>
Write <Address> <Data0>
Write <Address> <Data0> <Data1> <Data2> <Data3>

如何使用文件操作读取 SystemVerilog 或 Verilog。我知道在文本长度固定时阅读

integer file    = $fopen(file_name,"r");
code = $fgets(line, file);
code = $sscanf(line, "%s %h %h %h", txn_type, Address, Data[i]);

【问题讨论】:

    标签: verilog system-verilog uvm asic


    【解决方案1】:

    当字段数不固定时,您可以使用$sscanf,只要您提供最大可能的字段数即可。放在code 中的返回值表示实际扫描的参数数量。因此,只需创建一个虚拟参数列表并复制该行提供的参数

    【讨论】:

      猜你喜欢
      • 2011-10-12
      • 2018-09-20
      • 2019-06-16
      • 2022-01-13
      • 2011-03-23
      • 2011-12-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多