论文部分内容阅读
随着嵌入式技术的快速发展,嵌入式设备软硬件分离的传统开发方式已经跟不上市场的快速发展,而软硬件的协同开发能够缩短设备的开发周期,在嵌入式开发中得到越来越广的应用。在软硬件协同开发中,仿真器对产品建模、早期集成测试软硬件、有效的调试和出错以及对设备的开发有着重要的作用。但现有的仿真器对软硬件的协同开发支持不足,不能有效的衔接软硬件割裂的开发环境,自身的灵活性不够,导致协同开发方法学在实际的嵌入式开发中不能发挥应有的作用。本文根据现有仿真器的不足之处,设计开发了一种的新的嵌入式仿真器Cosim,它是一种分布式多芯片的体系架构仿真器。本文主要首先研究了协同仿真器的整体结构,启动过程,实现了客户端的系统建模和模块间的通信消息设计;其次对仿真器的硬件平台进行了驱动设计,同时对Offline Diagnostic(简称OD)系统的硬件驱动进行接口函数的修改,实现了系统驱动的移植。最后,在Cosim仿真器上实现了系统服务器和客户端的启动和通信,并且对所开发出的软件在Cosim中实现了协同仿真,使得在真实硬件开发出来之前,实现整个系统的集成性和端口功能的测试。本文的主要工作和创新点总结如下:1. Cosim协同仿真系统的研究。研究了Cosim协同仿真系统,仿真系统环境配置和启动过程,系统模块间的通信协议中消息的类型和定义;系统中服务器和客户端间接口协议的API实现。并且实现了软件客户端的(C/System C-model)系统建模。2. Earl RTL硬件客户端的研究。研究了系统硬件客户端仿真主板Sup2T交换机的功能和硬件结构,并主要介绍了交换机Earl子板的功能结构和对数据包的收发流程。3. Earl C客户端的软件实现。首先研究了软件客户端的实现平台OD系统;其次,基于Earl的硬件结构实现了Earl软件客户端寄存器读写等驱动程序的开发和上层测试应用程序ECC的开发;接着实现了仿真系统中客户端,服务器间通信接口函数的开发;最后实现了对Earl子系统设备驱动的仿真移植。从而在系统硬件开发出来之前,将软件开发程序运行在Cosim中的模拟硬件环境中,及时发现软件Bug和硬件接口中存在的问题,实现软硬件的协同仿真。本文中详细的阐述了ASIC芯片的驱动的设计以及实现过程,通过移植ASIC驱动到仿真环境集成测试,为软硬件协同开发的方法学在嵌入式设备的应用开发提供了一种新的思路。4. Cosim仿真结果及分析。在前文开发出的Cosim仿真平台和驱动的基础上,对整个系统进行了两部分的测试:首先是对仿真系统本身的测试,如系统中服务器,客户端,路由表的启动和他们之间的通信。其次是对仿真系统中软件和硬件客户端的协同仿真。第一步,本文对Earl硬件客户端的单个ASIC寄存器和内存的读写功能进行了仿真,得出寄存器和内存读写值的对照结果,以及寄存器和内存在访问过程中所返回的地址信息。第二步,实现了多芯片间交互的收发包仿真,这部分仿真测试了芯片间的接口和系统的整体集成性。