文档库 最新最全的文档下载
当前位置:文档库 › 以ARM和DSP嵌入式系统为核心的实时仿真平台的开发.

以ARM和DSP嵌入式系统为核心的实时仿真平台的开发.

以ARM和DSP嵌入式系统为核心的实时仿真平台的开发.
以ARM和DSP嵌入式系统为核心的实时仿真平台的开发.

以ARM和DSP嵌入式系统为核心的实时

仿真平台的开发

以ARM和DSP嵌入式系统为核心的实时仿真平台的开发

类别:消费电子

以ARM和DSP嵌入式系统为核心的实时仿真平台的开发

引言一个大型的船舶轮机模拟器蕴含着30多个全物理过程的数学模型,涉及千余个实时参变量,通常采用功能分散的DCS网络来实现。即便如此,个别仿真工作站由于模型复杂、任务繁重,难以满足实时仿真的要求。例如,动力推进系统的仿真是一个半实物在环的仿真系统,其中既有虚拟的动力装置即仿真计算机上运行的数学模型,又有真实的控制盘台、物理显示设备,是一种集实时控制和高速运算功能于一体的典型系统。早期开发成功的SMSC2000型轮机模拟器采用工控机作为仿真计算机,所有数据的处理和输入输出的控制都经过它的数据采集卡来完成。推进系统仿真的精确度与实时性无法两全。近期航运仿真中心在开展多模式机舱仿真实验的同时,针对I/O点最多(200多个)、半实物环境最复杂的船舶推进系统进行了剖析,研制了嵌入式微机的新颖仿真平台。船舶推进系统仿真平台的选取船舶推进系统仿真平台需要有很强的控制接口(输入输出)能力和高速的数字运算处理能力。TI公司的DSPC2000系列率先为电机的实时控制开拓了应用领域,但并不适合于具有众多I/O的复杂机电模型的仿真。由于市场上无现成的仿真装置可购,只能针对机舱模拟器的对象自行探索。实际上,当代嵌入式芯片既提供了高速的数字信号处理器(DSP),也提供了有强大控制功能的微控制器(MCU)。采用MCU DSP架构,就可兼备两者的长处。基于ARM核的32位RISC微控制器在监视控制、人机接口方面的功能非常完善,数字信号处理器(DSP)对各种数字信号或数据处理的能力十分强大。因此,许多嵌入式实时应用系统采用ARM DSP的结构组合来充分发挥两种处理器的优势,从每个处理器中获得最大益处,以获得更高性能。其中,ARM作为主处理器,负责任务管理、输入输出接口、对外部设备的控制,甚至运行嵌入式操作系统;而DSP作为从处理器,仅仅负责快速的数据运算处理。两个处理器核之间通过共用一部分存储器等方式进行通信。以ARM DSP为核心的嵌入式系统具有很强的控制接口能力和高速数字处理能力,用来代替以工控机为核心的仿真系统,可以达到实时运行精确的船舶推进系统的数学模型、实时控制外围物理设备的目的,从而实现精确实时的半物理实物在环的船舶推进仿真系统。ARM DSP嵌入式船舶推进系统仿真平台的硬件结构ARM DSP嵌入式仿真平台主要由以ARM,C5000DSP,C2000DSP3个处理器为中心的功能部分构成。其中ARM部分的ARM核微控制器是主处理器,是整个系统的控制中心。ARM部分带有自己的FLASH,RAM,A/D,D/A转换器等外围设备,主要负责上电后完成整个系统的自举加载和系统的任务分配、从物理设备输入和向物理设备输出信号、通过CAN总线与上位计算机通信等。 C5000DSP部分主要运行船舶推进系统的数学模型,并将仿真所得的

转速和转矩的数据传递给C2000DSP部分的电机控制单元,以在电动机上表达出推进系统的实时状态,即用电动机来模拟推进主机。C2000DSP部分的功能是接收C5000DSP部分数学模型的运算结果,按照该结果控制电动机达到仿真的转速和转矩,最终实现用电动机来模拟推进主机。这3个部分按一定的方式组合在一起,构成一个整体,共同完成推进系统仿真的任务。其基本组织结构如图1所示。

图1 ARM DSP嵌入式微机系统的基本组成实际上,从可靠性角度考虑,对于ARM部分和C5000DSP部分,采用一块ARM7 C54x的双核芯片(TI 的TMS320VC5470)把两部分的核心集成到一起。这两部分的主要外围设备有ARM 侧的FLASH,SRAM,SDRAM,键盘,LCD,CAN总线接口,A/D,D/A转换器(用于模拟量的输入输出),光耦电路(用于数字量或开关量的输入输出),用于编程调试用的JTAG接口及DSP侧的程序空间外扩SRAM,数据空间外扩SRAM,及I/O 空间的FIFO(用于向C2000DSP部分传递数据)。这两部分的硬件组织结构如图2所示。 C5000DSP的硬件结构 hspace=0

src="https://www.wendangku.net/doc/7e13029681.html,/data/uploadfile/20071115113741893.jpg" width=400 border=0> 图2 ARM和C5000DSP的硬件结构C2000DSP部分为任选部分。若省略这部分,则仿真结果仅显示在LCD,LED状态指示灯上。加上这部分后,仿真推进系统的各种动静态转速及转矩特性可在C2000DSP部分控制的仿真电机上反映出来,达到用电机模拟推进系统主机的目的。图3所示的C2000DSP子系统实际上是一个电机的闭环控制系统,由DSP控制器、功率驱动放大电路、电机和转速检测环节(光电编码盘)4个子部分构成。可见,ARM DSP 嵌入式船舶推进系统仿真平台的硬件资源丰富,且有很大的可扩展空间。该系统平台在硬件方面有以下一些特点。 (1)从处理器的速度上看,ARM最大为47.5MHz,C5000DSP最大为100MHz,C2000DSP最大为40MHz,属于较高速处理器。 C2000DSP部分的硬件结构 hspace=0

src="https://www.wendangku.net/doc/7e13029681.html,/data/uploadfile/20071115113741977.jpg" width=400 border=0> 图3 C2000DSP部分的硬件结构(2)FLASH的容量很大。在ARM和C5000DSP(即TMS320VC5470)部分有8MB的外部FLASH;在

C2000DSP(TMS320LF2407)部分有32KW的在片FLASH,而且还可以进行外扩。这样,该系统就可以固化大量的程序代码,适合开发大型的程序。(3)SRAM 的容量也很大。在ARM部分有16KB的在片高速SRAM和2MB的外部SRAM;在

C5000DSP部分有72KW高速在片SRAM和64KW外扩程序SRAM和64KW外扩数据SRAM;在C2000DSP(TMS320LF2407)部分有2.5KW的在片SRAM,而且还有64KW 外扩程序SRAM和64KW外扩数据SRAM。这样,大量的SRAM可以保证处理器在SRAM中读取程序,以保证程序快速运行。(4)系统的I/O端口资源丰富。既有数字量的输入输出,也有模拟量的输入输出;既提供了串行方式,也提供了并行方式。为数据采集、控制指令输出、与上位机通信等奠定了硬件基础。

(5)C2000DSP的处理器TMS320LF2407是专用来进行电机控制的芯片,用来产生PWM信号和捕获转速反馈信号很容易,而且运算速度快,可以实现对电机的各种高效复杂的控制。(6)各部分间需要实时交换数据,其硬件上都采用了共享存储器的方式(ARM与C5000DSP之间的ARMPortInterface,简称API,

C5000DSP与C2000DSP之间的FIFO)。这样,通信速度很快,从硬件上满足了实时要求。(7)因为器件数量较多且速度相对较高,有些芯片采用的是先进的BGA(BallGridArray)封装技术,所以在设计印刷电路板时,采用了6层板,

布线充分考虑了器件的高速性和封装技术。(8)该系统平台提供了很多可扩展的接口,用户可针对具体对象扩充硬件、添加新的功能。对于构成

SMSC2000轮机模拟器的其他工作站,无须扩展任何I/O接口,可见该系统具有通用性。ARM DSP嵌入式仿真平台的软件结构ARM部分中的软件ARM部分是整个系统的控制中心,其运行的主要是系统软件,包括自举加载程序、指令响应程序、键盘扫描程序、LCD显示驱动程序、A/D与D/A转换控制程序、直接数字量/开关量输入输出程序、CAN总线通信控制程序及与C5000DSP 部分进行内部实时数据交换的控制程序。自举加载程序是上电或复位后首要实现的任务。它先对ARM的一些关键寄存器(如时钟、中断等)进行初始化(即部分初始化);之后将ARM部分中要运行的主程序和各个子程序(如指令响应程序、键盘扫描、LCD显示驱动等)从片外的非易失性存储器FLASH中加载到片内或片外的SRAM中,以增加程序的运行速度;接着,开始负责对C5000DSP部分进行复位初始化,再把数学模型程序通过API控制加载到C5000DSP中。这样,自举加载程序就完成了两个部分的自举加载工作。自举加载完成后,ARM部分开始执行系统的全部初始化,然后便进入系统的主程序(该主程序是一个无限循环等待程序),在主程序中再以中断方式反复运行键盘扫描、LCD显示驱动、指令解释响应、A/D与D/A转换控制、数字量/开关量的输入输出及与C5000DSP 部分通讯的程序。其中,指令解释的响应程序是一个核心程序,类似于操作系统的内核程序,接受来自输入处理子程序(键盘扫描、数字量/开关量的输入等)的接口数据,并根据它们的值启动相应的任务,如果需要将任务执行的结果作为接口数据(指令)输出给显示或控制处理子程序,则经由各输出子程序再进行处理。该部分的软件组织结构如图4所示。

图4 ARM部分的软件组织结构C5000DSP部分的软件

C5000DSP部分主要用来运行推进系统的数学模型,该推进系统可以是传统的柴油主机推动系统,也可以是新型的电力推动系统,关键在于不同的推动类型对应不同的数学模型。C5000DSP程序实质上是以实时循环迭代求解微分方程组为主的程序,该微分方程组即推进系统的数学模型,并且每循环求解一次,要确定有没有从ARM部分传递来的指令及参数更改的信息。如果有,就改变相应状态及参数再求解微分方程组;如果没有,则仍按上一次的状态和参数求解。在每个循环中,方程组完整求解一次,从而得到推动系统在该时刻的仿真数据。在每个循环的最后,把仿真数据结果传送给ARM部分及C2000DSP部分(通过FIFO),用于显示和控制。这部分的软件程序结构如图5所示。

C5000DSP部分的软件组织结构 hspace=0

src="https://www.wendangku.net/doc/7e13029681.html,/data/uploadfile/20071115113742901.jpg" width=400 border=0> 图5 C5000DSP部分的软件组织结构 C2000DSP部分的软件结构C2000DSP部分的主要任务就是读取FIFO接收来自C5000DSP部分的仿真结果中的转速和转矩信号,并将之表达为电动机的相应转速和转矩。该部分实际上是独立构成的一个专门控制交流电机的子系统。其中,

C2000DSP处理器TMS320LF2407为该控制子系统的核心。它首先采用查询的工作方式,检测主控指令位是否指示打开该进程,检查系统与主电路是否正常。如果主控指令位指示“关闭”,则切断主电路,封锁输入输出,再关闭系统;如果不正常,则切断主电路,封锁输入输出,再关闭系统,并发出警报;如果一切正常且主控指令位指示“打开”,则读取此子系统的给定信号(由通信中断服务程序从FIFO中读出并存入相应地址的存储器中),即转速和转矩仿真结果数

据的接收,再调用捕获子程序从相应接口输入实际转速和转矩的反馈值。给定值和反馈值准备完毕,系统才开始使用某种控制算法对给定数据和反馈数据进行处理。完成了一个电机闭环恒转速控制算法后,产生相应的PWM信号输出给电机功率驱动电路,再由驱动电路控制电机跟随仿真给定转速和转矩信号,完成对推动系统转速和转矩的物理模拟。这里使用的控制算法可以是交流电机控制的各种算法,有要求较低的恒压频比、恒电动势频比算法,也有要求高的矢量控制算法和直接转矩控制算法。完成此步控制算法输出PWM信号后,再返回到开头处。如此循环,直到出现不正常或ARM主控程序结束该任务进程。该部分程序的主要结构如图6所示。 C2000DSP部分的软件组织结构hspace=0

src="https://www.wendangku.net/doc/7e13029681.html,/data/uploadfile/20071115113742181.jpg" width=400 border=0> 图6 C2000DSP部分的软件组织结构芯片间的通信控制该系统由3大部分构成,各部分之间的通信关系如图1所示。ARM与C5000DSP之间相互通信,C5000DSP与C2000DSP之间相互通信,ARM与

C2000DSP之间也相互通信。其中,前两者是通过中断方式来完成的,而后者是通过直接传送的方式完成的。ARM与C5000DSP之间通过ARM向C5000发出中断信号,告知C5000要准备接收数据。然后ARM将数据放到两方共享的API中。DSP接收到中断信号后,开始中断服务程序,从API的相应位置取出数据,之后向ARM发出回复信号,以表示数据被取走,而后继续准备开始接收新的数据。ARM接收到来自C5000的回复信号,开始发送新的数据。如此反复,直到传递完所有数据。反过来,由C5000DSP向ARM发送数据,其过程与上面相同,只是收发方互换位置。C5000DSP与C2000DSP之间的通信是单向的,即C5000只进行发送而C2000只进行接收。它们之间是通过FIFO进行缓冲的。C5000首先将仿真运算的转速和转矩数据通过总线放入接在其IO空间的FIFO 中,再向C2000发送中断请求。C2000收到后,响应中断,进行中断服务,从FIFO的相应位置取出数据并存入特定地址的存储器中,再回复C5000告知数据已经被取出。如此周而复始,不断进行数据的收发。ARM与C2000DSP之间的通信主要是ARM主控打开或关闭C2000系统,采用单向直接传送方式。它们之间通过各自的一个GPIO(通用IO口)相连,ARM发送,C2000接收。ARM要打开C2000系统时,只需向其对应的GPIO写1,而ARM要关闭C2000系统时,只需向其对应的GPIO写0。在C2000部分,在主体循环程序中每次查询C2000的对应GPIO口,读为1则表示继续其进程,而读为0则表示关断其进程。ARM DSP嵌入式仿真平台与以工控机为核心的仿真平台的比较以ARM DSP 为核心的嵌入式仿真平台系统与以工控机为核心的仿真平台系统相比在仿真的实时性和精确度方面具有很多优势。(1)使用专用的DSP完成运算,相比通用PC处理器80×86的精确度更高。(2)ARM和DSP分工明确,各司其职,比单一的PC处理器完成仿真任务要快很多。SMSC2000在进行主机仿真时,由于处理器、操作系统和VB开发工具的限制,每求解一次数学模型需要的时间在ms级,其采样周期也在ms级以上;而以ARM DSP为核心的嵌入式仿真平台系统,由于采用功能强大的双核构架,每求解一次数学模型需要的时间在

μs级,采样周期也相应减小很多,即仿真的步长更小,大幅度提高了仿真的精确度。(3)软件系统是在裸机的基础上建立的,实时性完全由开发人员决定,不受非实时操作系统限制。结束语针对船舶推进系统研制的新颖ARM DSP嵌入式仿真平台扬长了ARM与DSP两种嵌入式处理器的特点,集

丰富的控制接口和高速运算处理能力于一体。该仿真平台系统结构清晰,各部分专用功能强大,任务分配明确,相互之间都有通信交互。该系统存储器容量大,各器件速度快,集成度高。软件编程从系统和应用的角度出发,密切结合实际情况,软件结构适合嵌入式系统运行。系统的软硬件都有较大扩展空间。用该仿真平台代替传统的基于工控计算机的仿真模式真正达到了实时要求,其运行的数学模型更精确,控制物理设备的能力更强。该仿真平台同样可用于船舶电站、船舶辅机、机舱报警等系统的仿真,并通过CAN总线与主控站联络。它不光强化了单一工作站的功能,而且使整个DCS网络演化为FCS网络,大大提高了系统的实时性。

!嵌入式系统开发资料(入门必备)

获取更多权威电子书请登录https://www.wendangku.net/doc/7e13029681.html, ARM嵌入式系统开发综述ARM开发工程师入门宝典

获取更多权威电子书请登录https://www.wendangku.net/doc/7e13029681.html, 前言 嵌入式系统通常是以具体应用为中心,以处理器为核心且面向实际应用的软硬件系统,其硬件是整个嵌入式系统运行的基础和平台,提供了软件运行所需的物理平台和通信接口;而嵌入式系统的软件一般包括操作系统和应用软件,它们是整个系统的控制核心,提供人机交互的信息等。所以,嵌入式系统的开发通常包括硬件和软件两部分的开发,硬件部分主要包括选择合适的MCU或者SOC 器件、存储器类型、通讯接口及I/O、电源及其他的辅助设备等;软件部分主要涉及OS porting和应用程序的开发等,与此同时,软件中断调试和实时调试、代码的优化、可移植性/可重用以及软件固化等也是嵌入式软件开发的关键。 嵌入式系统开发的每一个环节都可以独立地展开进行详细的阐述,而本文的出发点主要是为嵌入式开发的初学者者提供一个流程参考。因为对于初学者在面对一个嵌入式开发项目的时候,往往面临着诸多困难,如选择什么样的开发平台?什么样的器件类型?在进行编译时怎样实现代码优化?开发工具该如何选择和使用?在进行程序调试时应该注意那些问题以及选择什么样的嵌入式OS 等等。希望通过本文,能帮助初学者了解有关ARM嵌入式系统开发流程。

获取更多权威电子书请登录https://www.wendangku.net/doc/7e13029681.html, 目录 前言 (2) 1 嵌入式开发平台 (4) 1.1 ARM的开发平台: (4) 1.2 器件选型 (7) 2 工具选择 (11) 3 编译和连接 (13) 3.1 RVCT的优化级别与优化方向 (16) 3.2 Multifile compilation (21) 3.3调试 (22) 4 操作系统 (23) 4.1 哪里可以得到os 软件包 (Open Source and Linux Kernel) (25) 4.2 安装镜像 (26) 4.3 交叉编译 (26) 总结 (27)

嵌入式实时操作系统

嵌入式实时操作系统 嵌入式实时操作系统(Embedded Real-time Operation System,RTOS)。 1 嵌入式实时操作系统概念 当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的嵌入式操作系统。 2 嵌入式实时操作系统特点 1)多任务; 2)有线程优先级 3)多种中断级别 3 嵌入式实时操作系统应用 在工业控制、军事设备、航空航天等领域对系统的响应时间有苛刻的要求,这就需要使用实时系统。 采用嵌入式实时操作系统(简称RTOS)能够支持多任务,使得程序开发更加容易,便于维护,同时能够提高系统的稳定性和可靠性。

4 实时操作系统的必要性: 首先,嵌入式实时操作系统提高了系统的可靠性。 其次,提高了开发效率,缩短了开发周期。 实时操作系统的优缺点: 在嵌入式实时操作系统环境下开发实时应用程序使程序的设计和扩展变得容易,不需要大的改动就可以增加新的功能。通过将应用程序分割成若干独立的任务模块,使应用程序的设计过程大为简化;而且对实时性要求苛刻的事件都得到了快速、可靠的处理。通过有效的系统服务,嵌入式实时操作系统使得系统资源得到更好的利用。但是,使用嵌入式实时操作系统还需要额外的ROM/RAM 开销,2~5% 的CPU 额外负荷,以及内核的费用。 5 实时系统与非实时系统的根本区别 实时系统与非实时系统的根本区别在于:实时系统具有与外部环境及时交互作用的能力。也就是说实时系统从外部获取信息以及系统得出结论要在很短的限制时间内完成。 它具有嵌入式软件共有的可裁剪、低资源占用、低功耗等特点;实时任务之间可能还会有一些复杂的关联和同步关系,如执行顺序限制、共享资源的互斥访问要求等。 实时操作系统所遵循的最重要的设计原则是:采用各种算法和策略,始终保证系统行为的可预测性(predictability)。可预测性是指在系统运行的任何时刻,在任何情况下,实时操作系统的资源调配策略都能为争夺资源(包括CPU、内存、网络带宽等)的多个实时任务合理地分配资源,使每个实时任务的实时性要求都能得到满足。与通用操作系统不同,实时操作系统注重的不是系统的平均表现,而是要求每个实时任务在最坏情况下都要满足其实时性要求,也就是说,实时操作系统注重的是个体表现。

嵌入式系统仿真测试平台的体系结构研究

!"##!年第$期 福建电脑注:本文得到广东省科技厅攻关项目资金资助%项目编号"##"&’(&)电子科技大学青年基金项目资助%项目编号*+#"#,#-。 &、 引言目前嵌入式系统开发已经成为了计算机工业最热门的领域之一,嵌入式系统应用渗透到信息家电、工业控制、通信与电子设备、人工智能设备等诸多领域。然而嵌入式系统的软件与目标硬件紧密相关,软件开发周期长,开发成本昂贵,软件质量无法保障.&/."/。特别是嵌入式软件的测试工作,在整个开发周期中通 常占用着大部分时间 (-#01,#0)。软件测试是一个非常重要而又艰苦的过程。软件测试工具用来全部或部分的代替人工进行软件的测试工作。它能极大的节省人力、物力和财力,缩短项目的开发周期。 国际上,许多软件公司致力于开发功能强大的软件测试工具。按获得测试信息的方式分为纯硬件、纯软件、软硬件相结合三种类型的测试工具。纯硬件测试工具如仿真器、逻辑分析仪、开发系统等。纯软件测试工具如234563786的2345938:,是一种软件逻辑分析仪。软硬件相结合的测试工具如以;<公司的=>?938:为代表的虚拟仪器和以@AB 公司的BC58DEFD 为代表的测试工具。这三类测试工具都有一个缺点:没有提供一个集成各种软硬件测试工具的框架,使各类测试工具能紧密协调工作。 为提高测试工作的效率,迫切需要功能强大的嵌入式系统测试工具。 仿真开发在嵌入式系统开发中正在发挥着越来越重要的作用。许多软件公司已经开发出成熟稳定的嵌入式仿真开发工具。但是在嵌入式仿真开发中,仍然缺乏一种嵌入式系统测试工具的集成框架。本文正是基于这个目标,从软件体系结构的角度,研究和设计了一种称为G EFDH G 的嵌入式系统仿真测试平台的集成框架。并基于其上实现了一个嵌入式仿真测试平台3I >EFDH 。 "、 嵌入式系统仿真测试平台的体系结构EFDH 对于大规模复杂软件系统,其总体结构设计远比算法和数据结构的选择更重要.J /.!/。基于这样的认识和背景,本文在对嵌入式测试和嵌入式仿真开发深入研究的基础上,研究和设计了EFDH 的体系结构。"K &EFDH 的结构模型 EFDH 的体系结构主要借鉴了当前流行的嵌入式交叉开发工具的目标服务器L 目标代理结构.’/,分为宿主机端和仿真目标机端两大部分。 EFDH 的结构模型见图&: 图&EFDH 结构模型 EFDH 结构模型的基本特征:&M EFDH 由宿主机端和目标机端两大部分构成,宿主机 端以测试服务器DF (D8NO F86786)为核心;目标机端以测试代理D@P D8NO @Q84O M 为核心。 "M 所有的测试工具不与目标机端交互, 而只与测试服务器DF 进行交互;测试服务器DF 同测试代理D@交互。这样只要更换相应的测试代理D@,即可与不同的仿真开发系统一起工作。 J M 测试服务器DF 与所有测试工具之间通过嵌入式仿真测试工具交换协议EFDDR (ES?85585F3STU>O3C4D8NO DCCU 8RI VW>4Q8X6COCVCU ) 规范接口进行交互。!M 测试服务器DF 和测试代理D@之间通过嵌入式仿真测试协议EFD P ES?85585F3STU>O3C4D8NO X6COCVCU M 规范接口进行交互。 ’M 测试工具以软插件的形式集成到EFDH 中%EFDDR 和EFD 规范定义的接口是公开的和可免费获得的,第三方测试工具非常容易的集成到EFDH 中来。 -M 测试工具多种多样,可以是软件代码测试工具,也可以是硬件诊断测试工具,都可以很容易的集成到EFDH 中来,从而达到各类测试工具的紧密协作。 $M EFDH 中各类测试工具紧密集成到一个图形用户接口中,大大提高了用户的工作效率。 ,M 测试代理D@以一个线程的形式存在于仿真运行环境中,与各类模拟器之间通过固定的接口交互,获取丰富的测试信息。 "K "测试服务器DF 模型 测试服务器DF 是EFDH 的核心结构部件,作为EFDH 的测试管理器,其结构模型如图"。 图"测试服务器DF 结构模型 DF 的主要功能:&M DF 提供相应的EFDDR 协议规范接口,接受来自测试工具的控制命令和状态查询,并提供相应的数据传输接口,向测试工具返回对应的测试结果。 "M DF 提供相应的EFD 协议规范接口,向采集代理发送控制命令信息和状态查询信息,并且根据EFD 协议规范提供的接口收取返回信息。 J M DF 提供测试高速缓冲管理、 测试存储器管理以及流测试协议,管理和控制整个宿主机端。"K J 测试代理D@模型 嵌入式系统仿真测试平台的体系结构研究 邵荣防,罗克露 P 电子科技大学计算机科学与工程学院,四川 成都-&##’!M 【摘要】仿真开发在嵌入式开发中正逐步成为热点,仿真测试工具在仿真开发过程中正发挥着日益重要的作用。本文首先简要分析了当前的嵌入式测试工具,然后给出一种嵌入式仿真测试平台的体系结构EFDH 。基于EFDH 体系结构,实现了一个面向信息家电的嵌入式仿真测试平台3>EFDH 。 【关键词】嵌入式系统仿真开发 仿真测试平台

嵌入式系统实验报告

郑州航空工业管理学院 嵌入式系统实验报告 (修订版) 20 – 20第学期 赵成,张克新 院系: 姓名: 专业: 学号: 电子通信工程系 2014年3月制

实验一ARM体系结构与编程方法 一、实验目的 了解ARM9 S3C2410A嵌入式微处理器芯片的体系结构,熟悉ARM微处理器的工作模式、指令状态、寄存器组及异常中断的概念,掌握ARM指令系统,能在ADS1.2 IDE中进行ARM汇编语言程序设计。 二、实验内容 1.ADS1.2 IDE的安装、环境配置及工程项目的建立; 2.ARM汇编语言程序设计(参考附录A): (1)两个寄存器值相加; (2)LDR、STR指令操作; (3)使用多寄存器传送指令进行数据复制; (4)使用查表法实现程序跳转; (5)使用BX指令切换处理器状态; (6)微处理器工作模式切换; 三、预备知识 了解ARM嵌入式微处理器芯片的体系结构及指令体系;熟悉汇编语言及可编程微处理器的程序设计方法。 四、实验设备 1. 硬件环境配置 计算机:Intel(R) Pentium(R) 及以上; 内存:1GB及以上; 实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器; 2. 软件环境配置 操作系统:Microsoft Windows XP Professional Service Pack 2; 集成开发环境:ARM Developer Suite (ADS) 1.2。 五、实验分析 1.安装的ADS1.2 IDE中包括和两个软件组件。在ADS1.2中建立类型的工程,工程目标配置为;接着,还需要对工程进行、及链接器设置;最后,配置仿真环境为仿真方式。 2.写出ARM汇编语言的最简程序结构,然后在代码段中实现两个寄存器值的加法运算,给出运算部分相应指令的注释。 ; 文件名:

嵌入式开发工具使用

《嵌入式开发工具使用》 实验报告 学生姓名:______________________ 学号:— 专业班级:_______________ 指导教师:_________________ 完成时间: 实验2嵌入式开发工具使用实验 一?实验目的 了解嵌入式开发工具套件组成,掌握开发工具安装,熟练运用gcc各命令选项,熟练编写Makefile和使用make工具,掌握gdb各命令用于应用程序调试。 二?实验内容 实验 2.1 arm-linux-gcc安装 实验2.2编译工具gcc使用 实验2.3 编写Makefile和使用make编译 实验2.4使用gdb调试应用程序 实验2.5 使用code::blocks进行图形化编程 三?预备知识 Linux使用等 四?实验设备及工具(包括软件调试工具) 硬件:ARM嵌入式开发平台、PC机Pentium100以上、串口线。软件:WinXP或 UBUNTU开发环境。 五?实验步骤 5.1交叉编译工具配置及编译 第一步,解压缩交叉编译器工具,命令为: #cd /tmp _____________________________________________________________________ ? arm-l inu x-gcc可执行文件位于目录 /root/gcc-gdb-make_exp _________________________________________ 。 第二步,修改PATH环境变量,将arm-linux-gcc可执行文件目录添加到PATH环境变量中,命令为 5.2 arm-l inu x-gcc编译工具使用

单片机系统设计与仿真软件

(此文档为word格式,下载后您可任意编辑修改!) PROTEUS —单片机系统设计与仿真软件 一、Proteus 6.7 Professional 界面简介 安装完Proteus后,运行ISIS 6.7 Professional,会出现以下窗口界面: 为了方便介绍,分别对窗口内各部分进行中文说明(见上图)。下面简单 介绍各部分的功能: 1.原理图编辑窗口(The Editing Window ):顾名思义,它是用来绘制原理图的。蓝色方框内为可编辑区,元件要放到它里面。注意,这个窗口是没有滚动条的,你可用预览窗口来改变原理图的可视范围。 2.预览窗口(The Overview Window ):它可显示两个内容,一个是:当你 在元件列表中选择一个元件时,它会显示该元件的预览图;另一个是,当你的鼠标焦点落在原理图编辑窗口时(即放置元件到原理图编辑窗口后或在原理图编辑窗口

中点击鼠标后),它会显示整张原理图的缩略图,并会显示一个绿色的方框,绿色 的方框里面的内容就是当前原理图窗口中显示的内容,因此,你可用鼠标在它上面点击来改变绿色的方框的位置,从而改变原理图的可视范围。 3.模型选择工具栏( Mode Selector Toolbar ):主要模型( Main Modes ): 1*选择元件(components)(默认选择的) 2* 放置连接点 3* 放置标签(用总线时会用到) 4* 放置文本 5* 用于绘制总线 6* 用于放置子电路 7* 用于即时编辑元件参数 (先单击该图标再单击要修改的元件) 配件( Gadgets): 1*终端接口( terminals):有VCC、地、输出、输入等接口 2* 器件引脚:用于绘制各种引脚 3* 仿真图表( gra ph ) :用于各种分析,如Noise Analysis 4* 录音机 5* 信号发生器( generators) 6* 电压探针:使用仿真图表时要用到 7* 电流探针:使用仿真图表时要用到 8* 虚拟仪表:有示波器等 2D 图形( 2D Graphics): 1* 画各种直线 2* 画各种方框 3* 画各种圆 4* 画各种圆弧 5* 画各种多边形 6* 画各种文本 7* 画符号 8* 画原点等 4.元件列表( The Object Selector ):用于挑选元件( components)、终端接口 ( terminals)、信号发生器 (generators)、仿真图表(graph)等。举例,当你选择"元件 (components)”,单击"P”按钮会打开挑选元件对话框,选择了一个元件后(单击了“ OK ”后),该元件会在元件列表中显示,以后要用到该元件时,只需在元件列表中选择即可。 5.方向工具栏( Orientation Toolbar ):旋转:旋转角度只能是90 的整数倍。 翻转:完成水平翻转和垂直翻转。使用方法:先右键单击元件,再点击(左击)相应的旋

单片机系统设计与仿真软件

(此文档为word格式,下载后您可任意编辑修改!) PROTEUS —单片机系统设计与仿真软件 一、Proteus 6.7 Professional 界面简介 安装完Proteus 后,运行ISIS 6.7 Professional,会出现以下窗口界面: 为了方便介绍,分别对窗口内各部分进行中文说明(见上图)。下面简单 介绍各部分的功能: 1.原理图编辑窗口(The Editing Window):顾名思义,它是用来绘制原理 图的。蓝色方框内为可编辑区,元件要放到它里面。注意,这个窗口是没有滚动条的,你可用预览窗口来改变原理图的可视范围。 2.预览窗口(The Overview Window):它可显示两个内容,一个是:当你 在元件列表中选择一个元件时,它会显示该元件的预览图;另一个是,当你的鼠标焦点落在原理图编辑窗口时(即放置元件到原理图编辑窗口后或在原理图编辑窗口中点击鼠标后),它会显示整张原理图的缩略图,并会显示一个绿色的方框,绿色

的方框里面的内容就是当前原理图窗口中显示的内容,因此,你可用鼠标在它上面点击来改变绿色的方框的位置,从而改变原理图的可视范围。 3.模型选择工具栏(Mode Selector Toolbar): 主要模型(Main Modes): 1* 选择元件(components)(默认选择的) 2* 放置连接点 3* 放置标签(用总线时会用到) 4* 放置文本 5* 用于绘制总线 6* 用于放置子电路 7* 用于即时编辑元件参数(先单击该图标再单击要修改的元件) 配件(Gadgets): 1* 终端接口(terminals):有VCC、地、输出、输入等接口 2* 器件引脚:用于绘制各种引脚 3* 仿真图表(graph):用于各种分析,如Noise Analysis 4* 录音机 5* 信号发生器(generators) 6* 电压探针:使用仿真图表时要用到 7* 电流探针:使用仿真图表时要用到 8* 虚拟仪表:有示波器等 2D图形(2D Graphics): 1* 画各种直线 2* 画各种方框 3* 画各种圆 4* 画各种圆弧 5* 画各种多边形 6* 画各种文本 7* 画符号 8* 画原点等 4.元件列表(The Object Selector): 用于挑选元件(components)、终端接口(terminals)、信号发生器(generators)、仿真图表(graph)等。举例,当你选择“元件(components)”,单击“P”按钮会打开挑选元件对话框,选择了一个元 件后(单击了“OK”后),该元件会在元件列表中显示,以后要用到该 元件时,只需在元件列表中选择即可。 5.方向工具栏(Orientation Toolbar):

嵌入式控制系统平时作业

1、什么是嵌入式系统? 答:嵌入式系统(Embedded system),是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”,根据英国电气工程师协会(U.K. Institution of Electrical Engineer)的定义,嵌入式系统为控制、监视或辅助设备、机器或用于工厂运作的设备。与个人计算机这样的通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特殊的任务,设计人员能够对它进行优化,减小尺寸降低成本。嵌入式系统通常进行大量生产,所以单个的成本节约,能够随着产量进行成百上千的放大。 2、举例说明嵌入式的应用。 答: 工业控制 基于嵌入式芯片的工业自动化设备将获得长足的发展,目前已经有大量的8、16、32 位嵌入式微控制器在应用中,网络化是提高生产效率和产品质量、减少人力资源主要途径,如工业过程控制、数字机床、电力系统、电网安全、电网设备监测、石油化工系统。就传统的工业控制产品而言,低端型采用的往往是8位单片机。但是随着技术的发展,32位、64位的处理器逐渐成为工业控制设备的核心,在未来几年内必将获得长足的发展。 交通管理 在车辆导航、流量控制、信息监测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌GPS模块,GSM模块的移动定位终端已经在各种运输行业获得了成功的使用。目前GPS设备已经从尖端产品进入了普通百姓的家庭,只需要几千元,就可以随时随地找到你的位置。

信息家电 这将称为嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间。即使你不在家里,也可以通过电话线、网络进行远程控制。在这些设备中,嵌入式系统将大有用武之地。 家庭智能管理 水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高,更准确和更安全的性能。目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。 POS网络 公共交通无接触智能卡(Contactless Smartcard, CSC)发行系统,公共电话卡发行系统,自动售货机,各种智能ATM终端将全面走入人们的生活,到时手持一卡就可以行遍天下。 环境工程 水文资料实时监测,防洪体系及水土质量监测、堤坝安全,地震监测网,实时气象信息网,水源和空气污染监测。在很多环境恶劣,地况复杂的地区,嵌入式系统将实现无人监测。 3、嵌入式操作系统的作用是什么? 答:嵌入式操作系统的主要好处就是屏蔽了底层硬件的差别,给上层应用提供统一的接口,并管理进程调度和资源(如CPU时间、内存)分配等。就跟windows操作系统一样,不管你是用华硕的电脑还是戴尔的电脑,只要装了windows操作系统,你都可以用office、词霸之类的软件。人机界面(MMI)是上层应用show出来的。 简单的嵌入式应用不需要嵌入式操作系统的支持,如单片机,直接用汇编程序就能实现特定的功能。要跑的应用多了,就需要操作系统来进行管理。

为嵌入式系统开发人员建立虚拟的ARM平台

郑州大学毕业设计(翻译) 题目:Virtual ARM Platform for Embedded System Developers 指导教师:李正民职称:副教授 学生姓名:乔旭学号:20052430222 专业:计算机科学与技术 院(系):信息工程学院 完成时间:2009年5月20日 2009年5月20日

为嵌入式系统开发人员建立虚拟的ARM平台 [摘要] 越来越多的嵌入式系统开发人员和片上系统设计师采用microprocessor-based(基于微处理器的)设计方法,以减少推向市场的时间。在过去的10年里,ARM处理器一直都是嵌入式系统行业的主角之一。然而,在早期设计阶段,有许多对基于ARM处理器的嵌入式软件开发的限制。对于那些不熟悉嵌入式软件设备的人来说,在ARM硬件平台上测试他们的软件是一项异常艰巨的工作。为克服这些问题,我们为基于ARM的嵌入式系统开发人员设计了虚拟的ARM平台,提供更容易测试和调试的环境。使用虚拟ARM平台的好处是:(1)减少开发成本,(2)对于初学者降低了入门的难度,以及(3)让您更轻松地测试和调试嵌入式软件。与许多其他的纯粹以软件为导向且独立于硬件平台的ARM模拟器不同,我们的虚拟ARM平台是专门针对SYS-Lab 5000 ARM硬件平台(由Libertron公司负责设计制造)研发的,这意味着我们的平台可以尽可能地模仿在目标硬件上的嵌入式软件的各种行为。本文旨在介绍我们的虚拟ARM平台的设计思想以及它在减少设计时间和开销方面的一些应用。 1.导言 嵌入式系统是一个拥有特殊用途的计算机系统,它仅仅采用通用计算机系统一小部分的专用功能,有时还需要进行实时处理。通常,嵌入式系统具备完整的硬件设备和机械装置,并且它已经深深渗透到现代生活的方方面面。不仅仅是个人数字助理(PDA)、mp3、手机等电子消费产品,在电信系统,交通运输系统,医学仪器等领域里,仍然存在着许多的嵌入式系统,例如防抱死刹车系统(ABS)、GPS、电子听诊器等。[1] 微处理器是嵌入式系统非常重要的硬件结构之一。随着个人计算机和因特网的普及,微处理器成为IT行业发展中的主要角色。针对不同的用途,每个微处理器都有自己的特殊结构。[2]其中,ARM微处理器采用RISC结构,被广泛应用于嵌入式系统的设计之中。这不仅仅是因为它的高性能和廉价,而且还因为它有低功耗的特点。ARM系列处理器在各种电子消费类产品中占有很大优势,从便携式设备(PDAs,手机,媒体播放器,掌上游戏机和计算器)到计算机外设(硬盘,桌面路由器)。 我们即将在本文中介绍的虚拟ARM平台,是一个为目标硬件设计的ARM模拟器。与其他仅仅在软件模型上设计的虚拟ARM机不同,我们的虚拟ARM平台可以与目标嵌入式系统执行相类似的操作。这种相类似的操作具体是指我们的虚拟ARM平台允许嵌入式系统开发人员在一个正真的H/W平台上开发和测试他们的嵌入式应用。为执行一个特定的虚拟ARM平台,我们已经选择了SYS-Lab5000 ARM硬件平台作为我们的目标H/W平台。正是由于特定目标的虚拟平台可以测试目标平台的细节而无需实际的目标平台,设计时间和花销被大幅的降低了。尤其在教学领域,在无法提供充足数量的嵌入式设备时,这种针对特定目标的虚拟平台将尽可能减少学生对实际硬件的需求,同时为学生学习如何设计特定目标的嵌入式系统提供巨大帮助。我们的虚拟ARM平台通过使用SimIt-ARM虚拟器和QT程序库的用户图形界面,完全可以建立在ARM虚拟器之上。为了方便维护和调试,我们还扩展了特定目标的易用程度,设计了给定平台信息,提供自动进行特定平台环境设置的模拟器。此外,我们还可以为简易操作系统模拟器运行中断句柄定时器。 本文的余下部分将介绍以下内容:在第二部分,我们讨论在虚拟ARM平台上开发嵌入式系统与实际硬件平台上的区别。在第三部分,我们将总结一些相互关系的研究成果。第四部分介绍我们的虚拟ARM平台是如何组织和工作的,第五部分介绍我们的研究成果,第六部分是总结。 2.虚拟ARM平台的需求

常见的四种嵌入式操作系统

(一)VxWorks VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是Tornado嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌人式实时操作系统领域逐渐占据一席之地。 VxWorks具有可裁剪微内核结构;高效的任务管理;灵活的任务间通讯;微秒级的中断处理;支持POSIX 1003.1b实时扩展标准;支持多种物理介质及标准的、完整的TCP/IP网络协议等。 然而其价格昂贵。由于操作系统本身以及开发环境都是专有的,价格一般都比较高,通常需花费10万元人民币以上才能建起一个可用的开发环境,对每一个应用一般还要另外收取版税。一般不通供源代码,只提供二进制代码。由于它们都是专用操作系统,需要专门的技术人员掌握开发技术和维护,所以软件的开发和维护成本都非常高。支持的硬件数量有限。 (二)Windows CE Windows CE与Windows系列有较好的兼容性,无疑是Windows CE推广的一大优势。其中WinCE3.0是一种针对小容量、移动式、智能化、32位、了解设备的模块化实时嵌人式操作系统。为建立针对掌上设备、无线设备的动态应用程序和服务提供了一种功能丰富的操作系统平台,它能在多种处理器体系结构上运行,并且通常适用于那些对内存占用空间具有一定限制的设备。它是从整体上为有限资源的平台设计的多线程、完整优先权、多任务的操作系统。它的模块化设计允许它对从掌上电脑到专用的工业控制器的用户电子设备进行定制。操作系统的基本内核需要至少200KB的ROM。由于嵌入式产品的体积、成本等方面有较严格的要求,所以处理器部分占用空间应尽可能的小。系统的可用内存和外存数量也要受限制,而嵌入式操作系统就运行在有限的内存(一般在ROM或快闪存储器)中,因此就对操作系统的规模、效率等提出了较高的要求。从技术角度上讲,Windows CE作为嵌入式操作系统有很多的缺陷:没有开放源代码,使应用开发人员很难实现产品的定制;在效率、功耗方面的表现并不出色,而且和Windows一样占用过的系统内存,运用程序庞大;版权许可费也是厂商不得不考虑的因素。 (三)嵌入式Linux 这是嵌入式操作系统的一个新成员,其最大的特点是源代码公开并且遵循GPL协议,在近一年多以来成为研究热点,据IDG预测嵌入式Linux将占未来两年的嵌入式操作系统份额的50%。 由于其源代码公开,人们可以任意修改,以满足自己的应用,并且查错也很容易。遵从GPL,无须为每例应用交纳许可证费。有大量的应用软件可用。其中大部分都遵从GPL,是开放源代

Proteus与单片机实时动态仿真

0.引言 Proteus 是由英国Labcenter electronics 公司开发的EDA 工具软件。它从1989 年出现到现在已经有十多年的历史,在全球广泛使用。Proteus 安装以后,主要由两个程序组成:Ares和Isis。前者主要用于PCB 自动或人工布线及其电路仿真,后者主要采用原理布图的方法绘制电路并进行相应的仿真。除了上述基本应用之外,Proteus 革命性的功能在于它的电路仿真是互动的,针对微处理器的应用,可以直接在基于原理图的虚拟原型上编程,并实现软件代码级的调试,还可以直接实时动态地模拟按钮、键盘的输入,LED、液晶显示的输出,同时配合虚拟工具如示波器、逻辑分析仪等进行相应的测量和观测。 Proteus 软件的应用范围十分广泛,涉及PCB 制版、spice 电路仿真、单片机仿真,在最新的6.9 版本中又加入了对ARM7/LPC2000 的仿真。本文主要以单片机的仿真为例,使大家初步了解该软件的强大功能及其在工程实践和实验教学中的重要作用。 1.Proteus 仿真功能简介 作为一款EDA 仿真软件,Proteus 与同类软件有着很多的相似之处。相比之下,其主要的特点有两个:一是对动态元件的实时仿真,它对“人机对话”的模拟增强了系统的真实性;二是虚拟工具箱的功能,它能与仿真同时进行,测量方便而准确。下面着重介绍一下该软件的这两个突出特点。 1.1.实时动态仿真 与多数仿真软件相似,Proteus 有着数量庞大的元件库。Labcenter 公司与相关的第三方软件阵容共同开发了6000 多个模拟和数字电路中常用的spice 模型以及各种动态元件,基本元件如电阻、电容、各种二极管、三极管、MOS 管、555 定时器等;74 系列TTL 元件和4000 系列CMOS 元件;存储芯片包括各种常用的ROM, RAM,EEPROM, 还有常见I2C 器件等。在丰富的库元件的支持下,原理布图时只要进行相应的调用和连线,通过对每个元件的属性设置完成绘图,然后即可进行仿真和虚拟测量。关于原理图的具体绘制方法不是本文讨论的重点,请参考软件提供的帮助教程。 与Multisim 等仿真软件的一大不同,在于Proteus 支持微处理器的仿真。这些仿真的实现是基于Labcenter 公司提出的VSM 的概念。 VSM,Virtual System Modelling,直接译作“虚拟系统模型”,官方的定义是:将spice电路模型、动态外设以及微处理器的仿真结合起来,在物理原型调试之前用于仿真整个单片机系统的一种设计方法[1]。对动态外设的支持是Proteus在区别于其他等仿真软件最直接的地方。VSM为用户提供了一个实时交互的环境,在仿真的过程中,你可以用鼠标去点击开关和按钮,微处理器根据输入的信号做出相应的中断响应,同时输出运算的结果到显示终端。整个过程与真实的硬件调是极其相似的,在动态外设支持下的实时输入和输出为实验者呈现了一个最接近现实的调试环境。官方资料显示,一个300 MHz Pentium II CPU可以以12MHz的时钟频率仿真一个基本的8051 系统。

ARM嵌入式系统开发综述.

视听研究所 主页:论坛: 所有资料均收集于各网站。 若您认为有关资料不适合公开,请联系newvideo@https://www.wendangku.net/doc/7e13029681.html, 我们会第一时间删除。 感谢各位网友的无私奉献和支持! 加密时间:2008-2-1 获取更多权威电子书请登录 ARM 嵌入式系统开发综述 ARM 开发工程师入门宝典 获取更多权威电子书请登录 前言 嵌入式系统通常是以具体应用为中心,以处理器为核心且面向实际应用的软硬件系统,其硬件是整个嵌入式系统运行的基础和平台,提供了软件运行所需的物理平台和通信接口;而嵌入式系统的软件一般包括操作系统和应用软件,它们是整个

系统的控制核心,提供人机交互的信息等。所以,嵌入式系统的开发通常包括硬件和软件两部分的开发,硬件部分主要包括选择合适的MCU 或者SOC 器件、存储器类型、通讯接口及I/O、电源及其他的辅助设备等;软件部分主要涉及OS porting和应用程序的开发等,与此同时,软件中断调试和实时调试、代码的优化、可移植性/可重用以及软件固化等也是嵌入式软件开发的关键。 嵌入式系统开发的每一个环节都可以独立地展开进行详细的阐述,而本文的出发点主要是为嵌入式开发的初学者者提供一个流程参考。因为对于初学者在面对一个嵌入式开发项目的时候,往往面临着诸多困难,如选择什么样的开发平台?什么样的器件类型?在进行编译时怎样实现代码优化?开发工具该如何选择和使用?在进行程序调试时应该注意那些问题以及选择什么样的嵌入式OS 等等。希望通过本文,能帮助初学者了解有关ARM 嵌入式系统开发流程。 获取更多权威电子书请登录 目录 前言 (2) 1 嵌入式开发平台 (4) 1.1 ARM的开发平台: (4) 1.2 器件选型 (7) 2 工具选择 (11) 3 编译和连接 (13) 3.1 RVCT的优化级别与优化方向 (16) 3.2 Multifile compilation (21) 3.3调试 (22)

Matlab/RTW实时仿真与嵌入式系统开发

Matlab/RTW实时仿真与嵌入式系统开发 引言在日益激烈的竞争中,系统的开发周期显得尤为重要,但开发时间 与系统安全性、可靠性又有一定冲突,如果仍然使用传统的编写代码的模式, 显然有些不妥。本文介绍一种基于Matlab/RTW 实现实时仿真与嵌入式系统 开发的方法。方法所涉及的开发环境如下:◆Microsoft Windows XP SP3:◆Matlab Version 7.5.0.342(R2007b);◆Keil uVersion2V 2.30;◆Proteus 7.1SP2。先借助Matlab/RTW 建立模型并生成RTW(Real-Time Workshop) 代码(C 语言),再使用Keil 编译、调试Matlab 生成的C 语言代码,并且生成HEX 文件。之后,利用Proteus 观察代码生成的效果,以验证代码的正确性。 基本流程如图1 所示。 1 构建Simulink 模型并生成RTW 代码以较为简单的模型为例,用 2 个开关 同时控制一个报警灯模型。当开关1、2 同时闭合时,报警灯亮,逻辑真值表 如表1 所列。在Simulink 中构建对应模型,只有当开关1、2 同时闭合时,报 警灯才亮,故选择如下模型实现上述功能。模型连接如图2 所示。 模型连接好之后,打开参数配置选项卡调整参数。具体修改项及其对应值 如表2 所列。 至此生成模型代码的前期准备已经完成,保存模型,取名Matlab_Test。下 一步就是点击Real_Time Work-shop 选项中的Build 按钮,Matlab 将自动生成模型代码。tips:感谢大家的阅读,本文由我司收集整编。仅供参阅!

嵌入式系统

第一章绪论 1.嵌入式系统的定义、特点和分类 2.嵌入式操作系统 3.嵌入式系统的选型 4.嵌入式系统的发展趋势 5.嵌入式系统的关键技术 6.嵌入式系统的应用 思考与练习 1.什么是嵌入式系统?嵌入式系统的特点是什么? 2.请说出嵌入式系统与其它商用计算机系统的区别。 3.嵌入式系统的关键技术有哪些? 4.请说明嵌入式系统技术发展及开发应用的趋势。 5.你知道嵌入式系统在我们日常生活中哪些设备中应用?说明其采用的处理器是什么?采用的哪一个嵌入式操作系统? 6.开发嵌入式系统的计算机语言主要有哪几种?分别用在什么场合?7. 嵌入式系统和专用集成电路的关系是什么? 第二章嵌入式系统设计方法 1. 需求分析与系统分析法 2.软硬件协同设计方法 3.嵌入式硬件开发方法 4.嵌入式软件开发方法 5.构件式开发方法 6.软件调试与软件测试方法 思考与练习 1.请说出嵌入式系统设计的主要方法及设计流程。在嵌入式系统开发的总体设计中,需要进行哪几方面的工作? 2.嵌入式硬件调试的主要方法及技术手段有哪些? 3.什么是构件式开发方法?说明该方法对嵌入式系统开发具有什么意义,并举例说明。4.需求分析阶段分为哪几个步骤?每个步骤完成什么工作? 5.在进行系统设计时,概要设计和详细设计的工作内容有什么不同? 6.在嵌入式系统实现阶段,需要选择开发平台,通常开发平台的选择包括哪些内容?7.在当今IT 时代,为了使产品尽快进入市场,就产品开发阶段,你认为有哪些方法可以加快产品的开发速度? 8.什么是“黑盒”测试?什么是“白盒”测试?什么是“灰盒”测试? 9.嵌入式系统开发中,使用软件组件技术有什么好处? 10.什么是知识产权核(Intellectual Property Core,简称IP Core)?指出“软知识产权核(Soft IP Core)”、“硬知识产权核(Hard IP Core)”、“固知识产权核(Firm IP Core)”的意义和差别。 11.根据嵌入式软件开发的不同阶段,嵌入式开发工具有哪些种类? 12.从底层硬件到上层应用,嵌入式软件的开发可以分为哪几种? 13.什么是交叉开发环境? 14.什么是OCD 调试方法?指出OCD 的主要形式JTAG 和BDM 的特点和区别? 15.嵌入式软件的调试运行环境和固化运行环境主要区别是什么?

如何选择嵌入式软件开发平台

久前,市场研究机构Embedded Market Forecasters (EMF)发布了一份报告指出:与嵌入式Linux平台相比,基于Microsoft Windows Embedded操作系统平台进行嵌入式系统开发,速度快43%,开发成本低68%.得出这个结论所采用的是TCD (Total Cost of Development,开发总成本)。 这个结论一经发布,可谓一石激起千层浪,热衷于嵌入式Linux的人们纷纷出来辩论,对其提出质疑。人们首先要怀疑这份报告的公正性,因为报告作者——EMF分析师Jerry Krasner博士公开承认,微软为他做出这份研究报告向他支付了费用。 在包括嵌入式软件在内的大多数软件领域,微软的地位无疑是非常重要的。Linux不仅因为继承了Unix的技术特色,更因为开放源代码而在商业机制上与一贯封闭的微软相对垒,赢得了众多口碑。不过,我们不应该忘记,在嵌入式软件开发领域并不是两军对垒,而是三足鼎立。这里还有一个非常重要的阵营——商业嵌入式软件开发工具提供商,例如Wind River的VxWorks.在激烈竞争的商业环境中,谁都希望以更低的成本、更快的速度推出满足市场需求、具有独特竞争力的产品呢。那么,嵌入式软件开发平台究竟应该采用什么样的衡量标准呢?哪一种嵌入式软件开发平台更能有效地帮助电子产品开发商降低产品成本、加快上市速度呢?为了对这些问题有一个全面的认识,让我们对来自微软、嵌入式Linux和商业嵌入式软件开发商的声音做一个全面的了解。 争执,从衡量尺度开始 衡量任何事情,都必须先有一个标准的尺度。为了说明什么样的嵌入式开发平台最经济有效,首先必须形成一套衡量标准。在这个关键问题上,的确是公说公有理、婆说婆有理。究竟谁的对,我们不妨来个“兼听则明”。 受微软公司的委托,EMF研究机构Krasner博士所提出的报告标题是《TCD:嵌入式开发平台的成本评估框架》,其中首先针对如何评估一个嵌入式软件开发平台提出了一套方法。Krasner博士说:“TCD( Total Cost of Development)评估框架可以帮助嵌入式设备制造厂商评估他们花在软件设计中的总体成本,从而便于他们提高开发设计质量,控制开发设计成本。” Krasner博士在报告中提出了这样一个模型: TCD=TTM x NOE x CPMM其中:TTM(Time to Market)为产品从开发工作开始到上市所用的时间,以“月”为单位;NOE(Number of Engineers used)为开发该产品所需的工程师数量;CPMM(Cost per Man-Month)为每个工程师每个月所需的费用。 Krasner的调查结果认为:Windows Embedded平台的平均TTM为8.1个月,而嵌入式Linux平台的平均TTM为14.3个月,前者比后者快了43%;从对软件工程师的需求来看,Windows Embedded 平台中每开发一个产品所需的平均工程师数量为7.9人,而嵌入式Linux平台需要14.2人,前者比后者节省44%.不管是在哪一种平台之中,调查报告把每个嵌入式软件工程师的平均月成本都假定为

模型驱动的嵌入式仿真系统设计

—237— 模型驱动的嵌入式仿真系统设计 李秀萍,董云卫 (西北工业大学计算机学院,西安710072) 摘 要:为解决嵌入式系统仿真应用需求多样性的问题并提高系统的开发效率,设计一种通用嵌入式仿真系统。该系统在Matlab/Simulink 开发环境的基础上,采用模型驱动的方法设计仿真模型并构建仿真组件库,实现了仿真系统模型的快速建立。同时设计了多接口、可扩展的仿真器硬件结构,解决了嵌入式系统接口的多样性问题。该仿真系统具有良好的可重用性和可移植性等特点,可用于多种嵌入式软件的开发,具有现实意义。 关键词:仿真系统;模型驱动架构;仿真模型;组件库 Design of Model-Driven Embedded Simulation System LI Xiu-ping, DONG Yun-wei (College of Computer, Northwestern Polytechnical University, Xi’an 710072) 【Abstract 】In order to solve the problem of diverse simulation application and improve the efficiency of development, a general simulation system for embedded software is designed, which adopts Model-Driven Architecture(MDA) development to construct simulation model for embedded system simulation based on the Matlab/Simulink. A simulation component library is built to achieve rapid establishment of the simulation system model. Extensible hardware of simulator is designed to fit variable I/O interfaces of the embedded system. The system has some strong advantages,such as reusability, portability, and can be used in the development of various embedded software. 【Key words 】simulation system; Model-Driven Architecture(MDA); simulation model; component library 计 算 机 工 程Computer Engineering 第36卷 第16期 Vol.36 No.16 2010年8月 August 2010 ·工程应用技术与实现·文章编号:1000—3428(2010)16—0237—03 文献标识码:A 中图分类号:TP391.9 1 概述 嵌入式系统是面向具体应用领域的特定软硬件的紧密结合体。因此,嵌入式软件对特定嵌入式硬件具有较强的依赖性。在嵌入式软件开发前期,由于真实的目标环境还没建立,因此必须向开发人员提供与目标硬件相似的仿真环境,使嵌入式软件能够尽早得到较真实的运行确认[1],以提高嵌入式系统的开发效率、缩短开发周期、减少开发成本。 仿真平台是嵌入式系统开发的重要支持工具,在嵌入式系统开发的很多领域得到广泛应用,但也出现了一些问题:(1)用户应用需求的多样性要求仿真平台具有可配置、可定制的能力;(2)由于开发时间越短越好,因此要求能够在现有仿真硬件的基础上快速地开发出一套仿真软件。为解决上述问题,本文运用模型驱动架构(Model-Driven Architecture, MDA)的思想并基于Matlab/Simulink 开发平台,设计了通用的嵌入式仿真系统。该系统由硬件和软件2个部分组成,硬件提供了多种I/O 接口,实现了平台的可扩展性,能够适应嵌入式系统接口多样性的需求;仿真软件使用模型驱动的开发方法使仿真软件具有可定制、可重用等特点。该仿真系统可以大幅度提高嵌入式系统的开发效率,能够对嵌入式系统的实时性、可靠性等进行验证,具有较高的实用价值。 2 理论基础 MDA 的提出为通用嵌入式仿真系统的实现提供了很好的解决方法。MDA [2]是软件工程领域近年来的重要研究成果,MDA 方法使设计者能够独立于具体平台进行系统设计,而最终又能够在某个具体平台中实现系统,从根本上解决了软件模型与实现代码之间难以同步的问题,实现系统的可重用性,使系统具有良好的可配置性和可移植性。MDA 软件 设计方法已经在现实的软件工程中得到了广泛应用,在仿真领域也得到了应用。 Matlab/Simulink [3]是一种对动态系统进行建模、仿真和分析的软件包,可以快速创建与系统交互的物理对象的动态行为模型。Simulink 使用图形化的编程方式,操作方便直观,允许用户用S 函数自定义模块。S 函数扩展了Simulink 的功能;Matlab 工具RTW(Real-Time Workshop)可用Simulink 模型生成优化的、可定制的、可移植的代码,此程序可以在实时系统和非实时系统等众多目标环境中运行仿真。因此,Matlab/Simulink 为模型驱动的仿真系统开发提供了工具 支持。 3 通用嵌入式仿真系统设计 3.1 嵌入式仿真系统组成 嵌入式仿真系统由仿真主控计算机、仿真器、嵌入式目标机、作动器等组成,如图1所示。目标机和作动器是进行具体仿真的连接对象,这里不作介绍。其中,仿真主控计算 机是一台普通PC , 具有C++ Compiler 、Matlab/Simulink 、RTW 等软件,通过以太网或串口与仿真器相连,在其上进行组件库开发、仿真模型开发、仿真参数设置、代码生成和下载、仿真控制、仿真数据回显和仿真结果分析等。为了满足嵌入式系统的实时性要求,仿真器上运行xPC 目标、VxWorks 等 基金项目:国家自然科学基金资助重点项目“高可靠构件化嵌入式软件设计与验证技术及其支撑环境研究”(60736017) ;国家“863”计划基金资助项目“高可信嵌入式软件生产线”(2007AA010304) 作者简介:李秀萍(1985-),女,硕士研究生,主研方向:嵌入式系统设计与仿真;董云卫,教授、博士生导师 收稿日期:2010-02-11 E-mail :lixiuping0322@https://www.wendangku.net/doc/7e13029681.html,

相关文档
相关文档 最新文档