TD-LTE多模基带平台ARM子系统的运行流程控制和异常定位分析
3.2 新跟踪控制机制
新跟踪控制机制的所有控制都由各个模块的跟踪源以函数宏定义的形式对跟踪接口进行重新封装,将跟踪信息的判断放在跟踪接口的外部。跟踪控制的场景不再进行详细的划分,考虑采用横向和纵向两个方面来对跟踪进行控制。横向的控制通过对跟踪信息的重要程度来划分,包括全开放、半开放、速率测试、用户释放和测试终端等方面;纵向的控制是系统中各个模块的跟踪信息的控制,当开发人员需要查看某个或某些模块的跟踪信息时,通过设置相应的值来输出预想模块的跟踪信息。新跟踪控制图如图5所示。
4 性能对比分析
通过原始跟踪方案与新跟踪方案的性能测试与对比分析得出,新跟踪方案提高了ARM执行效率表现在3个方面:
①在跟踪控制方面,原始跟踪方案的跟踪控制过于细致,跟踪判断过程过于复杂繁琐,多层的switch…case嵌套判断消耗了一些处理器的时间;新跟踪的控制采用跟踪接口外部控制,若当前跟踪不需要打印时,则当前任务不会进入跟踪接口,直接丢弃本条跟踪,这样避免了函数上下文切换的过程,减少了任务栈的切换,从而提高了执行效率。
②缓存管理方面,原始跟踪方案采用嵌套缓存,高优先级任务的跟踪信息写入嵌套缓存中,当需要输出跟踪信息时,需要将嵌套缓存中的数据回拷到全局跟踪信息缓存,在回拷的过程中白白地消耗了处理器的时间。而新跟踪缓存中,将所有的跟踪信息全部存储到一个缓存中,直接将跟踪信息输出,节省了回拷过程的时间,从而为处理器处理其他事件提高了效率。
③新跟踪方案在跟踪接口内部摒弃了svnprintf函数,直接将跟踪数据memcpy转移到跟踪缓存中。原始方案中,跟踪数据的原始码流通过svnprintf函数在ARM内部进行字符串的转化过程,再通过PC端的解码软件来解析原始码流,从而转化成可见字符串,省去了函数遍历参数的过程(该过程消耗了ARM的执行时间)。从变参的跟踪接口优化成定参跟踪接口,这种方式大大地提高了ARM的执行效率。
对于两种跟踪方案的测试分析,采用调用一条相同的跟踪信息所消耗的TD-LTE中一个子帧的时间片来统计时间,从而对比原始跟踪方案与新跟踪方案的效率提高程度。TD-LTE的一个无线帧长为10 ms,一个无线子帧又分为两个5 ms的半帧,每个半帧中有5个1 ms子帧,每个子帧有0x7800个时间片。
跟踪性能分析图如图6所示,在原始跟踪方案中调用5次跟踪接口打印字符串”ts_00_tra01_01tdynamicTrace01”及相应个数的变量的值,跟踪信息消耗的时间为T_old=(0x5679-0x481C)×(1/0x7800)=0.119 7 ms。在新跟踪方案中,同样调用5次新跟踪方案,跟踪接口打印同样字符串的内容及相应个数的变量的值,跟踪信息消耗的时间为T_new=(0x4809-0x4188)×(1/0x7800)=0.052 6 ms。由此可见,T_old的消耗时间大约是T_new的2倍,新跟踪方案节省了一半以上的时间,然后又多次对各种跟踪接口进行验证、测试、对比后,再次确认了新跟踪方案对ARM的执行效率有很大的提高。
结语
在多模基带的跟踪方案中,由于跟踪的传输通道只有一个,不能在不同的系统模式下采用不同的跟踪方案,并且TD_LTE多模方案中不仅要求跟踪信息的可靠性、时序性和正确性,对跟踪方案在ARM子系统中的执行效率也有所要求,不能影响TD-LTE的高速率的业务需求。综上考虑,本项目中采用新的跟踪方案可以满足TD-LTE多模基带平台下ARM子系统的执行效率要求和数据业务的速率要求。
评论