《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于CPLD的ГОСТ18977總線收發系統設計與實現
基于CPLD的ГОСТ18977總線收發系統設計與實現
來源:微型機與應用2013年第2期
王 瑞, 芮國勝, 張 洋
(海軍航空工程學院 電子信息工程系,山東 煙臺 264001)
摘要: 針對現有俄式ГОСТ18977總線的實現方式中傳輸速率不兼容的問題,設計并實現了一種基于CPLD的ГОСТ18977總線收發系統。該系統利用CPLD進行分頻,可兼容不同的總線傳輸速率;并通過CPLD實現系統的邏輯設計與收發控制,能夠實時完成總線數據的發送、接收、顯示和存儲功能。
Abstract:
Key words :

摘  要: 針對現有俄式ГОСТ18977總線的實現方式中傳輸速率不兼容的問題,設計并實現了一種基于CPLD的ГОСТ18977總線收發系統。該系統利用CPLD進行分頻,可兼容不同的總線傳輸速率;并通過CPLD實現系統的邏輯設計與收發控制,能夠實時完成總線數據的發送、接收、顯示和存儲功能。
關鍵詞: 航空總線; ГОСТ18977協議; ARINC429協議; CPLD

    在現代俄制飛機上,普遍采用符合俄羅斯ГОСТ18977總線的傳送方式進行數字信息的傳送和交換。該數據總線標準類似于美國航空無線電公司(ARINC)制定的ARINC429傳輸標準。二者數據格式及電氣特性一致,其不同之處在于俄式ГОСТ18977標準總線傳輸速率有12 kb/s、48 kb/s、100 kb/s和250 kb/s 4種,而ARINC429標準總線傳輸速率只有12.5 kb/s和100 kb/s兩種[1]。目前,由于國內尚無專用的ГОСТ18977總線芯片,大多ГОСТ18977總線收發設備通常采用ARINC429專用芯片來實現[2]。而ARINC429芯片無法完全兼容ГОСТ18977的4種總線傳輸速率,參考文獻[3-4]通過設置芯片控制字的方法,對外部時鐘進行分頻以達到速率匹配的目的。這種硬件分頻的方法只能兼容某一固定傳輸速率,無法滿足不同傳輸速率設備之間的通信要求。本文設計并實現了一種基于CPLD的ГОСТ18977總線收發系統。該收發系統利用CPLD進行軟件分頻,可兼容不同的總線傳輸速率;并通過CPLD實現系統的邏輯設計與收發控制, 能夠實時完成總線數據的發送、接收、顯示和存儲功能。
1 系統總體設計
    在系統設計上,采用模塊化結構對系統的功能進行劃分。主要功能包括對從其他機載設備到收發系統的信息的輸入、顯示、存儲,以及從收發系統到其他機載設備的信息的輸出等。根據其功能可將系統分為中央控制模塊、信息輸入/輸出模塊、帶鍵盤和數碼管的顯控模塊以及電源模塊等,系統整體結構如圖1所示。

    系統采用對STC89C58RD+芯片進行指令編程的辦法,并將編寫的指令信息存儲到STC89C58RD+芯片的指令存儲器中。輸入數據時,通過寫入、存儲指令直接存儲到STC89C58RD+芯片的數據存儲器中;輸出數據時,直接通過讀出等相關指令從存儲器中提取相關數據并傳送至CPLD,通過CPLD完成信息時序控制、并串轉換,再輸出至輸入/輸出模塊進行信號的差分編碼和信息波形變換;讀取其他機載設備的數據時,通過輸入/輸出模塊完成信號調理、差分編碼的逆變換,同時由CPLD完成時序控制和串/并轉換,再送至單片機,最后由單片機發出顯示指令,通過顯控模塊完成信息的顯示。RAM存儲器用于保存自相鄰模塊獲得的信息,并根據中央控制模塊的指令將信息傳輸到相鄰模塊。ROM存儲器用于長期保存自RAM存儲器獲得的信息,并根據中央控制模塊的指令將信息傳輸到相鄰模塊。
2 硬件設計
2.1中央控制模塊

    中央控制模塊是該收發系統的信息控制和處理中心,它直接參與和控制各部分電路的正常工作以及各種信息的處理、傳輸和顯示,起著整個系統信息處理與控制中心的作用。它包括中央處理器STC89C58RD+和可編程邏輯器件CPLD。
     CPLD采用EPM7128SQI100-10可編程邏輯器件[5]。中央處理器通過其外部總線,與可編程邏輯陣列構成的接口電路相聯系,經過CPLD對地址、數據、總線等信息地址鎖存與緩沖等處理后,完成各種信息的鍵盤輸入、數碼管顯示和存儲控制等功能。
    RAM存儲器、ROM存儲器矩陣用于存儲256個24 bit字,采用STC89C58RD+內部集成的EEPROM。利用ISP/IAP技術,將內部DATA Flash當EEPROM使用。在進行256個24 bit存儲中,采用4個EEPROM扇區,每個扇區512 B。該方案簡化了系統的電路設計,方便使用[6]。
    另外,系統采用12 MHz、24 MHz振蕩器分別作為單片機和CPLD的時鐘,CPLD將24 MHz時鐘經分頻后產生96 kHz的時鐘作為32 bit串行碼發送和接收的工作時鐘。CPLD的分頻時鐘是通過編程的方式實現的,可根據傳輸速率的不同,靈活調整CPLD的工作時鐘。
2.2 輸入/輸出模塊
     輸入/輸出模塊主要用于與其他機載設備的信息交換,完成信息的32 bit串行碼的差分編碼、差分譯碼、波形變換等功能。
    在發送32 bit串行碼時,由STC89C58RD+準備數據,并通過總線通信的方式將數據傳遞給CPLD;由CPLD控制輸入模塊將其轉換為串行碼,并控制發送的時序,碼元寬度為20 μs,占空比為50%[7]。輸入模塊的核心是雙極性碼形成模塊,該模塊主要由MAX313模擬開關及由CPLD組合邏輯電路組成的譯碼電路兩部分構成,其主要作用是產生所需的32 bit串行雙極性碼。電路圖如圖2所示。

    在接收32 bit串行碼時,首先使信號J-INA、J-INB分別通過一個二極管和一個三極管,此過程中信號被削去負電平且被反向;再經過一個CPLD內部的“與門”,得到的信號就是從串行碼信息中提取的時鐘信號。由于每個上升沿正好在時鐘周期的中間,所以此信號不僅可以送往單片機進行計數,而且可以作為CPLD的數據的移位脈沖。另外,信號還經過一個CPLD內部觸發器,形成需要的單極性歸零碼信號,完成信號的接收。當完成32 bit串行碼接收后,由CPLD送至單片機,經單片機控制顯示控制模塊進行信息的顯示。編碼接收電路如圖3所示。

2.3 顯示控制模塊
    顯示控制模塊由8 bit數碼管、28個按鍵和4個指示燈構成。其中,8 bit數碼管、28個按鍵的驅動和控制主要由芯片CH451完成。8 bit數碼管用于信息的顯示,高6位為數據信息,低2位為地址信息;28個按鍵主要用于16進制信息的輸入、設備狀態的設定、輸入按鍵、讀取按鍵功能;4個指示燈分別對應清除、輸入結束、寫入、存儲信息指示。
3 系統軟件設計
 系統軟件部分由主程序、發送子程序和接收子程序構成。主程序負責對數據接收、發送、存儲和顯示的控制,同時通過奇偶校驗對接收到的數據實現檢錯功能。發送子程序和接收子程序以對中斷響應的處理為核心,通過主程序對中斷的調度來實現數據接收和發送的功能。
3.1 數據接收
 在接收狀態下,主程序不間斷地檢測接收數據線的狀態,當出現連續(4個碼元周期)的高電平時,開始檢測同步碼;確認收到同步碼后,準備在4個碼元周期后接收32 bit的數據碼,否則繼續檢測接收數據線的狀態;間隔4個碼元周期后,主程序產生接收中斷信號,開始執行接收子程序,接收子程序將32 bit的數據存入緩沖區并完成串/并轉換,以便主程序的顯控模塊調用;間隔一個字周期后,退出接收子程序中斷,再次循環以上過程。其流程圖如圖4所示。

3.2 數據發送
    在發送狀態下,主程序不間斷地掃描鍵盤的狀態。當有按鍵按下時,數碼管會顯示相應的標示;當檢測有發送的請求信號時,主程序產生發送中斷信號,開始執行發送子程序;發送子程序將鍵盤按下的數據信息存入緩沖區,在完成并/串轉換后,將32 bit的數據碼送入發送數據線上;在一個字周期后,退出發送子程序中斷;間隔4個碼元周期后,重新開啟發送子程序,將32 bit的同步碼送入發送數據線上,完成對同步碼的發送過程;在一個字周期后,退出發送子程序中斷,再次循環以上過程。其流程圖如圖5所示。
3.3 數據同步與糾錯
 由接收數據和發送數據的過程可知,精確地定位數據碼和同步碼間隔的4個碼元周期的高電平,而不產生錯位對于同步接收數據非常重要。CPLD的時鐘頻率為24 MHz,將其分頻后的100 kHz作為串行碼的工作時鐘,分頻后的200 kHz作為同步檢測時鐘。在同步檢測時鐘下,檢測出16個高電平的數據信號,即為數據信號的同步頭。同時,為避免直流電平對同步頭檢測的影響,還應排除大于4個碼元周期的偽同步頭。
 為了提高數據接收的可靠性,本系統在進行數據通信中,通過奇偶檢驗來實現檢錯功能,將數據通信的誤碼率降到最小。數據碼的第32位為奇偶檢驗位,在發送時,若前31位中1的個數為偶數,則檢驗位為0,否則為1;在接收時,按照同樣的規則進行判定,若校驗一致,則表明正確接收,否則通知發送端重新發送。其流程圖如圖6所示。


4 測試結果
    系統的測試包括硬件測試和軟件測試。硬件測試主要是在完成PCB板的焊接后,對板上的元器件進行逐一測試,保證與原理圖一致;并對焊接情況進行檢查,防止出現虛焊、漏焊的情況,進而確保系統接口與其他機載設備電氣特性的一致性。
    軟件測試采用各模塊聯調的方式進行。首先用示波器測試了發送數據的波形接收后的解碼波形, 分別如圖7和圖8所示。另外,還測試了以下功能:(1)接收自其他機載設備的數據,并完成顯示功能;(2)將鍵盤輸入的數據發送至其他機載設備; (3)將發送或接收的數據存儲到RAM存儲器或ROM存儲器,并完成顯示功能;(4)將數據從存儲器中讀出,并完成顯示功能。上述各功能在實驗室及室外環境下均做了100次以上的測試。測試結果表明,系統均能正確地完成相應操作。

 

 

    該收發系統充分利用CPLD硬件可編程性、高度集成性等特點,通過CPLD實現系統的邏輯設計與收發控制,能夠實時完成總線數據的發送、接收、顯示和存儲功能。與采用專用芯片的實現方式相比,該系統可兼容不同的總線傳輸速率,且器件的成本較低,具有較強的推廣價值。
參考文獻
[1] 田城,王勇,何雅靜,等.ГОСТ18977-79航空總線仿真系統的設計與實現[J].計算機應用與軟件,2011,28(01):300-303.
[2] 劉迎歡,羅志強.ARINC429協議和與之對應的俄羅斯標準的比較[J].航空電子技術,2002,33(1):11-15.
[3] 邸亞洲, 李富榮, 于建立,等.基于HS3282芯片實現ГОСТ18977總線數據傳輸方法[J].計算機測量與控制,2007,26(1):47-49.
[4] 黃潤龍.基于ARINC429協議芯片實現俄式ГОСТ1897779協議通信設計[J].電訊技術,2005,02(02):62-68.
[5] 張立,劉昆.基于FPGA的采樣與控制系統設計[J].電子測量與儀器學報,2008,22(z2):520-523.
[6] 吳繼華,王誠.Altera FPGA/CPLD設計[M].北京:人民郵電出版社,2011.
[7] 楊軍鋒,謝聶.多通道串行雙極性數字發送電路設計[J].測控技術,2003,22(1):67-69.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 欧美在线黄色 | 777成了人乱视频 | 亚洲日本视频 | 日韩伦理片在线观看光棍影院 | 日韩高清一区二区三区五区七区 | 亚洲精品一二三四 | 五月天婷婷激情 | 亚洲黄色影院 | 一区二区三区在线视频播放 | 国产亚洲欧美视频 | 在线视频国产区11p 在线视频观看一区 | 337p日本大胆欧洲色噜噜高清 | 中文字幕欧美在线观看 | 欧美一级黄色片 | 黄色免费网站视频 | 亚洲国产精品一区二区久 | 国产一区二 | 男人爱看的视频网站免费 | 青春草视频| 人人干人人玩 | 免费人成激情视频在线观看 | 亚洲国产精品自产在线播放 | 在线观看黄网站 | 欧美一区二区久久精品 | 免费网站国产 | 成人男女18免费o | 久草香蕉视频在线观看 | 普通话中国videos | 欧洲色吧 | 欧美另类jizzhd| 美女伊人网 | 国产成人h片视频在线观看 国产成人lu在线视频 | 国产欧美成人免费观看视频 | 国产精品不卡视频 | 天天摸天天爽视频69视频 | 深夜福利一区二区 | 亚亚洲乱码一二三四区 | 黄在线看 | 极品美女aⅴ高清在线观看 极品美女丝袜被的网站 | 久久综合精品不卡一区二区 | 99热日韩 |