XFI 和SFI接口系统设计
XFI和SFI的来源
XFI来源于XFP光模块标准的一部分,指的是连接ASIC芯片和XFP光模块的电气接口。XFP光模块标准定义于2002年左右,其内部的收和发方向都带有CDR电路。因此XFP模块尺寸比较大,功耗也比较大,这个对于需要多端口高密度的系统,比如数通交换机会是一个问题。为了解决这两个问题,2006年左右,SFP+光模块标准出来了,其内部没有CDR电路,相对于XFP模块,SFP+模块尺寸和功耗都变小了。对应SFP+的电气接口叫做SFI。
XFI接口先于SFI接口出现。电气特性上,由于SFP+模块内部没有CDR,可以预见SFI的电气特性要求会比XFI来的更严格一些,这个可以从接下来的介绍的眼图和抖动指标要求中可以清楚的看出来。
标准以及参考点
XFI接口的电气特性定义在INF-8077文档,SFI接口的电气特性定义在SFF8431文档。
对于电气特性要求,这两个标准都定义了A,B,C和D四个参考点。
A代表系统板上ASIC芯片高速信号输出,封装管脚的位置
B代表系统板电信号输出的位置,即来自A点的信号经过PCB走线以后到达光模块的电输入的位置
C代表系统板上接收来自光模块的电信号,信号输入的位置
D代表系统板上ASIC芯片的高速信号输入,封装管脚的位置。即C点的信号经过PCB走线以后到达ASIC的电输入位置
图1:参考点位置
以XFI的INF-8077i文档所定义为例,上图可以看到A、B、C和D参考点的位置。
眼图和抖动指标
在上述两个标准文件里,对于每个参考点的输入信号幅度,抖动,和回损等等都有全部或者部分的定义。其中比较重要的指标是眼图模板和抖动要求,如下表格所示:
ASIC 发送端 | 光模块电接收 | ||||
参考点 | XFI(A) | SFI(A) | 参考点 | XFI(B) | SFI(B) |
INF-8077i | SFF8431 | INF-8077i | SFF8431 | ||
X1(UI) | 0.15 | - | X1 | 0.305UI | 0.12UI |
X2(UI) | 0.4 | - | X2 | 0.5UI | 0.33UI |
Y1(mV) | 180 | - | Y1 | 60mV | 95mV |
Y2(mV) | 385 | - | Y2 | 410mV | 350mV |
Jitter | 0.3UI | - | Jitter | 0.61UI | 0.28UI |
光模块电发送 | ASIC 接收端 | ||||
参考点 | XFI(C) | SFI(C) | 参考点 | XFI(D) | SFI(D) |
INF-8077 | SFF8431 | INF-8077 | SFF8431 | ||
X1 | 0.17UI | 0.35UI | X1 | 0.325UI | - |
X2 | 0.42UI | 0.5UI | X2 | 0.5UI | - |
Y1 | 170mV | 150Mv | Y1 | 55mV | - |
Y2 | 425mV | 425mV | Y2 | 525mV | - |
Jitter | 0.34UI | 0.7UI | Jitter | 0.65UI | - |
其中X1和X2,Y1和Y2是如下归一化眼图模板中,标注眼宽和样高的参数
图2:归一化眼图模板
A点和D点是系统板上的信号,这些是板内信号,做系统设计的时候,更需要关心的是B点和C点的信号,因为这两个地方是跟外部接口的位置。
从上表可以看出,对于B点的要求,XFI的抖动要求是小于0.61UI,SFI要求小于0.28UI。XFI的电压要求大于120mV,SFI要求大于190mV。XFI比SFI的要求来的要宽松一些,这是因为XFP光模块内部集成了CDR。
对于C点的要求,XFI的抖动要求是小于0.34UI,SFI要求小于0.7UI。XFI的电压要求大于340mV,SFI要求大于300mV。这里由于SFP+模块内部没有集成CDR,来自SFP+的电信号要比XFP模块来的差。
系统设计的问题和解决方案
通过以上的介绍,我们知道系统设计时,需要关注B点和C点的信号。实际上这样带来了两个问题。第一个是,如何保证我的系统B点是满足标准要求的。第二个是,如何保证我的系统板上ASIC可以容忍来自C点最差的信号。这个就涉及到到光模块和ASIC之间的链路了,我们还是先从标准开始。
XFI定义的最大链路衰减是9.6dB(见page19,INF-8077i, Revision 4.5)。SFI定义的推荐的最大链路衰减是9dB(见page66,SFF8431Revision 4.1),但是这项定义不是强制性的,也就是说ASIC供应商提供的产品性能有可能低于这个数值。
通常ASIC的供应商会提供设计建议,比如要求SFI链路长度小于5inches,或者提供通道的SDD21的模板。但是在我们实际系统设计中,由于的应用不同,会碰到各种情况,比如:
1)面板要出的光模块端口很多,两端的光模块离ASIC距离比较远。从而超过ASIC所定义的通道长度要求。
2)光模块放在一块子卡上,通过板间连接器或者背板连接器连接另外一块板子,除了通道变长以外,连接器的阻抗不连续都会带问题。
3)ASIC本身的发送端抖动输出性能不够好,或者接收的抖动容忍性能不够好,导致ASIC能够支持的通道距离很短。
如何应对这个问题?
1)对于SFI接口,TI官网上有一个应用笔记本Selecting TI SigCon Devicesfor SFF-8431 SFP+
Applications,详细介绍了TI对SFP+接口的解决方案。对于光接口可以采用
XFISFI接口系 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)