新闻中心

EEPW首页>EDA/PCB>设计应用> 10G以太网光接口的FPGA实现

10G以太网光接口的FPGA实现

作者: 时间:2013-02-01 来源:网络 收藏

4 设计验证

4.1 设计验证方法

为了验证该电路设计的正确性,对电路的可靠性进行了测试。在该设计系统中加入一个伪随机数列(PRBS)产生和检查电路。由于Xilinx公司的Virtex6型芯片中的IP核GTP中含有伪随机数列(PRBS)产生和检测电路,所以本文采用其内部电路自动生成PRBS并经过整个10 Gb/s的以太网高速数据链路,最终由其检测电路来检验数据传输中是否出现误码。测试方案如图2所示。中用于产生和检测PRBS的GTX核为4个,每一个分别对应一个2.5G链路。

图2 测试方案

由Xilinx公司给出的GTP的用户说明[9]可知,分别设置信号TXENPRBSTST0、TXENPRBSTST1、RXENPRBSTST0以及RXENPRBSTST1的值为01,而信号INTDATAWIDTH的值为1,其产生的伪随机数列类型为PRBS7。产生PRBS7数列的多项式为1+X6+X7,数据长度为128,其可以检验经过8b/10b转换的数据。设置信号RXPRBSERR的值为1,以检测高速数据传输过程中数据是否出现误码。设置信号PRBS_ERR_THRESHOLD0和PRBS_ERR_THRESHOLD1的值,其含义为PRBS循环检测中发生错误总数的阈值,以控制信号RXPRBSERR(0,1)。信号RXPRBSERR标志着在PRBS循环测试中检测数据错误发生的总值超过了PRBS_ERR_THRESHOLD所设置的阈值,则该信号变为1。产生的PRBS序列经过发送链路和外部链路环回,再传输到接收链路,经过相应的处理后到达PRBS检测电路,进而验证数据的正确性。其中,外部链路环回是主要是指将一根光纤的两端分别接入到光接口的接收与发送端,使数据本身在设计系统中环回。

4.2 验证结果

在实验室常温环境下,对系统的高速传输数据进行验证。该验证分为两个部分,第一部分是运用Xilinx公司研发的软件工具Chipscope抓取内部接收和发送的数据进行比较,以验证所设计的系统是否能实现所要求的功能。Chipscope抓取的结果如图3所示。信号program_after_data0~3为PRBS产生模块输出的数据经过功能模块处理后的数据。信号RX0_PRBSERR0和RX0_PRBSERR1是第一链路中PRBS检测模块中RXPRBSERR0、1,由图可知其值为1,即该系统中第0数据链路的错误计数没有超过阈值PRBS_ERR_THRESHOLD的值。由图可知,信号RX1_PRBSERR0、1,RX2_PRBSERR0、1和RX3_PRBSERR0、1的值均为0,所以系统的4条数据链路的错误计数均未超过阈值。

点击浏览原图

图3 Chipscope系统测试结果

第二部分是运用高频率范围示波器抓取FPGA输出给PHY芯片的数据,以检测该系统传输的信号质量,由示波器测试的数据传输眼图如图4所示。由于4路2.5G的传输链路配置相同且篇幅有限,只是列举出第0路传输数据的眼图。该系统传输的眼图的比特错误率(EyeBER)可达到10-45,眼高为600 mV左右。

图4 高速数据传输眼图

结语

通过反复验证和长时间连续测试,测试结果证明,该设计能够有效、正确地实现10 Gb/s的高速数据传输,并且传输数据的误码均未超过阈值,进而证明了该设计系统的可靠性和稳定性。采用FPGA中的RocketIO接口来设计10 Gb/s速率的光纤传输,极大地增强了光纤传输设计的灵活性,通过修改FPGA代码即可用于高速信号传输的多种情况和场合。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭