8. Xilinx sdk调试&烧写

SDK的调试

创建好SDK工程后(软件会自动创建BSP),软件的调试步骤如下。

1.右键工程,选择“Debug As>>Debug Configurations...”,如图1所示。

图1. 右键选择“Debug As>>Debug Configurations...”

2. 在“Debug Configurations”窗口中,先双击(1)中的"System Debugger"来新建调试项;然后勾选(2)中的两个选项,即复位系统,给FPGA编程,如下图所示。

图2. 新建调试项,并勾选2项内容

3. 在“Application”栏中指定CPU、工程名和待调试的.elf文件。

图3. 指定CPU,工程名和需调试的.elf文件

4. 上述配置完毕后,以后调试使用Debug图标即可,如下图所示。

图4. 后续调试时的操作

QSPI Flash的烧写


Zynq的启动模式:QSPI Flash和SD卡

开发ZYNQ时,在Xilinx SDK烧写QSPI FLASH时必须指定FSBL文件,但是用默认生成的FSBL文件提示烧写失败

xilinx官方解决办法如图所示:QSPI的编程需要Zynq 从 JTAG模式启动。但是硬件上是QSPI模式,烧写程序时,FSBL会尝试从Flash中加载程序,由于此时程序还未烧写而导致烧写失败。烧写时需要用单独制作的prog_fsbl。(制作BOOT.bin时必须用默认生成的FSBL)。

图5. Xilinx烧写QSPI Flash需要新建FSBL


添加一个专门用于烧写的FSBL_PROG(此FSBL与用于合成BOOT.BIN的FSBL不是同一个),在 main函数里增加下列斜体加粗代码

/*

Read bootmode register

*/

BootModeRegister = Xil_In32(BOOT_MODE_REG);

BootModeRegister &= BOOT_MODES_MASK; //line 384

//add this line to trick boot mode to JTAG 添加的语句

BootModeRegister = JTAG_MODE;

烧写FLASH,指定FSBL_PROG即可

fsbl中用JTAG模式

注意:Image File和FSBL File的路径中不能有中文。

Vivado2019,1烧写QSPI Flash

注:上面的FSBL文件的生成方式见“Zynq的JTAG模式启动

徐红伟@百香果科技

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容