專利名稱:自適應多路串行冗余高速總線的制作方法
技術領域:
本發明涉及計算機通信技術,具體涉及一種總線設備。
背景技術:
在現代軍事技術中,武器上的電子設備不斷增加,如何將電子設備加以有效的綜 合使之達到資源和功能的綜合已成為武器發展的迫切要求。武器綜合電子系統的基礎就是 采用數據總線結構,利用數據總線使處理機(包括硬件和軟件)、信息傳輸以及控制顯示3 個分系統為各種任務所共用。從而實現減少武器設備體積和重量,提高武器系統可靠性,降 低成本和提高檢測精度等的目的。目前,彈(箭)用總線基本采用普通的422總線,新近得到推廣的有1553B總線、 CAN總線、現場快速以太網總線和LVDS總線。422總線接口簡單,數據傳輸實時性強,失效 率容易控制,是設備間通訊的重要選擇。1553B、CAN總線因其較高的可靠性和差錯控制而 得到廣泛使用,除在飛機、船舶、汽車等領域得到廣泛應用外,導彈(火箭)產品也已開始應用。1553B的傳輸介質有同軸電纜、屏蔽雙絞線、光纜等,通過變壓器藕合或直接藕合 方式把終端藕合到總線上去。這種數據總線的傳輸速率、傳輸距離、遠程終端數,能較好的 滿足各類中小型艦艇以及潛艇系統通信的要求,故應用十分普及。軍用車輛及各類戰車作為陸軍地面武器的作戰平臺,經常工作在強振動、高噪音、 粉塵多,溫度變化大的惡劣環境中。因此,其內部電子設備間的數據通信要求通過嚴格的故 障檢測,以達到較高的可靠性、殘存性和容錯能力。在實時性方面,動力系統一體化控制要 分別對發動機和變速器進行控制,二者之間的數據通信要求一條消息的最大響應時間一般 極短,這樣才能實現對發動機和變速器的實時控制,從而提高整個動力系統的綜合性能。此 外,還有一些對數據通信的特殊要求,如協議簡單性、短幀信息傳輸、信息交換的頻繁性、網 絡負載的穩定性、高安全性和性價比高等。1553B總線具有很高的可靠性和很好的實時性, 對于動力傳動一體化控制這種數據通信種類多、數據量大、實時性要求較高、網絡節點少的 系統,1553B總線比現有的絕大多數總線具有更多的性能優勢。LVDS總線與422總線類似,具有接口簡單,無附加協議的特點。但更主要的特點是 其高傳輸速率(通常每秒可達幾百 幾千兆比特范圍)。LVDS的引入首要是為了解決其它 總線數據傳輸率低的問題,因為,1553B和CAN雖然具有較高的可靠性,但其傳輸帶寬僅有 1Mbps,越來越不能滿足彈上日益增多的各類測試信息量的要求。所以人們已經開始尋求下 一代高可靠軍用總線。1.2當前彈用總線存在的問題當前彈用總線存在以下一些問題,已經不能滿足日益發展的要求1) 1553B、CAN,422等總線都存在帶寬過低的問題;2) CAN,422總線不存在冗余備份,一旦線路發生問題,通訊即告失敗;3)422、LVDS總線無時序約束,更無協議,使用起來最方便,但總線自身無糾錯、重發等可靠性保障機制,工作穩定性需要依靠系統進行保障,因此直接應用的話,其穩定性無 法滿足軍用場景的要求;4) 1553B總線為雙備份,一條總線發生問題,控制器會自動切換到另一條總線。但 該方案中,如果當前總線不出問題,則備用總線就始終處于閑置狀態,不能得到充分利用; 而且即使是雙備份,兩條總線仍然可能都發生故障,這時通訊仍然會失敗;5)總線節點容量少。1553B只能掛接32個節點,CAN只能掛接110個節點。對于 現在大型火箭設備而言,不可能把所有設備掛在一條總線上,而只能采用總線和支線并用。
可見,現有的總線技術無法同時實現高速率和高可靠性的工作,且總線節點容量 有限,不能適應于當前彈(箭)上多個設備的通信要求。
發明內容
本發明提供了一種總線設備,能夠同時實現高速率和高可靠性的工作,且總線節
點容量更高。為達到上述目的,本發明的技術方案具體是這樣實現的一種總線設備,包括用于在兩個傳輸方向上進行數據傳輸的兩個組成結構和連接 關系均完全相同的子設備正向子系統和反向子系統;所述正向子系統包括正向輸入保存模塊、正向發送模塊、正向接收保存模塊、正 向輸出模塊、正向反饋控制模塊和正向指令控制模塊;所述反向子系統包括反向輸入保 存模塊、反向發送模塊、反向接收保存模塊、反向輸出模塊、反向反饋控制模塊和反向指令 控制模塊;所述正向輸入保存模塊,首先執行正向指令控制模塊通知的相關操作,之后,接收 反向反饋控制模塊發來的反向反饋控制指令,將其按照設定的反饋指令包格式打包后緩 存;還接收正向輸入數據,將其按照設定的包格式打包后緩存;所述正向發送模塊,首先執行正向指令控制模塊通知的相關操作,之后,讀取正向 輸入保存模塊中緩存的打包后的反向反饋控制指令或打包后的正向輸入數據,將其發送到 正向接收保存模塊;所述正向接收保存模塊,接收正向發送模塊發來的打包后的反向反饋控制指令或 打包后的正向輸入數據,將所述反向反饋控制指令發送給反向指令控制模塊,緩存所述正 向輸入數據并將自身的當前處理狀態發送給正向反饋控制模塊;所述正向輸出模塊,讀取正向接收保存模塊緩存的打包后的正向輸入數據,將其 解包得到輸入數據的打包前格式后輸出;所述正向反饋控制模塊,根據正向接收保存模塊發來的其當前處理狀態的信息生 成正向反饋控制指令并緩存到反向輸入保存模塊;所述正向指令控制模塊,根據反向接收保存模塊發來的正向反饋控制指令通知正 向輸入保存模塊和正向發送模塊進行相關操作;所述反向輸入保存模塊,首先執行反向指令控制模塊通知的相關操作,之后,接收 正向反饋控制模塊發來的正向反饋控制指令,將其按照設定的反饋指令包格式打包后緩 存;還接收反向輸入數據,將其按照設定的包格式打包后緩存;所述反向發送模塊,首先執行反向指令控制模塊通知的相關操作,之后,讀取反向輸入保存模塊中緩存的打包后的正向反饋控制指令或打包后的反向輸入數據,將其發送到 反向接收保存模塊;所述反向接收保存模塊,接收反向發送模塊發來的打包后的正向反饋控制指令或 打包后的反向輸入數據,將所述正向反饋控制指令發送給正向指令控制模塊,緩存所述反 向輸入數據并將自身的當前處理狀態發送給反向反饋控制模塊;所述反向輸出模塊,讀取反向接收保存模塊緩存的打包后的反向輸入數據,將其 解包得到輸入數據的打包前格式后輸出;所述反向反饋控制模塊,根據反向接收保存模塊發來的其當前處 理狀態的信息生 成反向反饋控制指令并緩存到正向輸入保存模塊;所述反向指令控制模塊,根據正向接收保存模塊發來的反向反饋控制指令對反向 輸入保存模塊和反向發送模塊進行相應的指令控制。由上述的技術方案可見,本發明實施例提供的總線設備,具有可靠的糾錯、重發保 障機制,同時,擁有多條串行收發通道和更高的數據傳輸帶寬。能夠滿足苛刻的數據誤碼 率的要求并自動平衡每條通道上傳輸的數據流,因此能夠同時實現高速率和高可靠性的工 作,且總線節點容量更高。
圖1為本發明實施例總線設備的組成結構示意圖。圖2為本發明實施例總線設備中正向輸入保存模塊的組成結構示意圖。圖3為本發明實施例總線設備中正向發送模塊的組成結構示意圖。圖4為本發明實施例總線設備中正向接收保存模塊的組成結構示意圖。圖5為本發明實施例總線設備中正向輸出模塊的組成結構示意圖。圖6為本發明實施例總線設備的電路結構示意圖。圖7為本發明實施例中打包前的輸入數據的幀格式示意圖。圖8為本發明實施例中,安全模式下打包后輸入數據的包格式示意圖。圖9為本發明實施例中,直通模式下打包后輸入數據的包格式示意圖。
具體實施例方式為使本發明的目的、技術方案、及優點更加清楚明白,以下參照附圖并舉實施例, 對本發明進一步詳細說明。本發明實施例提供一種總線設備,其組成結構如圖1所示,首先需要說明的是,由 于總線是一種能夠進行數據雙向傳遞的設備,為了方便描述和避免產生混淆,下文中將以 其中一種數據傳遞方向為例進行說明,并在該數據傳遞方向的場景下,將總線從整體結構 上分為正向子系統和反向子系統,此時所述總線設備,包括用于在兩個傳輸方向上進行數 據傳輸的兩個組成結構和連接關系均完全相同的子設備正向子系統110和反向子系統 120 ;所述正向子系統110包括正向輸入保存模塊111、正向發送模塊112、正向接收保 存模塊113、正向輸出模塊114、正向反饋控制模塊115和正向指令控制模塊116 ;所述反向 子系統120包括反向輸入保存模塊121、反向發送模塊122、反向接收保存模塊123、反向輸出模塊124、反向反饋控制模塊125和反向指令控制模塊126 ;所述正向輸入保存模塊111,首先執行正向指令控制模塊116通知的相關操作,之 后,接收反向反饋控制模塊125發來的反向反饋控制指令,將其按照設定的反饋指令包格 式打包后緩存;還接收正向輸入數據,將其按照設定的包格式打包后緩存;所述正向發送模塊112,首先執行正向指令控制模塊116通知的相關操作,之后, 讀取正向輸入保存模塊111中緩存的打包后的反向反饋控制指令或打包后的正向輸入數 據,將其發送到正向接收保存模塊113 ;所述正向接收保存模塊113,接收正向發送模塊112發來的打包后的反向反饋控 制指令或打包后的正向輸入數據,將所述反向反饋控制指令發送給反向指令控制模塊126, 緩存所述正向輸入數據并將自身的當前處理狀態發送給正向反饋控制模塊115 ;所述正向輸出模塊114,讀取正向接收保存模塊113緩存的打包后的正向輸入數 據,將其解包得到輸入數據的打包前格式后輸出;所述正向反饋控制模塊115,根據正向接收保存模塊113發來的其當前處理狀態 的信息生成正向反饋控制指令并緩存到反向輸入保存模塊121 ;所述正向指令控制模塊116,根據反向接收保存模塊123發來的正向反饋控制指 令通知正向輸入保存模塊111和正向發送模塊112進行相關操作;所述反向輸入保存模塊121,首先執行反向指令控制模塊126通知的相關操作,之 后,接收正向反饋控制模塊115發來的正向反饋控制指令,將其按照設定的反饋指令包格 式打包后緩存;還接收反向輸入數據,將其按照設定的包格式打包后緩存;所述反向發送模塊122,首先執行反向指令控制模塊126通知的相關操作,之后, 讀取反向輸入保存模塊121中緩存的打包后的正向反饋控制指令或打包后的反向輸入數 據,將其發送到反向接收保存模塊123 ;所述反向接收保存模塊123,接收反向發送模塊122發來的打包后的正向反饋控 制指令或打包后的反向輸入數據,將所述正向反饋控制指令發送給正向指令控制模塊116, 緩存所述反向輸入數據并將自身的當前處理狀態發送給反向反饋控制模塊125 ;所述反向輸出模塊124,讀取反向接收保存模塊123緩存的打包后的反向輸入數 據,將其解包得到輸入數據的打包前格式后輸出;所述反向反饋控制模塊125,根據反向接收保存模塊123發來的其當前處理狀態 的信息生成反向反饋控制指令并緩存到正向輸入保存模塊111 ;所述反向指令控制模塊126,根據正向接收保存模塊113發來的反向反饋控制指 令對反向輸入保存模塊121和反向發送模塊122進行相應的指令控制。其中,所述正向輸入保存模塊111的組成結構如圖2所示,其中包括正向數據輸 入緩沖控制模塊1111、正向數據輸入緩沖FIF01112、正向雙路選通開關1113、正向校驗模 塊1114、正向數據讀取與寫RAM模塊1115和正向發送端數據存儲RAMI 116 ;正向數據輸入緩沖控制模塊1111,當有正向輸入數據需要通過總線設備進行傳輸 時,判斷是否存在空的正向發送端數據存儲RAM1116,如果存在,則允許所述正向輸入數據 輸入并將其發送給正向數據輸入緩沖FIF01112,如果不存在,則不允許所述正向輸入數據 輸入;正向數據輸入緩沖FIF01112,接收所述正向數據輸入緩沖控制模塊1111發來的
9正向輸入數據,將其進一步發送給正向雙路選通開關1113 ;正向雙路選通開關1113,接收所述正向數據輸入緩沖FIF01112發來的正向輸入數據,將所述正向輸入數據發送給正向校驗模塊1114;當接收到正向校驗模塊1114返回的 校驗通過的信息后,再將所述正向輸入數據發送給正向數據讀取與寫RAM模塊1115 ;正向校驗模塊1114,對所述正向雙路選通開關1113發來的正向輸入數據進行校 驗,如果校驗未通過則繼續等待下一個正向輸入數據并對其繼續進行校驗,直到校驗通過, 向所述正向雙路選通開關1113返回校驗通過的信息;正向數據讀取與寫RAM模塊1115,接收反向反饋控制模塊125發來的反向反饋 控制指令,將其按照設定的反饋指令包格式打包后緩存到正向發送端數據存儲RAM1116當 中,同時為保存該反饋指令包的RAM設置指令包標識;還接收正向雙路選通開關1113發 來的正向輸入數據,將其按照設定的包格式打包后緩存到正向發送端數據存儲RAM1116當 中,同時根據所述正向輸入數據的類型為保存該打包后的正向輸入數據的RAM設置指令包 或數據包標識,所述正向輸入數據的類型預先設定、且包含指令型和數據型兩種;正向發送端數據存儲RAMI 116,首先執行正向指令控制模塊116控制下的操作,之 后,接收數據讀取與寫RAM模塊發來的打包后的反饋指令包和/或打包后的正向輸入數據 進行緩存。所述正向發送模塊112的組成結構如圖3所示,其中包括正向通路交叉選擇模塊 1121、正向指令優先選擇模塊1122和正向發送邏輯模塊1123 ;正向通路交叉選擇模塊1121,實時循環檢測各正向發送邏輯模塊1123中是否有 處于空閑狀態的;如果有,則通知正向指令優先選擇模塊1122 ;正向指令優先選擇模塊1122,接收正向通路交叉選擇模塊1121的通知,首先執行 正向指令控制模塊116控制下的操作,之后,選擇設置有指令包標識的正向發送端數據存 儲RAM1116,讀取其中緩存的打包后的反向反饋控制指令或打包后的正向輸入數據,并轉 發給所述正向發送邏輯模塊1123 ;之后,再選擇設置有數據包標識的正向發送端數據存儲 RAM1116,讀取其中緩存的打包后的正向輸入數據,并轉發給所述正向發送邏輯模塊1123 ;正向發送邏輯模塊1123,接收正向指令優先選擇模塊1122發來的包并轉發給正 向接收保存模塊113。所述正向接收保存模塊113的組成結構如圖4所示,其中包括正向接收邏輯模塊 1131、正向寫RAM模塊1132、正向RAM選通模塊1133、當前正向狀態記錄器1134和正向接 收端數據存儲RAMI 135 ;正向接收邏輯模塊1131,接收正向發送邏輯模塊1123發來的打包后的反向反饋 控制指令和/或打包后的正向輸入數據,對于打包后的反向反饋控制指令,將所述反向反 饋控制指令發送給反向指令控制模塊126,而對于打包后的正向輸入數據,將其轉發給正向 寫RAM模塊1132 ;正向寫RAM模塊1132,接收正向接收邏輯模塊1131發來的打包后的正向輸入數據 并對所述正向輸入數據進行校驗,當校驗通過時,將所述正向輸入數據保存到正向RAM選 通模塊1133選通的正向接收端數據存儲RAMI 135當中,同時將校驗通過作為當前處理狀態 通知當前正向狀態記錄器1134 ;當校驗未通過時,則將校驗失敗作為當前處理狀態通知當 前正向狀態記錄器1134 ;
正向RAM選通模塊1133,實時檢測各正向接收端數據存儲RAMI 135中是否存在空RAM,如果存在,則選通該RAM并將所述正向寫RAM模塊1132發來的正向輸入數據保存到該 RAM當中;如果不存在,則將RAM已滿作為當前處理狀態通知當前正向狀態記錄器1134 ;當前正向狀態記錄器1134,接收并記錄正向寫RAM模塊1132和正向RAM選通模 塊1133發來的當前處理狀態,將校驗通過的正向輸入數據的標識信息通知正向輸出模塊 114,所述正向輸入數據的標識信息包含在打包后的正向輸入數據當中;還將記錄的所述當 前處理狀態發送給正向反饋控制模塊115 ;正向接收端數據存儲RAMI 135,當被正向RAM選通模塊1133選通時,接收正向寫 RAM模塊1132發來的正向輸入數據并緩存。所述正向輸出模塊114的組成結構如圖5所示,其中包括正向輸入數據還原模塊 1141和正向輸入數據輸出緩沖FIF01142 ;正向輸入數據還原模塊1141,接收當前正向狀態記錄器1134發來的校驗通過的 正向輸入數據的標識信息,將所述正向接收端數據存儲RAM1135中緩存的打包后的該正向 輸入數據讀出,將其還原成正向輸入數據打包前的格式后發送到正向輸入數據輸出緩沖 FIF01142當中,并清空保存打包后的該正向輸入數據的正向接收端數據存儲RAM1135 ;正向輸入數據輸出緩沖FIF01142,接收正向輸入數據還原模塊1141發來的還原 成打包前格式的正向輸入數據并輸出。而對于反向子系統120,根據前文所述,由于其與正向子系統110只存在名稱的差 異,其組成結構、內部連接關系和工作方式均與正向子系統110完全相同,因此不再逐一介紹。為了便于清晰說明所述總線設備的工作過程,下面將結合具體電路結構對其工作 過程進行進一步詳細說明,所述總線設備的一種可能的具體電路結構如圖6所示,需要說 明的是,由于所述總線設備能夠進行數據雙向傳遞,因此為了便于描述,圖6中僅示出其中 一側的具體電路結構(稱其為A側或子設備A),完整的總線設備電路結構中還包括與A側 結構完全相同的映像側(稱其為B側或子設備B),所述子設備A的各發送邏輯模塊與子設 備B的各接收邏輯模塊相連,而子設備A的各接收邏輯模塊則與子設備B的各發送邏輯模 塊相連,從而構成一個完整的總線設備。該電路的工作模式包括安全模式和直通模式兩種, 以下分別詳細介紹一、安全模式,其工作原理如下首先,在子設備A中數據輸入緩沖控制模塊檢測是否存在空的數據存儲RAM,如果不存在,則表示所有 的數據存儲RAM已滿,此時將禁止輸入標識引腳置為有效狀態,表示此時禁止數據輸入;如 果存在,表示此時仍存在空的數據存儲RAM,則將禁止輸入標識引腳置為無效狀態,表示此 時允許數據輸入;當所述禁止輸入標識引腳為無效狀態時,所述數據輸入緩沖控制模塊將數據寫入 到數據輸入緩沖FIFO當中;所述數據輸入緩沖控制模塊將數據寫入時可以采用8位并口輸 入的方式,在每一個系統時鐘的上升沿將8位數據寫入數據輸入緩沖FIFO當中。數據輸入緩沖FIFO將接收到的輸入數據傳送給雙路選通開關,雙路選通開關首 先選通自身的第一數據輸出口,將輸入數據由所述第一數據輸出口傳送給校驗模塊;所述校驗模塊讀取校驗寄存器A中的8位校驗值,將其與接收到的輸入數據中的16位校驗碼中 的高8位進行比對,如果兩者相等,則所述校驗模塊進一步讀取校驗寄存器B中的8位校驗 碼,將其與所述輸入數據中的16位校驗碼中的低8位進行比對,如果兩者仍相等,則表示輸 入數據校驗正確。而如果任意一次比對中兩者不相等,則表示輸入數據校驗失敗。校驗模 塊將校驗正確的結果返回給雙路選通模塊,雙路選通模塊根據接收到的校驗正確的通知, 關閉自身的第一數據輸出口并選通自身的第二數據輸出口,將輸入數據由所述第二數據輸 出口傳送給數據讀取與寫RAM模塊。當校驗失敗時,校驗模塊則直接輸出一個校驗失敗的 指示信息給用戶,并繼續接收雙路選通模塊通過自身的第一數據輸出口發來的下一個輸入 數據,繼續進行所述校驗,直到校驗正確再將所述校驗正確的結果返回給雙路選通模塊。數據讀取與寫RAM模塊將接收到的所述輸入數據按照系統設定的包格式進行打 包,將打包后的輸入數據寫入處于空狀態的數據存儲RAM當中,并同時將所述打包后的輸 入數據發送給指令包校驗模塊。其中,打包前的輸入數據的幀格式如圖7所示,其中前兩個字節為校驗碼——如前 文中所述,高字節的校驗碼用于與校驗寄存器A中的值進行比對,而低字節的校驗碼則用 于與校驗寄存器B中的值進行比對;接下來的一個字節中,包含6位包長度碼和2位包類型 碼;之后是最大長度為60個字節的數據位;其中,6位包長度用于指示所述數據位中數據的 實際長度,而輸入數據的類型由系統預先設定為兩種分別為數據包和指令包。打包后的 包格式如圖8所示,其中,在2個字節的校驗碼之后,將在打包過程中由所述數據讀取與寫 RAM模塊計數生成的包序號記錄下來作為一個字節(其中包序號占據低6位,高兩位為無效 位),而把要寫入的處于空狀態的數據存儲RAM的序號也記錄下來作為一個字節;之后,則 是由6位包長度碼和2位包類型碼組成的一個字節,以及由所述6位包長度碼確定的數據 位(所述數據位的最大長度為60字節),最后,在所述數據位之后添加該包的CRC校驗碼。在本發明實施例提供的總線當中,每個數據存儲RAM對應于一個指令數據寄存 器,該指令數據寄存器用于標識其對應的數據存儲RAM中保存的包的類型是否為指令包, 當某個數據存儲RAM中保存的包類型為指令包時,其對應的指令數據寄存器取值為有效狀 態,而當該數據存儲RAM中保存的包類型為數據包時,其對應的指令數據寄存器取值則為 無效狀態。在此基礎上,所述指令包校驗模塊接收數據讀取與寫RAM模塊發來的打包后的 輸入數據后,暫存該包中攜帶的包序號及數據存儲RAM的序號,隨后再確定該包的類型;當 該包的類型確定為指令包時,將用于保存該指令包的數據存儲RAM對應的指令數據寄存器 置為有效狀態,而當該包的類型確定為數據包時,則將用于保存該數據包的數據存儲RAM 對應的指令數據寄存器置為無效狀態。通路交叉選擇模塊實時檢測發送邏輯忙閑寄存器,其中,每個發送邏輯忙閑寄存 器對應于一個發送邏輯模塊,用于標識其對應的所述發送邏輯模塊是否處于空閑狀態,當 某個發送邏輯模塊處于空閑狀態時,則其對應的發送邏輯忙閑寄存器處于閑狀態,而當該 發送邏輯模塊處于忙碌狀態時,則其對應的發送邏輯忙閑寄存器處于忙狀態。當所述通路 交叉選擇模塊檢測到某個發送邏輯忙閑寄存器處于閑狀態時,表示該發送邏輯忙閑寄存器 對應的發送邏輯模塊處于空閑狀態,則所述通路交叉選擇模塊開啟內部的指令優先選擇模 塊來檢測數據存儲RAM當中是否保存有指令包,當發現存在保存有指令包的數據存儲RAM 時,則選通所述處于空閑狀態的發送邏輯模塊來優先發送所述數據存儲RAM中保存的指令包,在將所有的指令包發送完畢后再發送數據包。所述優先發送指令包表示的含義為對于 數據存儲RAM中保存的數據包和指令包這兩種類型的包,指令包的發送優先級較高,從而 所述指令優先選擇模塊優先選擇并發送所述指令包。如果同時有多個數據存儲RAM中存在 指令包,則可以按照預先設定的順序或規則進行發送,比如按照指令數據存儲RAM序號由 高到低或由低到高等的順序等,具體順序本發明實施例不做限定。此時,所述發送邏輯模塊的發送方式有兩種,具體通過發送配置模塊配置的發送 模式配置寄存器來進行選擇,所述發送模式配置寄存器共8位,其中,高4位為模式選擇位, 低4位為主從機選擇位;當所述模式選擇位為1111時,表示此時發送邏輯模塊的發送方式為同步高速發 送模式;所述模式選擇位為0000時,表示此時發送邏輯模塊的發送方式為異步發送模式。通常情況下,所述發送模式配置寄存器也可以不進行配置而使用默認配置,默認 配置為所述發送邏輯模塊的發送方式處于異步發送模式。當為默認值時,主機和從機的選 擇沒有任何區別。當配置為同步高速模式時,主機會向從機發送一個同步接收時鐘。從機會接收這 個同步時鐘,并通過這個同步時鐘接收數據,碼率為500M。同步高速模式需要配置本模塊是主機模塊還是從機模塊。當選擇本模塊是主機模 塊時,發送邏輯模塊會在250M的時鐘的脈沖下發送數據,而同步時鐘發送模塊也會將主機 時鐘發送出去,供從機使用。當選擇本機模塊是從機模塊時,同步時鐘接收模塊會接收主機 發送的同步時鐘,提供給整個系統使用,同步時鐘接收模塊還會將接收回來的時鐘信號輸 出給同步時鐘輸出引腳。若同步時鐘輸出引腳沒有任何輸出信號,則表示沒有接收到主機 發出的任何時鐘信號。當配置為異步模式時,發送邏輯模塊會以固定的250M的碼率發送數據。而接收端 也會以固定的高頻時鐘接收數據。異步發送模式只需要配置發送模式配置寄存器的模式選 擇位即可。若配置模塊為異步發送模式,總線中的各設備都需要連接相同的外部時鐘晶振。在本發明實施例提供的總線結構中,每個發送邏輯模塊在被選通用于讀取數據存 儲RAM中的包并進行發送時,每個發送邏輯模塊使用一個數據傳輸通道,該通道發送數據 的碼率最高是500Mb/s,所述總線結構在一個數據傳輸方向上有四個發送模塊和四個接收 模塊,從而所述總線支持的最高碼率為2Gb/s。接下來,在B中B中的接收邏輯模塊接收A中的發送邏輯模塊發送的包,根據前文所述,此時的包 格式如圖8所示,所述接收邏輯模塊首先接收2個字節(16位)的校驗碼,如果校驗不成功 則持續進行校驗直到校驗通過;校驗通過后,所述接收邏輯模塊繼續接收所述包中包含的 包序號和數據存儲MM序號,并通過寫RAM模塊轉發給CRC校驗器,并由所述CRC校驗器進 行緩存;接下來,所述接收邏輯模塊接收包長度與包類型信息并按照包長度信息接收所述 包中的數據,如果包長度信息與實際接收到的數據的長度對應,則表示該包中的數據未出 現丟數,如果包長度信息與實際接收到的數據的長度不對應,表示該包出現了丟數,則將該 包的包序號以及生成的丟數出錯信息發送給狀態記錄器。所述接收邏輯模塊還進一步接收 CRC校驗碼,將接收到的所述包中的數據和CRC校驗碼通過寫RAM模塊轉發給所述CRC校驗器,由所述CRC校驗器對接收到的數據進行CRC校驗,校驗成功時,CRC校驗器會將該包的 包序號和數據存儲RAM序號發送給狀態記錄器進行保存;而如果校驗失敗,則CRC校驗器會 將該包的包序號以及生成的CRC校驗出錯信息發送給狀態記錄器。所述狀態記錄器則將用于傳輸該包的數據傳輸通道對應的信道質量寄存器中的 值加1,當所述信道質量寄存器中的值超過預設的重發次數閾值時,則所述狀態記錄器發出 指令關閉該信道質量寄存器對應的數據傳輸通道。
寫RAM模塊接收到所述接收邏輯模塊轉發的包后,通知RAM選通模塊;根據RAM選 通模塊選通的空的數據存儲RAM,將所述包保存到該數據存儲RAM中;RAM選通模塊實時檢測是否存在空的數據存儲RAM,如果存在,則將寫RAM模塊與 所述空的數據存儲RAM進行連接;如果不存在,表示所有的數據存儲RAM都已滿,則此時需 要通知A側停止進行打包后的輸入數據的發送,具體方法為RAM選通模塊檢測出所有RAM 已滿后,生成RAM滿標識信息發送給B側中的反饋指令控制模塊,反饋指令控制模塊接收到 該標識信息后,生成RAM滿標識反饋指令包并發送給B側中的數據讀取與寫RAM模塊。該 步驟的目的在于通過后續過程通知A側停止發送打包后的輸入數據,具體內容下文中還將 進行詳細說明,此處暫且不表。數據讀取與寫RAM模塊在每次讀取所述雙路選通模塊的第二數據輸出口輸出的 數據之前,先優先檢測是否有反饋指令控制模塊發送的反饋指令包,如果有,則優先將所述 反饋指令控制模塊發送的反饋指令包保存到處于空狀態的數據存儲RAM當中;如果沒有, 則按照前文描述的數據讀取與寫RAM模塊的工作方式進行動作,不再重復說明。當狀態記錄器接收到CRC校驗器發送的包序號和數據存儲RAM序號時,表示該包 中的數據已經被B側正確接收且已經存儲到了 B側的正向數據存儲RAM當中,此時狀態記 錄器會生成接收成功標識信息,并將該標識信息與該包的包序號共同發送給反饋指令控制 模塊,還將所述標識信息與該包的包序號共同發送給數據組包模塊;而當狀態記錄器接收 到CRC校驗器發送的包序號和包出錯信息時,則表示該包發送錯誤,此時狀態記錄器會生 成發送錯誤標識信息,并將該標識信息與該包的包序號共同發送給反饋指令控制模塊。數據組包模塊接收狀態記錄器發送的接收成功標識信息和包序號,當發現需要的 包信息時,將對應RAM當中緩存的該包讀出并進行包格式轉換——即,將該包由打包后的格 式轉換成打包前的輸入數據的格式,然后將格式轉換后得到的輸入數據寫入數據輸出緩沖 FIFO當中,并進一步由所述數據輸出緩沖FIFO輸出。其中,所述需要的包信息表示的含義 為如果剛剛已經把包序號為000001的包寫入了數據輸出緩沖FIFO當中,那么,現在需要 的包信息即為包序號為000002的包;反饋指令控制模塊根據所述發送成功標識信息和包序號,生成接收成功反饋指令 包,并發送給數據讀取與寫RAM模塊;該步驟的目的在于通過后續過程通知A側該包已經 成功發送和保存到B側中。如果反饋指令控制模塊接收到的為丟包出錯信息或CRC校驗出 錯信息時,將所述出錯信息打包成反饋指令包,并將該反饋指令包發送給數據讀取與寫RAM 模塊;該步驟的目的在于通過后續過程通知A側該包出現的錯誤類型和對應的操作方法, 具體內容下文中還將進行詳細說明,此處暫且不表。上面簡要介紹了幾種反饋指令包的種類,分別包括RAM已滿、CRC校驗成功或失 敗、丟包或接收成功等,在實際應用中,可以根據需要設計多種類型的反饋指令包,所述反饋指令包的包格式及其類型如下表1所示表1由上表1可見,其中共包括13種類型的反饋指令包。同時,所述反饋指令包共包 含4個字節,其中第一個字節為幀頭,第2和第4個字節為狀態字,所述狀態字即為所述表1 中對應的各類型的反饋指令包的狀態字取值,每種狀態字的取值對應于一個反饋指令包的 類型,第3個字節為狀態反字,即第3個字節的取值為第2或第4個字節取反。由圖8和表1的比較可知,所述打包得到的反饋指令幀與打包后的指令包/數據 包格式存在顯著區別,因此當反饋指令幀與打包后的指令包/數據包同時發送到接收邏輯 模塊時,接收邏輯模塊通過幀頭檢測可以分辨出該包是反饋指令包還是打包后的輸入數 據;對于反饋指令包,則將其轉發給指令控制模塊,而對于輸入數據,則將其轉發給寫RAM 模塊。其中,當接收邏輯模塊轉發來的反饋指令包表示的是數據包已正確接收信息時, 指令控制模塊會讀取所述指令數據校驗模塊中暫存的包序號與數據存儲RAM的序號的信 息,并清空發送端相應的RAM和其指令數據寄存器。當接收到的反饋指令包表示的是CRC校驗錯誤信息時,指令控制模塊會向相應的 重發標識寄存器中寫1,指令優先選擇模塊會讀取重發標識寄存器的值,當發現有數據需要 重發時,會將該寄存器對應的數據存儲RAM中保存的包通過讀取RAM邏輯與發送模塊發送 出去,并讓相應的數據發送次數寄存器中的值加1,當數據發送次數寄存器中的數超過設定 的重發次數閾值時,則清空該包數據所在的數據存儲RAM,并歸0相應的數據發送次數寄存 器。重發數據具有第一優先級,高于反饋指令包的優先級。當接收到的反饋指令包表示的是出現丟包錯誤時,指令控制模塊會向相應的重發 標識寄存器中寫1,指令優先選擇模塊會讀取重發標識寄存器的值,當發現有數據需要重發 時,將該寄存器對應的數據存儲RAM中保存的包通過讀取RAM邏輯與發送模塊發送出去。數 據丟包與CRC校驗錯誤具有相同的優先級。當接收到的反饋指令包表示的是RAM滿時,指令控制模塊會將RAM滿信號送給指 令優先選擇模塊,這時指令優先選擇模塊會禁止發送數據,直到解除阻止為止。當接收到的反饋指令包表示的是RAM空時,指令控制模塊會將RAM空信號送給指 令優先選擇模塊,這時指令優先選擇模塊會重新允許數據發送。當接收到的反饋指令包表示的是關閉1通道時,指令控制模塊會通知通路交叉選擇模塊,停止ι通道發送數據。但1通道沒有停下活動,它這時會不停的發固定常數OXAA,相應地,接收邏輯模塊與寫RAM模塊仍然接收數據,當它連續接收到一萬次正確的OXAA時, 會清空信道質量寄存器中的值,狀態記錄器會發送給反饋指令控制模塊一個開啟1通道指 令,并由反饋指令控制模塊發送出去。當接收到的反饋指令包表示的是開啟1通道時,指令控制模塊會通知通路交叉選 擇模塊重新開啟1通道,進行數據傳輸。同理,當接收到的反饋指令包表示的是關閉2、3或 4通道,就分別關閉2、3或4通道。當接收到的反饋指令包表示的是開啟2、3或4通道,則 分別開啟2、3或4通道。二、直通模式,其工作原理如下首先需要說明的是,所述直通模式下的工作過程與安全模式基本相同,為了避免 重復和方便描述,下文中只對直通模式和安全模式存在差異的部分進行詳細介紹,而省略 兩種工作模式下相同的部分在直通模式下,打包前的輸入數據的幀格式與前文中圖7所示的相同,而打包后 的包格式如圖9所示,其中,在2個字節的校驗碼之后,將在打包過程中由所述數據讀取與 寫RAM模塊計數生成的包序號記錄下來作為一個字節(其中包序號占據低6位,高兩位為 無效位),而把要寫入的處于空狀態的數據存儲RAM的序號也記錄下來作為一個字節;之 后,則是最大長度為63字節的數據位,最后,在所述數據位之后添加該包的CRC校驗碼。在直通模式下,所述通路交叉選擇模塊的工作方式與安全模式下存在差異此時, 通路交叉選擇模塊首先檢測第一個發送邏輯忙閑寄存器的值,在發送第一個數據時,此寄 存器一定為0,即第一個發送邏輯模塊處于空閑狀態。這時,通路交叉選擇模塊將第一個 數據存儲MM的讀總線與第一個發送邏輯模塊的數據與控制總線相連,并啟動發送邏輯模 塊讀取并發送數據。當第一個發送邏輯模塊發送了一半的數據時,通路交叉選擇模塊檢測 第二個發送邏輯忙閑寄存器的值,此時,第二個發送邏輯模塊一定處于空閑狀態,則通路交 叉選擇模塊將第二個數據存儲MM的讀總線與第二個發送邏輯模塊的數據與控制總線相 連,并啟動第二個發送邏輯模塊讀取并發送數據。同理,當第二個發送邏輯模塊發送了一半 的數據時,通路交叉選擇模塊將啟動第三個發送邏輯模塊發送第三個數據存儲RAM中的數 據。當第三個發送邏輯模塊發送了一半的數據時,通路交叉選擇模塊將啟動第四個發送邏 輯模塊發送第四個數據存儲RAM中的數據。值得注意的是,當第四個發送邏輯模塊發送了 一半的數據時,第一個發送邏輯模塊一定已經將第一個數據存儲RAM中的數發送完畢,并 且清空了第一個數據存儲RAM中的數據。這時,通路交叉選擇模塊將啟動第一個發送邏輯 模塊發送第五個數據存儲RAM中的數據。當第一個發送邏輯模塊發送了一半的數據時,第 二個發送邏輯模塊一定已經將第二個數據存儲RAM中的數發送完畢,并且清空了第二個數 據存儲RAM中的數據。通路交叉選擇模塊將啟動第二個發送邏輯模塊發送第六個數據存儲 RAM中的數據。這樣依次循環,順序的發送數據輸入緩沖FIFO傳過來的數據。接下來,B中的接收邏輯與寫RAM模塊會首先接收16位的校驗碼,當校驗正確后, 會繼續讀取數據,否則繼續校驗直到校驗成功為止。而后,接收邏輯與寫RAM模塊會接收所 述包中包含的包序號(8位)和數據存儲RAM序號(8位),并將此信息送給CRC校驗器。隨 后,接收邏輯與寫RAM模塊會按照固定包長度(63個字節)接收數據字節。CRC校驗器會校 驗接收的數據是否正確。當校驗成功時,CRC校驗器會將包序號和數據存儲RAM序號的信息傳遞給狀態記錄器,供以后數據組包時使用。當校驗失敗時,CRC校驗器會將包序號和接 收錯誤信息傳遞給狀態記錄器,并將相應的信道質量寄存器里的值加1,當相應的信道質量 寄存器里的值超過信道質量預置寄存器里的值時,則發出命令關閉該通訊信道。這里需要 指出的是不管CRC校驗器的校驗是否成功,數據組包模塊都會將數據組包輸出。當狀態記錄器接收到包序號和數據存儲RAM序號的信息,或接收到包序號和接收 錯誤信息時,表示數據已接收并已經存儲到了相應的數據存儲RAM當中。此時,數據組包 模塊循環檢測狀態記錄器內的包序號信息,當發現需要的包信息時,會將相應數據存儲RAM 內的包讀出到數據輸出緩沖FIFO當中,并清空該數據存儲RAM。這里舉例說明需要的包信 息的含義。例如剛剛已經把包序號為000001的數據包寫入了數據輸出緩沖FIFO當中,那 么,現在需要的包信息即為包序號為000002的包。由于在一些信道環境惡劣的情況下,可 能會產生丟包的現象,因此,在收到000001包之后,B側也許永遠接收不到000002包,所以, 此時數據組包模塊會進一步檢測狀態記錄器內是否存在包序號為000003的包信息,一旦 檢測到所述狀態記錄器內出現了包序號為000003的包信息后,再檢測一遍所述狀態記錄 器內是否存在包序號為000002的包信息,若仍然沒有發現所述狀態記錄器內存在包序號 為000002的包信息,則表示000002包已經丟失,此時,數據組包模塊會立即將所述000003 包相應的數據存儲RAM內的包讀出到數據輸出緩沖FIFO當中進行發送。
由上述說明可見,由于直通模式下采取無論校驗是否成功、以及無論是否丟包都 直接進行組包的發送方式,因此直通模式下的反饋指令包的包格式相比于安全模式也存在 一些差異,具體如下表2所示
I頭(1字節)狀態字(1字節) 狀態反字(1字節)狀態字(1字節) 反饋指令包類型
OXFE__11111111__00000000__11111111__RAM 滿標識_
OXFE~11111101"OOOOOOIO11111101RAM 空標識
OXFE—10000000~θΠ 1111100000001 通道關閉
OXFE~01000000" ο ιιιιι010000002 通道關閉
OXFE~00100000"TIblllll001000003 通道關閉
OXFE~00010000"ΤΤ 01111000100004 通道關閉
OXFE~01111111"TOOOOOOO011111111 通道開啟
OXFE—10111111"Ο ΟΟΟΟΟΟ101111112 通道開啟
OXFE—11011111"ΟΟ ΟΟΟΟΟ110111113 通道開啟
OXFE1110111100010000111011114 通道開啟表2由上表2可見,所述反饋指令包的長度和格式均與安全模式下相同,區別僅在于 由于此時不考慮校驗是否成功以及是否丟包,因此此時的反饋指令包的種類較少,共包括 10種取值的反饋指令包。而當接收模塊將所述反饋控制指令發送給指令控制模塊后,指令 控制模塊的相應操作仍與前文中安全模式下的控制方式相同,不再贅述。由上述可見,本發明實施例提供的總線設備是采用LVDS標準研制的一種新型設 備間通訊接口,該接口擁有多條串行收發通道,而且能夠自動平衡每條通道上傳輸的數據 流。相對于1553Β總線,本發明提供的總線設備具有四個通道冗余備份的機制,只要 有一個通道正常工作,就可以保證數據的傳輸,四個通道互為備份。該總線相對于其它的總線具有更高的數據傳輸帶寬,單通道最大傳輸碼率為500Mb,總線的整體帶寬可達到2Gb,以用于解決現代各種設備對大容量的圖像、聲音等多媒 體數據傳輸的高帶寬需求。該總線相對于其他總線(如CAN總線)具有可靠的糾錯、重發等保障機制。該總 線內部具有丟數重發、丟包重發、數據CRC校驗出錯重發等機制,滿足了在航空航天等領域 對數據誤碼率的苛刻要求。該總線具有安全模式和直通模式兩種數據傳輸模式,在要求高數據可靠性的場合 使用安全模式。在民用領域,可以使用直通模式,以期待在環境相對穩定的情況下獲得最大 的數據帶寬。這個可以根據實際情況進行配置。該總線相對于用戶具有非常簡單的輸入接口,用戶只需要控制寫時鐘向總線內部 的輸入緩沖FIFO按用戶幀結構寫數即可,該總線具有高速、可靠、網絡化的特點。以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精 神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明保護的范圍之內。
權利要求
一種總線設備,包括用于在兩個傳輸方向上進行數據傳輸的兩個組成結構和連接關系均完全相同的子設備正向子系統和反向子系統;其特征在于所述正向子系統包括正向輸入保存模塊、正向發送模塊、正向接收保存模塊、正向輸出模塊、正向反饋控制模塊和正向指令控制模塊;所述反向子系統包括反向輸入保存模塊、反向發送模塊、反向接收保存模塊、反向輸出模塊、反向反饋控制模塊和反向指令控制模塊;所述正向輸入保存模塊,首先執行正向指令控制模塊通知的相關操作,之后,接收反向反饋控制模塊發來的反向反饋控制指令,將其按照設定的反饋指令包格式打包后緩存;還接收正向輸入數據,將其按照設定的包格式打包后緩存;所述正向發送模塊,首先執行正向指令控制模塊通知的相關操作,之后,讀取正向輸入保存模塊中緩存的打包后的反向反饋控制指令或打包后的正向輸入數據,將其發送到正向接收保存模塊;所述正向接收保存模塊,接收正向發送模塊發來的打包后的反向反饋控制指令或打包后的正向輸入數據,將所述反向反饋控制指令發送給反向指令控制模塊,緩存所述正向輸入數據并將自身的當前處理狀態發送給正向反饋控制模塊;所述正向輸出模塊,讀取正向接收保存模塊緩存的打包后的正向輸入數據,將其解包得到輸入數據的打包前格式后輸出;所述正向反饋控制模塊,根據正向接收保存模塊發來的其當前處理狀態的信息生成正向反饋控制指令并緩存到反向輸入保存模塊;所述正向指令控制模塊,根據反向接收保存模塊發來的正向反饋控制指令通知正向輸入保存模塊和正向發送模塊進行相關操作;所述反向輸入保存模塊,首先執行反向指令控制模塊通知的相關操作,之后,接收正向反饋控制模塊發來的正向反饋控制指令,將其按照設定的反饋指令包格式打包后緩存;還接收反向輸入數據,將其按照設定的包格式打包后緩存;所述反向發送模塊,首先執行反向指令控制模塊通知的相關操作,之后,讀取反向輸入保存模塊中緩存的打包后的正向反饋控制指令或打包后的反向輸入數據,將其發送到反向接收保存模塊;所述反向接收保存模塊,接收反向發送模塊發來的打包后的正向反饋控制指令或打包后的反向輸入數據,將所述正向反饋控制指令發送給正向指令控制模塊,緩存所述反向輸入數據并將自身的當前處理狀態發送給反向反饋控制模塊;所述反向輸出模塊,讀取反向接收保存模塊緩存的打包后的反向輸入數據,將其解包得到輸入數據的打包前格式后輸出;所述反向反饋控制模塊,根據反向接收保存模塊發來的其當前處理狀態的信息生成反向反饋控制指令并緩存到正向輸入保存模塊;所述反向指令控制模塊,根據正向接收保存模塊發來的反向反饋控制指令對反向輸入保存模塊和反向發送模塊進行相應的指令控制。
2.根據權利要求1所述的總線設備,其特征在于,所述正向輸入保存模塊包括正向數據輸入緩沖控制模塊,當有正向輸入數據需要通過總線設備進行傳輸時,判斷 是否存在空的正向發送端數據存儲RAM,如果存在,則允許所述正向輸入數據輸入并將其發送給正向數據輸入緩沖FIFO,如果不存在,則不允許所述正向輸入數據輸入;正向數據輸入緩沖FIFO,接收所述正向數據輸入緩沖控制模塊發來的正向輸入數據, 將其進一步發送給正向雙路選通開關;正向雙路選通開關,接收所述正向數據輸入緩沖FIFO發來的正向輸入數據,將所述正 向輸入數據發送給正向數據校驗模塊;當接收到正向數據校驗模塊返回的校驗通過的信息 后,再將所述正向輸入數據發送給正向數據讀取與寫RAM模塊;正向數據校驗模塊,對所述正向雙路選通開關發來的正向輸入數據進行校驗,如果校 驗未通過則繼續等待下一個正向輸入數據并對其繼續進行校驗,直到校驗通過,向所述正 向雙路選通開關返回校驗通過的信息;正向數據讀取與寫RAM模塊,接收反向反饋控制模塊發來的反向反饋控制指令,將其 按照設定的反饋指令包格式打包后緩存到正向發送端數據存儲RAM當中,同時為保存該反 饋指令包的RAM設置指令包標識;還接收正向雙路選通開關發來的正向輸入數據,將其按 照設定的包格式打包后緩存到正向發送端數據存儲RAM當中,同時根據為保存該打包后的 正向輸入數據的RAM設置數據包標識;正向發送端數據存儲RAM,首先執行正向指令控制模塊控制下的操作,之后,接收數據 讀取與寫RAM模塊發來的打包后的反饋指令包和/或打包后的正向輸入數據進行緩存。
3.根據權利要求2所述的總線設備,其特征在于,所述正向發送模塊包括正向通路交叉選擇模塊,實時循環檢測各正向發送邏輯模塊中是否有處于空閑狀態 的;如果有,則通知正向指令優先選擇模塊;正向指令優先選擇模塊,接收正向通路交叉選擇模塊的通知,首先執行正向指令控制 模塊控制下的操作,之后,選擇設置有指令包標識的正向發送端數據存儲RAM,讀取其中緩 存的打包后的反向反饋控制指令或打包后的正向輸入數據,并轉發給所述正向發送邏輯模 塊;之后,在選擇設置有數據包標識的正向發送端數據存儲RAM,讀取其中緩存的打包后的 正向輸入數據,并轉發給所述正向發送邏輯模塊;正向發送邏輯模塊,接收正向指令優先選擇模塊發來的包并轉發給正向接收保存模塊。
4.根據權利要求3所述的總線設備,其特征在于,所述正向接收保存模塊包括正向接收邏輯模塊,接收正向發送邏輯模塊發來的打包后的反向反饋控制指令和/或 打包后的正向輸入數據,對于打包后的反向反饋控制指令,將所述反向反饋控制指令發送 給反向指令控制模塊,而對于打包后的正向輸入數據,將其轉發給正向寫RAM模塊;正向寫RAM模塊,接收正向接收邏輯模塊發來的打包后的正向輸入數據并對所述正向 輸入數據進行校驗,當校驗通過時,將所述正向輸入數據保存到正向RAM選通模塊選通的 正向接收端數據存儲RAM當中,同時將校驗通過作為當前處理狀態通知當前正向狀態記錄 器;當校驗未通過時,則將校驗失敗作為當前處理狀態通知當前正向狀態記錄器;正向RAM選通模塊,實時檢測各正向接收端數據存儲RAM中是否存在空RAM,如果存在, 則選通該RAM并將所述正向寫RAM模塊發來的正向輸入數據保存到該RAM當中;如果不存 在,則將RAM已滿作為當前處理狀態通知當前正向狀態記錄器;當前正向狀態記錄器,接收并記錄正向寫RAM模塊和正向RAM選通模塊發來的當前處 理狀態,將校驗通過的正向輸入數據的標識信息通知正向輸出模塊,所述正向輸入數據的標識信息包含在打包后的正向輸入數據當中;還將記錄的所述當前處理狀態發送給正向反 饋控制模塊;正向接收端數據存儲RAM,當被正向RAM選通模塊選通時,接收正向寫RAM模塊發來的 正向輸入數據并緩存。
5.根據權利要求4所述的總線設備,其特征在于,所述正向輸出模塊包括正向輸入數據還原模塊,接收當前正向狀態記錄器發來的校驗通過的正向輸入數據的 標識信息,將所述正向接收端數據存儲RAM中緩存的打包后的該正向輸入數據讀出,將其 還原成正向輸入數據打包前的格式后發送到正向輸入數據輸出緩沖FIFO當中,并清空保 存打包后的該正向輸入數據的正向接收端數據存儲RAM ;正向輸入數據輸出緩沖FIFO,接收正向輸入數據還原模塊發來的還原成打包前格式的 正向輸入數據并輸出。
6.根據權利要求5所述的總線設備,其特征在于,所述反向輸入保存模塊和括反向數據輸入緩沖控制模塊,當有反向輸入數據需要通過總線設備進行傳輸時,判斷 是否存在空的反向發送端數據存儲RAM,如果存在,則允許所述反向輸入數據輸入并將其發 送給反向數據輸入緩沖FIFO,如果不存在,則不允許所述反向輸入數據輸入;反向數據輸入緩沖FIFO,接收所述反向數據輸入緩沖控制模塊發來的反向輸入數據, 將其進一步發送給反向雙路選通開關;反向雙路選通開關,接收所述反向數據輸入緩沖FIFO發來的反向輸入數據,將所述反 向輸入數據發送給反向校驗模塊;當接收到反向校驗模塊返回的校驗通過的信息后,再將 所述反向輸入數據發送給反向數據讀取與寫RAM模塊;反向校驗模塊,對所述反向雙路選通開關發來的反向輸入數據進行校驗,如果校驗未 通過則繼續等待下一個反向輸入數據并對其繼續進行校驗,直到校驗通過,向所述反向雙 路選通開關返回校驗通過的信息;反向數據讀取與寫RAM模塊,接收正向反饋控制模塊發來的正向反饋控制指令,將其 按照設定的反饋指令包格式打包后緩存到反向發送端數據存儲RAM當中,同時為保存該反 饋指令包的RAM設置指令包標識;還接收反向雙路選通開關發來的反向輸入數據,將其按 照設定的包格式打包后緩存到反向發送端數據存儲RAM當中,同時根據所述反向輸入數據 的類型為保存該打包后的反向輸入數據的RAM設置指令包或數據包標識,所述反向輸入數 據的類型預先設定、且包含指令型和數據型兩種;反向發送端數據存儲RAM,首先執行反向指令控制模塊控制下的操作,之后,接收數據 讀取與寫RAM模塊發來的打包后的反饋指令包和/或打包后的反向輸入數據進行緩存。
7.根據權利要求6所述的總線設備,其特征在于,所述反向發送模塊包括反向通路交叉選擇模塊,實時循環檢測各反向發送邏輯模塊中是否有處于空閑狀態 的;如果有,則通知反向指令優先選擇模塊;反向指令優先選擇模塊,接收反向通路交叉選擇模塊的通知,首先執行反向指令控制 模塊控制下的操作,之后,選擇設置有指令包標識的反向發送端數據存儲RAM,讀取其中緩 存的打包后的正向反饋控制指令或打包后的反向輸入數據,并轉發給所述反向發送邏輯模 塊;之后,在選擇設置有數據包標識的反向發送端數據存儲RAM,讀取其中緩存的打包后的 反向輸入數據,并轉發給所述反向發送邏輯模塊;反向發送邏輯模塊,接收反向指令優先選擇模塊發來的包并轉發給反向接收保存模塊。
8.根據權利要求7所述的總線設備,其特征在于,所述反向接收保存模塊包括反向接收邏輯模塊,接收反向發送邏輯模塊發來的打包后的正向反饋控制指令和/或 打包后的反向輸入數據,對于打包后的正向反饋控制指令,將所述正向反饋控制指令發送 給正向指令控制模塊,而對于打包后的反向輸入數據,將其轉發給反向寫RAM模塊;反向寫RAM模塊,接收反向接收邏輯模塊發來的打包后的反向輸入數據并對所述反向 輸入數據進行校驗,當校驗通過時,將所述反向輸入數據保存到反向RAM選通模塊選通的 反向接收端數據存儲RAM當中,同時將校驗通過作為當前處理狀態通知當前反向狀態記錄 器;當校驗未通過時,則將校驗失敗作為當前處理狀態通知當前反向狀態記錄器;反向RAM選通模塊,實時檢測各反向接收端數據存儲RAM中是否存在空RAM,如果存在, 則選通該RAM并將所述反向寫RAM模塊發來的反向輸入數據保存到該RAM當中;如果不存 在,則將RAM已滿作為當前處理狀態通知當前反向狀態記錄器;當前反向狀態記錄器,接收并記錄反向寫RAM模塊和反向RAM選通模塊發來的當前處 理狀態,將校驗通過的反向輸入數據的標識信息通知反向輸出模塊,所述反向輸入數據的 標識信息包含在打包后的反向輸入數據當中;還將記錄的所述當前處理狀態發送給反向反 饋控制模塊;反向接收端數據存儲RAM,當被反向RAM選通模塊選通時,接收反向寫RAM模塊發來的 反向輸入數據并緩存。
9.根據權利要求8所述的總線設備,其特征在于,所述反向輸出模塊包括反向輸入數據還原模塊,接收當前反向狀態記錄器發來的校驗通過的反向輸入數據的 標識信息,將所述反向接收端數據存儲RAM中緩存的打包后的該反向輸入數據讀出,將其 還原成反向輸入數據打包前的格式后發送到反向輸入數據輸出緩沖FIFO當中,并清空保 存打包后的該反向輸入數據的反向接收端數據存儲RAM ;反向輸入數據輸出緩沖FIFO,接收反向輸入數據還原模塊發來的還原成打包前格式的 反向輸入數據并輸出。
全文摘要
本發明公開了一種總線設備,包括用于在兩個傳輸方向上進行數據傳輸的兩個組成結構和連接關系均完全相同的子設備正向子系統和反向子系統;所述正向子系統包括正向輸入保存模塊、正向發送模塊、正向接收保存模塊、正向輸出模塊、正向反饋控制模塊和正向指令控制模塊;所述反向子系統包括反向輸入保存模塊、反向發送模塊、反向接收保存模塊、反向輸出模塊、反向反饋控制模塊和反向指令控制模塊。本發明提供的總線設備,能夠同時實現高速率和高可靠性的工作,且總線節點容量更高。
文檔編號H04L1/00GK101834695SQ20101012915
公開日2010年9月15日 申請日期2010年3月18日 優先權日2010年3月18日
發明者劉文怡, 張會新, 張彥軍, 沈三民, 燕洪成, 王立, 郅銀周, 黃卡爾 申請人:中北大學