基于FPGA 的低成本長(cháng)距離高速傳輸系統的設計與實(shí)現
4.數據測試及系統性能分析
4.1 系統測試方案
測試方案主要對系統的靜態(tài)功耗、動(dòng)態(tài)功耗以及在50 米傳輸距離時(shí)的數據傳輸速率及相應的誤碼率進(jìn)行測試。測試方案連接框圖如圖6所示。測試所用數據存在發(fā)送端例化的ROM 中,接收端FPGA 中例化有FIFO 和ROM,FIFO 用來(lái)存儲接收的數據,ROM 中則存儲有和發(fā)送端ROM 中相同的數據,用來(lái)計算誤碼率。同時(shí),在接收端FPGA 中有接收數據計數器和錯誤比特計數器模塊,通過(guò)設置SignalTap II 的觸發(fā)信號和想觀(guān)察的信號,就可以在SignalTap IILogic Analyzer 的窗口中實(shí)時(shí)的看到這些信號。
圖6 系統測試方案
4.2 功耗測試
本系統通過(guò)直流穩壓電源供電,方便計算整個(gè)系統的功耗。經(jīng)測試發(fā)現,在不同的傳輸速率時(shí)系統的功耗差別不大,動(dòng)態(tài)功耗典型值為數據傳輸速率100Mbps 時(shí),系統消耗電流0.24A,供電電壓3.3V,系統功耗為792mW。靜態(tài)功耗測量時(shí),不發(fā)送數據,但保持50 米雙絞線(xiàn)接入,電流為0.20A,供電電壓為3.3V,靜態(tài)功耗為660mW。
4.3 誤碼率測試
在發(fā)送端的FPGA 中采用ROM 來(lái)存儲數據,通過(guò)狀態(tài)機transmitter_fsm_3b 來(lái)控制數據的發(fā)送,狀態(tài)轉移圖如圖7上圖所示。接收端則采用FIFO 來(lái)存儲數據,同時(shí)接收端ROM 中存有和發(fā)送端相同的數據,以實(shí)現接受數據與原始數據的對比,計算誤碼率,接收端通過(guò)狀態(tài)機receiver_fsm_3b 來(lái)控制數據的接收以及誤碼率的計算,狀態(tài)轉移圖如圖7下圖所示。由于EP3C15F144C8 的RAM 大小總共只有512kbits,再加上signal tap 的開(kāi)銷(xiāo),所以例化的ROM 和FIFO 比較小,ROM 大小為8Kbyte,內部存儲數據由00H~FFH 一直重復,把一次ROM 數據的發(fā)送當成一個(gè)幀。每發(fā)送一次ROM 數據即比較一次FIFO 中與原始ROM 中的數據。重復發(fā)送20000 次,總bit 數等于20000 次*(8192*8)bit= 1469120000bit。因為接收端的數據時(shí)鐘恢復和字對齊需要一定的時(shí)間,因而實(shí)際成功重復次數不到20000 次,可通過(guò)專(zhuān)門(mén)的計數器來(lái)確定實(shí)際重復次數。
圖7 狀態(tài)機狀態(tài)轉移圖
在接收端通過(guò)SignalTap II Logic Analyzer 實(shí)時(shí)查看接收數據rx_data、錯誤比特數error_accumulator 和成功重復次數packet_counter,圖8 為SignalTap II Logic Analyzer 接收數據的窗口顯示。誤碼率可通過(guò)式1 求得:
誤碼率=錯誤比特數/(成功重復次數×8192×8) (1)
圖8 SignalTap II Logic Analyzer 數據接收窗口顯示
傳輸速率及相應誤碼率如表1 所示,在傳輸數據為400Mbps,傳輸距離為50 米是誤碼率仍為0。由于選用的均衡器LM0074SQ 的極限速率為540Mbps,因而在數據速率為500Mbps 時(shí)誤碼率急劇增大。
表1 傳輸速率及相應誤碼率
5.總結
本系統高速數據遠距離傳輸方案以Altera 公司的Cyclone III 系列EP3C5E144C8 為核心,使用LVDS 信號傳輸數據,通過(guò)信道編碼、數據時(shí)鐘恢復、預加重和均衡等技術(shù)的使用,保證了數據傳輸的穩定性和同步性,在傳輸速率為400Mbps,傳輸距離為50 米時(shí),誤碼率為0??梢詮V泛的應用于各種高速遠距離數據傳輸的場(chǎng)合。
Altera 公司新推出的Cyclone IV GX FPGA 中含有8 個(gè)收發(fā)器,具有時(shí)鐘數據恢復(CDR)功能,并有在片內集成可編程預加重設置和可調差分輸出電壓(VOD)提高了信號完整性。本文的后續工作將在Cyclone IV GX 上實(shí)現本系統的所有功能,以進(jìn)一步提高數據傳輸速率、傳輸距離、誤碼率等指標。
評論