zynq 之zedboard ubuntu

之前的petalinux并不像ubuntu那么好用,尤其是在调试软件的前期,这里记录zedboard的ubuntu环境搭建过程。

参考文章如下:

《ZedBoard_HDMI_Ref_Des_2013_4》

《ZedBoard_Ubuntu_FAT_v2013_4》

在我的网盘可以下载:

http://pan.baidu.com/s/1qYwzXla

该设计同时支持hdmi和audio功能。

bitstream生成

首先是下载并搭建vivado下的soc平台,由于zedboard使用的是adi的器件,去adi那里下载(很全,各种板子都有,我手里只有zedboard):

$git clone https://github.com/analogdevicesinc/hdl 

这里需要说名一下,由于参考文档是vivado2013.4的版本,早期vivado不好用,到2015版本还算可以,我使用的vivado版本是2015.4的,按照参考文档并不行,需要如下分支取出:

$git checkout -b origin/hdl_2016_r1
git checkout 2016_R1也有可能是这个,随着版本不同而不同。
 

zynq 之zedboard ubuntu_第1张图片

然后就是编译了

gsc@gsc-250:~/zynzq7000/hdmi_petalinux/hdl$ make adv7511.zed
编译完了,可以打开这个工程看看,终端下敲vivado:

下面插一张工程图:

zynq 之zedboard ubuntu_第2张图片

到这里系统的bitstream已经生成了,接下来是生成fsblhe ubot,按照文档,或者直接使用sdcard里的镜像文件。

编译uboot

uboot使用xilinx官方的uboot版本,其git地址如下:

gsc@gsc-250:~/zynzq7000/Xilinx/u-boot-xlnx$ git remote -v
origin	git://github.com/Xilinx/u-boot-xlnx.git (fetch)
origin	git://github.com/Xilinx/u-boot-xlnx.git (push)
然后是配置编译,这一过程可以检查工具链以及镜像下载是否正确。
zynq 之zedboard ubuntu_第3张图片

由于从SD卡加载文件系统,而非ramdisk,为避免该错误,需要对zynq-common.h文件进行修改。

zynq 之zedboard ubuntu_第4张图片

执行make后会生成如下的文件:

gsc@gsc-250:~/zynzq7000/Xilinx/u-boot-xlnx$ file u-boot
u-boot: ELF 32-bit LSB  executable, ARM, EABI5 version 1 (SYSV), statically linked, not stripped
将该文件重命名成u-boot.elf,这是因为xilinx的SDK可以添加.文件。

生成boot.bin

zynq 之zedboard ubuntu_第5张图片

接下来是kernel的编译了

去adi官网下载最新的kernel:https://github.com/analogdevicesinc/linux

建议使用git会有版本信息在里面。

按如下命令编译内核

 1901  make ARCH=arm zynq_xcomm_adv7511_defconfig
 1938  make ARCH=arm uImage LOADADDR=0x8000
 1979  make ARCH=arm zynq-zed-adv7511.dtb

设备树一定要重新编译,不然新的内核解析设备节点会出错。我的内核下载地址:http://pan.baidu.com/s/1hsFDgCO

文件系统

按照参考文档就可以让系统起来。

安卓设计

参考网址

http://elinux.org/Zedboard的安卓部分

最后来张系统起来的图(左边是zynq的ubuntu,右边是自己的电脑):

zynq 之zedboard ubuntu_第6张图片s

你可能感兴趣的:(fpga)