SCR4 微控制器核心
SCR4 是一款 32/64 位 RISC-V 低功耗、高性能、区域优化的处理器核心,具备浮点运算功能。
SCR4 核心完全支持 RISC-V 标准的“I”整数、“M”整数乘除、“A”原子、“C”16 位压缩、单浮点和双浮点(“F”和“D”扩展)。SCR4 包括一个 5 级顺序流水线、一个浮点单元、一个用于高效代码执行的分支预测单元、独立的 L1 指令和数据高速缓存、用于高效中断处理的 PLIC 或 IPIC 单元,以及符合行业标准的 AHB、AXI4、JTAG 和 cJTAG 接口,从而提高了灵活性和兼容性。
SCR4 的内存子系统包括 TCM 单元、L1 和 L2 缓存、MPU 单元,并支持各种实时操作系统的无缝运行。该处理器核心能在异构多核(一个集群中最多 4 个核心)环境下运行,为内存一致性和简化外部加速器集成提供硬件级支持。
应用场景
- 工业自动化
- 汽车
- 物联网
- 智能传感器
- 智能家居
- 移动设备
SCR4 主要特性
核心 | |
---|---|
ISA | RV32/64IM[A][F]DC;原子指令 [A]——可选项,单精度浮点指令 [F]——可选项 |
流水线 | 3-5 个阶段 |
浮点运算单元(FPU) | 单/双精度,IEEE 754-2008 标准 |
多核支持(SMP) | 最多 4 个带高速缓存一致性的核心 |
分支预测单元 (BPU) | 静态/动态 |
内存子系统 | |
紧密耦合内存(TCM) | 最大 256KB,错误保护——奇偶校验/ECC |
L1 高速缓存 | 高达 32KB + 32KB,错误保护——奇偶校验/ECC |
二级缓存 | 128KB 到 512KB,错误保护——ECC |
内存保护单元(MPU) | 可配置,多达 32 个区域 MPU |
中断子系统 | |
IPIC | 最多 32 条中断线路 |
PLIC | 多达 1023 条中断线路,多达 256 个优先级别 |
调试子系统 | |
接口 | 符合 JTAG/cJTAG 标准的接口 |
断点 | 最多支持 8 个硬件断点,软件断点无限制 |
接口 | |
AXI | 主 AXI4 AMBA 标准接口 |
AHB | 主 AHB AMBA 标准接口 |
计时器和计数器 | |
性能监控 | 最多 32 个性能计数器 |
嵌入式 64 位 RTC 定时器 | 支持机器模式定时器中断 |
开发工具
Syntacore 开发工具包(SCR4 优化版)
SC-DT 软件包是一个即用型软件开发工具包,包含预构建和预配置工具,可简化 SCR4 核心的软件开发。通过 SC-DT,您可以利用预置工具和配置,减少启动和运行 SCR4 所需的时间和精力。SC-DT 支持 Windows 和 Linux 操作系统,包括:
- Eclipse IDE 和 Visual Studio Code 插件
- 带有优化库的编译器(GCC、LLVM)
- 调试器(GDB、OCD)
- 模拟器(QEMU)
- FreeRTOS
- BSP 和 HAL
- 应用示例
- 基准测试
- 文档
Syntacore 还支持和维护Zephyr操作系统,该系统不属于 SC-DT 软件包,可单独下载。