mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2026-03-23 14:33:05 +08:00
fix[bsp][xuantie]: Correct some inaccurate information about XuanTie processors.
This commit is contained in:
@@ -90,7 +90,7 @@ E901+ 处理器体系结构的主要特点如下:
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv32 -machine smartl -nographic -kernel rtthread.elf -cpu e901plusbm-cp
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
@@ -74,7 +74,7 @@ E902 处理器体系结构的主要特点如下:
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv32 -machine smartl -nographic -kernel rtthread.elf -cpu e902
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
@@ -5,8 +5,7 @@
|
||||
### 1. 内核
|
||||
|
||||
[E906](https://www.xrvm.cn/community/download?id=4222755171580579840) 是一款基于 RISC-V 指令集的高能效嵌入式处理器,是玄铁 RISC-V MCU 产品线中的最高性能
|
||||
处理器。 E906 的设计目标是,使用最低的面积和功耗成本,取得相对较高的性能指标。 E906 主要面向语
|
||||
音、高端 MCU、轻量级 AI、导航、 WiFi 等应用领域。
|
||||
处理器。 E906 的设计目标是,使用最低的面积和功耗成本,取得相对较高的性能指标。 E906 主要面向语音、高端 MCU、轻量级 AI、导航、 WiFi 等应用领域。
|
||||
|
||||
### 2.特点
|
||||
|
||||
|
||||
@@ -88,7 +88,7 @@ E907 处理器体系结构的主要特点如下:
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv32 -machine smartl -nographic -kernel rtthread.elf -cpu e907fdp
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
@@ -68,7 +68,7 @@ C906 是基于 RISC-V 指令架构的 64 位超高能效处理器,主要面向
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv64 -machine xiaohui -nographic -kernel rtthread.elf -cpu c906fdv
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
@@ -10,20 +10,34 @@ C907 是一款基于 RISC-V 指令集架构的入门级 AP 处理器,主要面
|
||||
### 2.特点
|
||||
|
||||
• 支持 RV32 与 RV64 架构;
|
||||
|
||||
• 支持 RV64GCB + RV32GCB 指令集,兼容 RVA22;
|
||||
|
||||
• 支持 XuanTie Turbo 扩展指令集;
|
||||
|
||||
• 可选配浮点指令扩展,支持 FP16/BF16/FP32 运算格式;
|
||||
|
||||
• 可选配矢量指令扩展,支持 Vector Extention 1.0 版本,支持 INT8/INT16/INT32/INT64 以及
|
||||
FP16/BF16/FP32 运算格式,使用 chaining 的优化运算带宽技术;
|
||||
|
||||
• 可选配矩阵指令扩展,支持 INT4/INT8/FP16/BF16;
|
||||
• 支持多核 SMP,可支持 1~4 核心可配置
|
||||
|
||||
• 支持多核 SMP,可支持 1~4 核心可配置;
|
||||
|
||||
• 按序部分双发 9 级流水线,支持乱序回写;
|
||||
|
||||
• 混合分支预测机制,改进版的 G-Shared 分支预测器和 L0 BTB、 RAS;
|
||||
|
||||
• 支持指令融合技术;
|
||||
|
||||
• 支持指令和数据的 prefetch;
|
||||
|
||||
• 指令 cache,四路组相连结构, 64B 缓存行, 8KB-64KB 可配置, VIPT;
|
||||
|
||||
• 数据 cache,四路组相连结构, 64B 缓存行, 8KB-64KB 可配置, VIPT 模拟 PIPT;
|
||||
|
||||
• 二级 Cache, 64B 缓存行, 128KB~4MB 可配置;
|
||||
|
||||
• 支持 L1、 L2 两级 TLB, Sv39/Sv48 可配置,支持 Sv32;
|
||||
|
||||
### 3.BSP支持情况
|
||||
@@ -64,7 +78,7 @@ FP16/BF16/FP32 运算格式,使用 chaining 的优化运算带宽技术;
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv64 -machine xiaohui -nographic -kernel rtthread.elf -cpu c907fdvm
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
@@ -4,37 +4,110 @@
|
||||
|
||||
### 1. 内核
|
||||
|
||||
C907 是一款基于 RISC-V 指令集架构的入门级 AP 处理器,主要面向家庭视觉、人机交互、网络通信
|
||||
等领域,例如可视门铃、智能门锁、触屏智能家电等产品。
|
||||
C908MP 是基于RISC-V 指令架构的64 位高性能多核心处理器,主要面向IoT 市场日益增强的图像、视觉
|
||||
处理领域,例如智慧视觉、车载视觉、行车记录仪、智能交互等。其他应用领域还包括扫地机器人、无人
|
||||
机、自动化驾驶、增强现实、医疗图像、机器人工业视觉、移动互联网等产品。
|
||||
C908MP 采用同构多核架构,支持多cluster,每个cluster 支持1~4 个核心。每个C908 核心采用自主设
|
||||
计的微体系结构,并重点针对性能进行优化,采用按序双发射、多模式分支预测和多通道数据预取等高性
|
||||
能技术。此外,C908 核心支持实时检测并关断内部空闲功能模块,降低处理器动态功耗。
|
||||
|
||||
### 2.特点
|
||||
#### 2.1. C908MP 处理器体系结构的主要特点
|
||||
• 同构多核架构,支持多cluster,每个cluster 支持1~4 个C908 核心;
|
||||
|
||||
• 支持1 个AXI4.0 或ACE Master 接口,128 比特的总线宽度;
|
||||
|
||||
• 支持1 个可配置的AXI4.0 低延时外设Master 接口(Low Latency Port, LLP),128 比特的总线宽度;
|
||||
|
||||
• 支持1 个可配的AXI4.0 设备一致性接口(Device Coherence Port, DCP),128 比特的总线宽度;
|
||||
|
||||
• 一级指令/数据缓存分别支持16KB/32KB/64KB,缓存行SIZE 为64B;可配置ECC/奇偶校验机制;
|
||||
|
||||
• 二级高缓128KB/256KB/512KB/1MB/1.5MB/2MB/3MB/4MB,缓存行SIZE 为64B;可配置ECC 校验机制;
|
||||
|
||||
• 一级缓存支持MESI 一致性协议,二级缓存支持MOESI 一致性协议;
|
||||
|
||||
• 支持私有中断控制器CLINT 和公有中断控制器PLIC;支持多cluster 中断分发;
|
||||
|
||||
• 支持RISC-V 性能计数器和计时器;
|
||||
|
||||
• 支持Sv39 和Sv48 内存管理,支持SVNAPOT 和SVPBMT 标准扩展;
|
||||
|
||||
• 支持8/16/32/64 表项PMP,支持ePMP;
|
||||
|
||||
• 支持XuanTie TEE 扩展;
|
||||
|
||||
• 支持各个核心独立下电以及cluster 下电;
|
||||
|
||||
• 支持RISC-V 调试框架,支持多核多cluster 调试;
|
||||
|
||||
#### 2.2. C908 核心的主要特点
|
||||
• RISC-V 64GCB[V] 指令架构;
|
||||
|
||||
• User Mode 支持RV64 和RV32 指令集;
|
||||
|
||||
• 支持小端模式;
|
||||
|
||||
• 9 级流水架构;
|
||||
|
||||
• 按序双发射,按序取指、发射、执行和退休;
|
||||
|
||||
• 两级TLB 内存管理单元,实现虚实地址转换与内存管理;
|
||||
|
||||
• 指令高缓和数据高缓大小可配置,支持16KB/32KB/64KB,缓存行为64B;
|
||||
|
||||
• 指令高缓可配置奇偶校验,数据高缓可配置ECC 或奇偶校验;
|
||||
|
||||
• 指令预取功能,硬件自动检测并动态启动;
|
||||
|
||||
• 指令高缓路预测的低功耗访问技术;
|
||||
|
||||
• 支持2KB/4KB/8KB 的多算法分支预测器;
|
||||
|
||||
• 支持256 表项的分支目标缓存器(BTB);
|
||||
|
||||
• 支持8 层的硬件返回地址堆栈;
|
||||
|
||||
• 支持256 表项的间接跳转分支预测器;
|
||||
|
||||
• 支持循环终止预测;
|
||||
|
||||
• 支持 RV32 与 RV64 架构;
|
||||
• 支持 RV64GCB + RV32GCB 指令集,兼容 RVA22;
|
||||
• 支持 XuanTie Turbo 扩展指令集;
|
||||
• 可选配浮点指令扩展,支持 FP16/BF16/FP32 运算格式;
|
||||
• 可选配矢量指令扩展,支持 Vector Extention 1.0 版本,支持 INT8/INT16/INT32/INT64 以及
|
||||
FP16/BF16/FP32 运算格式,使用 chaining 的优化运算带宽技术;
|
||||
• 可选配矩阵指令扩展,支持 INT4/INT8/FP16/BF16;
|
||||
• 支持多核 SMP,可支持 1~4 核心可配置
|
||||
• 按序部分双发 9 级流水线,支持乱序回写;
|
||||
• 混合分支预测机制,改进版的 G-Shared 分支预测器和 L0 BTB、 RAS;
|
||||
• 支持指令融合技术;
|
||||
• 支持指令和数据的 prefetch;
|
||||
• 指令 cache,四路组相连结构, 64B 缓存行, 8KB-64KB 可配置, VIPT;
|
||||
• 数据 cache,四路组相连结构, 64B 缓存行, 8KB-64KB 可配置, VIPT 模拟 PIPT;
|
||||
• 二级 Cache, 64B 缓存行, 128KB~4MB 可配置;
|
||||
• 支持 L1、 L2 两级 TLB, Sv39/Sv48 可配置,支持 Sv32;
|
||||
|
||||
• 双发射按序执行Load、Store 指令;
|
||||
|
||||
• 读、写内存分别支持8 路、12 路并发的总线访问;
|
||||
|
||||
• 支持写合并;
|
||||
|
||||
• 支持8 通道数据预取,支持固定stride 和规律性不定stride 数据预取;
|
||||
|
||||
#### 2.3. 矢量计算单元的主要特点
|
||||
• 遵循RISC-V V 矢量扩展;
|
||||
|
||||
• 在4 核、2GHz 最大配置下,算力可达512 Gops (@int8)/ 256 GFlops (@FP16);
|
||||
|
||||
• 矢量执行单元支持FP16/BFP16/FP32 浮点和INT8/INT16/INT32/INT64 整型的矢量运算;
|
||||
|
||||
• 支持128/256 可配置的矢量寄存器位宽VLEN;
|
||||
|
||||
• 支持矢量执行单元运算和数据存储流水线数量(1 或2)可配;
|
||||
|
||||
• 支持128 位或256 位矢量数据存储访问位宽;
|
||||
|
||||
• 支持segment load、store 指令;
|
||||
|
||||
• 性能优化的非对齐内存访问;
|
||||
|
||||
### 3.BSP支持情况
|
||||
|
||||
- 当前BSP支持下述内核:
|
||||
|
||||
```asciiarmor
|
||||
c907 c907fd c907fd-rv32 c907fdv c907fdvm c907fdvm-rv32 c907fdv-rv32 c907-rv32
|
||||
c908i c908 c908v
|
||||
```
|
||||
|
||||
- 当前BSP默认设置的内核是c907fd,该架构支持[F] [D]扩展,可以通过menuconfig工具使能[F]扩展或者[F] [D] 扩展。
|
||||
- 当前BSP默认设置的内核是c908v,该架构支持[F] [D] [V]扩展,可以通过menuconfig工具使能[F]扩展或者[F] [D] [V] 扩展。
|
||||
|
||||
- 当使用其他内核架构时需要修改,rtconfig.py文件中的`MCPU`字段。
|
||||
|
||||
@@ -64,7 +137,7 @@ FP16/BF16/FP32 运算格式,使用 chaining 的优化运算带宽技术;
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv64 -machine xiaohui -nographic -kernel rtthread.elf -cpu c908v
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
@@ -61,10 +61,10 @@ C910/C920MP 是基于 RISC-V 指令架构的 64 位高性能多核心处理器
|
||||
### 3.当前BSP支持下述内核:
|
||||
|
||||
```asciiarmor
|
||||
C910V2 C910V3 C920V2 C920V3
|
||||
C910v2 C910v3 C920v2 C920v3
|
||||
```
|
||||
|
||||
- 当前BSP默认设置的内核是c910V2,该架构支持[F] [D]扩展,可以通过menuconfig工具使能[F]扩展或者[F] [D] 扩展。
|
||||
- 当前BSP默认设置的内核是c910v3,该架构支持[F] [D]扩展,可以通过menuconfig工具使能[F]扩展或者[F] [D] 扩展。
|
||||
|
||||
- 当使用其他内核架构时需要修改,rtconfig.py文件中的`MCPU`字段。
|
||||
|
||||
@@ -94,7 +94,7 @@ C910V2 C910V3 C920V2 C920V3
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv64 -machine xiaohui -nographic -kernel rtthread.elf -cpu C920v3
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
@@ -58,7 +58,7 @@ R908 采用同构多核架构,支持多 cluster,每个 cluster 支持 1~4
|
||||
r908 r908-cp r908fd r908fd-cp r908fdv r908fdv-cp
|
||||
```
|
||||
|
||||
- 当前BSP默认设置的内核是r908,该架构支持[F] [D]扩展,可以通过menuconfig工具使能[F]扩展或者[F] [D] 扩展。
|
||||
- 当前BSP默认设置的内核是r908,该架构支持[F] [D] [V]扩展,可以通过menuconfig工具使能[F]扩展或者[F] [D] [V]扩展。
|
||||
|
||||
- 当使用其他内核架构时需要修改,rtconfig.py文件中的`MCPU`字段。
|
||||
|
||||
@@ -88,7 +88,7 @@ R908 采用同构多核架构,支持多 cluster,每个 cluster 支持 1~4
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv64 -machine xiaohui -nographic -kernel rtthread.elf -cpu r908fdv-cp
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
@@ -98,7 +98,7 @@ R910 支持灵活可配置的指令紧耦合内存(ITCM)和数据紧耦合
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv64 -machine xiaohui -nographic -kernel rtthread.elf -cpu r910
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
生成可执行文件,可以直接在命令行启动qemu或者配置vscode脚本借助vscode强大的插件进行图形化调试,qemu的相关命令可以查看玄铁qemu的[用户手册](https://www.xrvm.cn/community/download?id=4397435198627713024),下述是启动qemu的命令,在powershell或命令行可直接执行下述命令,注意qemu需要导出至环境变量或者使用绝对路径。
|
||||
|
||||
```shell
|
||||
qemu-system-riscv64 -machine smartl -nographic -kernel rtthread.elf -cpu e906
|
||||
qemu-system-riscv64 -machine xiaohui -nographic -kernel rtthread.elf -cpu r920
|
||||
```
|
||||
|
||||
下述是使用vscode调试的展示。
|
||||
|
||||
Reference in New Issue
Block a user