APP下载

基于PCIE的多FC子卡测试设备的设计与实现

2016-09-02武华邓发俊杨媛媛中航工业西安航空计算技术研究所

数码世界 2016年7期
关键词:测试软件总线处理器

武华 邓发俊 杨媛媛中航工业西安航空计算技术研究所



基于PCIE的多FC子卡测试设备的设计与实现

武华邓发俊杨媛媛
中航工业西安航空计算技术研究所

通过对FC子卡测试需求的分析,文章提出了一种基于PCIE接口的多FC子卡测试设备的设计方法。主要采用PCIE交换进行总线扩展,最后经过实现和验证,结果显示该设计可以很好的满足测试和试验要求,并且该设计通用性好,通过对该设计的升级改进,可以适用更多的PCI/PCIE设备,具有一定的实用意义。

FC子卡 PCIE交换

FC(光纤通道,是Fiber Channel的缩写)是美国国家标准委员会(ANSI)的X3T1132作组于1988年提出的一种高速串行传输协议,具有高带宽、高实时性、高可靠性、扩展性好、传输速率高、抗干扰性强、拓扑结构和服务类型灵活、支持多种上层协议和底层传输介质等特性,为了适应航空电子环境的应用,光纤通道提供了一组在航空电子环境中应用的协议子集FC.AE(f iber channel avionics envi ronment),它规范了民用和军用航空光纤通道交换网络与环路拓扑连接设备的选择,FC—AE基于匿名签署消息 (ASM)的上层映身’JFC-AE-ASM,具有消息传输安全、低延时的特点,适用于航空电子中处理器与传感器和显示器之间的通信。因此,FC已成为新一代先进 综合式航空电子网络互连的首选方案。

为了保证FC产品能够满足机载应用要求,为FC 产品提供测试、试验的平台,设计可靠、高效的机载FC设备的测试设备十分必要。FC子卡是广泛应用在航电系统中的一种FC产品,FC子卡实现了FC节点机的功能,负责为FC网络中各个节点提供FC通信连接等功能,为多种应用数据提供通信支撑。

文章针对被测设备的特点,提出了一种基于PCIE接口的多FC子卡的测试设备的设计方法,采用 PowerPC处理器的PCIE接口,通过PCIE交换扩展多路PCIE总线,从而一次可以进行多个FC子卡的试验测试,经过验证该测试设备通信稳定可靠,具有较高的实用性、通用性和扩展性。

1 多FC子卡测试设备总体结构

1.1被测对象分析

FC子卡是嵌入式的FC节点机,作为航电子系统接入FC网络的接口,一方面具备与航空电子系统设备进行信息交互的接口,即Fc接口,支持FC.PI、 Fc—FS和FC.AE—ASM协议,FC接口链路速率 2.125Gbps。另一方面拥有与处理器进行数据交互的接口,从而可以将网络上的数据提交给应用,也可以将应用的数据发送到网络上。因此设计测试设备时主要从以上两个方面考虑。

考虑到结构和速率等要求,FC子卡采用x4 PCIE主机接口,工作频率为2.5Gb/s,使用标准的XMC结构。由FGPA、配置电路、RS232接口、 FLASH接口、时钟电路、复位电路、电源电路组成,FPGA用于实现FC接口、PCIE接口及片上处理器。FC子卡主要实现了FC—AE —ASM通信、时间同步、网络管理等功能,保证航电数据传输的完整性和可靠性。

1.2测试设备设计

多FC子卡测试设备设计时需要从以下几方面考虑:(1)满足测试产品功能、性能的要求;

(2)考虑在温度冲击、湿热等恶劣的试验环境下使用:

(3)考虑一次试验中尽可能多的测试被测设备,提高资源利用率和试验效率。

由于FC子卡对外主要的接口为PCIE接口和FC 接口,因此设计时必须通过以上两个接口对设备进行访问和测试。对于PCIE接口,使用具有PCIE接口的 PowerPC处理器模块,且该模块需要具备以太网、FLASH、SRAM、串口等必备的外围接口,从而可以在其上进行软件开发和调测。同时为了一次测试多个FC子卡,需要使用PCIE交换扩展多路PCIE 总线。对于Fc接口,FC子卡使用FPGA进行实现,输出FC电信号。为了测试FC协议符合性、功能及性能等一系列内容,连接外部测试设备,将电信号转换为光信号,需要设计转接板,一方面通过PCIE接口连接母板和FC子卡,另一方面通过光电转换电路将FC电信号和光信号进行转换。

为了满足高带宽、通用性和恶劣的试验环境下使用,采用3U VPX结构设计,通过母板和转接板连接主机和子卡。

2 关键技术研究

多FC子卡测试设备设计的关键点在于PCIE交换 和Pc IE配置,下面就PCIE交换的选择fHPCIE配置的 机制进行描述。

2.1PICE 交换

选择PCIE交换芯片时,需考虑两点,首先根据系统需求和上行和下行端口连接的PCIE设备的 线宽、速率、数目等要求,选择合适的配置,其次 选择PCIE交换为透明桥还是非透明桥,一般在单处 理器系统中使用透明桥,在进行多个处理器系统连接时采用非透明桥。

2.2PCIE总线配置机制

PCIE币HPCI环境一样,各种设备都要连接在树形总线上,包含一种或多种功能,该设计中FC子卡为单功能设备。当系统首次启动时,只有处理器中根联合体(RC)中的总线0才有编号,其他总线还有待发现。配置软件使用深度优先搜索算法扫描 PCIE总线树上的所有PCIE设备,并以此分配总线号和存储器地址空间。

对于Rc或者PCIE交换使用Type 1配置头,必须初始化主总线(Primary Bus Number)、二级总线 (Secondary Bus Number)和从总线(Subordinate Bus Number)寄存器,主总线为RC或者桥上游的总线,二级总线为下游的总线,从总线是从下向上分配的,为当前PCIE子树中编号最大的总线。需要注意的是PCIE交换中有多个端口,每个端口都有一个P2P的桥,内部有一条虚总线,配置时根据数据手册进行配置。

在桥管理的PCIE子树中有许多PCIE设备,这些 PCIE设备可能有自己的存储器地址空间需要被CPU访问,通过配置桥的Memory Limi t禾HMemory Base 寄存器,即可实现对目标设备空间的访问。这两个寄存器用于存放PCIE子树上所有设备的存储器地址空间集合的基地址和大小。

3 硬件设计

多FC子卡测试设备硬件由CPU模块、PCIE交换电路、母板和转接板组成,以上组成部分在机箱中集成,下面主要对CPU模块{HPCIE交换电路进行描述:

3.1CPU模块设计

在本测试设备中,CPU模块以MPC858处理器为核心,通过连接FLASH、内存、PCIE接口、网口、串口以及其他接口控制电路实现。在CPU 模块中移植嵌入式实时操作系统VxWorks,对设备驱动进行二次开发,继而以VxWorks为软件开发平台,开发测试程序,实现板卡的测试任务。

3.2PCIE交换电路

PCIE交换芯片选用PLX公司的新一代非阻塞、低延迟交换芯片,支持48Lane,12个PCIE端口,通过灵活的硬件配置和软件编程使PCIE交换支持多种端口配置。在本设计中,将交换芯片配置为透明桥,且由于FC子卡为4Lane PCIE接口,配置1个4Lane上行端口和11个4Lane下行端口,可以满足测试设备的功能要求。

4 软件设计

依据FC子卡测试设备的功能需求和硬件平台, 测试软件运行在VxWorks5.5操作系统上,主要包括三部分软件,PCIE配置软件、FC驱动软件和FC测试软件。PCIEI配置软件主要用于配置CPU、PCIE交换芯片和Fc子卡的PCIE接口,通过配置才能从CPU 端访问FC子卡。FC驱动软件作为FC子卡的驱动软件,必须在PCIE配置成功后,才能经过PCIE接口访 问Fc子卡的硬件资源、控带1]FC子卡的通信,管理等功能。FCN试软件通过调用驱动软件提供的接口。

4.1PCIE配置软件

PCIE配置软件的主要功能是对PCIE总线树的设备进行枚举,通过PCI兼容配置,从CPU端可以访问各个FC子卡设备。在本设计中,只用多JPCI兼容配置机制,配置过程和PCI设备类似,主要需对MPc8548和Pc IE交换开关进行配置,内容包括配置空间的访问,如何发现设备,访问设备空间等。最后根据FC子卡所在的总线和分配的存储器地址空间对FC子卡的BAR空间进行映射,从而可以访问FC设备。

4.2FC驱动软件

FC驱动软件运行于主机上,主要提供访问控制 FC设备、FC通信、时钟同步、网络管理等功能的接口,用于上层软件调用从而满足应用具体的要求。 在该设计中,测试软件完成Pc IE配置后,通过调用驱动软件接口访问FC子卡,完成子卡的初始化,再进行相关的测试。

4.3FC测试软件

Fc测试软件主要使用测试设备搭建的平台,进行FC子卡的各种测试,可以实现单个FC子卡的功能、性能测试,也可以实现试验环境下多个FC子卡的通信测试。通过调用驱动软件,测试软件可以完成以下测试:包括FC子卡硬件资源测试、FC协议符合性测试、通信功能的测试、时钟同步功能测试、网络管理功能测试、FC通信带宽测试等其他功能的测试。

5 验证

为了验证测试设备是否满足设计要求,需要对多个FC子卡进行通信功能测试。验证环境中,运行测试软件进行FC—AE—ASM通信测试,FC数据从CPU端产生,通过PCIE接口DMA至FC子卡内部,然后 从FC子卡发送出去,经过分析仪,从接收通道接收,再从FC子卡DMA到CPU端,对比发送和接收的数据是否一致。经过串口打印和分析仪捕获的数据,FC子卡运行稳定可靠,验证了测试设备完全满足实验室测试验证的要求,并且该测试设备已经用于FC子卡的试验测试,测试结果也满足试验要求。

6 结束语

文章介绍了一种基于PCIE接口的多FC子卡测试设备,对总体设计方案、硬件组成和软件设计进行了阐述,通过测试验证了该设备良好的可行性和稳定性。该设备对提高设备试验效率,降低科研、生产成本有显著作用,且通用性、扩展性好,对于其他类型的PCIE/PCI接口设备有很好的参考意义和借鉴作用。

[1]张志,翟正军,李想.航空电子光纤通道协议分 析与接口卡设计[J].测控技术,2010.

[2]刘陈.FC—AEN络可靠性研究综述J.电子技术.2013.

[3]李明,李霞,周轶男.基于MPC8548嵌入式系统 PCI—Express设备驱动开发J.电子技术,2011.

[4]Ravi Budruk,DonAndreson,Tom shanley.PCI Express系统体系结构标准教材[M].北京,电子工业出版社,2005.

猜你喜欢

测试软件总线处理器
网络自适应测试软件运行方法设计
基于PCI Express总线的xHC与FPGA的直接通信
机载飞控1553B总线转以太网总线设计
自动化检测EPU10A板卡系统设计与实现
CAN总线并发通信时下位机应用软件设计
Imagination的ClearCallTM VoIP应用现可支持Cavium的OCTEON® Ⅲ多核处理器
多通道ARINC429总线检查仪
远程开放教育学生自主学习能力评价的研究
一款重型包装抗压系统控制软件的设计与开发
ADI推出新一代SigmaDSP处理器