用PCI-7300A實現數據高速輸入
目的
實現高速串行數據的計算機輸入,并要求嚴格保證不丟失傳輸的數據
應用背景
某種設備現需要一個統一的數據記錄平臺,前端設備各不相同,但都含有高速串行輸出端口,最高傳輸數據率近100Mbps。要求數據記錄平臺保證不變,可以完成對各種串行數據的接口,同時采樣數據可以實時存盤
解決方案
利用差分驅動芯片實現遠距傳輸;利用ALTRA公司的FPGA實現串行數據至并行數據的轉換,利用PCI-7300A的握手信號實現數字信號的實時采集及存盤
詳細介紹
數據信號的高速遠程傳輸在前端設備實現,主要采用高速差分驅動芯片,可以實現數字信號在長線纜中的高速傳輸,一個比較重要的問題是阻抗匹配,因為如果匹配不好會造成信號失真嚴重。
實現高速串行數據的計算機輸入,并要求嚴格保證不丟失傳輸的數據
應用背景
某種設備現需要一個統一的數據記錄平臺,前端設備各不相同,但都含有高速串行輸出端口,最高傳輸數據率近100Mbps。要求數據記錄平臺保證不變,可以完成對各種串行數據的接口,同時采樣數據可以實時存盤
解決方案
利用差分驅動芯片實現遠距傳輸;利用ALTRA公司的FPGA實現串行數據至并行數據的轉換,利用PCI-7300A的握手信號實現數字信號的實時采集及存盤
詳細介紹
數據信號的高速遠程傳輸在前端設備實現,主要采用高速差分驅動芯片,可以實現數字信號在長線纜中的高速傳輸,一個比較重要的問題是阻抗匹配,因為如果匹配不好會造成信號失真嚴重。
PCI-7300A是一塊32CH高速數字量卡,在此項目中32CH全部用作數字量輸入;串行數據至32CH并行數據的轉換利用ALTRA的FPGA實現。由于ALTRA的芯片可以實現現場編程,這樣對于不同的前端設備,只要寫入不同的程序就可以實現匹配。
為了避免數據的丟失,FPGA與PCI-7300A之間通過握手方式來實現數據傳輸。具體的方式是:
1. FPGA把數據準備好后,然后發DI_REQ信號給PCI-7300A
2. PCI-7300A收到數據后,回饋DI_ACK信號給FPGA。
3. FPGA收到DI_ACK信號后,準備下一組數據。
通過這樣的握手信號,就可以保證數據的傳輸不會出現Overrun,也就保證了數據不丟失,同時又能進行高速的數據傳輸。
文章版權歸西部工控xbgk所有,未經許可不得轉載。