Skip to content

sterling-teng/mynotebook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RVCK Project

RVCK Project Banner
同源RISC-V,驱动新生态 —— 为Th1520、SG2042、Spacemit K1...定制的Linux内核项目

项目概述

RVCK(RISC-V Custom Kernel)是基于Linux内核6.6.y的RISC-V架构同源项目,专注于为RISC-V SoC及开发板提供深度优化的内核支持。目前已完成Th1520、SG2042、Spacemit K1三款SoC及其开发板的同源适配,旨在弥合社区内核与国产硬件的适配鸿沟,加速RISC-V生态落地。

目录

Th1520 & 开发板

Th1520 SoC与开发板
左:Th1520 SoC架构图 | 右:配套开发板实物图

1. SoC信息

项目 详情
架构 RISC-V 64位,4核U74 + 2核U54,主频最高1.5GHz
制程 12nm
核心外设 GPU(Mali-G52)、NPU(1TOPS)、双千兆以太网、PCIe 3.0、USB 3.0
特色 支持硬件虚拟化、低功耗设计,适合边缘计算与嵌入式场景

2. 开发板信息

开发板型号 主要参数
Th1520-DK 内存:4GB LPDDR4
存储:eMMC 64GB + microSD卡槽
接口:HDMI 2.0、2x USB 3.0、PCIe插槽、40Pin GPIO
电源:12V/2A
适用场景 工业控制、智能家居网关、轻量服务器测试

3. 驱动支持计划与进度

驱动类型 计划合入内容 支持程度 进度 预计完成时间
基础外设 UART、GPIO、I2C、SPI ✅ 已支持(稳定) ██████████ 100% 2024Q1
存储 eMMC、SD卡、NVMe(PCIe) 🟠 已支持(测试中) █████████ 90% 2024Q3
网络 千兆以太网(GMAC) ✅ 已支持(稳定) ██████████ 100% 2024Q2
图形 Mali-G52 开源驱动(Panfrost) 🔵 开发中 ██████ 60% 2025Q1
人工智能 NPU 推理框架适配(TensorFlow Lite) ⚪ 计划中 █ 10% 2025Q2

4. 与Mainline差异及Upstream计划

维度 RVCK当前特性 Mainline现状 Upstream计划
硬件支持 完整适配Th1520专属外设(如NPU) ❌ 仅支持基础架构,无专属外设驱动 2025Q1提交NPU驱动补丁至社区review
性能优化 针对Th1520调度算法优化,降低5% latency 🟠 通用调度,未针对该SoC优化 2024Q4提交调度优化补丁
电源管理 支持深度休眠(待机功耗<1W) 🟠 仅基础电源管理 2025Q2合并电源管理补丁至mainline 6.10

5. 注意事项

  • 编译需使用RISC-V GCC 12.2及以上版本,推荐工具链:riscv64-linux-gnu-gcc
  • 当前NPU驱动依赖厂商闭源固件,需单独下载(见docs/firmware/th1520_npu_fw.tar.gz
  • HDMI输出在4K分辨率下可能存在偶发闪烁,建议先使用1080P测试

SG2042 & 开发板

SG2042 SoC与开发板
左:SG2042 SoC框图 | 右:开发板扩展接口图

1. SoC信息

项目 详情
架构 RISC-V 64位,16核玄铁C910(4发射超标量),主频2.0GHz
制程 7nm
核心外设 4x 千兆以太网、PCIe 4.0 x16、SATA 3.0、USB 3.1、硬件加密引擎
特色 高性能多核心设计,支持NUMA架构,面向服务器与高性能计算

2. 开发板信息

开发板型号 主要参数
SG2042-Server 内存:8x DDR4 DIMM插槽(最大256GB)
存储:4x SATA接口 + M.2 NVMe插槽
扩展:PCIe 4.0 x16插槽 x2、OCP 3.0网卡槽
电源:500W 12V直流
适用场景 边缘服务器、分布式存储节点、RISC-V生态性能测试平台

3. 驱动支持计划与进度

驱动类型 计划合入内容 支持程度 进度 预计完成时间
多核心管理 NUMA调度、核心热插拔 ✅ 已支持(稳定) ██████████ 100% 2024Q2
高速接口 PCIe 4.0、SATA 3.0 🟠 已支持(测试中) ██████████ 95% 2024Q3
网络 4x 千兆以太网(多队列) ✅ 已支持(稳定) ██████████ 100% 2024Q1
存储 NVMe RAID、SATA阵列 🔵 开发中 ███████ 70% 2024Q4
安全 硬件加密引擎(国密算法) ⚪ 计划中 ████ 40% 2025Q1

4. 与Mainline差异及Upstream计划

维度 RVCK当前特性 Mainline现状 Upstream计划
多核优化 针对C910核心的缓存一致性优化 ❌ 通用多核调度,性能损失15%+ 2024Q4提交缓存优化补丁至社区
PCIe支持 完整支持PCIe 4.0 x16拆分(x8+x8) 🟠 仅支持PCIe 3.0,无拆分功能 2025Q1合并PCIe 4.0驱动至mainline 6.11
电源管理 支持核心动态调频(DVFS)范围1.2-2.0GHz ❌ 固定主频运行 2025Q2提交DVFS补丁

5. 注意事项

  • 开发板功耗较高(满载约120W),需使用配套500W电源,避免供电不足导致宕机
  • NUMA架构下需通过numactl工具绑定进程核心,否则可能出现性能波动
  • 当前PCIe 4.0与部分NVMe硬盘存在兼容性问题,推荐测试列表见docs/compatibility/sg2042_nvme_list.md

Spacemit K1 & 开发板

Spacemit K1 SoC与开发板
左:Spacemit K1 SoC封装图 | 右:开发板最小系统图

1. SoC信息

项目 详情
架构 RISC-V 64位,2核E24(实时核)+ 2核U74(应用核),主频1.2GHz
制程 22nm
核心外设 低功耗蓝牙(BLE 5.0)、WiFi 6、LCD控制器、ADC/DAC、实时时钟(RTC)
特色 混合实时核设计,待机功耗<50mW,适合物联网与穿戴设备

2. 开发板信息

开发板型号 主要参数
K1-IoT-DK 内存:512MB LPDDR3
存储:16GB eMMC
接口:BLE/WiFi天线、LCD接口(40pin)、2x UART、I2C传感器接口
电源:5V/1A(支持电池供电)
适用场景 物联网网关、智能穿戴设备原型、低功耗嵌入式产品开发

3. 驱动支持计划与进度

驱动类型 计划合入内容 支持程度 进度 预计完成时间
低功耗管理 深度睡眠模式、RTC唤醒 ✅ 已支持(稳定) ██████████ 100% 2024Q2
无线连接 WiFi 6(802.11ax)、BLE 5.0 🔵 开发中 ████████ 80% 2024Q4
显示 LCD控制器(MIPI-DSI) 🟠 已支持(测试中) █████████ 90% 2024Q3
传感器接口 ADC/DAC、I2C传感器适配 ⚪ 计划中 ████ 40% 2025Q1

4. 与Mainline差异及Upstream计划

维度 RVCK当前特性 Mainline现状 Upstream计划
实时核支持 支持E24核RT_PREEMPT实时调度(延迟<10us) ❌ 无实时核调度支持 2025Q1提交实时核补丁至社区
低功耗优化 自定义电源管理策略(待机功耗50mW) 🟠 标准功耗管理(待机>200mW) 2024Q4提交低功耗补丁至mainline 6.10
无线驱动 适配Spacemit自研WiFi/BLE芯片 ❌ 无对应驱动 2025Q2开源驱动并提交至社区

5. 注意事项

  • 电池供电时需禁用部分高功耗外设(如LCD背光),否则续航可能<4小时
  • 实时核与应用核通信需使用rpmsg机制,示例代码见samples/spacemit_k1/rpmsg_demo.c
  • WiFi 6当前仅支持2.4GHz频段,5GHz支持将在2024Q4驱动更新中添加

项目贡献与联系

RISC-V Logo
RVCK Project —— 共建RISC-V Linux生态未来

状态标识说明

  • 支持程度
    • ✅ 已支持(稳定):经过长期测试,功能稳定可用
    • 🟠 已支持(测试中):基本功能实现,需进一步验证兼容性
    • 🔵 开发中:核心功能开发中,部分接口可调试
    • ⚪ 计划中:待排期开发,需求已明确
  • Mainline现状
    • ❌ 功能缺失/存在明显缺陷
    • 🟠 功能基础但未优化
    • ✅ 功能完善(仅标注于完全适配场景)

About

This is my notebook.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages