嵌入式系统完整开发方案学习资料
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
嵌入式系统完整开发
方案
本文提纲
嵌入式系统完整解决方案
一、前言:简单介绍嵌入式技术的飞速发展以及作为嵌入式领域老牌劲旅的旋极
公司在这方面所提供的完整解决方案;
二、由美国ATI公司生产的Nucleus操作系统特点及其优势;
三、根据用户所选用的CPU的不同,编译器有多种不同的选择:Paradigm开发
工具、CAD-UL开发工具,ARM公司的SDT2.5X 和ADS1.X,GreenHill 编译器;
四、嵌入式开发中,代码的调试也是重要的一步,因此必须选择好的调试工具才
能生产出好的软件,通常的调试手段有三种:ICE、ICD和MONITOR,我们向大家推荐由德国Lauterbach公司生产的Trace32-ICE/ICD;
五、用户需要RTOS厂商提供原型工具,以便可以在主机上来仿真目标软件环
境;
六、最后举例说明基于ARM/MIPS的开发方案。
嵌入式系统完整开发方案
xx旋极信息技术有限公司
在嵌入式技术飞速发展的今天,嵌入式产品已经出现在社会的各个领域,包括航空、航天、军事、仪表、工业控制及家庭消费等。全球每年要消耗掉30亿颗嵌入式微处理器,嵌入式系统带来的工业年产值已经超过了1万亿美元。而在这些嵌入式应用中,大多采用了嵌入式实时多任务操作系统(RTOS)。
早期的嵌入式应用程序都是在没有操作系统支持的裸机上用汇编语言和C语言来开发,这也正是目前我国大多数嵌入式开发的工作模式。为了能够有效利用高档单片机的处理能力,现代的嵌入式产品开发大多选用RTOS作为软件的核心。这样,不仅能够把系统软件和应用软件分开处理,还可以极大地简化系统的开发过程,提高可靠性,并缩短产品上市的时间。可以说RTOS 使嵌入式软件的编写从“小生产方式”进入了“大生产方式”。
旋极公司作为国内嵌入式技术领域的老牌劲旅,从xx93年公司创建之初就致力于嵌入式技术的引进和开发。起初,只是作为国外厂商的代理,向用户提供相应的开发工具,现在,为了适应市场的要求,改变了以前的模式,从简单的提供开发工具发展到向用户提供完整的解决方案。这其中包括:操作系统(图形、网络、浏览器等)、仿真器、编译器、原型工具等产品和我们为用户提供的全方位的技术支持服务。
一、操作系统
在这里我们要向大家推荐的操作系统是Nucleus,它是美国ATI公司的产品,是为实时嵌入式应用而设计的一个抢先式多任务操作系统。其95%的代码由ANSI C语言写成,因此结构性和可移植性非常好。Nucleus操作系统的设计采用了面向对象的方法,整个软件由多个功能明确的组件构成,因此结构清晰,便于裁减和复用。
Nucleus操作系统还拥有丰富的外围模块(如下图所示),如TCP/IP网络协议栈(包括各种应用层的协议)、多种风格的图形系统(Windows和Mac风格)、基于RAM/Flash存储器的文件系统、以及一个功能可定制的Internet浏览器。
值得一提的是,以上模块提供给用户的都是源代码,并且免付产品版税,因此对于产量很大的消费类电子产品来说,可以极大地降低成本,提高产品竞争力。也正是因为提供了源代码,在产品开发过程中极大地降低了用户BSP 开发的难度,加快了产品上市的周期。
二、 编译器
根据用户所选用的CPU 的不同,编译器有多种不同的选择。
针对X86处理器的实模式应用,我们向用户推荐使用Paradigm 开发工具。这是一套完整的集成开发环境,包括编译器、链接器/定位器、调试器,具有类似于Borland C 的风格,易学易用。同时,这一款开发工具除了能够进行源码级调试之外,还可以与Nucleus 操作系统完美地配合,完成系统级的调试。
针对X86处理器的保护模式应用,我们向用户推荐使用CAD-UL 开发工具。这套工具与Paradigm 相比,既能够进行实模式的开发,也能够进行保护模式的开发。
针对ARM 处理器,目前最常用的是ARM 公司的SDT2.5X 和ADS1.X ,后者比前者增加了C++的支持。而GNU 则是SH4和MIPS 处理器的较好的选择方案。
GreenHill 编译器在我们的方案中也占有重要的地位,因为它可以支持多种CPU 。
三、 调试器/仿真器
嵌入式开发中,代码的调试是重要的一步,因此必须选择好的调试工具才能生产出好的软件。通常的调试手段有3种:ICE 、ICD 和MONITOR 。
ICE 就是由仿真器的仿真头来完全取代目标板上的CPU 进行工作,产生外部电路所需的信号,同时捕获外部的所有信号。这种调试方式功能最强大,但是成本很高;
Nucleus EDE 原型工具
调试工具 RMON SNMP SPAN Networking NET WebServ JVi CLIB FILE Supporting Products GRAPHIX
ICD主要针对那些具有BDM/JTAG等调试端口的处理器,仿真器通过调试口控制CPU运行,但是实际的动作还是要由CPU来产生,因此就要求在目标板能够调试之前,必须保证CPU、晶振及内存等部件正常运行;
MONITOR调试方式实际上是一种软件的调试方式,调试主机通过某种通信方式(如异步串行口)与运行在目标板上的MONITOR程序进行通信,通过MONITOR程序来控制CPU的运行。在调试之前,必须确保目标板硬件完好,MONITOR软件运行正常,因此环境的建立有一定的困难,同时,调试时用户的应用程序可能因为误操作而破坏了MONITOR程序造成系统崩溃,无法判断错误原因。
我们这里要向大家推荐的调试工具是LAUTERBACH公司生产的TRACE32-ICE/ICD。
这是一款模块化的开发系统,通过LAUTERBACH公司自己定义的PODBUS把各个模块联结起来,完成强大的功能。除了完成传统的仿真器的调试功能之外,还具有多种触发方式、能够对程序执行过程进行追踪、能够进行程序的性能分析、能够进行代码的覆盖率分析,还能够完成任务级的调试,与Nucleus操作系统能够完美地结合。它可支持Intel、Infineon、IDT、MIPS 等芯片厂商的各种处理器,支持CAD-UL、SDS、Diab、GreenHills、ARM SDT/ADS等各种编译器生成的各种调试格式的文件。
四、原型工具
用户都希望在硬件开发完成之前,能够开始上层应用软件的开发,从而加快产品上市的速度,这就需要RTOS厂商提供原型工具,使得用户可以在开发主机上来仿真目标软件环境。
ATI公司针对Nucleus操作系统及其外围模块,开发了MNT系列产品:如针对操作系统内核的MNT、针对网络模块的VNET、针对图形模块的GRAFIX-NT、针对文件系统的FILE-NT 和针对Internet浏览器的BROWSER-NT。
与实际的目标环境相比,这些原型环境借用主机(如Windows)上的开发工具(如
VC++)进行编译和调试。但是提供给用户上层应用程序的API是一致的,因此用户可以把原型环境下的代码拿到目标环境中,重新编译就可以运行了。
例:基于ARM/MIPS的开发方案