MVBC的幀收發器設計
3.3 總線接口模塊的設計實現
總線接口模塊包括上述的Encoder、Decoder。
3.3.1 Encoder
Encoder模塊主要有以下功能:
(1)構建幀頭幀尾;
(2)按照傳輸層指示進行CRC校驗;
(3)對數據進行曼徹斯特編碼;
(4)實現主、從幀的發送;
在Class 1 mode以及其它Class mode下,Encoder分別由Class1模塊和MCU控制。
如果當前配置允許發送,且控制模塊告訴Encoder有幀要發送,以及幀類型、幀長度,則Encoder先將配置好的幀頭發送,然后將幀數據、產生的CRC校驗碼移位后經曼徹斯特編碼輸出,最后發送幀尾,這樣完成主、從幀的發送。電路實現如圖3-6所示:
MVB總線采用冗余介質,因此MVBC需要冗余的接收模塊來完成幀的接收。
(1)兩個Decoder根據選擇各自完成信號檢測(信任線)或冗余檢測(冗余線)功能,完成各自幀數據的起始位判定、數據采樣、數據解碼和數據移位功能;
(2)Decoder從信任線上接收數據,并監視冗余線;
(3)判斷幀類型,從幀中提取數據和校驗序列(非CRC校驗,可選)并存入RXBuffer中;
(4)實現CRC校驗,并報告接收狀態。
驗證的思想是通過不同的控制信號,來模擬不同的工作環境下,幀的收發正確性:曼徹斯特編碼、幀頭、幀尾以及幀數據、幀類型、CRC碼的正確性。驗證實現結構如圖4-1所示:
5、 結束語
MVB總線伴隨著下一代列車通信系統的廣泛應用將被普遍采用,同時MVBC也將具有巨大的市場前景。本文主要介紹MVBC與MVB總線接口部分的幀收發器模塊的算法分析、設計實現及驗證方案。通過作者近期對該模塊進行的FPGA驗證,充分論證了該設計工作和驗證方案的可行性。(end) linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論