在電子設計領域中,通常要對多路寬帶信號進行實時采集、處理和傳輸。傳統的信號采集傳輸系統,采用專用集成電路控制A/D轉換器等外圍電路。由于專用集成電路時鐘頻率低、靈活性差、實時性低、傳輸速度慢、通用性差等缺點,難以滿足對高速寬帶信號采集和處理的要求。FPGA具有時鐘頻率高、速度快、采集實時性高、控制靈活等特點,與A/D轉換器等外圍電路結合,更適于高速數字信號處理。光纖傳輸與電氣傳輸相比,具有傳輸頻帶寬、通信容量大、傳輸損耗低、抗電磁干擾性能強、抗輻射能力強、保密性好、重量輕等特點,在通信領域被廣泛應用。
文中提出基于FPGA和光纖傳輸的高速數字信號傳輸方案。以帶有收發器的高性能FPGA為控制核心,控制外圍A/D轉換器和數據處理,通過光纖媒介進行數據傳輸,滿足高速數字信號實時處理和傳輸的要求。
1 系統總體設計方案
光纖傳輸系統是以光波為信息載體、光纖為傳輸媒介,用光來傳輸信息的傳輸系統。光纖傳輸系統總體框圖如圖1所示,發送端主要由A/D采集、FPGA數據預處理、光纖發送模塊組成;接收端主要由光纖接收模塊、FPGA數據后處理、D/A轉換模塊組成。兩者通過光纖進行通訊。
圖1 光纖傳輸系統總體框圖
在發送端,先將外部輸入的模擬信號進行預處理,再通過A/D轉換器轉化為數字信號送入FPGA進行處理。根據數據傳輸以及通信協議的要求,FPGA將預處理后的A/D數據進行編碼、成幀。然后由FPGA內部的IP核進行并串轉換,最后由光收發模塊完成電光轉換后,通過光纖發送出去。
在接收端,光收發器模塊將接收到的光信號轉化為電信號,完成高速串行數據到并行數據的轉換;然后,將轉換后的并行數據送入FPG A,FPGA完成信號的解幀、解碼,并進行后處理,該過程是發送端的逆過程。最后,經D/A轉換器將接收到的數據恢復成模擬信號。
2 硬件電路設計
2.1 發送端硬件電路設計
可編程邏輯器件FPGA是主控芯片,是系統的核心,設計選用Altera公司帶有收發器的Arria GX系列芯片EP1AGX50CF48416.芯片內部集成了4個收發器通道,傳輸數據率從600 Mbit·s-1到3.152Gbit·s-1,收發器每通道在2.5 Gbit·s-1時消耗功率僅為125 mW;收發器可利用固定均衡設置來均衡串行通道,實現發送預加重和接收均衡;收發器支持串行環回、反向串行環回以及偽隨機二進制序列(PRBS)產生器和校驗器。專用收發器接口電路如圖2所示。RREFB14接一個2kΩ/1%的參考電阻,其他未使用的收發管腳通過10kΩ電阻到電源或地。
圖2 收發器接口電路
光收發模塊選用MXP-243S-X型光收發器,其可處理的數據率為1.25 Gbit·s-1,單電源3.3 V供電,差分LVPECL電平輸入和輸出,發射和接收部分相互獨立。發射部分差分輸入阻抗100 Ω,傳輸光信號波長1310nm.光發射器電路圖如圖3所示。發射的差分數據接到FPGA的專用收發器的發射管腳G4和G5上,控制引腳直接接到普通L/O管腳,并通過上拉電阻接到電源。
2.2 接收端電路設計
接收端FPGA也選用Altera公司的Arria GX系列芯片EP1AGX20CF48416.光收發模塊仍選用MXP-243S-X型光收發器。電路連接只需將圖3中的RD+、RD-端口直接接到光收發器TLK1501.
圖3 光發射器電路圖
為了與下級系統匹配,設計串行收發器選用TI公司的TLK1501,支持最高1.2 Gbit·s-1的數據帶寬。其內部集成有8 B/10 B編碼器、并串轉換器、差分輸入輸出接口、8 B/10 B解碼器、串并轉換器、時鐘管理模塊等。內部有自檢環路,可方便地進行自檢,并集成信號丟失檢測,支持熱拔插,其電路如圖4所示。
圖4 光接收器電路圖
R201,R202,R204,R205為50Ω匹配電阻,R203為參考電阻200Ω,R206和R207提供終端匹配所需要的偏置電壓。
3 軟件設計
設計采用自頂向下的模塊化設計方法,用Verilog硬件語言編程,實現FPGA對光纖接口處芯片、A/D和 D/A轉換器等外圍電路的控制。
3.1 發送端FPGA程序設計
發送端FPGA邏輯設計主要包括采樣存儲邏輯、校驗、成幀及編碼邏輯和光發送器接口邏輯。
3.1.1 采樣存儲邏輯
采樣存儲邏輯完成數據的采集以及實時存儲。其邏輯形式及原理框圖如圖5所示。
圖5 采集存儲邏輯框圖
AT84AS001是ADC芯片。輸入的差分數據直接接到FPGA的專用差分引腳。采集存儲控制邏輯包括LVDS接收以及數據重組等模塊,通過LVDS接收器將雙沿時鐘變為單沿,數據重組模塊進行數據重新排序,還原原始數據流。最后在FIFO中進行緩存。
3.1.2 校驗、成幀及編碼邏輯
校驗、成幀及編碼邏輯完成數據格式轉換,將處理后的數據進行CRC編碼、成幀、8B/10B編碼和并串轉換。算法流程如圖6所示。
圖6 校驗、成幀及編碼算法流程圖
3.1.3 光發送器接口邏輯
光發送器接口邏輯完成幀數據到高速串行數據流的轉換。直接利用FPGA內部的專用收發器,其結構如圖7所示。
圖7 光發送器接口邏輯
幀數據首先南發射相位補償FIFO模塊進行相位補償,抵消時鐘相位差,然后通過字節串行器將數據轉換為8位,接著進行8B/10B編碼,并由串行器轉換為高速數據流,由專用差分輸出口輸出。
3.2 接收端FPGA程序設計
發送端FPGA邏輯設計主要包括光接收器接口邏輯和解碼、解幀及校驗邏輯。
3.2.1 光接收器接口邏輯
TLK1501有一個狀態機,負責監測不同的工作狀態,即同步捕獲模式、同步模式和誤碼檢測模式。上電或復位后,狀態機進入同步捕獲模式,當接收到3個連續的IDLE碼或載波擴展碼或1個有效數據或錯誤延時,即進入同步模式。在同步模式下進行數據的正常接收與發送。在這個模式下,TLK1501接收到一個無效代碼,狀態機立即進入誤碼檢測模式。檢測模式收到4個連續無效代碼時,TLK1501立即重新進入捕獲模式。TLK1501同步狀態機如圖8所示。
圖8 TLK1501同步狀態機
光接收器接口邏輯完成高速串行數據流到低速并行數據的轉換。使用串行收發器TLK1501,其結構框圖如圖9所示。
圖9 光接收器接口邏輯
由專用差分端口輸入的高速數據經時鐘恢復單元進行時鐘恢復,串并轉換后進行10B/8B解碼,最后傳給FPGA進行解幀操作。
3.2.2 解碼、解幀及校驗邏輯
解碼、解幀及校驗邏輯完成數據格式轉換,將接收到的數據進行10B/8B解碼、解幀和CRC校驗,獲得有效數據。算法流程如圖10所示。
圖10 解碼、解幀及校驗算法流程圖
4 實驗仿真及波形
圖11是TLK1501穩定傳輸數據效果。由圖可以看出,TLK1501實現了實時穩定傳輸數據。
圖11 TLK1501穩定傳輸數據效果圖
圖12是數據收發誤碼測試的仿真波形圖。data_all是到當前時鐘為止已測試的數據總量,data_err是到當前時鐘為止傳輸錯誤的數據總量,可以看出,在傳輸了百億個數據后,誤碼仍為零。
圖12 數據收發誤碼測試的仿真波形圖
5 結束語
研究設計了一種基于FPGA和光纖通訊的高速數字信號傳輸方案。實驗結果表明,該方案實現了高速數字信號的實時傳輸,具有信號傳輸誤碼率低、系統工作性能穩定、抗干擾性強的優點,由于實際需要,系統在接收端采用TLK1501,這就限制了光纖傳輸的速率,若采用FPGA內部的光纖收發模塊,則可進一步提高傳輸速率。
-
FPGA
+關注
關注
1629文章
21752瀏覽量
604137 -
芯片
+關注
關注
456文章
50914瀏覽量
424530 -
轉換器
+關注
關注
27文章
8719瀏覽量
147387
發布評論請先 登錄
相關推薦
評論