拜读维拉科技关于机器人相关信息的综合整理,涵盖企业排名、产品类型及资本市场动态:一、中国十大机器人公司(综合类)优必选UBTECH)聚焦人工智能与人形机器人研发,产品覆盖教育、娱乐及服务领域,技术处于行业前沿。瑞萨机器人处理器RZT2H CR52双核BOOT流程和例程代码分析机器人中科院旗下企业,工业机器人全品类覆盖,是国产智能工厂解决方案的核心供应商。埃斯顿自动化国产工业机器人龙头,实现控制器、伺服系统、本体一体化自研,加速替代外资品牌。遨博机器人(AUBO)协作机器人领域领先者,主打轻量化设计,适用于3C装配、教育等柔性场景。埃夫特智能国产工业机器人上市第一股,与意大利COMAU深度合作,产品稳定性突出。二、细分领域机器人产品智能陪伴机器人Gowild公子小白:情感社交机器人,主打家庭陪伴功能。CANBOT爱乐优:专注0-12岁儿童心智发育型亲子机器人。仿真人机器人目前市场以服务型机器人为主,如家庭保姆机器人(售价10万-16万区间),但高仿真人形机器人仍处研发阶段。水下机器人工业级产品多用于深海探测、管道巡检,消费级产品尚未普及。瑞萨机器人处理器RZT2H CR52双核BOOT流程和例程代码分析资本市场动态机器人概念股龙头双林股份:特斯拉Optimus关节模组核心供应商,订单排至2026年。中大力德:国产减速器龙头,谐波减速器市占率30%。金力永磁:稀土永磁材料供应商,受益于机器人电机需求增长。行业趋势2025年人形机器人赛道融资活跃,但面临商业化落地争议,头部企业加速并购整合。四、其他相关机器人视频资源:可通过专业科技平台或企业官网(如优必选、新松)获取技术演示与应用案例。价格区间:服务型机器人(如保姆机器人)普遍在10万-16万元,男性机器人13万售价属高端定制产品。
RZT2H是多核,启动时,需要一个“主核”先启动,然后主核根据规则,加载和启动其他内核。本文以T2H内部的CR52双核为例,说明T2H多核启动流程。
LSI reset release时,其内置的BOOT总是从CR52_0开始执行,即我们可以把CR52_0定义为主核。如果系统配置为程序从Exrnal XSPI_FLASH 启动,BOOTROM首先根据存放在external Flash起始位置的Paeter中的定义,从Flash中加载Loer程序。
Paramete for the Loader:
存放在External Memory区域的起始位置,存放着与程序加载相关的关键信息,如例如在各个启动模式下,启动期间的缓存设置,用于与外部存储器的引导外设(xSPI或HI)的配置以及加载程序的size等等。
Parameters for Loader的结构如下:
除了上述信息,其中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:
如果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访问 area之外的地址空间,详见UM 13.4.5;
TrustedZone 400初始化;
COPY应用程序的PRG段/DATA段/BSS段,到相应的运行RAM空间。如果需要启动其他内核,则把其他内核的PRG/DATA,也COPY到对应RAM区域,然后Release目标内核;
核间通信用到的量初始化;
Master MPU初始化;
GIC初始化和系统定义的中断的初始化配置;
U初始化;
Main()跳转应用;
其中步骤5中启动目标CPU(CR52_1)
的步骤如下图:
上述步骤中需要特别强调的地方:
启动过程,需要从CR52_0访问CR52_1的ATCM空间。根据T2H的架构,这个访问只能通过AXI总线,且必须把CR52_1的ATCM region通过MPU配置为Device属性,并且只能使用LD和ST指令;
对应到代码中,上面的7个步骤在函数SystemInit()文件startup.c中都能找到对应的实现;
重点说明函数bsp_cpu_reset_release()该函数实现上述步骤的2,3,4,6,7;
重点分析步骤6:
代码段如下:
这段代码完成的动作:
把1st分支指令[inst]经AXIS复制到CR52_1 ATCM的起始地址(dst_cpu1:0x2100_000);
复制跳转指令要用到的目标地址(addr);
操作到的存储地址如图示:
最后步骤7:
CR52_1跳转到入口函数system_init,开始执行:
以上,以双CR52 Core为例,说明了T2H多核系统的BOOT流程。
延伸阅读:
日本电子此前量产面向工业设备的 MPU(单元)RZ / T2H,预计用于等,号称 CPU 软件处理性能比以前提高了 20~30%。一个芯片可以同时控制最多 9 轴的。
RZ / T2H 的 CPU 采用四个 Cortex-A55 内核,最高主频为 1.2GHz,支持 LP4-3200 32bit 内存;实时 CPU 包括两个 Cortex-R52,最高主频 1GHz。
全部评论
留言在赶来的路上...
发表评论