因为目前软件的限制,RISCV的逻辑不能同时共用JTAG,所以如果想要同时去调试逻辑和RISCV的话,可以通过RISCV的soft Jtag来实现。soft Jtag就是通过GPIO来实现的软件JTAG。这里我们以TI60F225 DEMO来演示。
在使用softJTAG的过程中,首先要把RISCV的IP的调试选项选择为soft,也就是Eanble Soft Debug Tap.
第二,使用softjtag 在通过openOCD来配置时要选择default_softTap,它对应“embedded_swsapphire_socconfig”下面的default_softTap.launch文件。
第三个要注意的点就是器件的名称。如果使用的是HardJtag会把ftdi_ti.cfg里面的器件与下面器件的名称对应起来。但是softJtag对应的文件不是ftdi_ti.cfg也没有对应的soft.cfg,而是对应c232hm_ddhsl_0.cfg,所以要把c232hm_ddhsl_0.cfg里面的器件名称和下载器的对应起来。
打开“embedded_swsapphire_socconfig”下面的default_softTap.launch文件也可以看到调用文件的路径指向的是c232hm_ddhsl_0.cfg
打开“embedded_swsapphire_socconfig”下面的default_ti.launch文件也可以看到调用文件的路径指向的是ftdi_ti.cfg
在2023.1版本的RISCV中已经没有c232hm_ddhsl_0.cfg文件了。代之的是一个external.cfg文件。
以上文件内部的修改包括以下信息:
(1)ftdi device_desc
(2)ftdi_vid_pid
(3)ftdi_channel.
详细修改可以参考。
它使用的是FT2232的方案。修改结果如图。
第四,如果使用易灵思下载器一定要连接VREF,并且要确认好IO电压,一定要确认好IO电压。
第五、使用soft Jtag容易出现连接不稳定的情况,以下来自Bruce 和Wayne的建议:
在Interface Designer里修改对应于JTAG softTAP的GPIO设置:
1. 打开TMS TDO内部弱上拉;
2. 打开TMS TDO TCK TDI GPIO的IO Register 并使用RISCV系统主时钟驱动;
3. 如果SoftTAP绑定的是普通的GPIO,打开施密特触发器和Slow Slew;
4.TDO 在 fpga输出的驱动电流修改到最大;
下面以TMS和TDO为例的设置情况。
TMS参数设置
TDO参数设置
更新说明:补充器件的名称在2023.1版本之后的说明。
全部0条评论
快来发表一下你的评论吧 !