作者:一博科技
4 N: p9 l; B2 W" b3 J
3 |% k' F2 `& l( Q上周我们把MAC到PHY、PHY到PHY这两个子层之间的通信框架拎出来,把它们放在一个框图下,如下图所示:; W: T9 |0 R! f
" b* K, u; h$ p, v图1 MAC与PHY框架 : d& }/ w A' m4 b: w
4 ~: Y) X3 ^( @. T& J4 L
今天来讲讲这个PHY的内部、及其内部各个模块间的接口协议。PHY它包含了多个功能模块,功能模块的多少会因需要的不同而有所增减,比如:% L" y5 C# I# U* x
只有10GBase-R、40GBase-R、100GBase-R的PCS需要FEC;
9 \( E9 ^5 c+ D4 Y' S( c& U2 C40GBase-R的PCS需要2个PMA、100GBase-R的PCS需要3个PMA;
1 v4 a% D3 w3 }5 m5 w$ G. J只有≥1Gbps以上的背板应用场景才会用到AN。
' {1 h% ]7 [. t8 c, p9 ?% ~ I 6 u$ O q, q4 e, d2 S3 n! [- R9 W
1. 功能模块介绍我们知道PHY在OSI(开放式系统互连)参考模型下,属于物理层,PHY由多个模块组成,各个功能模块的作用如下:
7 B6 z6 B( E0 o$ Z+ r% GPLS:PhysicalSublayer Signaling,对MAC给的信息进行传递,只在1Mb/s、10Mb/s的应用场景才出现;
2 r, x1 S, v1 B3 j, P0 qPCS:Physical Coding Sublayer,对MAC给的信息进行编码,应用于≥100 Mb/s的应用场景,比如完成8B/10B、64B/66B、256B/257B编码;
/ R* D- v5 E5 R; V& |FEC:Forward Error Correction,前向纠错,与10GBase-R、40GBase-R的PCS 搭配;3 @! E. E- s6 G% e5 x0 f# }
RS-FEC:Reed-Solomon前向纠错,比单纯的FEC纠错能力更强,与100GBase-R的PCS 搭配,采用256B/257B编码;
5 m F' V0 Y7 ?' VPMA:Physical Medium Attachment,/ _) f6 G6 S- z: t& `0 w
PMD:Physical Medium Dependent,
3 l" y7 P: L8 G. d, X/ M BAN: Auto-Negotiation Function,自动协商,使背板两侧的Device能够互换信息以发挥出彼此最大的优势;! Q# ?2 a! w" i. [6 T- K
2. 模块间的接口定义1) PLS与PMA间的接口,称之为AUI(Attachment Unit Interface);! ^0 j: U' `; K
2) PCS与FEC间的接口,称之为XSBI:10Gigabit Sixteen Bit Interface;. ]5 X* u/ y' @; C) [2 |4 n! T
3) PMA与PMA间的接口,可以是chip to chip,也可以是chip to module,有两种:) l* `6 q/ W. h. D: @0 I
XLAUI:40 Gigabit Attachment Unit Interface,4条lane,每条lane的数率是10.3125Gbps;; K3 f# T$ W) E: r$ Q7 k$ \/ V5 `
CAUI:100 Gigabit Attachment Unit Interface,10条lane,每条lane的数率是10.31250Gbps;
* h' U1 d2 S9 S( k$ _4) PMA与PMD间的接口,称之为nPPI(Parallel Physcial Interface)。
' z( `7 B) X% ]2 o
2 A* n+ O; u3 Z( ~% o3 @ bnPPI特定出现在PMD所接的媒介是光纤的情况下,比如40GBase-SR4、100GBase-SR10、40GBase-LR4协议。也就是说这种情况下的PMD是光模块,nPPI就必然是一种chip to module间的接口,这也是IEEE802.3标准与OIF_CEI标准兼容的地方之一。nPPI按照通道数量的不同分成两种。
$ u/ F3 a( O* ^* N! f" g, d0 C3 _7 b+ ?
• XLPPI:40 Gigabit Parallel Physcial Interface,4条lane,每条lane的数率是10.3125Gbps;
. ?' S# J+ V8 K. H* L6 B; Q/ }$ J• CPPI:100Gigabit Parallel Physcial Interface,10条lane,每条lane的数率是10.3125Gbps;
: X' A% v. ~- U1 M
# Z: ]' W$ U& k! m" i: ?3. 接口协议对通道的要求我们了解了这么多PHY内部的接口,对于很多人,最关心的还是产品设计该怎么做?不同接口的通道(channel)衰减多少能满足要求?下面就用简单粗暴地方式来一一列举,都是干货啊!开始划重点了!
3 _4 n+ W$ F$ Z6 f& {4 ^0 q. {9 o& G" E4 ~4 Q& F* q# d
1) PLS与PMA间的AUI接口
) O: X6 w9 Z! }9 P) k/ p' l, z% z$ Z% Y) ^+ t! G4 c
2) PCS与FEC间的XSBI接口; J; }# G/ X: \& ^2 h1 S) b' [1 c
对通道没有给出无源的要求,但对接收端的信号质量和时序有要求,测试工程师应该喜欢这张标准定义方式。
4 B- T1 X: K% X. _. p: F `6 L0 R5 l' x3 E
3) PMA与PMA间的XLAUI、 CAUI接口" J$ c0 o& V$ ^4 Y/ Y
- 如果是用于chip to chip的场景,则对channel的要求如下所示:
' M) D& E- {4 s8 T- x3 ^
U) U. T% j. |7 C6 }5 D4 ^* n' _6 @% S* d+ M& k/ l: g
! m- ]* m" W( Z; x
3 {- B6 b+ R6 X' |$ e; N7 r0 J# f
如果是用于chip to module的场景,则channel分为host、connector、module三部分,如下图所示:. o7 N1 N7 b* \5 j8 ]4 W
- n X. R0 Z: y. ^9 l( v% r1 Y9 G0 h
- w' [5 G1 b+ P9 r* g( u( E1 F. g( w
下面是对host插损的详细要求:1 q! l4 L9 M& w$ Y
2 o2 `! t4 ]& S$ Z: X! @2 w# Z5 E; |$ j( f) M& x
3 N9 u' r* S- x+ y7 F! \0 [; i
# a/ X$ ?! m" q6 q' H" e ?" G: |
下面是对Module插损的详细要求:0 b# ?1 t; ?9 C h8 x
$ Y# ]+ N3 \5 V8 L1 x7 Y" c+ j4 f" B8 J& K/ O9 s7 q; ?# S
1 M$ @: H/ L9 w0 r2 r4) PMA与PMD间的nPPI(XLPPI、CPPI) 接口4 I+ Q, B4 o' D8 e
下面是对host部分的详细要求:
7 X8 W: K! Q/ v3 B2 s
& d& ~# Z7 p: r( V; Y9 r& c+ S9 w: u
9 {: }/ q" m9 H9 A7 f" W, {" c4 r o d3 o0 f0 Q9 I5 z& t5 [* \
用插损、回损的表达方式对通道做要求,一部分工程师对于此感觉依然是云里雾里,看着这些所谓的dB完全不理解,那么下面还一种更为大家熟悉的方式:眼图,这也是在产品测试阶段最直观的标准。对于XLAUI、CAUI、nPPI接口眼图标准如下所示:
- k0 m; q( d) G/ z% E
+ D3 N$ X7 b4 v+ V: m3 xPHY子层内部接口今天就介绍到此,下周我们开始讲讲两个PHY之间的传输协议,通过背板、光纤传输的10G、25G信号有什么要求,比如10GBase-KR、100GBase-KR4等协议。
9 X$ s) p+ ~2 H8 e6 R |