简易VCS+verdi使用【3】

在上一篇简单讲了VCS的使用,以及用VCS的图形界面查看波形。

这一篇讲一下如何用verdi查看波形。和上一篇的路线基本一致,不过不是生成vcd文件,而是生成fsdb文件

1、mux.v文件

module mux(a, b, c, d, en, sel, z);
	input  [3:0] a, b, c, d;
	input        en;
	input  [1:0] sel;
	output [3:0] z;
	reg    [3:0] z;
	always @(en or sel or a or b or c or d)
		begin
		   if(en == 1) z = 4'b0000;
		   else
		   begin
			  case(sel)
				 2'b00 : z = a;
				 2'b01 : z = b;
				 2'b10 : z = c;
				 2'b11 : z = d;
			  endcase
		   end
		end
endmodule

2、test_mux.v文件

//`timescale 1ns/100ps
 
module mux_test();
reg  [3:0] a, b, c, d;
reg        en;
reg  [1:0] sel;
wire [3:0] z;
 
mux u1(a, b, c, d, en, sel, z);
 
//输出fsdb格式的波形文件,使verdi能够查看
initial
begin
   $fsdbDumpfile("test_mux.fsdb");
   $fsdbDumpvars(0,u1);
   $fsdbDumpon();
end
 
initial
begin 
       en = 1;
   #10 en = 0; sel = 0; a = 4; b = 0;  c = 1;  d = 13;
   #10 en = 0; sel = 1; a = 4; b = 0;  c = 1;  d = 13;
   #10 en = 0; sel = 2; a = 8; b = 13; c = 15; d = 0;
   #10 en = 0; sel = 3; a = 8; b = 13; c = 15; d = 0;
   #10 en = 1; sel = 0; a = 0; b = 4;  c = 4;  d = 11;
   #10 en = 1; sel = 1; a = 0; b = 4;  c = 4;  d = 11;
   #10 en = 1; sel = 2; a = 9; b = 12; c = 13; d = 2;
   #10 en = 1; sel = 3; a = 9; b = 12; c = 13; d = 2;
   #20 $finish;
end
endmodule

3、使用vcs仿真

vcs test_mux.v mux.v -R -timescale=1ns/10ps +v2k -fsdb

部分参考:https://blog.csdn.net/kevindas/article/details/79008106

成功后,在这个文件夹下面,就会有一个test_mux.fsdb文件

4、用verdi打开这个fsdb文件

verdi -sv -uvm -ssf test_mux.fsdb

这样就会打开verdi的图形界面,并查看该fsdb文件

5、在verdi中查看波形文件

1、Verdi /nWave看波形的基本操作小结

2、verdi/debussy的快捷键 以及基本操作

3、Soc芯片debug经验<2>

6、verdi字体

简易VCS+verdi使用【3】_第1张图片

Tools -> Preferences

简易VCS+verdi使用【3】_第2张图片

主要是调整waveform下面的信号显示,把Waveform展开,有一个Color/Font/Pattern。然后调整就好了

 

先记录几个博客,后面看一下:

https://blog.csdn.net/limanjihe/article/details/52430284

https://blog.csdn.net/qq_31019565/article/details/86312822

https://blog.csdn.net/immeatea_aun/article/details/80961258

http://blog.chinaaet.com/heyuanpi/p/5100058552

你可能感兴趣的:(SoC设计与验证)