ZYNQ Linux的QSPI Flash启动

本文介绍了如何在ZYNQ XCZ7020平台上,利用Linux、Ubuntu环境和Vivado、SDK工具,通过QSPI Flash进行系统启动。首先配置kermit工具,然后将BOOT.bin烧录到QSPI Flash中,接着利用uboot通过串口下载uImage、devicetree.dtb、uramdisk等文件,并修改Uboot参数,实现从QSPI Flash启动Linux系统。
摘要由CSDN通过智能技术生成

硬件平台:XCZ7020 CLG484-1
开发环境:Widows下Vivado 2016.2 、 SDK2016.2 、 Ubuntu 16.04
工具:kermit
所需材料:编译好的u-boot.elf、uImage、devicetree.dtb、uramdisk、硬件平台的bitstream
思路:先通过SDK生成BOOT.bin(不包含bitstream),并使用SDK将BOOT.bin下载到QspiFlash中,配置板卡从QspiFlash启动。Uboot执行之后通过Uboot使用串口将uImage、devicetree.dtb、uramdisk、bitstream下载到QspiFlash中,并将各个文件的地址传给Uboot。配置完Uboot后即完成。

STEP1:
首先:下载kermit工具,并配置kermit。
通过串口将文件下载到QspiFlash中使用的是kermit协议,而常用的minicom不支持kermit协议,所以需要安装kermit。

 # apt-get install ckermit

安装完后配置kermit,将下面代码添加到/etc/kermit/kermrc中。注意:需要改变kermrc文件权限。

    set line          /dev/ttyUSB0
    set speed         115200
    set carrier-watch off
    set handshake     none
    set flow-control none
    robust
    set file type     bin
    set file name     lit
    set rec pack      1000
    set send pack     1000
    set window        5

Kermit模式切换:

 # kermit 即可启动kermit
 C-Kermit>connect 连接串口进入到超级终端模式
 同时按下 Ctrl + \ 再按c切换到kermit命令模式

SETP2:
下载文件到QspiFlash中。我的硬件平台上的QspiFlash大小为32MB,空间分配如下所示:

                起始         SIZE
BOOT.bin     0X000000     0X100000
uImage       0X100000     0X600000
devicetree   0X700000     0X100000
uramdisk     0X800000     
  • 3
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值