DSP

Enea公司----OSE/OSEck RTOS --2

2019-07-13 18:02发布

refer: http://wenku.baidu.com/view/7cd7be65fc4ffe473268ab33.html
ENEA 面向LTE基站SOC(CPU+DSP)平台的软件解决方案
一、平台软件解决方案概览
        Enea 的平台软件解决方案为单板之上的包含多核DSP和多核CPU的融合SOC芯片提供了完整的软件架构、丰富的调试监测功能以及简单实用的高可靠通信的IPC工具。         Enea 针对基站开发的基于SOC的平台软件解决方案包括,面向CPU的Enea Linux操作系统和LWRT实时运行环境、针对DSP核的OSEck操作系统、SOC芯片中DSP核的管理模块以及Enea系统级调试工具Optima。这些功能满足了新一代基于SOC(CPU+DSP)的基站平台软件的需求,为基站的软件架构设计提供了参考。
        主要包括以下几个方面:面向多核CPU的Enea Linux操作系统、针对多核DSP的OSEck操作系统SOC上的管理中间件IPC:LINX和Enea系统级调试工具Optima。目标系统上的各个实体由Enea的分布式透明传输模块LINX连接起来。           整体系统框图如下所示:
         

       1.在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 模块等为程序的设计以及系统的出错追踪提供了更多的可能。           DSP 管理模块:对于基于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的复合系统的实现,提供可靠的解决方案。
       2.在SOC的CPU侧,提供基于Yocto开发环境的Enea Linux操作系统  或  OSE硬实时操作系统(LWRT)。Yocto 是一个图形化的集成开发调试环境,提供Linux的配置、组件的自动下载、编译、调试、性能监控等功能,受到各大主流芯片以及嵌入式软件提供商的支持。Enea Linux基于Yocto的开发环境,提供针对于SOC做特别优化的Linux版本,除此以外,针对基站开发的实时性要求,提供在Linux环境下的硬实时调度环(LWRT)。Enea LWRT 是一种Linux用户空间的多核执行环境,任务调度时间、中断响应时间都是高性能、可确定性的,对满足基站高层协议栈的性能要求尤为重要。
            3.SOC上的管理中间件(IPC):LINX,(可以参见下图)LINX负责SOC中CPU与DSP、以及DSP与DSP节点间无缝通信,针对于单芯片内的方案基于共享内存池的通信方式,高效没有数据拷贝。另外,LINX 支持几乎所有的物理通信介质包括共享内存、以太网、sRIO、PCI等。统一了核间、同构/异构处理器间乃至板间的通信接口,并提供保证链路可靠性的机制,使分布式系统间的通信犹如在同一个核内通信那么简单。因此,LINX 的出现大大简化了分布式系统的程序设计。       

            4.SOC上的系统级调试工具:OPtima(可以参见下图),Optima从CPU侧通过LINX通路接入DSP,用于DSP上系统的实时监控。Optima调试工具可以以插件的形式整合到Freescale CodeWarrior 或TI CCS 环境中,与JTAG代码级调试结合使用。Optima工具主要通过以太网与目标系统相连,只要目标系统中的实体有LINX链路,那么通过PC侧的Optima工具就可以看到整个分布式系统的拓扑图。Optima可以查看CPU或者DSP上操作系统的进程状态、内存和堆的详细分配情况、CPU使用率、查看系统coredump、进行基于GDB的在线调试、实时查看系统和用户的日志等,为查看系统瓶颈、代码优化等提供方便。
                                                    



                5.SOC其他工具 
            (1)OSE 5.x独有的XMP模式即有SMP模式的简单易用性,又具有到AMP模式的性能,为平台软件CPU侧的软件架构设计提供了方便。              (2)OSE 的直接消息传递机制和集中式错误处理大大简化了编程的工作,OSE 丰富的模块,文件系统、IP协议栈、动态加载模块、LINX 工具、ramlog 工具、Optima系统级调试工具,这一切功能都节约了开发工作时间,加快了产品化速度。




二、Enea 面向基站软件应用实例

     1.框架概览
       当今基站的发展日趋多样性,除了常规的Marco型基站外,Pico或小型基站成为目前主流通信设备厂商3G、4G局端设备发展的新方向。下面简单介绍一个Enea的基站平台解决方案在LTE Pico 基站的应用实例。如下图所示:
                                                                       图5 基站平台解决方案应用实例          B4860(SOC)是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工具进行整个系统的监控与调试。
       2.具体设计
       按照一般基站BBU的软件设计,物理层协议栈运行于DSP上,MAC及以上协议栈运行于CPU之上,因此对于B4860这样的芯片整体软件架构如下图所示:

图6 基站平台解决方案应用实例任务划分

        DSP侧:每两个DSP核为一组,负责一个小区,每个核分别处理上行和下行数据,共六个DSP核因此对应三个LTE小区,OSEck 可提供实时的调度性能以满足物理层对实时性的需要。
        CPU侧:CPU核上的MAC层及高层协议栈中对性能敏感的部分,运行于Enea的LWRT实时环境之上,可对Linux之上的应用提供实时的性能的保证,使之符合LTE的1ms限制的调度要求。                         对于实时性要求不高的部分,可直接运行于Enea Linux之上,例如运维等部分。
        CPU和DSP之间:基于共享内存池的LINX交互模块提供DSP与DSP,CPU与DSP间的高效无缝通信。