当前位置: 首页 > news >正文

芯片杂谈 -- 常聊的内核包含哪些模块

目录

1. R52内核速览

2. 处理器模块详解

3.内核的功能安全测什么?

4.小结


最开始接触到汽车MCU大都来自NXP、Infineon、Renesas,例如MPC5748、TC275、RH850 P1X等等;

而各大OEM、供应商等等发布的JD通常都会要求熟悉AURIX、PowerPC、G3KM等等内核。

其实我从来没明白这个所谓熟悉,是哪种程度?而面试者通常也不会问太多内核的东西。

但是出于好奇,我去研究了目前非常火的ARM Cortex-R52 处理器,总结一下内核里的东西,算是一个入门小科普。

1. R52内核速览

Cortex-R52处理器是一款中等性能、有序、超标量处理器,主要用于汽车和工业应用。参考模型如下图所示:

 该处理器包含如下部件:

  • Core,内核;
  • TCM,Tightly Coupled Memories,最靠近内核的一段RAM,不能cache,速度最快;对应Tricore的DSPR\PSPR等。
  • 总线接口,AXIM\S、Flash 接口、LLPP(Low-latency Peripheral Port)接口;
  • GIC,Generic Interrupt Controller中断控制器;
  • PMC,Programmable MBIST Controller,用于执行内部MBSIT测试等

  • ....

目前已经有大厂基于此核做区域控制器,例如S32Z、E。

根据文档描述每个处理器(Processor)可以下挂1-4个内核(Core),因此从这里就引出了Cluster的概念,以S32Z为例,它总共分为了2个Cluster:

每个Cluster里包含4个内核,如果需要锁步,那就配置为两对锁步核使用;也可以一个cluster配置锁步,另一个cluster配置4个普通核;更有甚者可以直接配置2*4个普通核使用。

那如果是配置为8个核使用,没有锁步,处理器的功能安全如何保证?

为此,我们就必须对处理器的内存进行一些测试,那么就有必要搞懂里面到底包含了哪些模块。

2. 处理器模块详解

R52内核采用 Harvard memory 架构,从内部视角看就分为了两个独立路径来访问指令和数据,如下所示:

从上图,我们可以看到,指令侧仅仅是取指,所以是一个单向接口;数据侧可以读写数据,但是只有从AXIM取写数据,所以Flash接口是一个单向接口,AXIM是一个双向的。除此之外,R52提供了A\B\C TCM,可以实现最快速地访问,因此这块RAM里面可以运行时间要求很高的代码。

有了上述逻辑之后,我们进一步来看Core里面应该包括哪些模块?

由于没有找到R52内部的细节,所以从基于M33依葫芦画瓢总结如下:

首先是获取数据的指令侧和数据侧,在ARM内核中均使用BIU(Bus Interface Unit)用于总线仲裁,处理Flash接口、AXIM接口的访问冲突;

其次,我们汇编常用的load store指令,则有LSU(Load Store Unit)控制访问其他外设系统等;

当LSU完成基本操作后后,统一送到DPU(Data Processing Unit)进行处理,DPU是内核最重要的单元,它包含了ALU(Arithmetic and Logic Unit)、异常响应、取指译码执行等。异常的来源通常有GIC提供。

为了加快运行速度,PFU(Prefetch Unit)可以从Cache中预取指令,送到DPU进行处理。

总结下来,一个Core内部至少应该包括如下单元:

  • DPU:Data Processing Unit,取指译码执行指令、处理异常;
  • LSU:Load Store Unit,控制外设访问的load、store操作;
  • PFU:Prefetch Unit,预取Cache指令;
  • BIU:Bus Interface Unit,处理不同总线接口访问冲突;
  • TCU:TCM Control Unit,控制TCM的load store操作;

至于R52内部还有哪些单元,看后续有无公开资料可以看看。 

3.内核的功能安全测什么?

首先可以确定的是,online test模式下,内核LBIST是没法做了,不然芯片重启了都完蛋,PBIST上电搞一次可以了,后面就持续监控,那能做的只有MBIST;

MBIST在R52里是由PMC-52进行控制,那具体可以测什么内容呢?

TCM是可以测试的,其次就是核里自带的Cache,包括指令Cache、数据Cache。

其实从这点来看,TC3xx的MTU设计还是非常厉害的,它仅用MTU+SSH就可以覆盖全芯片的Memory测试,而如果使用R52内核的MCU会如何设计MBIST,确实非常让人好奇。

4.小结

用了很小的篇幅来描述内核里的各种单元,有个初步印象,后续准备多多对比几家汽车MCU的内核,看看那些自研内核会不会有相似之处。

就酱,债见!

相关文章:

芯片杂谈 -- 常聊的内核包含哪些模块

目录 1. R52内核速览 2. 处理器模块详解 3.内核的功能安全测什么? 4.小结 最开始接触到汽车MCU大都来自NXP、Infineon、Renesas,例如MPC5748、TC275、RH850 P1X等等; 而各大OEM、供应商等等发布的JD通常都会要求熟悉AURIX、PowerPC、G3K…...

运维问题0002:SAP多模块问题-SAP系统程序在执行时,跳出“加急快件”窗口,提示:快件文档“更新已终止”从作者***收到

1、问题描述 近期收到2起业务报障,均反馈在SAP执行程序时,弹出“加急快件”窗口,导致操作的业务实际没有更新完成。 1)业务场景一:设备管理部门在操作事务代码:AS02进行资产信息变更时,保存正常…...

深度解析RAG:你必须要了解的RAG优化方法

RAG(Retrieval-Augmented Generation)是一种结合检索和生成能力的技术框架,旨在通过从外部知识库中检索相关信息来增强生成模型的输出。其基本思想是利用大型语言模型(LLM)的生成能力,同时通过检索机制获取…...

深度学习驱动下的字符识别:挑战与创新

一、引言 1.1 研究背景 深度学习在字符识别领域具有至关重要的地位。随着信息技术的飞速发展,对字符识别的准确性和效率要求越来越高。字符识别作为计算机视觉领域的一个重要研究方向,其主要目的是将各种形式的字符转换成计算机可识别的文本信息。近年…...

使用 JAXB 将内嵌的JAVA对象转换为 xml文件

使用 JAXB 将内嵌的JAVA对象转换为 xml文件 1. 需求2. 实现(1)FileDesc类(2)MetaFileXml类(3)生成对应的xml文件 1. 需求 获取一个目录下所有文件的元数据信息(文件名、大小、后缀等&#xff0…...

若依项目后台启动报错: [网关异常处理]、503

拉取代码启动项目,网关控制台报错: 21:31:59.981 [boundedElastic-7] WARN o.s.c.l.c.RoundRobinLoadBalancer - [getInstanceResponse,98] - No servers available for service: ruoyi-system 21:31:59.981 [boundedElastic-7] ERROR c.r.g.h.Gateway…...

【C++ Qt day10】

2、 完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到其他界面 如果账号和密码不匹配&am…...

GO HTTP库使用

Go的 net/http 包是一个强大且易于使用的库,用于构建HTTP服务器和客户端。通过它,你可以轻松实现HTTP请求的处理、路由、静态文件服务等功能。下面重点以及一个简单的Demo示例。 文章目录 1. **基础HTTP服务器**2. **处理请求与响应**3. **路由与处理器*…...

数据结构 - 顺序表

0.线性表 1.定义 线性表就是零个或多个相同数据元素的有限序列。 2.线性表的存储结构 ①.顺序结构 ②.链式结构 3.线性表的表示方法 例如: 一.线性表的基本运算 二.线性表的复杂运算 1.线性表的合并运算 2.线性表的去重运算 三.顺序表 1.定义 顺序表,就…...

企业如何组建安全稳定的跨国通信网络?

组建一个安全稳定的跨国通信网络对于现代企业来说至关重要,尤其是当企业在全球范围内运营时。以下是一些关键步骤和考虑因素: 需求分析: 确定企业的具体通信需求,包括带宽要求、延迟敏感度、数据类型(如语音、视频、文…...

OCR在线识别网站现已上线!

注意,本文只提供学习的思路,严禁违反法律以及破坏信息系统等行为,本文只提供思路 如有侵犯,请联系作者下架 由作者亲自开发的ocr识别网站哈哈,暂时汇聚了三十多种验证码模型以及算法,欢迎各路朋友去尝试,网站地址如下 http://gbj5w3.natappfree.cc/ocr 验证码类型包括但…...

排名再升2位 中国平安位列BrandZ最具价值中国品牌第9位

9月10日,凯度华通明略发布“2024年BrandZ最具价值中国品牌”榜单,中国平安位列榜单第9位,较2023年榜单排名上升2位,品牌价值韧性增长至205.14亿美元,十度蝉联中国保险行业品牌价值第一位。榜单特别提到,中国…...

k8s集群部署:环境准备

本教程基于centos9 arm架构展开。 1. 设置主机名 为每个节点设置主机别名,以便于集群中的角色识别: # 设置主节点的主机名为 kmaster sudo hostnamectl set-hostname kmaster --static# 设置工作节点1的主机名为 kworker1 sudo hostnamectl set-hostn…...

<C++> set、map模拟实现

目录 一、适配器红黑树 二、红黑树再设计 1. 重新设计 RBTree 的模板参数 2. 仿函数模板参数 3. 正向迭代器 构造 operator*() operator->() operator!() operator() operator--() 正向迭代器代码 4. 反向迭代器 构造 operator* operator-> operator operator-- operat…...

软考学习 数据结构 查找

1. 顺序查找(Sequential Search) 基本原理: 顺序查找是一种最简单、最直观的查找算法。它从数据集合的第一个元素开始,依次与目标元素进行比较,直到找到目标元素或遍历完所有元素为止。 适用条件: 适用…...

h264 视频流中添加目标检测的位置、类型信息到SEI帧

在 H.264 视频编码中,SEI(Supplemental Enhancement Information)消息用于传输额外的、非编码的数据,例如目标检测的信息。SEI 数据可以嵌入到 H.264 流中,以在解码过程中传递这些附加信息。 一、步骤 确定 SEI 类型&…...

大模型api谁家更便宜

1 openai 可点此链接查询价格:https://openai.com/api/pricing/ 2 百度 可点此链接查询价格:https://console.bce.baidu.com/qianfan/chargemanage/list 需要注意,百度千帆平台上还提供其他家的模型调用服务, 如llama, yi-34b等…...

代码随想录算法训练营第二十三天| 455. 分发饼干、376. 摆动序列、53. 最大子序和

今日内容 贪心理论基础Leetcode. 455 分发饼干Leetcode. 376 摆动序列Leetcode. 53 最大子序和 贪心理论基础 贪心算法的本质就是选择每一阶段的最优,达到全局上的最优。 贪心算法和之前学到的所有方法相比,它没有固定的使用套路,也没有固…...

react js 路由 Router

完整的项目,我已经上传了 资料链接 起因, 目的: 路由, 这部分很难。 原因是, 多个组件,进行交互,复杂度比较高。 我看的视频教程 1. 初步使用 安装: npm install react-router-dom 修改 index.js/ 或是 main.js 把 App, 用 BrowserRouter 包裹起来 2. Navigate 点击…...

AplPost使用

请求get 方法 1,添加token 2,填写get 的参数 2,post方法 把对象的形式直接复制到row里面 3,delete方法 可以直接后面拼接参数...

【Linux】C语言执行shell指令

在C语言中执行Shell指令 在C语言中&#xff0c;有几种方法可以执行Shell指令&#xff1a; 1. 使用system()函数 这是最简单的方法&#xff0c;包含在stdlib.h头文件中&#xff1a; #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...

蓝桥杯 2024 15届国赛 A组 儿童节快乐

P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡&#xff0c;轻快的音乐在耳边持续回荡&#xff0c;小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下&#xff0c;六一来了。 今天是六一儿童节&#xff0c;小蓝老师为了让大家在节…...

【机器视觉】单目测距——运动结构恢复

ps&#xff1a;图是随便找的&#xff0c;为了凑个封面 前言 在前面对光流法进行进一步改进&#xff0c;希望将2D光流推广至3D场景流时&#xff0c;发现2D转3D过程中存在尺度歧义问题&#xff0c;需要补全摄像头拍摄图像中缺失的深度信息&#xff0c;否则解空间不收敛&#xf…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

视频字幕质量评估的大规模细粒度基准

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用&#xff0c;因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型&#xff08;VLMs&#xff09;在字幕生成方面…...

【单片机期末】单片机系统设计

主要内容&#xff1a;系统状态机&#xff0c;系统时基&#xff0c;系统需求分析&#xff0c;系统构建&#xff0c;系统状态流图 一、题目要求 二、绘制系统状态流图 题目&#xff1a;根据上述描述绘制系统状态流图&#xff0c;注明状态转移条件及方向。 三、利用定时器产生时…...

uniapp微信小程序视频实时流+pc端预览方案

方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度​WebSocket图片帧​定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐​RTMP推流​TRTC/即构SDK推流❌ 付费方案 &#xff08;部分有免费额度&#x…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云

目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

如何在网页里填写 PDF 表格?

有时候&#xff0c;你可能希望用户能在你的网站上填写 PDF 表单。然而&#xff0c;这件事并不简单&#xff0c;因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件&#xff0c;但原生并不支持编辑或填写它们。更糟的是&#xff0c;如果你想收集表单数据&#xff…...