【经验】瑞萨R CAR E3安全访问寄存器资源实操
瑞萨R CAR E3使用中用到了其中R7核以及A53核,分别跑autosar和linux(QNX),在同时运行Autosar和linux过程中,R7核这边用到以太网,A53核没有用以太网,会出现R7核挂死现象,所以怀疑跟寄存器的共同访问冲突有关系,本文测试了GPIO寄存器的安全访问。
首先看一下R CAR的寄存器资源安全访问的控制模块life Cycle情况:
这个模块主要是通过控制master,slave总线的安全级别来实现模块的访问,总共有5个安全优先级别,分别是secure,以及3,2,1,0等级从高到低:
可以看到Master Security Group中,AxPROT[1]=0为secure最高访问等级,此时SECGRP1CR,SECGRP0CR无需设置,不用管,而对应的Slave Security Groupy也分为secure等级和no-secure访问等级,其中no-secure访问等级又分为4种,分别是SECGRP1COND,SECGRP0COND的4种组合11,10,01,00,同时搭配SEC_READONLY来控制访问;
其中Master Security Group中的10(group2),01(group1)没有使用。
以下是slave bus端的说明:
可以知道,每一个模块的访问权限都会有2个SECGRP1CR,SECGRP0CR和2个SECGRP1COND,SECGRP0COND以及一个SEC_READONLY来共同控制。
这是一个LIFEC控制访问AXI Master,A57,A53,R7核总线优先级等级,以及AXI-SLAVE总线访问优先级的示意图。
这个图的意思为AxPROT[1]=0时,master端为最高优先级访问等级secure。此时A53,A57,R7,AXI Master作为最高访问优先级端可以访问bus slave端的任意等级,当然需要设置SEC_SEL对应的bit为0,即为secure模式,就可以访问bus slave端的secure,以及no-secure模式的等级的总线设备,而设置SEC_SEL=1为非secure等级的master端无法访问secure的bus slave端。
这个图的意思是当AxPROT[1]=1时,master总线端的访问等级有4组非secure的总线访问组,分别为2个SECGRP1CR,SECGRP0CR和2个SECGRP1COND,SECGRP0COND所组合的11,10,01,00,等级从高到低;其中11(GROUP3)为no-secure中的最高访问等级,只能从更高的secure的master端来访问,而无法从低等级01(GROUP1)master总线来访问;当然从01(GROUP1)master总线来访问00(GROUP0)bus slaves是能成功的。
下面,我们来通过IPL代码中Bl2_Secure_setting.c来修改对应的master组SECGRP1CR,SECGRP0CR,以及Slave组SECGRP1COND,SECGRP0COND等模块总线访问等级,从而验证LIFEC的作用:
我们先修改GPIO5的SEC_SEL15的bit1为0,即设置为secure,最高访问等级。
编译生成bl2.srec,bl31.srec后烧录到R CAR E3,运行到uboot后,运行md e6055000,打印如下:
而默认的bl2.srec烧录后,是可以正常读写GPIO5对应的寄存器资源的:
说明默认的IPL代码中master端AxPROT[1]为1,否则AxPROT[1]为0,当slave bus设置为secure时也应该是可以正常读写GPIO5对应的寄存器资源的;
基于以上测试,我们判断出来IPL代码默认AxPROT[1]为1,所以就采用no-secure等级来控制master和slave总线访问等级。
下面我们把GPIO5设置到no-secure,SEC_SEL15的bit1为1,寄存器描述为可以从所有资源都可以访问,但其实也是需要比较master端的访问等级和Slave的等级来做访问的,只有master端的访问等级高于Slave的等级才能成功访问:
把GPIO5的slave总线设置为01,即slave总线访问等级为1,我们再来测试把A53,A57等级分别设置为11,00来确认是否能读写GPIO5的寄存器资源:
当修采用默认的A53,A57等级00,我们编译以上修改后的IPL,烧录运行到uboot,采用md e6055000,打印如下:
然后修改A53,A57 Master等级为11,再编译生成bl2.srec:
运行到uboot,采用md e6055000,打印如下:
以上详细说明了瑞萨R CAR E3安全访问寄存器资源的控制模块lifec,并且通过实际修改IPL代码中lifec寄存器实现A53核访问GPIO5寄存器资源的控制,这样我们就可以实现R CAR E3的各个模块的资源使用开关了,从而使资源不会发生冲突。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由Bill提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】主流智能驾驶舱SOC CPU,GPU算力性能对比,瑞萨R CAR H3经过了大量的市场验证
R CAR H3/H3N/M3W作为瑞萨R CAR系列智能驾驶舱的常用型号,研发人员通常除了关注主要的接口参数,更多的需要评估其性能,算力方面的数据,本文具体描述以上几款主流的智能驾驶舱SOC的CPU、GPU等方面的算力情况。
设计经验 发布时间 : 2021-06-25
【经验】R CAR E3编译bitbake命令报错do not use Bitbake as root问题原因及解决方法
Renesas R CAR E3主要应用于车载高端的仪表,双核A53,集成实时R7核,可以在R7核上运行freertos,atuosar等实时系统。本文解决在实际开发过程中,编译bitbake命令报错do not use Bitbake as root问题原因及解决方法。
设计经验 发布时间 : 2020-06-10
【经验】车规级SoC R CAR V3H2平台端工具链转换前 mobilenetv2.onnx浮点模型推理验证
RENESAS 车规级SoC R CAR V3H2平台上推理模型前,我们需要训练好自己的模型,目前通常采用迁移调优模型方式形成满足需求的浮点模型,并验证浮点模型的精度,耗时等性能,本文在ubuntu上用python推理浮点mobilenetv2.onnx模型。我们根据链接在公版的mobilenetv2模型基础上,迁移调优学习了自己采集的图片数据形成了自己要求的mobilenetv2.onnx模型。
设计经验 发布时间 : 2023-09-24
【经验】解析R CAR V3H千兆以太网RGMII适配Phy网络不通问题的调试
某客户采用Renesas的R CAR V3H开发CMS产品,V3H的千兆以太网RGMII接口外接一颗百兆phy芯片DP83TC811,出现ping通讯不成功的问题,本文世强将为大家解析R CAR V3H千兆以太网RGMII适配Phy网络不通问题的调试。
设计经验 发布时间 : 2022-08-20
【经验】R CAR H3的EMMC位宽模式切换方法
瑞萨电子R CAR H3开发EMMC的时候,EMMC通常是8bit模式,也可以4bit模式,hs200,hs400两种速度模式,那么在某些情况下,会出现EMMC模式初始化失败的情况,此时可以在8bit和4bit模式之间切换,来排除一些硬件上的问题。
设计经验 发布时间 : 2020-07-01
【经验】SoC R CAR V3H2 端侧推理输出的rcar_output.npy数据查看方法
RENESAS R CAR V3H2 端侧推理输出的数据有cvs格式,总共512个输出,同时把cvs数据转化为npy格式保存为一个rcar_output.npy文件,那我如何查看这些数据呢,本文记录数据查看方法。
设计经验 发布时间 : 2023-09-23
【经验】快速倒车功能开发:CVBS摄像头接入decoder芯片转BT656接入到R CAR H3后DU显示输出的修改点
驾驶舱系统一般都需要做快速倒车显示功能,Renesas R CAR H3开发快速倒车功能的时候使用的是R7核跑freertos,在freertos中操作摄像头输入,以及DU显示来实现快速显示倒车摄像头视频,本文记录在开发CVBS摄像头接入decoder芯片转BT656接入到R CAR H3后,通过DU显示输出的修改点。
设计经验 发布时间 : 2020-12-14
【经验】R CAR H3开发板上DDR4使用DRAM_Eye_Openning测试DDR4的眼图过程
R CAR H3在设计电路板,关乎系统能否正确启动的,其中除了电源部分供电,那就是DDR4的布线走线,稳定性的部分,本文记录通过瑞萨提供的DDR4测试工具DRAM_Eye_Openning测试DDR4的眼图过程。
设计经验 发布时间 : 2021-01-20
【经验】SoC R CAR V3H2 cnn模型转换后执行以及benchmark过程实操指南
RENESAS SoC R CAR V3H2 cnn模型转换后的输出文件有bcl和.pb 2类,都是可以在端侧执行的,本文记录.pb的推理输出以及benchmark过程实操及解析。
设计经验 发布时间 : 2023-09-21
【经验】瑞萨R-Car V3M的eagle摄像头适配过程
R-Car V3M的eagle板自带4路摄像头输入解串器max9286,前端可以接入美信的max96705,max9271等串行器,从而实现R CAR V3M平台的4路摄像头的输入,本文记录了接入美信的max96705+OV490(isp)+OV9284(sensor)摄像头的过程。
设计经验 发布时间 : 2021-04-07
【经验】R-Car E3启动UBOOT时一直重启问题如何解决?
瑞萨R CAR E3开发AR HUD产品,主要用到E3的IMR奇变矫正功能,以及GPU的图像渲染,显示大屏输出,在调试时候,出现UBOOT启动中重启问题,就先确认下DDR容量配置是否出错了,按照本文的相关设置做检测,来解决。
设计经验 发布时间 : 2021-08-21
【经验】SoC R CAR V3H2 CNN工具链转换restnet18 caffe模型为端侧可执行命令过程解析
RENESAS SoC R CAR V3H2 CNN工具链最主要的功能就是把caffe,onnx等模型转换为V3H2 芯片端可执行模型,命令,本文记录并分析此转换过程。
设计经验 发布时间 : 2023-09-16
【经验】R CAR H3的LINUX桌面系统可以使用Wayland(weston)但不能显示的解决过程
Renesas R CAR H3的LINUX桌面系统可以使用Wayland(weston),在salvator-xs开发板上把weston桌面以及应用程序跑起来是需要实践一下的,本文解决在实际操作过程中不能显示桌面,运行weston出错等一系列问题。
设计经验 发布时间 : 2020-07-26
【经验】使用瑞萨SoC R CAR V3H2 cnn工具链实现onnx模型转caffe模型的实操
R CAR V3H2 的cnn神经网络模块需要运行int16的定点模型,而onnx模型首先需要通过cnn工具链转成caffe模型,然后再转成端侧的可执行模型,本文使用瑞萨的cnn工具链实现onnx模型转caffe模型。
设计经验 发布时间 : 2023-08-14
【经验】如何实现SoC R CAR S4从网络启动配置操作?
R CAR S4的DEMO板上emmc中的内核以及文件系统烧录,需要先从网络启动系统后,然后通过挂载emmc,才能把内核以及文件系统copy到emmc分区中,本文记录spider board的配置烧录过程。
设计经验 发布时间 : 2023-08-26
电子商城
现货市场
服务
配备KEYSIGHT网络分析仪,可测量无线充电系统发射机/接收机线圈的阻抗,电感L、电阻R、电感C以及品质因数Q,仿真不同充电负载阻抗下的无线充电传输效率。支持到场/视频直播测试,资深专家全程指导。
实验室地址: 深圳 提交需求>
登录 | 立即注册
提交评论