0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于基于模型设计的好处分析和介绍

MATLAB 来源:djl 2019-09-17 17:32 次阅读

嵌入式软件开发为什么要使用基于模型的设计?

对这个问题,最不希望听到的回答是:

因为GM在使用基于模型设计,因为BMW在使用基于模型设计,所以我们也要使用基于模型设计……

好吧,或许他们可以作为借鉴,但是我们是否认真想过:

基于模型的设计能给我们的开发带来什么样的好处?

弄清这个问题,是我们在后续有效使用基于模型设计开发嵌入式软件的前提。

这里我引用一下若干年前MathWorks公司CEO——Jack Little的说法,在嵌入式软件开发过程中,基于模型的设计至少可以给我们带来四个方面的好处:

1图形化设计

对于基于模型的设计来讲,图形化设计是天然的、固有的。图形化的优势,工程师们都非常清楚,明确、清晰、唯一,便于交流、便于维护,这也是为什么就算我们不用基于模型设计的方式开发软件,也需要在设计文档中画流程图、状态机的原因。

需要注意的是,我们需要把Simulink模型画到清晰、明确,便于交流、便于维护。

2早期验证

话说软件开发过程中,bug的引入难以避免。人非圣贤、孰能无过,引入bug不可怕,能否尽快发现bug对整个开发过程至关重要。这里提到“早期”,什么是“早期”?你某一个阶段的工作产品出来之后,紧跟着就要做验证工作。对于早期验证,以前的方式比较单一,通常我们使用评审的方式去实现最早期的验证,以至于Peer Review在很多公司的流程中被固化下来了,写完文档要评审,做完设计要评审,写完代码还要评审,写好测试用例也要评审。如果我们翻看一些软件工程的教材或者文献,大家对评审的评价非常高,因为在这个阶段每发现一个错误,都会给后续的开发过程带来很多便利,但遗憾的是,评审的效率通常不高。

关于基于模型设计的好处分析和介绍

使用基于模型设计去开发软件,除了评审,我们还有更高效的早期验证方式,包括Simulink模型本身固有的仿真,以及通过形式化方法工具对模型进行形式化的分析。

3代码的自动生成

自动生成代码通常是使用基于模型设计进行软件开发的工程师最容易关注的优势。代码都不用写了,“码农”从此跟我无关,还有什么比这事更美好的呢?确实,从开发效率来讲,这个环节,对于效率的提升,是无法量化的,原本需要一个月时间写完的代码,现在可能只要一个上午或者两个小时就可以搞定,谁帮我算一下工作效率提升了多少?不少人对代码生成的开发效率没有质疑,但对生成代码的代码效率却不够放心。这事,很多人都比过,SAE上也能找到这样的论文。通俗点讲,从效率上,生成的代码在各种效率上(RAMROM、执行时间等)不比大学毕业后工作了5年的工程师差。当然,遇到那种“写代码像写诗一样”的工程师,代码生成工具还是要甘拜下风的。不过,“写代码像写诗一样”的工程师我们又见过几人?

4文档自动化

对于文档,我说两点:

工程师大多不愿意写文档;

开发过程中文档又是不可缺少的。

有三个字足以证明上面两条,那就是“补文档”。在基于模型设计的开发过程中,我们可以通过软件读取模型中相关信息并自动创建文档,实现文档自动化。

上面提到了基于模型设计能给我们带来的好处,也正是因为基于模型的设计可以给我带来上述好处,所以我们才应该使用基于模型的设计。

除上述优势之外,软件规模的爆炸式增长也是使用基于模型的设计开发软件的一个重要原因。我想很多人都会有很深刻的体会,近年来软件规模在快速膨胀,各种机电产品的功能、性能大多通过软件的方式去实现、去提升。

NASA做过研究,汽车、航天器等产品的代码量这些年都在呈指数级增加,战斗机从1960年的F-4约8%的功能由软件实现到2000年的F-22约有80%的功能由软件实现,其他机电系统也差不多。软件规模的快速膨胀,给验证和实现都带来了很大困难。

原有的开发模式难以应对,新的开发模式必然会出现。即便是没有MathWorks、没有Simulink,也会有其他产品去实现基于模型的设计,这不是单单一个MathWorks能够推动的,而是技术发展到这一阶段的必然。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 自动化
    +关注

    关注

    29

    文章

    5566

    浏览量

    79259
  • 图形化
    +关注

    关注

    0

    文章

    56

    浏览量

    14208
收藏 人收藏

    评论

    相关推荐

    【「大模型启示录」阅读体验】营销领域大模型的应用

    今天跟随「大模型启示录」这本书,学习在营销领域应用大模型。 大模型通过分析大量的消费者数据,包括购买历史、浏览记录、社交媒体互动等,能够识别消费者的偏好和行为模式。这种
    发表于 12-24 12:48

    AI模型托管原理分析

    AI模型托管是指将训练好的AI模型部署在云端或边缘服务器上,由第三方平台提供模型运行、管理和优化等服务。以下,AI部落小编将对AI模型托管的原理进行详细
    的头像 发表于 11-07 09:33 161次阅读

    AI模型市场分析

    随着人工智能技术的快速发展,AI模型已成为全球科技竞争的新高地、未来产业的新赛道以及经济发展的新引擎。下面,AI部落小编分析了当前AI模型市场。
    的头像 发表于 11-01 09:51 153次阅读

    使用AI大模型进行数据分析的技巧

    使用AI大模型进行数据分析的技巧涉及多个方面,以下是一些关键的步骤和注意事项: 一、明确任务目标和需求 在使用AI大模型之前,首先要明确数据分析的任务目标,这将直接影响
    的头像 发表于 10-23 15:14 715次阅读

    使用IBIS模型进行时序分析

    电子发烧友网站提供《使用IBIS模型进行时序分析.pdf》资料免费下载
    发表于 10-21 10:00 0次下载
    使用IBIS<b class='flag-5'>模型</b>进行时序<b class='flag-5'>分析</b>

    求助,关于PFFB的设计问题,这样的设计会有什么好处和坏处?

    请教一下关于PFFB的设计问题,这样的设计会有什么好处和坏处?烦请解答谢谢
    发表于 10-16 06:52

    并联开关电源的好处和坏处

    并联开关电源是一种常见的电源管理技术,它在电子设备中广泛应用,尤其是在需要高效率和高稳定性的场合。以下是关于并联开关电源好处和坏处的分析好处 高效率 : 并联开关电源通常采用高频开
    的头像 发表于 10-09 16:01 588次阅读

    介绍FIR滤波模型的建立,分4个步骤

    本帖介绍FIR滤波模型的建立,分以下几个步骤: 选定滤波结构:低通、高通、带通、带阻; 选定合适的窗函数,常见的有hamming、hanning、blackman、ExactBlackman
    发表于 09-04 09:08

    【《大语言模型应用指南》阅读体验】+ 俯瞰全书

    的大语言模型设计技术人员阅读,主要包括大语言模型的优化方法、Agent系统调优以及模型的安全技术。 展望篇分析了大语言模型的发展前景,
    发表于 07-21 13:35

    【大语言模型:原理与工程实践】大语言模型的应用

    ,它通过抽象思考和逻辑推理,协助我们应对复杂的决策。 相应地,我们设计了两类任务来检验大语言模型的能力。一类是感性的、无需理性能力的任务,类似于人类的系统1,如情感分析和抽取式问答等。大语言模型在这
    发表于 05-07 17:21

    【大语言模型:原理与工程实践】探索《大语言模型原理与工程实践》2.0

    《大语言模型“原理与工程实践”》是关于大语言模型内在机理和应用实践的一次深入探索。作者不仅深入讨论了理论,还提供了丰富的实践案例,帮助读者理解如何将理论知识应用于解决实际问题。书中的案例分析
    发表于 05-07 10:30

    使用cube-AI分析模型时报错的原因有哪些?

    使用cube-AI分析模型时报错,该模型是pytorch的cnn转化成onnx ``` Neural Network Tools for STM32AI v1.7.0 (STM.ai v8.0.0-19389) INTER
    发表于 03-14 07:09

    SPICE中的热模型介绍

    降低性能至关重要。 在SPICE中,热模型可以采用不同的形式和复杂程度,从简单的等效热电阻网络到更复杂的有限元分析(FEA)模型。 热模型是一种专门用于在电子电路中进行热行为模拟的
    的头像 发表于 02-06 11:28 1086次阅读
    SPICE中的热<b class='flag-5'>模型</b><b class='flag-5'>介绍</b>

    GreenHills Software、HighTec、Synopsys、Tasking、Windriver的开发环境有什么好处吗?

    关于 GreenHills Software、HighTec、Synopsys、Tasking、Windriver 的开发环境有什么好处吗?它和 AURIX 开发工作室的区域在哪里?
    发表于 01-19 08:22

    使用仿真模型进行拓扑分析

    扩展建模技术,安森美(onsemi)使仿真精度进一步提升到更高的水平,此前我们为大家介绍了物理和可扩展仿真模型功能以及使用Cauer网络仿真热行为及评估各项因素对开关损耗的影响,本文将为大家带来使用物理和可扩展仿真模型进行拓扑
    的头像 发表于 01-05 10:04 949次阅读
    使用仿真<b class='flag-5'>模型</b>进行拓扑<b class='flag-5'>分析</b>