-
Notifications
You must be signed in to change notification settings - Fork 52
platform: port RT-Claw to Canaan K230 big core (RT-Thread) #75
Copy link
Copy link
Open
Labels
good first issueGood for newcomersGood for newcomers
Description
概述
将 RT-Claw 移植到嘉楠科技 K230 SoC 大核,基于 RT-Thread。K230 采用双核异构 RISC-V C908 架构(大核 1.6GHz + 小核 800MHz),内置 KPU AI 加速单元,适合作为 RT-Claw 的 AI 边缘节点。
硬件平台
| 项目 | 规格 |
|---|---|
| SoC | Canaan K230 |
| 大核 CPU | RISC-V C908 @ 1.6GHz, RVV 1.0, FPU |
| 小核 CPU | RISC-V C908 @ 800MHz |
| 内存 | 512MB LPDDR3 (CanMV-K230) |
| AI 加速 | KPU (Knowledge Process Unit) |
| 网络 | Ethernet (需真实硬件) |
| 开发板 | CanMV-K230 |
移植计划
Phase 1: QEMU 基础启动(无需硬件)
- 基于 gevico/qemu
k230-board分支 构建 K230 QEMU - 新建
platform/k230/目录,参考platform/zynq-a9/结构 - RT-Thread BSP 适配(基于 K230 SDK 的 RT-Smart 大核 BSP)
- OSAL 层对接(复用
osal/rtthread/) - UART 控制台 + Shell 基础交互
- Meson 交叉编译集成
-
make run-k230-qemu启动验证
Phase 2: 真实硬件网络 + 服务(需 CanMV-K230 开发板)
- Ethernet 驱动集成
- lwIP/RT-Thread 网络协议栈
- HTTPS/TLS 支持(AI API 调用)
- AI 服务 + Shell 完整功能
- Flash 烧录脚本
Phase 3: K230 特色能力(可选)
- KPU AI 加速集成
- 大小核 IPC 通信
- Camera/ISP 接入
QEMU K230 支持
gevico/qemu 仓库有两个 K230 相关分支:
| 分支 | 内容 |
|---|---|
k230-board |
K230 board 初始支持 + T-Head C908 CPU + WDT |
k230-to-apply.next |
待上游合入版本,含文档 |
关键 commits:
target/riscv: add thead-c908 cpu supporthw/riscv: add k230 board initial supporthw/watchdog: add k230 watchdog initial supportdocs/system/riscv: add documentation for k230 machine
参考资料
K230 开发者文档
K230 SDK 源码
- kendryte/k230_sdk — 完整 SDK(含大核 RT-Smart BSP)
- kendryte/k230_linux_sdk — Linux SDK
- kendryte/k230_docs — 官方文档仓库
QEMU K230 支持
- gevico/qemu
k230-board— K230 QEMU 模拟(T-Head C908 + board 初始支持) - gevico/qemu
k230-to-apply.next— 待上游合入版本
RT-Claw 项目
- RT-Claw 仓库
- CLAUDE.md 开发指南
- 编码规范
- 现有平台参考:
platform/zynq-a9/(FreeRTOS)、platform/vexpress-a9/(RT-Thread)
其他参考
备注
- Phase 1 使用 QEMU 完成,不需要真实硬件
- Phase 2 的网络协议栈需要在 CanMV-K230 真实硬件上验证
- K230 大核原生运行 RT-Smart(RT-Thread 的用户态扩展),需评估是否使用 RT-Smart 还是裁剪为标准 RT-Thread
Overview (English)
Port RT-Claw to the Canaan K230 SoC big core, running RT-Thread. The K230 features a dual-core heterogeneous RISC-V C908 architecture (big core 1.6GHz + little core 800MHz) with a built-in KPU AI accelerator, making it an ideal AI edge node for RT-Claw.
Hardware Platform
| Item | Specification |
|---|---|
| SoC | Canaan K230 |
| Big core CPU | RISC-V C908 @ 1.6GHz, RVV 1.0, FPU |
| Little core CPU | RISC-V C908 @ 800MHz |
| Memory | 512MB LPDDR3 (CanMV-K230) |
| AI accelerator | KPU (Knowledge Process Unit) |
| Network | Ethernet (requires real hardware) |
| Dev board | CanMV-K230 |
Porting Plan
Phase 1: QEMU Basic Boot (no hardware required)
- Build K230 QEMU from gevico/qemu
k230-boardbranch - Create
platform/k230/directory, followingplatform/zynq-a9/structure - RT-Thread BSP adaptation (based on K230 SDK's RT-Smart big core BSP)
- OSAL integration (reuse
osal/rtthread/) - UART console + Shell basic interaction
- Meson cross-compilation integration
-
make run-k230-qemuboot verification
Phase 2: Real Hardware Networking + Services (requires CanMV-K230 board)
- Ethernet driver integration
- lwIP / RT-Thread network stack
- HTTPS/TLS support (AI API calls)
- AI service + Shell full functionality
- Flash programming scripts
Phase 3: K230-Specific Capabilities (optional)
- KPU AI acceleration integration
- Big-little core IPC communication
- Camera/ISP integration
QEMU K230 Support
The gevico/qemu repository has two K230-related branches:
| Branch | Contents |
|---|---|
k230-board |
K230 board initial support + T-Head C908 CPU + WDT |
k230-to-apply.next |
Pending upstream version with documentation |
Key commits:
target/riscv: add thead-c908 cpu supporthw/riscv: add k230 board initial supporthw/watchdog: add k230 watchdog initial supportdocs/system/riscv: add documentation for k230 machine
References
K230 Developer Documentation
- K230 Documentation Home
- K230 Full Datasheet
- K230 Product Brief
- K230 SDK User Guide
- K230 Big Core Low-Speed Driver API Reference
- CanMV K230 Tutorial
K230 SDK Source Code
- kendryte/k230_sdk — Full SDK (includes big core RT-Smart BSP)
- kendryte/k230_linux_sdk — Linux SDK
- kendryte/k230_docs — Official documentation repository
QEMU K230 Support
- gevico/qemu
k230-board— K230 QEMU emulation (T-Head C908 + board initial support) - gevico/qemu
k230-to-apply.next— Pending upstream version
RT-Claw Project
- RT-Claw Repository
- CLAUDE.md Development Guide
- Coding Style
- Existing platform references:
platform/zynq-a9/(FreeRTOS),platform/vexpress-a9/(RT-Thread)
Other References
Notes
- Phase 1 uses QEMU only, no real hardware needed
- Phase 2 network stack requires verification on real CanMV-K230 hardware
- K230 big core natively runs RT-Smart (RT-Thread's user-space extension); need to evaluate whether to use RT-Smart or trim down to standard RT-Thread
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
good first issueGood for newcomersGood for newcomers