EDA365电子论坛网

标题: pcie1.0/2.0/3.0的refclk时钟频率 [打印本页]

作者: huo_xing    时间: 2020-9-11 09:17
标题: pcie1.0/2.0/3.0的refclk时钟频率
如题,目前在做一个案子,需要用pcie switch扩外设。但是外设从pcie1.0到pcie3.0都有,cpu给的refclk只有一路,通过buff后估计也只有一种时钟。哪位大神了解pcie1.0~3.0的参考时钟频率是否都是100M?- q' G2 m# x+ @% M

作者: momokoko    时间: 2020-9-11 10:28
是的。如果你的外设有额外要求,可能是其他频率时钟,比如125M,156.25M,具体看手册。The nominal single-ended swing for each clock is 0 V to 0.7 V and a nominal frequency of 100 MHz ±300 PPM.
作者: huo_xing    时间: 2020-9-14 09:50
momokoko 发表于 2020-9-11 10:28
  e2 I. b2 ^. O是的。如果你的外设有额外要求,可能是其他频率时钟,比如125M,156.25M,具体看手册。The nominal single- ...

# @( }0 y4 W7 z: s) O2 Q额外要求先不考虑,现在想知道的是从pcie1.0到3.0是否默认时钟都是100M。
) L' f' T$ f) u4 F; o7 v我看到pcie规范中写这个参考时钟只是用来给tx/rx做时钟恢复用的。现在有个想法,直接把每个pcie外设提供一个100M的时钟晶振,这样不是更简单。不知道是否可行。4 n, N0 A; Y$ H6 Q

0 @. F. u7 z* Z
# q" S* s: V! N) X! A2 Q
作者: gabbana0529    时间: 2020-9-24 17:12
用pcie clock buffer. 最便宜. 业界作法
作者: 随风飘远    时间: 2020-9-25 15:21
用时钟芯片吗
作者: huo_xing    时间: 2020-9-29 11:28
gabbana0529 发表于 2020-9-24 17:12
7 \) |! \6 v. A, `2 H用pcie clock buffer. 最便宜. 业界作法

5 j/ L5 ?9 f9 w& m7 p. w% U实际应用只要1扩2,clk buffer也不一定便宜。我看了几颗buffer都需要配一个100M的晶振,这样看来还不如直接在两个外设上分别用一个100M的晶振。布线也方便。
6 W6 G! f8 {& O, X+ h6 a' n现在问题是,pcie host提供的时钟是不是都是100M。
6 ]9 a0 o# c# N2 @' _. C- c& ]6 E% r+ d* X+ u, ^4 M' K  Q: w% E

( x2 k5 q7 y. s( ^
作者: gabbana0529    时间: 2020-9-29 12:04
pcie clock不管几代是100Mhz. 这个讯号是differential pair. 对jitter跟位准都有嚴苛要求,應該只有clock gen跟buffer两种选择. 务必确认是pcie compliant. 另外就是你看看cpu有没有专门两路pcie ref clock输出。蛮多都会有至少两路。
, f% N! V0 h2 e9 j8 K( e没听过配100M晶振的buffer. 上面没有这个脚位. 只有clock gen会配25M晶振. buffer输入也是100Mhz differential pair.
+ v5 l# S6 Q7 Z8 [( ~' N# ?
作者: huo_xing    时间: 2020-9-29 13:25
gabbana0529 发表于 2020-9-29 12:04
2 b2 t2 z4 ?  r& j2 Ipcie clock不管几代是100Mhz. 这个讯号是differential pair. 对jitter跟位准都有嚴苛要求,應該只有clock g ...

- v4 }4 l- I& b* _好的,谢谢。知道了refclk是100M就好办了。( ?0 U% k4 p3 p
6 ?+ |- @! J; k" R; h& w* q
目前cpu输出的pcie只有一路,我们需要加pcie switch。refclk没有多余的。1 Q% G+ v. [, J* R' ?
, K6 p& c! ]5 W7 f* V8 B2 P

6 f% e( m$ R8 t8 y2 p& l6 y! Q
作者: startostar    时间: 2020-9-29 14:44
huo_xing 发表于 2020-9-29 11:285 `  d& S7 b& D8 {/ z/ L
实际应用只要1扩2,clk buffer也不一定便宜。我看了几颗buffer都需要配一个100M的晶振,这样看来还不如直 ...

; B, P: y6 T2 y8 H两个晶振不同步吧
/ v! v5 ?; u$ d! ]/ O0 }
作者: huo_xing    时间: 2020-9-29 15:03
startostar 发表于 2020-9-29 14:44' v, D+ l3 G: [
两个晶振不同步吧

4 t' n1 G2 p$ v6 O7 r4 B这个本来就不需要同步功能。refclk的功能是给device恢复时钟用的。% p0 f5 p$ T; w7 u, K" R8 _
可以去看所有的pcie外设定义,都会有CLKREQ#这个信号,是用来向host申请时钟用的。如果device本地有这个时钟,就不需要外部时钟了。( h/ V! @" `3 G) y1 d' L0 ^' C
% p# F( K% G; h7 u5 F8 E
0 x9 g3 N- W: E" ^* H1 h6 H& K

作者: t123456    时间: 2020-10-5 06:19
谢谢分享
作者: canatto    时间: 2020-10-6 18:30
Pcie可以跨时钟域,所以可以设备各自用自己的refclk. 但一般情况,在同一块PCB上,就共用同一个时钟buffer出来的refclk,多块PCB的话,就自配refclk。refclk也不一定非100MHz不可,常见到FPGA带以太网的就和pcie共用一个125MHz时钟。
作者: LZX_123    时间: 2020-10-6 23:29
huo_xing 发表于 2020-09-29 15:03:470 ~! F* y3 g1 q
[quote]startostar 发表于 2020-9-29 14:44. F7 a' \' S% i( M- k
两个晶振不同步吧
1 N( \6 Y4 H# k/ u# I
这个本来就不需要同步功能。refclk的功能是给device恢复时钟用的。! z7 }4 q& {/ d
可以去看所有的pcie外设定义,都会有CLKREQ#这个信号,是用来向host申请时钟用的。如果device本地有这个时钟,就不需要外部时钟了。
! K# d1 e' s1 D  x* Q
; T0 z& \. b, F% n4 X8 V
% J8 @6 x, l* X0 {2 X[/quote]; w9 ~6 [) [- B
3 _$ O) A2 d4 A5 x4 H
你用的平台没要求时钟同源吗?5 I  x1 j! X+ d$ W/ m9 V

作者: Li_charles    时间: 2020-10-9 10:36
refclk都是100MHZ




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2