SCR3 微控制器核心

SCR3 是一款高效、经过硅验证、面向微控制器类应用的 32/64 位 RISC-V 处理器核心。它针对对功耗敏感、面积受限且要求高性能的嵌入式应用进行了优化。

SCR3 支持 RISC-V 标准的 "I" 整数、"M" 整数乘法与除法、"A" 原子操作、"C" 16位压缩指令、"B" 位操作、"P" 打包SIMD(单指令多数据流)和 "K" 标量密码学扩展。SCR3 配备了顺序执行的 5 级流水线、一个用于高效代码执行的分支预测单元、用于高效中断处理的 PLIC 或 IPIC 单元,以及行业标准的 AHB、AXI4、JTAG 和 cJTAG 接口,以实现灵活性和兼容性。

SCR3 内存子系统包括一个 TCM 单元、L1 和 L2 缓存,以及一个支持用户模式和机器模式权限级别的 MPU 单元,允许执行各种实时操作系统。该处理器核心可在最多 4 个核的异构集群中运行,提供硬件级别的内存一致性支持,并简化外部加速器的集成。

* 支持 PLIC 或 IPIC,** L2 缓存仅支持 AXI 接口

SCR3 微控制器核心

应用领域

  • 工业自动化
  • 物联网
  • 存储设备
  • 智能表计
  • 汽车电子
  • 智能家居

SCR3 主要特性

核心
指令集架构 ISA RV32/RV64(IMC[ABPK])。
原子操作指令[A]、位操作指令[B]、打包 SIMD 指令[P]、及标量加密指令[K]一可选配。
流水线 3-5 级
多核支持(SMP) 最多 4 个核,支持缓存一致性。支持通过 CHI 接口集成到基于 L3 缓存的集群系统中。
分支预测单元 (BPU) 静态/动态
内存子系统
紧耦合内存(TCM) 最大 256KB,支持错误保护一奇偶校验/ECC
L1缓存 最大 32KB + 32KB,支持错误保护一奇偶校验/ECC
L2缓存 128KB 到 512KB,支持错误保护一ECC
内存保护单元 (MPU) 可配置,最多支持 32 个区域的 MPU
中断子系统
IPIC 最多 32 个中断线
PLIC 最多 1023 个中断线,最多 256 个优先级
调试子系统
接口 符合 JTAG/cJTAG 标准的接口
断点 最多 4 个硬件断点,支持无限个软件断点
接口
AXI 符合 AXI4 AMBA 标准的主接口
AHB 符合 AHB AMBA 标准的主接口
定时器和计数器
性能监视 最多 32 个性能计数器
嵌入式 64 位 RTC 定时器 支持机器模式定时器中断

开发工具

Syntacore 开发工具包 (针对 SCR3 优化)

SC-DT 软件包是一个开箱即用的软件开发套件,包含预构建和预配置的工具,可简化针对 SCR3 核心的软件开发。使用 SC-DT,您可以利用预构建的工具和配置,减少上手和运行 SCR3 所需的时间和精力。SC-DT 支持 Windows 和 Linux 操作系统,并包括:

  • Eclipse IDE 和 Visual Studio Code 插件
  • 编译器(GCC、clang/LLVM,包含微架构优化)
  • 调试器(GDB、OCD)
  • 模拟器(QEMU)
  • FreeRTOS
  • HAL(板级支持包)
  • 应用示例
  • 基准测试
  • 文档

Syntacore 还支持并维护Zephyr操作系统,该操作系统不属于 SC-DT 软件包的一部分,可单独下载。