[X]关闭

[米联客-安路飞龙DR1-FPSOC] FPGA基础篇连载-04安路TD开发工具在线调试FPGA

文档创建者:FPGA课程
浏览次数:487
最后更新:2024-07-28
文档课程分类-安路-DR1
安路-DR1: FPSOC-DR1-FPGA部分 » 2_FPGA实验篇(仅旗舰) » 1-FPGA基础入门实验
软件版本:Anlogic -TD5.9.1-DR1_ES1.1
操作系统:WIN10 64bit
硬件平台:适用安路(Anlogic)FPGA
实验平台:米联客-MLK-L1-CZ06-DR1M90G开发板
板卡获取平台:https://milianke.tmall.com/

1概述
前面实验中我们完成了基于TD软件工程的创建、FPGA代码的创建、程序的下载,并且实现了modelsim的联合仿真。本节课实验中,我们将添加chipwatcher 在线逻辑分析仪,通过 ChipWatcher,用户无需借助外部设备即可在线监测电路内部信号的变化情况。在 ChipWatcher 中,用户可同时添加多个信号,在设置信号的采样时钟、采样深度、触发条件及触发位置后,经过重新编译、下载和触发,即可查看到指定条件下的信号变化情况。ChipWatcher 的工作流程如下图所示。
2504661-20240723192509628-1196256087.jpg

2添加chipwatcher IP

2.1新建chipwatcher IP
在开始本实验前,确保FPGA工程已经完成编译,本文继续在前面的实验基础上进行.
2504661-20240723192510819-376485888.jpg
可以通过Tools → Debug Tools ,选择 ChipWatcher
2504661-20240723192512137-1142797547.jpg
也可以直接单击下图的图标添加
2504661-20240723192512676-15787550.jpg
2504661-20240723192513150-560151227.jpg
2504661-20240723192513652-1868471982.jpg

2.2添加观察信号
选择setup 右击选择Add nodes

2504661-20240723192514113-26737128.jpg
添加需要观察的信号
2504661-20240723192514527-394951227.jpg
在本实验中添加如下信号
2504661-20240723192515128-252475808.jpg
Data Enable:是指选择需要采集并显示波形的信号,在复选框中打勾表示使能该信号;
Trigger Enable:是指将该信号的某一状态作为触发条件;
Mask Enable:可以选择是否需要和设定值进行对比,Mask 状态默认勾选,需要和界面设定值进行对比;取消勾选,不与界面设定值进行对比,对于单个 net,功能类似于 don't care;
Trigger Conditions: 是指需满足该条件时才能对信号进行触发;
Basic AND:是指需同时满足以下所有触发条件时才能对信号进行触发;
Basic OR:是指只要满足以下任一触发条件即可对信号进行触发。

2504661-20240723192515639-983264672.jpg
对于1Bit位宽信号,右键单击触发条件一栏,可更改触发条件,如下所示,对于 net 来说,触发条件依次为: 任意位置、低电平、高电平、上升沿、下降沿和双沿(上升沿或下降沿);
2504661-20240723192516154-2119011919.jpg

2.3设置触发条件
比如设置up_led[1:0]=2b11的时候触发。
2504661-20240723192516652-174643730.jpg

2.4设置采样时钟
2504661-20240723192517097-587417164.jpg
这里选择clk0_buf同步时钟作为采样时钟
2504661-20240723192517547-667653378.jpg
2504661-20240723192518088-1943275555.jpg

2.5选择采样深度和设置触发的位置
Pre Position 表示触发位置将处于整个采样数据的前三分之一处;
Center Position 表示触发位置将处于整个采样数据的二分之一处;
Post Position 表示触发位置将处于整个采样数据的后三分之一处;
2504661-20240723192518685-1771316766.jpg
2504661-20240723192519155-1527687342.jpg
2504661-20240723192519666-282301464.jpg
2504661-20240723192520209-176496341.jpg
2504661-20240723192520701-411881629.jpg

2.6 Chipwatcher创建成功
2504661-20240723192521147-1421076908.jpg

3在线调试
首先重新编译工程,编译完成后,双击watcher.cwc
2504661-20240723192521541-917925340.jpg
打开后
2504661-20240723192521928-273735323.jpg
准备好开发板,接通JTAG并且给开发板通电,并下载程序
2504661-20240723192522308-2072986687.jpg
可以选择单次触发或者连续触发
2504661-20240723192522698-308306479.jpg
右击修改数据显示格式
2504661-20240723192523223-708173516.jpg
2504661-20240723192523757-1906800950.jpg
也可以修改触发条件,比如把up_led[1:0]修改微don't care就是代表任意条件都会触发
2504661-20240723192524125-1500417761.jpg
再次单次触发,可以看到在up_led[1:0]==2'b00的时候也会触发
2504661-20240723192524553-725053319.jpg

4修改已经存在的watcher
对于已经存在的watcher可以直接修改,比如这里可以继续右击添加其他需要观察的信号
2504661-20240723192525043-1338644253.jpg
也可以右击已经存在的信号,并且删除
2504661-20240723192525524-1821280327.jpg
修改完成后一定记得要再次保存
2504661-20240723192525963-1462502623.jpg
之后再重新编译,重新调试,这里就不再重复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则