做介绍自己的短视频网站,杂志社网站建设方案,网站开发应用到的技术名词,辅助wordpress 页面编辑器文章目录 一、文件导入二、VCS仿真#xff08;使用可视化界面#xff09;三、VCS仿真#xff08;使用Maefile文件#xff09;3.1 Makefile文件编写3.2 仿真文件编写规范3.3 Makefile文件使用 一、文件导入 新建一个文件夹新建一个文件夹(图中IC_work) 创建一个目录使用可视化界面三、VCS仿真使用Maefile文件3.1 Makefile文件编写3.2 仿真文件编写规范3.3 Makefile文件使用 一、文件导入 新建一个文件夹新建一个文件夹(图中IC_work) 创建一个目录用来存放文件图中test 将要操作的文件复制到文件夹下 此时打开终端输入命令ls可以查看文件是否存在。
二、VCS仿真使用可视化界面 输入下面指令对设计文件进行编译
vcs -full64 -sverilog -debug_all -timescale1ns/ns uart_dtx.v uart_tb.v -l com.log输入后终端显示如下 目标文件夹下会多出一些文件 输入以下指令打开VCS可视化界面
dve 点击simulate - set up 选择simv文件点击ok 右击文件选择Add to Waves-creat new group 在dve终端输入run 1s表示总共跑1s 即可看到仿真波形
三、VCS仿真使用Maefile文件
3.1 Makefile文件编写
c编写Makefile文件可以让上述过程变得更简单。 输入gvim Makefile编辑Makefile文件在其中写入以下内容。 Makefile文件内容
all:find com sim run_dve find:find -name *.v file.list
com: vcs -full64 vcsvcdpluson -sverilog -debug_all -f file.list -l vcs.log
sim:./simv -l vcs.log run_dve: dve -full64 -vpd vcdplus.vpd clean: rm -rf *.vpd csrc *.log *.key *.vpd simv* DVE*find 执行 find -name “*.v” file.list 指令将目录下的所有.v文件名写入file.list文件中。 com: 执行 vcs -full64 vcsvcdpluson -sverilog -debug_all -f file.list -l vcs.log 指令对file.list列出的设计文件进行编译。其中vcsvcdpluson必须可生成接下来的vcdplus.vpd文件。 sim: 执行./simv -l vcs.log 命令对设计文件进行仿真。 run_dve 执行dve -full64 -vpd vcdplus.vpd 命令启动可视化界面并读入波形文件。 3.2 仿真文件编写规范 使用Makefile进行仿真时测试文件的编写需要满足一定的规范。 示例的测试文件如下
timescale 1ns/10ps
module uart_tb (
);reg uart_ref_clk;//system clock referencereg uart_tx_nrst;//system reset signalreg [31:0] uart_baunds_div;//baunds rate divisionreg [7:0] uart_tx_data;//uart tx 8bits data input reg uart_tx_data_qvld;//send data valid signalwire uart_tx_finish;//uart send data finish flagwire uart_tx_busy;//uart tx module busy flagwire uart_tx_dout;//serial data outputinitial beginuart_ref_clk 0;forever begin#1 uart_ref_clk ~uart_ref_clk;endendinitial beginuart_tx_nrst 0;uart_baunds_div 4;#2 uart_tx_nrst 1;uart_tx_data 8h33;uart_tx_data_qvld 1b1;#2 uart_tx_data_qvld 1b0;endinitial begin#1000;$finish;endinitial begin$vcdpluson;end uart_dtx uart_dtx_inist0(. uart_ref_clk( uart_ref_clk),//system clock reference. uart_tx_nrst( uart_tx_nrst),//system reset signal. uart_baunds_div( uart_baunds_div),//baunds rate division. uart_tx_data( uart_tx_data),//uart tx 8bits data input . uart_tx_data_qvld(uart_tx_data_qvld),//send data valid signal. uart_tx_finish( uart_tx_finish),//uart send data finish flag. uart_tx_busy( uart_tx_busy),//uart tx module busy flag. uart_tx_dout( uart_tx_dout) //serial data output
);
endmodule 其中需注意在第1行要添加timescale 1ns/10ps仿真时间 第31-34行添加整个仿真结束命令finish当仿真文件执行到此处则退出仿真。若缺少该语句则Makefile会卡死在sim过程vcs仿真过程。也可以不使用KaTeX parse error: Expected EOF, got at position 25: …须在命令中指出仿真结束时间。 ̲emsp;emsp;第36-…vcdpluson来产生vpd文件。
3.3 Makefile文件使用 使用Makefile文件来进行仿真只需要打开终端写入make all指令即可输入命令后终端显示如下说明仿真成功 等待片刻后会打开VCS可视化界面。 选中需要查看的信号右击选择Add To Waves - New Wave View即可观察波形。