1、sysref如何产生?
(1) 如果是one-shot模式,sysref应当在tx、rx双方的链路层均复位完成后再发送,确保双方的链路层能够产生LMFC边沿。jesd204b协议里并没有明确描述收发双方需要收到sysref之后才能启动ilas功能,但是实测xilink的IP及分析ADI的jesd204b代码发现:tx在没有收到sysref时,不会发送ILAS序列;rx在没有收到sysref时,不会释放elastic buffer。
(2)如果是 continue模式,sysref应当以多帧周期的整数倍产生。但是协议里并没有明确说明如果发生了sysref重对齐,收发双方该如何进行动作,只从ADI的开源代码来看,重对齐会调整本地的LMFC,但是不会调整数据的帧头帧尾的位置,相当于重对齐对链路不会产生任何影响,此处需要确认。
2、sync~信号什么时候拉高,什么时候拉低?
SYNC~由RX产生,复位后应为1(即deassert状态)。RX复位完成后,会拉低SYNC~发起同步请求,实测下来,xilink的TX在SYNC~信号时,不会发送/K/码。
对于subclass1, RX在收到最少连续4个/K码/之后,在下一个LMFC拉高SYNC~,指示TX开始发生ILAS
3、ILAS是否可以bypass?
ALTERA和XILINK的jesd 204B RX IP,都支持Bypass ILAS,但协议中ILAS应该是标准,而不是可选项。不过这在于IP供应商怎么设计,我个人认为这个BYPASS ILAS的功能主要是用于RX侧,而TX侧还是正常发送ILAS,这样的话RX就可以把ILAS当做正常数据,从而可以看到ILAS的内容是什么,有些应用可能需要使用ILAS的内容,这一部分应该是为了灵活性。一般情况下,不建议bypass ILAS。
由于协议中是用ILAS来作为确定性延迟的锚点的,如果要bypass ILAS,则需要改变数据的锚点,可以选择/K/码和有效数据的边界作为锚点。
4、PHY和MAC层什么时候需要分成两个IP,什么时候使用一个IP?