SCR5 应用核心

SCR5 是一款高效的、经过硅验证的入门级 Linux 32/64 位 RISC-V 处理器核心。

SCR5 核心完全支持 RISC-V 标准的"I"整数、"M"整数乘除、"A"原子、"C"16位压缩、"F"单精度浮点和"D"双精度浮点扩展。SCR5 包括一个 9 级顺序流水线、一个浮点单元、一个用于高效代码执行的分支预测单元、用于高效中断处理的 PLIC 或 IPIC 单元,以及符合行业标准的 AXI4、JTAG 和 cJTAG 接口,从而提高了灵活性和兼容性。

SCR5 的内存子系统包括 TCM 单元、L1 和 L2缓存、MMU 单元,并支持实时和 Linux 操作系统的执行。该处理器核心能在异构多核(一个集群中最多 4 个核心)环境下运行,为内存一致性和简化外部加速器的集成提供硬件级支持。

SCR5 应用核心

应用场景

  • 物联网
  • 工业自动化
  • 汽车
  • 智能家居
  • 可穿戴设备
  • 传感器集群

SCR5 主要特性

核心
ISA RV32/RV64(IM[A][F]DC),原子指令[A],单精度浮点指令[F]——可选
流水线 7-9 个阶段
浮点运算单元(FPU) 单/双精度,IEEE 754-2008 标准
多核支持(SMP) 最多 4 个带高速缓存一致性的核心
分支预测单元 (BPU) 静态/动态
内存子系统
紧密耦合内存(TCM) 最大 256KB,错误保护——奇偶校验/ECC
L1 高速缓存 高达 64KB + 64KB,错误保护——奇偶校验/ECC
二级缓存 128KB 到 512KB,错误保护——ECC
内存管理单元(MMU) 最多 64 个 TLB 指令项,最多 64 个 TLB 数据项
内存保护单元(MPU) 可配置,多达 32 个区域 MPU
中断子系统
IPIC 最多 32 条中断线路
PLIC 多达 1023 条中断线路,多达 256 个优先级别
调试子系统
接口 符合 JTAG/cJTAG 标准的接口
断点 最多支持 8 个硬件断点,软件断点无限制
接口
AXI 主 AXI4 AMBA 标准接口
AHB 主 AHB AMBA 标准接口
外部端口 TCM AXI 从端口、二级缓存一致性端口
计时器和计数器
性能监控 最多 32 个性能计数器
嵌入式 64 位 RTC 定时器 支持机器模式定时器中断

开发工具

Syntacore 开发工具包(SCR5 优化版)

SC-DT 软件包是一个即用型软件开发工具包,包含预构建和预配置工具,可简化 SCR5 核心的软件开发。通过 SC-DT,您可以利用预置工具和配置,减少使用 SCR5 启动和运行所需的时间和精力。SC-DT 支持 Windows、Linux 和 RISC-V Linux 操作系统,包括:

  • Eclipse IDE 和 Visual Studio Code 插件
  • 带有优化库的编译器(GCC、LLVM)
  • 调试器(带 gdbserver 的 GDB、OCD)
  • 模拟器(QEMU)
  • FreeRTOS
  • 本地工具包(设计用于在 RISC-V SCR Linux 主机上运行)
  • BSP 和 HAL
  • 应用示例
  • 基准测试
  • 文档

Syntacore 还支持和维护LinuxZephyr、OpenJDK 和 U-boot 等系统软件,这些软件不属于 SC-DT 软件包,可单独下载。