CPRI 是无线通信里的一个标准协议,连接 REC 和 RE 的通信。AMD 有提供 CPRI IP 核。区别于其它通信协议,如以太网等,CPRI 是一个同步系统。
这就意味着两端的 Master 和 Slave 应当是同源时钟的,两边不存在频差,并且内部延时也都是固定的,每次运行可以通过计算获得,供上层应用使用。因此,可以让 Master 有一个参考时钟使用,而 Slave 则利用 GT 从串行数据中恢复出来的时钟,经过外部一个 Cleanup 的 PLL,产生参考时钟送回来,供 Slave 参考使用。这样,两端就能同源了。
注意,由于 AMD 的 GT 模块限制,这里外部需要提供一个,在还没有恢复钟送到,就能自主产生相同频率(但有 ppm 差异)时钟的 PLL;等到 Slave 收到数据,同步并产生恢复时钟后,外部的这个 PLL 也能将频率渐渐对齐到恢复时钟(即对端 Master 真正频率上面),最终实现整个同步系统。
CPRI 的内部结构如下图所示。CPRI 数据,主要指的是 IQ 数据通道,另外还有控制数据,包括 Vendor Specific,Slow C&M(即 HDLC 数),Fast C&M(即 Ethernet 数),这些数据共同分享 CPRI 物理层通道。