Verilog的系統函數$display、


1、系統函數$display  

  作用是控制台輸出信息

  $display("Start simulation")        //顯示字符串

  $display("data_play = %h hex", 100)     //顯示data_play的16進制數(或者其他進制)

  $display("Simulation time is %t", $time)     //顯示仿真的時間

2、$fopen

  用法:<文件句柄>=$fopen("<文件名>");

  句柄就是任務$fopen返回的多通道描述符,默認為32位,最低位(第0位)默認被設置1,默認開放標准輸出通道,即transcript窗口。

        每一次使用$fopen函數后都打開了一個新的通道,並且返回了一個設置為1的位相對應。默認應該是0001,以上每調用分別設置為0010 ,0100,1000(只考慮最低四位)。

  例子:讀取文件

  define `DATA_LENGTH 8  //宏定義,定義數據長度

  reg   [15:0]  Sig0[`DATA_LENGTH-1:0];

  reg   [15:0]  Sig1[`DATA_LENGTH-1:0];    //定義RAM大小

 

  integer   data_file0;  //定義句柄

  integer  data_file1;  //定義句柄·

  initial

  begin

  #200

  data_file0 = $fopen("file/rd_data0_fpga.txt", "r");

  data_file1 = $open("file/rd_data1_fpga.txt, "r");

  for(i=0; i<`DATA_LENGTH; i++)

  begin

  $fscanf(data_file0, "%d", Sig0[i]);    //讀取十進制

  $fscanf(data_file1, "%h", Sig1[i]);    //讀取十六進制

  end

  $fclose(data_file0);  //關閉這個句柄

  $fclose(data_file1);  //關閉這個句柄

  end

3、$fscan

  函數功能,讀取txt(.dat)文件數據

  $fscanf(文件句柄(指針),讀取格式, 數組)   //讀取格式可以是二進制,八進制或十六進制

  (上例將rd_data0_fpga.txt的數據存儲到寄存器Sig0中)

https://blog.csdn.net/weizhl10131729/article/details/78556489

https://blog.csdn.net/yanchuan23/article/details/80547272

4、$fwrite($display)

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM