BSW模块在多核和安全系统中的分配

原创 汽车电子与软件 2023-11-16 09:09


问题背景


随着汽车电子系统日益复杂,微控制器变得越来越强大,通常集成多个内核。这就需要在软件架构层面考虑如何在多个内核之间分配基本软件(BSW)。AUTOSAR 作为汽车电子软件的重要标准,也需要支持 BSW 在多核环境下的分配。

本文主要讨论在 AUTOSAR 系统中如何将 BSW 模块分配到不同的分区(Partition)和内核。主要解决了以下问题:

  • 如何修改 BSW 模块以支持多核并行执行
  • 如何配置将 BSW 模块分配到不同分区
  • MCAL(微控制器抽象层)模块的多核支持方式
  • 通信栈(Com-Stack)的分配方案
  • 加密服务(Crypto-Stack)的分配方案
  • 在安全关键系统中进行 BSW 分配的方式

相比单核系统,多核 BSW 分配需要解决的主要问题是:

  • 并行执行带来的数据一致性问题
  • 跨分区调用的内存访问权限问题
  • 如何分配核心的硬件资源访问权
  • 启动/关闭时对安全性的影响
  • 由分区引入的新的错误场景

AUTOSAR 提供了一系列机制来解决这些问题,支持高效、安全的 BSW 多核分配。

BSW 在多核系统中的分配


支持的分配场景



AUTOSAR 支持将 BSW 功能相关的模块分配到不同的分区,这既可以提升性能,也可以增强安全性。每种功能集群包含一组相关的 BSW 模块,可以包含通信、存储、IO、看门狗等等。同一类型的功能集群可以存在于多个分区中。


为支持分区分配,BSW 模块实体分为主模块和从模块,可以分配到不同分区中,主模块与从模块通过非标准化的 AUTOSAR 接口进行跨分区通信。
AUTOSAR 支持下列分配场景:

将 BSW 功能集群分配到一个分区,提高性能
将 BSW 功能集群的子集分配到多个分区,提高并发性
可以将主从模块实体分配到多个分区


性能优化场景



通过将 BSW 模块分配到多个分区和内核,可以提升系统性能,减少资源占用。主要的性能优化场景包括:

将通信相关的模块集群分配到一个内核,将 I/O 相关的模块集群分配到另一个内核。

如果硬件资源只能被一个内核访问,则将对应的 BSW 用户、服务和驱动都部署在该内核上可以提高性能。

实现多个通信集群之间的信号网关功能,需要在不同内核上同步不同的通信模块。


技术实现概览



AUTOSAR 定义了一些新概念,并扩展了部分模块,来支持多核BSW分配:

BSW 功能集群:一组功能相关的 BSW 模块,包含通信、存储、IO、看门狗等模块组。

分区间通信:使用调度器(SchM)提供的函数实现跨分区调用。

服务执行定位:通过事件到任务的映射来确定服务执行的分区。

主从模块:将模块拆分为主模块和从模块,分配到不同分区并通过非标准化接口通信,如下图所示:


要点是,模块之间的接口保持不变,分区分配引起的变化主要内藏在模块内部。

BSW 模块的并行执行



为支持多核并行执行,BSW 模块需要实现以下机制:

基于核 ID 进行执行代码,实现定制的核相关行为。
使用主从模块设计模式,主模块负责协调从模块。
使用 SchM 提供的跨分区函数实现模块间通信。
在无内存保护的系统中,允许直接跨分区调用,但需要用互斥区保护共享数据。
每个分区使用本地的驱动访问硬件资源


BSW 分区配置



为管理分区中的 BSW 模块,需要进行如下配置:

为每个 BSW 分区配置一个 OsApplication。
在 EcuC 中配置分区以及模块到分区的映射。
为每个 BSW 分区单独配置 BswM。
每个内核一个 EcuM 实例。


跨分区调用处理



当 BSW 模块分配到不同分区后,最重要的问题是如何处理跨分区调用。主要的处理手段包括:

使用激活 Task 或设置 Event 的方式,转至被调用分区执行实际调用。
调用方使用 CallTrustedFunction 进入被调用分区。
若被调用函数不访问本地数据,则可直接调用。
参数在分区间传递需要使用复制或特殊硬件机制来保证无干扰。


启动、关闭和睡眠/唤醒处理



在启动阶段,内存保护是未启用的,此时需要注意避免重要数据被覆盖。
在关闭阶段,内存保护已经启用,可以检测问题。
睡眠和唤醒处理也需要考虑安全需求。


错误处理



引入分区后,一些新的错误场景需要检测和处理:

分区内代码引发的内存错误。
分区内代码执行超时引起的定时错误。
尝试访问没有权限的硬件资源。
可以配置分区延迟上报的时间,避免过早引发系统重启。

MCAL及协议栈分配



MCAL 模块的多核支持




AUTOSAR 定义了 5 种多核支持类型,用于指明 MCAL 模块的多核处理方式:

Type I:MCAL 模块仅在单核上可用,不可全局使用,如 FLS、FEE 模块
Type II:MCAL 模块可按核执行,作用于独立的硬件元素,如 CAN、FlexRay等
Type III:可作用于全局可用的硬件元素,如 Dio Driver
Type IV:可在任何核上使用模块的接口,但仅通过一个核来访问映射元素,如 ADC、PWM、ICU 和 OCU
Type V:可在任何核上使用模块的接口,通过相应的核单独访问可映射元素

不同类型采用不同的资源分离策略,例如硬件级分离或软件级互斥保护。
各类 MCAL 模块可以分配为上述 5 种类型中的一种,以指明其多核支持方式。配合多核类型,开发者需要定义可映射的硬件元素,以及元素到内核的映射关系,作为多核支持的基础。


通信协议栈分配



通信栈(Com-Stack)可以分配到不同的分区中,以提高负载分配效率。分配方式包括:

根据网络类型,将 I-PDU 分配到不同的 MainFunction 中。
PduR 负责处理不同网络之间的分区通信。
状态、模式和网络管理由 ComM和Nm 集中处理。


加密服务分配



加密服务栈(Crypto-Stack)也可以分配到不同分区中,每个分区部署一个 MainFunction。Csm 模块与 SecOC 模块需要分配到同一分区,避免分区切换开销。

为处理新鲜度值,可以采用如下手段:

保留一个跨分区的新鲜度管理 SWC
每个分区一个新鲜度 SWC
使用 SecOC 的可配置 C 语言 API

安全关键系统中的 BSW 分配


概述



AUTOSAR 支持通过分区隔离来构建安全关键系统。最高 ASIL 级别的 BSW 模块被放入专用分区,低 ASIL 级别的模块放入公共分区,从而最小化软件开发的代码量。

AUTOSAR 安全分配的主要机制包括:

使用多个分区,进行空间隔离。
对执行实体进行监控,防止阻塞或顺序错误。
端到端保护,避免通信数据被修改。
特定模块提供额外的安全机制。


跨分区调用



分区调用需要检查是否符合 Safety 要求。可以使用 Stub 函数封装被调用的功能,处理分区切换问题。

具体来说,分区调用可以有如下情况:

QM 调用 ASIL:使用 Stub 函数进入 ASIL 分区,如下图所示。

ASIL 调用 QM:使用包装函数进入QM 分区,如下图所示。

ASIL 调用 ASIL:类似地需要 Stub 函数或包装函数。
参数传递需要使用复制或特殊硬件机制来保证安全。

启动/关闭和睡眠/唤醒



启动阶段需要注意数据隔离。
关闭时可以检测隔离问题。
睡眠/唤醒处理也需要考虑安全需求。


错误处理



分区调用可能产生新的错误场景,需要检测内存溢出、超时等问题。

可以配置分区的 Timing 保护,避免过早重启。


性能考量



分区隔离会增加调用开销。可以通过减少分区数量、优化模块映射和 calls 来获得最佳平衡。


未来的 AUTOSAR 版本


未来 AUTOSAR 可能进行如下改进:

标准化 BSW 功能集群及其接口,如下图所示。

支持更高效的分区间调用
支持用例分区提升安全性
等等

注意事项



BSW模块设计



对共享数据的访问需要加互斥保护
调用其他模块接口前需获取分区 ID,根据 ID 区分主从代码
主模块负责协调从模块,可监控和过滤请求
主从模块间使用非标准化接口通信
多核场景下接口需要支持异步调用


BSW配置



每个 BSW 分区需配置一个 OS 应用程序

需要配置 BSW 模块到分区的映射
需要配置每个分区的 BswM 实例
需要配置核心的 EcuM 实例
需要配置分区的 BSW 启动/关闭顺序


跨分区调用



使用激活任务或事件切换调用上下文
调用方使用 CallTrustedFunction 进入被调方分区
检查直接调用是否安全
小心处理参数传递的内存访问权限


安全系统相关



启动阶段内存保护尚未启动,需谨慎操作
最小化启动前执行的代码量
安全相关机制只在必要分区上实现
检查分区调用是否被符合 Safety 要求
准确配置调用的 Stub 函数或包装函数
谨慎处理睡眠唤醒的安全需求
检测由分区引入的新错误场景
平衡分区数量和性能

后语



本系列图文已上架至 "搞一下汽车电子"图文板块,建议结合中文标准一起观看,中文标准观看方式:

电脑:Edge/Safari 浏览器输入:gyxqcdz.com (搞一下汽车电子首拼),资料板块直接搜。

手机:各大应用商店下载 "搞一下汽车电子"APP,资料板块直接搜。


汽车电子与软件 主要介绍汽车电子软件设计相关内容,每天分享一篇技术文章!
评论 (0)
  • 案例概况在丹麦哥本哈根,西门子工程师们成功完成了一项高安全设施的数据集成项目。他们利用宏集Cogent DataHub软件,将高安全设施内的设备和仪器与远程监控位置连接起来,让技术人员能够在不违反安全规定、不引入未经授权人员的情况下,远程操作所需设备。突破OPC 服务器的远程连接难题该项目最初看似是一个常规的 OPC 应用:目标是将高安全性设施中的冷水机(chiller)设备及其 OPC DA 服务器,与远程监控站的两套 SCADA 系统(作为 OPC DA 客户端)连接起来。然而,在实际实施过
    宏集科技 2025-03-27 13:20 109浏览
  • 在嵌入式语音系统的开发过程中,广州唯创电子推出的WT588系列语音芯片凭借其优异的音质表现和灵活的编程特性,广泛应用于智能终端、工业控制、消费电子等领域。作为该系列芯片的关键状态指示信号,BUSY引脚的设计处理直接影响着系统交互的可靠性和功能拓展性。本文将从电路原理、应用场景、设计策略三个维度,深入解析BUSY引脚的技术特性及其工程实践要点。一、BUSY引脚工作原理与信号特性1.1 电气参数电平标准:输出3.3V TTL电平(与VDD同源)驱动能力:典型值±8mA(可直接驱动LED)响应延迟:语
    广州唯创电子 2025-03-26 09:26 206浏览
  • 长期以来,智能家居对于大众家庭而言就像空中楼阁一般,华而不实,更有甚者,还将智能家居认定为资本家的营销游戏。商家们举着“智慧家居、智慧办公”的口号,将原本价格亲民、能用几十年的家电器具包装成为了高档商品,而消费者们最终得到的却是家居设备之间缺乏互操作性、不同品牌生态之间互不兼容的碎片化体验。这种早期的生态割裂现象致使消费者们对智能家居兴趣缺失,也造就了“智能家居无用论”的刻板印象。然而,自Matter协议发布之后,“命运的齿轮”开始转动,智能家居中的生态割裂现象与品牌生态之间的隔阂正被基于IP架
    华普微HOPERF 2025-03-27 09:46 109浏览
  •       知识产权保护对工程师的双向影响      正向的激励,保护了工程师的创新成果与权益,给企业带来了知识产权方面的收益,企业的创新和发明大都是工程师的劳动成果,他们的职务发明应当受到奖励和保护,是企业发展的重要源泉。专利同时也成了工程师职称评定的指标之一,专利体现了工程师的创新能力,在求职、竞聘技术岗位或参与重大项目时,专利证书能显著增强个人竞争力。专利将工程师的创意转化为受法律保护的“无形资产”,避免技术成果被他人抄袭或无偿使
    广州铁金刚 2025-03-25 11:48 181浏览
  • 文/陈昊编辑/cc孙聪颖‍2025 年,作为中国实施制造强国战略第一个十年计划的关键里程碑,被赋予了极为重大的意义。两会政府工作报告清晰且坚定地指出,要全力加速新质生产力的发展进程,推动传统产业全方位向高端化、智能化与绿色化转型。基于此,有代表敏锐提议,中国制造应从前沿技术的应用切入,逐步拓展至产业生态的构建,最终延伸到提升用户体验的维度,打出独树一帜、具有鲜明特色的发展牌。正是在这样至关重要的时代背景之下,于 AWE 2025(中国家电及消费电子博览会)这一备受瞩目的舞台上,高端厨房的中国方案
    华尔街科技眼 2025-03-25 16:10 85浏览
  • WT588F02B是广州唯创电子推出的一款高性能语音芯片,广泛应用于智能家电、安防设备、玩具等领域。然而,在实际开发中,用户可能会遇到烧录失败的问题,导致项目进度受阻。本文将从下载连线、文件容量、线路长度三大核心因素出发,深入分析烧录失败的原因并提供系统化的解决方案。一、检查下载器与芯片的物理连接问题表现烧录时提示"连接超时"或"设备未响应",或烧录进度条卡顿后报错。原因解析接口错位:WT588F02B采用SPI/UART双模通信,若下载器引脚定义与芯片引脚未严格对应(如TXD/RXD交叉错误)
    广州唯创电子 2025-03-26 09:05 146浏览
  • 在智能终端设备开发中,语音芯片与功放电路的配合直接影响音质表现。广州唯创电子的WTN6、WT588F等系列芯片虽功能强大,但若硬件设计不当,可能导致输出声音模糊、杂音明显。本文将以WTN6与WT588F系列为例,解析音质劣化的常见原因及解决方法,帮助开发者实现清晰纯净的语音输出。一、声音不清晰的典型表现与核心原因当语音芯片输出的音频信号存在以下问题时,需针对性排查:背景杂音:持续的“沙沙”声或高频啸叫,通常由信号干扰或滤波不足导致。语音失真:声音断断续续或含混不清,可能与信号幅度不匹配或功放参数
    广州唯创电子 2025-03-25 09:32 112浏览
  • 在智能语音产品的开发过程中,麦克风阵列的选型直接决定了用户体验的优劣。广州唯创电子提供的单麦克风与双麦克风解决方案,为不同场景下的语音交互需求提供了灵活选择。本文将深入解析两种方案的性能差异、适用场景及工程实现要点,为开发者提供系统化的设计决策依据。一、基础参数对比分析维度单麦克风方案双麦克风方案BOM成本¥1.2-2.5元¥4.8-6.5元信噪比(1m)58-62dB65-68dB拾音角度全向360°波束成形±30°功耗8mW@3.3V15mW@3.3V典型响应延迟120ms80ms二、技术原
    广州唯创电子 2025-03-27 09:23 165浏览
  • 在智慧城市领域中,当一个智慧路灯项目因信号盲区而被迫增设数百个网关时,当一个传感器网络因入网设备数量爆增而导致系统通信失效时,当一个智慧交通系统因基站故障而导致交通瘫痪时,星型网络拓扑与蜂窝网络拓扑在构建广覆盖与高节点数物联网网络时的局限性便愈发凸显,行业内亟需一种更高效、可靠与稳定的组网技术以满足构建智慧城市海量IoT网络节点的需求。星型网络的无线信号覆盖范围高度依赖网关的部署密度,同时单一网关的承载设备数量有限,难以支撑海量IoT网络节点的城市物联系统;而蜂窝网络的无线信号覆盖范围同样高度依
    华普微HOPERF 2025-03-24 17:00 237浏览
  • 在电子设计中,电磁兼容性(EMC)是确保设备既能抵御外部电磁干扰(EMI),又不会对自身或周围环境产生过量电磁辐射的关键。电容器、电感和磁珠作为三大核心元件,通过不同的机制协同作用,有效抑制电磁干扰。以下是其原理和应用场景的详细解析:1. 电容器:高频噪声的“吸尘器”作用原理:电容器通过“通高频、阻低频”的特性,为高频噪声提供低阻抗路径到地,形成滤波效果。例如,在电源和地之间并联电容,可吸收电源中的高频纹波和瞬态干扰。关键应用场景:电源去耦:在IC电源引脚附近放置0.1μF陶瓷电容,滤除数字电路
    时源芯微 2025-03-27 11:19 163浏览
  • 六西格玛首先是作为一个量度质量水平的指标,它代表了近乎完美的质量的水平。如果你每天都吃一个苹果,有一间水果店的老板跟你说,他们所卖的苹果,质量达到六西格玛水平,换言之,他们每卖一百万个苹果,只会有3.4个是坏的。你算了一下,发现你如果要从这个店里买到一个坏苹果,需要805年。你会还会选择其他店吗?首先发明六西格玛这个词的人——比尔·史密斯(Bill Smith)他是摩托罗拉(Motorloa)的工程师,在追求这个近乎完美的质量水平的时候,发明了一套方法模型,开始时是MAIC,后来慢慢演变成DMA
    优思学院 2025-03-27 11:47 151浏览
  • 在当今竞争激烈的工业环境中,效率和响应速度已成为企业制胜的关键。为了满足这一需求,我们隆重推出宏集Panorama COOX,这是Panorama Suite中首款集成的制造执行系统(MES)产品。这一创新产品将Panorama平台升级为全面的工业4.0解决方案,融合了工业SCADA和MES技术的双重优势,帮助企业实现生产效率和运营能力的全面提升。深度融合SCADA与MES,开启工业新纪元宏集Panorama COOX的诞生,源于我们对创新和卓越运营的不懈追求。通过战略性收购法国知名MES领域专
    宏集科技 2025-03-27 13:22 192浏览
  • 家电,在人们的日常生活中扮演着不可或缺的角色,也是提升人们幸福感的重要组成部分,那你了解家电的发展史吗?#70年代结婚流行“四大件”:手表、自行车、缝纫机,收音机,合成“三转一响”。#80年代随着改革开放的深化,中国经济开始飞速发展,黑白电视机、冰箱、洗衣机这“新三件”,成为了人们对生活的新诉求。#90年代彩电、冰箱、全自动洗衣机开始大量进入普通家庭,快速全面普及,90年代末,家电产品实现了从奢侈品到必需品的转变。#00年代至今00年代,随着人们追求高品质生活的愿望,常用的电视机、洗衣机等已经远
    启英AI平台 2025-03-25 14:12 90浏览
  • ​2025年3月27日​,贞光科技授权代理品牌紫光同芯正式发布新一代汽车安全芯片T97-415E。作为T97-315E的迭代升级产品,该芯片以大容量存储、全球化合规认证、双SPI接口协同为核心突破,直击智能网联汽车"多场景安全并行"与"出口合规"两大行业痛点,助力车企抢占智能驾驶与全球化市场双赛道。行业趋势锚定:三大升级回应智能化浪潮1. 大容量存储:破解车联网多任务瓶颈随着​车机功能泛在化​(数字钥匙、OTA、T-BOX等安全服务集成),传统安全芯片面临存储资源挤占难题。T97-415E创新性
    贞光科技 2025-03-27 13:50 148浏览
  • 汽车导航系统市场及应用环境参照调研机构GII的研究报告中的市场预测,全球汽车导航系统市场预计将于 2030年达到472亿美元的市场规模,而2024年至2030年的年复合成长率则为可观的6.7%。汽车导航系统无疑已成为智能汽车不可或缺的重要功能之一。随着人们在日常生活中对汽车导航功能的日渐依赖,一旦出现定位不准确或地图错误等问题,就可能导致车主开错路线,平白浪费更多行车时间,不仅造成行车不便,甚或可能引发交通事故的发生。有鉴于此,如果想要提供消费者完善的使用者体验,在车辆开发阶段便针对汽车导航功能
    百佳泰测试实验室 2025-03-27 14:51 191浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦