jesd204bFPGA实现.docx

上传人:b****1 文档编号:1063830 上传时间:2023-04-30 格式:DOCX 页数:13 大小:1.02MB
下载 相关 举报
jesd204bFPGA实现.docx_第1页
第1页 / 共13页
jesd204bFPGA实现.docx_第2页
第2页 / 共13页
jesd204bFPGA实现.docx_第3页
第3页 / 共13页
jesd204bFPGA实现.docx_第4页
第4页 / 共13页
jesd204bFPGA实现.docx_第5页
第5页 / 共13页
jesd204bFPGA实现.docx_第6页
第6页 / 共13页
jesd204bFPGA实现.docx_第7页
第7页 / 共13页
jesd204bFPGA实现.docx_第8页
第8页 / 共13页
jesd204bFPGA实现.docx_第9页
第9页 / 共13页
jesd204bFPGA实现.docx_第10页
第10页 / 共13页
jesd204bFPGA实现.docx_第11页
第11页 / 共13页
jesd204bFPGA实现.docx_第12页
第12页 / 共13页
jesd204bFPGA实现.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

jesd204bFPGA实现.docx

《jesd204bFPGA实现.docx》由会员分享,可在线阅读,更多相关《jesd204bFPGA实现.docx(13页珍藏版)》请在冰点文库上搜索。

jesd204bFPGA实现.docx

jesd204bFPGA实现

JESD204BCLASS1简介与FPGA的实现

说明:

本文主要分析jesd204bCLASS1协议及在FPGA的实现

1、什么是JESD204B协议标准

JESD204B是一个实现高速ADC/DAC数据传输和多ADC/DAC同步的标准。

JESD204标准于2006年初次发布,经过2次修订,最新版本是JESD204B。

最初单条LAN的传输速度从3.125Gbps提升到12.5Gbps,最新标准中最重要的是加入了实现确定延迟的部分。

电气特征部分:

定义源端阻抗与负载阻抗为100Ω±20%;可采用AC/DC偶合方式,具体AC、DC特性可参考JESD204B规范第4章。

2、为什么要重视JESD204B标准

当前ADC/DAC主要采用CMOS和LVDS接口电平。

在数据速率不断提高时CMOS接口电路的瞬态电流会增大,导致更高的功耗。

虽然LVDS的电流和功耗依然相对较为平坦,但接口可支持的最高速度受到了限制。

这是由于驱动器架构以及众多数据线路都必须全部与某个数据时钟同步所导致的。

图1显示一个双通道14位ADC的CMOS、LVDS和CML输出的不同功耗要求。

图1采样率与驱动方式VS功耗

从图1可知在大约150–200MSPS和14位分辨率时,就功耗而言,CML输出驱动器的效率开始占优。

CML的优点是:

因为数据的串行化,所以对于给定的分辨率,它需要的输出对数少于LVDS和CMOS驱动器。

JESD204B接口规范所说明的CML驱动器还有一个额外的优势,因为当采样速率提高并提升输出线路速率时,该规范要求降低峰峰值电压水平。

同样,针对给定的转换器分辨率和采样率,所需的引脚数目也大为减少。

表1显示采用200MSPS转换器的三种不同接口各自的引脚数目,转换器具有各种通道数和位分辨率。

在CMOS和LVDS输出中,数据用作每个通道数据的同步时钟,使用CML输出时,JESD204B数据传输的最大数据速率为4.0Gbps。

从该表中可以发现,使用CML驱动器的JESD204B优势十分明显

引脚数大为减少。

表1不同驱动方式VS管脚数

另一方面采用CMOS接口的ADC/DAC器件受限于其接口传输速率,器件只能在较低频率范围内工作。

LVDS相对CMOS接口,其传输速率一般使用也不超过800Mbps,且需要传输随路时钟,对数据传输时序要求严格,对于上Gsps的工作器件通常采用数据分组传输,增加了管脚数,对板卡的布局、时序收敛等带来了非常大的影响。

同时这两种连接方式对要求实现多个高速ADC/DAC同步的系统的设计是非常困难的。

3、常用参数解释

参数名称

可配置值

描述

L

0-31

每个转换器采用的高速接口对数量

M

0-255

每颗芯片中的转换器个数

F

0-255

一个帧中的字节数

S

0-31

一个帧中具体一个转换器的采样数

N

0-31

设备分辨率

N'

0-31

每个采样点的bits数

K

0-31

多帧中帧的个数

CS

0-3

每个采样点的控制位数

CF

0-31

一个链接中具体帧中的控制字个数

HD

0/1

高密度,与数据成帧格式有关

SCR

0/1

扰码

3、JESD204BCLASS1关键技术

在子类1中,系统同步指标体现在不同设备间SYSREF和器件时钟间的时序关系,为了满足CALSS1的各项功能要求,除了SYSREF需要满足建立时间和保持时间要求(TSU和THOLD),具体应用对于确定性延迟的容忍程度对于定义SYSREF与器件时钟的应用分布偏斜要求而言至关重要。

图2同一系统不同器件间SRSREF采样时刻要求

为了满足图2的时序关系,JESD204B的时钟系统要求可以为每一个器件提供各种的SYSREF/DCLK对,

且SYSREF和DCLK的时序关系可以调整。

同时SYSREF/DCLK信号对采用相匹配的走线长度,从而保证时序要求。

走线长度匹配限值有SYSREF开关的有效窗口时间确定。

不同SYSREF信号到达器件的偏差尽量小,要保证不同时钟在相同时刻采样到SYSREF有效值。

3、JESD204B帧格式

JESD204B帧格式由3部分组成:

CGS:

代码组同步(codegroupsync):

当发送端检测到SYNCb信号为低电平时启动发送8B10B中的K28.5码,本数据段不进行扰码和字节替换操作,接收端检测到最少4个BC字节后可释放SYNCb信号;

ILA:

初始化多帧序列(initiallanealignment):

该阶段发送连续的4个初始化多帧(多帧是由K个帧组成,字节数为K*F),同样本数据段不进行扰码和字节替换;

图7ILA初始化多帧序列

初始化多帧以8B10B中的K28.0开始以K28.3结束,其中第二个多帧的第二字节是K28.4关键字用来指示当前多帧在紧跟着K28.4的后续14个字节是参数配置信息。

表2是具体的配置参数定义,字符含义可以参考规范的8.3节。

表2配置信息字节定义

DATA:

数据传输阶段(datatransmission),该阶段进行数据传输,规范中要求该阶段的数据需要进行字节替换(注扰码和不扰码的字节替换规则不同),用户可以根据需要确定是否需要对数据进行扰码操作。

字节替换规则:

1、没有使能扰码情况下的字节替换规则

2、使能扰码情况下的字节替换规则

JESD204B规定的扰码、解扰码生成多项式

规范中的扰码和解扰码生成多项式关系,在实际使用中需要根据生成多项式获取并行数据的扰码逻辑关系。

4、JESD204BCLASS1系统架构

图3JESD204Bclass1多个ADC同步输出到FPGA/ASIC架构

图3展示的是多个多通道ADC与FPGA或者ASIC的同步采集系统,logicdevice与ADC各自有独立的工作时钟和独立的sysref信号,系统设计要求工作时钟和sysref信号为同一个时钟源提供。

为了使多个ADC同步logicdevice要求输出一个相同时序信号的SYNC到每一个ADC器件。

图4JESD204Bclass1FPGA/ASIC与多个DAC同步架构

图4展示的是多个多通道DAC与FPGA或者ASIC的同步采集系统,logicdevice与DAC各自有独立的工作时钟和独立的sysref信号,系统设计要求工作时钟和sysref信号为同一个时钟源提供。

为了方便逻辑器件内部的同步处理,可以将所有的SYNC信号合成一个信号处理。

5、实现JESD204BCLASS1的逻辑功能框图

图5FPGA/ASIC内部JESD204B接收数据的逻辑功能框图

高速接口数据先通过serdes接口回复出并行10bits数据后再映射到8bits数据,通常8bits数据域时钟频率较高,我们实际逻辑器件(FPGA)内部使用的频率较低(一般逻辑现在使用的时钟频率大多不超过300MHz),这儿需要将字节数据转换成更宽的32bits数据或者64bits数据位宽,以降低逻辑器件内部工作时钟.数据在转换成更高位宽时没有按照用户的方式进行字节对齐,

用户需要手动对齐数据格式.对字节齐后的JESD204B数据进行多通道(LAN)数据对齐处理,然后根据是否扰码进行字节替换和帧监控处理以及解扰码操作.最后根据JESD204B帧数据复用方式提取出有效数据.

图6FPGA/ASIC内部JESD204B发送数据的逻辑功能框图

图6是JESD204B发送端在FPGA/ASIC内部实现的逻辑功能框图.整个发送端在SYSREF信号作用下生成帧和多帧时序信号(规范中的帧和多帧是按照8bits即一个字节来定义的,在实际操作过程中由于FPGA内部逻辑采用的时钟频率一般到不到要求如10Gbps的高速接口信号的字节时钟是1GHz,当前如要FPGA内部逻辑运行1G的时钟频率是不可能,那么发送数据端口一般采用32bits或者64bits位宽进行发送数据),在我们实际设计过程中一般多帧的字节数都是按照4的倍数来设计.系统时序信号驱动下当检测到外部SYNC信号有效时开始输出JESD204B帧头数据BC直到SYNC信号拉高,在下一个多帧计数器信号启始时发送4个初始化多帧,当初始化多帧发送结束,启动发送数据,数据根据配置进行是否扰码操作以及相对应的字节替换操作.最后将处理后的数据通过高速接口编码输出.

6、确定性延迟

确定性延迟即JESD204BCLASS1关键技术的具体体现。

规范中有如下要求:

多帧长度要大于最大的链路延迟。

延迟定义为DelayLINK=ΔTLMFC=TXdelay+LaneDelay+RXdelay;

时间的延迟在实际操作过程中和规范定义在此有点不同,由于当前serdes发送和接收延迟较大,在多数情况下多帧的字节数又不是很多(如32、64、128等)这种情况下是不满足规范要求的,但是我们一样可以实现确定性延迟设计--这种情况下的延时会超过一个多帧,可能会有2个及以上的多帧延时。

图8是规范中给出的确定延时示例。

图8规范中定义的确定性延迟示例

从图8中可以看出发送端在LMFC计数器为0时开始启动发送多个Lanes的帧数据,接收端每个Lane有不同延时,反映到接收数据上即每个Lane的数据不是同一时刻通过CDR恢复出来的有时差,但是所有Lane的数据都在当前多帧时间内接收到,在下一个LMFC计数器为0时开始输出数据则可确保多个Lane的数据是同步输出,且数据从发送到最后接收端输出这段延时是固定的,即为确定性延迟。

实际使用过程中的确定性延时如图9所示

图9实际情况中的确定性延时

在工程应用中TX和RX端的LMFC可能不是严格对齐的(与整个系统设计相关)存在一个固定的相差。

发送端发送的数据从并行数据编码开始到最后数据输出的Tx.延时可能超过1个多帧周期,在经过线路延时(很小几个字节延时),高速差分信号输入到FPGA管脚到并行数据对齐输出的Rx.延时可能会超过1个多帧周期。

同时每一个LANE之间的数据最后通过接收端解码出来的也存在不同时延差(线路距离差,数据提取相位差等组成),系统中接收端LANE最早于K.a点获取到数据、最迟K.b点获取到数据。

可选的弹性FIFO释放区间为(

1≤Releasezone<K.b)或者(K.b≤Releasezone≤K),第一种情况将会在第N+1个多帧周期位置输出对齐后的数据,确定性延迟将会是

的情形;第二种情况将会在第N个多帧周期位置数据对齐后的数据,确定性延迟将会是

的情形。

7FPGA实现JESD204BCLASS1的功能仿真图

本次设计中:

多帧K=32,帧长F=1;

高速接口收发送端数据,共8路GTX,每一路的发送数据时钟采用的是相同的

1、初始化数据BC段,和初始化的4个多帧数据;

2、发送的数据

3、接收端8路接收数据,GTX接收侧,每一路数据字节和相位是没有对齐的

4、接收数据字节对齐处理

5、接收侧数据相位对齐

6、解扰码和字节替换后的数据

7、发送端数据发送的是8'h12,没有使能扰码,下面是字节替换部分

红色部分是替换后的输出数据,黄色部分是原始数据

8、发送端数据发送的是8'h12,使能扰码,下面是字节替换部分

红色部分是替换后的输出数据,黄色部分是原始数据

9、发送端数据发送的是递增数据,使能扰码,下面是字节替换部分

红色部分是替换后的输出数据,黄色部分是字节替换的原始数据

10、接收端字节替换和解扰码的数据

黄色是输入数据,红色是字节替换和解扰码的数据

注:

高速接口设置的8B10B字节对齐在检测到4个及以上K28.5后需要将对齐方式设置成手动模式0,或者设置成只检测8B10B中逗号的正或者负信号进行对齐。

技术交流:

QQ568327428。

-----精心整理,希望对您有所帮助!

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2