TW201743202A - 於鎖步雙核或三重模組冗餘(tmr)系統中用於假通偵測之系統及方法 - Google Patents
於鎖步雙核或三重模組冗餘(tmr)系統中用於假通偵測之系統及方法 Download PDFInfo
- Publication number
- TW201743202A TW201743202A TW106115151A TW106115151A TW201743202A TW 201743202 A TW201743202 A TW 201743202A TW 106115151 A TW106115151 A TW 106115151A TW 106115151 A TW106115151 A TW 106115151A TW 201743202 A TW201743202 A TW 201743202A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- signal
- timing violation
- output
- timing
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1608—Error detection by comparing the output signals of redundant hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
- G06F11/1641—Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1604—Error detection or correction of the data by redundancy in hardware where the fault affects the clock signals of a processing unit and the redundancy is at or within the level of clock signal generation hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/18—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
- G06F11/183—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
- G06F11/184—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/18—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
- G06F11/187—Voting techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/805—Real-time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
本發明係關於一種用於在鎖步雙處理核系統、三重模組冗餘(TMR)系統或其他冗餘處理系統中用於假通偵測的裝置及方法。 一假通出現在兩個處理核心產生匹配資料輸出時,其中兩者均有誤差。 一假通可出現在該處理核心均面臨大體上相同的不利條件時,諸如一供應電壓下降或一急劇的溫度變化或梯度。 該裝置包括經組態以產生第一及第二資料輸出以及第一及第二時序違規信號之處理核心。 一表決比較器在該等第一及第二資料輸出匹配且該等第一及第二時序違規信號指示無時序違規的情況下驗證該等輸出。 否則,該表決比較器使該等第一及第二資料輸出無效。 經驗證資料輸出用於執行額外操作,且經失效資料輸出可被捨棄。
Description
本發明之態樣大體上係關於冗餘處理器系統,且詳言之係關於在鎖步雙核或三重模組冗餘(TMR)系統中用於假通偵測之系統及方法。
用於處理人之安全性之應用中的電子系統常常面臨愈加嚴格的設計要求。舉例而言,在汽車業中,國際標準化組織(ISO)發佈標題為「路行車輛-功能安全性」之功能安全性標準ISO 26262,其為汽車電子系統提供許多要求,以供降低由於有缺陷或未經恰當設計之產品而對人造成損傷且對性質造成損害的似然性。 在此等電子系統中,常常使用冗餘處理核心以回應於鎖步指令產生並行資料輸出。 若資料輸出匹配,則此等電子系統驗證該資料。 若資料輸出並不匹配,則此等電子系統使該資料失效。 然而,可存在冗餘處理核心產生匹配資料輸出之情境,該等情境均有誤差。此條件被稱為假通。亦即,匹配資料(即使有誤差)隨後用於執行對應電子系統之吾人所需之操作。此有誤差之資料可具有非常不利的後果,尤其在電子系統用於人之安全性及性質之保護的情況下。
以下呈現一或多個實施例之簡化概述以便提供對此等實施例之基本理解。 此概述並非為所有涵蓋之實施例的廣泛綜述,且不意欲識別所有實施例之關鍵或重要要素,亦不意欲描繪任何或所有實施例之範疇。 其唯一目的在於以簡化形式呈現一或多個實施例之一些概念以作為稍後呈現之更詳細描述的序言。 本發明之一態樣係關於一種裝置,其包括:一第一處理核心,該第一處理核心經組態以回應於執行一鎖步指令集合中之一者產生一第一資料輸出及一第一時序違規信號;一第二處理核心,該第二處理核心經組態以回應於執行該鎖步指令集合中之另一者產生一第二資料輸出及一第二時序違規信號;及一表決比較器,該表決比較器經組態以回應於該第一資料輸出匹配該第二資料輸出且該等第一及第二時序違規信號指示無時序違規而驗證該等第一及第二資料輸出。 本發明之另一態樣係關於一種方法,該方法包括:回應於執行一第一鎖步指令產生一第一資料輸出及一第一時序違規信號;回應於執行該第一鎖步指令產生一第二資料輸出及一第二時序違規信號;及回應於該第一資料輸出匹配該第二資料輸出且該等第一及第二時序違規信號指示無時序違規而驗證該等第一及第二資料輸出。 本發明之另一態樣係關於一種裝置,該裝置包括:用於回應於執行一鎖步指令集合中之一者產生一第一資料輸出及一第一時序違規信號的構件;用於回應於執行該鎖步指令集合中之另一者產生一第二資料輸出及一第二時序違規信號的構件;及用於回應於該第一資料輸出匹配該第二資料輸出且該等第一及第二時序違規信號指示無時序違規驗證該等第一及第二資料輸出的構件。 為實現前述及相關目的,一或多個實施例包括在下文中充分描述且特別地在申請專利範圍中所指出之特徵。以下描述及隨附圖式詳細闡述該一或多個實施例之某些說明性態樣。然而,此等態樣僅指示可供各種實施例之原理採用的各種方式中之少數方式,且描述實施例意欲包括所有此等態樣及其等效物。
相關申請案之交叉參考 本申請案主張2016年6月8日在美國專利及商標局中申請之非臨時申請案第15/176,745號的優先權及權益。 下文結合附圖所闡述之詳細描述意欲作為對各種組態之描述,且不意欲表示於其中可實踐本文中所描述之概念的唯一組態。 出於提供對各種概念的透徹理解之目的,詳細描述包含特定細節。然而,對於熟習此項技術者而言,可在無此等特定細節之情況下實踐此等概念將為顯而易見的。在一些情況下,熟知結構及組件係以方塊圖形式展示,以便避免混淆此類概念。 用於處理人之安全性之應用中的電子系統常常面臨愈加嚴格的設計要求。 舉例而言,在汽車業中,國際標準化組織(ISO)發佈標題為「路行車輛-功能安全性」之功能安全性標準ISO 26262,其為汽車電子系統提供許多要求,以供降低由於有缺陷或未經恰當設計之產品而對人造成損傷且對性質造成損害的似然性。 專門針對於資料處理核心之一個此要求為可容許的根據指令數目之最大輸出資料誤差數目。為解決此要求,許多設計者已設計出汽車電子系統以包括多個處理核心(有時被稱作冗餘處理器)或偵測資料處理核心之輸出資料中之誤差的其他器件。此等系統被稱為鎖步雙核或三重模組冗餘(TMR)系統。 圖1A說明根據本發明之一態樣的例示性鎖步雙核系統100之方塊圖。 系統100包括用於執行一或多個冗餘操作之一對冗餘資料處理核心110及120,其可對人類安全及性質之損壞造成影響。 資料處理核心110及120基於一或多個經執行鎖步指令,分別產生資料輸出OUT-1及OUT-2。鎖步指令無需同時執行(儘管其可同時執行),但出於比較目的,以意欲在核心處產生匹配資料輸出的方式予以執行。 系統100亦包括表決比較器130,其經組態以將來自冗餘資料處理核心110及120之資料輸出OUT-1及OUT-2分別進行比較。 若資料輸出OUT-1及OUT-2匹配(例如,兩者均具有相同數位值),則表決比較器130驗證資料輸出OUT-1及OUT-2(將其視為正確或可信賴的),且將其中任一者輸出以供藉由系統之另一組件(圖中未示)使用。 表決比較器130亦產生或將ERROR信號保持為取消確證。在此狀況下,假定資料處理核心110及120在其各別資料輸出OUT-1及OUT-2匹配的情況下正確操作。 在另一方面,若冗餘資料處理核心110及120之資料輸出OUT-1及OUT-2並不匹配,則表決比較器130使資料輸出無效(將其視為不正確或不可靠),且抑制其中任一者之輸出。 另外,表決比較器130產生或確證一ERROR信號。 表決比較器130可將由先前鎖步指令產生的先前正確(非誤差)資料輸出OUT-1或OUT-2保持為其輸出。在此狀況下,假定資料處理核心110及120在其各別資料輸出OUT-1及OUT-2並不匹配的情況下不正確操作。 系統100進一步包括應答器140,其經組態以回應於經確證之誤差信號ERROR執行一或多個操作(且可能回應於未經確證之誤差信號ERROR不執行任何操作(例如,在取消確證狀態中))。 作為一實例,應答器140可回應於經確證之誤差信號ERROR而產生或確證暫停命令信號STALL。 回應於經確證之暫停信號STALL,資料處理核心110及120將其各別操作暫停且將其各別組態(例如,先前經執行鎖步指令及資料輸出OUT-1及OUT-2)回退至產生經確證誤差信號ERROR的鎖步指令之執行之前的狀態。 圖1B說明根據本發明之另一態樣的由表決比較器130執行之例示性方法150的流程圖。 根據方法150,表決比較器130分別自冗餘資料處理核心110及120接收資料輸出OUT-1及OUT-2(區塊152)。 表決比較器130判定輸出OUT-1是否匹配輸出OUT-2(區塊154)。 若在區塊154中,表決比較器130判定輸出OUT-1與OUT-2匹配,則表決比較器130驗證資料輸出OUT-1及OUT-2,且將其中任一者輸出以待用於控制相關聯系統(諸如,汽車系統)之操作(區塊156)。在區塊156中,表決比較器130將ERROR信號保持為取消確證。 在執行於區塊156中指定之操作之後,表決比較器130返回至區塊152,用於接收根據接下來的經執行鎖步指令產生的接下來的資料輸出。 若在區塊154中,表決比較器130判定資料輸出OUT-1與OUT-2並不匹配,則表決比較器130使資料輸出OUT-1及OUT-1無效,且確證誤差信號ERROR(區塊158)。在此狀況下,表決比較器130可抑制無效資料輸出OUT-1及OUT-2中之任一者的輸出。 系統100之缺點在於:仍存在資料處理核心110及120兩者均產生匹配資料輸出OUT-1及OUT-2的機率(即使有誤差)。此可為一條件以大體上相同的方式影響資料處理核心110及120兩者的狀況。 舉例而言,藉由電源分佈網路(PDN)提供至核心110及120兩者的供應電壓之下降可使得核心兩者至時序邊緣化且輸出有誤差之匹配資料。 作為另一實例,合併資料處理核心110及120的積體電路(IC)之溫度變化或梯度可產生時序邊緣化,從而產生有誤差之匹配資料。 在此狀況下,系統100無法偵測到上述誤差,此係由於該系統經設計假定在核心110及120之各別輸出OUT-1及OUT-2匹配的情況下不會出現誤差。 此未偵測到的誤差被稱作假通。出現於系統100中之此誤差可對人之安全性及性質損害之預防產生不利的影響。 圖2A說明根據本發明之另一態樣的另一例示性鎖步雙核系統200之方塊圖。 系統200可用在涉及人之安全性及預防對性質之損害的應用中。舉例而言,系統200可為用於汽車電子系統中之鎖步雙核系統或TMR系統的實例。 系統200經組態以解決系統100之無法在冗餘核心輸出有誤差之匹配資料時偵測一假通的缺陷。又,如上文所論述,可由於出現以大體上相同的方式影響核心兩者之條件而出現此等誤差。 此條件之實例包括橫跨積體電路(IC)的供應電壓下降或溫度梯度變化。 概言之,除偵測冗餘資料處理核心之資料輸出是否匹配以外,系統200亦判定資料處理核心中之每一者中的一或多個所選擇資料路徑(例如,臨界路徑)中是否存在時序違規。 舉例而言,系統200回應於以下項偵測一誤差:(1)核心之輸出未匹配;(2)在冗餘核心中之至少一者中之至少一資料路徑中偵測時序違規;或(3)核心之輸出未匹配及在冗餘核心中之至少一者中之至少一資料路徑中偵測時序違規兩者。 系統200之後的概念為:儘管冗餘核心之輸出匹配,但在冗餘核心中之至少一者中的至少一所選擇資料路徑中存在至少一時序違規的情況下,輸出被視為有誤差。 詳言之,系統200包括第一冗餘資料處理核心210、第二冗餘資料處理核心220、表決比較器230及應答器240。資料處理核心210及220經組態以分別基於由核心執行之各別鎖步指令,產生各別資料輸出OUT-1及OUT-2。 另外,第一冗餘資料處理核心210包括第一組一或多個時序違規偵測電路,諸如鬆弛監視觸發器(SMF),其偵測第一核心210中之第一組一或多個所選擇(例如,臨界)資料路徑中的時序違規。 因此,第一資料處理核心210經組態以產生信號SLK-1以指示時序違規是否已出現在第一組中之所選擇資料路徑中的至少一者中。舉例而言,若信號SLK-1經確證,則此指示已出現時序違規,且若信號SLK-1並未經確證,則指示未出現時序違規。 類似地,第二冗餘資料處理核心220包括第二組一或多個時序違規偵測電路,諸如SMF,其偵測第二核心220中之第二組一或多個所選擇(例如,臨界)資料路徑中的時序違規。 因此,第二資料處理核心220經組態以產生信號SLK-2,以指示時序違規是否已出現於第二組中之所選擇資料路徑中的至少一者中(例如,若SLK-2經確證,則已出現至少一個時序違規;若SLK -2並未經確證,則未出現時序違規)。 表決比較器230自第一及第二資料處理核心210及220接收資料輸出OUT-1及OUT-2,以及其各別時序違規信號SLK-1及SLK-2。 表決比較器230驗證資料輸出OUT-1及OUT-2或使其無效,且基於信號OUT-1、OUT-2、SLK-1及SLK-2之狀態將誤差信號ERROR確證或取消確證。 舉例而言,表決比較器230回應於以下條件使資料輸出OUT-1及OUT-2無效且確證誤差信號ERROR:(1)由資料處理核心210及220產生的資料輸出OUT-1及OUT-2並不匹配;(2)信號SLK-1或SLK-2中之至少一者經確證(指示時序違規);或(3)資料輸出OUT-1及OUT-2並不匹配且信號SLK-1或SLK-2中之至少一者指示時序違規兩者。如先前論述,系統200之後的概念為:儘管冗餘處理核心210及220之資料輸出OUT-1及OUT-2匹配,但在如藉由信號SLK-1或SLK-2中之至少一者所指示的已出現至少一時序違規的情況下,輸出OUT-1及OUT-2被視為有誤差的。在此狀況下,表決比較器130可抑制以供藉由另一組件使用的資料輸出OUT-1或OUT-2中之任一者之輸出。 表決比較器230可將使用藉由資料處理核心210及220所執行之先前鎖步指令產生的經先前驗證之資料輸出OUT-1或OUT-2保持為其輸出。 若表決比較器230基於信號OUT-1、OUT-2、SLK-1及SLK-2驗證由資料處理核心210及220產生的資料輸出OUT-1及OUT-2(基於資料輸出OUT-1及OUT-2匹配且SLK-1或SLK-2均不指示時序違規),則表決比較器230基於其中使用系統200之應用輸出資料輸出OUT-1或OUT-2中之任一者以供藉由另一組件使用。 另外,表決比較器230亦在資料輸出OUT-1及OUT-2得以驗證的情況下將誤差信號保持為取消確證。 回應於誤差信號ERROR得以取消確證,應答器240將STALL信號保持為取消確證。因此,雙處理核心210及220可繼續以正常(非誤差)方式操作,諸如執行以下鎖步指令。 回應於誤差信號ERROR得以確證,應答器240可確證其暫停信號STALL。 回應於暫停信號STALL得以確證,資料處理核心210及220之操作可暫停,且回至產生經確證之暫停信號STALL的鎖步指令之執行之前的狀態。儘管在此實例中,應答器240暫停資料處理核心且將其各別狀態回至誤差條件之前,但應理解,應答器240可回應於ERROR信號得以確證而執行任何操作。 圖2B說明根據本發明之另一態樣的由表決比較器230執行之例示性方法250的流程圖。根據方法250,表決比較器130自資料處理核心210及220分別接收資料輸出OUT-1及OUT-2及時序違規信號SLK-1及SLK-2(區塊252)。 表決比較器230隨後判定信號SLK-1或SLK-2中之至少一者是否指示時序違規誤差(區塊254)。 若表決比較器230判定信號SLK-1及SLK-2指示無時序違規,則表決比較器230前進以執行在區塊256中指定之操作。若表決比較器230判定信號SLK-1或SLK-2中之至少一者指示時序違規,則表決比較器230使資料輸出OUT-1及OUT-2無效,且產生經確證之誤差信號ERROR,以將資料處理核心210及220之操作暫停及/或執行一些其他操作(區塊260)。 在區塊256中,表決比較器230判定輸出OUT-1是否匹配輸出OUT-2。若表決比較器230判定輸出OUT-1與OUT-2匹配,則表決比較器230驗證資料輸出OUT-1及OUT-2,將其中任一者輸出以供藉由另一組件使用,且將誤差信號ERROR保持為取消確證(區塊258)。 方法250隨後返回至區塊252,以回應於後續的經執行鎖步指令處理由資料處理核心210及220產生的下一組信號OUT-1、OUT-2、SLK-1及SLK-2。 若在區塊256中,表決比較器230判定輸出OUT-1及OUT-2並不匹配,則表決比較器230使資料輸出OUT-1及OUT-2無效且產生經確證誤差信號ERROR,以將資料處理核心210及220之操作暫停及/或執行一些其他操作(區塊258)。應理解,表決比較器230可以不同次序執行在區塊254及256中指示之操作。 圖2C說明根據本發明之另一態樣之例示性表決比較器270的方塊圖。 表決比較器270可為先前論述之表決比較器230的例示性詳細實施。應理解,表決比較器230可以其他方式實施。 表決比較器270包括數位比較器272、繼之以反相器276之或閘274 (例如,總稱為反或閘)、及閘278、閘控器件280及反相器282。 由冗餘資料處理核心210及220產生的資料輸出OUT-1及OUT-2應用於數位比較器272之輸入。 數位比較器272經組態以產生指示資料輸出OUT-1及OUT-2是否匹配的信號M(例如,若信號M位於高邏輯位準,則資料輸出OUT-1與OUT-2匹配;若信號M位於低邏輯位準,則資料輸出OUT-1及OUT-2不匹配)。 由冗餘資料處理核心210及220產生的時序違規信號SLK-1及SLK-2應用於或閘274之輸入。 或閘274經組態以產生指示時序違規信號SLK-1或SLK-2之任一者或兩者是否指示出現在冗餘資料處理核心210或220中之一者或兩者中的時序違規的信號SE(例如,若信號SE位於高邏輯位準,則存在出現在冗餘資料處理核心210及220中之一者或兩者中的時序違規;若信號SE位於低邏輯位準,則不存在出現在冗餘資料處理核心210及220中的時序違規)。 反相器278將信號SE反轉以產生。 信號M及應用於及閘278之各別輸入。及閘278經組態以產生指示資料輸出OUT-1及OUT-2是否有效的啟用信號EN(例如,若啟用信號EN位於高邏輯位準,則資料輸出OUT-1及OUT-2有效;若啟用信號EN位於低邏輯位準,則資料輸出OUT-1及OUT-2並非有效)。啟用信號EN應用於閘控器件280之控制輸入。資料輸出OUT-1或OUT-2中之一者(在此實例中,OUT-1)應用於閘控器件280之資料輸入。 閘控器件280經組態以回應於啟用信號EN經確證(例如,位於高邏輯位準)而輸出資料輸出OUT-1(或OUT-2);及回應於啟用信號EN經取消確證(例如,位於低邏輯位準)而不輸出資料輸出OUT-1(或OUT-2)(例如,三態輸出)。 反相器282將啟用信號EN反轉以產生ERROR信號。ERROR信號指示資料輸出OUT-1及OUT-2是否並非有效(例如,若ERROR信號位於高邏輯位準,則資料輸出OUT-1及OUT-2並非有效;若ERROR信號位於低邏輯位準,則資料輸出OUT-1及OUT-2有效)。 在操作中,在資料輸出OUT-1及OUT-2匹配且不存在時序違規的狀況下,數位比較器272在邏輯高位準產生M信號,且反相器276在邏輯高位準產生信號。 因此,及閘278在邏輯高位準產生啟用信號EN。作為回應,閘控器件280輸出資料輸出OUT-1,且反相器282產生經取消確證之ERROR誤差信號。 在操作中,在資料輸出OUT-1及OUT-2並不匹配且不存在時序違規的狀況下,數位比較器272在邏輯低位準產生M信號,且反相器276在邏輯高位準產生信號。因此,及閘278在邏輯低位準產生啟用信號EN。作為回應,閘控器件280並不輸出資料輸出OUT-1,且反相器282產生經確證ERROR信號。 在資料輸出OUT-1及OUT-2匹配且存在至少一時序違規的狀況下,數位比較器272在邏輯高位準產生M信號,且反相器276在邏輯低位準產生信號。因此,及閘278在邏輯低位準產生啟用信號EN。作為回應,閘控器件280並不輸出資料輸出OUT-1,且反相器282產生經確證ERROR信號。 在資料輸出OUT-1及OUT-2並不匹配且存在至少一時序違規的狀況下,數位比較器272在邏輯低位準產生M信號,且反相器276在邏輯低位準產生信號。 因此,及閘278在邏輯低位準產生啟用信號EN。作為回應,閘控器件280並不輸出資料輸出OUT-1,且反相器282產生經確證ERROR信號。 圖3說明根據本發明之另一態樣的例示性資料處理核心300之方塊圖。 資料處理核心300為先前論述之資料處理核心210及220中之一者或兩者的更詳細實施之實例。 資料處理核心300包括複數個所選擇資料路徑310-1至310-N,其分別包括時序違規偵測電路320-1至320-N(亦稱為鬆弛監視觸發器(SMF))。 如先前論述,此等偵測電路320-1至320-N可實施於核心300之某些臨界資料路徑中。 此等臨界資料路徑可相比於核心中之其他資料路徑具有相對較小鬆弛邊際。鬆弛邊際可被定義為輸入資料位元已達到穩定狀態時與經指定用於正反器的安裝時間之間的時間差;或被定義為輸入資料位元退出穩定狀態時與經指定用於正反器之保持時間之間的時間差。具有相對較小鬆弛邊際的資料路徑可歸因於某些條件呈現時序違規(例如,當上述時間差中之一或多者為負時),諸如供應電壓下降或急劇的溫度上升或梯度。 因此,時序違規偵測電路可實施於臨界資料路徑中以判定核心之資料輸出中是否已出現誤差。由於每一時序違規偵測電路消耗功率,因此出於功率消耗目的,此等偵測電路可僅僅實施於所選擇(例如,臨界)資料路徑(且並非為核心之所有資料路徑)中。所選擇臨界路徑可被定義為具有低於所定義臨限的鬆弛邊際的一個路徑。 如所例示,資料路徑310-1包括輸入鎖存或正反器312-1,其經組態以基於時脈信號CLK接收輸入資料DI-1且輸出資料DI-1。資料路徑310-1可進一步包括串聯耦接至輸入鎖存或正反器312-1之輸出的一或多個額外邏輯電路314-1、315-1、316-1及317-1。 邏輯電路314-1、315-1、316-1及317-1可執行各種操作,且可基於資料路徑310-1的吾人所需之操作接收其他資料。 資料路徑310-1進一步包括耦接至邏輯電路317-1之輸出的時序違規偵測電路320-1。 如所例示,時序違規偵測電路320-1包括具有資料輸入(D)、資料輸出(Q)及時脈輸入(CLK)之輸入鎖存或正反器322-1。正反器322-1在其資料輸入(D)接收邏輯電路317-1之輸出,且在其時脈輸入(CLK)接收時脈信號CLK。另外,時序違規偵測電路320-1進一步包括反相器324-1及比較器(CMP) 326-1。反相器324-1將時脈信號CLK反轉。比較器326-1在正反器322-1之資料輸入(D)接收資料信號,在正反器322-1之資料輸出(Q)接收資料信號DO-1,及接收經反轉時脈信號。比較器326-1產生指示資料路徑310-1中是否出現時序違規的信號SLK-11。 其他資料路徑中之每一者可以類似於資料路徑310-1之彼路徑進行組態。 舉例而言,資料路徑310-N包括輸入鎖存或正反器312-N,其經組態以基於時脈信號CLK接收輸入資料DI-N且輸出資料DI-N。資料路徑310-N可進一步包括串聯耦接至輸入鎖存或正反器312-N之輸出的一或多個額外邏輯電路314-N、315-N、316-N及317-N。 邏輯電路314-N、315-N、316-N及317-1N可執行各種操作,且可基於資料路徑310-N的吾人所需之操作接收其他資料。資料路徑310-N進一步包括耦接至邏輯電路317-N之輸出的時序違規偵測電路320-N。 如所例示,時序違規偵測電路320-N包括具有資料輸入(D)、資料輸出(Q)及時脈輸入(CLK)之輸入鎖存或正反器322-N。正反器322-N在其資料輸入(D)接收邏輯電路317-N之輸出,且在其時脈輸入(CLK)接收時脈信號CLK。 另外,時序違規偵測電路320-N進一步包括反相器324-N及比較器(CMP)326-N。反相器324-N將時脈信號CLK反轉。比較器326-N在正反器322-N之資料輸入(D)接收資料信號,在正反器322-N之資料輸出(Q)接收資料信號DO-1,及接收經反轉時脈信號。比較器326-N產生指示資料路徑310-N中是否已出現時序違規的信號SLK-1N。 如上文所論述,比較器326-1至326-N分別產生對應信號SLK-11至SLK-1N,以指示對應資料路徑310-1至310-N中是否已出現時序違規。 詳言之,每一比較器(326-1至326-N)回應於對應正反器(322-1至322-N0)之對應D-信號及對應Q-信號在經反轉時脈信號之觸發邊緣之時未匹配而確證對應信號(SLK-11至SLK-1N);否則,對應信號(SLK-11至SLK-1N)未經確證。亦即,若比較器判定D-信號及Q-信號在經反轉時脈信號之觸發邊緣之時匹配,則不存在時序違規。否則,若比較器判定D-信號及Q-信號在經反轉時脈信號之觸發邊緣之時並不匹配,隨後存在時序違規。 可將信號SLK-11至SLK-1N(例如,在系統200中總稱為SLK-1)中之每一者應用於表決比較器230或經由多輸入或閘或多工器(圖中未示)應用。 圖4說明根據本發明之另一態樣的例示性資料處理系統400之方塊圖。 先前例示性資料處理系統200包括兩個冗餘資料處理核心210及220。應理解,本文中所描述之技術可適用於具有N數目個資料處理核心的系統,其中N為兩個或兩個以上(例如,具有三(3)個資料處理核心之TMR系統,如在本文中進一步例示)。 資料處理系統400為此系統之實例。 系統400包括N個冗餘資料處理核心410-1至410-N,其經組態以回應於鎖步指令產生N個資料輸出OUT-1至OUT-N及N個時序違規信號SLK-1至SLK-N。 信號OUT-1至OUT-N及SLK-1至SLK-N被應用於產生一輸出及一誤差信號ERROR的表決比較器430。 表決比較器430在以下情況下驗證一對資料輸出OUT-1至OUT-N中的任一者且將其輸出:此等輸出匹配且對應的一對時序違規信號SLK-1至SLK-N並不指示時序違規。 在此狀況下,表決比較器430將誤差信號保持為取消確證。 若不存在與指示無時序違規的對應時序違規信號SLK-1至SLK-N匹配的至少一對資料輸出OUT-1至OUT-N,則表決比較器430使資料輸出OUT-1至OUT-N無效,抑制其中任一者之輸出,且亦確證ERROR信號。 視情況,表決比較器430可基於先前經執行鎖步指令集合輸出由處理核心410-1至410-N產生的先前經驗證之資料輸出。 系統400包括應答器440,其經組態以回應於經確證誤差信號ERROR產生控制信號CS。 舉例而言,控制信號CS可經組態以控制一或多個所定義之操作,諸如將資料處理核心410-1至410-N暫停,且將其組態為在產生經確證之誤差信號ERROR的鎖步指令之執行之前的各別狀態。 控制信號CS可並不回應於未經確證之誤差信號ERROR(例如,取消確證)控制任何操作。 圖5A說明根據本發明之另一態樣的例示性三重模組冗餘(TMR)系統500之方塊圖。TMR系統500包括冗餘資料處理核心510-1、510-2及510-3,表決比較器530及應答器540。 冗餘資料處理核心510-1、510-2及510-3回應於執行鎖步指令而分別產生其各別資料輸出及時序違規信號(OUT-1, SLK-1)、(OUT-2, SLK-2)及(OUT-3, SLK-3)。表決比較器530分別自資料處理核心510-1、510-2及510-3接收信號(OUT-1, SLK-1)、(OUT-2, SLK-2)及(OUT-3, SLK-3)。 表決比較器530在資料輸出中的至少兩者被視為正確或可信賴資料的情況下驗證資料輸出OUT-1至OUT-3,且將其中任一者輸出以供另一者使用。 若資料輸出中的至少兩者匹配且對應至少兩個時序違規信號指示無時序違規,則資料輸出被視為正確或可信賴資料。若表決比較器530判定資料輸出OUT-1至OUT-3有效,則表決比較器530將ERROR信號保持為取消確證。 作為第一實例,若三個資料輸出OUT-1、OUT-2及OUT-3之所有者均匹配,且時序違規信號SLK-1、SLK-2及SLK-3之全部三者均指示無時序違規,則表決比較器530驗證資料輸出OUT-1、OUT-2及OUT-3,且將其中一者輸出以供另一組件使用。 作為另一實例,若資料輸出OUT-1與OUT-2匹配,資料輸出OUT-3與OUT-1及OUT-2並不匹配,且時序違規信號SLK-1及SLK-2指示無時序違規,則表決比較器530驗證資料輸出OUT-1及OUT-2,且將其中一者輸出以供藉由另一組件使用。在此狀況下,表決比較器530使資料輸出OUT-3無效(例如,因為其與OUT-1及OUT-2並不匹配而被視為不正確或不可靠資料)。 類似地,若資料輸出OUT-2及OUT-3匹配且時序違規SLK-2及SLK-3指示無時序違規,則表決比較器530驗證資料輸出OUT-2及OUT-3,且將其中一者輸出以供藉由另一組件使用;及由於OUT-1與OUT-2及OUT-3並不匹配而使其無效。 以類似方式,若資料輸出OUT-1及OUT-3匹配且時序違規SLK-1及SLK-3指示無時序違規,則表決比較器530驗證資料輸出OUT-1及OUT-3,且輸出其中一者以供藉由另一組件使用;及由於OUT-2與OUT-2及OUT-3並不匹配而使其無效。 表決比較器530可在所有資料輸出被視為不正確或不可靠資料(經失效)的情況下抑制資料輸出OUT-1、OUT-2及OUT-3中之任一者的輸出。 資料輸出在以下條件中之任一者出現的情況下係無效的:(1)所有三個資料輸出OUT-1、OUT-2及OUT-3不同;(2)資料輸出OUT-1/OUT-2、OUT-1/OUT-3或OUT-2/OUT-3中之僅僅兩者匹配,但其對應時序信號SLK-1/SLK-2、SLK-1/SLK-3或SLK-2/SLK-3中之至少一者指示一時序違規;或(3)時序違規信號SLK-1、SLK-2及SLK-3中之兩者或兩者以上指示時序違規。在此狀況下,表決比較器530可輸出來自藉由資料處理核心510-1至510-3執行之先前鎖步指令集合的經驗證資料輸出OUT-1、OUT-2或OUT-3。 另外,表決比較器530確證ERROR信號。 應答器540基於ERROR信號之狀態產生或變化控制信號CS之狀態(經確證與取消確證)。舉例而言,若誤差信號由於自資料處理核心510-1至510-3接收之資料得以驗證而藉由表決比較器530保持為取消確證,則應答器540可並非產生控制信號CS或將控制信號CS保持為取消確證。換言之,應答器540可在自資料處理核心510-1至510-3接收之資料被視為有效的情況下不執行動作。 若誤差信號由於自資料處理核心510-1至510-3接收之資料被視為無效而藉由表決比較器530確證,則應答器540產生或確證控制信號CS。換言之,應答器540在自資料處理核心510-1至510-3接收之資料被視為不正確或不可靠資料的情況下執行一或多個所定義操作。 如先前論述,此等一或多個所定義操作包括將冗餘處理核心510-1至510-3之操作暫停,及將其組態為在產生不正確或不可靠資料的鎖步指令之執行之前的各別狀態。 圖5B說明根據本發明之另一態樣的處理來自冗餘資料處理核心之資料輸出之例示性方法550的流程圖。 方法550可藉由表決比較器530實施。根據方法550,回應於藉由資料處理核心510-1至510-3進行的鎖步指令集合之執行,表決比較器530分別自資料處理核心510-1至510-3接收輸出OUT-1/SLK-1、OUT-2/SLK-2及OUT-3/SLK-3(區塊552)。 根據方法550,表決比較器530判定時序違規信號SLK-1、SLK-2及SLK-3中之兩者或兩者以上是否指示時序違規(區塊554)。 若表決比較器530判定時序違規信號SLK-1、SLK-2及SLK-3中之兩者或兩者以上指示時序違規,則表決比較器530使資料輸出OUT-1至OUT-3無效,且確證ERROR信號以使得應答器540執行所定義操作(區塊560)。 應理解,表決比較器530可執行一或多個其他操作,諸如抑制資料輸出OUT-1至OUT-3中之任一者的輸出。 若在區塊554中,表決比較器530判定至少兩個對應時序違規信號指示無時序違規,則表決比較器530判定對應於至少兩個時序違規信號的資料輸出OUT-1至OUT-3是否匹配(區塊556)。 若是,則資料處理核心510-1至510-3之至少兩個資料輸出藉由表決比較器530視為有效的,且表決比較器530輸出其中一者以供藉由另一組件使用(區塊558)。在此狀況下,表決比較器530將誤差信號保持為取消確證。 若在區塊556中,表決比較器530判定在對應時序違規信號指示無時序違規的情況下不存在兩個匹配資料輸出,則表決比較器530使資料輸出OUT-1至OUT-3無效,且確證ERROR信號以使得應答器540執行所定義操作(區塊560)。 如上文所論述,應理解,表決比較器530可執行一或多個其他操作,諸如抑制資料輸出OUT-1至OUT-3中之任一者的輸出。 圖5C說明根據本發明之另一態樣之另一例示性表決比較器570的方塊圖。 表決比較器570可為先前論述之表決比較器530的例示性詳細實施。應理解,表決比較器530可以其他方式實施。 表決比較器570包括數位比較器572、繼之以第一反相器576之第一或閘573(例如,總稱為第一反或閘)、第一及閘579、繼之以第二反相器577之第二或閘574(例如,總稱為第二反或閘)、第二及閘580、繼之以第三反相器578之第三或閘575(例如,總稱為第三反或閘)、第三及閘581、解碼器582、多工器583及反或閘584。 由冗餘資料處理核心510-1、510-2及510-3產生的資料輸出OUT-1、OUT-2及OUT-3應用於數位比較器572之各別輸入。 數位比較器572經組態以產生指示資料輸出OUT-1及OUT-2是否匹配的信號M12
(例如,若信號M12
位於高邏輯位準,則資料輸出OUT-1與OUT-2匹配;若信號M12
位於低邏輯位準,則資料輸出OUT-1及OUT-2不匹配)。數位比較器572亦經組態以產生指示資料輸出OUT-1及OUT-3是否匹配的信號M13
(例如,若信號M13
位於高邏輯位準,則資料輸出OUT-1與OUT-3匹配;若信號M13
位於低邏輯位準,則資料輸出OUT-1及OUT-3不匹配)。 此外,數位比較器572經組態以產生指示資料輸出OUT-2及OUT-3是否匹配的信號M23
(例如,若信號M23
位於高邏輯位準,則資料輸出OUT-2與OUT-3匹配;若信號M23
位於低邏輯位準,則資料輸出OUT-2及OUT-3不匹配)。 由冗餘資料處理核心510-1及510-2產生的時序違規信號SLK-1及SLK-2應用於第一或閘573之各別輸入。第一或閘573經組態以產生指示時序違規信號SLK-1或SLK-2之任一者或兩者是否指示發生於冗餘資料處理核心510-1或510-2中之一者或兩者中的信號SE12
(例如,若信號SE12
位於高邏輯位準,則存在發生於冗餘資料處理核心510-1及510-2中之一者或兩者中的時序違規;若信號SE12
位於低邏輯位準,則不存在發生於冗餘資料處理核心510-1及510-2中的時序違規)。 第一反相器576將信號SE12
反轉以產生。 類似地,由冗餘資料處理核心510-1及510-3產生的時序違規信號SLK-1及SLK-3應用於第二或閘574之各別輸入。第二或閘574經組態以產生指示時序違規信號SLK-1或SLK-3之任一者或兩者是否指示發生於冗餘資料處理核心510-1或510-3中之一者或兩者中的時序違規的信號SE13
(例如,若信號SE13
位於高邏輯位準,則存在發生於冗餘資料處理核心510-1及510-3中之一者或兩者中的時序違規;若信號SE13
位於低邏輯位準,則不存在發生於冗餘資料處理核心510-1及510-3中的時序違規)。 第二反相器577將信號SE13
反轉以產生。 以類似方式,由冗餘資料處理核心510-2及510-3產生的時序違規信號SLK-2及SLK-3應用於第三或閘575之各別輸入。 第三或閘575經組態以產生指示時序違規信號SLK-2或SLK-3之任一者或兩者是否指示發生於冗餘資料處理核心510-2或510-3中之一者或兩者中的時序違規的信號SE23
(例如,若信號SE23
位於高邏輯位準,則存在發生於冗餘資料處理核心510-2及510-3中之一者或兩者中的時序違規;若信號SE23
位於低邏輯位準,則不存在發生於冗餘資料處理核心510-2及510-3中的時序違規)。 第三反相器578將信號SE23
反轉以產生。 信號M12
及應用於第一及閘579之各別輸入。第一及閘579經組態以產生指示資料輸出OUT-1及OUT-2是否有效的第一啟用信號EN1
(例如,若啟用信號EN1
位於高邏輯位準,則資料輸出OUT-1及OUT-2有效;若啟用信號EN1
位於低邏輯位準,則資料輸出OUT-1及OUT-2並非有效)。 類似地,信號M13
及應用於第二及閘580之各別輸入。 第二及閘580經組態以產生指示資料輸出OUT-1及OUT-3是否有效的第二啟用信號EN2
(例如,若啟用信號EN2
位於高邏輯位準,則資料輸出OUT-1及OUT-3有效;若啟用信號EN2
位於低邏輯位準,則資料輸出OUT-1及OUT-3並非有效)。 以類似方式,信號M23
及應用於第三及閘581之各別輸入。 第三及閘581經組態以產生指示資料輸出OUT-2及OUT-3是否有效的第三啟用信號EN3
(例如,若啟用信號EN3
位於高邏輯位準,則資料輸出OUT-2及OUT-3有效;若啟用信號EN3
位於低邏輯位準,則資料輸出OUT-2及OUT-3並非有效)。 第一、第二及第三啟用信號EN1
、EN2
及EN3
應用於解碼器582之各別輸入。 解碼器582經組態以基於啟用信號EN1
、EN2
及EN3
產生二進位選擇信號SEL。 舉例而言,解碼器582可根據下表產生二進位選擇信號SEL:
因此,根據該表,若啟用信號EN1
、EN2
及EN3
由於不存在與無時序違規相關聯的匹配資料輸出對而全部位於邏輯低位準,則解碼器582輸出具有值0之二進位選擇信號SEL。 此值使得多工器583之輸出經三態(例如,呈現高阻抗)。 此值亦使得反或閘584在邏輯高位準產生經確證ERROR信號,以指示資料輸出OUT-1、OUT-2及OUT-3全部無效。 若啟用信號EN1
高(例如,意謂著資料輸出OUT-1及OUT-2有效)且其他啟用信號EN2
及EN3
低(例如,意謂著資料輸出OUT-3無效),則解碼器582輸出具有值1之二進位選擇信號SEL。 由於資料輸出OUT-1、OUT-2、OUT-3應用於多工器583之各別輸入,因此值為1的SEL信號使得多工器583輸出資料輸出OUT-1或OUT-2。 SEL值1亦使得反或閘584在邏輯低位準產生取消確證ERROR信號,以指示存在有效資料輸出。 若啟用信號EN2
高(例如,意謂著資料輸出OUT-1及OUT-3有效)且其他啟用信號EN1
及EN3
低(例如,意謂著資料輸出OUT-2無效),則解碼器582輸出具有值2之二進位選擇信號SEL。值為2之SEL信號使得多工器583輸出資料輸出OUT-1或OUT-3。SEL值2亦使得反或閘584在邏輯低位準產生取消確證ERROR信號,以指示存在有效資料輸出。 若啟用信號EN3
高(例如,意謂著資料輸出OUT-2及OUT-3有效)且其他啟用信號EN1
及EN2
低(例如,意謂著資料輸出OUT-1無效),則解碼器582輸出具有值3之二進位選擇信號SEL。值為3之SEL信號使得多工器583輸出資料輸出OUT-2或OUT-3。SEL值3亦使得反或閘584在邏輯低位準產生取消確證ERROR信號,以指示存在有效資料輸出。 若所有啟用信號EN1
、EN2
及EN3
高(例如,意謂著所有資料輸出OUT-1、OUT-2及OUT-3有效),則解碼器582在以下值1、2或3中之任一者輸出二進位選擇信號SEL。 值為1、2或3的SEL信號使得多工器583輸出資料輸出OUT-1、OUT-2或OUT-3。 SEL值1、2或3亦使得反或閘584在邏輯低位準產生取消確證ERROR信號,以指示存在有效資料輸出。 應注意,無法出現具有兩個經確證啟用信號之組合。因此,該表將彼等組合指示為不適用(N/A)。 圖6說明根據本發明之另一態樣的處理資料輸出之另一例示性方法600之流程圖。 方法600包括回應於執行鎖步指令集合中之一者產生第一資料輸出及第一時序違規信號(區塊610)。 用於回應於執行鎖步指令集合中之一者產生第一資料輸出及第一時序違規信號的構件之實例包括本文中所描述之資料處理核心210、220、410-1至410-N或510-1至510-3中之任一者。 方法600進一步包括回應於執行鎖步指令集合中之另一者產生第二資料輸出及第二時序違規(區塊620)。 類似地,用於回應於執行鎖步指令集合中之另一者產生第二資料輸出及第二時序違規信號的構件之實例包括本文中所描述之資料處理核心210、220、410-1至410-N或510-1至510-3中之任一者。 方法600另外包括回應於第一資料輸出匹配第二資料輸出且第一及第二時序違規信號指示無時序違規而驗證第一及第二資料輸出(區塊630)。用於回應於第一資料輸出匹配第二資料輸出且第一及第二時序違規信號指示無時序違規而驗證第一及第二資料輸出的構件之實例包括本文中所描述之表決比較器230、430或540中的任一者。 提供本發明之先前描述以使任何熟習此項技術者能夠製作或使用本發明。 熟習此項技術者將易於理解對本發明之各種修改,且本文中定義之一般原理可在不背離本發明之精神或範疇的情況下應用於其他變體。 因此,本發明並不意欲限於本文中所描述之實例,而應符合與本文中所揭示之原理及新穎特徵相一致的最廣泛範疇。
100‧‧‧鎖步雙核系統
110‧‧‧冗餘資料處理核心
120‧‧‧冗餘資料處理核心
130‧‧‧表決比較器
140‧‧‧應答器
150‧‧‧方法
152-158‧‧‧區塊
200‧‧‧鎖步雙核處理系統
210‧‧‧第一冗餘資料處理核心
220‧‧‧第二冗餘資料處理核心
230‧‧‧表決比較器
240‧‧‧應答器
250‧‧‧方法
252~260‧‧‧區塊
270‧‧‧表決比較器
272‧‧‧數位比較器
274‧‧‧或閘
276‧‧‧反相器
278‧‧‧及閘
280‧‧‧閘控器件
282‧‧‧反相器
300‧‧‧資料處理核心
310-1-310-N‧‧‧所選擇資料路徑
312-1-312-N‧‧‧輸入鎖存或正反器
314-1-314-N‧‧‧邏輯電路
315-1-315-N‧‧‧邏輯電路
316-1-316-N‧‧‧邏輯電路
317-1-317-N‧‧‧邏輯電路
320-1-320-N‧‧‧時序違規偵測電路
322-1-322-N‧‧‧正反器
324-1-324-N‧‧‧反相器
326-1-326-N‧‧‧比較器
400‧‧‧資料處理系統
410-1-410-N‧‧‧冗餘資料處理核心
430‧‧‧表決比較器
440‧‧‧應答器
500‧‧‧三重模組冗餘(TMR)系統
510-1-510-3‧‧‧資料處理核心
530‧‧‧表決比較器
540‧‧‧應答器
550‧‧‧方法
552-560‧‧‧區塊
570‧‧‧表決比較器
572‧‧‧數位比較器
573‧‧‧第一或閘
574‧‧‧第二或閘
575‧‧‧第三或閘
576‧‧‧第一反相器
577‧‧‧第二反相器
578‧‧‧第三反相器
579‧‧‧第一及閘
580‧‧‧第二及閘
581‧‧‧第三及閘
582‧‧‧解碼器
583‧‧‧多工器
584‧‧‧反或閘
600‧‧‧方法
610‧‧‧區塊
620‧‧‧區塊
630‧‧‧區塊
CLK‧‧‧時脈信號
CS‧‧‧控制信號
DI-1-DI-N‧‧‧輸入資料
DO-1-DO-N‧‧‧輸出資料
EN1‧‧‧第一啟用信號
EN2‧‧‧第二啟用信號
EN3‧‧‧第三啟用信號
ERROE‧‧‧誤差信號
M‧‧‧信號
M12‧‧‧信號
M13‧‧‧信號
M23‧‧‧信號
OUT-1-OUT-N‧‧‧資料輸出
SE‧‧‧信號
‧‧‧信號
SE12‧‧‧信號
‧‧‧信號
SE13‧‧‧信號
‧‧‧信號
SE23‧‧‧信號
‧‧‧信號
SEL‧‧‧二進位選擇信號
SLK-1-SLK-3‧‧‧時序違規信號
SLK-11~SLK-1N‧‧‧對應信號
STALL‧‧‧暫停信號
110‧‧‧冗餘資料處理核心
120‧‧‧冗餘資料處理核心
130‧‧‧表決比較器
140‧‧‧應答器
150‧‧‧方法
152-158‧‧‧區塊
200‧‧‧鎖步雙核處理系統
210‧‧‧第一冗餘資料處理核心
220‧‧‧第二冗餘資料處理核心
230‧‧‧表決比較器
240‧‧‧應答器
250‧‧‧方法
252~260‧‧‧區塊
270‧‧‧表決比較器
272‧‧‧數位比較器
274‧‧‧或閘
276‧‧‧反相器
278‧‧‧及閘
280‧‧‧閘控器件
282‧‧‧反相器
300‧‧‧資料處理核心
310-1-310-N‧‧‧所選擇資料路徑
312-1-312-N‧‧‧輸入鎖存或正反器
314-1-314-N‧‧‧邏輯電路
315-1-315-N‧‧‧邏輯電路
316-1-316-N‧‧‧邏輯電路
317-1-317-N‧‧‧邏輯電路
320-1-320-N‧‧‧時序違規偵測電路
322-1-322-N‧‧‧正反器
324-1-324-N‧‧‧反相器
326-1-326-N‧‧‧比較器
400‧‧‧資料處理系統
410-1-410-N‧‧‧冗餘資料處理核心
430‧‧‧表決比較器
440‧‧‧應答器
500‧‧‧三重模組冗餘(TMR)系統
510-1-510-3‧‧‧資料處理核心
530‧‧‧表決比較器
540‧‧‧應答器
550‧‧‧方法
552-560‧‧‧區塊
570‧‧‧表決比較器
572‧‧‧數位比較器
573‧‧‧第一或閘
574‧‧‧第二或閘
575‧‧‧第三或閘
576‧‧‧第一反相器
577‧‧‧第二反相器
578‧‧‧第三反相器
579‧‧‧第一及閘
580‧‧‧第二及閘
581‧‧‧第三及閘
582‧‧‧解碼器
583‧‧‧多工器
584‧‧‧反或閘
600‧‧‧方法
610‧‧‧區塊
620‧‧‧區塊
630‧‧‧區塊
CLK‧‧‧時脈信號
CS‧‧‧控制信號
DI-1-DI-N‧‧‧輸入資料
DO-1-DO-N‧‧‧輸出資料
EN1‧‧‧第一啟用信號
EN2‧‧‧第二啟用信號
EN3‧‧‧第三啟用信號
ERROE‧‧‧誤差信號
M‧‧‧信號
M12‧‧‧信號
M13‧‧‧信號
M23‧‧‧信號
OUT-1-OUT-N‧‧‧資料輸出
SE‧‧‧信號
‧‧‧信號
SE12‧‧‧信號
‧‧‧信號
SE13‧‧‧信號
‧‧‧信號
SE23‧‧‧信號
‧‧‧信號
SEL‧‧‧二進位選擇信號
SLK-1-SLK-3‧‧‧時序違規信號
SLK-11~SLK-1N‧‧‧對應信號
STALL‧‧‧暫停信號
圖1A說明根據本發明之一態樣的例示性鎖步雙核處理系統之方塊圖。 圖1B說明根據本發明之另一態樣的在冗餘資料處理核心中之至少一者之操作中偵測誤差的例示性方法之流程圖。 圖2A說明根據本發明之另一態樣的另一例示性鎖步雙核處理系統之方塊圖。 圖2B說明根據本發明之另一態樣的偵測假通條件之例示性方法的流程圖。 圖2C說明根據本發明之另一態樣之例示性表決比較器的方塊圖。 圖3說明根據本發明之另一態樣的例示性資料處理核心之方塊圖。 圖4說明根據本發明之另一態樣的另一例示性鎖步雙處理核心系統之方塊圖。 圖5A說明根據本發明之另一態樣的例示性三重模組冗餘(TMR)系統之方塊圖。 圖5B說明根據本發明之另一態樣的處理來自冗餘資料處理核心之資料輸出之例示性方法的流程圖。 圖5C說明根據本發明之另一態樣之另一例示性表決比較器的方塊圖。 圖6說明根據本發明之另一態樣的處理資料輸出之另一例示性方法之流程圖。
200‧‧‧鎖步雙核處理系統
210‧‧‧第一冗餘資料處理核心
220‧‧‧第二冗餘資料處理核心
230‧‧‧表決比較器
240‧‧‧應答器
ERROR‧‧‧誤差信號
OUT-1‧‧‧資料輸出
OUT-2‧‧‧資料輸出
SLK-1‧‧‧時序違規信號
SLK-2‧‧‧時序違規信號
STALL‧‧‧暫停信號
Claims (29)
- 一種裝置,其包含: 一第一處理核心,該第一處理核心經組態以回應於執行一鎖步指令集合中之一者產生一第一資料輸出及一第一時序違規信號; 一第二處理核心,該第二處理核心經組態以回應於執行該鎖步指令集合中之另一者產生一第二資料輸出及一第二時序違規信號;及 一表決比較器,該表決比較器經組態以回應於該第一資料輸出匹配該第二資料輸出且該等第一及第二時序違規信號指示無時序違規而驗證該等第一及第二資料輸出。
- 如請求項1之裝置,其中該表決比較器經進一步組態以回應於該第一資料輸出未匹配該第二資料輸出或該第一時序信號或該第二時序信號中之至少一者指示一時序違規而使該第一或第二資料輸出中之至少一者失效。
- 如請求項1之裝置,其中該表決比較器經組態以輸出該經驗證第一或第二資料輸出中之至少一者。
- 如請求項1之裝置,其中該表決比較器經組態以在該第一及第二資料輸出中之至少一者被視為無效的情況下抑制輸出該第一或第二資料輸出中之該至少一者。
- 如請求項1之裝置,其進一步包含一應答器,該應答器經組態以基於由該表決比較器產生的一經確證誤差信號執行一所定義操作。
- 如請求項5之裝置,其中該所定義操作包含將該等第一及第二資料處理核心之該操作暫停。
- 如請求項5之裝置,其中該所定義操作包含將該等第一及第二資料處理核心分別重新組態至該鎖步指令集合之該執行之前的狀態。
- 如請求項1之裝置,其進一步包含一應答器,該應答器經組態以不對由該表決比較器產生的一取消確證誤差信號作出回應。
- 如請求項1之裝置,其中該等第一或第二資料處理核心中之至少一者包含一時序違規偵測電路,該時序違規偵測電路經組態以產生該至少第一或第二時序違規信號。
- 如請求項9之裝置,其中該時序違規偵測電路包含: 一正反器,其包含: 一時脈輸入,其經組態以接收一時脈信號; 一資料輸入,其經組態以自一邏輯電路接收一第一資料;及 一資料輸出,其經組態以回應於該時脈信號之一觸發部分輸出一第二資料; 一反相器,其經組態以自該時脈信號產生一經反轉時脈信號;及 一比較器,其包含: 一第一輸入,其經組態以接收該第一資料; 一第二輸入,其經組態以接收該第二資料; 一第三輸入,其經組態以接收該經反轉時脈信號,其中該比較器經組態以回應於在該經反轉時脈信號之一觸發部分期間該第一資料未匹配該第二資料而確證該第一或第二時序違規信號。
- 如請求項1之裝置,其中該第一或第二資料處理核心中之至少一者包含經組態以產生該至少第一或第二時序違規信號的複數個時序違規偵測電路,其中該等時序違規偵測電路分別用於該第一或第二資料處理核心中之該至少一者內的所選擇資料路徑中。
- 一種方法,其包含: 回應於執行一鎖步指令集合中之一者產生一第一資料輸出及一第一時序違規信號; 回應於執行該鎖步指令集合中之另一者產生一第二資料輸出及一第二時序違規信號;及 回應於該第一資料輸出匹配該第二資料輸出且該等第一及第二時序違規信號指示無時序違規而驗證該等第一及第二資料輸出。
- 如請求項12之方法,其進一步包含回應於該第一資料輸出未匹配該第二資料輸出或該第一時序信號或第二時序信號中之至少一者指示一時序違規而使該第一或第二資料輸出中之至少一者失效。
- 如請求項12之方法,其進一步包含輸出該經驗證第一或第二資料輸出中之至少一者。
- 如請求項12之方法,其進一步包含在該第一或第二資料輸出中之至少一者被認為無效的情況下抑制該第一或第二資料輸出中之該至少一者的一輸出。
- 如請求項12之方法,其進一步包含回應於使該等第一及第二資料輸出無效而執行一所定義操作。
- 如請求項16之方法,其中該所定義操作包含分別將產生該等經失效第一及第二資料輸出的該等第一及第二資料處理核心之各別操作暫停。
- 如請求項16之方法,其中該所定義操作包含將該等第一及第二資料處理核心分別重新組態至該鎖步指令集合之該執行之前的狀態。
- 如請求項12之方法,其中產生該第一或第二時序違規信號中之該至少一者包含: 接收一第一資料; 回應於一時脈信號之一第一觸發部分接收一第二資料; 回應於一經反轉時脈信號之一第二觸發部分而將該第一資料與該第二資料進行比較;及 基於該比較,回應於該第一資料未匹配該第二資料而確證該至少第一或第二時序違規信號。
- 如請求項12之方法,其中產生該至少第一或第二時序違規信號包含分別監視該至少第一或第二資料處理核心內的所選擇資料路徑中之時序違規。
- 一種裝置,其包含: 用於回應於執行一鎖步指令集合中之一者產生一第一資料輸出及一第一時序違規信號的構件; 用於回應於執行該鎖步指令集合中之另一者產生一第二資料輸出及一第二時序違規信號的構件;及 用於回應於該第一資料輸出匹配該第二資料輸出且該等第一及第二時序違規信號指示無時序違規而驗證該等第一及第二資料輸出的構件。
- 如請求項21之裝置,其進一步包含用於回應於該第一資料輸出未匹配該第二資料輸出或該第一時序信號或該第二時序信號中之至少一者指示一時序違規而使該第一或第二資料輸出中之至少一者失效的構件。
- 如請求項21之裝置,其進一步包含用於輸出該經驗證第一或第二資料輸出中之至少一者的構件。
- 如請求項21之裝置,其進一步包含用於抑制被視為無效之該第一或第二資料輸出中之至少一者的一輸出的構件。
- 如請求項21之裝置,其進一步包含用於回應於使該等第一及第二資料輸出無效而執行一所定義操作的構件。
- 如請求項25之裝置,其中該所定義操作包含分別將產生該等經失效第一及第二資料輸出的第一及第二資料處理核心之各別操作暫停。
- 如請求項25之裝置,其中該所定義操作包含將該等第一及第二資料處理核心分別重新組態至該鎖步指令集合之該執行之前的狀態。
- 如請求項21之裝置,其中用於產生該第一或第二時序違規信號中之至少一者的該構件包含: 用於接收一第一資料的構件; 用於回應於一時脈信號之一第一觸發部分接收一第二資料的構件; 用於回應於一經反轉時脈信號之一第二觸發部分而將該第一資料與該第二資料進行比較的構件;及 用於基於該比較,回應於該第一資料未匹配該第二資料而確證該至少第一或第二時序違規信號的構件。
- 如請求項21之裝置,其中用於產生該至少第一或第二時序違規信號的該構件包含用於分別監視該至少第一或第二資料處理核心內的所選擇資料路徑中之時序違規的構件。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/176,745 US10089194B2 (en) | 2016-06-08 | 2016-06-08 | System and method for false pass detection in lockstep dual core or triple modular redundancy (TMR) systems |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201743202A true TW201743202A (zh) | 2017-12-16 |
Family
ID=58745381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106115151A TW201743202A (zh) | 2016-06-08 | 2017-05-08 | 於鎖步雙核或三重模組冗餘(tmr)系統中用於假通偵測之系統及方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10089194B2 (zh) |
TW (1) | TW201743202A (zh) |
WO (1) | WO2017213779A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11314569B2 (en) | 2019-12-04 | 2022-04-26 | Industrial Technology Research Institute | Redundant processing node changing method and processor capable of changing redundant processing node |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10331532B2 (en) * | 2017-01-19 | 2019-06-25 | Qualcomm Incorporated | Periodic non-intrusive diagnosis of lockstep systems |
US10474619B2 (en) * | 2017-05-19 | 2019-11-12 | General Electric Company | Methods for managing communications involving a lockstep processing system |
US10303566B2 (en) * | 2017-07-10 | 2019-05-28 | Arm Limited | Apparatus and method for checking output data during redundant execution of instructions |
US10606764B1 (en) * | 2017-10-02 | 2020-03-31 | Northrop Grumman Systems Corporation | Fault-tolerant embedded root of trust using lockstep processor cores on an FPGA |
US10802932B2 (en) * | 2017-12-04 | 2020-10-13 | Nxp Usa, Inc. | Data processing system having lockstep operation |
CN108711212B (zh) * | 2018-05-21 | 2021-03-09 | 中国联合网络通信集团有限公司 | 投票存证方法、装置及系统 |
US10725873B2 (en) * | 2018-06-01 | 2020-07-28 | Arm Limited | Lockstep processing systems and methods |
CN109739693B (zh) * | 2018-12-13 | 2022-06-24 | 上海航天控制技术研究所 | 货运飞船对接机构仲裁表决系统及其表决方法 |
CN110413456B (zh) * | 2019-07-30 | 2023-05-26 | 上海航天计算机技术研究所 | 三冗余数据逐级表决系统及方法 |
CN111522331B (zh) * | 2020-05-20 | 2021-05-04 | 中国商用飞机有限责任公司 | 一种飞控系统四余度信号监控表决方法 |
CN111679621B (zh) * | 2020-07-15 | 2020-12-08 | 南京科远智慧科技集团股份有限公司 | 一种三重冗余中提高电流输出可靠性的电路方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU625293B2 (en) * | 1988-12-09 | 1992-07-09 | Tandem Computers Incorporated | Synchronization of fault-tolerant computer system having multiple processors |
US5295258A (en) * | 1989-12-22 | 1994-03-15 | Tandem Computers Incorporated | Fault-tolerant computer system with online recovery and reintegration of redundant components |
US5226152A (en) * | 1990-12-07 | 1993-07-06 | Motorola, Inc. | Functional lockstep arrangement for redundant processors |
US5233615A (en) * | 1991-06-06 | 1993-08-03 | Honeywell Inc. | Interrupt driven, separately clocked, fault tolerant processor synchronization |
US5398331A (en) * | 1992-07-08 | 1995-03-14 | International Business Machines Corporation | Shared storage controller for dual copy shared data |
JPH0773059A (ja) * | 1993-03-02 | 1995-03-17 | Tandem Comput Inc | フォールトトレラント型コンピュータシステム |
US5630056A (en) * | 1994-09-20 | 1997-05-13 | Stratus Computer, Inc. | Digital data processing methods and apparatus for fault detection and fault tolerance |
US6256753B1 (en) * | 1998-06-30 | 2001-07-03 | Sun Microsystems, Inc. | Bus error handling in a computer system |
US8185812B2 (en) * | 2003-03-20 | 2012-05-22 | Arm Limited | Single event upset error detection within an integrated circuit |
US7278126B2 (en) | 2004-05-28 | 2007-10-02 | Qualcomm Incorporated | Method and apparatus for fixing hold time violations in a circuit design |
US7747932B2 (en) | 2005-06-30 | 2010-06-29 | Intel Corporation | Reducing the uncorrectable error rate in a lockstepped dual-modular redundancy system |
US7797575B2 (en) * | 2007-04-04 | 2010-09-14 | International Business Machines Corporation | Triple voting cell processors for single event upset protection |
US20100115245A1 (en) | 2008-10-30 | 2010-05-06 | Atsuya Okazaki | Detecting and recovering from timing violations of a processor |
EP2221723A1 (en) | 2009-02-20 | 2010-08-25 | Robert Bosch Gmbh | Dual core processor and a method of error detection in a dual core processor |
US7969216B2 (en) | 2009-11-06 | 2011-06-28 | Bae Systems Information And Electronic Systems Integration Inc. | System and method for improved timing synchronization |
US8499193B2 (en) | 2010-07-30 | 2013-07-30 | Honeywell International Inc. | Integrated dissimilar high integrity processing |
US20120066551A1 (en) * | 2010-09-15 | 2012-03-15 | Alexandre Palus | Run-time Verification of CPU Operation |
US9047184B2 (en) | 2012-07-13 | 2015-06-02 | Arm Limited | Processing error detection within pipeline circuitry |
US9122891B2 (en) | 2013-08-12 | 2015-09-01 | Microsoft Technology Licensing, Llc | Functional timing sensors |
US9235673B2 (en) | 2014-05-28 | 2016-01-12 | Freescale Semiconductor, Inc. | Apparatus for and a method of making a hierarchical integrated circuit design of an integrated circuit design, a computer program product and a non-transitory tangible computer readable storage medium |
US10452493B2 (en) * | 2016-05-24 | 2019-10-22 | Virginia Tech Intellectual Properties, Inc. | Microprocessor fault detection and response system |
-
2016
- 2016-06-08 US US15/176,745 patent/US10089194B2/en not_active Expired - Fee Related
-
2017
- 2017-05-08 WO PCT/US2017/031542 patent/WO2017213779A1/en active Application Filing
- 2017-05-08 TW TW106115151A patent/TW201743202A/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11314569B2 (en) | 2019-12-04 | 2022-04-26 | Industrial Technology Research Institute | Redundant processing node changing method and processor capable of changing redundant processing node |
Also Published As
Publication number | Publication date |
---|---|
WO2017213779A1 (en) | 2017-12-14 |
US20170357557A1 (en) | 2017-12-14 |
US10089194B2 (en) | 2018-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW201743202A (zh) | 於鎖步雙核或三重模組冗餘(tmr)系統中用於假通偵測之系統及方法 | |
CN109872150B (zh) | 具有时钟同步操作的数据处理系统 | |
US8656228B2 (en) | Memory error isolation and recovery in a multiprocessor computer system | |
US10761925B2 (en) | Multi-channel network-on-a-chip | |
US7747932B2 (en) | Reducing the uncorrectable error rate in a lockstepped dual-modular redundancy system | |
US8499193B2 (en) | Integrated dissimilar high integrity processing | |
US9535784B2 (en) | Self monitoring and self repairing ECC | |
US10013581B2 (en) | Detection of fault injection attacks | |
US7480838B1 (en) | Method, system and apparatus for detecting and recovering from timing errors | |
US10078565B1 (en) | Error recovery for redundant processing circuits | |
EP0287302B1 (en) | Cross-coupled checking circuit | |
Sim et al. | A dual lockstep processor system-on-a-chip for fast error recovery in safety-critical applications | |
US20190012242A1 (en) | Apparatus and method for checking output data during redundant execution of instructions | |
US20220156410A1 (en) | Protection against fault attacks by duplication | |
Yi et al. | Method of improved hardware redundancy for automotive system | |
Pflanz et al. | On-line error detection and correction in storage elements with cross-parity check | |
JPH06161798A (ja) | 情報処理装置 | |
Anjankar et al. | Fault Tolerant and Correction System Using Triple Modular Redundancy | |
EP3525210B1 (en) | Data register monitoring | |
Salewski et al. | Fault handling in FPGAs and microcontrollers in safety-critical embedded applications: A comparative survey | |
Montezanti et al. | SMCV: a methodology for detecting transient faults in multicore clusters | |
US9983926B2 (en) | Apparatus, system and method for protecting data | |
US9542266B2 (en) | Semiconductor integrated circuit and method of processing in semiconductor integrated circuit | |
EP4002089A1 (en) | Protection against fault attacks by duplication | |
US11620178B1 (en) | Fault detection |