作者TEMmode (I am sorry..)
站内Electronics
标题Re: [问题] 石英振荡器的精确度问题
时间Thu Jan 25 12:24:24 2007
※ 引述《beagle (红茶犬)》之铭言:
: ※ 引述《acelp (未来,一直来一直来)》之铭言:
: : crystal起振还必须依靠电容 而crystal本身对温度会有variation
: : 挂在crystal上的电容也会对温度有variation
: : 这些variation可能会造成起振的频率偏移 甚至是jitter变大
: : jitter变大都不是一般IC所预期的
: : 而频率的偏移会在互连的device会造成clock shift
: : 简单讲假使两个系统125M相差100ppm 表示frequency offset 12500Hz
: : 那多久TX/RX间会有相差一个clock?
: : 一个clock消失了 通讯上可能一个封包错了 多媒体可能一个frame解错
: : 所以很多通讯系统的spec都会定义对频率的耐受度
: : 因为无法保证crystal的frequency variation
: 的确, 通讯协动多会定义双方 clock 可忍耐的差异度, 而且这容忍值颇大,
: 好像是在 5% 还是 10% 左右... 换成 ppm 会变成天文数字...
: 通常接收方会用 16 倍的频率去读讯号, 因此 1/16 或更大的 jitter 是可允许的,
: 为了避免连续的 0 导致误差累积, 较新的协定会用 8B/10B 或曼彻斯特编码,
: 提供定期的电位改变, 让接收方可以查觉对方的 jitter 重新同步...
: UART 是每个 byte 都有 start bit 和 stop bit, 每个 byte 都重新同步一次。
: 这时我有个问题, 我听过一位工程师说, 8B/10B 这类通讯协定,
: 可以用 PLL (锁相环) 去自动锁频, 接收方自然能顺便取得发送方的 clock,
: 可是我实在想不通, 上面的 16 倍频读取很好用, 为什麽要这样用 PLL 做...
如果是光通讯中clock and data recovery(CDR)的话,或许是传送的data速度已经很高,
要用比他快16倍clock去做oversampling有点困难.於是直接用个loop去取出clock的频
率以及相位,用来demux或者供後段电路来使用.
: 难道是把 PLL 锁频後送出的 clock 传给 shift register,
: 让硬体被 clock pulse 推着解码吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.17.105