这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 上一修订版 两侧同时换到之后的修订记录 | ||
icore3lfpga_4 [2020/11/07 18:13] zgf |
icore3lfpga_4 [2020/11/07 18:21] zgf |
||
---|---|---|---|
行 43: | 行 43: | ||
- 一旦触发条件激活,实时调试器通过 JTAG 线缆服务器(JTAG cable server)获取捕获的信号并重整波形,输出 VCD 格式的波形文件; | - 一旦触发条件激活,实时调试器通过 JTAG 线缆服务器(JTAG cable server)获取捕获的信号并重整波形,输出 VCD 格式的波形文件; | ||
- 用户可用第三方的软件观察波形或者检查调试信息,从而追踪问题; | - 用户可用第三方的软件观察波形或者检查调试信息,从而追踪问题; | ||
- | - 重复步骤 4-7 或者 1-7,完成调试任务。 | + | - 重复步骤4至7或者1至7,完成调试任务。 |
=== 2、使用HqInsight Instrumentor采集调试信息 === | === 2、使用HqInsight Instrumentor采集调试信息 === | ||
* 1. 打开本例程下的工程(也可以新建工程和源文件,并按照本例程的源文件输入工程代码,或者建立工程时直接添加本例程下的源文件),然后点击左侧栏的“调试模式”按钮,进入调试模式。 | * 1. 打开本例程下的工程(也可以新建工程和源文件,并按照本例程的源文件输入工程代码,或者建立工程时直接添加本例程下的源文件),然后点击左侧栏的“调试模式”按钮,进入调试模式。 | ||
- | 图 4-1 进入调试模式 | + | {{ :icore3l:icore3l_fpga_4_1.png?direct |图 4-1 进入调试模式}} |
* 2、可以看到已经激活“采集调试信息”选项;单击此选项,出现如下窗口,可以看到在窗口的左侧“模块层次结构”窗口中,会显示工程下所有的模块以及工程的层次结构。 | * 2、可以看到已经激活“采集调试信息”选项;单击此选项,出现如下窗口,可以看到在窗口的左侧“模块层次结构”窗口中,会显示工程下所有的模块以及工程的层次结构。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_2.png?direct |图 4-2 调试模式窗口}} | |
- | 图 4-2 调试模式窗口 | + | |
- | 在模块层次结构中,会显示所有模块的调用信息,每一个模块所包含的下层模块, | + | * 在模块层次结构中,会显示所有模块的调用信息,每一个模块所包含的下层模块,模块所对应的文件及相应路径。 |
- | 模块所对应的文件及相应路径。 | + | |
* 3、窗口右边是调试信息显示,可以看到,不同颜色代表了不同的元素:关键字、注释及数字等,并对信号等可调试信息采取了特殊显示;对于每一个可调试信号,除了颜色,在该信号的左侧会出现一个指向该信号的小手,表示此信号是可以加入到调试中的,且用户可以在此信号出现的任何位置对该信号进行调试设置。 | * 3、窗口右边是调试信息显示,可以看到,不同颜色代表了不同的元素:关键字、注释及数字等,并对信号等可调试信息采取了特殊显示;对于每一个可调试信号,除了颜色,在该信号的左侧会出现一个指向该信号的小手,表示此信号是可以加入到调试中的,且用户可以在此信号出现的任何位置对该信号进行调试设置。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_3.png?direct |图 4-3 注意图中可调试信号的特殊显示及标记}} | |
- | 图 4-3 注意图中可调试信号的特殊显示及标记 | + | |
* 4、调试信号设置: | * 4、调试信号设置: | ||
* 在可调试信号上单击鼠标,弹出菜单里可以选择将信号设置为何种方式:Trigger Only(仅触发)/Sample Only(仅采样)/sample Clock(采样时钟)/sample and Trigger(采样且触发)。在对信号进行设置后,信号左侧的标识会相应的发生改变,信号颜色也会发生变化。 | * 在可调试信号上单击鼠标,弹出菜单里可以选择将信号设置为何种方式:Trigger Only(仅触发)/Sample Only(仅采样)/sample Clock(采样时钟)/sample and Trigger(采样且触发)。在对信号进行设置后,信号左侧的标识会相应的发生改变,信号颜色也会发生变化。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_4.png?direct |图 4-4 可调试信号设置}} | |
- | 图 4-4 可调试信号设置 | + | |
* 5、设置完所有需要调试的信号后,通过单击菜单栏“操作”按钮,在下拉菜单中选中“显示所有信号…”,或者直接单击“显示所有信号”快捷按钮都会弹出查找设计元素窗口;此窗口内可以看到设置好的信号列表,并提供相应的快速查询能力。此窗口内还可以对信号的状态做相应的修改,修改后,该信号在各个模块源代码中的显示标记也会相应改变。 | * 5、设置完所有需要调试的信号后,通过单击菜单栏“操作”按钮,在下拉菜单中选中“显示所有信号…”,或者直接单击“显示所有信号”快捷按钮都会弹出查找设计元素窗口;此窗口内可以看到设置好的信号列表,并提供相应的快速查询能力。此窗口内还可以对信号的状态做相应的修改,修改后,该信号在各个模块源代码中的显示标记也会相应改变。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_5.png?direct |图 4-5 信号列表}} | |
- | 图 4-5 信号列表 | + | |
* 6、点击菜单栏的“HqInsight虚拟逻辑分析仪(ILVA)配置”按钮,如图4-8红框中所示齿轮状图标,弹出窗口中可以设置采样深度,这里采样深度设置为8192。 | * 6、点击菜单栏的“HqInsight虚拟逻辑分析仪(ILVA)配置”按钮,如图4-8红框中所示齿轮状图标,弹出窗口中可以设置采样深度,这里采样深度设置为8192。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_6.png?direct |图 4-6 采样参数设置}} | |
- | 图 4-6 采样参数设置 | + | |
7、用户在选择好各种信号后, 需要点击”保存工程”菜单项或者相应按钮, 对工程进行保存。 实际上, 只要用户对工程做了任何改变,都需要保存工程, 这样 HqInsight 才能根据用户的设置生成调试需要的 IP 核及中间配置文件。 | 7、用户在选择好各种信号后, 需要点击”保存工程”菜单项或者相应按钮, 对工程进行保存。 实际上, 只要用户对工程做了任何改变,都需要保存工程, 这样 HqInsight 才能根据用户的设置生成调试需要的 IP 核及中间配置文件。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_7.png?direct |图 4-7 保存工程}} | |
- | 图 4-7 保存工程 | + | |
* 8、保存工程后,HqInsight 会对用户的设计源代码进行重新分析,加入对应的调试信息,生成调试需要的 IP 核及中间文件的等,各种输出信息会显示在信息输出窗口中。 | * 8、保存工程后,HqInsight 会对用户的设计源代码进行重新分析,加入对应的调试信息,生成调试需要的 IP 核及中间文件的等,各种输出信息会显示在信息输出窗口中。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_8.png?direct |图 4-8 编译信息输出}} | |
- | 图 4-8 编译信息输出 | + | |
* 9、接下来关掉HqInsight Instrumentor窗口,可以看到主界面上“实现->下载”按钮激活,单击此按钮,弹出“HqFPGA下载器”界面,这里有个地方是需要注意的,这里下载的是加入调试IP核的bit文件,所以确切来说,是在hqins_文件夹下的bit文件。 | * 9、接下来关掉HqInsight Instrumentor窗口,可以看到主界面上“实现->下载”按钮激活,单击此按钮,弹出“HqFPGA下载器”界面,这里有个地方是需要注意的,这里下载的是加入调试IP核的bit文件,所以确切来说,是在hqins_文件夹下的bit文件。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_9.png?direct |图 4-9 下载调试模式文件夹下的bit文件}} | |
- | 图 4-9 下载调试模式文件夹下的bit文件 | + | |
* 10、将下载器连接到双核心板,给板子供电,下载bit文件。可以观察到板子上的三色LED色彩周期变化,“HqFPGA下载器”界面的输出信息栏会输出如下提示信息。 | * 10、将下载器连接到双核心板,给板子供电,下载bit文件。可以观察到板子上的三色LED色彩周期变化,“HqFPGA下载器”界面的输出信息栏会输出如下提示信息。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_10.png?direct |图4-10 下载成功提示信息}} | |
- | 图4-10 下载成功提示信息 | + | |
* 11、下载完成后,关闭下载界面,点击主界面的“实时调试”按钮,弹出HqInsight Debugger界面,在进行实时调试前,需要对触发信号进行设置;单击需要设置的触发信号,下拉列表中单击“设置触发条件…”,进行“设置触发表达式”参数进行设置。 | * 11、下载完成后,关闭下载界面,点击主界面的“实时调试”按钮,弹出HqInsight Debugger界面,在进行实时调试前,需要对触发信号进行设置;单击需要设置的触发信号,下拉列表中单击“设置触发条件…”,进行“设置触发表达式”参数进行设置。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_11.png?direct |图4-11 设置调试信号的触发条件}} | |
- | 图4-11 设置调试信号的触发条件 | + | |
* 12、“设置触发表达式”弹窗如下,可以对寄存器变量的触发类型等信息进行设置。这里选择观察cnt=0的时刻,可以设置触发类型为“算术比较”、“等于”和“26’b0”。 | * 12、“设置触发表达式”弹窗如下,可以对寄存器变量的触发类型等信息进行设置。这里选择观察cnt=0的时刻,可以设置触发类型为“算术比较”、“等于”和“26’b0”。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_12.png?direct |图 4-12 触发条件参数设置}} | |
- | 图 4-12 触发条件参数设置 | + | |
* 13、在调试过程中, 采样缓存在不断采样设计信号,因为,触发事件的发生和终止采样的时间这两者的关系是可以由用户控制的, 即设置触发位置。可以通过菜单项设置触发位置, 选项包括早期、中期和晚期。具体触发位置由用户根据设计的实际情况决定。通过点击工具栏的“调试”按钮,设置触发位置。 | * 13、在调试过程中, 采样缓存在不断采样设计信号,因为,触发事件的发生和终止采样的时间这两者的关系是可以由用户控制的, 即设置触发位置。可以通过菜单项设置触发位置, 选项包括早期、中期和晚期。具体触发位置由用户根据设计的实际情况决定。通过点击工具栏的“调试”按钮,设置触发位置。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_13.png?direct |图 4-13 触发位置设置}} | |
- | 图 4-13 触发位置设置 | + | |
=== 3、启动运行 === | === 3、启动运行 === | ||
行 92: | 行 91: | ||
* 点击“运行”菜单或者按钮,启动调试。 | * 点击“运行”菜单或者按钮,启动调试。 | ||
* 启动运行后,实时调试会自动开始, 每一步的调试信息会显示在信息输出窗口,Done为1表示数据采样正常完成;运行完毕,会提示调试完成,波形文件准备就绪。 | * 启动运行后,实时调试会自动开始, 每一步的调试信息会显示在信息输出窗口,Done为1表示数据采样正常完成;运行完毕,会提示调试完成,波形文件准备就绪。 | ||
- | 图 4-14 生成采样数据波形文件 | + | {{ :icore3l:icore3l_fpga_4_14.png?direct |图 4-14 生成采样数据波形文件}} |
=== 4、查看波形 === | === 4、查看波形 === | ||
* 数据采样成功后,可以通过点击菜单项查看生成的数据波形;HqInsight Debugger 生成 VCD 格式的波形文件,并调用 GTKWave 工具显示波形;通过点击工具栏“窗口”“查看波形”,或者直接点击“波形”快捷图标,查看波形文件。 | * 数据采样成功后,可以通过点击菜单项查看生成的数据波形;HqInsight Debugger 生成 VCD 格式的波形文件,并调用 GTKWave 工具显示波形;通过点击工具栏“窗口”“查看波形”,或者直接点击“波形”快捷图标,查看波形文件。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_15.png?direct |图 4-15 查看采样数据波形设置}} | |
- | 图 4-15 查看采样数据波形设置 | + | |
* 点击“波形”快捷按钮,弹出波形显示窗口,将下图1窗口中信号直接拖拽到Signals窗口下,可以看到cnt的值累加变化。 | * 点击“波形”快捷按钮,弹出波形显示窗口,将下图1窗口中信号直接拖拽到Signals窗口下,可以看到cnt的值累加变化。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_16.png?direct |图 4-16 采样数据波形显示}} | |
- | 图 4-16 采样数据波形显示 | + | |
* 如果想切换cnt的值的显示格式,可以在Signals栏下的信号名上鼠标右键单击,弹出列表中选择“Data Format”扩展列表里的Hex,则cnt的值在波形窗口中将以16进制显示;同样的也可以切换为二进制显示。 | * 如果想切换cnt的值的显示格式,可以在Signals栏下的信号名上鼠标右键单击,弹出列表中选择“Data Format”扩展列表里的Hex,则cnt的值在波形窗口中将以16进制显示;同样的也可以切换为二进制显示。 | ||
- | + | {{ :icore3l:icore3l_fpga_4_17.png?direct |图 4-17 切换采样数据显示格式}} | |
- | 图 4-17 切换采样数据显示格式 | + | |