在目前主流厂商的高端FPGA 中都集成了SERDES(串并收发单元)硬核,如Altera的Stratix IV GX器件族内部集成的SERDES单通道支持600Mbit/s到8.5Gbit/s数据熟率,而Stratix IV系列器件族还集成支持150Mbit/s到1.6Mbit/s的高速差分信号接口,并增强了其动态相位调整(DPA,Dynamic Phase Alignment)特性;Xilinx的Virtex II Pro内嵌的SERDES单通道支持622Mbit/s到3.125Mbit/s的数据速率,而Virtex II Pro X内嵌的SERDES单通道支持2.488Gbit/s到10.3125Gbit/s的数据速率;Lattice的高端SC系列FPGA内嵌的SERDES单通道支持622Mbit/s到3.4Gbit/s的数据速率,而其多款可编程系统级芯片FPSC(FPSC,Field Programmable System Chip)内嵌的不同性能的SERDES单通道支持400Mbit/s到10.709Gbit/s的数据速率。

在FPGA中内嵌诸如SERDES的硬核,可以大大地扩张FPGA的数据吞吐量,节约功耗,提高性能,使FPGA在高速系统设计中扮演着日益重要的角色。

在阐述SERDES基础概念的基础上,讨论Stratix IV GX的SERDES与DPA结构,通过对典型高速系统设计举例和对高速PGB设计注意事项的介绍,引领读者进入高速系统设计的世界。

SERDES的基础概念

这里将介绍SERDES的基本概念,并介绍SERDES相关的专有名词:眼图(Eye-diagram)、眼图模板、抖动(Jitter)、容忍度(tolerance)、功耗(Power Consumption)、预加重(Pre-emphasis)、均衡(Equalization)、8B/10B编码等。

SERDES的概念

SERDES是SERializer和DESerializer的英文缩写,即串行收发器。顾名思义,它由两部分构成:发端是串行发送单元SERializer,用高速时钟调制编码数据流;接端为串行接收单元DESerializer,其主要作用是从数据流中恢复出时钟信号,并解调还原数据,根据其功能,接收单元还有一个名称叫CDR(     Clockand data Recovery,时钟数据恢复器)或CRU( Clock RecoveryUnit,时钟恢复单元)。如图,所示为10根数据线的串行传输和解串行接收示意图,10 根100MHZ的信号线入SERDES器件产生串行码流,时钟也调制到码流内,反过来通过它恢复并行的数据和时钟。SERDES技术的应用很好地解决了高速系统数据传输的瓶颈(特别是背板传输应用),节约了单板面积,提高了系统的稳定性,是高速系统设计的强有力支撑。

10:1SERDES功能示意图

眼图与眼图模板

SERDES的最重要的两个参数指标是传输速率和传输长度,即在符合误码率要求的以何种传输速率可以传输多长距离。其形象的评价方法是利用眼图,眼图的高和宽反映了信号的传输质量,如图所示为Altera Stratix IV GX器件眼图实例。

AlteraStratix IV GX器件眼图实例

眼图模板是用于对比眼图质量的参考系,常见的眼图模版有两种:菱形模版和六边形模版。如图所示为菱形眼图模版示意。

菱形眼图模版示意

其中,众轴是眼图的高度,单位是Mv,用以表示正确接收的差分信号的幅度,和接收端可正确恢复信号的电平需求直接相关;横轴是眼图的宽度,单位是UI或ps,用以表示无码间干扰的接收时间,和接收端分辨两个相邻码元的能力直接相关。UI,Unit Interval的缩写,即1bit数据周期的对应时间,例如对于1Gbit/s的眼图1UI是1ns。评价眼图的标准是眼的张开的程度要大,并且眼线要清晰。眼线清晰说明整个系统抖动小,准确度高;眼图的张开程度大,说明接收的信号幅度大,时间抖动小,这样对接收端的幅度和时间上的容忍度要求就更低,正确恢复信号的概率就更高。


版权所有权归卿萃科技 杭州FPGA事业部,转载请注明出处

作者:杭州卿萃科技ALIFPGA

原文地址:杭州卿萃科技FPGA极客空间 微信公众号


扫描二维码关注杭州卿萃科技FPGA极客空间


SERDES高速系统(一)的更多相关文章

  1. SERDES高速系统(二)

    抖动.容忍度与功耗 前面我提到SERDES的最终性能要用传输速率和传输距离考核.使用眼图可以形象化地衡量SERDES的收发性能,但是更为精确的参数化衡量手段是抖动(Jitter).容忍度(Tolera ...

  2. 高速PCB设计注意事项

    和SERDES应用相关的高速系统PCB设计注意事项如下: (1)微带(Microstrip)和带状线(Stripline)布线. 微带线是用电介质分隔的参考平面(GND或Vcc)的外层信号层上的布线, ...

  3. STM32F4_RCC系统时钟配置及描述

    Ⅰ.概述 对于系统时钟应该都知道它的作用,就是驱动整个芯片工作的心脏,如果没有了它,就等于人没有了心跳. 对于使用开发板学习的朋友来说,RCC系统时钟这一块知识估计没怎么去配置过,原因在于开发板提供的 ...

  4. 007 GMII、SGMII和SerDes的区别和联系

    一.GMII和SGMII的区别和联系 GMII和SGMII区别,上一篇已经介绍了,这一篇重点介绍SGMII和SerDes区别. GMII和SGMII GMII 在MII接口基础上提升了数据位宽和Clo ...

  5. FPGA设计思想与技巧(转载)

    题记:这个笔记不是特权同学自己整理的,特权同学只是对这个笔记做了一下完善,也忘了是从那DOWNLOAD来的,首先对整理者表示感谢.这些知识点确实都很实用,这些设计思想或者也可以说是经验吧,是很值得每一 ...

  6. 【转载】FPGA静态时序分析——IO口时序

    转自:http://www.cnblogs.com/linjie-swust/archive/2012/03/01/FPGA.html 1.1  概述 在高速系统中FPGA时序约束不止包括内部时钟约束 ...

  7. FPGA静态时序分析——IO口时序(Input Delay /output Delay)

    1.1  概述 在高速系统中FPGA时序约束不止包括内部时钟约束,还应包括完整的IO时序约束和时序例外约束才能实现PCB板级的时序收敛.因此,FPGA时序约束中IO口时序约束也是一个重点.只有约束正确 ...

  8. 【转】 Android 开发 之 JNI入门 - NDK从入门到精通

    原文网址:http://blog.csdn.net/shulianghan/article/details/18964835 NDK项目源码地址 : -- 第一个JNI示例程序下载 : GitHub  ...

  9. MSP430常见问题之开发工具类

    Q1:我自己做了一块MSP430F149的试验板,以前用下载线进行调试没有出现过问题,但是,最近我每次make后用下载线调试时,总是弹出一个窗口,给我提示:Could not find target ...

随机推荐

  1. mysql——主键自动增长&唯一索引

    首先说一下主键和唯一索引的区别 主键:一个数据库的一张表有且仅有一个主键,而且主键不能重复 唯一索引:一个数据库的一张表上唯一索引可以有多个,只是所在唯一索引上的值不能重复,这一点和主键一样 下面我们 ...

  2. java 枚举类型 enum

    在java SE5中添加了枚举类型,即enum关键字.在这之前,当你需要创建一个整形常量集时,但是这些枚举值并不会必然的将其自身的取值限制在这个常量集的范围之内,因此这样做的显得不安全,也不方便使用. ...

  3. CodeChef CHEFSOC2 Chef and Big Soccer 水dp

    Chef and Big Soccer   Problem code: CHEFSOC2 Tweet     ALL SUBMISSIONS All submissions for this prob ...

  4. JavaScript tips —— target与currentTarget的区别

    定义 以下是红宝书的描述 属性/方法 类型 读/写 说明 currentTarget Element 只读 其事件处理程序当前正在处理事件的那个元素 target Element 只读 事件的目标 M ...

  5. ng2 学习笔记(二)表单及表单验证

    在上一篇文章中提到了表单,只说了表单的数据绑定,这一篇文章主要讲一下表单验证,为什么把表单单独拿出来学习,主要是因为,表单是商业应用的支柱,我们用它来执行登录.求助.下单.预订机票.安排会议,以及不计 ...

  6. Netty官方示例

    一.DEMO 官方并没有使用Hello World来作为一个例子,而是采用RFC的DISCARD,这个协议定义了就是接收到请求后什么也不干. 第一步编写DiscardServerHandler类: p ...

  7. yii2:如果获取config/web.php配置的值?

    return [ 'version' => '1.0.1', 'category-map' => [ 1 => '样式1', 2 => '样式2', 3 => '样式3' ...

  8. Learining TypeScript (一) TypeScript 简介

    Learining TypeScript (一) TypeScript 简介 一.TypeScript出现的背景    2 二.TypeScript的架构    2 1.    设计目标    2 2 ...

  9. 计算从哪天起应该购买预售火车票.cs

    代码直接CSC编译即可. 计算从哪天起应该购买预售火车票.cs using System; using System.Diagnostics; using System.IO; class Progr ...

  10. 异步请求(ajax,http) 之 逐渐完善的大全

    异步请求在我们的开发之中是经常需要学习和理解的内容,我们将会在这一篇文章中依据不同的语言和环境内容进行归类讲解. JS: ajax是我们最为常用的页面异步请求,在只需要修改部分页面内容而不需要更换全部 ...