视频流 zynq Linux 至 pl,AR# 46913: Zynq-7000 示例设计:使用面向 DEVCFG 的 Linux 驱动程序对 PL 进行编程...

解决方案

说明:

要使用面向 devcfg 的 Linux 驱动程序对 PL 进行编程,比特流应转换为二进制。

此操作可使用 BootGen 工具。

BootGen 工具使用“BIF”输入文件,它可描述引导映像的结构。

.BIF 文件示例:

the_ROM_image:

{

[bootloader].elf

.bit

.elf

}

请注意,[bootloader]标签需要说明哪一个 ELF 二进制是设计的第一阶段引导加载程序。

此外还要注意的是,如果引导进程不需要 PL 编程,那么 .BIT PL 比特流行是可选的。

打开命令行 shell(如在 Windows 打开 cmd.exe,或在 Linux 中采用 shell 终端)并获得 Xilinx 工具环境来源。

BootGen 通过以下方式执行:bootgen -image .bif -split bin -o i BOOT.BIN

在以上范例中,.BIF 是指之前创建的文件。

将 BootGen 和“-split”选项配合使用,可为 .BIF 的每个输入文件创建二进制版本,并全部输出为独立文件,而不是常见的整体引导映像文件。

创建了以下文件:.bit.bin

二进制输出文件可通过 Linux 直接对 Zynq PL 进行编程。

将 .BIT.BIN 放在 SD 卡上再启动进入 Linux。

一旦启动 Linux,安装 SD 卡,并为 Zynq devcfg 块创建设备节点:mknod /dev/xdevcfg c 259 0 > /dev/null

下面用 Linux 的“cat”命令在 Zynq PL 中传输 PL 比特流:cat /.bit.bin > /dev/xdevcfg

现已对 PL 进行了编程。

通过观察电路板上“DONE”LED 的灯亮或 DEVCFG.INT_STS(PCFG_DONE_INT) 寄存器的值,可确认这一点。

注 1:split 选项在 2013.2 版中已从 Bootgen 删除,并重新添加至2013.3版中。

要生成面向 DEVICECFG 的单独的比特交换二进制格式文件,可用 ISE 安装的 promgen 命令行。Promgen -p bin -data_width 32 -b -u 0x0 .bit

注 2: 从 2014.1 开始,Bootgen 有选项 "process_bitstream",它会生成 BIN 文件 - 可用于 PL,以通过 Devcfg 配置 PS。

Example:bootgen -image all.bif -w -process_bitstream bin

BIF File:

all:

{

system.bit

}

输出:

文件system.bit.bin 生成于现有工作目录中。

注 3: Linux Kernel之后版本中, /dev/xdevcfg 可自动生成。

运行 "mknod /dev/xdevcfg c 259 0 > /dev/null" 命令后,收到"mknod: /dev/xdevcfg: File exists" 警告信息, 你可运行下一条命令。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值