1. 概述
Alter公司的QuartusII軟件提供了LVDS發送和接收的IP核供我們使用,其在本質上可以理解為並行-串行數據的轉換器。其在官方文檔(見附件)上也這樣說過。其中的應用場景有告訴AD/DA的數據傳輸等。
那在此我們就針對這一IP核進行了解、熟悉和測試。首先我們來對差分發送端進行學習。
2. altlvds_tx

圖2.1 altlvds_tx的RTL視圖
下面進入IP核配置部分,對主要的一些參數進行介紹說明。首先圖2表示了其設置參數,圖2.1中的number of channels(C)是通道數目,表示一共有多少通道的差分數據,例如C=4時,對應就為tx_out[3:0]。deserialization factor(J)表示串並參數,例如J=8,C=1時,對應為tx_in[7:0];J=8,C=2時,對應為tx_in[15:0]。

圖2.2 通道數目和並行長度參數
下面為輸出比特率和工作頻率的設置,其應滿足一定的規則,比如在本例中,串並參數J=8,那么應該有80Mbps=10MHz*8bit。此處應保持一定的一致。

圖2.3,輸出比特率和工作頻率
輸出時鍾時鍾設置與否,根據divide factor(B)來限定輸出時鍾的頻率特性。下圖中的B=2表示了輸出時鍾tx_outclk頻率為模塊輸入時鍾頻率的一半。

圖2.4,勾選輸出時鍾和設置分頻參數
在規定完上述的參數設置后,進行波形的仿真,從中模塊的四個輸入輸出可以看出該模塊的具體功能。

圖2.5 仿真波形圖結果
3. altlvds_rx
圖3.1為一個簡單的差分接收端,其有兩個輸入,一個輸入時鍾,一個輸入數據。一個輸出為輸出並行數據。

圖3.1 altlvds_rx的RTL視圖
下面進入IP核配置部分,對串並參數J進行設置,下圖中是將J設置為J=2。

圖3.2 並串轉換輸出因子
圖3.3為仿真結果,從圖中看出輸入數據為循環序列01000111,其由接收器接收,每次在一個時鍾周期內接收兩個字節。從仿真結果中看出,就收為低位在前。原序列接收為10,00,10,11。且每次接收數據為時鍾下降沿和時鍾的當前上升沿。如圖3.4所示。

圖3.3 仿真波形圖結果


圖3.4 從上到下依次為輸入時鍾,輸入數據,輸出數據