当前位置:首页 > 汽车电子 > 糖果Autosar
[导读]点 击 上 方 蓝 字     关 注 我 们 AUTOSAR BSW模块越来越多,需求数量也呈现指数型增加,并且模块的复杂性很大, 一般的传统设计已经很难满足,通过MBD中提供的方法可以满足AUTOSAR BSW的开发。如通过MBD提供了以下方法满足AUTOSAR 模块的特点: 采用变体子

   



AUTOSAR BSW模块越来越多,需求数量也呈现指数型增加,并且模块的复杂性很大, 一般的传统设计已经很难满足,通过MBD中提供的方法可以满足AUTOSAR BSW的开发。如通过MBD提供了以下方法满足AUTOSAR 模块的特点:

  • 采用变体子系统设置并生成AUTOSAR预编译配置方法
  • 通过Subsytem实现Autosar提供的标准接口
  • 通过库和引用子系统的方法实现代码块的复用
  • 通过仿真和测试功能实现在线的测试和主要功能的早期验证(冒烟测试)
  • 提供函数组件去封装功能来降低圈复杂度

关于降低圈复杂度(代码对象中线性无关路径的数量),如下图所示,主要有两种方法:

程序块的重构(代码的局部优化)

  • 提炼函数 你有一段代码可以被组织在一起并独立出来。将这段代码放进一个独立函数中,并将函数名称解释该函数的用途。
  • 分解条件表达式 你有一个复杂的条件(if -else)语句。从if、else段落中分别提炼出独立函数。
  • 合并条件表达式 你有一系列条件测试,都得到相同结果。将这些测试合并为一个条件表达式,并将这个条件表达式提炼成为一个独立函数。
  • 合并重复的条件片段 在条件表达式的每个分支上有着相同的一段代码。将这段重复的代码搬移到条件表达式之外。
  • 移除控制标记 在一系列布尔表达式中,某个变量带有“控制标记”的作用。以break语句或return语句取代控制标记。
  • Case的重构(整体对代码结构进行优化)

case重构

对于一个switch有几十个case的情况,其圈复杂度往往上百,程序块重构显然已不能解决其本质复杂度。如果要降低其圈复杂度,必然需要对代码进行重新设计。 C语言的switch/case语言特性本质是描述一种查表逻辑,其中表结构和表的控制(即查表)都通过软件来表达。表通过代码来描述,这显然不是一种最佳的实现方式。我们需要做的就是,避免控制中的复杂性,将精力集中在数据的组织上,以反映所模拟世界的真实结构,并将数据与控制进行分离。 表的设计由两部分组成:对象(表项)的抽象和表的构建。对象的抽象涉及对象如何抽象,对象粒度如何划分,对象间的关系如何设计,这些问题与具体业务逻辑强相关。表的构建方法可分为编译期构建、链接期构建和运行时构建。3种构建方法各有所长和不足,可根据自身需要进行选择。

下面详细介绍一下AUTOSAR BSW开发遇到的问题及MBD开发的优势:



往期链接:

UDS诊断看这篇就够了,吐血整理

AUTOSAR诊断通信栈简介

Diagnosis about DEM module

Memory 的介绍1

功能安全之看门狗WDGM 介绍

AUTOSAR ASILD级别安全软件模块的安全机制介绍

基于Autosar软件的功能安全开发的介绍

AUTOSAR模式管理经验总结

AURIX GTM 输出模块(TOM)

使用AURIX TOM模块生成交流电机的PWM驱动

AUTOSAR OS分析概述

OS-Protection   -Timing Protection

Autosar OS (2)

Autosar OS 介绍


关注微信公众号『糖果Autosar』,后台回复“资料”查看更多内容,回复“加群”加入汽车电子与AUTOSAR技术交流群。

                                                

你点的每个 在看 ,我都认真当成了喜欢

免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭