基于zcu102板卡的FPGA开发记录:为ZCU102配置ubuntu桌面(含红灯亮无法显示等问题解决方案)

本文记录了基于ZCU102开发板配置Ubuntu桌面的过程,包括前期准备、烧录镜像、制作Linux镜像等步骤,并详细列举了解决启动后DONE灯常亮、显示器无显示、键盘鼠标无效及网络连接问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、前期准备

1.  带电源的 Xilinx ZCU102 评估套件 .

2. 10 类 SD 卡(内存>8 GB).

3. 以太网电缆(用于 Internet 连接、apt-get 指令安装软件包以及供用户试用 Webserver 演示)、Micro USB 转标准 USB 数据线.

4. 4K或1080P显示器和 DisplayPort 电缆(注意如果是DP转HDMI,要使用有源转接器).

5. USB 3.0 连接器或 USB 2.0 微型电缆到标准 USB 母头适配器,USB集线器连接 USB 鼠标、USB 键盘或集成鼠标的 USB 键盘等.

6. 用于zcu102的ubuntu桌面镜像文件,官方下载链接Ubuntu_Desktop_Release_2018_3.
其包含以下文件/文件夹:


7. 为了防止出错,xilinx的相关软件版本皆为2018.3(注意查看petalinux部署环境支持的ubuntu版本,本人使用的是ubuntu16.04.3).

8. 问题不决,重启解决(reboot).

二、将预构建镜像烧录到SD卡中

1. 准备 SD 卡.

2. 在下载好的\Ubuntu_Desktop_Release_2018_3\Ready_to_test_images目录中找到“ ZCU102_UbuntuDesktop_2018_3.img ” .

3. 使用镜像烧录软件将ZCU102_UbuntuDesktop_2018_3.img文件解压到 SD 卡.

烧录方法:windows10下使用balenaEtcher烧录

4. 烧录完成后会产生两个分区,其中一个是文件系统(在windows系统下不可见),另外一个分区中有两个文件(image.ub和BOOT.bin) .

5. 注意:上述产生的两个文件(image.ub和BOOT.bin) 需要在后续步骤中被替换掉.

三、使用 Petalinux 2018.3 制作 Linux 镜像

注意:此部分是为了生成 Linux 镜像文件(image.ub和BOOT.bin),用于替换上个部分烧录后产生的(image.ub和BOOT.bin).

1. 准备.hdf文件

方式一: 使用Ubuntu_Desktop_Release_2018_3中已经提供design_1_wrapper.hdf文件

方式二: 根据提供的.tcl脚本使用vivado2018.3 制作.hdf文件,步骤如下:

(1)  启动 Vivado Design Suite 2018.3(在 Linux 上)

(2) 在Vivado欢迎屏幕的TCL控制台,将目录更改为/ Ubuntu_Desktop_Release_2018_3 /Hardware,其中project.tcl文件存在.

cd /home/...你的路径/Ubuntu_Desktop_Release_2018_3/Hardware

source project.tcl

此 TCL 脚本将执行以下操作

  • 自动创建 Vivado 项目.
  • 创建新的模块设计并自动填充 Zynq UltraScale+ MPSoC PS 系统、所需的组件和连接.
  • 为 ZCU102 板配置 Zynq UltraScale+ MPSoC PS 系统.

(3) 创建wrap器,

(4) 导出design_1_wrapper.hdf文件

该过程完成后,将在/Ubuntu_Desktop_Release_2018_3/Hardwar e 目录下生成design_1_wrapper.hdf

2. 开始制作

(1) 使用以下命令创建 Petalinux 项目

petalinux-create -t​​ project –s <path to the downloaded zcu102 bsp>/xilinx-zcu102-v2018.3-final.bsp

(2) 将目录更改为创建的 Petalinux 项目

cd <petalinux-project>

(3) 将design_1_wrapper.hdf文件复制到新建的项目下

petalinux-config --get-hw-description

(4) 在弹出的界面上进行如下设置  

earlycon clk_ignore_unused earlyprintk root=/dev/mmcblk0p2 rw rootwait cma=1024M

(5) 保存退出向导

(6) 等到 PetaLinux 重新配置项目,清理现有的引导加载程序映像。这是为了确保与新硬件设计同步重新创建引导加载程序

petalinux-build -c bootloader -x distclean

 (7) 配置内核,步骤如下:

petalinux-config -c kernel

【注意: Device Drivers->USB support and enable all required classes (不要选Disable External Hub,即前面不是*号,为空)】 

(8) 输入以下命令以构建 Linux 映像

petalinux-build

 (9) 等待项目构建完成,使用以下命令创建 BOOT.bin

petalinux-package --boot --fsbl images/linux/zynqmp_fsbl.elf --u-boot images/linux/u-boot.elf

如果设计包含PL部分,执行以下指令:

petalinux-package --boot --fsbl images/linux/zynqmp_fsbl.elf --fpga images/linux/system.bit --pmufw images/linux/pmufw.elf --atf images/linux/bl31.elf --u-boot images/linux/u-boot.elf --force

(10) 移动到文件夹images/linux/并将BOOT.BINimage.ub文件复制到SD卡的boot分区

(11) 如果对HDF文件进行了修改再次编译,执行以下指令在重复操作步骤3、6、8、9

petalinux-build -x mrproper

四、ZCU102 电路板设置

  • 将 Micro USB 线连接到 ZCU102 Board Micro USB 端口 J83,另一端连接到主机 PC 上的开放 USB 端口。该电缆将用于 UART over USB 通信.
  • 将网线一端连接到ZCU102连接器J73,另一端连接到主机的以太网插座.
  • 将 SD 卡插入 SD 卡插槽 J100.
  • 如图所示设置 SW6 开关。这将启动设置配置为从 SD 启动(zcu102 v1.1模式如下)
  • 将 12V 电源连接到 ZCU102 6 针 Molex 连接器.
  • 检查 USB 连接器附近的跳线
    特别是J7跳线必须插入USB才能工作!(有关正确的跳线配置,请参见照片).

    j7.jpg

五、会遇到的问题

1. SD卡启动后DONE灯一直为红色

其实红灯显示也无妨,因为其没有包含PL端设计,红灯亮表示:没有进入PL端程序

只要通过端口能查到进入系统即可

2. 显示器没有显示

(1) 可能原因1:DP转HDMI转接口不是无源的

(2) 可能原因2:显示器与ZCU102不匹配(此可能性不大)

(3) 可能原因3:没有正确进入启动程序

在终端中进行指令重启

reboot

3. 键盘鼠标无效

再次检查 USB 连接器附近的跳线
特别是J7跳线必须插入USB才能工作

4. 不能连接网络

(1) 情况一:zcu102只能ping通自己,不能在主机上ping通zcu102的IP

可能原因:zcu102网络与主机(你的电脑)的网络不是在同一个网段

(2) 情况二: zcu102不能访问外网

可能原因:未对zcu102中的ubuntu系统的网路进行配置

解决方法:按照ubuntu网络配置的方法设置网络为自动分配IP地址模式固定IP地址模式

可参考如下博客

基于zcu102板卡的FPGA开发记录:为zcu102_ubuntu配置网卡

六、参考资料

1. 官方参考:Zynq UltraScale+ MPSoC Ubuntu part 2 - Building and Running the Ubuntu Desktop From Sources

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值