嵌入式软件系统设计中的正交性分析..docVIP

嵌入式软件系统设计中的正交性分析..doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式软件系统设计中的正交性分析.

嵌入式软件系统设计中的正交性分析 嵌入式软件系统设计领域存在“正交”的思想。本文结合实际项目经验,总结了软件系统正交化的方法,同时较全面地分析了正交性给嵌入式软件设计带来的诸多方便,最后回顾“正交”思想对不同自然科学领域的积极影响与启发。 关键词? 嵌入式软件设计? 正交性? 小波 1? 小波漫谈   小波变换是20世纪最辉煌的科学成就之一,已经广泛应用于信号处理、图像分析、非线性科学、地球科学、音乐雷达、CT成像、地震勘探、天体识别、量子场论、机械故障诊断、分形等科技领域。   20世纪初,哈尔(Alfred Haar)对在函数空间中寻找一个与傅里叶类似的基非常感兴趣。1909年他最早发现和使用了小波,后来这被命名为哈尔小波(Haar wavelets)。20世纪 70年代,当时在法国石油公司工作的地球物理学家 Jean Morlet提出了小波变换 WT(Wavelet Transform)的概念。 进入 20世纪 80年代,法国科学家 Y.Meyer和他的同事开始研究系统的小波分析方法。1985年,Daubechies提出“正交小波基”,并构造具有紧支撑的光滑小波,以及随后Mallat提出的多分辨分析及快速小波变换,将小波研究推向高潮。小波分析己经成为目前发展最快和最引入注目的学科之一,几乎涉及信息领域的所有学科。   为何“正交小波基”与多分辨分析的提出成为小波分析发展史中的重大突破成就?主要原因之一是:变换系数没有冗余,能够将信号分解成互不影响的正交子信号,这样就可以根据需求方便地对所需特征的子信号进行分析,从而很好地反映信号的细节。 2? 嵌入式软件系统设计的正交性   其实,在软件系统设计领域同样或多或少存在“正交”的思想。一个常被引用的模式是Smalltalk编程语言(Krasner和Pope,1988)的模型视图控制器(ModelViewController)框架。该模式强制性地将软件系统的输入、处理和输出分开,形成数据模型、视图、控制器三大模块,如图1所示。图中“数据模型”包括程序的设计部分,“视图”表示用户界面,“控制器”定义用户和视图的交互方式。 图1? 模型视图控制器框架   其中每部分都是一个独立的对象,每个对象有自己处理数据的规则。这种功能的分离恰巧促成各个模块的正交性、减少它们之间的冗余,因此也使该框架成为应用最为广泛的模式之一。 2.1? 设计正交嵌入式软件系统   毫无疑问,正交的思想使得系统设计更加清晰和方便。那么如何才能更好地使嵌入式软件系统具有“正交性”呢? (1) ?设计具有正交性的系统体系结构   进行系统设计首先要进行系统的体系结构设计。系统的宏观设计同样也体现正交性思想,如图2所示。 图2? 系统体系结构   其中,底层驱动与RTOS是唯一与系统硬件相联系的模块,直接负责与硬件打交道,对硬件进行管理与控制,并为其上层模块提供所需的驱动支持;调度程序在RTOS支持下,根据系统需求对不同的任务模块进行实时调度与管理,确保所有任务能顺利、均衡地执行;最上层的任务模块具有不同的功能,以满足用户需求,它们各自独立、正交、不存在冗余,同时提供相应数据接口,以便与其他模块通信,形成有机整体。   整个系统体系结构同样体现了正交思想,各个层的不同模块负责相互独立、正交的任务。从垂直角度看上去,该体系结构同正交小波一样,可以用多尺度空间思想表示,如图3所示。越核心的地方,功能轮廓越粗略;越到外层,越体现细节、越贴近用户需求。 图3? 多尺度嵌入式软件体系结构 (2) ?保持模块间的松耦合   划分软件模块时很重要的一个原则是:尽可能地保证各模块间的松耦合和模块内部的高聚合。这实际上就实现了系统的正交化,减少了模块间的冗余与关联。理想的系统结构呈树状,如图4所示。 图4? 嵌入式系统的理想树状结构   整个系统呈树状结构,模块间的连接只能存在上下级之间的调用关系,不能有同级模块之间的横向关系,即不能出现网状结构或交叉调用关系。   如图4所示,通过调用I2C总线读写子模块可以实现I2C一主多从通信子模块以及RTC和EEPROM的读写子模块,但是这些子模块之间彼此不能互相调用。所以,当系统对EEPROM没有需求时,可以方便地将EEPROM读写子模块移除,而不会影响到其他模块。 (3)? 保持任务间的松耦合   嵌入式系统中常常会用到RTOS,根据系统需求确定不同的任务以及任务执行的频率或次序。在满足需求的前提下,尽可能地保证每个任务有固定的执行周期,因为这样可以让任务按照既定频率执行,减少任务间的通信和调用,同时也增强了系统的可预见性。   例如,系统SPI通信解析任务(即ProcSPI任务)的执行频率为10 Hz,为了保证通信正常,需要一个任务实时检测SPI通信是否出现故障(即FaultSP

文档评论(0)

sdgr + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档