基于ATCA架构的可重构通信处理机设计*
2014-09-28何赞园吉立新李海涛
何赞园,王 凯,吉立新,李海涛
(国家数字交换系统工程技术研究中心,郑州450002)
随着数据通信业务的应用越来越广泛,为了缩短产品的开发周期,提高产品的性能,通信设备供应商越来越多地选择基于标准通信平台进行业务的开发和设计。全球PCI工业计算机制造组织(PCI Industrial Computer Manufacturers Group,PICMG)制定了一系列的协议[1-2]来逐步完善和规划相应的设备平台应用设计标准。近年来,基于先进电信计算机架构(Advanced Telecom Computing Architecture,ATCA)平台的应用越来越广泛,该架构正在逐渐成长为新一代主流电信级模块化通信平台。
MPC8548E是Freescale公司基于PowerPC架构的PowerQUICC III芯片,该芯片广泛应用于数据网络、电信通信以及无线网络中。借助ATCA平台丰富的数据接口和强大的数据交换能力,选择MPC8548E作为处理机,通过以太网交换机以及PCI-E(PCI Express)桥的设计应用,实现基于ATCA架构的 MPC8548E可重构系统,可充分发挥MPC8548E的效率,给用户提供一个扩展灵活、功能多样化、可重构的网络通信处理机平台。
1 ATCA系统的特点
ATCA系统采用点对点交换互连结构以实现高速数据传输。系统内部的各个节点板(Node)的接口信道均使用低压差分信号(Low Voltage Differential Signaling,LVDS)差分对,具有相同的电气特性,该信号可达到3.125 GHz,数据编码使用8b/10b编码机制[1-2]。各节点板可根据需要安装在任意指定槽位,ATCA平台各节点板的交换互连拓扑结构分为双星型、双双星型、和全网状[1-2]3 种。ATCA 系统支持热插拔和冗余备份,此外还支持不同通信协议之间的互连,物理接口包括以太网和光纤传输、InfiniBand、RapidIO、PCI-E 等多种基于 LVDS 传输的高速信号。
ATCA架构的不足之处在于基础成本较高,占用空间较大,设备管理和冷却供电都比较复杂,ATCA系统更适用于大规模、集中式的电信应用。因此,基于ATCA架构构造一种接口可灵活扩展、功能可重构的通信系统处理机就显得很有必要,不但能够极大发挥ATCA平台效能,而且有效降低产品的投入成本,大大缩短开发周期。
2 系统通信模型的提出
电信级的通信平台通常采用主备的方式来提高设备的可靠性。基于ATCA架构的通信系统大多选择具有双星型网络拓扑的交换背板,在该网络拓扑的通信系统中,采用主、备用两块网络通信处理机,各自提供两个双星型的通信网络,一个是基于Base平面通信,一个是基于Fabric平面通信,通过主备用的网络拓扑应用提高设备的可靠性。系统中的节点板通过自身的Base和Fabric通道来完成与主备用网络通信处理机的信息交互。图1是一个典型的基于ATCA架构的双星型网络通信模型,包括主备用两个网络通信处理机,可以和所有节点板互连。网络通信处理机的Base通道采用10/100/1000M Base-T的以太网通信形式,Fabric通道采用高速并串行和串并行转换器(SERializer/DESerializer,SerDes)接口(如采用1000M Base-X形态)完成数据通信,该接口信号符合LVDS的电气特性。
图1 ATCA系统双星型网络通信模型Fig.1 Double-star network communication model for ATCA system
在节点板内部,通常采用符合 AMC(ATCA Mezzanine Card)[1-2]规范的板卡实现节点板的业务扩展与重构,ATCA和AMC规范定义了系统内部互连的标准也是基于LVDS传输的高速串行信号,如InfiniBand、RapidIO、PCI-E 和以太网交换等。
基于ATCA架构的MPC8548E可重构通信处理机设计,采用以太网交换机实现了节点板和系统主备用网络通信的信息交互,通过虚拟局域网(Virtual Local Area Network,VLAN)的设置应用,提高了节点板的性能,扩大了处理机的应用范围,主处理器和AMC板卡协处理器的业务数据通过以太网交换机来实现,采用PCI-E桥实现了管理和业务数据的分离,有利于提高处理机的稳定性。根据以上内容,本文提出了如图2所示的通信系统模型。
图2 ATCA系统AMC板卡的通信模型Fig.2 The communication model of AMC board on ATCA system
3 基于ATCA架构的MPC8548E可重构通信处理机设计
3.1 MPC8548E的最小系统设计
MPC8548E是Freescale公司基于PowerPC架构的PowerQUICCIII芯片,内部集成有第2代的e500内核,该芯片提供一个双精度浮点运算的加速处理器(Accelerated Processing Unit,APU),512K 的两层缓冲,可提供4个10/100/1000M自适应的以太网口,集成一个双倍数据率同步动态随机存取存储器(Double Data Rate Synchronous Dynamic Random Access Memory,DDR SDRAM)/第 2代双倍数据率同步动态随机存取存储器(Double Data Rate Two Synchronous Dynamic Random Access Memory,DDR2 SDRAM)控制器,最多可支持64 b的外设部件互连标准(Peripheral Component Interconnect,PCI)总线,最大可提供×8的PCI-E以及×1或×4的RapidIO高速串行接口,另外还提供了丰富的输入/输出(Input/Output,I/O)接口以及两线式串行总线(Interintegrated Circuit,I2C)接口。
结合MPC8548E的网络通信处理能力,选择以太网交换机和PCI-E桥来实现该处理机和ATCA系统的主备用网络通信处理机的信息交互以及板载主处理机和AMC板卡的协处理机之间的数据交互,提出了如图3所示的通信模型。
图3 MPC8548E通信系统模型Fig.3 The communication system model of MPC8548E
图3 系统中,MPC8548E的外围包括基于DDR2 SDRAM总线1 024 MB的DDR2 SDRAM,以及Local Bus总线的64 MB SDRAM,都可作为单板CPU的运行程序空间,基于Local Bus总线设计的用于存储程序和数据的16 MB的Flash,以及512 KB的 Boot Flash,同时系统中还需要实现MPC8548E网络通信功能的4个增强型的三速以太网控制器(enhanced Three-Speed Ethernet Controllers,eTSEC)通道的以太网接口,通过以太网交换机交换实现与协处理器以及系统主备用网络通信处理机的数据交互,通过PCI-E桥实现与AMC板卡协处理器的数据通信。该处理机内部其他部分还包括配置电路、时钟处理电路以及供电系统,处理机的可重构性通过标准AMC板卡的扩展使用来实现。
该系统采用从Local Bus总线的Boot Flash的启动方式,启动方式需要在MPC8548E的配置字方面进行相应设置。此Boot Rom的程序完成了对MPC8548E最精简系统的初始化,实现 DDR2 SDRAM的初始化、对各个片选的访问方式的配置初始化,以及以太网口基本功能初始化。CPU完成引导后,MPC8548E最小系统就可以运转,通过串口可以对各个外设进行相应的访问与设置,根据需要完成相应功能的基本测试。实际运行过程中,需通过以太网口将相应的运行程序以及数据加载到DDR2 SDRAM中去,完成整个系统程序和数据的更新以及固化操作。
3.2 处理机系统设计实现
典型的节点板在ATCA系统中应用时,除了通过Base通道和系统主备用网络通信处理机通信交互管理消息外,还有用于数据交互的两个Fabric通道(双星型ATCA系统)或4个Fabric通道(双双星型ATCA系统)。通常情况下,业务功能板上可提供1~4个AMC板卡的扩展。本文设计的基于ATCA架构的MPC8548E通信系统处理机可作为ATCA系统中灵活应用的多种功能节点板使用,提供的资源包括:
(1)提供两个标准AMC板卡位置,每个AMC板卡支持1个×1的PCI-E通道;
(2)提供6个以太网形态的通信信道,作为通用的业务处理板,完成系统中两个主备用网络通信处理机的管理平面(Base)和业务平面(Fabric)连接,也可以应用于双双星型的系统中实现4个业务平面的数据交互;
(3)单板设计应用了Vitesse公司的VSC7390作为整个处理机单板的核心交换,该芯片共提供24个以太网口,连接单板各种端口,可以根据应用灵活配置,其中8个内置物理层(Physical,PHY)接口可直接支持Base格式的通信,其余16个口可直接和支持串行吉比特介质独立接口(Serial Gigabit Media Independent Interface,SGMII)通信接口的芯片直接通信。综合上述系统的网络资源,VSC7390的以太网口分配如图4所示。
图4 单板以太网交换网络分配Fig.4 Board ethernet switching network assignment
基于VSC7390的以太网交换网络,可提供以太网两层交换,具备VLAN的功能设置,利用VLAN功能,一方面可以降低网络的负荷,提高网络的效率,提高数据传输的安全性与灵活性;另一方面,可以降低主控制器的处理时间,提高整个通信网络的通信能力。VLAN功能的应用是本文基于ATCA系统的MPC8548E的处理的一个显著特点。来自ATCA系统主备用网络通信处理机的数据可根据要求直接送达AMC板卡的协处理机,不需要经过MPC8548E预处理,这样可以大大提高单板处理机的处理效率,极大提高了单板处理数据的能力。
图4中,连接系统主备用网络的两个Base接口和两个扩展功能的以太网口直接采用VSC7390的自身集成PHY来完成,其他连接MPC8548E的4个网口、连接两个AMC扩展板卡的8个网口,以及连接ATCA系统背板的双双星型网络的4个Fabric接口都采用SGMII的协议进行信息交互。
MPC8548E的4个以太网口,其中两个为吉比特介质独立接口(Gigabit Media Independent Interface,GMII),通过配置可设置为精简吉比特介质独立接口(Reduced Gigabit Media Independent Interface,RMII);另外两个为RGMII接口,4个网口均为内置MAC层,接口的协议遵循RGMII格式,无法直接和VSC7390的SGMII格式对接。在设计中使用Vitesse公司的VSC8224(该芯片提供4个RGMII接口到1000M Base-X或者1000M Base-T通信格式的转换)将MPC8548E的RGMII接口转换为1000M Base-X的格式;选择Vitesse公司的VSC8558可以实现8 PORT的SGMII到1000M Base-X的转换,其中的4个PORT通过VSC8224实现和MPC8548E的通信;选择VSC8558的另外4 PORT来完成和系统背板的双双星型网络的Fabric接口通信。
为了提高单板硬件资源的可重构性,ATCA单板提供了和AMC板卡通信的以太网口,该网口的通信格式遵循SGMII格式,每个AMC板卡都提供4个SGMII接口。
3.3 以太网通信网络中VLAN功能的应用
在基于MPC8548E的ATCA单板系统中,通常的做法是使用CPU自身的4个以太网口,设计成双星型的交换架构,完成单板和ATCA系统背板的通信,采用CPU的SRIO或者PCI-E等高速串行通道完成对数据的转发处理。这种应用方式的数据处理瓶颈是受限于CPU的处理能力,会增加CPU的消息处理负荷。在本文设计的系统中,数据在进入单板处理时,可根据相应的规则要求,通过VLAN功能的设置,完成数据包的指定转发,这样不但会减轻CPU的数据处理负荷,还会进一步提高单板的业务处理能力。通过VLAN的功能应用,可以将来自ATCA系统交换单板的业务数据流,根据规则要求灵活指定到AMC1或者AMC2的协处理机。通常情况下,AMC可以很容易地实现系统功能扩展以及模块化设计应用,通过AMC模块的应用可以很方便地实现各种类似CPU、DSP模块、网络处理器(NPU)、存储模块,以及各种各样的I/O模块。通过ATCA单板VLAN的设置,可以直接将业务数据消息输送给AMC模块进行相应的处理,可进一步提高本文设计系统的多功能应用能力。
3.4 采用PCI-E通信格式实现控制
该处理机为了提高MPC8548E通信处理机扩展性能,提供较高的数据传输能力,设计应用了PCI-E的高速串行接口,数据连接的优先级和数据传输率可以预先确定。
系统中选择IDT公司的89HPES8T5A芯片,可提供8 lane、5个 PORT的应用接口,可以完成5 PORT的基于PCI-E数据格式的交换,其中上联口为×4,下联口为×1。系统基于PCI-E格式通信的模型如图5所示。
图5 系统基于PCI-E通信模型Fig.5 Communication system model based on PCI-E
在实际应用过程中,ATCA单板上MPC8548E作为该处理机的主处理器,可对AMC子卡进行管理,完成协处理器的程序更新、设备管理、日常维护等。PCI-E通道除了可以完成控制消息的传送外,也可进行业务数据的交互,通过PCI-E通道的设计,进一步扩展了该系统的应用范围。
3.5 MPC8548E驱动的设计
MPC8548E的通信系统处理机的驱动设计,除了完成主CPU的正常运行以外,还涉及到对VSC7390、VSC8224、VSC8558、89HPES8T5A 等外设的管理,以及和ATCA系统处理机进行信息交互。
系统中所有外设芯片口都可以通过MPC8548E的管理来完成,进一步提高了单板作为多功能用途时的灵活性。VSC8224作为MPC8548E自身的PHY设备,可通过RGMII接口的管理口来完成。通过MPC8548E的总线外设扩展,完成对VSC7390的控制,从而达到初始化设置以及VLAN功能的配置应用。VSC8558作为VSC7390的PHY设备,可以通过管理口来完成相应配置;MPC8548E通过slave接口的SMBus(System Management BUS)总线来完成对PCI-E桥设备芯片89HPES8T5A的初始化配置。
MPC8548E初始化VSC8224时,需要完成下面的关键设置:
按照上述的操作,需要再完成另外3个PHY端口的初始化。
VSC7390的初始化按照MPC8548E的LOCAL BUS的工作方式完成控制操作,CPU通过VSC7390的管理通道(MDC和MDIO)完成VSC8558的初始化,将与VSC8224对接的4个端口的初始化,需要设置为1000M-BASEX的工作模式。
MPC8548E的系统设计中,使用基于PowerPC处理器的Linux系统[3]。该操作系统的显著特点是能够对所有基于PowerPC处理器系统进行支持,其中断处理子系统可支持信息处理中断计数(Message Processing Interrupt Count,MPIC)架构,使用的 Open Firmware结构对PowerPC进行引导,使用本地存储器总线(Local Memory Bus,LMB)结构对PowerPC的内存进行管理,在其原有源代码结构上,添加了许多有利于PowerPC层次化的数据结构,可以让用户增加新的处理器平台。目前,Linux PowerPC已经成为一个稳定的、久经考验的系统解决方案,因此选择Linux PowerPC作为MPC8548E的操作系统。
4 系统完整性测试
基于ATCA架构的MPC8548E处理器的通信处理系统的设计实现,不但满足了ATCA平台的基本应用,还通过PCI-E桥以及可以设置VLAN功能的以太网交换机的应用,进一步拓展了该通信处理系统的应用范围。
设计实现中,通信处理系统的信号完整性尤为关键[4-5]。使用 Tektronix公司的 DPO5104 示波器对1000M以太网传输信号的电平特性进行测试,结果如图6所示。
图6 单板和系统背板的接口电平信号图Fig.6 The level signal diagram for the interface of board and system backplane
从图6中可以看出,所测量的信号符合5电平4D-PAM编码要求,对4个1000M以太网口的电平都进行了相应测试,结果表明都能够满足要求,从而证明系统设计保证了该单板的设计接口,符合ATCA系统背板的电气特性连接要求。
使用SPIRET公司的Adtech AX/4000 Broadband Test System对以太网的传输质量进行了测试,测试流程为测试仪通过连接系统的BASE平面的1000M以太网口满负荷发送数据包,数据包的格式为变长包,最小包为78 B,最大包为1 518 B,通过处理机上以太网交换机的VLAN设置对MPC8548E的处理能力以及AMC板卡协处理机的网络处理能力都进行相应的测试,在CPU内部和协处理机内部都将数据包直接环回,测试仪再接收数据包的个数和正确性,以此来判断是否符合相应的指标要求。测试结果如图7所示。
图7 1000M以太网性能测试结果截图Fig.7 The performance test result of 1000M ethernet
图7 中,针对其中一个1000M以太网接口,测试时间为 14 h,测试仪发送的数据包个数为7 742 081 934,字节总数为6 178 247 776 240。测试仪的接收端口到包的个数与字节数据的个数和测试仪发送的个数是相同的,这验证了相应的网络接口设计符合入网的标准,保证了使用的可靠性。
通过编写测试程序对MPC8548E的PCI-E进行环回测试,数据包的误码率、丢包率、时延等参数都能够满足系统通信的要求,系统接口进行72 h测试,无误码。
5 结束语
本文使用MPC8548E作为基于ATCA架构的通信系统处理机,选择具有VLAN功能的以太网交换机,给业务数据的处理提供了更多选择,通过PCI-E桥的设计应用,丰富了AMC板卡和ATCA单板的数据交互。通过这些功能的设计实现,使用MPC8548E不仅可作为通用处理机的通信系统应用,还可支持更为丰富灵活的应用,通过该网络通信处理机的设计实现,构建了一种可以实现多种业务应用的基础通信平台。在该单板上可以借用AMC标准板卡的接口实现DSP阵列的扩展应用,也可基于AMC标准板卡来扩展多种功能的数据协处理应用模式。目前,本文设计的基于 ATCA架构的MPC8548E通信系统处理机已经在软交换通信处理平台中实现了主控处理机、信令处理机、媒体(包括语音、传真、视频等)处理机的广泛应用,并在增值业务服务器等方面也取得了成功应用。
随着大数据的业务需求出现,海量数据的处理对CPU的性能要求也越来越高,能否提供一个通用的处理机平台,通过简单的CPU部件的改进,直接完成平台性能的提升,对于后续平台的设计实现会十分有益。
[1]PICMGR3.0,Advanced TCATMBase Specification(Revision 1.0)[S].
[2]PICMG 3.0,Short Form Specification[S].
[3]王奇.Linux PowerPC详解-核心篇[M].北京:机械工业出版社,2008.WANG Qi.Linux PowerPC Explain-Core[M].Beijing:China Machine Press,2008.(in Chinese)
[4]陈志列.基于ATCA的网络拓扑结构的研究[J].测控技术,2011,30(3):65-68.CHEN Zhi-lie.Research of the Network Topology Based on ATCA[J].Measurement and Control Technology,2011,30(3):65-68.(in Chinese)
[5]卫亮.基于ATCA通信软件系统实施方案的研究[J].微型电脑应用,2011,27(4):1-4.WEI Liang.Telecommunication Software Implementation Based on ATCA[J].Microcomputer Applications,2011,27(4):1-4.(in Chinese)