- 嵌入式系统开发基础与实践教程
- 钱恭斌 肖敦鹤编著
- 837字
- 2020-08-28 12:54:43
1.2 嵌入式系统开发环境
(1)嵌入式系统集成开发环境(IDE)
用户开发嵌入式系统时,一套含有编辑软件、编译软件、汇编软件、链接软件、调试软件、项目管理及函数库的集成开发环境(IDE)可以加快开发进度并节省开发成本。编辑、编译、汇编和链接等全部工作可在PC机的IDE内完成,相应的仿真调试工具则完成程序的下载工作并配合IDE进行系统调试。
针对ARM的常用嵌入式集成开发环境(IDE)有:ARM公司的SDT、ADS、RealView等,及GreenHill公司的MULTI 2000等。
(2)嵌入式系统系统仿真调试技术
目前常用的调试技术有指令集模拟器、驻留监控软件、在线调试器和在线仿真器等几种。
指令集模拟器可以使用户无须仿真器和目标环境,就可以在PC机上实现调试逻辑流程、算法等功能,简单、方便、价廉。其不足是,由于指令集模拟器与真实的硬件环境相差很大,即使用户使用指令集模拟器调试通过的程序也有可能无法在真实的硬件环境下运行。ARM公司的ADS中包含了一个叫做ARMulator的指令集模拟器。
驻留监控软件(Resident Monitors)是一段运行在目标板上的程序。调试软件通过以太网口、并行端口、串行端口等通信端口与驻留监控软件进行交互,由调试软件发布命令通知驻留监控软件控制程序的执行、存储器和寄存器的读/写、断点的设置等。它的优点是,工作时不需要任何其他的硬件和仿真设备。缺点在于,它要求硬件稳定之后才能进行应用软件的开发,同时它占用目标板上的部分资源且程序不能全速运行仿真。ARM公司的Angel就是该类软件。
在线调试器是通过集成在MCU芯片上的调试接口(如BDM、JTAG、OCDS等)进行仿真的设备,属于完全非插入式(即不使用片上资源)调试,它无须目标存储器,不占用目标系统的任何端口。在线调试的目标程序在目标板上执行,仿真更接近于真实的目标环境。因此在目前ARM的应用开发中,较多使用集成开发环境配合JTAG仿真器。
在线仿真器使用仿真器完全取代目标板上的CPU,完全控制并仿真MCU的行为,提供更加深入的调试功能,能够提供实时而又强大的调试功能。但对于时钟速率高于100MHz的处理器,设计和工艺极其复杂,价格昂贵。ARM处理器时钟速率较高,很少使用在线仿真器。