RA8P1介绍

RT-Thread Titan Board开发板是RT-Thread推出的,基于瑞萨R7KA8P1 Cortex-M85与Cortex-M33双核架构芯片的开发板。

而这块开发板上最核心的器件,就是这款目前瑞萨RA8家族最新的MCU——RA8P1。RA8P1基于台积电的22nm先进制程工艺,搭载的是Arm的Cortex®-M85 CPU,主频高达1GHz,且支持Helium矢量运算加速单元;且MCU集成了Ethos™-U55 NPU,可提供的算力约为256GOPS (0.256 TOPS)。

RA8P1官方DataSheet:https://www.renesas.cn/zh/document/dst/ra8p1-group-datasheet?r=25574019

RA8P1 MCU详细的其他系统资源如下:

RA8P1 CPU性能

Cortex-M85这款CPU是Arm基于Armv8.1-M架构推出的处理器(和Cortex-M33, M55等内核为同一代架构),也是目前Arm Cortex-M系列的最强CPU。Coremark评分达到了6.3/MHz,这比上一代的Cortex-M7性能提升了约20%。

此外Cortex-M85还支持Helium拓展,这是一种SIMD的ISA(指令集架构),和Cortex-A系列处理器上的Neon比较类似,都可以并行处理数据,实现矩阵运算、AI模型等应用的加速效果。

Arm官网Cortex-M处理器性能对比:https://developer.arm.com/compare-ip/#cortex-m-cpu-performance---scalar

此外,RA8P1上还带有一个250MHz的Cortex-M33M33内核,可以和主CPU配合,并行处理通讯、实时控制等任务。整个MCU的综合CoreMark评分可以达到了8700多分。

RA8P1 NPU性能

RA8P1 搭载的NPU模块为Arm Ethos-U55,其运行频率为500 MHz。它支持8-bit权重​及8-bit或16-bit激活值,因此,需在NPU上运行的模型还是需要进行量化处理。这一设计也是Arm专为资源受限的嵌入式设备及IoT等边缘应用所做的优化。

Ethos-U55 NPU是一个独立于CPU的专用硬件加速单元,而不是类似Cortex-M85内核中Helium的向量指令集扩展架构。它也能够直接访问并利用芯片上的MRAM与SRAM资源进行计算。这使得CPU与NPU能够并行工作,从而提升系统整体的计算效率。

当遇到NPU不支持的算子时,系统会自动回退至Cortex-M85主核,并通过CMSIS-NN软件库进行加速,确保了广泛的模型兼容性。

根据瑞萨的官方资料,在 AI 模型推理任务中,该 NPU 的算力相较于单独的 Cortex-M85 CPU 可实现十数倍的性能提升。针对例如YOLO这类目标检测模型,其推理速度提升幅度可达约20倍。

MCU和开发板存储资源

Titan Board上搭载的具体的MCU型号为:R7KA8P1KFLCAC,为BGA292封装。

在片内存储方面,RA8P1配备了2MB的RAM资源,和1MB的MRAM资源(可以看做是升级版的Flash),片内的存储资源也十分丰富。

这里简单介绍一下MRAM技术。MRAM和RRAM以及PCM等技术均为MCU领域最新的一代存储工艺,和传统Flash工艺的相比,他们最大的特点是无需进行擦除操作就可以直接进行写入,且读取和写入速度方面也提升很大:

由于片内的NVM资源只有1MB的MRAM,因此在Titan Board上还配备了64MB的Flash;此外板子上还标配了32MB的RAM,支持高速的Hyper RAM协议。这些存储用于做一些视觉应用以及LCD的显示也是十分足够的。

开发板其他资源

RA8P1 Titan Board开发板上资源很丰富,支持MIPI DSI和RGB 565的显示输出,以及CEU和MIPI CSI的摄像头输入,此外还集成了2个RJ45千兆以太网接口,以及UART和CAN等通讯接口。

开发板原理图:https://gitee.com/RT-Thread-Studio-Mirror/sdk-bsp-ra8p1-titan-board/raw/main/docs/Titan_Board_schematic.pdf

Titan官方搭配的OV5640摄像头模块,摄像头板上既留出了DVP (22Pin)接口,也可与选择MIPI CSI (22Pin)接口。这两种接口在RT-Thread Studio中也有相应接口的例程。

屏幕方面,可以购买官方的MIPI DSI (22Pin)的4.3寸LCD显示屏,或者开发板的RGB565的40Pin接口也完美兼容正点原子4.3寸屏幕。需要注意正点原子4.3"屏幕后续触控IC由原本的GT9147换为了GT1151,这与RT-Thread Studio中的RGB LCD例程有些许差异。

Titan Board开发板详细资源如下:

屏幕、摄像头接线

摄像头和显示屏接线如下,这里摄像头使用的是CEU接口,显示屏为正点原子的4.3寸LCD屏幕,使用40Pin的RGB 565连接。Type-C通过USB-DBG接口供电,以及与上位机进行串口数据通讯:

还有一个比较奇怪的点是,开发板和官方摄像头的固定螺丝的宽度是不一致的。这就导致摄像头没办法进行固定,只能通过排线连接荡在外面,用起来不是很方便。猜测可能是由于摄像头模块是直接复用之前RT-Thread Vision Board的吧。

需要注意的是,板子背面的40Pin的FPC排线连接器底座,下压翻盖和触电不在同一侧。即翻盖在上面,而排线是从下面接进去,触点向上:

AI人脸识别例程

下载并安装RT-Thread Studio,以及相应的库。在官方Studio中有人脸识别的例程,工程名为Titan_npu_ai_face_detection,参考官方的指南直接导入,正常编译、下载就好。

运行成功后,可以在串口可以收到数据。可以看出,在NPU上运行YOLO-Fastest的AI人脸识别模型,推理速度约为56ms:

MCU侧的AI人脸检测及屏幕显示效果如下,在识别的人脸区域,可以正常标注出绿色的方框:

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐