2 LVDS总线结构
针对数据可靠传输在数据交换系统中的重要性,方案结合LVDS接口和OSI网络模型,设计了一种基于LVDS接口的数据传输协议,并具体给出了各协议层所实现的功能及协议约束关系。基于LVDS的总线体系结构大致分为:物理层、数据链路层和传输层。
(1)物理层。
LVDS总线采用DS92LVl8专用接口芯片,连接构成两对LVDS信号,一对用于发送,一对用于接收。物理层在发送端将时钟信号用18 bit/20 bit编码方案嵌入数据中以达到高速数据率;在接收端将串行数据流中的数据和时钟分离,然后对串行数据进行采样,从而在接收端恢复了串行数据。通过搜寻同步字符进行字同步,数据流恢复到和发送端编码后的数据流相同,该数据流再经解码,恢复原始数据,写入接收端的FIFO内,等待数据链路层的进一步处理。
物理层除了收发器(DS92LV18芯片)和传输介质(PCB走线)外的所有模块均在FPGA中实现。物理层结构示意图,如图3所示。
LVDS两对低压差分信号无论其传输介质是电缆还是PCB走线,都必须与终端匹配,以减少不希望的电磁辐射,提供最佳的信号质量。通常一个尽可能靠近接收端的100 Ω终端电阻跨在差分线上即可提供良好的匹配。电路设计中,输入差分线对离开DS92LV18集成芯片后立刻尽可能地相互靠近(距离<10 mm),以保持接收器的共模抑制能力,并且两条差分线之间的距离应尽可能保持一致,以避免差分阻抗的不连续性,这样能减少反射并能确保耦合到的噪声为共模噪声。
(2)数据链路层。
在数据链路层中包含控制逻辑和帧格式,数据以帧为单位传送,在目的节点被接收。这样做是为了当出现差错时,可将有错误的帧重传一次,从而避免了将全部数据都重传一次所带来的带宽浪费,且各接收节点能从接收到的比特流中明确地区分出一帧的开始和结束在什么地方,以及数据和控制信息。该层的功能模块也在FPGA中实现。
(3)传输层。
传输层的任务是为从发送节点到目的节点提供可靠、合理的信息传输。传输层是控制通信过程的核心,初始化和通信过程中,需要设置必要的计时器、地址和状态寄存器,这些都是传输层来实现。其中,地址寄存器用于存储节点前继和后继地址,计时器是为初始化和通信过程中的超时报警而设置。该层功能可通过在FPGA内部定义信号来实现。