Zynq 双核AMP 通信

本文详细介绍了如何使用Petalinux在ZYNQ7020平台上进行Vivado工程的创建、配置,包括Linux环境变量设置、工程构建、U-Boot和Kernel编译,以及rootfs的生成和打包过程,注意事项涉及CPU地址分配和L2cache控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、vivado工程

最简单的工程,参考ZYNQ7020 Petalinux 以太网环境搭建-优快云博客

二、petalinx 定制linux系统

1、配置环境变量

source /opt/pkg/petalinux/2020.2/settings.sh

2、创建工程

petalinux-create -t project --template zynq -n amp_com

3、配置工程,将vivado产生的.xsa文件复制到amp_com项目目录下

cd amp_com
petalinux-config --get-hw-description ./

4、配置离线编译(这里不讲),配置linux的内核地址空间(0x4000_0000改为0x2000_0000),以及单核启动

petalinux-config

5、编译u-boot

petalinux-config -c kernel

6、编译kernel

petalinux-config -c kernel

7、编译rootfs

petalinux-config -c rootfs

8、编译工程

petalinux-build

9、使用petalinux-package --boot 打包

petalinux-package --boot --u-boot --force --bif package.bif

package.bif文件内容

the_ROM_image:
{
	[bootloader] fsbl.elf           //vitis 编译得到、也可以是image/linux/zynq_fsbl.elf
	images/linux/u-boot.elf         //项目目录image/linux/u-boot.elf
        hellow_led.elf              //CPU1代码,由vitis编译得到
                                    //(没有FPAG,如果有,也可以放到这个文件里)
}

10、注意CPU0与CPU1地址不要冲突

CPU0设置为0x0000_0000~0x1FFF_FFFF

CPU1设置为0x2000_0000~0x3FFF_FFFF(也可以小于0x3FFF_FFFF)

如果禁用CPU1的L2 cache,在CPU1的bsp里面添加编译时候所需要的宏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值