Debussy 快速上手教程本文为转载,刚瞄了一眼,应该是在LINUX下的应用快速上手教程。Debussy是个很强大的看V代码及Debug V代码工具。你能方便地看到信号从哪里来到哪里去,比较强大。简单地用,用起来也比较简单。在我拿到的windows版本,只要做个filelist就可 以把代码读进去,可以trace,灰常Nice。So,下面的东西,请适当参考。 Debussy 介绍 Debussy 是NOVAS Software, Inc(思源科技)发展的HDL Debug & Analysis tool,这套软体主要不是用来跑模拟或看波形,它最强大的功能是:能够在HDL source code、schematic diagram、waveform、state bubble diagram之间,即时做trace,协助工程师debug。 可能您会觉的:只要有simulator如ModelSim就可以做debug了,我何必再学这套软体呢? 其实Debussy v5.0以后的新版本,还提供了nLint -- check coding style & synthesizable,这蛮有用的,可以协助工程师了解如何写好coding style,并养成习惯。 下图所示为整个Debussy 的原理架构,可归纳几个结论: Debussy有四个主要单元(component),nTrace、nWave、nSchema、nState
快速上手五部曲: (Debussy v.5.2) 1. Import Files and generate FSDB file 1. Import Files and generate FSDB file 1-1 启动Debussy:% Debussy & (此处的D大小写都可以,但其它指令的大小写可能就有差别) 开启nTrace window如下,此时工作目录下会新建一个"DebussyLog"目录 1-2 Import Files:File \ Import Design... 结果如下图所示:nTrace视窗中,含有三个区域,Hierarchical Brower、Source code window、Message window。 此时DebussyLog目录内会有Debussy.cmd、turbo.log、compiler.log三个档案。Debussy.cmd纪录所有import 1-3 设定外部模拟器,藉其產生FSDB file: Tools \ Options \ Preferences... 1-4 切换到Interactive Mode:Tools \ Interactive Mode (此时ToolBar上会出现Simulation选单) Source code目录下,要有先前ModelSim所建立的此project的work library,不然会有错误讯息:Failed to access library 'work' at "work"。另外,你不能只是开一个work资料夹,而是要真的用ModelSim產生work library,并且把design compile to the work library后,step 1-4才会正确动作。 1-5 结束程式:File \ Exit 1-6 快速启动执行序 把DebussyLog目录下的指令记录档Debussy.cmd复制到目前工作目录下,重新编辑此档 (删掉最后一行的"debExit" % Debussy -play Debussy.cmd & (结果相当於从步骤1-1做到1-4) 1-7 其他启动Debussy的方法 % Debussy -f xxx.f (类似开启一个事先编写的批次档,可以同时一次载入多个.v) 以上都是属於Import design from file的方法,另外还有一种方法是Import design from library。两者的差异在於: 对於比较大的project,為了避免每次使用Debussy都要花时间compile,建议採用Import design from library的方 Ex. for Verilog files:%vericom -inc -f run.f Ex. for VHDL files:%vhdlcom -93 -f run.f 2. Trace between hierarchy browser and source code 2-1 在Hierarchy browser点击A1(FourBitAdder)左侧的符号"+",可以展开四个full adder (fa0, fa1, fa2, fa3) 2-2 试著双击Hierarchy browser内的testbed or A1 or fa0 ... 也可以利用滑鼠"中键",将左边的module name直接拖曳丢进右边source code window,效果相同。 2-3 双击上图source code window内的"fulladder"(in line 8),软体会自动帮你追踪出引用fa0的地方 2-4 除了追踪designs之间的关连性,也可以用同样的方法追踪出signal's drivers and loads。 用Show Next 来查看所有的drive loads (at line 69, 71, 73, 75) 选定line 69, Trace \ Load 则可用来追踪该讯号的所有"loads" 3. Trace between hierarchy browser、source code and schematic 3-1 开启nSchema有三种方法 * (nTrace) Tools \ New Schematic \ ... 下图是把A1(FourBitAdder)丢进New Schematic icon的结果: 如果想直接看symbol "fulladder"的source code,先以左键选定(highlight)该元件,然后按右键,从快速选单选择"Display Source Code" 选择(highlight)第一个full adder的第二条输出讯号,然后按Tools \ New Schematic \Fan-In Cone试试 分别用来缩小/放大画面, 则是让图形大小自动调整至填满整个视窗(如上图) 3-2 双击上图内的元件符号(如第一个fulladder)可进一步看到其内容/ 细部电路组成(fa0) 3-3 请自行尝试,在hierarchy browser、source code与schematic window之间,用滑鼠中键互相拖曳designs/signals的效果 4. Trace between hierarchy browser、source code、schematic and waveform 4-1 接下来的操作,需要利用模拟器所产生的资料(.fsdb),以"nWave"显示讯号波形,有两种可能作法
4-1-1 如果是从1-2接著打开nWave window,一开始nWave内容是空的,要执行(nWave) File \ Open... 4-1-2 接著按 Get Signals icon,此时就会看到有讯号可以让你选择了 4-1-3 (nWave) View \ Zoom \ Zoom All 已在signal window选择的讯号,如果想要删除:选定要删除的讯号highlight,按滑鼠右键选择"Cut" 4-2 启动Active Annotation功能:(nTrace) Source \ Active Annotation 4-3 在nWave双击想观察其触发状况的讯号 (如c_out) 4-4 从(nTrace)Hierarchy browser双击A1(FourBitAdder),按 Search Forward icon,看看在nTrace与nWave的变化 5. nLint 5-1 开启图形介面的nLint % nLint -gui & (大小写不能改,n一定要小写,L一定要大写) 开启nLint window如下,此时工作目录下会新建一个"nLintLog"目录 5-2 Import Files:File \ Import Design... (与step 1-2一模一样的操作后,结果如下所示) 5-3 执行Run \ Compile 5-4 执行Tools \ Rule Organizer,或按 选择check哪些rules 5-5 执行Run \ Lint -- 会自动跳出ReportViwer显示检查结果 5-6 展开report,选择第一个黄色警示标示,其出错的原因与原始码部份,会即时显示在下方的栏框中。 对於不想检查的档案,可以选定该档后,按 再做compile。以此例而言,testbench是不可合成的, 范例程式下载 (一个Verilog写的4-bit full-adder,与testbench)
投影片讲义 & Lab files -- CIC所提供的NOVAS原厂教材 2. Trace between hierarchy browser and source code 2-1 在Hierarchy browser点击A1(FourBitAdder)左侧的符号"+",可以展开四个full adder (fa0, fa1, fa2, fa3) 2-2 试著双击Hierarchy browser内的testbed or A1 or fa0 ... 也可以利用滑鼠"中键",将左边的module name直接拖曳丢进右边source code window,效果相同。 2-3 双击上图source code window内的"fulladder"(in line 8),软体会自动帮你追踪出引用fa0的地方 2-4 除了追踪designs之间的关连性,也可以用同样的方法追踪出signal's drivers and loads。 用Show Next 来查看所有的drive loads (at line 69, 71, 73, 75) 选定line 69, Trace \ Load 则可用来追踪该讯号的所有"loads" 3. Trace between hierarchy browser、source code and schematic 3-1 开启nSchema有三种方法 * (nTrace) Tools \ New Schematic \ ... 下图是把A1(FourBitAdder)丢进New Schematic icon的结果: 如果想直接看symbol "fulladder"的source code,先以左键选定(highlight)该元件,然后按右键,从快速选单选择"Display Source Code" 选择(highlight)第一个full adder的第二条输出讯号,然后按Tools \ New Schematic \Fan-In Cone试试 分别用来缩小/放大画面, 则是让图形大小自动调整至填满整个视窗(如上图) 3-2 双击上图内的元件符号(如第一个fulladder)可进一步看到其内容/ 细部电路组成(fa0) 3-3 请自行尝试,在hierarchy browser、source code与schematic window之间,用滑鼠中键互相拖曳designs/signals的效果 4. Trace between hierarchy browser、source code、schematic and waveform 4-1 接下来的操作,需要利用模拟器所产生的资料(.fsdb),以"nWave"显示讯号波形,有两种可能作法
4-1-1 如果是从1-2接著打开nWave window,一开始nWave内容是空的,要执行(nWave) File \ Open... 4-1-2 接著按 Get Signals icon,此时就会看到有讯号可以让你选择了 4-1-3 (nWave) View \ Zoom \ Zoom All 已在signal window选择的讯号,如果想要删除:选定要删除的讯号highlight,按滑鼠右键选择"Cut" 4-2 启动Active Annotation功能:(nTrace) Source \ Active Annotation 4-3 在nWave双击想观察其触发状况的讯号 (如c_out) 4-4 从(nTrace)Hierarchy browser双击A1(FourBitAdder),按 Search Forward icon,看看在nTrace与nWave的变化 5. nLint 5-1 开启图形介面的nLint % nLint -gui & (大小写不能改,n一定要小写,L一定要大写) 开启nLint window如下,此时工作目录下会新建一个"nLintLog"目录 5-2 Import Files:File \ Import Design... (与step 1-2一模一样的操作后,结果如下所示) 5-3 执行Run \ Compile 5-4 执行Tools \ Rule Organizer,或按 选择check哪些rules 5-5 执行Run \ Lint -- 会自动跳出ReportViwer显示检查结果 5-6 展开report,选择第一个黄色警示标示,其出错的原因与原始码部份,会即时显示在下方的栏框中。 对於不想检查的档案,可以选定该档后,按 再做compile。以此例而言,testbench是不可合成的, 范例程式下载 (一个Verilog写的4-bit full-adder,与testbench) |
|
来自: CharlseLib > 《技术文章》