傳輸系統錯誤檢測和校正系統及方法
【技術領域】
[0001]本說明書公開的主題涉及傳輸系統,并且更確切地涉及用于數據傳輸系統的硬件串行鏈路故障檢測系統。
【背景技術】
[0002]一般來說,數據傳輸系統可被利用來從一個輸入/輸出(I/O)設備向另一個I/O設備傳送數據。例如,傳輸系統可在工業控制系統中利用,來促進與諸如渦輪機、發電機、壓縮機、燃燒器等的多種設備交接并且控制它們的各種工業控制器之間的通信。更確切地,傳輸系統可使控制器能夠彼此傳達數據,諸如傳達控制命令。例如,第一控制器可通過傳輸系統來向第二控制器傳輸控制命令以便啟動渦輪機的操作。因此,提高傳輸系統的可靠性將會是有益的。
【發明內容】
[0003]下文概述與最初提出權利要求的本發明的范圍相符的某些實施例。這些實施例不意圖限制本發明的范圍,相反,這些實施例僅意圖提供對本發明的可能形式的簡述。實際上,本發明可涵蓋可與下述實施例類似或不同的各種形式。
[0004]第一實施例描述一種用于數據傳輸系統中實時錯誤校正的方法,所述方法包括:通過第一串行鏈路來在第一可編程邏輯設備上從第二可編程邏輯設備接收第一通信信號;通過第二串行鏈路來在第一可編程邏輯設備上從第二可編程邏輯設備接收第二通信信號,其中第一串行鏈路和第二串行鏈路是彼此并行設置并且配置用于通過單一導管進行通信,并且第一通信信號和第二通信信號表示相同信息。所述方法進一步包括:在第一可編程邏輯設備中比較第一通信信號和第二通信信號以便檢測第一通信信號、第二通信信號或兩者中的數據上的錯誤,并且當檢測到錯誤時,至少部分基于第一通信信號和第二通信信號的比較來在第一可編程邏輯設備中實時校正錯誤。
[0005]第二實施例描述一種包括可編程邏輯設備的數據傳輸系統。所述可編程邏輯設備包括:第一串行端口,所述第一串行端口可通信地聯接至第一串行鏈路,其中第一串行端口從該第一串行鏈路接收第一傳輸信號;以及第二串行端口,所述第二串行端口可通信地聯接至第二串行鏈路,其中第二串行端口從該第二串行鏈路接收第二傳輸信號。第一串行鏈路和第二串行鏈路是彼此并行設置并且通過單一導管進行通信,并且第一通信信號和第二通信信號表示相同信息。所述可編程邏輯設備進一步包括電路,用以比較第一通信信號和第二通信信號以便檢測第一通信信號、第二通信信號或兩者中所包括的數據上的錯誤,并且當檢測到錯誤時,至少部分基于第一通信信號和第二通信信號的比較來實時校正錯誤。
[0006]第三實施例描述一種用于操作數據傳輸系統的方法,所述方法包括:通過比較已傳輸的第一通信信號和第二通信信號來在可編程邏輯設備中檢測第一通信信號、第二通信信號或兩者中表示的數據上的錯誤,其中第一通信信號和第二通信信號是由可編程邏輯設備并行接收,第一通信信號和第二通信信號表示相同信息,并且檢測所述錯誤僅僅包括在可編程邏輯設備中的硬件檢測。所述方法進一步包括:當檢測到錯誤時,確定錯誤類型;以及至少部分基于錯誤類型、第一通信信號、第二通信信號或其任何組合來在可編程邏輯設備中校正錯誤。
【附圖說明】
[0007]在參考附圖閱讀以下詳細說明后,將更好地理解本發明的這些和其他特征、方面及優點,在附圖中,類似符號代表所有附圖中的類似部分,其中:
[0008]圖1為根據實施例的數據傳輸系統的示意圖;
[0009]圖2為根據實施例的圖1所描繪數據傳輸系統中的控制器的方框圖;
[0010]圖3為根據實施例的三重模塊冗余控制器的方框圖;
[0011]圖4為根據實施例的通信信號的方框圖;
[0012]圖5為根據實施例描繪一種向數據傳輸系統傳輸通信信號的過程的流程圖;
[0013]圖6為根據實施例描繪一種從數據傳輸系統接收通信信號的過程的流程圖;
[0014]圖7為根據實施例描繪一種檢測串行鏈路中故障的過程的流程圖;以及
[0015]圖8為根據實施例描繪一種檢測并且校正所接收的通信信號中錯誤的過程的流程圖。
【具體實施方式】
[0016]下文將會描述本發明的一個或多個具體實施例。為了提供這些實施例的簡要描述,說明書中可能不會描述實際實施方案中的所有特征。應當了解,在任何工程或設計項目中開發任何此類實際實現方案時,均應做出與實現方案特定相關的各種決定,以實現開發人員的特定目標,例如,是否要遵守與系統相關以及與業務相關的限制,這些限制可能會因實現方案的不同而有所不同。另外,應當了解,此類開發工作可能復雜而且耗時,但對所屬領域中受益于本發明的普通技術人員而言,這將仍是設計、制造以及生產中的常規任務。
[0017]當介紹本發明的各種實施例的元件時,冠詞“一”、“一個”、“該”以及“所述”旨在表示有一個或多個這種元件。術語“包括”和“具有”意圖表示包括性的含義,并且旨在表示除了所列元件之外,可能還有其他元件。
[0018]數據傳輸系統通常被利用于諸如工業控制系統和自動系統的系統中,以促進系統內各種輸入/輸出(I/O)設備之間的通信。例如,數據傳輸系統可使各種控制器能夠與彼此進行通信。一般來說,控制器與諸如渦輪機、發電機、壓縮機、燃燒器、傳感器、泵、閥、其他現場設備等的各種設備交接并且控制它們。因此,控制器傳達的數據可包括受控設備收集的數據、控制命令、設備狀態等。由于系統的可利用數據傳輸系統的性質,因此提高此類數據傳輸系統的可靠性將會是有益的。
[0019]一種提高數據傳輸系統可靠性的技術可包括利用各種通信協議,諸如用于過程控制的對象鏈接和嵌入(OPC)、Modbus、基金會現場總線(Foundat1n Fieldbus)、過程現場總線和/或BACnet。一般來說,這些通信協議可使用一些軟件來監督和處理。例如,當利用基金會現場總線時,可利用某個級別的處理來執行用于傳輸和接收數據的功能塊。然而,由于一些I/O設備可不包括對此類協議的期望處理能力,因此本說明書公開包括了這樣的實施例:不管處理能力如何,提高用于I/O設備的傳輸系統的可靠性。因此,本說明書中描述的技術提供用于在包括安全系統應用的各種應用中通信的低級串行鏈路。低級串行鏈路可使用較少的處理和資源(例如,軟件資源和硬件資源)而仍提供合適的操作來滿足期望安全完整性等級(SIL)認證,包括SIL1、2、3和/或4。在某些實施例中,低級串行鏈路可應用硬件故障檢測方案,以便提供適用于減少處理和其他資源的使用的期望安全認證。
[0020]因此,第一實施例描述一種包括可編程邏輯設備的容錯傳輸系統。所述可編程邏輯設備包括:第一串行端口,所述第一串行端口可通信地聯接至第一串行鏈路,其中第一串行端口從該第一串行鏈路接收第一傳輸信號;以及第二串行端口,所述第二串行端口可通信地聯接至第二串行鏈路,其中第二串行端口從該第二串行鏈路接收第二傳輸信號。第一串行鏈路和第二串行鏈路是彼此并行設置并且通過第一單一導管進行通信,并且第一通信信號和第二通信信號表示相同信息。所述可編程邏輯設備進一步包括電路,所述電路通過對第一通信信號和第二通信信號進行比較來檢測第一串行鏈路、第二串行鏈路或兩者中的故障,并且當檢測到故障時,確定傳輸系統是否可在不管該故障的情況下繼續操作。換言之,接收表示相同信息的并行通信信號使得能夠檢測在各種設備之間通信鏈路(例如,串行鏈路)中的故障。此外,傳輸系統通過對檢測到的故障的智能反應而可以是更容錯的。
[0021]另外,第二實施例描述一種包括可編程邏輯設備的數據傳輸系統。所述可編程邏輯設備包括:第一串行端口,所述第一串行端口可通信地聯接至第一串行鏈路,其中第一串行端口從該第一串行鏈路接收第一傳輸信號;以及第二串行端口,所述第二串行端口可通信地聯接至第二串行鏈路,其中第二串行端口從該第二串行鏈路接收第二傳輸信號。第一串行鏈路和第二串行鏈路是彼此并行設置并且通過單一導管進行通信,并且第一通信信號和第二通信信號表示相同信息。所述可編程邏輯設備進一步包括電路,用以比較第一通信信號和第二通信信號以便檢測第一通信信號、第二通信信號或兩者中所包括的數據上的錯誤,并且當檢測到錯誤時,至少部分基于第一通信信號和第二通信信號的比較來實時校正錯誤。換言之,接收表示相同信息的并行通信信號使得能夠檢測和實時校正通信信號中的錯誤。如本說明書中使用,“實時”意圖表示緊隨先前步驟。例如,一旦檢測到錯誤,就可立即開始錯誤校正。
[0022]如以下將更詳細地描述,在一些實施例中,數據傳輸系統可在有較少軟件監督或無軟件監督的情況下利用硬件以提高傳輸系統的可靠性。因此,提高的數據傳輸系統可靠性可提供給具有處理器和不具有處理器的I/o設備。此外,本說明書中描述的技術使I/O設備能夠符合國際電工技術委員會(IEO61508,并且在一些實施例中,滿足SIL1、2、3和/或4認證。
[0023]通過介紹,圖1描繪工業控制系統12中