资料介绍
引言
嵌入式系统是当今计算机软件领域的热点,实时性是嵌入式系统的基本要求。随着嵌入式技术的不断发展,在嵌入式应用的不断增长以及嵌入式系统复杂性不断提高的情况下,调试阶段在整个系统开发过程中所占的比重越来越大。调试环境和调试技术直接影响软件开发的效率和质量,高效的调试系统可以大大减少嵌入式系统开发的时间,减轻系统开发工作量。
跟踪调试系统主要有JTAG在线调试和运行时跟踪调试两种方式。JTAG在线调试在调试实时系统时有很大的局限性,如通过断点查询完参数后系统无法再按照正常时序运行,以及无法检测到系统顺序化执行的变迁状态。运行时跟踪调试采用软件插桩技术,通过在程序中嵌入跟踪点,开发人员可以在程序运行过程中通过跟踪点实时观察输出的信息,如各模块之间进行交互的信息以及程序运行的顺序等。
本项目设计的实时跟踪系统基于运行时跟踪调试手段,采用ARM11系列处理器作为硬件开发平台,运行于Nucleus实时操作系统上。Nucl eus实时操作系统为抢先式多任务操作系统,在程序执行过程中,低优先级任务会被高优先级任务抢占,可能出现跟踪任务冲突而导致跟踪信息相互覆盖、乱序等问题。特别是在跟踪信息量较大时,一旦超过传输峰值就会造成跟踪信息的丢失。该实时跟踪系统采用特殊缓存机制和解析机制,能够解决跟踪信息丢失的问题,实现跟踪信息的完整、有序传输。
1 原始跟踪方案
实时跟踪系统由跟踪信息缓存单元、传输控制单元和PC端解析单元组成,如图1所示。其中,跟踪信息缓存单元负责对跟踪信息的组装和跟踪缓存的管理,传输控制单元负责将跟踪信息从跟踪缓存搬移到PC端,PC端解析单元负责对跟踪信息进行解析。
跟踪缓存管理机制是指如何管理该跟踪缓存的读写权限,如何记录读写索引的变化。在有跟踪备份缓存的跟踪方案中,跟踪缓存管理机制还负责对备份缓存的管理。在跟踪系统中,所有跟踪信息在跟踪点输出时被封装成为固定帧格式(消息头+消息内容),写入到跟踪信息缓存单元中同一个长度为X字节的环形队列。
由于Nucleus多任务操作系统下实时跟踪系统中跟踪源主要分为低级中断、高级中断/定时器和任务等,因此在对跟踪源中的跟踪点进行跟踪的过程中,不同优先级的跟踪点可能出现对全局跟踪信息缓存的竞争。跟踪冲突场景如图2所示。跟踪信息缓存单元中仅设置了一个写指针访问跟踪信息缓存,保证了跟踪信息的有序性,但不同优先级跟踪源进行切换时会产生冲突,需要对写指针现场进行保护。
由于阻塞高优先级任务会造成系统流程异常,在产生冲突时,为了保证跟踪信息完整性,同时又不能阻塞高优先级任务,只能丢弃高优先级任务中的跟踪请求。当操作系统任务频繁切换时,会出现较多跟踪信息丢弃的现象。跟踪信息丢弃现象的特征是跟踪信息整条丢失、连续丢失(主动抢占任务中的所有跟踪),且跟踪信息丢弃与跟踪信息传输损耗无关。因此,跟踪系统中的缓存机制有待优化。
2 跟踪优化方案一
2.1 物理缓存管理机制
物理缓存管理机制采用含跟踪头、跟踪信息内容和跟踪尾的跟踪信息帧格式,在跟踪源数据相互被打断的过程中不考虑跟踪信息的完整性,按照打断的优先级顺序将跟踪信息写入跟踪缓存。跟踪信息写入场景如图3所示。任务1跟踪信息写入跟踪信息缓存过程中,被高级中断/定时器打断。高级中断/定时器将其跟踪信息头写入当前写指针处,直至整条跟踪信息写入完成。任务1获得执行权,其未写完的跟踪信息紧接着高级中断/定时器跟踪信息尾部写入,直至整条跟踪信息写入完成。
嵌入式系统是当今计算机软件领域的热点,实时性是嵌入式系统的基本要求。随着嵌入式技术的不断发展,在嵌入式应用的不断增长以及嵌入式系统复杂性不断提高的情况下,调试阶段在整个系统开发过程中所占的比重越来越大。调试环境和调试技术直接影响软件开发的效率和质量,高效的调试系统可以大大减少嵌入式系统开发的时间,减轻系统开发工作量。
跟踪调试系统主要有JTAG在线调试和运行时跟踪调试两种方式。JTAG在线调试在调试实时系统时有很大的局限性,如通过断点查询完参数后系统无法再按照正常时序运行,以及无法检测到系统顺序化执行的变迁状态。运行时跟踪调试采用软件插桩技术,通过在程序中嵌入跟踪点,开发人员可以在程序运行过程中通过跟踪点实时观察输出的信息,如各模块之间进行交互的信息以及程序运行的顺序等。
本项目设计的实时跟踪系统基于运行时跟踪调试手段,采用ARM11系列处理器作为硬件开发平台,运行于Nucleus实时操作系统上。Nucl eus实时操作系统为抢先式多任务操作系统,在程序执行过程中,低优先级任务会被高优先级任务抢占,可能出现跟踪任务冲突而导致跟踪信息相互覆盖、乱序等问题。特别是在跟踪信息量较大时,一旦超过传输峰值就会造成跟踪信息的丢失。该实时跟踪系统采用特殊缓存机制和解析机制,能够解决跟踪信息丢失的问题,实现跟踪信息的完整、有序传输。
1 原始跟踪方案
实时跟踪系统由跟踪信息缓存单元、传输控制单元和PC端解析单元组成,如图1所示。其中,跟踪信息缓存单元负责对跟踪信息的组装和跟踪缓存的管理,传输控制单元负责将跟踪信息从跟踪缓存搬移到PC端,PC端解析单元负责对跟踪信息进行解析。
跟踪缓存管理机制是指如何管理该跟踪缓存的读写权限,如何记录读写索引的变化。在有跟踪备份缓存的跟踪方案中,跟踪缓存管理机制还负责对备份缓存的管理。在跟踪系统中,所有跟踪信息在跟踪点输出时被封装成为固定帧格式(消息头+消息内容),写入到跟踪信息缓存单元中同一个长度为X字节的环形队列。
由于Nucleus多任务操作系统下实时跟踪系统中跟踪源主要分为低级中断、高级中断/定时器和任务等,因此在对跟踪源中的跟踪点进行跟踪的过程中,不同优先级的跟踪点可能出现对全局跟踪信息缓存的竞争。跟踪冲突场景如图2所示。跟踪信息缓存单元中仅设置了一个写指针访问跟踪信息缓存,保证了跟踪信息的有序性,但不同优先级跟踪源进行切换时会产生冲突,需要对写指针现场进行保护。
由于阻塞高优先级任务会造成系统流程异常,在产生冲突时,为了保证跟踪信息完整性,同时又不能阻塞高优先级任务,只能丢弃高优先级任务中的跟踪请求。当操作系统任务频繁切换时,会出现较多跟踪信息丢弃的现象。跟踪信息丢弃现象的特征是跟踪信息整条丢失、连续丢失(主动抢占任务中的所有跟踪),且跟踪信息丢弃与跟踪信息传输损耗无关。因此,跟踪系统中的缓存机制有待优化。
2 跟踪优化方案一
2.1 物理缓存管理机制
物理缓存管理机制采用含跟踪头、跟踪信息内容和跟踪尾的跟踪信息帧格式,在跟踪源数据相互被打断的过程中不考虑跟踪信息的完整性,按照打断的优先级顺序将跟踪信息写入跟踪缓存。跟踪信息写入场景如图3所示。任务1跟踪信息写入跟踪信息缓存过程中,被高级中断/定时器打断。高级中断/定时器将其跟踪信息头写入当前写指针处,直至整条跟踪信息写入完成。任务1获得执行权,其未写完的跟踪信息紧接着高级中断/定时器跟踪信息尾部写入,直至整条跟踪信息写入完成。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 基于ARM核的嵌入式系统异常处理机制的设计
- [IC]浅谈嵌入式MCU软件开发之中断优先级与中断嵌套
- 基于多级队列的云服务并发量分级缓存机制 15次下载
- 嵌入式发动机活塞温度测试系统设计方案 22次下载
- 基于ARM的嵌入式Web服务器设计方案 20次下载
- 基于缓存机制的智能电网PLC网络部署方案 5次下载
- 节点位置信息驱动的终端缓存管理机制 16次下载
- 嵌入式Linux与物联网软件开发C语言内核深度解析书籍的介绍
- 嵌入式多功能信息交互系统设计方案解析 0次下载
- 嵌入式软件在计算机软件设计中应用 14次下载
- 嵌入式软件技术应用设计方案汇总 4次下载
- 内容中心网络中基于缓存索引的缓存路由机制 0次下载
- 一种基于嵌入式系统的远程程序更新机制
- 嵌入式系统上消息机制的实现
- 嵌入式实时操作系统VxWorks内核调度机制研究
- 嵌入式系统中的实时操作系统 263次阅读
- CP AUTOSAR信息安全机制全面解析 2234次阅读
- 嵌入式开发软件中回调函数的使用 2120次阅读
- 嵌入式Interet安全通信机制EISCM的应用探讨 1721次阅读
- 基于UML嵌入式软件开发环境的自动取款机系统的应用方案 3608次阅读
- 嵌入式系统的全面解析 3146次阅读
- 基于嵌入式软件的JNI技术应用解析 1020次阅读
- 嵌入式软件开发编程规范介绍 4206次阅读
- 嵌入式系统内存管理机制详解 4430次阅读
- 基于嵌入式环境的WiFi通信设计方案详解 5593次阅读
- 液晶显示屏设计方案:基于Nios嵌入式软核处理器 1081次阅读
- 基于MIMO技术的视频缓存器设计方案 772次阅读
- 一种采用特殊缓存机制和解析机制的嵌入式软件实时跟踪系统 1077次阅读
- 基于FreeRTOS的嵌入式实时操作系统的原理和实现 6562次阅读
- 一种嵌入式Web服务器的设计方案 4151次阅读
下载排行
本周
- 1GBT1094.11-2022电力变压器第11部分:干式变压器
- 14.12 MB | 3次下载 | 免费
- 2FT-7800R对讲机维修手册附原理图
- 3.35 MB | 2次下载 | 免费
- 3串口工具UartAssist5.0.exe
- 0.60 MB | 2次下载 | 免费
- 4爬电距离和电气间隙计算
- 0.75 MB | 2次下载 | 1 积分
- 5UC3584DW次级侧后置稳压器EVM板原理图
- 38.97KB | 2次下载 | 免费
- 6UCC38C42 25瓦自谐振复位正激变换器
- 320.6KB | 1次下载 | 免费
- 7ZX-D37 BLE主从一体蓝牙模块技术手册
- 1.22 MB | 1次下载 | 免费
- 8使用15个时钟周期的ADS7841和ADS7844
- 188.55KB | 1次下载 | 免费
本月
- 1无刷电机控制方案设计合作
- 1.05 MB | 22次下载 | 免费
- 2美的超薄电磁炉TM-S1-09B主板原理图
- 0.08 MB | 20次下载 | 免费
- 3纯电动汽⻋的主要部件及⼯作原理
- 5.76 MB | 12次下载 | 5 积分
- 4GP328和GP88S对讲机的维修实列资料合集免费下载
- 0.03 MB | 10次下载 | 10 积分
- 5舒尔SLX4无线话筒接收机原理图:二次变频超外差部分
- 0.27 MB | 8次下载 | 免费
- 6IP5385_DEMO开发资料
- 1.96 MB | 7次下载 | 2 积分
- 7i.MX Linux开发实战指南—基于野火i.MX系列开发板
- 17.86 MB | 7次下载 | 免费
- 8Type-C VL160数据手册
- 0.92 MB | 7次下载 | 3 积分
总榜
- 1matlab软件下载入口
- 未知 | 935115次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420061次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233084次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191363次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183329次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81581次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73805次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65985次下载 | 10 积分
评论
查看更多