ZYNQ移植vxworks系统

版本:ZYNQ7010,VxWorks_6.9

ZYNQ PL端有灵活性好,资源丰富,可反复编程速度快的优势,通过 PS的外设并行 AXI总线外挂 PL接口,使用 FPGA 来做高速的数据采集或者运算。ZYNQ可以移植各种系统,比如RT-thread,UCOS,freertos等,也可以移植操作系统比如vxworks,petalinux,linaro,debian等,兼容多种系统。VxWorks 是美国 Wind River System 公司推出的一个实时操作系统。WRS 公司组建于 1981 年,是一个专门从事实时操作系统开发与生产的软件公司,该公司在实时操作系统领域被世界公认为是最具有领导作用的公司。VxWorks 是专门为实时嵌入式系统设计开发的操作系统内核,为程序员提供了高效的实时多任务调度、中断管理,实时的系统资源以及实时的任务间通信。在各种CPU 平台上提供了统一的编程接口和一致的运行特性,尽可能的屏蔽了不同 CPU 之间的底层差异。应用程序员可以将尽可能多的精力放在应用程序本身,而不必再去关心系统资源的管理。基于 VxWorks 操作系统的应用程序可以在不同 CPU 平台上轻松移植。

1,生成vx.fsbl文件

(1)生成.bit文件,Export Hardware 之后,点击 File 里面的 Launch SDK,启动 SDK。打开 SDK 之后点击 File->New->Application Project。

(2)填写好工程名vx,硬件平台,配置好之后点击 Next。

(3)选择 Zynq FSBL,然后点击 Finish。点击 Finish 之后会出现以 vx为名字的工程。

2,平时 ZYNQ在启动时打印用的是串口1,所以在 system.mss 中修为串口为ps7_uart_1。点击 system.mss 下的 Source,按下图修改完成。修改之后点击 Re-generate BSP Source 按钮,重新产生 fsbl 文件。编辑完成之后会在保存工程目录下的 vx.sdk 下出现 vx目录,vx 目录下会产生 Debug 目录,里面会有 xxx.elf 即是 fsbl。

3, bootrom 文件:

(1)本文的中的 Workbench 安装在虚拟机中,在虚拟机中打开Workbench,点击 File->New->Project…。

(2)选择类型为 vxWorks Boot Loader/BSP Project,点击 Next 输出 Project name,点击 Next,如图界面,最后点击 Finish。

(3)Finish 之后会出现以工程名命名的工程目录,然后点击右键,点击 Build Project
编译工程,编译完成之后会在相应目录下生成 bootrom 文件。

4,生成Boot.bin 文件:vxWorks 的启动文件 Boot.bin 由 3 部分组成:fsbl、.bit、bootrom,其中.bit 由FPGA 提供,而且在生成 Boot.bin 时,这 3 者的顺序必须是 fsbl、.bit、bootrom,最后create image,就生成BOOT.BIN文件了

5,BOOT.BIN烧写:生成好 Boot.bin 之后利用 JTAG 烧写到 Zynq 板,烧写点击 Program Flash 如图所示,注意 Hardware Platform、offset、Flash Type 选项。烧写完成之后,重新启动 Zynq 板,串口出现打印且能正常工作,说明烧写成功。

猜你喜欢

转载自blog.csdn.net/wangjie36/article/details/118346357