在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!) 创芯人才网--重磅上线啦!
查看: 4299|回复: 6

[转贴] 10分钟搞定DSP开发

[复制链接]
发表于 2010-6-25 07:09:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
基于模型设计的简介与预计的内容
第一、简介
在目前的市场上,已经很难找到一款不带有嵌入式控制器件的电子、机电产品了,含有嵌入式系统的产品已深入到了我们工作、生活的方方面面。同时,人们对于产品的安全性、实时性、可操作性、特定功能等的要求也越来越高,这就大大增加了嵌入式系统的复杂性和开发难度。
为了在日趋激烈的市场竞争中占据有利地位,开发出高质量的产品,传统的项目开发方法已很难满足这些需求。这是因为,传统项目开发的方法一般分为四个步骤:
① 需求分析与技术规范阶段:一般用纸质文档或电子word文档写成,系统工程师团队以此进行概念和算法研究,评估技术规范的可行性。对于厚厚的技术文档,每个系统工程师对需求和技术规范的理解难免存在偏差。NASA的研究报告指出:“在需求分析阶段产生的错误占整个开发错误的50%以上”,这给后期的项目开发带来了诸多隐患。
② 设计阶段:硬件开发工程师团队根据系统工程师的评估报告,设计制作原型样机(如汽车、航空航天器、电路板等),项目的前期投入巨大、开发周期长,并且不能保证所制作的原型样机一定能满足技术规范要求的技术指标。
③ 实现阶段:软件开发工程师团队根据需求与技术规范,在原型样机上,手工编写C代码或汇编代码,实现技术规范所要求的技术指标。这一阶段需要精通软件的编程人员,花费大量时间编制程序、查错、调试、验证。这明显增加了工作量,延长了研制周期。此外,手工编制的代码良莠不齐,降低了软件运行的可靠度,增加了代码错误的可能性,给新产品上市带来风险。
④ 测试与验证阶段:原型样机制造完成后,才能对产品进行测试与验证,只要上述任何一个过程出现偏差都会导致产品开发的失败,这也是传统项目开发最大的弊病。因此,传统的项目开发方法难免重复多次才能成功,开发风险巨大。

为了解决这些问题,工程师必须找到一种以更快速度、更有效率的开发产品的方法。基于模型的设计就是解决该问题的一种选择。它始于20世纪90年代初的汽车制造和航空航天工业。这些行业需要使用大量的微处理器单元,因此工程师们最先发现了采用建模与仿真的方法来开发嵌入式系统的巨大优势。到了90年代中期,控制算法仿真技术的发展催生了自动代码生成技术。模型仿真和自动代码生成技术在这些行业得到了成功应用,人们清楚地认识到了它在嵌入式系统开发中的经济和高效。这样,基于模型的设计为工程师们提供了一种通用的开发与测试平台,使具有不同工程背景的工程师之间建立起更好的联系,使开发高集成度的复杂系统成为可能。
目前国际上流行的基于模型设计的软件主要有SCADE和MATLAB,它们都成功的应用于大型项目的开发上,例如,欧洲的空客380、美国的GM混合动力车、诺-马公司的联合攻击机等项目。由于MATLAB已经成为一种近乎完美的高度集成化的开放式开发平台,在科学计算与建模方面处于不可替代的领先地位,加之拥有国内众多的用户,因此,本书选用MATLAB软件为例来讲述基于模型设计的方法。
Mathworks公司的Simulink / Stateflow / Embedded MATLAB等工具使得工程师可以在一个可视化的交互开发测试平台上,进行基于模型的设计,工程师还可以利用直观的模块图对系统模型和子系统设计进行可视化处理。
基于模型的设计对应传统的设计方法同样分为四个步骤:
① 可执行、可跟踪的技术规范
在基于模型的设计方法中,系统工程师首先要建立一个系统模型,即通过数学模型来精确、无歧义地描述用户的需求,创建一个可执行、可跟踪的技术规范。工程师可以通过这个系统模型,动态地确认系统性能。
这相对于传统的纸质和电子word文档描述的需求与技术规范有明显的优势。它使得开发团队中的每个成员都能够无歧义地理解并运行该模型,从而可以更加专注于开发主要模型的各个部分,不会因理解的不同造成需求的丢失、冗余或冲突。
② 生成定点模型
系统模型与需求之间可建立双向链接,在整个开发过程中,软件工程师可以对模型进行需求追踪和测试,将产品的缺点暴露在产品开发的初期。根据具体的嵌入式器件和实现条件,对系统模型进行细化与功能重分区,此后重新进行系统测试、设计测试和模型助手测试,验证是否满足需求与技术规范,判断是否还存在缺失的需求,验证是否符合特殊的行业标准(如DO-178B、IEC-61508、MAAB等)。之后再对模型作定点转换,形成简洁、高效的定点模型。
③ 嵌入式代码的自动生成
Mathworks公司的Real-Time Workshop® Embedded Coder™可以将Simulink / Stateflow中的模型自动转换为嵌入式C代码,大大降低嵌入式系统的开发门槛,毕竟不是每个工程师都是编写代码的高手。开发人员可以在Simulink / Stateflow、Embedded MATLAB中建立系统模型、构思解决方案,然后使用RTW-EC自动生成优化的、可移植的、自定义的产品级C代码,并根据特定的目标配置,自动生成嵌入式系统实时应用程序。这就缩短了开发周期,同时避免了人为引入的错误。
④ 连续的测试和验证
基于模型的设计在整个设计过程中都在不断地进行测试和验证,工程师利用测试用例追踪系统级模型和需求,检测设计变更导致的系统输出变化,并快速追踪到变更的来源,通过测试用例还能够了解系统模型的功能覆盖度。
对于嵌入式系统,还需测试其实时性。工程师可以使用硬件在环测试,检测嵌入式代码的实时性。通过测试,收集实时数据、修改代码参数。硬件在环检测能确保在开发早期就完成嵌入式软件的测试。在系统整合时,嵌入式软件测试就可以比传统方法检测得更彻底、更全面,这样可以及早地发现问题,大大降低了解决问题的成本。

本书分为三个部分,第一章至第四章为第一部分,主要介绍了Simulink / Stateflow模型的建立、调试与验证,是基于模型设计的基础。
第一章主要包括:MATLAB部分新功能、基于cell的M-code快速编写、M-Lint实时代码验证器的使用、基于R2010a的Embedded MATLAB编程规范等;
第二章主要包括:Simulink建模与调试、创建模型测试用例、模型的验证与覆盖度分析、基于采样与基于帧的信号分析等;
第三章主要包括:Stateflow建模与调试、简单的应用实例等;
第四章设备驱动模块的创建,主要包括:编写S-function(C MEX S-function、level-2 M S-funcion)、生成S-function builder用户模块、编写Embedded MATLAB模块、利用代码继承工具集成现存C代码到Simulink模型的方法、编写TLC文件等。
第五章为第二部分,介绍了CCS 3.3集成开发环境的使用、讨论了嵌入式代码的快速生成、MATLAB与CCS的交互式开发、8051单片机、ARM7等的嵌入式代码快速生成,传统滤波器设计与基于模型设计的比较等。
第六章为第三部分,包括:传统项目开发方法与基于模型设计的比较;DO-178b航空电子规范的简介、符合DO-178b规范的基于模型设计工作流程;需求与模型间的双向跟踪、模型的系统测试与验证、模型的设计测试、模型覆盖度分析;浮点模型到定点模型的转换;代码的自动生成;生成代码的验证;模型与生成代码的双向跟踪;代码的实时性分析;硬件在环测试等。
本书从筹划到完成经历了三年的时间,得到了两家公司的资助(TI和合众达),书中使用的实验设备大多由他们提供,在此表示感谢。撰写过程中,作者阅读了近10万页的外文资料和技术文档,做了大量的验证实验,有些例子是作者开发实例的总结,可以直接用于生产实践。
书中很多内容为作者所著,不少内容比较新颖,也是首次在国内的公开出版物中出现。由于基于模型的设计涉及的知识太多,无法在短短的500多页的书中得到充分论述,加之时间紧、作者的水平有限,书中的错误或遗漏在所难免,请读者批评指正,或许本书只能起到从中国制造到中国创造的抛砖引玉的效果。欢迎读者参加对基于模型设计技术的讨论。
                                                     作者 :平湖秋月
发表于 2010-6-26 15:04:26 | 显示全部楼层
xia look ok
发表于 2010-6-26 16:37:27 | 显示全部楼层
有这么神奇么?
发表于 2010-7-6 14:41:10 | 显示全部楼层
楼主很能扯啊
发表于 2013-11-22 00:24:05 | 显示全部楼层
http://www.ilovematlab.cn/forum.php?mod=viewthread&tid=263919
其实还有一种方法就是将SIMUlink中构建的架构直接下载到DSP中,这就是基于模型设计的概念.这个在国内还是比较新的东东!我看淘宝网上直接输入"基于模型设计"你就能发现有个三兄弟嵌入式的公司提供了这方面的视频教程.
222529kawxo17x7ma2pmo0.jpg
222529kawxo17x7ma2pmo0.jpg
发表于 2015-3-31 16:20:25 | 显示全部楼层
10分钟搞定DSP开发
发表于 2016-11-19 14:37:50 | 显示全部楼层
10分钟搞定DSP开发
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-19 20:51 , Processed in 0.049448 second(s), 12 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表