ZYNQ平台在SDK下引导启动UBOOT

2023-11-01

ZYNQ芯片+Linux系统搭建完成后,希望通过QSPI-Flash的方式来进行程序加载。
QSPI-Flash启动则需要烧录以下文件:

BOOT.bin : fsbl.elf + uboot.elf
uImage : linux内核
zynq_board.dtb : zynq平台的设备树
uramdisk.image.gz : 文件系统
design.bit : FPGA程序比特流文件(注意:在第二种烧录方法中需要使用design.bin文件

准备完成之后,将这些文件烧录到QSPI Flash中有两种方法:

1、以上5中文件在SDK中直接制作成一个BOOT.bin,通过JTAG直接烧录到Flash中。
缺点:一旦程序需要更新,尤其是其中一种程序需要更新,都要一起重新生成bin文件,繁琐耗时。
2、通过SDK引导启动UBOOT,然后通过UBOOT中的tftp和sf命令将以上5个文件分区烧录到Flash中。

本文主要记录如何通过SDK来引导 UBOOT,后续章节将会详细介绍Flash如何分区且如何通过tftp和sf命令进行烧录。
首先将VIVADO生成的bit文件导入到SDK中如下图所示

启动SDK后,在SDK中启动XMD控制中心

然后将开发平台串口接入PC,因为在SDK中引导uboot后,在uboot启动过程中将会把打印信息通过串口输出。
完成以上操作之后,在XMD控制中心输入一下命令:

connect arm hw
cd   D:/project_1/project_1.sdk/Top_hw_platform_0(根据自己生成的文件目录)
fpga -f fpga.bit(**根据自己实际情况,如果你的串口使用了EMIO则必须要首先启动FPGA程序,否则后续无法进行串口打印**)
source ps7_init.tcl
ps7_init
dow u-boot.elf
con

之后可以看到uboot开始启动,并在串口进行打印。
#调试中的问题记录:

1、通过第2中方法将程序烧录到flash中需要注意fpga程序需要使用bin文件。
2、出现过串口不打印的现象是由于使用EMIO则必须要在xmd控制中心加载fpga程序
3、出现过网口不通的现象是由于zynq的硬件配置时没有将网络的相关管脚全部勾选。
4、在ps_init过程中出现MMU section translation fault 主要是由于自己已经烧录的linux内核已经启动,应该将原来烧录的停在uboot阶段即可。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ZYNQ平台在SDK下引导启动UBOOT 的相关文章

  • 是否真的需要旧版本的 Flex SDK?

    我正在我的系统上配置一个已经完成的项目 该项目使用旧的 Flex sdk 以下是我的POM
  • 如何在 iPhone 应用程序中保持 Web 服务器的登录状态?

    简而言之 我想要一个 iPhone 应用程序 使用输入的用户名和密码值登录到 Web 服务器 然后维护此登录 以便用户可以将数据 POST 到服务器 这只是使用cookie的问题吗 如果是这样 如何执行检查以验证用户是否已登录 Thanks
  • 如何以粉丝专页而非用户身份发布到 Facebook 粉丝专页

    我怎样才能以粉丝页面而不是用户的身份在粉丝专页墙上发帖 使用 javascript sdk 现在在 Init 上我正在接收 menage pages 并获取合适的 fanpage id 我如何更改下面的调用 var target param
  • Java SDK for REST API 服务的错​​误处理

    我们正在构建一个 Java SDK 以简化对提供 REST API 的服务之一的访问 该SDK供第三方开发者使用 我正在努力寻找在 SDK 中实现错误处理的最佳模式 以更适合 Java 语言 假设我们有其余端点 GET photos pho
  • 从 OpenCV 代码到 FPGA 代码的转换是否比 Matlab 代码更容易? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想做一个关于图像处理的项目 我想知道如果我想在FPGA上实现这个项目 我应该在第一阶段选择Matla
  • Kinect 1.8 颜色帧和深度帧不协调

    我的程序存在深度和彩色图像之间协调不佳的问题 玩家面具与人物不在同一位置 见下图 void AllFreamReady object sender AllFramesReadyEventArgs e using ColorImageFram
  • Android sdk内容加载器错误[重复]

    这个问题在这里已经有答案了 我在用日食朱诺win 7 32位平台上的版本 一切都很顺利 直到今天当我启动 Eclipse 时 Android sdk 内容加载器不能超过 0 我尝试重新启动 Eclipse 我结束了 adb 进程并再次重新启
  • NSOperation、观察者和线程错误

    我有一个问题NSOperation和观察员 I ve a tabbarcontroller and a splashController 我想要启动画面加载并下载文件 并在下载文件时使tabbarcontroller出现在屏幕上 问题是我有
  • 未收到从 MFMailComposer 发送的附件

    我正在尝试在 iPad 上发送一封带有 csv 附件的电子邮件 我根据下面显示的许多示例使用 MFMailComposer 发送电子邮件时 我可以在 MFMailComposer 窗口中看到正确的文件附件 但是当我收到电子邮件时 没有附加任
  • 如何使用Android SDK插件?

    任何人都可以分享一些开发新 SDK 附加组件 例如 Google 地图 API 的详细信息吗 我没有找到有关如何构建新 SDK 附加组件的任何详细信息 使用 SDK 插件连接到 Twitter Facebook YouTube 应用程序是个
  • 如何从 Spartan 6 写入 Nexys 3 FPGA 板上的 Micron 外部蜂窝 RAM?

    我到处都查过了 数据表 Xilinx 网站 digilent 等等 但什么也没找到 我能够使用 Adept 工具来验证我的蜂窝 RAM 是否正常运行 但我找不到任何库存 VHDL 代码作为控制器来写入数据和从中读取数据 帮助 找到了此链接
  • 基于 BBB DT 的方法

    我已经使用平台设备模型成功为我的自定义协议实现了基于 GPIO 的驱动程序 我想使用设备树方法升级它 因此 对于初学者来说 我有一个 beaglebone black 并且我使用在 uboot 控制台消息显示期间启用和验证的设备树配置交叉编
  • iphone SDK:将图像从iphone上传到php服务器发送空文件?(内部示例代码链接)

    我尝试通过 PHP 将照片和 GPS 位置发送到服务器 这是 PHP 部分 从这里复制 http www w3schools com PHP php file upload asp保存上传的文件 上面的示例在服务器上的 PHP 临时文件夹中
  • iOS SDK Hue 飞利浦与 Swift

    我尝试在 Objective C 中为 Hue 导入 iOS SDK 我按照这里的说明进行操作 https github com PhilipsHue PhilipsHueSDK iOS OSX https github com Phili
  • 使用 SDK 的 iPhone 应用程序上的 reCaptcha

    有人在 iPhone 应用程序上使用过 reCaptcha 吗 我正在尝试弄清楚如何将其嵌入到我的应用程序中 在 iPhone 应用程序中使用 reCaptcha 的唯一方法是在应用程序中渲染 WebView reCaptcha 有一个很好
  • 什么是 winapifamily.h?

    在 Windows SDK 和 DDK 中找不到它 但我们现有的一些代码包含它 我通过谷歌找到的唯一有意义的链接是 http msdn microsoft com en us library windows hardware hh45083
  • 从命令行获取设备的 Android SDK 版本

    我计划构建一个自动化系统 用于将 Android 版本部署到各种设备 以便使多平台开发更加轻松 有没有办法通过android shell或adb获取连接设备的sdk版本 将有一台计算机连接多个测试设备 我计划编写一个脚本 该脚本将从构建服务
  • Android Studio 不允许我更改 SDK 位置

    我打开 Android Studio 然后我打开 SDK 管理器 我拥有最新版本 但是我的 SDK 平台需要 Android 6 0 它甚至不让我点击任何东西 在此图像中 您可以看到文本和复选框变色 我无法单击 SDK 平台内的任何内容 甚
  • 使用 C# 获取 ec2-instance 标签

    我不是开发人员 所以也许答案是有不同的解决方案 但我无法真正从 python 或其他东西翻译它 我尝试使用 AWS NET SDK 查找实例 然后获取实例的标签 我已经能够确定实例是否已启动并正在运行 我还了解了如何创建和删除标签 不在下面
  • 可以购买哪些 FPGA(现场可编程门阵列)在家中进行实验? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 什么是 FPGA 在哪里可以买到 它们要花多少钱 您需要什么样的系统来试验它们 如何对它们进行编程 如果这是正确的术语 您能否使用普通 M

随机推荐

  • 再见以前说再见 操作系统复习

    mutex semget IPC PRIVATE 1 0666 IPC CREAT 创建信号量 semctl mutex 0 SETVAL 1 互斥信号量mutex赋初值为1 定义p操作 信号量申请操作 p sem num 0 p sem
  • 如何使用Python的Pyecharts做一个数据可视化的Graph 关系图?

    文章目录 前言 一 Pyecharts是什么 二 Graph关系图是什么 三 使用步骤 1 引入库 2 读入数据 3 人物关系 4 结果 总结 前言 Graph 关系图通常用于分析具有复杂性的数据 例如 如果你想探索不同实体之间的关系 你可
  • C# WinForm 默认最大化

    只需要在窗口的Shown事件处理函数中修改 WindowState即可 this WindowState FormWindowState Maximized
  • 事件绑定器-BP

    蓝图上的事件绑定器 在C 中就是代理 类似于这边绑定炸药包 那边爆炸 这个例子是 绑定人的F键 启动着火特效 书上的这个例子有问题 关卡蓝图上 核心在于startfire 事件 1 一边连接这绑定 一边连接着事件触发后的响应 先看第三人称绑
  • SpringBoot使用AOP

    本文介绍SpringBoot中使用Spring AOP 简介 AOP简介 AOP可能对于广大开发者耳熟能详 它是Aspect Oriented Programming的缩写 翻译成中文就是 面向切面编程 这个可能是面试中经常提到的问题 同时
  • 客服如何使用ChatGPT提高工作效率

    文章目录 ChatGPT简介 ChatGPT在客服中的应用 ChatGPT的优势和挑战 客服人员应该如何应对 1 与ChatGPT保持较高的专业水平 2 与ChatGPT建立良好的合作关系 3 强调人性化的服务 4 不断提升沟通和解决问题的
  • [前端] 编译时报错FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory

    参考文献 FATAL ERROR Reached heap limit Allocation failed JavaScript heap out of memory Vue cli3执行serve和build命令时nodejs内存溢出问题
  • 【JAVA多线程11】线程基本方法-线程等待(wait)/线程唤醒(notify)

    1 wait notify notifyAll 方法是Object的本地final方法 无法被重写 2 wait 使当前线程阻塞 前提是 必须先获得锁 一般配合synchronized 关键字使用 即 一般在synchronized 同步代
  • Django 快速搭建博客 第四节(hello world视图)

    上一节我们学会了怎样建数据库表 学习数据库的操作 如果想要把它们显示在网页上 我们还得练习一下如何在网页上显示第一个自己写的hello world 视图 1 我们需要在blog下建一个urls py的文件 里面写上 blog urls py
  • react与vue区别及react面试题

    react和vue的区别如下 1 React与Vue最大的区别是模板的编写 Vue鼓励去写近似常规HTML的模板 写起来很接近标准HTML元素 只是多了一些属性 这些属性也可以被使用在单文件组件中 尽管它需要在在构建时将组件转换为合法的Ja
  • springboot优雅实现工厂模式,策略模式——利用spring自动注入list,map性质

    工厂模式 工厂模式 Factory Pattern 是 Java 中最常用的设计模式之一 这种类型的设计模式属于创建型模式 它提供了一种创建对象的最佳方式 在工厂模式中 我们在创建对象时不会对客户端暴露创建逻辑 并且是通过使用一个共同的接口
  • 【WEB】HTTP返回头分析

    Http协议通讯时 在客户端发送请求后 request 服务器端返回的状态码解释 response Http状态码 1 请求收到 继续处理 2 操作成功收到 分析 接受 200 3 完成此请求必须进一步处理 301 302 304 4 请求
  • QObject::connect: Cannot connect QTimer::timeout() to (null)::fuction()

    这几天连接一对信号与槽怎么也连接不上 后来在下面的这个网站找到了答案 https stackoverflow com questions 6238486 qt qobjectconnect cannot connect null 问题在于c
  • [CocoaPods]podspec文件中的resource和resource_bundle

    相信基本上所有的iOS开发同学针对于CocoaPods都不陌生 即便没有用过 也是久闻大名如雷贯耳 作为Objective C和Swift中非常流行的依赖管理工具 它拥有超过10000个公有程序库 通过一份Podfile文件和pod ins
  • Linux集群常用脚本(个人总结)

    声明 1 本文为我的个人复习总结 并非那种从零基础开始普及知识 内容详细全面 言辞官方的文章 2 由于是个人总结 所以用最精简的话语来写文章 3 若有错误不当之处 请指出 常用脚本编写汇总 自定义脚本放在 bin下 并把这个目录配到PATH
  • js生成随机字符串

    function randomString len len len 32 var str ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678 默认去掉了容易混淆的字符oOLl 9gq Vv Uu
  • 2023-9-8 求组合数(一)

    题目链接 求组合数 I include
  • C语言 _ 指针(超详解析 3分钟完全掌握 总结性讲解 经典通俗)

    目 录 1 指针 指针变量及指针的大小 2 指针类型 3 指针的解引用 4 指针运算 4 1指针 整数 4 2指针 指针 5 野指针 5 1 为什么会有野指针 5 2 如何规避野指针 6 指针和数组 7 二级指针 7 1二级指针的定义 8
  • Java中的加号“+”

    在Java中 加号 与数学上的加号有些不同 它有两个意思 一个是算术运算中的 一个是连接符的重要 类似于C语言中的strcat函数 怎么区分这两种作用呢 1 当 两边是非数值类型 就被看作连接符 2 当 两边都是数值类型 就被看作算术运算中
  • ZYNQ平台在SDK下引导启动UBOOT

    ZYNQ芯片 Linux系统搭建完成后 希望通过QSPI Flash的方式来进行程序加载 QSPI Flash启动则需要烧录以下文件 BOOT bin fsbl elf uboot elf uImage linux内核 zynq board