本文分析了基于最新SOC处理器设计的LTE基站对于平台软件的功能需求。针对基于SOC的基站平台软件应用中所遇到的问题, 提出了Enea面向于基站中SOC处理器的平台软件解决方案, 给出了详细的实现过程及应用实例, 该方案对基站平台软件的设计提供了新的思路。
1.前言:
随着移动通信技术的发展,从最早的第一代vwin 无线网络、第二代GSM通信网络、第三代3G通信网络、直到目前商用的4GLTE通信网络,甚至正在研究阶段的5G通信网络,从GSM 的TCH9.6Kbps,到GPRS的171Kbps,再到WCDMA、TDSCDMA的384kbps,以及HSDPA的14.4Mbps,再到目前LTE的下行100Mbps,数据的传输速率越来越快。数据处理能力的增加对无线基站平台提出了越来越高的要求,从而无线基站处理单板的设计也越来越复杂,逐步向多核多CPU、多核多DSP的方向演进,随着芯片集成度越来越高,融合多CPU和多DSP核的单芯片SOC解决方案成为目前LTE基站设计的热点。
在融合CPU和DSP的单芯片SOC中,一般包含多个CPU和DSP核,以及大量的片内外设,例如目前LTE基站的主流SOC芯片Freescale的B4860,片内包含4个PowerPC CPU核以及6个SC3900 DSP核,集成以太网、SRIO、MAPLE算法加速器等大量外设。随着芯片硬件的复杂度提高,对于如何管理如此复杂的系统,对基站平台的软件设计与规划提出了更高的要求。
下文介绍一种面向基站平台处理单板的基于融合SOC处理器的平台软件解决方案。
2.基站平台软件方案的特点:
2.1基站平台软件的定义
基站的功能由机架上的业务子板来实现。子板上的软件一般分为驱动层、操作系统层和应用层(协议层和运维部分)。一般把驱动层和操作系统层统称为平台软件层。平台软件层负责管理硬件资源,为应用层提供服务包括资源分配、任务调度、冗错处理、文件系统接口、IP协议栈、驱动封装等。
可以说一切应用层的设计,都是基于平台软件层的架构来实现。一个优秀的、功能丰富的平台软件层,可以使应用层的设计实现变得尤为简单,其高可靠性又可使整个系统变得更为强壮。因此选择一个好的平台软件层,对整个基站性能至关重要。
2.2目前面临的问题
随着通信技术的演进,对基站数据处理能力的要求也越来越高,单板之上的包含多核DSP和多核CPU的融合SOC芯片系统成为未来的发展趋势。复杂的多核SOC系统,对平台软件功能提出了更高的要求。
对于一个多核CPU+DSP的SOC系统,如何管理多核CPU上的资源和任务调度,如何为多核DSP提供高效稳定的操作系统,如何管理如此庞大的DSP阵列,如何有效地进行跨核乃至跨处理器间的通信,如何对这样的多核CPU和DSP的复合系统进行调试和日志追踪? 这一切都对平台软件提出了新的挑战。
面对这样一个日益庞杂的系统,我们该如何应对?
下文重点介绍Enea面向SOC(CPU+DSP)基站设计的平台软件解决方案,相信能为未来基站软件的设计提供帮助。
3.Enea面向基站的平台软件解决方案:
3.1 ENEA简介
Enea源自于1968年,于1989年在瑞典上市,是全球网络和终端软件供应商的领导者,专注于通讯领域实时操作系统和平台软件。作为一家走过半个世纪的,服务于全球主要的的网络和终端软件供应商,Enea以其先进技术为通信领域的发展提供源源不绝的动力。
3.2 ENEA SOC平台软件解决方案
Enea的平台软件解决方案由四大部分组成,包括面向多核CPU的EneaLinux操作系统、针对多核DSP的OSEck操作系统、SOC上的管理中间件和Enea系统级调试工具Optima。目标系统上的各个实体由Enea的分布式透明传输模块LINX连接起来。整体系统框图如下所示:
图1 Enea平台软件方案框图
Enea的平台软件解决方案为单板之上的包含多核DSP和多核CPU的融合SOC芯片提供了完整的软件架构、丰富的调试监测功能以及简单实用的高可靠通信的IPC工具。
在SOC的DSP侧,Enea的OSEck操作系统为DSP的软件架构和编程提供了可靠的选择。OSEck是Enea专门针对DSP进行优化的精简高效的实时操作系统,也是业内最优秀商用的面向DSP的操作系统。OSEck支持Freescale、Ti、LSI、ADI、CEVA等几乎所有的最新DSP处理器,与LINX模块相同的应用层API接口,为每款DSP专门优化的内核,小至10kB footprint,丰富的BSP及应用模块例如Timeout server,另外DSP错误检测、CoreDump模块等为程序的设计以及系统的出错追踪提供了更多的可能。
在SOC的CPU侧,提供基于Yocto开发环境的Enea Linux操作系统或OSE硬实时操作系统。Yocto是一个图形化的集成开发调试环境,提供Linux的配置、组件的自动下载、编译、调试、性能监控等功能,受到各大主流芯片以及嵌入式软件提供商的支持。Enea Linux基于Yocto的开发环境,提供针对于SOC做特别优化的Linux版本,除此以外,针对基站开发的实时性要求,提供在Linux环境下的硬实时调度环(LWRT)。Enea LWRT是一种Linux用户空间的多核执行环境,任务调度时间、中断响应时间都是高性能、可确定性的,对满足基站高层协议栈的性能要求尤为重要。
在CPU侧也可使用OSE操作系统,这是Enea针对多核CPU作专门优化的操作系统,支持几乎所有类型的CPU,广泛地应用于各大通信厂商的移动台和局端通信设备之中。如下图:
图2 OSE 5.x系统框图
OSE 5.x独有的XMP模式即有SMP模式的简单易用性,又具有到AMP模式的性能,为平台软件CPU侧的软件架构设计提供了方便。OSE的直接消息传递机制和集中式错误处理大大简化了编程的工作,OSE丰富的模块,文件系统、IP协议栈、动态加载模块、LINX工具、ramlog工具、Optima系统级调试工具,这一切功能都节约了开发工作时间,加快了产品化速度。
对于基于SOC(CPU+DSP)的基站平台来说,DSP数量较多,并用于物理层协议栈、甚至MAC层的业务处理,并由SOC的CPU侧来进行管理。如何管理、监控和调试这样一个数量庞大的DSP核阵列是一个需要考虑的问题。Enea针对这一需求推出的DSP管理模块从根本上解决了这一问题。
SOC之上的DSP管理模块如下图所示:
图3 DSP管理功能框图
DSP管理模块主要实现下面五大功能:
(1)CPU侧对DSP执行文件的加载启动和复位。
(2)CPU侧对DSP应用(包括进程和设备状态)的监控。
(3)CPU侧对DSP coredump事后分析的管理(包括收集coredump,上传服务器和在线分析)。
(4)为DSP提供Shell命令行的接入服务。
(5)Enea系统级调试工具Optima从CPU侧通过LINX通路接入DSP,用于DSP上系统的实时监控。
这些功能专门针对SOC芯片中DSP核阵列的管理而设计,为基于SOC设计的基站等有CPU和大量DSP的复合系统的实现,提供可靠的解决方案。
Enea的分布式透明传输模块LINX负责SOC中CPU与DSP、以及DSP与DSP节点间无缝通信,针对于单芯片内的方案基于共享内存池的通信方式,高效没有数据拷贝。另外,LINX支持几乎所有的物理通信介质包括共享内存、以太网、sRIO、PCI等。统一了核间、同构/异构处理器间乃至板间的通信接口,并提供保证链路可靠性的机制,使分布式系统间的通信犹如在同一个核内通信那么简单。因此,LINX的出现大大简化了分布式系统的程序设计。
针对整个平台软件的调试,Enea的Optima系统级调试工具为系统的调试提供了方便。Optima调试工具可以以插件的形式整合到Freescale CodeWarrior或TI CCS环境中,与JTAG代码级调试结合使用。Optima工具主要通过以太网与目标系统相连,只要目标系统中的实体有LINX链路,那么通过PC侧的Optima工具就可以看到整个分布式系统的拓扑图。Optima可以查看CPU或者DSP上操作系统的进程状态、内存和堆的详细分配情况、CPU使用率、查看系统coredump、进行基于GDB的在线调试、实时查看系统和用户的日志等,为查看系统瓶颈、代码优化等提供方便。
图4 系统级调试工具Optima图示
综上,Enea针对基站开发的基于SOC的平台软件解决方案包括,面向CPU的Enea Linux操作系统和LWRT实时运行环境、针对DSP核的OSEck操作系统、SOC芯片中DSP核的管理模块以及Enea系统级调试工具Optima。这些功能满足了新一代基于SOC(CPU+DSP)的基站平台软件的需求,为基站的软件架构设计提供了参考。下面介绍一个应用实例:
3.3 应用实例
Enea面向基站的平台软件方案广泛地应用于爱立信、华为、诺西、阿朗、普天、大唐等大型通信设备公司的设备中,为世界通信设备的发展贡献自己的智慧。
当今基站的发展日趋多样性,除了常规的Marco型基站外,Pico或小型基站成为目前主流通信设备厂商3G、4G局端设备发展的新方向。下面简单介绍一个Enea的基站平台解决方案在LTE Pico基站的应用实例。如下图所示:
图5 基站平台解决方案应用实例
B4860是freescale针对LTE中型基站的包含PowerPC CPU核和SC3900 DSP核的SOC芯片,片内集成的MAPLE2 LTE物理层协处理器,可完整的自动处理PDSCH和PUSCH信道流程,最多可支持三个20M的LTE小区。在Enea针对这个SOC芯片的平台软件方案中,CPU侧运行Enea Linux、Enea LWRT环境以及DSP的管理模块、DSP侧运行OSEck硬实时操作系统,CPU和DSP之间使用Enea的LINX基于共享内存池的方式进行通信。通过PC侧的Optima工具进行整个系统的监控与调试。
按照一般基站BBU的软件设计,物理层协议栈运行于DSP上,MAC及以上协议栈运行于CPU之上,因此对于B4860这样的芯片整体软件架构如下图所示。每两个DSP核为一组,负责一个小区,每个核分别处理上行和下行数据,共六个DSP核因此对应三个LTE小区,OSEck可提供实时的调度性能以满足物理层对实时性的需要,同时基于共享内存池的LINX交互模块提供DSP与DSP,CPU与DSP间的高效无缝通信。CPU核上的MAC层及高层协议栈中对性能敏感的部分,运行于Enea的LWRT实时环境之上,可对Linux之上的应用提供实时的性能的保证,使之符合LTE的1ms限制的调度要求。对于实时性要求不高的部分,可直接运行于Enea Linux之上,例如运维等部分。本套软件方案已应用于此客户的量产型基站产品中。
图6 基站平台解决方案应用实例任务划分
4. 结论:
本文介绍了Enea面向SOC处理器基站的平台软件解决方案。详细介绍了方案的组成,包括面向CPU核的Enea Linux操作系统和LWRT实时运行环境或OSE硬实时操作系统、针对DSP核的OSEck操作系统、DSP核的管理模块、Enea系统级调试工具Optima以及Enea的分布式透明传输模块LINX。文章突出了此方案的优点以及应用的实例,为新一代基站的软件架构设计提供了参考。
评论
查看更多