0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

瑞萨机器人处理器RZT2H CR52双核BOOT流程和例程代码分析

瑞萨嵌入式小百科 来源: 瑞萨MCU小百科 作者:瑞萨MCU小百科 2025-04-02 09:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

RZT2H是多核处理器,启动时,需要一个“主核”先启动,然后主核根据规则,加载和启动其他内核。本文以T2H内部的CR52双核为例,说明T2H多核启动流程。

LSI reset release时,其内置的BOOTROM总是从CR52_0开始执行,即我们可以把CR52_0定义为主核。如果系统配置为程序从External XSPI_FLASH 启动,BOOTROM首先根据存放在external Flash起始位置的Parameter中的定义,从Flash中加载Loader程序。

Parameters for the Loader:

存放在External Memory区域的起始位置,存放着与程序加载相关的关键信息,如例如在各个启动模式下,启动期间的CPU缓存设置,用于与外部存储器通信的引导外设(xSPI或SDHI)的配置以及加载程序的size等等。

Parameters for Loader的结构如下:

wKgZO2fsk0qAZr5UAAFMtnI_9vk404.png

除了上述信息,其中DSET_ADDR_NML是跟多核启动相关的关键参数;该参数决定Loader Program的加载地址,而BOOTROM根据这个地址决定接下来在哪个核上,从哪个地址开始执行LOADER程序。

这里补充一下T2H程序结构和基本加载启动流程:

T2H平台,烧录到External Flash上的内容逻辑上分成3部分:

上述的Parameter for Loader;

Loader program;

Application program;

启动时,BOOTROM根据Parameter for Loader从Flash加载Loader program到指定位置开始执行,然后Loader program再加载Application program并跳转执行。

在T2H多核架构下(4xCA55+2xCR52)Loader parameter中的:DEST_ADDR_NML有2个可能的地址范围,即BTCM7或者7System SRAM:

wKgZPGfsk0qAdzn6AAEPsQBTjY4802.png

如果BOOTROM判断到加载地址是在BTCM中,那CR52_0继续执行(second boot CPU仍然是CR52_0),从加载地址开始执行LOADER PROGRAM,并完成整个启动流程。

如果BOOTROM判断到加载地址是SYSTEM,系统会认为second boot CPU是CA55_0,BOOTROM 就会Reset release CA55_0,并把CR52_0转换到WFI状态,然后让CA55_0执行Loader program。

以上介绍了在T2H多核系统中的主核First boot CPU和Second boot CPU的启动过程,但是其他的Core此时都还是在Reset 状态,等待 Second boot CPU为其加载程序和释放。

接下来以52双核为例,说明CR52_0如何完成自身程序加载和加载并启动CR52_1的过程;

在这个示例中,CR52_0用作Second boot CPU,以下步骤是CR52_0的Loader Program需要完成的工作:

根据FSP时钟树,配置LSI的各个Clock;

初始化Loader Program的Data段和BSS段;

配置ADDRESS_EXPANDER_INIT:

Address EXPANDER的作用是:通过映射的方法,使能32 bit Master访问4G area之外的地址空间,详见UM 13.4.5;

TrustedZone 400初始化;

COPY应用程序的PRG段/DATA段/BSS段,到相应的运行RAM空间。如果需要启动其他内核,则把其他内核的PRG/DATA,也COPY到对应RAM区域,然后Release目标内核;

核间通信用到的信号量初始化;

Master MPU初始化;

GIC初始化和系统定义的中断的初始化配置;

TFU初始化;

Main()跳转应用;

其中步骤5中启动目标CPU(CR52_1)

的步骤如下图:

wKgZPGfsk0uAfiIzAAK8JTsGLJs484.png

上述步骤中需要特别强调的地方:

启动过程,需要从CR52_0访问CR52_1的ATCM空间。根据T2H的架构,这个访问只能通过AXI总线,且必须把CR52_1的ATCM region通过MPU配置为Device属性,并且只能使用LD和ST指令;

wKgZO2fsk0uASJqXAAIz3ixvGPk055.png

对应到代码中,上面的7个步骤在函数SystemInit()文件startup.c中都能找到对应的实现;

重点说明函数bsp_cpu_reset_release()该函数实现上述步骤的2,3,4,6,7;

重点分析步骤6:

代码段如下:

wKgZO2fsk0uAOftCAAGxVYrykPU559.png

这段代码完成的动作:

把1st分支指令[inst]经AXIS接口复制到CR52_1 ATCM的起始地址(dst_cpu1:0x2100_000);

复制跳转指令要用到的目标地址(addr);

操作到的存储地址如图示:

wKgZO2fsk0yATkjgAAE1as_PNXY961.png

最后步骤7:

wKgZPGfsk0yANoXSAAAkM9n_lG4759.png

CR52_1跳转到入口函数system_init,开始执行:

wKgZPGfsk0yAbBpvAAFA_7le4Ms386.png

以上,以双CR52 Core为例,说明了T2H多核系统的BOOT流程。

延伸阅读:

日本瑞萨电子此前量产面向工业设备的 MPU(微处理器单元)RZ / T2H,预计用于机器人等,号称 CPU 软件处理性能比以前提高了 20~30%。一个芯片可以同时控制最多 9 轴的电机

RZ / T2H 的 CPU 采用四个 Arm Cortex-A55 内核,最高主频为 1.2GHz,支持 LPDDR4-3200 32bit 内存;实时 CPU 包括两个 Cortex-R52,最高主频 1GHz。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    213

    文章

    31449

    浏览量

    223677
  • 瑞萨
    +关注

    关注

    38

    文章

    22518

    浏览量

    91200
  • 代码
    +关注

    关注

    30

    文章

    4976

    浏览量

    74384
  • Boot
    +关注

    关注

    0

    文章

    154

    浏览量

    37918
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于米尔RK3576核心板的国产割草机器人解决方案

    量产的周期。 4. 强大的多媒体处理能力 RK3576内置Mali-G52 GPU和VPU视频编解码单元,支持H.264/H.265硬解码。割草机器
    发表于 04-24 17:31

    固德晟基于新一代RA8T2 MCU的EtherCAT轴伺服控制方案介绍

    电子携手合作伙伴固德晟推出基于新一代RA8T2 MCU的EtherCAT轴伺服控制方案
    的头像 发表于 04-10 14:18 1755次阅读
    固德晟基于<b class='flag-5'>瑞</b><b class='flag-5'>萨</b>新一代RA8T<b class='flag-5'>2</b> MCU的EtherCAT<b class='flag-5'>双</b>轴伺服控制方案介绍

    RZ/T2H和RZ/N2H MPU:工业级应用的高性能之选

    /T2H和RZ/N2H MPU集成了Cortex - A55四//单核和
    的头像 发表于 04-01 11:25 185次阅读

    系列-米尔RZ/T2H核心板开发板 高端MPU,驱控一体单芯片方案

    RZ/T2H高端MPU,实现多轴高精度实时控制RZ/T2H驱控一体单芯片方案,CA55做控制,CR
    发表于 03-19 15:27 0次下载

    芯微SOC智能视觉AI处理器

    RK3568B2: 一款性能均衡、接口丰富的中高端AIoT应用处理器,是RK3568的优化版本,主打稳定与可靠性。CPU/GPU: 延续RK3568的4A55 + G52 GPU架构
    发表于 12-19 13:44

    RK3576机器人核心:三屏异显+八路摄像头,重塑机器人交互与感知

    芯微RK3576 AIoT处理器处理器凭借其卓越的多屏异显与8路摄像头接入能力,为机器人领域带来革新。米尔电子MYD-LR3576开发板实测数据显示,在高负载下CPU占用仅34%,完
    发表于 10-29 16:41

    宇树科技发布H2仿生人形机器人

    就在10月20日会跳舞的机器人来了,宇树科技正式发布H2仿生人形机器人,高180cm,重70kg,配以31个关节。在宇树科技展示的视频中,H2仿生人形
    的头像 发表于 10-20 17:52 2073次阅读

    工业机器人的特点

    机器人是关键。工业互联网是通过端上的数据传输,经过大数据分析和云计算处理,再进行智能化决策的一整个过程,其中端的数据传输是基础。工业互联网的端包括机器人、传感
    发表于 07-26 11:22

    RZ T2H更换DDR流程和工具介绍

    RZ T2H是由2个R52和4个A55构成。
    的头像 发表于 06-27 14:54 2714次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b>RZ T<b class='flag-5'>2H</b>更换DDR<b class='flag-5'>流程</b>和工具介绍

    明远智睿SSD2351开发板:语音机器人领域的变革力量

    的四1.4GHz处理器具备强劲的运算性能,能够高效处理语音机器人运行过程中的复杂任务。语音识别和合成需要大量的计算资源,该处理器可以快速对
    发表于 05-28 11:36

    使用RZ/T2H MPU提高工业机器人性能并显著减少组件数量和开发工时的方法

    本文是电子公司发布的白皮书,主要介绍RZ/T2H MPU在工业机器人中的应用,阐述其如何实现高性能应用处理、多轴电机控制和工业以太网功能
    的头像 发表于 05-22 10:22 1522次阅读
    使用RZ/T<b class='flag-5'>2H</b> MPU提高工业<b class='flag-5'>机器人</b>性能并显著减少组件数量和开发工时的方法

    使用电子RZ/T2H产品实现多关节机器人

    人形机器人是目前最受市场关注的科技发展方向之一。人形机器人集机械、电气控制、通信、AI于一体,是典型的多领域综合技术。
    的头像 发表于 05-15 14:48 2016次阅读
    使用<b class='flag-5'>瑞</b><b class='flag-5'>萨</b>电子RZ/T<b class='flag-5'>2H</b>产品实现多关节<b class='flag-5'>机器人</b>

    【「# ROS 2智能机器人开发实践」阅读体验】视觉实现的基础算法的应用

    的本质是解决“鸡与蛋”问题:机器人需要地图来定位,又需要准确定位来构建地图。书中从前端(传感数据处理)和后端(位姿优化)两个层面解析了SLAM的算法逻辑。 激光雷达和视觉SLAM各有优劣,例如激光
    发表于 05-03 19:41

    【「# ROS 2智能机器人开发实践」阅读体验】机器人入门的引路书

    的非常好的,特别是一些流程图,很清晰的阐释了概念 很适合作为初学者入门的引路书 还能了解很多技术和框架,破除初学者的自负困境,让初学者知道功能是由很多开发者维护的,前人已经为各种产品搭建了完善的框架。避免陷入得一个单打独斗的错觉 一直蠢蠢欲动ros
    发表于 04-30 01:05

    【「# ROS 2智能机器人开发实践」阅读体验】+内容初识

    机器人技术的飞速发展,ROS 2 作为其核心工具之一,为开发者提供了强大的支持。与传统的理论书籍不同,本书深入浅出地讲解了 ROS 2 的架构、开发流程以及在智能
    发表于 04-27 11:24