數字量變換器是一種多路數據采集設備,主要采集各傳感器的輸出信號(及其他需經(jīng)遙測系統傳送的信號),將各路信號按一定體制組合起來(lái)并加上幀同步碼形成一定格式的PCM數據,互不干擾地通過(guò)同一個(gè)信道傳送出去。 PCM解碼板是為數字量變換器設計的接收端,把組合信號解調出來(lái),恢復各路原始信息,加以記錄、處理和顯示,用于數字量變換器的單機調試和單元測試。限于測試臺空間的嚴格要求以及測試系統的微型化、高速數據傳輸、低功耗原則,PCM解碼板采用了基于低壓差分信號LVDS的串行通信技術(shù)增強了抗噪聲、抗干擾能力,并以時(shí)鐘和數據恢復技術(shù)解決了限制數據傳輸速率的信號時(shí)鐘參差問(wèn)題,大大提高了數據傳輸的數據率。選用了FPGA作為PCM解碼板控制核心,將各功能模塊由FPGA統一協(xié)調完成,從而簡(jiǎn)化了設計的復雜程度,縮短了試驗和開(kāi)發(fā)周期。 1 模塊硬件結構 PCM解碼板硬件結構,如圖1所示。 PCM解碼板接收到上位機上傳PCM數據命令后,輸出幀同步信號給數字量變換器,并接收數字量變換器輸出的PCM串行數據,在碼同步信號的配合下,將PCM串行數據經(jīng)FPGA串并轉換后寫(xiě)入FPGA中的發(fā)送FIFO(First In First Outmemory先進(jìn)先出存儲器)中。LVDS總線(xiàn)物理層將FPGA中的FIFO內數據包的數據和時(shí)鐘信號編碼為20位串行數據上傳。串行數據傳輸示意圖,如圖2所示,TCLK為發(fā)數時(shí)鐘,RCLK為解串時(shí)鐘。 2 LVDS總線(xiàn)結構 針對數據可靠傳輸在數據交換系統中的重要性,方案結合LVDS接口和OSI網(wǎng)絡(luò )模型,設計了一種基于LVDS接口的數據傳輸協(xié)議,并具體給出了各協(xié)議層所實(shí)現的功能及協(xié)議約束關(guān)系;贚VDS的總線(xiàn)體系結構大致分為:物理層、數據鏈路層和傳輸層。 (1)物理層。 LVDS總線(xiàn)采用DS92LVl8專(zhuān)用接口芯片,連接構成兩對LVDS信號,一對用于發(fā)送,一對用于接收。物理層在發(fā)送端將時(shí)鐘信號用18 bit/20 bit編碼方案嵌入數據中以達到高速數據率;在接收端將串行數據流中的數據和時(shí)鐘分離,然后對串行數據進(jìn)行采樣,從而在接收端恢復了串行數據。通過(guò)搜尋同步字符進(jìn)行字同步,數據流恢復到和發(fā)送端編碼后的數據流相同,該數據流再經(jīng)解碼,恢復原始數據,寫(xiě)入接收端的FIFO內,等待數據鏈路層的進(jìn)一步處理。 物理層除了收發(fā)器(DS92LV18芯片)和傳輸介質(zhì)(PCB走線(xiàn))外的所有模塊均在FPGA中實(shí)現。物理層結構示意圖,如圖3所示。 LVDS兩對低壓差分信號無(wú)論其傳輸介質(zhì)是電纜還是PCB走線(xiàn),都必須與終端匹配,以減少不希望的電磁輻射,提供最佳的信號質(zhì)量。通常一個(gè)盡可能靠近接收端的100 Ω終端電阻跨在差分線(xiàn)上即可提供良好的匹配。電路設計中,輸入差分線(xiàn)對離開(kāi)DS92LV18集成芯片后立刻盡可能地相互靠近(距離(2)數據鏈路層。 在數據鏈路層中包含控制邏輯和幀格式,數據以幀為單位傳送,在目的節點(diǎn)被接收。這樣做是為了當出現差錯時(shí),可將有錯誤的幀重傳一次,從而避免了將全部數據都重傳一次所帶來(lái)的帶寬浪費,且各接收節點(diǎn)能從接收到的比特流中明確地區分出一幀的開(kāi)始和結束在什么地方,以及數據和控制信息。該層的功能模塊也在FPGA中實(shí)現。 (3)傳輸層。 傳輸層的任務(wù)是為從發(fā)送節點(diǎn)到目的節點(diǎn)提供可靠、合理的信息傳輸。傳輸層是控制通信過(guò)程的核心,初始化和通信過(guò)程中,需要設置必要的計時(shí)器、地址和狀態(tài)寄存器,這些都是傳輸層來(lái)實(shí)現。其中,地址寄存器用于存儲節點(diǎn)前繼和后繼地址,計時(shí)器是為初始化和通信過(guò)程中的超時(shí)報警而設置。該層功能可通過(guò)在FPGA內部定義信號來(lái)實(shí)現。 3 PCM碼解調設計 PCM解碼部分用于接收數字量變換器輸出的PCM串行數據并將數據串并轉換。該部分需產(chǎn)生兩種勤務(wù)信號,幀同步信號:周期為25 ms,碼寬8μs;碼同步信號:頻率81.92 kHz,占空比50%,用于數字量變換器內部的時(shí)序控制。每8個(gè)一組的碼同步信號稱(chēng)作一路,在每幀中從第1路開(kāi)始排到128路結束。模塊接收的群信號是串行“0”“1”碼,為不歸零碼。PCM解碼部分工作原理:根據幀、碼同步信號時(shí)序特征,FPGA生成一個(gè)數據時(shí)序進(jìn)程,在時(shí)鐘信號的推動(dòng)下通過(guò)地址推進(jìn)來(lái)輸出幀、碼勤務(wù)信號。數字量變換器輸出的串行PCM數據流在碼同步信號作用下,通過(guò)移位寄存器轉換為8位并行數據,通過(guò)寫(xiě)信號WR同步將解得的并行PCM碼寫(xiě)入到FIFO中。串并轉換的工作時(shí)序,如圖4所示。 經(jīng)多次測試,上位機讀回的數據按照副幀結束標志EB 90兩個(gè)bit和幀結束標志14 6F兩個(gè)bit所組成數據格式的結果與設計要求吻合。 4 結束語(yǔ) 實(shí)踐表明:由于采用低壓差分信號傳送數據,不易受共模噪音影響,可以實(shí)現更快的數據傳輸,同時(shí)具有低功耗、低噪聲等優(yōu)良特性;由于總線(xiàn)結構物理層可以采用專(zhuān)用接口芯片實(shí)現,而數據鏈路層和傳輸層均可采用可編程邏輯器件FPGA實(shí)現。因此,總線(xiàn)硬件實(shí)現簡(jiǎn)單,易于低成本解決系統高速通信問(wèn)題。通過(guò)測試分析,該板在PCM解碼的抗干擾能力及實(shí)現解碼數據的高速、可靠傳輸方面均達到了系統提出的技術(shù)指標。 |