xlinx芯片JTAG烧录

在刚拿到xlinx芯片时,需要对其进行烧录,相对较麻烦,故在有linux系统时,用flashcp命令进行擦写。
下面介绍JTAG烧录操作的步骤(解决的大致步骤是,先将制作的BOOT.bin保存在DDR的一个位置,然后烧录u-boot系统,通过u-boot系统将BOOT.bin镜像烧录进去。BOOT.bin的制作方法:http://blog.csdn.net/qq_28351465/article/details/53940181)

1 打开控制台

在xlinx sdk下打开XMD控制台。
xlinx芯片JTAG烧录_第1张图片

2 连接arm核

在xmd控制台输入命令:

connect arm hw

显示以下返回,即连接成功,如果未连接成功,需检查JTAG线的连接以及板子正常上电。
xlinx芯片JTAG烧录_第2张图片

3 初始化逻辑文件

先进入存放逻辑文件的文件夹,和linux window的cmd操作相同
依次执行命令

XMD% source ps7_init.tcl
XMD% ps7_init
XMD% init_user
XMD% rst -processor

这时容易出问题:

ERROR: Cannot Read from target


	MMU section translation fault

解决方法为:

XMD% rst

4 将BOOT.bin镜像烧录进板子地址0x1000000处(任意一处不会被占用的均可)

进入BOOT.bin存放的位置

XMD% dow -data BOOT.bin 0x1000000

5 将u-boot系统烧入地址0x0

进入u-boot执行文件存放位置

XMD% dow u-boot.elf

因为要放到0x0地址,所以命令后不用写地址位置,默认为0x0

6 进入u-boot系统,烧录BOOT.bin

让板子从0x0位置开始运行

XMD% con

之后,立即切换到串口界面,停住u-boot系统,在u-boot系统上,执行

1 探测flash

zynq-uboot> sf probe

2 擦写相应地址

zynq-uboot> sf erase 0x0 0x280000

3 写入数据(将之前放到0x1000000位置的数据烧到0x0位置)

zynq-uboot> sf write 0x1000000 0x0 0x280000

7 断开JTAG

XMD% disconnect 64

你可能感兴趣的:(Linux,/,编译安装,/,xlinx)