1 Zynq的开发四种方式
纯PL开发,纯PS开发(helloworld),PS+PL(无操作系统,跑裸跑程序),PS+PL(跑操作系统)。
1.1 纯PL开发
这个和一般的xilinx的FPGA没有很大的区别。
1.2 纯PS开发
典型的就是helloworld工程, 一种是传统的arm的方式。还一种就是xilinx方法,这个是生成一个elf文件,这个elf文件包括了硬件配置信息(xmp),和裸跑程序(c文件)。
1.3 PS+PL(不跑操作系统)开发
这个可以参考懒兔子博客二,三笔记,生成的elf文件包括了硬件配置信息(xmp),还有裸跑程序(c文件),另外还有一个.bit文件可以看出和纯PS开发的区别了。
1.4 PS+PL(跑操作系统)开发
这个就需要BOOT.BIN,设备树,linux内核镜像,文件系统了。
其中BOOT.BIN是由3部分组成的(boot.elf, .bit, fsbl.elf),boot.elf这个是由交叉编译环境产生的,相当于ssbl,.bit文件是PL使用文件,fsbl.elf这个是fsbl。
2 开发工具
2.1 独立开发环境
PL—>Vivado
PS(ARM)–>SDK(Xilinx)或者第三方ARM开发工具
2.2 集成开发环境
SDSoC
2.3 独立开发环境的四个步骤
(1) 系统架构师确定硬件-软件分区方案;
(2) 硬件工程师处理被分配到硬件中的功能,并将它们转换或设计成IP