首页> 中国专利> 一种基于aurora协议进行FPGA板间高速互连的方法

一种基于aurora协议进行FPGA板间高速互连的方法

摘要

本发明提供一种基于aurora协议进行FPGA板间高速互连的设计方法,数据处理传输过程:来自另一块板卡的光纤信号首先进入QSFP模块,然后在FPGA中通过Aurora协议提取数据,具体数据处理是,电信号进入FPGA的PMA,在PMA中进行数据的并串转换,进行数据和时钟恢复,然后数据流进入PCS中,在PCS中进行块同步,去扰码,补偿,最后解码,传递给FPGA逻辑单元进行使用,并传递给数据中心。数据发送过程:和接受数据是相反的过程,来自FPGA内部逻辑的数据,运用Aurora协议进行处理,处理过程是,数据进入到PCS中,进行编码,扰码等等,完成后,进入PMA中,进行串并转换后,发送到QSFP,在进行光电转换,等待另一终端的接收。

著录项

  • 公开/公告号CN102681971A

    专利类型发明专利

  • 公开/公告日2012-09-19

    原文格式PDF

  • 申请/专利权人 浪潮电子信息产业股份有限公司;

    申请/专利号CN201210128968.3

  • 发明设计人 闫波;叶丰华;

    申请日2012-04-28

  • 分类号G06F13/42(20060101);

  • 代理机构

  • 代理人

  • 地址 250014 山东省济南市高新区舜雅路1036号

  • 入库时间 2023-12-18 08:00:51

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-03-23

    授权

    授权

  • 2014-03-19

    实质审查的生效 IPC(主分类):G06F13/42 申请日:20120428

    实质审查的生效

  • 2012-09-19

    公开

    公开

说明书

技术领域

本发明涉及计算机技术领域, 具体地说是一种基于aurora协议进行FPGA板间高速互连的方法。

背景技术

在大规模的ASIC验证中,往往一块FPGA资源有限,很难完成验证工作,需要多块FPGA一起工作,多块FPGA要协同工作需要进行实时通信,大量的数据的涌入,给通信带来了极大的挑战。在传统的方案中,FPGA间采用LVDS进行互联,这种方案,虽然物理层较易实现,但速率受限制,PCB布线困难,可扩展性能较差。本设计采用光纤进行串行传输,运用Aurora协议作为传输协议,可以很容易解决多块FPGA间高速信号的通信问题。并且Aurora协议是一个开放性、可升级、 小型、 链路层协议 ,可以用来进行点到点的串行通路数据传输 ,同时消除了其它串行协议的资源低效率问题 ,可以在包括 FPGA、ASIC和 ASSP在内的任何硅器件 /技术中实现,Aurora协议可以使用1 个或多个高速的串行通道。结合QSPF光纤作为传输通道,可以极大的提高系统的可靠性,可用性以及可扩展性。

发明内容

两块板卡之间传输数据要达到240Gb/S的通讯速率,对硬件软件都是一个极大的挑战,整个设计中,aurora的数据收发是提高通讯速率的重点,本发明的目的是提供一种基于aurora协议进行FPGA板间高速互连的方法。

本发明的目的是按以下方式实现的,具体步骤如下:

1)数据接收处理传输过程:来自另一块板卡的光纤信号首先进入QSFP模块,然后在FPGA中通过aur ora协议提取数据,具体数据处理是,电信号进入FPGA的PMA,在PMA中进行数据的并串转换,进行数据和时钟恢复,然后数据流进入PCS中,在PCS中进行块同步,剔除扰码,补偿,最后解码,传递给FPGA逻辑单元进行使用,并传递给数据中心,AURORA接收过程如下:

在生成AURORA IP CORE时,同时生成了一个基于AURORA协议的例示程序,因此,要实现基于AURORA协议的光纤通信,在发送端只需要在frame_gen_i模块将要发送的数据打包,然后通过AURORA模块发送出去,考虑到上一级传输数据速率会与AURORA传输的时钟频率不同,因此在发送端需要建立一个FIFO来做缓冲器,同样在AURORA协议中,要实现对数据的接收,只需在接收模块frame_check中对接收的代码加以修改,增加自己所需要的内容,完成对数据的解码提取,剔除冗余信息,并完成数据的缓存;

2)数据发送过程:和数据接收过程是相反的过程,来自FPGA内部逻辑的数据,运用Aur ora协议进行处理,处理过程是,数据进入到PCS中,进行编码,剔除扰码,完成后,进入PMA中,进行串并转换后,发送到QSFP,在进行光电转换,等待另一终端的接收,在接收模块frame_check的RTL级模型中,RX_D[0:(64n-1)]为接收端接收的缓存于FIFO的数据,RX_EOF_N为数据包帧尾的标志,RX_SOF_N为数据包帧头的标志,RX_SRC_RDY_N为低时代表数据有效,RX_REM[0:r(n)]记录最后的传输数据的线程,根据接收端接收模块的时序图确定接收时序,同样,在AURORA协议末端,由于与下一级系统的速率可能不匹配,因此需要在接收末端加上一个FIFO做缓存;     综上,把复杂的高速数据转化为比较成熟的aurora协议来进行芯片间互连,既消除了带宽限制,又方便使用光纤进行互连,减小板卡设计难度。

本发明的有益效果是:把复杂的高速数据转化为比较成熟的aurora协议来进行芯片间互连,既消除了带宽限制,又方便使用光纤进行互连,减小板卡设计难度。

附图说明

图1是利用aurora进行FPGA板间高速互连的设计图;

图2是数据传输流程图;

图3是接收模块frame_check的RTL级模型图;

图4是AURORA协议发送的时序图;

图5是AURORA协议接收的时序图。

具体实施方式

参照说明书附图对本发明的方法作以下详细地说明。

一种基于aurora协议进行FPGA板间高速互连的方法,其系统结构如图1所示,两块板卡之间要达到240Gb/S的通讯速率,处理如此高的速率,对硬件软件都是一个极大的挑战,整个设计中,aurora的数据收发设计是重点。

设计中还包括的各个模块的功能如下:Virtex6作为数据处理中心,用来实现来自QSFP的电数据的高速处理。QSFP模块的作用是将内部数据经过编码后的数据,经过电光转换后,传输给接收系统,以及接收外来光数据,并经过转换后传送给FPGA,数据中心的作用是与FPGA进行数据交互。时钟模块的作用,是给系统提供参考时钟。电源管理模块的作用,是给整个系统提供各种不同的电压。

实施例

1.数据处理传输过程:来自另一块板卡的光纤信号首先进入QSFP模块,然后在FPGA中通过Aur ora协议提取数据,具体数据处理是,电信号进入FPGA的PMA,在PMA中进行数据的并串转换,进行数据和时钟恢复,然后数据流进入PCS中,在PCS中进行块同步,去扰码,补偿,最后解码,传递给FPGA逻辑单元进行使用,并传递给数据中心。如图2所示;

2.数据发送过程:和接受数据是相反的过程,来自FPGA内部逻辑的数据,运用Aur ora协议进行处理,处理过程是,数据进入到PCS中,进行编码,扰码等等,完成后,进入PMA中,进行串并转换后,发送到QSFP,在进行光电转换,等待另一终端的接收;

3.Aur ora协议对数据的具体处理过程如下:

AURORA数据发送过程:

在生成AURORA IP CORE时,同时生成了一个基于AURORA协议的例示程序。因此,要实现基于AURORA协议的光纤通信,在发送端只需要在frame_gen_i模块将要发送的数据打包,然后通过AURORA模块发送出去。考虑到上一级传输数据速率可能会与AURORA传输的时钟频率不同,因此在发送端建立一个FIFO来做缓冲器。图3左侧为frame_gen_i模块的RTL级模型图。

AURORA协议的发送时序图如图4所示。可以看出,TX_SOF_N为数据包帧的开始标志,TX_EOF_N为数据包帧的结束.标志,TX_REM[0:r(n)]记录最后的传输数据的线程,TX_SRC_RDY_N为低代表数据有效,TX_DST_RDY_N为低代表准备好接受数据,TX_D[0:(64n-1)]是此模块的输出数据。

AURORA接收过程:

接收端接收模块的时序图如图5所示,同样在AURORA协议中,要实现对数据的接收,只需在frame_check模块中对接收的代码加以修改,增加自己所需要的内容,完成对数据的解码提取,剔除冗余信息,并完成数据的缓存。

接收模块frame_check的RTL级模型图如图3右侧所示:其中,RX_D[0:(64n-1)]为接收端接收的缓存于FIFO的数据,RX_EOF_N为数据包帧尾的标志,RX_SOF_N为数据包帧头的标志,RX_SRC_RDY_N为低时代表数据有效。RX_REM[0:r(n)]记录最后的传输数据的线程。

因此在接收端接收模块的时序图如图5所示。根据该时序图可以确定接收时序,同样,在AURORA协议末端,由于与下一级系统的速率可能不匹配,因此需要在接收末端加上一个FIFO做缓存。

除说明书所述的技术特征外,均为本专业技术人员的已知技术。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号