跳到正文
cccskills
免费在 GitHub 公开

multicore

Developing for multicore systems in Zephyr RTOS. Covers Symmetric Multiprocessing (SMP), Asymmetric Multiprocessing (AMP) with OpenAMP/RPMsg, inter-processor communication (IPC) patterns, and Linkable Extensions (LLEXT). Trigger when designing for SoCs with multiple homogeneous or heterogeneous cores.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(9)

  • SKILL.md3.6 KB
  • assets/rpmsg_channel_contract.md630 B
  • references/ipc_patterns.md2.4 KB
  • references/llext_basics.md2.2 KB
  • references/multidomain_sysbuild.md2.4 KB
  • references/openamp_rpmsg.md2.0 KB
  • references/smp_configuration.md1.8 KB
  • scripts/smp_config_check.py1.8 KB
  • skill-meta.yaml636 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Zephyr Multicore Development

Leverage multiple CPU cores to increase performance, isolate critical tasks, and integrate heterogeneous systems.

Core Workflows

1. SMP Configuration

Run the Zephyr kernel and your threads across multiple identical cores.

2. OpenAMP & RPMsg

Communicate between heterogeneous cores (e.g., A-series and M-series) using standard protocols.

  • Reference: openamp_rpmsg.md
  • Key Tools: CONFIG_OPENAMP, message vrings, Resource Tables.

3. IPC Patterns

Implement efficient data exchange between cores using high-level services or low-level mailboxes.

  • Reference: ipc_patterns.md
  • Key Tools: IPC Service, IPM drivers, Shared Memory.

4. LLEXT (Linkable Extensions)

Dynamically load and run binary modules at runtime without a full firmware update.

  • Reference: llext_basics.md
  • Key Tools: CONFIG_LLEXT, dynamic ELF loading, Symbol Export.

5. Multi-domain SoCs (nRF5340)

Build separate application-core and network-core images in one Sysbuild invocation.

  • Reference: multidomain_sysbuild.md
  • Key Tools: west build --sysbuild, CONFIG_NRF53_BOOT_NETWORK_CORE_ON_STARTUP, domains.

Quick Start (SMP prj.conf)

# Enable SMP for dual-core SoCs
CONFIG_SMP=y
CONFIG_MP_NUM_CPUS=2
// Using spinlocks for cross-core sync
struct k_spinlock lock;
k_spinlock_key_t key = k_spin_lock(&lock);
// ... critical section ...
k_spin_unlock(&lock, key);

Professional Patterns (Architecture Design)

  • Linux Bridging: Use OpenAMP/RPMsg to bridge Zephyr real-time logic with a Linux application controller.
  • Core Isolation: Pin high-frequency interrupts (e.g., motor control) to Core 1 and keep the main application on Core 0 to prevent jitter.
  • Zero-Copy Transfers: Use shared memory regions for large data (video/audio) and only pass meta-data via IPC channels to minimize overhead.

Automation Tools

Examples & Templates

Validation Checklist

  • SMP builds run with expected CPU count and no cross-core race regressions.
  • OpenAMP/RPMsg endpoint exchange passes bidirectional message tests.
  • IPC latency and throughput remain within target budget under load.
  • LLEXT module load/unload path resolves symbols and handles failure cases safely.
  • Multi-domain Sysbuild builds both core images and west flash programs each domain.

Resources

  • References:
    • smp_configuration.md: Configuration and spinlocks.
    • openamp_rpmsg.md: AMP and Linux interoperability.
    • ipc_patterns.md: Mailboxes and high-level IPC services.
    • llext_basics.md: Dynamic code loading.
  • Scripts:
    • smp_config_check.py: SMP config consistency checker.
  • Assets:
    • rpmsg_channel_contract.md: RPMsg interface contract template.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Custom board bringup for Zephyr RTOS using Hardware Model v2 (HWMv2). Covers directory structure, board.yml metadata, core configuration files (Kconfig, defconfig, CMake), and revision management. Trigger when creating new board definitions or porting Zephyr to custom hardware.

中文简介正在准备中。当前显示原文说明。

beriberikix/zephyr-agent-skills712026年5月19日 更新

Build system management for Zephyr RTOS. Covers West workspace initialization, manifest management, Sysbuild multi-image builds, Kconfig symbols, and CMake integration. Trigger when setting up workspaces, configuring builds, or troubleshooting build-time errors.

中文简介正在准备中。当前显示原文说明。

beriberikix/zephyr-agent-skills712026年5月19日 更新

Bluetooth Low Energy (BLE) integration for Zephyr RTOS. Covers GATT Services/Characteristics, GAP advertising, connection parameters, power optimization strategies, and the professional Send-When-Idle design pattern. Trigger when adding BLE connectivity, optimizing battery life for wireless devices, or implementing custom GATT profiles.

中文简介正在准备中。当前显示原文说明。

beriberikix/zephyr-agent-skills712026年5月19日 更新

IP networking fundamentals for Zephyr RTOS. Covers IoT protocol selection (LwM2M, CoAP, MQTT), IP stack configuration and trimming (IPv4/IPv6, UDP/TCP), and professional SDK integration as Zephyr modules using West manifests. Trigger when building cloud-connected applications, optimizing network memory usage, or integrating external cloud SDKs.

中文简介正在准备中。当前显示原文说明。

beriberikix/zephyr-agent-skills712026年5月19日 更新

USB and CAN connectivity for Zephyr RTOS. Covers USB device stack configuration (CDC ACM, HID, MSC), CAN controller integration, and professional USB-to-CAN adapter patterns including buffering and protocol packetization. Trigger when adding USB interfaces, implementing CAN bus communication, or building hardware diagnostic tools.

中文简介正在准备中。当前显示原文说明。

beriberikix/zephyr-agent-skills712026年5月19日 更新

Devicetree management for Zephyr RTOS. Covers syntax, bindings, overlays, Hardware Model v2 (HWMv2), and advanced node/property deletion patterns. Trigger when defining hardware topology, creating overlays, or mapping pins and peripherals.

中文简介正在准备中。当前显示原文说明。

beriberikix/zephyr-agent-skills712026年5月19日 更新

查看 beriberikix 的全部技能

报告此技能的问题