《基于“矿板”低成本学习FPGA》使用JTAG边界扫描快速进行引脚对应关系逆向
一.
前言
前面我们分享了文章编写代码的方式操作
IO
来确认
IO
引脚的对应关系
:
https://mp.weixin.qq.com/s/biR6j9wt7YxQ2GSXs-UpbQ
《基于
“矿板”低成本学习
FPGA
》逆向扫描插座所有
IO
引脚映射。
该方法必须要先知道时钟引脚,而且操作效率低。
实际上我们还有更高效直接的方法,即使用
Jtag
边界扫描,
Jtag
设计的目的就是为了该类测试需求。
我们需要
JTAG
硬件
(
比如
Jlink)
,上位机工具,
BSDL
文件,我们以下就详细介绍整个过程。
二
.上位机安装
这里使用
TopJTAG Probe,
可以官网下载试用
,
如果需要可以购买。
http://www.topjtag.com/probe/
双击
TopProbe-Setup-1.7.5.exe
开始安装
弹出对话框点击是
Next
勾选,
Next
指定安装路径,
Next
安装
完成
点击评估
三
.下载BSDL文件
https://www.bsdl.info/
搜索
325t
点击
Download
,输入验证码下载指定型号的
BSDL
文件
Xilinx
的也可以从官网下载
https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/device-models.html
四.
操作过程
4.1
创建工程
TopJTAG Probe
支持不同的硬件,最常见的就是我们的
Jlink
仿真器,这里用的就是
Jlink V9
。
接线如下
我们打开软件
TopJTAG Probe
点击菜单栏
File->New Project Wizard
选择
Jlink
,
Next
识别到芯片会显示
IDCODE
,继续点击
Next
点击
BSDL File...
选择前面下载的
BSDL
文件
继续点击
OK
此时就会显示芯片的引脚图
4.2
监控状态
添加观测
如下位置输入引脚名字回车搜索
比如这里输入
T20
右键点击
T20
,添加到观测
Add to Qatch
和添加到波形
Add to Waveform
设置采样,
run
可以看到引脚状态和波形,中间的引脚图颜色代表不同状态
4.3
控制输出
按照如下将采样模式,设置为执行模式
添加
R24 T20 T21
到观测和波形
右键点击引脚名字
Set to 0
,将引脚设置输出
0
,点击
Run
,可以看到波形变低
可以看到
LED
熄灭
再设置为
set to 1
可以看到波形拉高,
LED
点亮
以上演示了引脚的输入输出操作,这样就可以控制任意引脚的输出,通过示波器或者逻辑分析仪查看哪个引脚对应,即可知道硬件上引脚的对应关系,完成
IO
引脚映射的逆向。
五.
总结
以上演示了如何通过
JTAG
进行
FPAG
引脚的映射关系逆向,这样淘到
FPGA
板子,就可以第一步确认引脚,方便后面测试设计扩展版等。
实际我们通过
JTAG
对任意引脚进行操作,那么连接到板子上的其他外设我们也可以进行操作了,比如直接通过控制引脚模拟
SPI
时序去烧写
SPI FLSH(
比如
TopJTAG Flash Programmer
工具
)
。我们也可以开发自己的上位机,能操作任意引脚,实际上我们就能为所欲为了, 开发烧录工具,测试工具等等,我们就可以尽情发挥开发各种有意思实用的工具了。比如嵌入式文件系统开发,一般在
PC
端开发测试仿真时,只能用写本地文件方式替代
FLASH
的操作,有了
JTAG
我们可以直接操作真实的
SPI FLASH
芯片,完全就是真实环境。