完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
VCS中利用Makefile脚本仿真
1.可仿真的verilog文件 通常是写一个module.v文件,然后写一个test bench即module_tb.v文件,该文件中例化module。可仿真的Verilog文件是指test bench即module_tb.v。 在VCS中module_tb.v除了声明timescale,初始化信号输入和例化module外,还需要加上波形输出函数$vcdpluson()和仿真时间控制函数$finish(),如下; 本文先写一个简单的tb,先不包括例化module,仅仅只定义几个reg信号。下面为gen_circulation.v,其基本功能是生成多个重复波形,仿真时间为100ns,该文件在附件的gen_circulation文件夹中。具体可参考《Verilog hdl设计与实战》第10章。 2、通过Makefile脚本进行编译和仿真 采用Makefile脚本可以方便在VCS中的编译compile和仿真simulate以及清除文件clean,具体内容可以查看附件gen_circulation/Makefile。这里只讲解操作。 (1)首先确认安装了VCS软件,然后在gen_circulation文件夹中打开terminal,输入make compile f=gen_circulation.v,然后可以看到下图编译成功的信息。通过makefile实际上输入的命令为vcs -sverilog -debug_all +notimingcheck +nospecify+v2k -l com.log gen_circulation.v,这些都可以不理会。 (2)然后在terminal中输入make simulate,可以有如下仿真成功的信息。通过makefile实际上输入的命令为。/simv -l sim.log +notimingcheck +nospecify,这些也可以不理会。 注:前面的make compile f= gen_circulation.v 和 make simulate两步可以合为一步执行make all f= gen_circulation.v (3)最后terminal中输入dve,打开波形查看的界面。 (4)File à Open Database 选择对应的vcdplus.vpd文件 (5)选择a,b,c,右键选择Add to waves à New wave view,这样就显示出了波形 (6)现在就可以查看波形。通过Makefile脚本进行编译和仿真的操作过程已结束,后面是一个稍微复杂一点的test bench,即含有module例化的test bench仿真。 (7)如果要清空gen_circulation文件夹中仿真过程产生的文件,可以在terminal中输入 make clean 通过makefile实际上输入的命令为rm -rf csrc DVEfiles simv simv.dAIdir ucli.key VCS*和rm -rf *.log *.vpd *.ddc *.svf *.SDF *Synth*Netlist* work vsim* transcript,这些也可以不理会。 3 含有module例化的test bench仿真half_adder half_adder文件夹下有三个文件half_adder.v,half_adder_tb.v和Makefile,文件内容如下, half_adder.v half_adder_tb.v 在terminal中输入 make all f=half_adder_tb.v 然后查看波形 4 总结 Makefile脚本能大大简化VCS中的仿真。 VCS中不能查看verilog对应的门级结构,但是DC可以读入verilog文件对应到DC自带的GETCH库,然后打开gui查看门级结构。如果需要综合,则需要添加实际的库文件和时序约束。这里并没有综合,只是映射到DC自带的逻辑库GETCH库上。 (1)启动DC dc_shell -topographical -64bit | tee log (2)读入verilog文件 dc_shell-topo》read_verilog half_adder.v (3)打开gui界面 dc_shell-topo》start_gui (4)查看电路结构。 |
|
|
|
只有小组成员才能发言,加入小组>>
968 浏览 2 评论
12864 浏览 0 评论
4150 浏览 7 评论
2360 浏览 9 评论
2195 浏览 2 评论
480浏览 2评论
849浏览 2评论
968浏览 2评论
435浏览 1评论
668浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-30 07:48 , Processed in 1.029341 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号