《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于CPCI總線和LVDS的高速數據傳輸系統的設計
基于CPCI總線和LVDS的高速數據傳輸系統的設計
2019年電子技術應用第4期
李 金,焦新泉,劉東海,王淑琴
中北大學 電子測試技術國家重點實驗室,山西 太原030051
摘要: 為了實時準確地接收處理大容量的高速數據,在深入研究CPCI總線的基礎上,提出了一種基于CPCI總線和LVDS的高速數據傳輸系統的實現方法。以PCI9054為橋接器件,FPGA為微控制器,設計了將PCI Target單周期模式讀寫指令和DMA突發模式傳輸數據相結合的傳輸模式,在保證數據可靠傳輸的同時,提高了數據的傳輸速度。經實踐測試,該設計工作穩定,傳輸準確,成功地完成了預期傳輸任務。
中圖分類號: TN919;TP274
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.183275
中文引用格式: 李金,焦新泉,劉東海,等. 基于CPCI總線和LVDS的高速數據傳輸系統的設計[J].電子技術應用,2019,45(4):60-63,68.
英文引用格式: Li Jin,Jiao Xinquan,Liu Donghai,et al. Design of high speed data transmission system based on CPCI Bus and LVDS[J]. Application of Electronic Technique,2019,45(4):60-63,68.
Design of high speed data transmission system based on CPCI Bus and LVDS
Li Jin,Jiao Xinquan,Liu Donghai,Wang Shuqin
National Key Laboratory for Electronic Measurement Technology,North University of China,Taiyuan 030051,China
Abstract: In order to accurately receive and process large-capacity high-speed data in real time,based on the in-depth study of CPCI Bus,a high-speed data transmission system based on CPCI Bus and LVDS is proposed. PCI9054 is used as the bridge device and FPGA is the microcontroller. The transmission mode combining PCI Target single-cycle mode read/write instruction and DMA burst mode transmission data is designed to improve the data transmission speed while ensuring reliable data transmission.After practice testing,the design work is stable,the transmission is accurate,and the expected transmission task is successfully completed.
Key words : CPCI Bus;LVDS;FPGA;data transmission;PCI9054

0 引言

    隨著科學技術的迅猛發展,越來越大的數據傳輸量和越來越高的數據傳輸速率成為信號處理系統亟待解決的問題。因而,開發一種能夠實時處理大量高速數據,同時兼具穩定性和通用性的新總線成為整個數據鏈技術中迫切需要解決的瓶頸之一。CPCI (緊湊外圍設備互聯總線)結合了PCI總線的電氣特性和歐式卡的機械標準,可提供132 MB/s的峰值帶寬[1],同時CPCI構架開放,性能優良,在可靠性、兼容性和機械性能等方面均有優勢。 因此,CPCI總線已成為當今應用最廣泛的工業計算機總線,基于CPCI總線的工業控制計算機已經成為解決大量高速數據處理的一個新方向。

    基于某測試任務,本文詳細闡述了通過CPCI總線接口和LVDS接口接收和傳輸測試數據,在保證可靠性的前期下,提高了地面設備接收和處理數據的速度。測試結果表明,此方法可行可靠,圓滿完成了測試任務。

1 總體設計

    本設計的主要工作是對外接CPCI設備進行命令下發、狀態檢測及數據接收操作。其主要工作流程是:由上位機下發命令字控制整個系統的正常運行,主控芯片XC3S400通過PCI9054橋接從背板總線接收主機卡發出的命令字,完成邏輯控制;通過RS422接口與外接設備進行通信,控制外接設備進入相應的工作狀態以及接收其相應的狀態返回;通過LVDS接口接收外接設備的高速數據,將數據寫入FPGA的FIFO后,由PCI9054通過DMA控制器將接收的數據回傳至主機卡。總體設計框圖如圖1所示。

ck1-t1.gif

    整個設計以FPGA為控制核心,充分利用其強大的可編程能力[2],能夠靈活控制總線傳輸速率等多個指標,在增加系統通用性的同時,也充分發揮了CPCI總線高速傳輸的優勢。

2 RS422接口設計

    RS422接口用來下發命令字和接收狀態字,由于信號碼率較低,為625 kb/s,因此設計中主要考慮傳輸的穩定性和可靠性。本設計針對此問題首先選擇了抗干擾性強的差分對信號傳輸數字量,同時對信號采取隔離措施,以防止前后級設備之間的互相干擾。接口電路示意圖如圖2所示。

ck1-t2.gif

    該接口電路選用ADI公司的磁隔離全雙工收發器ADM2682E,無需外接DC/DC隔離模塊。但是輸入輸出的供電引腳需要電源旁路,噪聲抑制需要一個低電感高頻電容,紋波抑制需要一個大容量電容。為了抑制噪聲和降低紋波,至少需要并聯兩個電容,其中容值較小的電容靠近器件擺放。因此,在器件的VCC與GND1,VISOIN、VISOOUT與GND2之間均要加去耦電容。

    差分輸入端R2將差分輸入正端上拉至VISO,R4將差分輸入負端接地,這樣做的好處是可以防止因為差分信號長距離傳輸造成的信號削弱,阻值均選擇1 kΩ;因為數據傳輸電纜為特性阻抗為100 Ω的第五類屏蔽雙絞線,R3的作用是可以減少信號的反射和衰減,提高數據傳輸的可靠性,阻值選為120 Ω。

3 LVDS接口設計

3.1 硬件接口

    LVDS技術采用低壓擺幅和和低電流驅動輸出,具有很強的抗干擾性[2-4]。TI公司的DS92LV1023和DS92LV1224分別是高速串行差分數據流串化器和解串器。

    在系統上電后,DS92LV1023和DS92LV1224將所有輸出引腳置為三態后,啟動鎖相環跟蹤并鎖定本地的全局時鐘。LVDS串化器連續給數據接收端的解串器發送同步信號,當解串器鎖相環成功鎖定同步時鐘后,LVDS接口將串行數據送出。同理,LVDS解串器也需要與發送端同步后才能接收數據。若在數據傳輸的過程中解串器鎖相環失鎖,時鐘紊亂,則LOCK信號會置高電平以通知串化器進行再同步的操作。

    為了延長LVDS數據的傳輸距離,在發送端和接收端分別增加了電纜驅動器和電纜均衡器,以此來增強差分信號的驅動和補償能力。驅動器CLC001AJE的傳輸速率最高可達622 Mb/s,通過配置外圍電阻將DS92LV1023輸出的低壓差分信號壓差從200 mV提升至0.9 V~1.1 V,有效增強了信號的驅動能力。在信號的接收端,信號經過屏蔽雙絞線傳輸,衰減后很容易造成碼間串擾,均衡器CLC014AJE可針對帶寬50 Mb/s~650 Mb/s的信號進行補償。恢復信號強度后,再通過DS92LV1224將串行數據解串[5]。LVDS數據發送、數據接收電路分別如圖3、圖4所示。

ck1-t3.gif

ck1-t4.gif

3.2 軟件邏輯設計

    LVDS邏輯控制示意圖如圖5所示,控制模塊由FPGA內部的FIFO完成數據的緩存。上電后,LVDS發送模塊向外部發送同步信號Sync,FIFO空標志信號Prog_empty為0時,FIFO讀使能信號FIFO_rden_reg置1,將FIFO中的數據讀出,然后向外部接口發送,線上空閑時發送無效數據[6-7]

ck1-t5.gif

    LVDS接收模塊在時鐘Rclk的上升沿,對從被測設備接收到的數據進行糾錯;在時鐘Rclk的下降沿,判斷若接收到的數據為有效數,則內部的數據有效信號置1,將有效數據發送給FIFO,通過主控制模塊上傳至CPCI總線。

4 CPCI總線接口實現

    目前,CPCI總線接口的實現主要有2種方法:(1)使用可編程邏輯器件自行設計;(2)使用專用的協議轉換芯片,將CPCI總線轉換為用戶自定義的本地總線[8]。第二種傻瓜式的實現方法雖然不如第一種方法靈活,但勝在省時省力,簡單易用,開發周期短,因此應用較為廣泛。

4.1 PCI9054工作模式

    本設計采用PLX公司的PCI9054協議轉換芯片,其本地工作模式采用邏輯控制簡單、開發難度較低的C模式,該模式下PCI9054芯片內部的地址線和數據線相互獨立,用戶可以自行定義需要的本地時序,實現CPCI接口的通信功能。CPCI接口與本地總線之間的數據傳輸有3種方式:PCI Initiator模式、PCI Target和DMA模式。PCI Target模式是CPCI主設備通過PCI9054發起對本地總線上資源的訪問;DMA模式即PCI9054通過控制CPCI和本地兩條總線來實現數據的突發傳輸。本設計主要工作是命令字的下發和數據的上傳,考慮操作的簡易度,對于命令字的下發采用Target模式下的單周期訪問模式,對于數據的上傳采用DMA模式突發傳輸[9]

    PCI9054與CPCI總線的連接是通過CPCI連接器J1實現的,即PCI9054的CPCI信號通過串接10 Ω匹配電阻與J1的相應信號引腳連接,串接10 Ω電阻是為了減少總線分支因為較大的背板阻抗對總線產生的瞬態干擾,保證信號傳輸的準確性。PCI9054的本地時鐘由外部有源晶振提供,且與FPGA端的時鐘同步。在FPGA內部劃分一塊FIFO作為數據緩存,利用其雙口操作的特性實現數據的跨時鐘域傳輸,同時也方便了本地時序的設計。

4.2 CPCI本地總線接口實現

    CPCI本地總線接口是本設計的核心所在。整個CPCI接口的設計思路是:主控芯片FPGA通過橋接PCI9054與CPCI總線交互,由其內部邏輯自定義本地總線的工作時序實現對總線的狀態控制,同時產生片內讀寫及地址信號完成單周期讀寫和突發傳輸的功能。在FPGA內部劃分一塊FIFO作為數據緩存來實現數據突發讀取,由其半滿信號作為上位機的讀取標志。基于這種設計思路,為了保證通信的可靠性,本文設計了類似握手協議的通信方式,具體操作如圖6所示。

ck1-t6.gif

    系統上電復位后狀態機在S0狀態循環等待。當上位機下發指令時,CPCI總線將Lhold信號拉高來申請本地總線,本地總線將Lholda信號拉高作為應答信號將總線控制權交給PCI9054。然后CPCI總線將Ads#拉低,開啟新的總線傳輸,將命令字寫入約定好的地址LA0。FPGA在檢測到Ads#有效后離開S0進入S1狀態。判斷Blast#為低,進入單周期傳輸模式,判斷LW/R#為低,執行Target讀操作,即從CPCI總線接收上位機下發的命令字,然后拉高Ready#和Blast#表示單周期讀操作結束。接著狀態機返回S0繼續檢測Ads#信號。根據協議,FPGA會接著執行一次單周期Target寫操作,將收到的命令字向上位機返回,由上位機對比兩次命令字,結果一致表明命令下發成功,否則重新發送。這種增加反饋確認程序的命令下發模式有效保證了命令發送的準確性。

    當下發的命令字要求上傳數據時,FPGA將內部FIFO緩存的半滿標志根據協議寫入固定地址,上位機每間隔一定個CLK會自動執行一次單周期讀操作,讀取該地址的標示內容,若標示有效,則狀態機進入DMA突發傳輸模式時,結束后返回S0狀態,繼續讀取半滿標示,直到命令結束。

    這種結合PCI Target單周期模式讀寫指令和DMA突發模式傳輸數據的傳輸模式,既在節省CPU資源的同時保證了命令的準確下發和反饋,也有效發揮了CPCI總線的高速傳輸數據的優勢[10]

5 仿真與試驗結果分析

    調試使用ISE配套的ChipScope Pro軟件實時分析本地總線操作時序,圖7為單周期讀操作時序。在上位機下發上傳數據的指令42H后,CPCI總線每400個CLK自動執行一次單周期讀操作,判斷地址0x3000內的數據標示是否為AA,如果是,說明緩存已準備好有效數據,上位機可以突發取數。經過390個CLK后,上位機開始突發取數,圖8為突發取數操作時序,上位機從地址0x0020~0x1820取走FPGA寫入的2K數據,每次突發4 B。實際工作時序與CPCI本地接口的理論時序一致。圖9是上位機解包后的原始數據,其中包標示用于區分模擬量和數字量,包計數用于鑒定丟包。整個數據文件幀結構完整,包計數連續,沒有丟數現象,進一步證明了本設計中CPCI接口與本地接口銜接合理,方案可行。

ck1-t7.gif

ck1-t8.gif

ck1-t9.gif

6 結論

    本設計以PCI9054和FPGA控制器為核心,以LVDS為數據傳輸接口,從軟硬件兩個方面介紹了CPCI總線和本地總線的交互設計,通過協議轉換芯片簡化了整個設計,完成了數據傳輸卡與上位機之間的通信。測試結果表明,本設計方案可行、可靠,同時也可以為PCI、PXI平臺的設計提供參考價值。

參考文獻

[1] 金海平.基于FPGA及CPCI總線的數據采集系統設計[D].長沙:國防科學技術大學,2013.

[2] 李北國,楊圣龍,李輝景.基于FPGA的LVDS高可靠性傳輸優化設計[J].電子技術應用,2018,44(8):78-81,85.

[3] 趙陽剛,郭濤,黃玉崗.基于FPGA和LVDS的彈載數據回讀系統設計[J].電子器件,2017,40(1):113-117.

[4] 郭虎峰,陳香香,李楠.基于LVDS總線和8b/10 b編碼技術的高速遠距離傳輸設計[J].自動化與儀表,2015,30(5):32-36.

[5] 任勇峰,彭巧君,劉占峰.基于FPGA的CPCI高速讀數接口設計[J].電子器件,2015,38(1):148-151.

[6] 郭柳柳,儲成君,甄國涌,等.基于PXI總線高速數據傳輸卡的設計[J].計算機測量與控制,2014,22(6):1899-1901.

[7] 魏麗玲,朱平,石永亮.基于FPGA的圖像采集與存儲系統設計[J].電子技術應用,2015,41(11):67-69,73.

[8] PLX Technology.PCI 9054 Data Book.Version 2.1[Z].2000.

[9] 李昕龍,劉亞斌,周強.基于PXI/CPCI總線的LVDS數據收發模塊設計[J].微計算機信息,2012,28(9):105-106,273.

[10] 王曉君,宇文英,羅躍東.基于FPGA的CPCI和LVDS接口技術及應用[J].半導體技術,2007,32(3):248-251.



作者信息:

李  金,焦新泉,劉東海,王淑琴

(中北大學 電子測試技術國家重點實驗室,山西 太原030051)

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 黄网在线免费观看 | 成人午夜性a一级毛片美女 成人午夜小视频 | 一级毛片在线视频 | 亚洲国产高清视频 | 色偷偷777| 我要看黄色一级毛片 | 国产成人aaa在线视频免费观看 | 国产精品麻豆一区二区三区v视界 | 天天操天天看 | 欧美另类videos粗暴黑人 | 日本888 xxxx | 日本理论午夜中文字幕第一页 | 亚洲欧美日韩一区高清中文字幕 | 天堂va欧美ⅴa亚洲va一国产 | 欧美日韩在线免费观看 | 美女羞羞免费网站 | 免费的成人a视频在线观看 免费的a级毛片 | 久久久久久久999精品视频 | 美女日批视频在线观看 | 国产日产欧产精品精品推荐在线 | 最近2019年中文字幕6 | 中文字幕av一区 | 在线观看一区二区三区视频 | 久久久精品2018免费观看 | 中国黄色毛片 大片 | 五月天婷婷精品免费视频 | 黄色片在线免费 | 全黄大全大色全免费大片 | 青草欧美| 黄色影片在线播放 | 在线欧美日韩国产 | 120秒免费| 蜜桃社极品尤物大尺度美女 | 曰批全过程免费视频观看软件 | 天天干天天色天天射 | 国产第3页 | 日韩欧美综合视频 | 老司机免费福利午夜入口ae58 | 日韩精品久久不卡中文字幕 | 国产成人精品免费视频大全五级 | 日日好吊妞 |