编辑:sx_songjm
2013-09-04
【摘要】精品学习网为您整理了环境设计论文:软件仿真环境设计,希望和您一起探讨!
内核与双进程
COACHV型是美国Zoran公司的一款数字信号处理器,拥有基于消息驱动的嵌入式系统的所有基本特质。其良好的体系结构平台完全满足实验教学需 要。平台的核心是可编程DSPRTOS内核,内核以面向状态(有限状态机)模型方法工作。系统启动时开启主进程(COACH进程)和用户进程(HCE进 程)。两个进程运行机制如图1所示。主进程维持硬件运转,执行机器指令,保持与用户进程的通信。 其实现细节被封装在固件系统里。用户进程实现人机交互,提供可视化人机界面,将用户操作解析成功能指令,调用特定的API函数以获得内核操作权限。与其他 嵌入式系统一样,COACH为上层开发者提供了一套功能完备的应用编程接口集。基于这分类细致,功能完备的API体系,用户进程得以驱动主机进程。
消息分类
对设计者 可见的用户进程是一个基于消息驱动的进程,消息分为两类。一类是系统消息,由主机进程在执行功能时发出,或者外围设备中断/定时器触发,属于进程被动接收 的消息。这类消息种类明确,协议固定。另一类是用户自定义消息,类似于MFC中自定义消息,DSP系统都预留了数量不等的用户自定义消息,该类消息的发送 方和响应方都是用户进程。
事件驱动及消息传递机制如图1所示。COACH进程和HCE进程各自有一个消息队列,硬件执行时需要与两进程通信时,将产生对应的事件,相应的消息 将存放在目标进程的消息队列里。HCE以调用API的方式间接访问COACH,而后者以事件消息来反馈前者。特别地,HCE可以给自身的消息队列发达消 息,即为自同步。
PC仿真设计原理
为实现设计代码在仿真平台和真实平台之间的无缝移植,仿真平台必须模拟出真实平台对外的所有封装接口和必要的内部逻辑。数字系统基本可以在三个不同 功能级上进行仿真:系统级仿真、寄存器传输级仿真、逻辑级仿真等,对整个嵌入式系统进行仿真属于典型的系统级仿真。系统级的仿真就是模拟整个系统在真实的 仿真环境中运行时的行为。在系统级的仿真中,只要系统的所有组件的基本行为及其操作环境能被精确模拟,其他设计细节可以简化或者忽略。嵌入式软件的仿真开 发环境中的仿真系统是为了验证软件对硬件控制的正确性,只需要仿真出硬件的外部逻辑。仿真过细反而会增加仿真的工作量和仿真构件的复杂度。在嵌入式软件仿 真开发平台的实现中,关键技术主要包含:构件化技术和仿真技术。
1构件化技术
构件是具有标准的对外接口和明确功能的对象。基于构件技术的软件系统具有很高的重用性和良好的可扩展性。构件按照一定方式组合在一起,构成一个完整 的系统,如图2所示。构件模型的提取和设计是实现构件的关键。以内核硬件为最小孵化平台建立原型系统,在满足软硬件运转的前提下,将其他设备及辅助工具纳 入外设构件库管理,以标准化接口实现设备灵活的安装、卸载和替换。外部设备采取动态集成的方式,可根据不同的需求进行灵活增减,如图3所示。
2软件仿真技术
软件仿真技术是实现仿真平台的关键,包括基于事件驱动和基于电路两种仿真方式。本文采用基于事件驱动的软件仿真技术,完满仿真系统逻辑。如图4所 示,PC仿真平台需要模拟COACH内核RTOS运转,硬件设备,功能API等方面的工作。笔者将此命名为“仿真COACH”;另外,笔者将应用编程代码 归纳为“仿真HCE”。在真实平台上,两者都各自以进程形式存在内核RTOS中,而在仿真环境下,两者将以线程形式存生。唤起这两个线程的工作由PC进程 (命名为“仿真RTOS”)完成,PC进程模拟了内核RTOS的工作,通过事件信号机制完成两线程的阻塞、激活和切换操作。此外,“仿真RTOS”还承担 摸拟控制台输入和界面显示。
3可信性设计
在真实的开发环境下,设计代码都嵌入在用户进程代码里。因此对设计者来说,用高级语言(本平台使用C)编写的代码能否无差异地在真实平台和仿真平台 之间相互移植,成为衡量软件仿真技术可信性的关键。为达到此设计要求,在仿真环境下编写的代码将无缝嵌入到“仿真HCE”中被执行。预编译手段保证了代码 的跨平台特性和语法一致性。在构建仿真环境时,“仿真RTOS”与“仿真COACH”将视“仿真HCE”如黑箱,同样,“仿真HCE”只能使用前二者提供 的与真实环境里命名规则完全一致的API接口函数和事件消息。正是因为“仿真HCE”做到了无视外部环境是否真实或模拟,在PC仿真平台上运行的“应用代 码”可以原封不动地嵌入目标固件。无缝移植既能保证了开发工作的连续性和一致性,也证明PC仿真开发环境的可靠性和可信性。
标签:环境设计论文
精品学习网(51edu.com)在建设过程中引用了互联网上的一些信息资源并对有明确来源的信息注明了出处,版权归原作者及原网站所有,如果您对本站信息资源版权的归属问题存有异议,请您致信qinquan#51edu.com(将#换成@),我们会立即做出答复并及时解决。如果您认为本站有侵犯您权益的行为,请通知我们,我们一定根据实际情况及时处理。