文献标识码: A
DOI:10.16157/j.issn.0258-7998.2016.09.039
中文引用格式: 黎小玉,田文娟,任杰,等. 基于自研芯片的FC-ASM仿真卡设计与实现[J].电子技术应用,2016,42(9):152-154,158.
英文引用格式: Li Xiaoyu,Tian Wenjuan,Ren Jie,et al. The design and realization of FC-ASM simulation card based on the research of undependent SoC[J].Application of Electronic Technique,2016,42(9):152-154,158.
0 概述
在机载FC网络产品研制开发中,由于在机载环境下直接进行试验具有很大的局限性和风险,而在地面环境下进行仿真实验具有可重复、可控制、无破坏性和耗费小等优点,从而构建机载网络地面仿真系统进行大量的前期地面实验来测试样机的功能和性能成为必要[1]。
传统FC-ASM仿真卡主要由FPGA、辅助电路构成[2-4],架构图如图1所示。
该方案采用单板的设计方式,由FC-ASM协议处理模块和外围电路实现串行FC链路数据通信,通过PCIe主机接口[5]实现与主机处理器通信。这种实现方案存在以下缺点:
(1)由于使用FPGA实现,体积大、功耗大且使用时需要增加散热片及风扇,导致在特殊环境中无法使用。
(2)FPGA片内资源有限,导致FC-ASM仿真卡模式单一,灵活性差。
(3)高性能核心器件不易采购、价格昂贵,自主保障困难。
基于以上原因,本文提出了一种基于自研FC-AE-ASM协议处理芯片的FC-ASM仿真卡设计与实现。
1 硬件设计与实现
FC-ASM仿真卡的主要功能是作为光纤通道网络上的仿真节点,用于仿真飞机飞行过程中的各种数据发送至光纤通道网络中,或者作为节点机输出光纤通道数据帧。同时为了便于调试和管理,FC-ASM仿真卡也支持FC网络扩展链路服务(ELS帧)的发送,能够将ELS帧通过FC-ASM仿真卡的FC端口发送到FC链路。按照以上仿真卡实现的功能描述,FC-ASM仿真卡的功能架构如图2所示。
FC-ASM仿真卡硬件设计的核心是FC-AE-ASM协议处理芯片、PCIe主机接口、电源、时钟、复位及外围电路设计。
1.1 FC-AE-ASM协议处理芯片
FC-ASM仿真卡的核心部件是自研的FC-AE-ASM协议处理芯片,该芯片内嵌PowerPC处理器,能够提供强大的数据处理及控制能力,通过工作在较高时钟频率的PLB总线和外围设备通信,主要完成FC速率配置、ELS帧的接收、发送以及FC MAC的初始化配置;提供双余度1.062 5 Gb/s和2.125 Gb/s速率可配置串行FC链路;对外提供PCIe/RapidIO主机接口,与主机处理器配合可完成FC时钟同步功能、FC网络管理功能;提供片外Flash和SRAM存储器接口以及JTAG等调试接口,便于存储扩展和调试。采用自研芯片以降低整个实现方案的难度,优化仿真系统的设计。
1.2 PCIe主机接口
FC-ASM仿真卡采用PCIe主机接口、金手指形式实现[6],支持4线模式,提供标准的PCIe INTA中断方式,支持中断和查询2种工作模式[7]。FC-ASM仿真卡作为发送节点时,PCIe主机接口主要负责将主机配置的仿真数据通过DMA方式传递给FC-ASM仿真卡硬件;作为接收节点时,将链路上的数据通过DMA的方式传输到主机,供主机进行处理。
1.3 FC-ASM仿真卡电源
FC-ASM仿真卡工作于PC环境,其中整板电源由PC通过PCIe接口提供+12 V电源。由于整板电流小于1 A,其12 V转5 V选用ISL8201电源芯片,输出电流最大10 A,满足整板需求;数字3.3 V为板上主要芯片及IO电压,设计成由最大输出5 A的TPS75501线性电源提供;模拟3.3 V为FC-AE-ASM芯片内部锁相环等模拟模块使用,由数字3.3通过1 ?滋H电感转换;核心器件FC-AE-ASM芯片的数字内核电压为VCC1.2 V和SerDes内核电压AVCC1.2 V,均采用输出电流最大3 A的线性电源TPS74401单独提供,通过3.3 V转换为1.2 V,满足FC-AE-ASM协议处理芯片上电要求(IO先上电,Core后上电)。
FC-ASM仿真卡电源网络如图3所示。
1.4 FC-ASM仿真卡时钟
FC-ASM仿真卡外部用一个单独的40 MHz的时钟作为CPU系统处理输入时钟,另一个单独的5 MHz时钟作为FC时钟同步时钟,FC-AE-ASM协议处理器采用单独的106.25 MHz差分输入时钟,PCIe时钟由主机提供。
1.5 FC-ASM仿真卡复位
FC-ASM仿真卡复位信号包括PCIe主机复位、手动复位、上电复位、JTAG复位。PCIe主机复位是通过PCIe接口产生复位;手动复位是外接复位开关进行硬复位;上电复位是在上电后复位芯片输出仍保持200 ms的低电平,产生系统复位;JTAG复位是通过RISCWatch仿真器复位处理器进行的系统复位。具体原理如图4所示。
1.6 FC通信速率配置
在基于自研芯片的FC-ASM仿真卡中,根据用户实际需求,由硬件和软件相配合实现双余度1.062 5 Gb/s或2.125 Gb/s速率串行FC链路。软件通过配置FC链路控制寄存器控制FC链路速率为1.062 5 Gb/s/2.125 Gb/s;硬件通过FC_RATE信号控制FC SerDes的1.062 5 Gb/s/2.125 Gb/s速率,高电平选择2.125 Gb/s,低电平选择1.062 5 Gb/s。这一点也是传统FC-ASM仿真卡无法实现的。
1.7 其他外围电路
除了以上主要功能模块之外,FC-ASM仿真卡还提供2路Flash:一路用于固化嵌入式处理器的软件,作为嵌入式处理器的启动Flash;另一路用于固化FC通信CAM表,作为系统通信时的蓝图配置表存储Flash。同时FC-ASM仿真卡还对外提供一路RS232接口,便于FC-ASM仿真卡的调试和维护操作。
2 软件设计与实现
FC-ASM仿真卡软件分为传输软件、驱动软件和上层应用仿真软件,传输软件固化在如图5所示的Bank0 Flash中,驱动软件随上层应用仿真软件一起驻留在主机上。当FC-ASM仿真卡加电时,板卡内部Flash中固化的传输层软件实现传输层功能。上层应用软件调用驱动软件,完成FC总线的整个通信、管理等功能。
传输软件是FC-ASM仿真卡接口软件的内部接口。根据主机的命令完成诸如系统初始化、加载配置表、系统自测试等一系列动作;响应主机以中断形式发送命令控制FC-ASM协议处理引擎工作;传输层的另一重要功能是将FC-ASM仿真卡发生的某些特定事件(例如看门狗超时、系统故障、FC-ASM仿真卡状态)作为中断上报给主机,并根据主机的反馈信息对中断进行处理。
驱动软件是FC-ASM仿真卡接口软件的外部接口。向航电应用提供一组标准的API接口(包括设备管理接口、通信管理接口、时钟同步管理接口、网络管理接口),实现对FC网络系统设备的运行控制。其中,设备管理接口实现对FC-ASM设备的打开、关闭,设备软复位,状态获取;通信管理接口实现通信表的加载、卸载,FC-AE-ASM协议非数据块消息的封装,通信的启动和停止控制,ASM消息的发送、接收控制;时钟同步管理接口实现时钟同步模式设置、时钟同步使能、禁止,任务系统RTC时间设置、获取,任务系统同步监控门限值设置,网络日历信息设置、获取;网络管理接口实现网络初始化控制,网络上下线管理,网络上/下网控制,网络系统健康监控,网络配置数据加载及固化。
上层应用仿真配合实现FC-ASM仿真卡的FC数据仿真功能,其仿真软件具有可视化的图形界面,可依据真实FC网络环境,通过计算机仿真建立拓扑结构,生成配置文件和消息数据,并可进行数据收发,模拟真实系统中的各种数据流通信,从而直观地给出仿真结果,为网络通信提供参考依据。根据用户需求将仿真数据的配置,仿真流量监控、仿真状态监控等功能采用软件实现。图6、图7为仿真监控发送界面和仿真监控接收界面。
3 技术优势
以传统的FPGA实现的FC-ASM仿真卡与新型的基于自研芯片的FC-ASM仿真卡为例进行分析。替代部分如图8所示。
3.1 实验对比分析
在环境实验中,可能同时使用2块卡,传统的FPGA实现的FC-ASM仿真卡体积较大,导致标准的PCIe插槽间距不满足要求,而基于自研芯片的FC-ASM仿真卡由于集成度高、体积小等优势而不存在此问题。
在进行烤机实验时,传统的FPGA实现的FC-ASM仿真卡在不添加额外的散热装置情况下,出现不稳定问题。而基于自研芯片的FC-ASM仿真卡以其可靠性高、功耗低等优势不存在此问题。
3.2 指标对比分析
两种实现方案主要指标对比情况见表1。
由表1可以看出,与FPGA实现方案相比,基于自研芯片的FC-ASM仿真卡功耗减小到60%,体积减小到50%,重量减轻到60%,且FC链路速率可配置,使用灵活,显著提高了功能、性能、可靠性及FC核心产品的自主保障能力。
4 总结
本文通过对传统的基于FPGA的FC-ASM仿真卡实现方案的分析,提出了一种基于自研芯片的FC-ASM仿真卡设计与实现。该设计有效解决了传统仿真卡存在的众多问题,并具有自主保障能力。现已广泛应用于地面仿真设备和实验室中,为多个机载网络地面仿真系统提供真实可靠的仿真数据,有效支持FC网络的构建及维护。
参考文献
[1] 张少锋,田泽,杨峰,等.基于AS5643协议的Mil-1394仿真卡设计与实现[J].计算机技术与发展,2013,23(8):168-171.
[2] 李攀,田泽,蔡叶芳,等.基于FPGA的双通道FC数据采集卡设计[J].计算机技术与发展,2013,23(7):179-182.
[3] 杨海波,田泽,蔡叶芳,等.基于FPGA的多功能FC协议分析仪设计[J].计算机技术与发展,2013,23(7):214-216.
[4] 刘军伟,邓发俊,武华.基于PC机环境下的FC仿真卡的研究与实现[J].硅谷,2011(9):86-87.
[5] 廖寅龙,田泽.FC网络通信中PCIe的接口的设计与实现[J].航空计算技术,2010,40(4):127-130.
[6] 吴金波,李会方.基于PC的FC仿真卡系统设计[J].研究与开发,2013,32(10):26-29.
[7] 霍卫涛,田泽,李攀,等.基于FPGA的光纤通道网络监控卡设计与实现[J].计算机技术与发展,2015,24(5):199-203.