《Synopsys实验系列3数字电路仿真.ppt》由会员分享,可在线阅读,更多相关《Synopsys实验系列3数字电路仿真.ppt(71页珍藏版)》请在金锄头文库上搜索。
1、LOGOSynopsys 实验实验系列系列3_数字数字电电路仿真路仿真_VCSVerilog Compile Simulator2010.12.16LOGO大纲大纲VCS的简介的简介1用用VCS模拟仿真的流程模拟仿真的流程2仿真的具体流程仿真的具体流程3现场演示现场演示LOGOVCS (Verilog Compile Simulator)1、编译型的Verilog模拟器2、支持OVI标准的Verilog HDL语言、PLI和SDF 3、具有目前行业中最高的模拟性能 4、出色的内存管理能力 5、支持千万门级的ASIC设计 LOGOVCS (Verilog Compile Simulator)提供
2、VeraLite、CycleC等智能验证方法 a)支持混合语言仿真 b)集成了Virsim图形用户界面c)提供了对模拟结果的交互和后处理分析 VCS结合了节拍式算法和事件驱动算法 a)具有高性能、大规模和高精度的特点b)适用于从行为级、门级、RTL到Sign-Off等各个阶段的模拟仿真 VCS特点特点LOGOSynopsys Complete SoC Verification SLOGORTL级模拟仿真流程级模拟仿真流程LOGO门级模拟仿真流程门级模拟仿真流程LOGOVCSCompiler generates optimized executable simulationSimulator 1
3、)Executes user testbench 2)Reports simulation resultsDebugger 1)Text-based: Command Line Interface (CLI) 2) GUI-based: VirSim and DVE LOGOVCS中的帮助文档中的帮助文档LOGOVCS中的帮助文档中的帮助文档LOGOVCS仿真流程仿真流程Compile Verilog source into an executable simulation % vcs design.vRun executable simv to perform simulation % ./
4、simvDebug Verilog LOGOVCS仿真流程仿真流程sources_files 源程序-R : executes simulation binary immediately after compilation-Xman=4 : combines all source files into a single file “tokens.v”LOGOVCS仿真流程仿真流程LOGOVCS仿真流程仿真流程% ./simv run_time_optionsrun_time_options -s: stops simulation at time LOGOVCS仿真流程仿真流程LOGOVCS仿
5、真流程仿真流程编译所有的Verilog源文件,包括测试文件LOGOVCS仿真流程仿真流程VCS生成仿真使用的二进制的测试文件启动仿真文件开始仿真测试LOGOVCS仿真流程仿真流程仿真结果的输出LOGOVCS DebuggingVerilog System Task calls $display、$monitor、$time、$stop、$finishVCS CLI(command line interface)VCS VirSimVCS DVELOGOInvoke CLILOGOInvoke CLILOGOCLI的一些命令的一些命令LOGOCLI下的简单示例下的简单示例LOGOCLI下的简单示
6、例下的简单示例LOGOCLI下的简单示例下的简单示例LOGODebug a Verilog design using VirSimVirSim概况:是基于 OSF/Motif 的图形化仿真调试系统利用 Virsim与 VCS交互式的工作方式可以在模拟的过程中显示仿真结果结果可以存到一种叫做 VCD+的文件中支持三种基本的调试方式:波形、结构和代码支持标准 Verilog 的所有函数、语法、系统调用和编程语言接口LOGOVirSim两种运行方式两种运行方式 Interactive mode (交互模式) 允许实时的控制仿真的进行,允许在模拟的过程中改变寄存器的值或者设置,这些改变会实时地影响到模
7、拟的结果。LOGOVirSim两种运行方式两种运行方式Post-processing mode(后台处理方式) 先输出用户指定选择的信号及其变化过程到一个文件中,然后可以用 VirSim来分析这个文件。该文件是 VCD+类型的,VCD+文件是一种二进制的格式,里面记录了 VCS模拟的结果,和信号的变化历史等信息。LOGO交互式调用交互式调用Virsim(方法一)(方法一)LOGO交互式调用交互式调用Virsim(法二)(法二)LOGOVirSim的调用的调用LOGODebug a Verilog design using VirSLOGOVirsim界面和功能介绍LOGO交互式窗口界面交互式窗
8、口界面菜单栏工具栏历史栏命令行输入用户自定义区交互仿真控制区LOGO断点的分类断点的分类硬断点:是调用了 verilog 的系统函数$stop 的这类断点软断点:是在交互环境中用 tbreak 命令产生的断点信号变化断点:是在模拟过程中定义了敏感信号,当这个信号一旦有变化,就会中断模拟过程LOGOLOGO层次窗口界面层次窗口界面菜单栏工具栏层次结构LOGO层次窗口界面层次窗口界面层次结构,可以表示出来的有:模块、任务、函数、有名块、信号、寄存器、线网、输入输出等。拖动到其他的窗口LOGO波形窗口界面波形窗口界面菜单栏工具栏文件标识区波形显示区LOGO源程序窗口界面源程序窗口界面LOGO源程序窗
9、口界面源程序窗口界面LOGO源程序窗口界面源程序窗口界面单步运行设置断点LOGO寄存器窗口界面寄存器窗口界面Menu barTool barValue change LOGO寄存器窗口界面寄存器窗口界面按下红色按钮,就会模拟到任一信号有变化为止,高亮显示。作辅助图形,和信号一起做标签,保存,可便于检查信号。LOGO逻辑窗口界面逻辑窗口界面LOGO逻辑窗口界面逻辑窗口界面模块结构比较复杂的时候,方便检查是否有连接错误信号变化软中断功能:暂停状态下,点击绿色按钮,所选信号就会模拟到下一个变化时刻,并且暂停下来;点击红色按钮,运行到当前视图任一个信号有变就停。LOGOVirsim有三种基本的调试方式
10、: 波形、结构和代码,多种方式协同调试时能更容易找到错误。LOGOPost-processing(后台处理模式)(后台处理模式)先用批处理方式产生需要的信号到 VCD+的文件中再分析这个 VCD+文件LOGOPost-processing(后台处理模式)(后台处理模式)批处理方式编译并且运行 myfile.v % vcs -R -I myfile.v -R 指用批处理方式, -I指明了 vcs自动包含+cli(command line interface)、-P(PLI table)和-lm(数学库 math library)。批处理完,就可以用RPP 参数来调用调试器% vcs RPP my
11、file.v在菜单中选择加载已经产生了的 VCD+文件(默认的产生的 VCD+文件名为 vcdplus.vpd)LOGO如何产生如何产生VCD+文件文件通过在源代码中加入相应系统函数来产生,如$vcdpluson(),或者$vcdplustraceon()。例: initial begin $vcdpluson(example.n1); /产生 VCD+文件 $vcdplustraceon; /允许源代码级的调试 end LOGOInvoking DVEFrom the Command Line%vcs debug_all source files%./simv -gui tbugFrom t
12、he GUI%LOGOFrom the Command LLOGOFrom GUILOGONew LOGOOpen LOGODVE ComponentsTop Level WindowWave WindowList WindowSchematic WLOGOTop Level WindowHierarchyBrowserData PaneMenu barTool barSource windowConsoleConsole tableTcl Command-lineInterfaceDataTarget Window ControlSLOGOEdit Menu文本操作文本操作标记标记LOGOV
13、iew Menuschematic viewsC1指针指针Wave LOGOSimulator MenuRLOGOHierarchy BLOGOData PLOGOSource Pane有效断点无效断点LOGOCLOGOThe Waveform WindowSignal PaneWaveform PaneLower LOGOThe List WLOGOOpening a Design Schematic VLOGOInvoke LOGODVE同样有三种基本的调试方式: 波形、结构和代码,多种方式协同调试时能更容易找到错误。 DVE的可视化界面做得比VirSim更好,更加方便调试LOGO演示演示1)4位加法器2) LOGO