不用linux可以开发zynq linux吗

[原创]xilinx zynq zedboard开发板Linux系统构建概述-电子产品世界论坛
[原创]xilinx zynq zedboard开发板Linux系统构建概述
前段时间在zedboard上进行zynq平台的开发验证,发现这方面的文档讲的不太清楚,中间走过很多弯路。准备记录下来,对前段时间工作的整理。记录的内容主要是Linux部分的开发,不包括FSBL、U-boot、FPGA。包括开发环境构建、内核、devicetree编译等。本来想整理详细些,结果总没时间,概述一下吧。
1.主机操作系统
我选择了vbox虚机,在ubuntu 12.04,和centos6.5下都进行了测试,都可以正常使用。我的感觉是ubuntu运行的快一些。我使用的是32位系统,64位系统还需要额外的准备。
2.开发包选择
思路:最开始拿到zedboard开发板,我是到www.zedboard.org上找资料。这个网站资料大部分是关于这个开发板硬件的,没有开发包。后来发现SD卡release文件是digilent网站制作的,在页面下载了release包()。但我的最终目的不是只在开发板上玩玩,我需要自己能够编译内核,能够定制系统。后来在xilinx的wiki网站找到了xilinx linux源码包。一开始只看到内核是支持xilinx官方的zc702开发板,后来验证知道,zedboard可以与zc702使用同样的内核(后来发现microzed也可以使用这个内核)。到此,确定了开发的主要方向是依靠xilinx维护的源码进行。安装方法:
1)下载开发包
根据的说明,到页面,选择选择了2013.4下载All OS Vivado and SDK Full Installer (TAR/GZIP - 6.81 GB)。下载过程不是很方便,单个文件太大,无法上传到百度云盘,谁有云盘vip,分享一下最好。我最早开发时是2013.4,现在已有更新的版本。
2)在虚机中安装开发包
vbox虚机文件共享操作不在此描述。重点说明安装过程中的问题。
将下载的安装包解压后,直接运行xsetup默认安装会有问题。我的方法是在终端中运行:sudo chmod 777 /opt。然后再运行xsetup,按照默认选项安装即可。
疑问:不知道为什么,使用sudo xsetup安装不能成功。只好修改/opt目录权限。
3.安装软件:
1)根据需要安装开发过程需要的组件
安装组件:libncurses
sudo apt-get install libncurses5-dev
这个组件是make menuconfig时需要的。
我使用的是subversion:
ubuntu12.04的源svn是1.6版本,这个不习惯,升级到1.7
svn1.6升级到1.7:
卸载原来的svn1.6:sudo apt-get remove subversion
vim /etc/apt/sources.list&
deb http://ppa.launchpad.net/dominik-stadler/subversion-1.7/ubuntu precise main&
deb-src http://ppa.launchpad.net/dominik-stadler/subversion-1.7/ubuntu precise main&
sudo apt-get update
安装新版svn:sudo &apt-get install subversion
确认安装版本:svn --version
提示:Password for '(null)' GNOME keyring:
解决:svn和gnome的一个key冲突了,只要删除就可以了:rm ~/.gnome2/keyrings/login.keyring
删除svn记住的密码:删除 ~/.subversion/auth (命令:rm -rf ~/.subversion/auth
1)下载uboot
下载xilinx-v14.7标签中tar.gz格式的文件(zip格式的文件好像有问题):
u-boot-xlnx-xilinx-v14.7.tar.gz
进入u-boot目录下tools目录,添加路径到环境变量:
u-boot-xlnx$ cd tools
tools$ export PATH=`pwd`:$PATH
不然编译内核生成uImage和制作ramdisk时会提示错误。
2)进入uboot所在目录,编译:
make ARCH=arm zynq_zed_config
make ARCH=arm&
编译后的u-boot为elf格式,u-boot.bin为二进制格式。
1)下载linux & --xilinx
下载3.10版本内核:linux-xlnx-xilinx-v14.7.tar.gz
设置环境变量后:
make ARCH=arm xilinx_zynq_defconfig
make ARCH=arm menuconfig
make ARCH=arm UIMAGE_LOADADDR=0x8000 uImage
6.devicetree
下载zedboard开发包中的devicetree.dts到..../linux-xlnx/arch/arm/boot/dts
编译devicetree:
make ARCH=arm dtbs
zynq-zed.dtb是我们需要的文件,改名为devicetree.dtb
也可以只编译这一个文件:make ARCH=arm zynq-zed.dtb
编译模块(可选,用来替换rootfs中的内容):
make ARCH=arm modules
make modules_install ARCH=arm INSTALL_MOD_PATH=../rootfs
关键词:&&&&&&&&&&&&
LZ要是把这些链接都加上超链接就好了
已经编辑超链接。
devicetree.dtbde 生成xilinx有对应的命令,为什么用make...?
make也是调用的那些脚本命令啊,这是更高层的封装。
统一使用make,可以少记些东西。
再贴个ramdisk制作方法:
2)Initramfs
用root用户,执行sudo su
展开cpio:
mkdir current_ramdiskfs/
cd ./current_ gunzip -c ../rootfs.cpio.gz | cpio -cd ..
然后修改里面的文件
重新制作ramdisk映像:
cd current_ramdiskfs
find . | cpio -H newc -o | gzip -9 & ../rootfs.cpio.gz
mkimage -A arm -T ramdisk -C gzip -d rootfs.cpio.gz uramdisk.image.gz
这个指令会编译所有的.dts文件在原有dts目录下生成对应的dtb文件
按照你的步奏,我在linux(虚拟机)下安装vivado,导入license不成功,请问什么原因?
我在linux下不用vivado,只用它的交叉编译工具链。
不过我觉得这部分应该和windows一致吧。
后续可以再写个linux系统移植和u-boot移植的技术贴,期待!
匿名不能发帖!请先 [
Copyright (C) 《电子产品世界》杂志社 版权所有君,已阅读到文档的结尾了呢~~
介绍了Xilinx Zynq-7000系列FPGA开发板ZC702开发板上以Target Reference Design——sobel图像算法处理的linux移植操作步骤,包括开发环境搭建、启动镜像制作等。
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
Xilinx Zynq ZC702开发板Linux移植指南
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口你的位置:
&& 详细内容
Adam Taylor玩转MicroZed系列55:在Zynq SoC上运行Linux操作系统
热度176票&&浏览2974次
时间:日 08:33
作者:Adam Taylor如果在我们的虚拟机上已经安装好了SDK,我们就得使用Linux操作系统来建立我们自己的应用程序。这通常需要对 Zynq SoC的硬件重新进行定义。首先,我们要做的就是确保将VIVADO设计套件以及SDK下载并且安装到我们的虚拟机中。因为我们需要这些工具对Zynq SoC进行硬件定制同时构建软件开发环境。 接下来我们按照下面步骤进行:1. 按照我们的要求新建一个Zynq 硬件系统,确保我们有下面这些外设:• UART(必须的)• SD 卡配置(可选)• 以太网(可选)• TTC(三倍定时器/计数器模块,必须的)2. 将硬件设计导出到SDK并且打开SDK,以便我们接下来的操作:• 添加Petalinux 安装目录下的EDK用户库。该库在 tools -&SDK内部repositories 文件夹和Petalinux 安装目录下的 components 文件夹内都有。使用独立的BSP建立一个FSBL(第一级Boot Loader)。如果你不知道怎么做,帮你解决。 为我们将要开发的Petalinux 应用程序创建一个BSP(板级支持包)。记住在OS选项中的下拉框中选择Petalinux ,如下图所示。如果你不熟悉的话,重复操作几次,针对如何创建一个BSP有一个详细的指导。
• 创建完了BSP。我们将我们选择的UART配置为std_in 和std_out (在本例中名字叫做ps7_uart_0 ),从主内存执行代码(在本例中是ps7_ddr_0)。到目前为止,我们对使用的工具都非常熟悉,并且以前也操作过类似的步骤,比如我们曾经在 Zynq SoC移植过μC/OS-III操作系统。不管怎么样,现在我们要开始使用Petalinux SDK 了。第一步,我们在SDK内新建一个工程,我们可以使用下面的命令: $petalinux-create --type project --template zynq -- name week55
在我们Petalinux文件夹的顶层将生成一个工程文件。 下一步就是确保我们可以使用前面创建好的BSP获取我们的硬件设置。要实现这个,我们定位到BSP文件夹,并且指向刚刚我们创建的工程。命令如下:$petalinx-config -- get-hw-description –p /home/adam/petalinux-v2014.2/final/week55 生成的文件(里面包含一个设备树,一个新的xparameters.h,一个config.mk 文件)在/subsystems/linux/hw-description下面。 最后一步要求我们返回我们的工作目录,这样我们可以:• 配置顶层系统,我们就用命令:$petalinux-config,例如:假设我们要配置从SD卡启动等。• 配置内核我们就使用命令: $petalinux-config –c kernel• 配置根文件系统,我们就使用: $petalinux-config –c kernel如果我们对用这些命令进行自定义配置的结果都满意的话,我们就要编译这个系统了,这个操作非常简单,只要输入命令:$petalinux-build 然后,我们用下面的命令来创建一个boot镜像文件:$petalinux-package –boot – fsbl –fpga --uboot接着,我们就可以直接启动我们的系统并且测试它,当然,先用QEMU来仿真一下也是个好主意。原文链接:
Copyright 2014 Xilinx Inc 如需转载,请注明出处
对本篇资讯内容的质量打分:
当前平均分:0.37 (90次打分)
【已经有86人表态】
[感动最多的]
[路过最多的]
[高兴最多的]
[难过最多的]
[搞笑最多的]
[愤怒最多的]
[无聊最多的]
[同情最多的]哇塞,好高端。。。
UID1150723&帖子25&精华1&积分30730&资产30730 信元&发贴收入295 信元&推广收入0 信元&附件收入30460 信元&下载支出85 信元&阅读权限80&在线时间68 小时&注册时间&最后登录&
本帖最后由 waterbeef 于
17:58 编辑
& &第二章新鲜出炉
(964.15 KB)
下载次数:392
下载需要消耗: 2 信元,如果是重复下载只需消耗: 1信元
UID1150723&帖子25&精华1&积分30730&资产30730 信元&发贴收入295 信元&推广收入0 信元&附件收入30460 信元&下载支出85 信元&阅读权限80&在线时间68 小时&注册时间&最后登录&
第三章也上传了~~
(866.66 KB)
下载次数:275
下载需要消耗: 2 信元,如果是重复下载只需消耗: 1信元
UID1150723&帖子25&精华1&积分30730&资产30730 信元&发贴收入295 信元&推广收入0 信元&附件收入30460 信元&下载支出85 信元&阅读权限80&在线时间68 小时&注册时间&最后登录&
教程至此结束
UID192915&帖子5137&精华0&积分5228&资产5228 信元&发贴收入25930 信元&推广收入0 信元&附件收入3029 信元&下载支出23737 信元&阅读权限50&在线时间518 小时&注册时间&最后登录&
如何在zynq上挂linux_第一章.pdf (573.37 KB)
UID192915&帖子5137&精华0&积分5228&资产5228 信元&发贴收入25930 信元&推广收入0 信元&附件收入3029 信元&下载支出23737 信元&阅读权限50&在线时间518 小时&注册时间&最后登录&
如何在zynq上挂linux_第二章.pdf (964.15 KB)
UID192915&帖子5137&精华0&积分5228&资产5228 信元&发贴收入25930 信元&推广收入0 信元&附件收入3029 信元&下载支出23737 信元&阅读权限50&在线时间518 小时&注册时间&最后登录&
如何在zynq上挂linux_第三章.pdf (866.66 KB)
UID1110078&帖子36&精华0&积分10&资产10 信元&发贴收入185 信元&推广收入0 信元&附件收入0 信元&下载支出280 信元&阅读权限10&在线时间31 小时&注册时间&最后登录&
如何在zynq上挂linux_第三章.pdf (866.66 KB)
UID1183129&帖子178&精华0&积分2133&资产2133 信元&发贴收入915 信元&推广收入0 信元&附件收入0 信元&下载支出772 信元&阅读权限50&在线时间113 小时&注册时间&最后登录&
内容感谢分享,Mark
[通过 QQ、MSN 分享给朋友]
TI信号链专区正式上线,欢迎访问!&:& Zynq-7000 All Programmable SoC Linux 解决方案
Zynq-7000 All Programmable SoC Linux 解决方案
Zynq&-7000 All Programmable SoC (AP SoC) Linux 解决方案将 Linux 操作系统的优势与用来在此平台上设计软件应用的 PetaLinux Tool 和 Xilinx SDK 相结合。
Linux 元件
Xilinx 致力于提供经过完全测试的 Linux 组件,包括 Linux 内核、面向 Zynq-7000 定点处理系统外设和软件可编程逻辑外设的驱动器以及u-boot。解决方案紧密跟踪主线 linux 内核树,并且驱动器和板支持套件 (BSP) 得到更新,以使用稳定的最新主线 linux 版本。这为客户提供了 Zynq-7000 平台上最新 Linux 内核特性的优势。本解决方案还有以下优势:
ARM& Cortex&-A9 MPCore& 处理系统的对称多处理 (SMP) 模式支持
无监管 AMP 和基于 Hypervisor 的监管 AMP 配置中的多操作系统或不对称多处理 (AMP)模式支持
使用器件树进行实时配置的 Linux 内核,允许相同的内核镜像运行于不同的硬件配置。
可执行 CPU 频率扩展、管理 CPU 空闲电平和挂起系统的 Linux 电源管理框架
Video4Linux (V4L2) 驱动器框架和 DRM/KMS
驱动器框架支持 Xilinx 视频和图像 IP。
Linux 元件源文件与 PetaLinux 工具绑定。还可以从下面的源文件库中得到:
Xilinx GitHub 包含 Linux 内核、驱动器、u-boot 和器件树的源文件库。如欲了解更多详情,敬请访问
主线 Linux and u-boot 源文件库。大部分 Zynq-7000 软件驱动器已经在主线树中或正处于进入主线树的过程中。了解更多,敬请访问 。
Yocto 项目支持
Yocto Project 是一个由 Linux Foundation 管理的开源协作项目,可提供在任何 SoC 上建立定制 Linux 解决方案所需的模板、工具和方法。Xilinx 是 Yocto Project 的积极参与者,并提供在 Zynq-7000 AP SoC 上构建 Linux 解决方案的 BSP 方法。与 Linux 内核策略一样,Xilinx 也会密切跟踪 Yocto Project 版本,并在最新稳定版本推出时提供支持。了解更多,敬请访问
Linux 工具
Xilinx 推出针对 Zynq-7000 AP SoC 开发板的现成解决方案,以提供可简化设置与评估的高生产力工具。这些工具提供针对 Xilinx 及其合作伙伴开发板的预构建板支持套件 (BSP) 和参考实例。
解决方案提供:
用于定制化、构建和开发 Linux 系统的 PetaLinux 工具,还包含一个可供参考的 Linux 版本。此外,工具还包含 Zynq-7000 AP SoC 处理系统的完整 QEMU 系统模型,这样无需硬件开发板也能运行和调试 Linux 应用。如欲了解更多详情,敬请访问页面。
Xilinx 软件开发套件 (SDK) 包含 C/C++ 编译器、支持 NEON 的最优化 C/C++ 库以及用于 Linux 应用开发、调试和数据图表的 eclipse IDE&。如欲了解更多详情,敬请访问页面。
Xilinx Linux 开发人员资源
面向 Zynq-7000 AP SoC 开发板,包含 ARM& Cortex&-A9 MPCore& 内核资源、软件驱动程序和板支持套件的 GIT 库 (BSP)
用于定制化、构建和开发 Linux 系统的 PetaLinux 工具,还包含一个可供参考的 Linux 版本&&&&
Xilinx 软件开发套件 (SDK) 包含 C/C++ 编译器、支持 NEON 的最优化 C/C++ 库以及用于 Linux 应用开发与调试的 eclipse IDE&&&
Zynq-7000 AP SoC&Linux Wiki提供技术指导和 Linux 软件设计解决方案&&
用于运行和调试软件的 Zynq-7000 AP SoC 处理系统的开源 QEMU 系统模型 &&
参加 Zynq-7000 AP SoC&Linux 论坛,交流思想并成为 Zynq-7000 AP SoC 社区的一员&&
Partner Linux 解决方案
Xilinx 与行业领先公司合作推出一款面向 Zynq-7000 AP SoC 平台的同类最佳 Linux 解决方案。以下内容为支持 Zynq-7000 SoC 的产品列表,如需了解更多详情,请访问 。
Linux 发行版
Arch Linux 发行版
ENEA Linux
Montavista Linux
SYSGO ELinOS
Timesys LinuxLink
Wind River Linux
ARM Development Studio 5 (DS-5)
Computex PALMiCE3, PALMiCE2H
Green Hills - MULTI
Kyoto MicroComputer
Lauterbach TRACE32 PowerTools
Mentor Sourcery CodeBench toolchain
Montavista DevRocket
Yokogawa Digital Corporation
Wind River WorkBench
Adeneo Embedded
CoreEL Technologies
DornerWorks
ENEA Software
Fidus Systems
Missing Link Electronics
Montavista
Plextek Ltd
Topic Embedded Systems B.V.
V3 Technologies
Wind River Systems

我要回帖

更多关于 zynq petalinux 的文章

 

随机推荐