之前调试过xilinx的XVC(Xilinx virtual cable),突然看到有人搞wifi-JTAG(感兴趣可以参考https://github.com/kholia/xvc-esp8266),也挺有趣的。就突然想了解一下JTAG是如何运作的,例如器件识别,bit文件加载,应用程序加载等操作。先从简单的开始搞起,识别器件,也就是获取IDCODE(目前已经实现:自己写代码也可以,利用Debug Bridge IP也可以,目前这两种做法亲测都可以)。如果想了解JTAG的时序方面的,直接去看手册即可,没什么特殊的(但是不同类型的器件可能会有所不同)。
我先把抓到的波形记录一下:
这张图到处都是…
这张图是ila抓到的波形