VCS-Verilog仿真相关

VCS及VERDI工具环境设置

setenv VERDI_HOME /pub/tools/synopsys/verdi*
setenv NORVAS_HOME ${VERDI_HOME}
setenv VCS_HOME /pub/tools/synopsys/vcs*

setenv PATH ${VERDI_HOME}/bin:$PATH
setenv PATH ${NORVAS_HOME}/bin:$PATH
setenv PATH ${VCS_HOME}/bin:$PATH

VCS编译命令

https://blog.csdn.net/weixin_45270982/article/details/104000164

VCS仿真选项

| 命令 | 含义 |
| ---- | ---- | ---- |
| +nospecify | 屏蔽specify块中的路径延时和时序检查 |
| +notimingcheck | 屏蔽specify块中的时序检查 |

在前仿真时打开这两个选项,曾经遇到过一个BUG是在仿真综合后的网表时,由于没有打开+nospecify,有个寄存器没有打拍成功。

FSDB波形控制相关系统函数

https://blog.csdn.net/zyn1347806/article/details/105554103

(1)$fsdbDumpfile("fsdb_file_name");  指定fsdb文件名
(2)$fsdbDumpvars(1,nn_system)表示只Dump nn_system这一层的波形,$fsdbDumpvars(0,nn_system)表示只Dump nn_system这一层以及下面所有层的波形;
(3)$fsdbDumpoff()表示关闭波形dump;$fsdbDumpon()表示打开波形dump

初始化memory

logic [15:0] vlrf [0:55];
initial begin
	$readmemb(“vlrf.txt”,vlrf);
end

将信号写入文本

以下代码将第1层的特征图按照32个数据为一行写入文件conv1_ch_0_16.txt

integer i;
integer conv1_file;
initial begin
  conv1_file=$fopen("./1_feature_sram/conv1_ch_0_16.txt","w");
end
always @(posedge CLK) begin
  if(u_nn_system.u_nn_top.u_conv1_ctrl.u_feature_sram_ctrl.conv1_finish) begin
    @(posedge CLK);
    for(i=0;i<2048;i=i+1) begin
      $fwrite(conv1_file,"%0d",$signed(feature_mem[i][3:0]));
      if((i+1)%32)==0 $fwrite(conv1_file,"\n");
    end
  end
end

在initial中调用task

task initial_task;
  clk = 1’b0;
  reset = 1’b0;
endtask

task reset_task;
  @(posedge clk);#0;
  reset = 1’b1;
  @(posedge clk);#0;
  @(posedge clk);#0;
  reset = 1’b0;
  @(posedge clk);#0;
endtask

initial begin
	initial_task();
	reset_task();
end

使用force + generate for语句对generate for语句块生成的实例(RAM)进行初始化

logic [2:0] tag_ram_addr;
generate
  for(genvar way_idx=0;way_idx<4;way_idx=way_idx+1) begin
    tag_ram_addr=0;
    for(integer i=0;i<5;i=i+1) begin
      force A_u.GEN_TAG_RAM[way_idx].tag_ram_u.addr_i=tag_ram_addr;
    end
    @(posedge clk_i) #0;
    tag_ram_addr = tag_ram_addr + 1;
  end
  release A_u.GEN_TAG_RAM[way_idx].tag_ram_u.addr_i;
endgenerate
posted @ 2020-07-31 13:57  笑着刻印在那一张泛黄  阅读(2170)  评论(0编辑  收藏  举报