0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

乐鑫科技ESP-AMP框架详解!两款已支持的ESP32-P4C5开发板推荐!启明云端乐鑫科技代理

启明云端 2025-12-18 18:02 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在多核嵌入式开发中,如何实现任务的高效分工与跨核通信,一直是开发者关注的重点。ESP-AMP 作为专为 ESP32 系列打造的非对称多处理框架,现已支持主核运行 FreeRTOS、从核运行裸机或其他实时操作系统,并提供完整的核间通信机制。

启明云端旗两款高性能开发板——WT99P4C5-S1与 WTDKP4C5-S1,搭载乐鑫科技ESP32-P4芯片和ESP32-C5芯片,均已支持 ESP-AMP 框架,为开发者提供即插即用的多核开发体验,助力项目快速落地。


ESP-AMP介绍

ESP-AMP 是一款开源框架,适用于在多处理核心的 ESP32 系列片上系统(SoC)上构建非对称多处理(AMP)应用。该框架支持一个核心运行 IDF FreeRTOS 固件,另一个核心运行裸机或其他实时操作系统(RTOS)等不同软件环境,并提供了一套用于核心间通信与同步的 API。本文档后续将运行 IDF FreeRTOS 的核心称为主核(maincore),运行其他软件环境的核心称为从核(subcore)。

与 ESP-IDF 提供的默认对称多处理(SMP)系统相比,ESP-AMP 具有以下差异化特性:

核心功能定制选择:在单高性能(HP)核心的 SoC 中,低功耗(LP)核心可作为从核,为从主核分担部分任务;在多 HP 核心系统中,ESP-AMP 支持将一个 HP 核心作为主核,其余 HP 核心作为从核运行。

灵活性更高:支持在两个核心上并行部署不同配置、运行专用应用,以适配更复杂的使用场景(目前从核仅支持裸机环境)。

ESP-AMP架构

ESP-AMP 提供了一套完整的核心间通信(IPC)和同步组件,采用分层架构设计,如下图所示:

ac13d0e4-dbf8-11f0-8ce9-92fbcf53809c.png

你可选择不同层级的 API,或组合多层级 API,以满足特定需求或使用场景。从下至上,各组件如下:

共享内存(Shared Memory):跨核心通信的基础数据共享机制。

软件中断(Software Interrupt):跨核心通信的基础通知机制。

事件(Event):包含主核与从核间同步的 API。

队列(Queue):无锁队列,支持核心间单向通信。

远程处理器消息传递(RPMsg):远程处理器消息传递协议的实现,支持应用中并发通信流。

远程过程调用(RPC):基于 RPMsg 构建的简易远程过程调用框架。

此外,ESP-AMP 还提供了端口层(Port Layer),用于抽象不同环境和 SoC 之间的差异,为上层提供统一接口

构建系统

ESP-AMP 配备灵活的构建系统,可轻松构建主核和从核固件,核心特性包括:

采用标准 ESP-IDF 构建系统构建主核固件。

从核固件支持两种构建模式:统一构建模式(单条命令同时构建主核和从核固件)和独立构建模式(单独构建从核固件)。

从核固件支持两种存储方式:嵌入主核固件中,或写入闪存分区。

为裸机环境下的从核构建提供专用工具链配置。

系统组件

系统组件包含主核用于管理从核生命周期、处理从核系统事件的 API,目前支持的功能如下:

启动和停止从核。

将从核固件加载到 HP RAM 或 RTC RAM。

从核异常事件通知主核,并调用可自定义的异常处理器

将从核的 printf 消息路由至主核控制台。

支持的ESP-IDF版本及SoC系统

目前 ESP-AMP 支持以下主核-从核配置组合,后续将持续扩展,支持更多 SoC 及配置方案。

SOC

版本

主核

从核

ESP32-C5

v5.5及以后版本

HP核心

LP核心

ESP32-C6

v5.3.1及以后版本

HP核心

LP核心

ESP32-P4

v5.3.1及以后版本

HP核心

HP核心

启明云端推出的WT99P4C5-S1和 WTDKP4C5-S1开发板搭载乐鑫科技ESP32-P4芯片和ESP32-C5芯片,均已适配 ESP-AMP 框架,为开发者提供稳定、高效的多核开发硬件平台。无论是高性能计算还是低功耗协处理,这两款开发板都能轻松胜任。

ac31e4f8-dbf8-11f0-8ce9-92fbcf53809c.png

入门指南

如需快速上手,可按以下步骤构建并运行示例:

搭建 IDF 环境

gitclone--recursive https://github.com/espressif/esp-idf.gitcdesp-idfgit checkout v5.3.1# for ESP32-C6/ESP32-P4 or v5.5 for ESP32-C5./install.sh. export.sh

克隆本仓库

gitclonehttps://github.com/espressif/esp-amp.git


开始构建示例

cdesp-amp/examples/idf.py set-target idf.py buildidf.py flash monitor


从核应用构建技巧

从核应用受资源限制且有特殊工具链需求,需专用构建配置。

已知限制

ESP-AMP 仍在积极开发中,目前存在以下限制:

ESP32-P4 相关限制:

从核类型:目前 ESP32-P4 仅支持 HP 核心作为从核,暂不支持 LP 核心。

缺少 XIP 和 PSRAM 支持:从核暂未启用缓存,因此不支持从 PSRAM 访问数据及从闪存执行片上执行(XIP)。

主核缓存容量受限:ESP32-P4 SoC 内置 768 KB 内部 L2MEM,缓存内存从中分配,用户可通过 sdkconfig 中的 CONFIG_CACHE_L2_CACHE_SIZE 配置 128KB、256KB 或 512KB 缓存。但由于 256KB L2MEM 需预留用于从核固件,启用 ESP-AMP 后,缓存最大容量将降至 256KB。

常见问题(FAQ)

为何不使用 OpenAMP?

OpenAMP 是一款广泛用于多核心 SoC 构建 AMP 应用的开源框架,ESP-AMP 正是受其启发开发。

未直接复用 OpenAMP 而选择独立开发的核心原因是,我们需要一款轻量级的 AMP 框架 ——OpenAMP 的丰富功能不仅增加了使用复杂度,还导致代码体积臃肿,难以移植到资源受限的系统(尤其是 ESP32-C5 和 ESP32-C6 的 LP 核心,默认仅 16KB RTC RAM 作为内部 RAM)。

ESP-AMP 设计初衷即为轻量化,同时提供构建 AMP 应用所需的核心功能。

能否将 RTC RAM 用作共享内存?

不建议将 RTC RAM 用作共享内存,因为 HP 核心与 LP 核心之间无法保证操作的原子性,且 RTC RAM 不支持比较并交换(CAS)操作。

如何为从核开发外设驱动?

对于 HP 外设:ESP-IDF 的 hal 组件包含底层驱动,提供与操作系统无关、接口统一的 API,可在任意环境中操作不同 SoC 的 HP 外设寄存器

对于 LP 外设:ESP-IDF 的 ulp 组件已实现即用型驱动。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ESP
    ESP
    +关注

    关注

    0

    文章

    200

    浏览量

    36817
  • 开发板
    +关注

    关注

    26

    文章

    6518

    浏览量

    121380
  • Amp
    Amp
    +关注

    关注

    0

    文章

    103

    浏览量

    48688
  • 乐鑫科技
    +关注

    关注

    1

    文章

    119

    浏览量

    6078
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    科技新品ESP32-H4亮点速递!

    近期,科技新品发布节奏持续加快。作为科技一级代理商,启明
    的头像 发表于 04-16 18:05 673次阅读
    <b class='flag-5'>乐</b><b class='flag-5'>鑫</b>科技新品<b class='flag-5'>ESP32-H4</b>亮点速递!

    ESP32-P4C5系列】WTDKP4C5-S1开发板上手指南

    1开发板介绍WTDKP4C5-S1开发板是深圳市启明云端有限公司推出的,基于WT01P4C5-S
    的头像 发表于 02-12 18:16 496次阅读
    【<b class='flag-5'>ESP32-P4C5</b>系列】WTDKP<b class='flag-5'>4C5</b>-S1<b class='flag-5'>开发板</b>上手指南

    启明云端WTDKP4C5-S1开发板入选2026“全国大学生嵌入式芯片与系统设计竞赛”推荐开发板名单

    近日,科技正式公布2026年度“全国大学生嵌入式芯片与系统设计竞赛”赛题及推荐开发板名单。启明云端自主研发的WTDKP
    的头像 发表于 02-09 18:19 1349次阅读
    <b class='flag-5'>启明</b><b class='flag-5'>云端</b>WTDKP<b class='flag-5'>4C5</b>-S1<b class='flag-5'>开发板</b>入选<b class='flag-5'>乐</b><b class='flag-5'>鑫</b>2026“全国大学生嵌入式芯片与系统设计竞赛”推荐<b class='flag-5'>开发板</b>名单

    ESP32-P4C5系列】WTDKP4C5-S1开发板规格书

    1开发板介绍WTDKP4C5-S1开发板是深圳市启明云端有限公司推出的,基于WT01P4C5-S
    的头像 发表于 02-02 18:35 673次阅读
    【<b class='flag-5'>ESP32-P4C5</b>系列】WTDKP<b class='flag-5'>4C5</b>-S1<b class='flag-5'>开发板</b>规格书

    不到百元的开发板,能跑AI局端人脸识别?实测科技ESP32-P4C5全功能开发板方案!启明云端代理

    不到百元的开发板能跑AI局端大模型?实测ESP32-P4C5全功能开发板实现局端人脸识别你是否想过用一块不到百元的开发板,独立完成人脸识别任务?本期我们实测的这款
    的头像 发表于 01-07 18:03 1019次阅读
    不到百元的<b class='flag-5'>开发板</b>,能跑AI局端人脸识别?实测<b class='flag-5'>乐</b><b class='flag-5'>鑫</b>科技<b class='flag-5'>ESP32-P4C5</b>全功能<b class='flag-5'>开发板</b>方案!<b class='flag-5'>启明</b><b class='flag-5'>云端</b><b class='flag-5'>乐</b><b class='flag-5'>鑫</b><b class='flag-5'>代理</b>

    科技ESP32-C 系列赋能!启明云端超迷你开发板正式开售!启明云端代理

    启明云端正式推出WT9932CX-TINY系列超迷你物联网开发板!该系列开发板基于科技
    的头像 发表于 01-05 18:04 1517次阅读
    <b class='flag-5'>乐</b><b class='flag-5'>鑫</b>科技<b class='flag-5'>ESP32-C</b> 系列赋能!<b class='flag-5'>启明</b><b class='flag-5'>云端</b>超迷你<b class='flag-5'>开发板</b>正式开售!<b class='flag-5'>启明</b><b class='flag-5'>云端</b><b class='flag-5'>乐</b><b class='flag-5'>鑫</b><b class='flag-5'>代理</b>

    同样是科技ESP32-P4C5开发板,到底应该怎么选?选型指南在这!

    更多都是用科技ESP32-P4ESP32-C5芯片设计的开发板启明
    的头像 发表于 12-15 18:03 2232次阅读
    同样是<b class='flag-5'>乐</b><b class='flag-5'>鑫</b>科技<b class='flag-5'>ESP32-P4C5</b><b class='flag-5'>开发板</b>,到底应该怎么选?选型指南在这!

    ESP32-P4全功能开发板ESP32-P4-TINY开发板该怎么选?看这篇就够了!

    启明云端基于科技ESP32-P4芯片设计了多款开发板,这些
    的头像 发表于 12-09 18:02 1446次阅读
    <b class='flag-5'>ESP32-P4</b>全功能<b class='flag-5'>开发板</b>和<b class='flag-5'>ESP32-P4</b>-TINY<b class='flag-5'>开发板</b>该怎么选?看这篇就够了!

    谁说网关难做?用科技ESP32-P4C5开发板,小白也能搞定专业级方案!启明云端代理

    ESP32-P4C5开发板,那么恭喜你,这回可让你捡到通向智能家居开发者大门的钥匙了!本期我们就教大家用这块ESP32-P4C5全功能开发板
    的头像 发表于 12-04 18:02 941次阅读
    谁说网关难做?用<b class='flag-5'>乐</b><b class='flag-5'>鑫</b>科技<b class='flag-5'>ESP32-P4C5</b><b class='flag-5'>开发板</b>,小白也能搞定专业级方案!<b class='flag-5'>启明</b><b class='flag-5'>云端</b><b class='flag-5'>乐</b><b class='flag-5'>鑫</b><b class='flag-5'>代理</b>

    Wi-Fi 6+蓝牙5.3,这款科技ESP32-C6开发板让智能硬件开发又快又稳!启明云端代理

    妨看看这款科技ESP32-C6开发板?它堪称搭载科技
    的头像 发表于 12-02 18:03 1910次阅读
    Wi-Fi 6+蓝牙5.3,这款<b class='flag-5'>乐</b><b class='flag-5'>鑫</b>科技<b class='flag-5'>ESP32-C</b>6<b class='flag-5'>开发板</b>让智能硬件<b class='flag-5'>开发</b>又快又稳!<b class='flag-5'>启明</b><b class='flag-5'>云端</b><b class='flag-5'>乐</b><b class='flag-5'>鑫</b><b class='flag-5'>代理</b>

    我家鱼缸能感知光!一块科技ESP32-S3开发板就能实现环境光监测!代码开源!启明云端代理

    科技ESP32-S3开发板,我竟在家实现了鱼缸水质监测自由?!代码开源!启明云端
    的头像 发表于 11-26 18:04 642次阅读
    我家鱼缸能感知光!一块<b class='flag-5'>乐</b><b class='flag-5'>鑫</b>科技<b class='flag-5'>ESP32</b>-S3<b class='flag-5'>开发板</b>就能实现环境光监测!代码开源!<b class='flag-5'>启明</b><b class='flag-5'>云端</b><b class='flag-5'>乐</b><b class='flag-5'>鑫</b><b class='flag-5'>代理</b>

    想快速打造共享咖啡机方案?科技ESP32-P4+摄像头方案开源了!烧录演示备好!

    向大家展示了WT99P4C5-S1开发板在共享咖啡机中的应用案例。本期我们就为大家进行共享咖啡机烧录演示。材料准备本次演示开发板采用启明云端
    的头像 发表于 11-13 18:03 1109次阅读
    想快速打造共享咖啡机方案?<b class='flag-5'>乐</b><b class='flag-5'>鑫</b>科技<b class='flag-5'>ESP32-P4</b>+摄像头方案开源了!烧录演示<b class='flag-5'>已</b>备好!

    ESP32-P4 口袋开发板 启明云端 WT9932P4-TINY开发板

    在万物互联的智能时代,您是否还在为寻找一性能强大、接口丰富、应用灵活的嵌入式开发板而烦恼?启明云端全新推出的WT9932P4-TINY
    的头像 发表于 09-11 18:06 2098次阅读
    <b class='flag-5'>ESP32-P4</b> 口袋<b class='flag-5'>开发板</b> <b class='flag-5'>启明</b><b class='flag-5'>云端</b> WT9932<b class='flag-5'>P4</b>-TINY<b class='flag-5'>开发板</b>

    专为 ESP32-P4C5 核心打造的高效开发利器

    SDK+详尽文档,新手秒上手,高手效率翻倍!双芯片设计,释放澎湃性能ESP32-P4C5核心采用科技的ESP32-P4+ESP32-C5
    的头像 发表于 08-11 18:19 1515次阅读
    专为 <b class='flag-5'>ESP32-P4C5</b> 核心<b class='flag-5'>板</b>打造的高效<b class='flag-5'>开发</b>利器

    ESP32-P4 C5开发板烧录小智全流程!速看!

    没错,你没有看错!我们带着WT99P4C5-S1开发板烧录小智全流程走来了!开发板搭载科技ESP32
    的头像 发表于 07-04 18:03 3202次阅读
    <b class='flag-5'>ESP32-P4</b> <b class='flag-5'>C5</b><b class='flag-5'>开发板</b>烧录小智全流程!速看!