Quartusii 调试工具之In-System Memory Content Editor

本文主要介绍Quartusii 调试工具中的In-System Memory Content Editor,其主要功能就是能实时更改RAM,ROM中的数值,同时也可以修改FPGA内部定义的常数值。它是通过JTAG调试接口去完成RAM,ROM中的数据读写,是一种在线调试工具。注意目前该功能只能用于单口ram,不支持双口ram。下面就介绍下如何通过In-System Memory Content Editor去读取或修改RAM中的数据以及常数值的修改。
1、首先肯定是新建一个工程。名为 test(下图是我已经例化好IP后的工程)
这里写图片描述
该工程例化了2个IP核,一个是单口ram,一个是constant 常数设置IP核,利用常数IP的输出值作为单口ram的读地址。这样当我通过In-System Memory Content Editor更新了一个常数值,即更新了ram的读地址。而ram默认写wren使能为低,则为读我更新地址的数值。
2、例化一个单口ram IP核。
单口ram位宽为8 ,深度为32
(1)Widths/Bclk Type/Clks 设置如下
这里写图片描述
(2)Regs/Clken/Byte Enable/Acls 设置 如下
这里写图片描述
(3)Read During Write Option 默认设置
这里写图片描述
(4)Mem Init
注意:该页设置时,需要勾选上红框1 ,表示允许In-System Memory Content Editor独立地去读取和修改RAM中的数据。另外还需在红框2处给该RAM取个例化ID名:RAM8 用于区分多个实例。
这里写图片描述
(5)最后finish 就例化好了一个单口RAM。
3、同样再例化一个constant IP核。
设置成如下图所示
设置输出数据位宽为5
初始化设置该数值为0
勾选使能In-System Memory Content Editor
取一个ID名:CONS
其余页设置为默认 ,点击finish即可。
这里写图片描述
4、完成后,在工程中做如下例化,同时添加系统时钟管脚
这里写图片描述
5、进行全编译
6、为了验证In-System Memory Content Editor是否能修改memory的数值,需要加入Singal Tap ii 对信号进行抓取。加入需要抓取的信号,第一个即是常数值信号。采样时钟就用系统时钟clk。深度为512,其余设置保持默认。
这里写图片描述
7、再次全编译,完成后将.sof文件通过JTAG下载到FPGA芯片中。
8、Tools ->In-System Memory Content Editor打开In-System Memory Content Editor工具调试界面
这里写图片描述
In-System Memory Content Editor工具调试界面如下图所示,从图上可以看到我们例化的两个IP核
这里写图片描述

9、读取操作
在下图中左键选择你要读取的信号,比如这里要读取Instance ID 为CONS的常数信号的值,则选中它,然后鼠标右键->鼠标左键 Read Data from In-System Memory。
这里写图片描述
在下图中,就读出了CONS的数值为0x00 ,跟我们在例化IP核时设置的数值一致。
这里写图片描述
同样在signaltapii中抓取constant_ip 核的输出也是 0x00。
这里写图片描述
10、更改数值操作
首先把ram里地址从0x00到0x04 5个地址的值更新为0x01,0x02,0x03,0x04,0x05。
这里写图片描述
接着在上面窗口中选中该ID ,鼠标右键->左键单击Write Data to In-System Memory项。通过JTAG将ram里地址从0x00到0x04存储的值修改成0x01,0x02,0x03,0x04,0x05。
这里写图片描述
此时可以通过signaltapii 查看ram里的值是否已经被修改,此时由于地址0存储的数是0x01,读地址没变还是0,那ram的输出值应该是0x01,signaltapii 抓取发现ram的输出值是0x01.证明通过In-System Memory Content Editor成功修改了ram的地址为0的值。
这里写图片描述

接着可以通过In-System Memory Content Editor修改常数值(ID位CONS)为0x01,即更新了ram的地址为0x01。
这里写图片描述

同样通过signaltapii去获取对应信号的值,看是否与设置的一致。从下图可以看出ram的地址为0x01读出的数为0x01与In-System Memory Content Editor设置的一致,同时常数值(ID位CONS)为0x01也与In-System Memory Content Editor设置的一致。
这里写图片描述

  • 15
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值