首页 > 嵌入式软件 > vxworks

在CDMA基站BTS侧,EVDO基带信号处理板负责完成基带信号的调制和解调工作,在整个通讯系统中具有非常重要的作用。基带处理板的硬件系统包括PPC、高通CSM6800等芯片;软件系统包括VxWorks操作系统、BSP驱动层、信号处理应用层等部分。基带信号处理板在运行中对外界条件和组成单元要求苛刻,当运行条件不满足系统要求时,传统的方法是采用整板硬复位的方法进行故障恢复。

需要整板复位的情况包括:(1)时钟信号出现故障,导致调制和解调异常;(2)CSM6800调制解调芯片出现异常;(3)部分应用层任务出现异常;(4)在线修改基于CSM6800的基带参数,只有硬复位后才能生效;(5)更换新的单板软件版本等。

在基站系统的实际运行中,上述情况都比较常见。基带信号处理单板一旦整板复位,通常需要4~5分钟才能恢复正常工作,期间终端用户无法进行正常业务应用。对于用户来说,这个业务中断的时间长度难以容忍,因此增加了用户投诉概率和对运营商的压力。如何解决这个问题已成为当务之急。

1 单板快速恢复设计方案

1.1 单板架构分析

如图1,基带信号处理单板硬件由两个主要组成部分:一个是主控CPU,采用高性能的PowerPC;另外一个是高通公司的基带信号调制、解调芯片CSM6800。

主控CPU完成对整个单板的控制,包括对CSM6800的控制、与BSC侧进行媒体流数据的交互、单板自身各项功能的实现等。主控CPU采用VxWorks作为实时操作系统,对单板上任务、消息队列、内存等进行管理,采用百兆网口与BTS其他单板交换数据。

本文引用地址: http://embed.21ic.com/software/vxworks/201806/64374.html

CSM6800是高通推出的支持CDMA3G EVDO第二代的调制解调芯片,它具有支持前向速率3.1Mb/s和反向1.8Mb/s的调制解调能力。CSM6800的工作条件比较苛刻:(1)需要时钟系统提供精确的PP2S信号和16CHIP信号;(2)修改CSM6800配置参数后,需要复位CSM6800后才能生效。

如图2,在基带信号处理板上CPU中的软件架构是在VxWorks操作系统上完成应用层任务的调度和运行。下面分析单板上软件系统:

(1)操作系统层。基带信号处理板对实时性要求很高,因此采用VxWorks作为操作系统,完成任务管理等操作系统工作。

(2)BSP底层驱动程序。该层封装了一些上层软件需要时使用的底层或者是硬件的接口,保证上层软件更好的移植性。

(3)应用层。该层完成处理底层数据,并与BSC侧完成数据交互、基带功能控制以及包括单板的一些应用程序,如告警模块、性能统计模块、信令跟踪模块等。

从以上分析,基带单板从软件和硬件上基本可以分为相对独立的主控CPU和CSM6800两大部分。

1.2 快速启动方案设计

首先分析基带信号处理板的各种复位场景,并且进行梳理。其场景分为两大类:一类是不需要整板复位就能解决问题或者故障恢复的场景;另外一类是只有复位整板才能够解决故障。在实际的商用环境中,第二类故障或场景非常少,主要包括:(1)基站软件升级;(2)底层操作系统跑死。由于系统升级频率极低,且选择升级的时间都是事先进行安排,因此对于用户业务影响很小。至于底层操作系统跑死的可能性更加低微,无论是实验室还是商用机都极少出现此类情况。

相对而言,第一类场景比第二类场景出现的概率更高一些,目前都是采用统一整板复位的方式来进行功能恢复或者重新启动。

在分析各类场景之前,首先分析整板启动时间消耗在哪里。经过测试和计算,其结果如表1。

分析表1,整体启动时间需要253s左右,但是前四步就占用了245s,尤其是第4步高通CSM6800芯片自检,消耗了170s的时间。

分析了所有的复位源,将可以归类到第一类场景的复位源进行了细化,具体如下:

(1)更改CSM6800参数,需要重新启动CSM6800生效;
(2)时钟系统出错,应用层诊断后,为防止CSM6800出错,需要重新启动CSM6800;
(3)CS6800运行期间报错,需要重新启动CSM6800;
(4)启动时的参数校验错误,需要重新复位系统。

针对(1)、(2)、(3)这三种情况,在PPC上即控制CPU上的程序本身并没有任何问题,因此不需要复位整个CPU。第4种情况是上层的配置参数有误,导致单板无法正常运行,但是实际上此时的单板并没有出现异常,其他各个功能模块也没有出现故障。

由此可见,基带信号处理板在CSM6800需要复位才能实现正常功能时,具有重新设计单板复位机制的基础。这个基础就是CSM6800复位,或者是针对CSM6800操作出现故障后,并不影响CPU操作系统上底层任务的正常运行,只是对CPU应用层任务产生了影响。依据这个分析基础,进行了基于VxWorks的快速恢复机制设计。其具体实施方法为:

(1)流程如图3,首先判断是要发起快速恢复启动还是正常的整个单板复位。

(2)正常的单板复位流程,按照单板原设计方案执行;如果是快速启动方案,则按照快速启动方案执行:
①清除各种定时器,包括单板与基站其他单板的握手定时器、任务自身的循环定时器,以及其他各种特殊用途的定时器,防止定时器溢出产生任务切换或者导致硬件中断。
②清除数据堆栈。
③调用msgQDelete()清除各个应用层任务消息队列[1];清空后,任务不处理新来的消息,这样任务不会因为消息的激励产生任务切换。
④释放应用层任务的指针变量,防止出现无主内存,最终导致内存不断变小,单板无法执行正常的功能。
⑤清除各个应用层任务的静态变量;每个任务都有自己静态成员变量,因此必须要将这些成员变量的数值归于初始化值,否则将导致不可预见的错误。
⑥清除各个应用层任务的局部变量;尽管局部变量在释放任务后会自动释放,但是为了防止不可预知的错误,仍然要将其释放,进行初始化操作。
⑦各个应用层调用taskDelete()任务释放自己[2];这个应用层多个任务需要完成的最后一个工作,完成自身释放后,任务构建时所在单板上申请的堆栈、任务ID、内存等全部从操作系统中抹掉,操作系统将把原先各个应用层任务占用的资源进行无主化管理。
⑧通过逻辑控制复位CSM6800;这是关键的一步,如果不能实现,则整个方案意义也就不大。在逻辑中增加可以单独控制CSM6800复位控制的逻辑,当单板完成应用层的快速启动准备后,要通过操作系统对CSM6800芯片进行复位。复位后,该芯片会重新启动恢复正常状态,并且,重新按照应用层给的新的配置参数进行配置。这样即满足了由于某些原因导致其进入到异常状态而无法正常调制和解调的问题,同时也解决了新的配置参数无法生效的问题。
⑨重新启动调用taskSpawn()[3]启动各个应用层任务。按照单板正常情况下进行各个应用层任务的启动。对于应用层而言,此时并不知道在执行快速启动后是任务启动还是在单板完全复位后的启动。
⑩启动的各个应用层任务只有在各自正常启动后,单板才进入到正常的工作状态,否则将重新执行快速启动。

1.3 快速恢复启动效果测试

采用中兴CDMA EVDO真实环境进行测试,选择高通支持第二代协议的手机进行测试。首先,将高通手机拨号进行网络连接,拨号成功后,再进行ping包,并保持ping包状态;然后,采用不同的复位策略复位基带信号处理单板,并进行对比测试。

按照两种方案进行测试,测试结果如果表2。

如表2,快速恢复启动方案的启动时间比原有正常启动缩短了95.3%,大大缩短了系统恢复正常功能所需要的时间,达到了系统设计目的。为了保证设计方案的稳定性,连续多天进行上千次快速恢复启动集成测试,测试表明设计方案稳定,并且对于系统的各方面性能指标无影响。

两种启动方式的区别:正常启动就是目前的做法,将整个单板上所有的硬件和软件同时做复位处理,其所需要时间达到了253s,十分漫长;快速恢复启动方案则并没有将整个单板复位,而只是在操作的过程中将CSM6800进行了硬复位操作,其主控CPU没有复位,不仅如此,主控CPU上面驻留的操作系统和操作系统隔离层都没有受到影响,只有应用层的各个任务被重新启动了一遍。

2 结论

快速恢复启动方案的可靠实施是建立在VxWorks操作系统对于任务、消息队列、信号量的高性能管理基础上的。连续多次启动和杀掉多个应用层任务过程中,VxWorks能够稳定地管理各项资源[2],没有产生内存泄漏、资源锁死等状况,充分保证了上层应用任务的可靠。同时,在该快速恢复启动方案的实施中,注意了应用任务中采用的多种定时器、静态变量、全局变量(包括临时变量),以及任务之间的互锁、任务之间冲突隐患等各种情况的处理,才保证了快速恢复启动方案的可靠性。

在商用局的应用中,基带信号处理单板采用快速恢复启动方案能够大大缩短启动时间,极大地降低对终端用户的业务干扰。这项系统设计对于提高运营商服务质量和顾客满意度起到了重要作用。

换一批

延伸阅读

[趣科技] 麻省理工研发新神经网络芯片:速度增6倍 功耗少94%

麻省理工研发新神经网络芯片:速度增6倍 功耗少94%

据MIT News报道,麻省理工学院(MIT)的研究人员开发出了一种可用于神经网络计算的高性能芯片,该芯片的处理速度可达其他处理器的7倍之多,而所需的功耗却比其他芯片少94-95%,未来这种芯片将有可能被使用在运行神经网络的移动设备或是物联......

关键字:麻省理工 神经网络芯片

[新鲜事] 太阳系有史以来第一位太空访客,你造型这么奇特我们同样欢迎

太阳系有史以来第一位太空访客,你造型这么奇特我们同样欢迎

从抬头仰望星空,到利用航天器开展探索,浩瀚的宇宙,让人类的好奇心得到充分释放的同时,也不断拓展着人类认知的疆界。上个月,科学家们通过天文望远镜发现,一个神秘物体正迅速从太阳系中掠过。经过数周的观察,20号,科学家们正式认定,这位不同寻常的来......

关键字:太阳系

[新鲜事] 半导体企业工作20年的老爸工资被Facebook工作两年的女儿超越?

半导体企业工作20年的老爸工资被Facebook工作两年的女儿超越?

做硬件好还是做软件好?硬件真的不如软件有前(钱)途?这不是一个新鲜的话题,而是很多电子硬件工程师长久以来的无奈和痛楚。......

关键字:硬件 软件 工资

[猎聘集] 面试过900+工程师的HR自述,手把手教你看破面试中的套路

面试过900+工程师的HR自述,手把手教你看破面试中的套路

技术面试常常有很多坑,不管是对面试官还是面试者来说,都是如此。这篇文章可以让技术面试官规避很多面试过程中可能出现的问题,也可以给即将参与技术面试的面试者一定的启发。......

关键字:技术面试

[新鲜事] 8年前用一万个比特币买2个披萨,如今的他又出手了...

8年前用一万个比特币买2个披萨,如今的他又出手了...

2010年5月22日,一名为Laszlo Hanyecz的程序员用一万个比特币购买了两个披萨。当时一枚比特币价值仅为0.003美分,如今则是9669.27美元。......

关键字:比特币 程序员
条评论

我 要 评 论

网友评论

大家都爱看

  • 扇出型晶圆级封装的优势和挑战!

    我们有能力创造一些能保持前代性能并且更好更小的电子设备,例如今天的可穿戴设备、智能手机或平板电脑,这是由于很多因素超过摩尔定律而快速发展,从而能够从底层的嵌入组件发展到今天把它们封…

    2018-03-29
  • Xilinx推出革命性的新型自适应计算产品

    自适应和智能计算的全球领先企业赛灵思公司(Xilinx, Inc.,(NASDAQ:XLNX)),近日宣布推出一款超越FPGA功能的突破性新型产品,名为ACAP(Adaptive Compute Acceleration Platform,自适应计算加速…

    2018-03-20
  • 赛普拉斯为树莓派3 B+ IoT单板计算机提供强大稳定的无

    先进嵌入式系统解决方案的领导者赛普拉斯(纳斯达克代码:CY)近日宣布其Wi-Fi®和蓝牙®combo解决方案为全新的树莓派 3 B+(Raspberry Pi 3Model B+)IoT单板计算机提供强大稳定的无线连接…

    2018-03-20
  • 观看直播领红包,SEED-A10加速卡助力人工智能

    随着云服务器、云计算的发展,大家对硬件加速的需求越来越多,但是随着设备功耗的上升、性能需求越来越高,常规加速设备以及开始不能满足需求,因此FPGA逐渐在硬件加速中找到了自己的位置,而艾…

    2018-03-19
  • 特朗普:博通不得以任何形式收购高通

    白宫周一(3月12日)晚发出声明,川普(特朗普)总统出于“国家安全”考量、禁止新加坡博通公司(Broadcom)收购美国高通公司(Qualcomm)。

    2018-03-14