FPGA高速串行收发器GTPGTXWord文档格式.docx
- 文档编号:7196450
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:57
- 大小:2.02MB
FPGA高速串行收发器GTPGTXWord文档格式.docx
《FPGA高速串行收发器GTPGTXWord文档格式.docx》由会员分享,可在线阅读,更多相关《FPGA高速串行收发器GTPGTXWord文档格式.docx(57页珍藏版)》请在冰点文库上搜索。
而并行传输线速不可能超越吉比特。
吉比特串行I/O的主要优势是速度。
在从片内/片外、板内/板外或盒内/盒外获取数据时,没有任何技术可以超越高速串行链路。
高速串行链路的线速范围为1Gb/s~12Gb/s,有效负载范围为0.8Gb~10Gb。
2)节省管脚数。
将大量数据传入/出芯片或电路板时所遇到的第一个问题是引脚数,电路板设计时间和成本会随着管脚数的增加而急剧增加。
在大数据量应用下,串行I/O可节省大量的管脚(在低速以及小数据量应用中,MGT比传统并行模式需要更多的电源和接地引脚)。
3)简化同步转换输出。
采用单端并行总线时,设计者应考虑同步转换输出(SSO,即大量寄存器的值在某一时刻同时翻转,会对电源和地平面产生一定的影响,甚至影响到器件内部时钟和逻辑的正常工作)。
如果出现太多的同步转换,触地反弹会产生大量噪声。
设计者还可以在所有I/O上都使用差分信号处理技术,以此来消除SSO问题,但是这样做就会使引脚数翻倍。
如果数据流需求比较适中,设计者可以使用具有适当引脚数的并行接口。
4)EMI指标优。
经验表明:
时钟越快,放射测试就越难进行,因此,吉比特设计的EMI测试看起来是不可能实现的。
但是,通常高速串行链路的辐射量比以较低速度工作的大型总线低。
这是因为运行时的吉比特链路需要出色的信号完整性,正如经典论断“辐射问题实际上就是信号完整性问题”所言,因此吉比特串行IO具有更好的EMI指标。
5)成本低。
采用MGT通常会降低系统总成本。
连接器采用较小、较经济的封装时,引脚数较少,电路板设计也更简单。
6)预设协议。
采用MGT的另一个好处是可以使用预先定义好的协议和接口标准。
如Xilinx提供了从Aurora到XAUI的多种协议,满足不同的用户需求。
2.缺点
吉比特高速串行I/O的最大缺点在于对信号完整性的严格要求。
而且,阻抗控制的PC(印刷电路)板、高速连接器和电缆的费用较高。
因此,必须处理数字仿真中的复杂性和时基较小的问题。
并且,在利用预设协议的时候,必须为集成过程计划时间,以及为协议的开销安排额外的逻辑电路或CPU时钟周期。
3.应用范围
起初,吉比特级串行器/解串器(SERDES)仅局限于用在电信行业和少数缝隙市场(如广播视频)。
如今,MGT应用出现在电子行业的各个角落——军事、医疗、网络、视频、通信等等。
MGT也可以用于背板或机箱之间的PCB上。
对于电子行业的发展前景而言,MGT至关重要。
下面是采用吉比特级SERDES的行业标准示例。
∙光纤通道(FC)
∙PCIExpress
∙RapidIO串行
∙先进的交换互连(AdvancedSwitchingInterface)
∙串行ATA
∙1Gb以太网
∙10Gb以太网(XAUI)
∙Infiniband1X、4X、12X
吉比特级通信似乎强加了一些苛刻限制。
串行设计者必须考虑信号完整性、较小的时基以及可能出现的对额外门电路和CPU周期的需求。
但是,在盒间以及芯片间通信中采用吉比特级技术的优势远远超过了那些可以察觉到的缺点。
例如:
高速、引脚数少、低EMI和低成本等,这些都使它成为了众多高速设计的理想之选,并保证了其在未来通信系统中得到广泛的使用。
10.2.2吉比特串行I/O系统的组成
吉比特串行传输是一种通用的传输标准,虽然不同FPGA厂家的模块和组件名不同,但其关键技术都具备下列共同点。
1.系统整体结构
吉比特串行传输的系统整体结构如图10-1所示。
下面对其中的主要模块进行简要介绍。
图10-1吉比特高速串行I/O的系统结构示意图
串行器:
将速率为y的n位宽并行数据转变成速率为n*y的串行数据。
解串器:
将速率为n*y的串行数据转变成速率为y的n位宽并行数据。
Rx(接收)对齐:
将接收的数据对齐到合适的字边界。
可以使用不同的方法,从自动检测和对齐特殊的预留比特序列(通常也称作comma字符),到用户控制的比特调整。
时钟管理器:
管理各种时钟操作,包括时钟倍频,时钟分频,时钟恢复。
发送FIFO(先进先出):
在输入数据发送之前,暂时保存数据。
接收FIFO:
在接收数据被提取之前,暂时保存数据。
在需要时钟修正的系统中,接收FIFO是必须的。
接收线路接口:
模拟接收电路,包括差分接收器,还可能包括有源或者无源均衡电路。
发送线路接口:
模拟发送电路,可以支持多种驱动负荷。
通常还带有转换的预加重部分。
线路编码器:
将数据编码成适应不同线路的格式。
编码器通常会消除长的无转变位的序列,同时还可以平衡数据中0、1的出现次数。
需要注意的是,线路编码器是一个可选模块,某些SERDES可能没有。
线路译码器:
将线路上的编码数据分解成原始数据。
(这是一个可选模块,编码可能在SERDES外完成)。
时钟修正和通道绑定:
修正发送时钟和接收时钟之间的偏差,同时也可实现多通道间的歪斜修正。
(通道绑定是可选的,并不一定包含在SERDES中)。
其他可能包括的功能模块有:
循环冗余检测(CRC)码生成器、CRC检测器、多种编码
和解码(4b/5b、8b/10b、64b/66b)、可调的扰码器、各种对齐和菊花链选项、可配置的时钟前端和后端以及不同等级的自环。
2.参考时钟的要求
1)时钟精度
吉比特级收发器的输入时钟、或是参考时钟的规格定义是非常严格的。
其中包含非常严格的频率要求,通常用每百万次容许频率错误的单位PPM来定义。
抖动要求也是十分严格的,通常用时间(皮秒)或者时间间隔(UI)定义。
下面给出这些相关定义。
∙PPM:
百万分之一;
用来描述非常小的比率。
∙UI:
时间间隔;
等价于一个符号的时间长度,例如:
0.2UI=20%的符号时间。
∙抖动:
理想传输位置的偏差。
如此严格的规定才使得PLL和时钟提取电路能够正常工作。
通常系统的每一个印刷电路板都需要有一个精确石英晶体振荡器供MGT使用。
这些晶体振荡器的精确度比大多数用在数字系统中的晶体振荡器要高一个级别,而且价格也要高出一截。
很多情况下,一般的时钟
发生芯片和PLL因为带有很大的抖动,而不能用于MGT。
2)时钟修正策略
传输时钟有非常严格的抖动要求,所以吉比特SERDES通常不能将恢复时钟作为传输时钟。
每一个PCB集合都有唯一的振荡器和唯一的频率。
如果两个1GHz的振荡器仅仅有1PPM的频差,同时我们提供1/20的参考时钟,则数据流的时钟每秒钟可能会增加或者缺失20,000个周期。
因此,在8b/10b编码的系统中,每秒将会额外增加或者损失2万个符号。
大多数的SERDES都有时钟修正选项。
时钟修正需要使用唯一的符号或者符号序列,它们在数据流中是不会出现的。
因为时钟修正是对齐的后续处理,所以可以比较容易地通过保留一个K字符、或者一组有序的K字符、或者一个时钟修正数据序列来实现。
时钟修正进行的频数必须足够多,从而可以通过丢弃或者重复来补偿时钟的差异。
当然,有些系统并不需要时钟修正。
例如,相同的参考时钟和相同的速率意味着不需要进行时钟修正。
同样,如果所有接收电路的时钟都来自恢复时钟,那么时钟修正也是不需要的。
如果FIFO的写入速率和读出速率相等,也没有必要进行时钟修正。
如果所有的传输参考时钟都是通过一个外部的PLL锁定在一个公共的参考频率上,那么也不需要时钟修正。
3线路编码机制
线路编码机制将输入的原始数据转变成接收器可以接收的格式。
同时,线路编码机制还必须保证有足够的切换提供给时钟恢复电路。
编码器还提供一种将数据对齐到字的方法,同时线路可以保持良好的直流平衡。
线路编码机制也可选择用来实现时钟修正、块同步、通道绑定和将带宽划分到子通道。
线路编码机制主要有两种:
数值查找机制和自修改数据流或扰码器机制。
目前常用的有:
8B/10B编码、4B/5B编码以及扰码。
1)8b/10b编码
8b/10b编码机制是由IBM开发的,已经被广泛采用。
8b/10b编码机制是Infiniband,吉比特以太网,FiberChannel以及XAUI10G以太网接口采用的编码机制。
它是一种数值查找类型的编码机制,可将8位的字转化为10位符号。
这些符号可以保证有足够的跳变用于时钟恢复。
8b/10b编码具有良好的直流平衡特性,通过“运行不一致性”的方法来实现,即只使用有相同个数0和1的符号,但这会限制符号的数量。
同时,8b/10b中的comma字符(用于表示对齐序列的一个或两个符号)可辅助数据对齐。
8b/10b机制能带来字对齐、时钟修正机制、通道绑定机制和子通道生成等功能,其唯一的缺陷是开销。
为了获得2.5Gbit的带宽,它需要3.125Gb/s的线路速率。
从减小开销的角度讲,下面所讲述的扰码技术可以很容易地解决时钟发送和直流偏置问题,并且不需要额外的带宽。
2)4b/5b编码
4b/5b和8b/10b是类似的,但是要简单些,将4个比特编码成5个比特。
4b/5b的控制字符要少一些,但不能处理直流平衡和不一致性问题。
由于编码开销相同但是功能却比较少,4b/5b编码机制并不经常使用。
它的最大优势是设计的尺寸,不过随着逻辑门价格的降低这个优势也不再明显。
目前,4b/5b仍用在各种低速标准中,包括低速率版本的光纤通路、音频标准AES-10以及多通道数字音频复接标准MADI接口中。
3)扰码
扰码是一种将数据重新排列或者进行编码以使其随机化的方法,但要求必须能够通过解扰恢复。
加扰的目的就是打乱长的连0和长的连1序列,将数据随机化。
一般将那些在解扰时不需要额外对齐信息的扰码称作自同步码。
扰码发生器通常由移位寄存器组成,所占用的硬件资源很少。
扰码器消除了长连0和长连1序列以及其它会对接收器接收能力有负面影响的序列,但并不能取代8b/10b编码。
在实际中,由于存在不允许的数值,所以需要设计数据流中不能出现连0或连1的长度。
长的连0、连1会被扰码器打乱,并在解扰时进行恢复。
接收数据流的解扰逻辑在数据流中搜寻这些符号并对齐数据。
4.接收和发送缓冲器
接收和发送缓冲器,是吉比特级收发器的主要数字接口,通常是高速FIFO。
发送端通常有一个小型的FIFO,它要求读取和写入的时钟是等时同步的(频率匹配但相位不一定匹配)。
如果接收和发送的选通信号不是工作在精确相同的频率,则通常需要使用一个较大的FIFO,并持续检测FIFO的当前状态。
如果FIFO被不断地填充,将最终导致溢出。
在这种情况下,必须在输入数据流中检测idle符号。
如果检测到idle符号,则不把idle符号写入FIFO;
反过来,如果FIFO运行较慢则在输出数据流会出现idle符号,数据被传送给用户。
此时写指针保持不动,不断重复idle符号。
相对于发送缓冲器而言,MGT内建的接收FIFO通常需要有更深层次的考虑。
它的主要目的是为了实现时钟修正和通道绑定。
5.线路均衡
线路均衡主要用于补偿由频率不同而引起的阻抗/衰减差异。
均衡器有很多种形式,但总体上可以分为有源和无源两种。
均衡器通常包含在SERDES的模拟前端,或者作为系统的一个独立部分。
1)均衡技术简介
无源均衡器是无源电路,其频率响应可以补偿传输衰减。
它也可以看作一个滤波器,将传输线所使用的各个频率通过,而将传输线没有使用的其他频率滤除,那么整体的频率响应就会变得平坦许多。
有源均衡器可以认为是依赖频率的放大器/衰减器。
有源均衡器主要有两种:
固定形式有源均衡器和自适应有源均衡器。
对于任意的输入数据流,固定形式有源均衡器的频率响应都是一样的。
固定形式均衡器比较适合于不变系统中,例如:
芯片到芯片,平衡化的背板系统以及固定长度电缆的系统;
自适应均衡器要复杂的多,自适应均衡器需要分析输入信号并检测哪些频率在传输通道中被削弱。
在该均衡器中,测量和调节是以闭环形式实现的。
自适应均衡器的频率响应取决于输入的比特流,它通常和特殊形式的线路编码机制协同工作。
自适应均衡器对于可变通道的链路来说是最合适的,可变通道可以是可变的电缆长度,或是显著的位置依赖的背板系统。
2)预加重/取加重技术
预加重是一种非常普遍的均衡技术。
在发送端,通过增加一串相同符号中首位符号的输出级,降低随后符号的输出级,来预先抬高输出信号频谱中的高频分量,补偿传输通道的低通滤波效应。
这样,在接收端就可以得到相对均衡的眼图,使接收器能够准确地接收和恢复信号。
这种技术对于高数据速率的设计而言,简单而有效。
发送预加重技术主要是通过采用FIR多抽头的有限冲激响应均衡滤波器来实现的。
输入到滤波器中的是当前、过去和将来要发送的数据位。
滤波的系数取决于通道特性,最佳的滤波长度取决于影响当前正在发送数据的比特数量。
在具体实现中,一般采用二抽头FIR,进行双电流控制。
在电路转换时,为了克服传输通道的滤波效应,发送器分发额外的动态电流。
在转换后,则提供一个更低的驱动电流。
不同的通道损耗补偿需要不同程度的信号预加重;
因此,在发送器设计中,预加重功能一般是编程可控的。
为了和发送端预加重相匹配,则在接收端必须有去加重。
6.数据包的概念
通过吉比特串行链路传输的数据大都是嵌入在某种类型的数据包中的。
包是一种确切定义的字节集合,包括头部、数据和尾部。
如果系统通过包来完成时钟修正,发送特殊的比特序列或者comma字符。
时钟修正序列常常是比较理想的字符,comma字符是指示帧的开始和结束的天然标识。
在数据中加入有序集合用于指示包的开始、结束以及包的特殊类型之后,就构成了简单而高速的传输通道。
其中,空闲符号(Idle)或序列是包的概念的另一要点。
如果没有信息需要发送,则发送idle符号,从而保证数据的连续传输并使其保持对齐,
10.2.3吉比特串行I/O的设计要点
解决工程问题的关键在于充分的理解。
在设计吉比特级收发器时,面临的挑战包括:
理解收发器协议、信号完整性、阻抗和功率要求、屏蔽性要求、印刷电路板(PCB)设计要求以及连接器和电缆的选择要求。
1.电源
电源传送也是使用吉比特级收发器时需要考虑的重要因素。
多数的MGT都需要多个电源供电。
典型的电源包括:
RX模拟电源、TX模拟电源、模拟地、RX终端电压、TX终端电压、数字电源以及数字地。
所有的模拟发送和接收电源以及相关的模拟地必须是极其干净的,这一点是十分重要的。
所以,MGT制造商通常都会使用特定电路。
因此至少要求每个电压值都有各自的模拟电压校准器(如果不是每个MGT都有各自独立的校准器),并且要求使用无源的电源滤波器(由一个电容和一个铁氧体磁珠组成)。
典型的电源滤波电路如图10-2所示。
图10-2MGT电源滤波电路
某些MGT将电容包含在封装的内部,此时通常只需要铁氧体磁珠。
如果制造商建议使用特定电路,则通常最好遵从其建议。
原因之一是,在公共部分配置了多个MGT的情况下,通常只需要一个单独的线性调整器即可。
滤波器电路可以防止电源噪声进入MGT,同时它还可以防止来自某个MGT的噪声滤进其它MGT。
此滤波器既是输入滤波器也是输出滤波器。
有时制造商会基于自己所需的输出滤波性能,在输入滤波器和输出滤波器性能间做出折衷。
2.匹配电阻
实现信号完整性的第一步就是在差分传输线上传送这些信号。
根据通常的定义,传输线都有一定的固定阻抗。
实际上,阻抗值并不是恒定的,而是变化的。
这个问题在下面的几种情况下尤其突出:
信号由一层转移到另一层时,信号遇到元件的焊盘时,或信号通过连接器或电缆时。
当运行在吉比特级速率范围内,些许的阻抗增加都会是潜在的问题。
吉比特级链路需要使用阻抗无限制通道,否则其无法工作。
我们需要对传输通道进行模拟,并在布线之前使用CAD的信号完整性工具来最终确定连接器和电缆。
我们在获取初始原型时,需要用时域反射测量法(TDR)来检验通道的阻抗。
100欧姆和50欧姆的传输线是最常用的传输线。
部分收发器可以适配两种传输线,而部分收发器可能只能支持其中的一种。
对于10Gb/s范围的应用,50欧姆显然是最通常的选择。
如果收发器同时支持100欧姆和50欧姆,那么连接器和电缆的选择问题应当慎重考虑。
3.印制电路板的设计
对于优秀的PCB设计者来说,设计用于吉比特级操作的PCB也会是一个挑战。
设计者需要注意:
差分线路必须匹配,阻抗受限的差分线路的几何形状必须随着层数的增加而相应变化,电源分配也必须严格分析。
因为可能存在成千上万的独立的设计折衷和决定,所以全面列出所面临的问题可能会有所帮助。
主要包括如下的几个方面:
∙材料选择
∙叠层结构/板厚度
∙电源层和地层
∙
差分线路对
∙差分线路的宽度和间隔
∙过孔
∙线路对之间的间隔
∙电源布局
在实际设计中,必须参考不同FPGA厂家对PCB设计的详细说明文档,否则系统很可能不能正常工作。
4.数字设计部分
吉比特级链路的模拟仿真需求让我们进入了一个崭新的EDA工具世界,而其数字部分的影响则要小得多。
尽管如此,数字仿真时还是有几个事项需要考虑的。
1)MGT行为模型都是以特殊的加密形式出现的。
这些模型都是复杂的内核,而且都是非常有价值的知识产权(intellectualproperty,IP)核。
所以,厂商为了保护他们的知识产权,通常只会以IP-safe的格式发布这些模型。
最流行的格式称作smart模型或者swift。
通常,模型经过加密后,仿真器可以读取模型但是用户不能。
模型内部的节点和层次对于用户来说是不可见的;
用户只能看见模型的输入和输出。
2)数字仿真
MGT数字仿真的另一个问题是仿真速度。
通常的数字电路大多数工作在100-300MHz的范围,因此。
需要把仿真的时标调整到几个纳秒。
但是如果添加一个MGT的线速度模型,则信号速度就会比之前最快的信号还要快20倍以上。
MGT模型都有一个并行的输入和输出端口,因此如果在大多数的测试台中使用这些措施,并创建一个实际运行在全数据速率的小型测试组件,则MGT对全局验证时间的影响将会大大减小。
第2节基于RocketI/O高速串行技术
10.3.1RocketI/O技术简介
RocketI/O是一种高速的串行收发器,采用两对差分对来进行数据的发送和接收,可以实现两个单工或一对全双工的数据传输。
RocketI/O支持从622Mbps至3.75Gbps的全双工传输速率,还具有8B/10B编解码(平衡编码)、时钟生成及恢复等功能,可以理想地适用于芯片之间或背板的高速串行数据传输。
Aurora协议是为专有上层协议或行业标准的上层协议提供透明接口的第一款串行互连协议,可用于高速线性通路之间的点到点串行数据传输,同时其可扩展的带宽,为系统设计人员提供了所需要的灵活性。
RocketIO收发器发送和接收串行差分信号,工作于2.5V的直流电压下,采用CML(CurrentModeLogic)模式,内部带有50Ω或75Ω的匹配电阻。
此外,RocketIO采用了预加重技术,可以补偿传播媒质中的高频损耗,极大地降低了共模信噪比和线路衰减。
由香农公式:
可以得到,当信道容量一定时,信道带宽W的增加会造成信噪比下降。
由于RocketIO单路传输速率最高可达3.75Gbps,因此可允许很低的信噪比。
总体来讲,RocketIO的显著特点包括:
∙速率范围介于100Mbp到3.75Gbp之间;
∙业内最低的功耗:
在3.2Gbps下每个通道的功率均低于100mW;
∙可在单个FPGA中实现多个协议(标准的和定制的);
∙设计用来与Virtex-5LXT和SXT平台FPGA内的PCIExpress®
端点与三态以太网MAC模块一起使用;
∙符合芯片到芯片、背板与光学器件接口的常见标准和协议;
∙先进的Tx/Rx均衡技术,可以驱动背板和其它困难通道;
∙内置式PRBS发生器/检验器可以加速调试;
∙在Virtex-5LXT平台器件中的收发器多达24个;
10.3.2Aurora协议
1.Aurora协议简介
Aurora是一个相对简单的协议,只控制链路层和物理层。
Aurora的设计理念是使其它高层协议,例如TCP/IP和以太网,可以很容易的运行在Aurora之上。
Au
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FPGA 高速 串行 收发 GTPGTX