TWI309904B - Integrated circuit for peforming data processing and method for controlling same - Google Patents

Integrated circuit for peforming data processing and method for controlling same Download PDF

Info

Publication number
TWI309904B
TWI309904B TW093107351A TW93107351A TWI309904B TW I309904 B TWI309904 B TW I309904B TW 093107351 A TW093107351 A TW 093107351A TW 93107351 A TW93107351 A TW 93107351A TW I309904 B TWI309904 B TW I309904B
Authority
TW
Taiwan
Prior art keywords
processing
delay
error
delayed
integrated circuit
Prior art date
Application number
TW093107351A
Other languages
English (en)
Other versions
TW200507396A (en
Inventor
Krisztian Flautner
Todd Michael Austin
David Theodore Blaauw
Trevor Nigel Mudge
Original Assignee
Advanced Risc Mach Ltd
Univ Michigan
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced Risc Mach Ltd, Univ Michigan filed Critical Advanced Risc Mach Ltd
Publication of TW200507396A publication Critical patent/TW200507396A/zh
Application granted granted Critical
Publication of TWI309904B publication Critical patent/TWI309904B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2281Timing of a read operation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Description

1309904 玫、發明說明: 【發明所屬之技術領域】 本發明是有關於一種積體電路。本發明特別是有關於 在一積體電路之處理階段的處理錯誤之偵測,及自此類處 理錯誤回復。 【先前技術】 眾所皆知,積體電路被認為具有形成一連串的連續地 連接處理階段的功能(例如’一管線電路)。在各個處理 階段之間係以一閂鎖來儲存一或多數信號值。每個處理階 段的處理邏輯係反應了自先前處理階段的接收的輸入值或 者在別處產生之儲存在一伴生輪出閂鎖的輸出信號值。處 理邏輯完成其處理操作所需的時間係可判斷積體電路可操 作的速度。如果所有階段的處理邏輯可在一短時間内完成 它的處理操作’那麼信號值也許能在高速處理結果下迅速 地被推動通過輸出閂鎖。系統階段之間進行的信號推動係 無法比最慢的處理邏輯更加迅速,其中處理邏輯可在接收 輸入信號時執行它的處理操作與產生適當的輸出信號。這 限制了系統的最大性能。 在一些情況下,它被希望在處理資料時能盡可能地快 速’且相對地處理階段將被驅動,以便在盡可能快速的速 率下推動他們的處理操作,直到最慢處理階段無法保持進 度。在其它情況下’積體電路的電力消耗比處理速率更重 要,且積體電路的操作電壓將會減少,以便在最慢處理階 段再次無法長久保持進度時減少電力的消耗。 另一種在這種限制情況下的處理係為以處理時脈驅動 精魏電路,m所皆知的此時脈具有-頻率,其係小於 最小允許的-容忍㈣,此容忍範圍係為考慮在不同 的積體料、操作環境情況、被處理的信號資料附屬物和 等等之間的最差的製造變異。在上下文電壓準位中,積體 電路,般是操作在一電壓準位下’此電壓準位係保證在最 小的電壓準位之上,以確保在考慮到不同的積體電路、操 作環碟情況、被處理的信號資料附屬物和等等之間的最差 的製造變異時,所有處理階段能保持其進度。習知方法被 評價的的原因係為其謹慎的限定了最大操作頻率和最小操 作電壓以考慮最差的案件情況。 其他眾所皆知的系統中’其係提供電路元件,此電路元 件係被準備用來測量特殊積體電路是否操作在它的頻率或 電壓下的設備。此眾所皆知之機構包括延遲線,著積體 電路内的被監測的信號傳播而建立,以保證它能到達延遲 線的末端’或如果傳播係為沿著那條延遲線時,—些其它 在延遲線内預先被決定的點,將另人滿意的一次充分地保 證最慢的處理階段會在積體電路上完成了它的處理操作。 藉由—充分地邊緣,延遲線被設計為具有比任何處理階段 之最大延遲更大的延遲,以考慮到不同的積體電路、操作 環境情況、被處理的信號資料附屬物和等等之間的最差的 製造變異。因此,本發明之技術需謹慎控制操作頻率和電 壓。 【發明内容】 就本發明的一目的來看,其係提供用於執行資料處理 之積體電路,該積體電路包括: 4 1309904 該積體 且在取 作用來修正該些 及 一或多數效能 決於該錯誤偵 控制至少一或 持非零比率, 修正,而該積 在該積體電路之内藉由 電路操作t可操作用來偵測 樣彳§號間的差異將可指示一 對應到該錯誤偵測器和 錯誤的一錯誤修正邏輯;以 用來控制在積體電路内 —操作參數控制器;其中 該操作參數控制器係取 一或多數錯誤的特徵動態地 數’以使在操作中的錯誤保 錯誤將由該些錯誤修正邏輯 行資料處理》 雙重取樣資料信號值在 錯誤的一錯誤偵测器, 錯誤; 在操作中可操 控制操作參數的 測器所偵 多數效能 在操作中 體電路則 測到之 控制參 的該些 繼續進
本發明之技術係為反直覺和在此領域巾反對故意使積 體電路的操作保持在-非零錯誤率狀態的強烈設計偏見。 時間期限的成本和與從所偵測到的錯誤中修正的相關能量 係比在積體電路中運轉在較靠近操作限制所能節省之時間 期限的成本和能量。
更佳的是,雙重取樣係為偵測在相對應之不同時刻時 在一取樣點的信號值。 在較佳實施例中’該操作參數控制器提供回授控制來 調整取決於該錯誤摘測器所偵測到之一或多數錯誤的特徵 之該至少一或多數效能控制參數, 當大範固可能性疋可能的時候,在較佳實施例中,藉 由該錯誤债測器所摘測到之該—或多數錯誤的特徵包括至 少一: 5 13〇99〇4 由該錯誤偵測器所偵測到之該些錯誤的一錯誤率;以 及 由於該錯誤修正邏輯修正該錯誤偵測器所偵測到之該 t錯誤所引起之在處理效能方面的減少。 菖效控制參數能採取各種各樣不同的形式時,在較 佳實施例中,該一或多數效能控制參數至少包括: 一操作電壓; 一操作頻率; 一積體電路本體偏壓電壓;以及 一溫度。 本發明之較佳實施例中,其係提供一種用於執行資料 處理的積體電路,該積體電路包括: 複數處理階段,從至少一處理階段來的一處理階段輸 出信號如同一處理階段輸入信號一樣被供應至一隨後處理 階段’其中該至少一處理階段包括: 用來執行—處理操作上至少一處理階段輸入值以產生 一處理邏輯輸出信號的一處理邏輯; 用以在一非延遲獲得時間獲得該處理邏輯輸出信號之 一非延遲值的—非延遲閂鎖,且該非延遲值將如同被供給 至該非零獲得時間隨後之該處理階段輸出信號一樣被供給 至該隨後處理階段; 用以在一延遲獲得時間中獲得該處理邏輯輸出信號之 一延遲值的一延遲閂鎖,其中延遲獲得時間係比該非延遲 獲得時間晚; 用來比較該非延遲值和該延遲值,以偵測在在該非延 遲獲得時間後之該處理邏輯輸出信號的一變動,以指出該 6 1309904 處理邏輯在該非延遲獲得時間内未完成該處理操作的一比 較器;以及 用以當該比較器偵測該變動來執行一錯誤修正操作以 壓制該隨後處理階段對該非延遲值之使用的一錯誤修正邏 輯。 在本發明之較佳實施例中,其係認為處理階段的操作 可能直接地被監測以發現他們失敗的限制狀態。當實際失 敗發生時,那麼這些失敗可能被修正為如正確操作從未被 製造。當失敗發生時,在習知方法中,藉由避免過度謹慎 的效能邊際(performance margins)所達成優點與本發明直 接在失敗點觀察之方法相較’需要在修正系統時,補償更 多所消耗之額外時間與能量》故意允許這樣的處理錯誤發 生’以使關鍵路徑未能達成他們的時間要求,在這樣的技 術領域是高度的反直覺,其一般係盡力保證這個技術領域 所有關鍵路徑符合他們的時間要求。處理階段應大體上被 考慮與圍繞,例如’簡單匯流排係為讓信號在沒有接受和 操作下從一閂鎖通過到下一個。 有多種不同方式可以對被偵測到之所發生的錯誤進行 修正與補償。在一較佳實施例中,錯誤修正邏輯係用來以 延遲值來替換非延遲值,例如是處理階段輸出信號。當用 於保證之前進展透過資料處理操作或甚至透過錯誤已經發 生且需要補償時’眾所皆知,較為喜歡之缺陷處理階段輸 出信號的替換是採取自延遲值取樣正確值來進行。 在一較佳配置中’ 一錯誤修正邏輯操作來驅動被儲存 在非延遲閃鎖中之延遲值替換成非延遲值。 1309904 路, 係在 錯誤 錯誤 不正 號, 點獲 在此 相位 對應 情況 態地 應於 到從 作參 —操 準位 階段 可以 當本發明技術皆可應用於同步和非同步資料處理電 本發明係很適合於同步資料處理電路,其中處理操作 被一非延遲時脈信號驅動的處理階段之内。 就處理階段被非延遲時脈信號驅動系統的狀況而言, 修正邏輯藉由閘控非延遲時脈信號可運用此促進從一 中修正,以提供充足的時刻用於隨後處理階段,以從 確非延遲值的輸入修正和替換成使用正確延遲值。 在本發明之較佳實施例中,其係使用一非延遲時脈信 此獲得時間可在非延遲時脈信號中從預先決定的相仅 得’且一延遲時脈信號可從非延遲時脈信號中獲得。 非延遲獲得與延遲獲得可藉由在這兩個時脈信號間的 位移所定義。 本技術是特別適合於處理階段是在一同步管線之内相 之官線階段的實施例中。 從錯誤中做偵測和修正可能被使用在各鍾各樣不同的 ’但特別適合於其被希望取決於這樣錯誤之偵測以動 控制一積體電路之操作參數。反直覺地,因為這樣斜 整體表現的改善,或根據速度或電力消耗’甚而考慮 錯誤作修正動作的必要性,所以本技術可用來控制操 數,如此系統以非零錯誤率操作以保持在一目標率。 參數在其他之中可能是可變動的,且包括操作電壓' 作頻率、一積體電路本體偏壓電壓(係控制臨界電 )與溫度。 為了保證延遲閂鎖中資料的獲得總是正確的,在任何 之處理邏輯中最大延遲上的上限,如在未操作點上j 對任一階段處理邏輯的延遲存取超出時脈期間的總和
8 1309904 加上延遲獲得延遲數額。當要求任一處理延遲上之一下限 時,任一階段的處理邏輯應具有一處理時間來存取跟隨在 非延遲獲得後之延遲獲得的時間,以便保證隨後資料沿短 路徑傳播,而不是不適當地訛用延遲獲得值。這可藉由以 一個或多數被要求之延遲元件填塞短路徑來保證。 本技術是可適用的對各式不同類型的積體電路,嬖如 一般數字式處理電路,但是特別適合對處理階段是資料處 理程序的一部分或微處理器的系統。 為了促進用於控制操作參數對控制算法的用途,較佳 實施例包括一錯誤計數電路’其係用來儲存偵測到之錯誤 的一變動,其中此變動係為延遲值與非延遲值的比較。此 錯誤計數電路可藉由軟體來完成操作參數的控制。 以上所討論之延遲閃鎖和非延遲閂鎖係被評價為具有 各種各樣不同的形式。特別是’這些被認為包括正反器 (flip-flop )形式、D類型閂鎖、順序元件、記憶體單元 記數器元件以及其結合,與可儲存信號值之各種^樣的其 它儲存設備。 就本發明之其他目的來看’其係提供—用於執行資料 處理之控制積體電路的方法,該方法包括下列步驟: 提供從多數處理階段中至少一處理隋段的一處理階段 輸出信號作為一處理階段輪入信號給一隨後處理階段,該 至少一處理階段之操作包括: 根據至少一處理階段以資料處理邏輯執行一處理操 作,用以產生一處理邏輯輪出信號; 1309904 在非延遲獲得時間中獲得該處理邏輯輸出信號之該 非延遲值’且該非延遲值被提供給該隨後處理階段,以作 為跟隨該非延遲獲得時間後之該處理階段輸出信號; 在一延遲獲得時間獲得比該非延遲獲得時間晚之該處 理邏輯輸出信號的一延遲值; 比較該非延遲值和該延遲值以偵測跟隨在該非延遲獲 得時間後之在該處理邏輯輸出信號的一變動’以指出該處 理邏輯在該非延遲獲得時間尚未完成該處理操作;以及 當該變動被偵測到時’即藉由該隨後處理階段執行壓 制該非延遲值之使用的一錯誤修正操作。 隨後將以伴隨之圖畫描述本發明之實施例,但其僅是 舉例: 【實施方式】 第1圖係圖示一積體電路的部份,其中可能是在處理 器核心内之同步管線的部份,例如由在英國之Cambridge 的ARM有限公司製造之一 ARM處理器核心。同步管線係由 多數如處理階段的東西所形成。第一階段包括處理邏輯2, 其係在由一正反器群所形成之一非延遲閂鎖4與比較器6與 延遲問鎖8之後。條件問鎖其中包含可用來儲存與觸發無關 之信號值、時脈與其他需求的任何電路元件。隨後處理階 段則相似地被形成。在所有處理階段之内一非延遲時脈信 號1 0驅動處理邏輯和非延遲閂鎖4,以同步地操作,以當作 一同步管線的一部分。在各自處理階段中—延遲時脈信號 12被提供至延遲閂鎖8。延遲時脈信號12是非延遲時脈信 號1 0之相位移位的變體。相位移位之程度控制在藉由非延 遲閂鎖4從處理邏輯2之輪出獲得與在較新時間藉由延遲閂 10 1309904 鎖8執行而從處理邏輯2之輸出獲得間的延遲週期。如果處 理邏輯2操作在已存在非延遲時脈信號頻率所給之極限 内,操作電壓則將被提供給積體電路、本體偏壓電壓與溫 度等等,然後處理邏輯2將藉由一時間完成其處理操作,其 中此時間係為觸發非延遲閂鎖4所得到。結果,延遲閂鎖8 稍後將可獲得處理邏輯2的輸出,且其將與在非延遲問鎖4 之内被獲得之值-樣。相對地,比較器6在延遲期間將不會 偵測到變動的發生,且也不會觸發錯誤修正操作。相反地, 如果用於積體電路之操作參數係為如處理邏輯2藉由非延 遲閃鎖4獲得其值之時間未完成它的處理操作時,延遲閃鎖 8將獲得-不同值’且將藉由比較器6作偵測,以驅動執行 錯誤修正操作。其可將可見錯誤修正操作可以由非延遲問 鎖4之輸出所替換,其中此輪出係跟隨在獲得被储存在延遲 問鎖8内之延遲值的時間之後被提供至隨後處理階段的時 間内。延遲值另外被迫儲存在非延遲閃鎖4之内以替換 早先錯誤地被儲存在其中所獲得的值。 兀穩疋偵測态7係用於偵測元穩定在非延遲閂鎖4的輸 出’例如’不是定義在清楚地的邏輯狀態。如果摘測到這 樣的凡穩定,其將得到如替換延遲閂鎖6之_錯誤與值的對 待。 、在錯誤的憤測中,整體管線將藉由閘控用於-另外延 遲週期之非延遲時脈信號1〇來暫停,以給用於在隨後處理 階段中之處理邏輯充;A , 兄足的時間’以適當地反映出將提供被 修正輸入信號值。·3J*替代地’上游處理階段可能以隨後處 理階段來暫停’其中隨後處理階段係允許繼續操作與插入 氣包(bubble)至管線中’且係與使用逆流架構之標準管線 11 1309904 處理技術相 鎖)。另一 階段之非延 正。以錯誤 證,其中及 作。 有一限 時間與延遲 延遲獲得時 時間不應小 新資料所獲 遲元件填塞 處理時間之 何操作參數 輯之最大處 值,其係如 正確的。 其他可 和效能。根 示)被提供 可被用來控 施或由軟體 佳的整體效 來操作積體 消耗的根據 益超過因需 符合(請參照第2圖之氣泡與清除(fiush)閂 選擇是整個處理管線可能被以被驅動進入每— 遲閂鎖的延遲閃鎖值所重置,而且處理被修 值替換延遲閂鎖值的再用而不是試圖的重估保 使錯誤發生時,向前進展還是獲得通過處理操 制相關於處理邏輯在處理階段内所花費的處理 之間的關係,該延遲係介於延遲獲得時間及非 間之間。特別是,任何處理階段之最小的處理 於延遲,以保證由一短延遲處理階段輸出之— 得之延遲值不是訛用的。其可能必須以額外延 短延遲處理階段,以保證他們不落在這最小的 下。在另一極端情況下,它需要被保證用於任 之一處理階段可發生於任何操作點内之處理邏 理延遲不大於一般非延遲操作時脈週期與延遲 在延遲值閃鎖中獲得之延遲值被保證是穩定與 替代的方式可以是系統被控制來調整電力消耗 據其中一種安排,一錯誤計數器電路(未見於圖 來計數由比較器6所作之非相等偵測的數量。此 制操作參數的錯誤計數和修正係可由硬體來實 以演算法來實施。計數器可由軟體作讀取。最 能,係為故意以保持在非零水準之錯誤的參數 電路,以作為是否能達成最大速度或最低電力 。在這樣情況操作非謹慎操作參數所得到之增 修正錯誤所致的損失。 12 1309904 測 是 令 之 計 路 之 理 器 穩 來 在 誤 氣 信 壓 這 被 如 可 那 是 展 根據一可替代的安排,硬體計數器被提供作為性能監 楔組與用來保持記錄有用的工作及錯誤修正工作。特別 ’計數器保持計數用來處理將執行之處理操作之有用指 的數量’且同樣保持計數執行錯誤修正之指令與被執行 氣/包的數1。軟體是用來讀取硬體計數器和適當地使用 數值平衡的附加錯誤修正,且它的影響係藉由使積體電 運轉在一以非零錯誤率來達成反對電力消㈤的減少 第2圖係圖示本發明之較佳實施例之-種使用本技術 電路方塊圖。第2_ #上面部份係圖示被提供在各個處 階段_的電路70件’亦即非延遲閂鎖4、延遲閂鎖8和比較 1疋穩疋偵測器7用於偵測在非延遲閂鎖4之輪出的元 疋’且這樣的觸發也產生—錯誤信號。從多數這樣階严 的錯誤信號被分別提供至-或閘100的輪入端,其中係者 :7處理程序階段中偵測到-錯誤時,即產生—總體J _ 如所圖示,總體錯誤信號可被使用於觸發清除與 /包插入信號。電路102偵測錯誤信號是否為元穩定。 號係被閂銷在來去θ > 一 貞在參考較向電壓之一正偏閂鎖與參考較低電 之負偏閂鎖中。如果這兩個不符合他們被閂鎖的值, 表示:誤信號是元穩定且應急(panic)信號被引動。在它 取樣别,藉由閂鎖錯誤信號與等待一整個時脈週期( :兩個閂鎖是序列的),應急信號是元穩定的可能性是 、 的 匕將疋重要的,如果應急信號被?丨動,銬德 麼從延遲問鎖被修正的值可能因為錯誤信號的元釋= 在&種情况下,指令也會無效且將會 。因此清除營螅玉私* 耳门剛進 呂線再啟動指令與降低時脈頻率,以
13 1309904 同樣指令再試一次時,錯誤信號不會是元穩定(否則導致 再試的無盡循環)》 第3圖係較詳細地圖示非延遲閂鎖、延遲閂鎖、比較 器和至少部分錯誤修正電路之電路圖。非延遲閃鎖4可以 藉由二個閂鎖14、16提供之一正反器所形成。延遲閂鎖8 係由一單一回授元件所形成。互斥或閘1 8係當作一比較 器。錯誤信號20第3圖之電路圖浮現,且可能被提供至錯 誤計數器電路,其中如先前被談論的或給其它操作參數調 整電路或系統。錯誤信號20用於切換多工器22,以被儲 存在閃鎖14内之非延遲閂鎖4,此多工器22係為驅動延 遲值儲存在延遲閂鎖8之内。元穩定偵測電路24用於俄 測在非延遲閂鎖4内發生之元穩定,並用其來觸發一錯誤 k號’其中將導致錯誤的元穩定值替換為儲存在延遲閂鎖 8内之延遲值。 第4A圖和第4B圖係圖‘示第1圖、2和3之電路的操作流 程圖。 在步驟26t ’處理邏輯在一時間Ti中從階段i產生其輸 出信號。在步驟2 8中,其係為非延遲閂鎖獲得和形成非延 遲值。在步驟30中,從非延遲閂鎖來的非延遲值開始通過 到隨後處理階段i + 1,其中係根據這個值開始處理。這處 理也許結果是錯誤的且將需要自一錯誤被偵測處回復。 在步驟32中,允許處理邏輯持續用於進一步時間的處 理’延遲時間,以在時間Ti + d中產生一輸出信號。在步驟 34中’輸出信號被閂鎖在延遲閂鎖。在步驟36中,其係對 延遲閂鎖和非延遲閂鎖之内的值作比較。如果他們是相等 的’則沒有錯誤發生且在步驟3 7中繼續一般處理。如果他 14 1309904 們不是相等的,t ^ , 即表不當非延遲閂鎖择楫— 邏輯在時間τ. 土 又传匕的值時,處理 未完成它的處理操作,且 隨後處理階埒;」 五開始供給這個值到 + 1。因此,出現了誤罢收μ 修正》在步騍1 、 條件,且將被要求 ^驟38中,將藉由管線氣泡 後階段I來開私、丄加& 町進入管線階段隨 _始延個修正。在步驟4〇中, 1是全部暫停沾 Τ 无則階段到階段i + 質知的。這包括階段i有錯誤發 階段i + 1使用3f、Β 赞生。在步驟42中, 、遲閂鎖值作為它的輸入 操作。在步驟重新執行它的 修正。例如,诂,上 下麥數可以依照要求來 壓電壓等等。缺、電壓與增加本體偏 寸哥然後繼續處理步驟46。 如果錯誤的 制電路和演算法丌妯咅 + 測到’那麼操作參數控 和導致-非零錯誤率。 錢以便減少電力消耗 係圖示包含記憶體單元102陣列的記憶體剛。在 :可…’其將說明記憶體單元的單-列,熟悉此技藝 …己憶體單元列陣是典型地大二維陣列,且包含許 多數以萬叶記憶體單元。與一般記憶體操作相冑,解碼器 1 〇 4用於一存取接收之一記憶體位址與解碼此記憶體地址以 便啟動字元線1〇6。字元線1〇6耦接至記憶體單元1〇2,以分 別連接至位元線對1〇8。取決於被儲存在記憶體單元内 之位元值,且將導致與其相耦接之位元線1〇8中的一電子變 動(例如,在一電壓及/或在一電流下的變動),而且此變 動將由感測放大器11 〇所感測。感測放大器i i 〇的輸出在第 一時間被儲存在非延遲閂鎖丨i 2内與順序地在一延遲時間 中將其儲存在一延遲閂鎖114之内。在延遲值被儲存於延 遲問鎖1 1 4之前’儲存在非延遲閂鎖1丨2内之非延遲值係直 15 1309904 接地藉由多工器116通過輪出到進一步處理電路ιΐ8。當延 遲值在被遲閂鎖1 1 4内被獲得時,比較器丨2〇用於比較非延 遲值和延遲值。如果不是相等的,延遲值被多工器ιΐ6切換 為輸出值,其中係從用於與特殊位元有關的記憶1〇〇。比較 器120輸出一壓制信號至進一步處理電路118,以壓制藉由 進一步處理電路118根據被替換之錯誤非延遲值的處理。在 這個例子中,這壓制採取控制被提供給進一步處理電路i Η 之時脈信號形式CLK,以延伸相關的時脈週期與延遲由進 一步處理電路U8閃鎖的新結果直到—時間,當延遲值有一 機會傳播通過有關的處理電路到達進一步處理電路之輸出 閂鎖時。 1 感測放大器110和非延遲問鎖112係形成—快速讀取機 制的部分。感測放大器1 10延遲閂鎖i 14係形成一慢速讀取 機制的部分。在許多情況下,被閃鎖在非延遲閃鎖112°内之 快速讀取結果將是正碟的且不需要修正的動作。在少數情 況下,延遲閂鎖114内之快速讀取fct果 %、Q果不冋於慢速讀取結 果,且在這情況中慢速讀取結果祜纫& 衣极〜為正確的與根據快速 讀取結果將被壓制以用來進行替換快速讀取結果的處理。 相對地少數需要修正錯誤的快速讀取結果相關的損失 係多於藉由允轉在記憶體1 00較靠折m = ^ Λ迎期限至情況下所增加 之效能(根據速度、低電壓操作、承把, Λ F 更低的能源消耗及/或其 它性能參數)的補償 笫6圖係圖示第
I «V部分變化。在這變化中 其係提供。這兩個不同感測放大器110,與110,,係形成具 不同的操作速度’且110’ I相對地快逮和較不可靠的, 1 1 0 ’’是相對地慢和較可靠的。这此τ 、些不同的特徵可由改: 16 1309904 感測放大器11 ο,與11 ο ’’的參數來達成,例如,建構參數如 電晶體大小、摻雜準位與增益等等。一比較器120,用來比 較這兩個輪出。從快速感測放大器110,的輪出一般藉由多 工器1 1 6 ’通過輸出至慢感測放大器1 1 〇,’的輸出,且其係可 利用的。當慢感測放大器U 〇,,的輸出是可利用的,且比 較器120偵測到與快速感測放大器丨1〇’的輸出不是相等 的,然後它控制多工器116’來切換由慢感測放大器11〇,,產 生的輸出值。比較器120並且觸發如壓制根據錯誤之快速 讀取結果之順流處理的壓制信號。 、 第7圖係圖示第5圖之電路的操作流程圖。在步驟 122,地址被解碼造成各自記憶體單元被耦接至與他們毗鄰 之藉由一字元線使用信號通過的位元線。在步驟124,位 7L值被儲存在選定之記憶體單元中與他們的補數以及被驅 動的位元線對。這導致位元線内之電流溢出與在位元線之 電壓的改變。感測放大器i丨0分別偵測電流及/或電 的改變。 王千伹 在步驟126,在當時快速資料讀機制取樣該值作為吃憶 體早π的輪出。在步驟128,根據假定它是正减的,用於進 一步處理之快速讀取資料值則通過至隨後處理電路。在牛 驟13〇,慢速資料讀取機制取樣一慢速讀取資料值。在步驟 ,θ 权的疋值柙丨交迷讀取值》如果這些是相同 仔,則在步驟134繼續正常處理1而,如果被取樣的值是 ::同的,那麼步驟136用於輸出一壓制信號至進一步電路 二L正處理會發生一樣’輸出慢速讀取值至那些進一步 電路以替換快速讀取值’其中’快速讀取值已通過。 17 1309904
第8圖係圖示在用管線匯流排1 40之内使用本技術。管 線匯流排1 40包含多數閂鎖1 42,其係儲存沿匯流排通過的 資料值。如一管線匯流排1 4 0的例子,眾所皆知的A XI匯 流排為由在英國之Cambridge的ARM有限公司所設計。此 安排之目的在於用於使資料值沿管線匯流排1 4 0通過的為 一數位信號處理電路144。此數位信號處理(DSP)電路144 不自行執行如先前討論之非延遲閂鎖與延遲閃鎖技術。在 可替代的安排中,用於使資料值沿管線匯流排通過可以是 除D S P電路之外的元件,例如,不自行執行非延遲閃鎖與 延遲閂鎖技術的一標準ARM處理器核心。
與每一非延遲閂鎖1 42有關的係為一各自延遲閂鎖 1 4 6。這些延遲閂鎖1 4 6在匯流排上取樣信號值的一時間係 晚於非延遲閃鎖142取樣和閂鎖與他們相符的。因而,資料 值中的延遲沿匯流排通過的任何原因(例如,使用太低的 操作電壓、時脈速度太高、從毗鄰資料值耦接的影響等等) 將導致在被儲存在非延遲閂鎖1 42和延遲閂鎖1 46内之值 間可能發生差異。在管線匯流排中之最後階段係說明如包 括比較器147,其係比較非延遲值和延遲值。如果這些不是 相等的’然後延遲值被用來替換非延遲值,且根據非延遲 值的處理被壓制,如此修正可得到影響(匯流排時脈可被 延伸)。它被評價為這些比較器和多工器電路元件沿著管 線匯流排140被提供至每一閂鎖階段,但第8圖中為了清晰 起見,這些被省去了。 因為DSP電路144本身可能不支援非延遲和延遲閂鎖 的機制以及其相關修正,被提供至DSP電路144的資料值 是依於任一必要之修正是重要的。因此,一額外緩^閃鎖 18 1309904 階段1 4 8被提供在管線匯流排1 4〇的末端,如此,資料值要 求的任何修正將被供給至此閂鎖,且在資料值被DSp電路 144啟動刖,附屬的DSP電路144可被執行。緩衝閂鎖148可 被配置相當地靠近DSP電路Μ4,且將不會有可利用傳播時 間不足的而導致資料值中一錯誤會從缓衝閂鎖148通過至 DSP 電路 144。
其係被評價為匯流排連接在各自非延遲閂鎖i42之間 被認為是處理邏輯的形式,其中僅僅通過資料而未改變。 如此’在第8圖之管線會流排的實施例與先前描述之實施例 (例如,第1圖)係熟悉此技藝者明顯知道的。 第9圖係圖示之操作流程圖。在步驟15〇,非延遲信號 值從匯流排線被獲得。在步驟1 5 2,非延遲值然後通過至下 個匯流排管線階段。在步驟1 5 4,相對應的延遲閂鎖1 4 6獲 得一延遲匯流排信號。在步驟156,比較器147比較延遲值 與非延遲值。如果這些是相等的,在步驟158則繼續正常處 理。如第8圖所繪’如果這二個被比較的值不是相等的,在 步驟1 6 0則用於延遲匯流排時脈與使用多工器以延遲值替 換非延遲值。
第10圖圖示使用本技術的進一步的實施例。在這實施 例中,從處理器核心内之指令暫存器來的一指令係被閂鎖 在指令閂鎖1 62之内。從指令閂鎖1 62,指令通過到一解碼 器164’其中包括一微編碼唯讀記憶鱧用以產生用於非延遲 控制信號閂鎖1 6 6中儲存器之處理器控制信號的一適當集 合與根據指令閂鎖1 6 2内之被閂鎖的指令,以藉由處理器核 心隨後用來控制處理執行。當他們被閂鎖在非延遲控制信 號閂鎖1 66内時,從解碼器1 64輸出的控制信號稍後也被閃 19 1309904 鎖在一延遲控制信號問鎖丨68内。然後延遲控制信號值和非 延遲控制信號值可能被比較。如果這些不是相等的,然後 其係表示修正動作是必要的。壓制操作係藉由這樣差異的 债測來觸發與用於根據不適當的閂鎖控制信號值暫停隨後 處理。它也許是唯一重置處理程序整體上之有效修正選擇 的一些情況。在其它情況,在控制信號中的錯誤可能是較 不極端壓制和修正機制的可能。如一例,特殊錯誤控制信 號可能尚未動作,例如,在多時脈程式指令的例子中,一 些處理操作不開始,直到多時脈指令整體執行後。這是一 個乘法運算的例子,其中乘法部分在最後一個累積之前係 採用了幾個時脈週期。如果有一錯誤在控制信號與相關累 積且實際上累積是不需要的’但僅僅是一個純乘法,然 後在加法器之前其係藉由修正被供給至累加器之控制信號 來壓制此累加以尋求執行此累加運算。 第11圖係圖示第10圖之電路的操作的一例子。在步驟 1 70,乘法累加控制信號被從解碼器164讀取(微編碼 ROM) ^在步驟172,乘法累加控制信號被閂鎖在非延遲 控制信號閂鎖1 6 6内並輸出至處理器核心内之各種各樣的 處理元件。在步驟174,乘法運算元被從計數器檔案讀取, 且乘法運算被初始化。在步驟176,藉由指令解碼器164輪 出之控制信號藉由延遲控制信號閂鎖1 68重取樣。在步驟 178 ’其係比較非延遲控制信號和延遲控制信號。如果這些 是相等的,在步驟180繼續正常處理。但是,如果這些不^ 相等的,在步驟182處理進行判斷乘法運算是否已經完成。 如果已完成乘法運算’那麼錯誤累加運算將會開始,且用 於修正之最佳選擇係為重置整個系統,在步驟丨84 ^但是, 20 1309904 :::法運算仍在進行’在步驟i86,可能重置加法器並 =188以累加運算所欲產生之輸出取消累加運算,如 1 令㈣162内之程式指令最初之意圖。 、圖係圖示如第1圖所示之電路的修正。在此實施例 用热延遲閃鎖190提供資料保持(氣球)問鎖之額外功能以 理婭使用在待命/睡眠之操作(低電力消耗模式)。在正常處 :細作期間時,延遲閃鎖190的功能係為如之前所描述。
而:睡眠控制器1 92用於初次進入—低電力消耗操作 ,,其停止延遲時脈和延遲時脈,如此延遲閂鎖19〇係為全 部儲存對應於他們的各自非延遲閃鎖的資料值。這時,電 壓供應至非延遲閃鎖,且相關的處理電路被移㊉,如此則 切斷他們的電源並且會遺失他們的狀態。然而,保持供給 電至非延遲閂鎖190,如此才能保持與處理電路相關之狀 態。當系統從低電力消耗模式離開時,處理邏輯和非延遲 閂鎖再次被供給電力,當比較器偵測到在非延遲閂鎖與延 遲閂鎖190中之值的一差異時,其觸發在非延遲閂鎖内之錯 誤值的替換’其中係以保持在相關的延遲閃鎖19〇中之修正
值作替換。其被評價為因為他們附屬於比他們的非延遲比 較設備少之迫切的時序要求,因此他們可以以具有較低操 作速度的方式形成’但是在低電力消耗模式時,係較適於 低電力消耗(例如’較高臨界電壓產生較慢之切換,但是 其係以一被減少漏電流)。在這樣的情況下,用於正常處 理之錯誤修正延遲閂鎖在低電力消耗模式期間可再次被使 用’以作為資料保持閂鎖’從而有利於減少整個閘控相關 電路的計數。 21 1309904 第1 3圖圖不第i 2圖之電路操作 積體電^ ·程圖。在步驟194, 电路尺在其正常操作處理棋式 輯階鸹*冰 伐步驟1 9 6,處理邏 科A奴在非延遲時間中產生一輸出信 閂鎖獲m )u步驟1 9 8,非延遲 貝獲得此輸出信號。在步驟200,在非 遲作觫、S、a r 卜延週問鎖内之非延 出A „、席± 2 從處理階段的輸 在延遲時間中被產生,且可利用 左牛既《 ΟΛ, 対延遲閂鎖的獲得。 在v驟204,積體電路被觸發以採取一 本仅块似从為 低電力消耗模式且 备保持供給電力至延遲閂鎖1 9 0時,睡眼如1 ®眠控制器192係用於 初始化處理電路之電源切斷。在步驟2〇6,延遲閃鎖BO獲 得延遲信號值。在步驟206之藉由延遲閃鎖獲得之延遲信號 值,其可能是發生在切換至步驟204低電力模式之前。在步 驟208 ’非延遲閃鎖被切斷電源且遺失其所儲存的值。積體 電路可長時間朝在這個狀態。當被希望時,步驟21〇觸發睡 眠控制器1 9 2以離開低電力消耗模式與修 驟⑴,電力被恢復至非延遲閃鎖,且當有:要作:正式系= 進入至在低電力消耗模式之前的情況時,相關的處理邏輯 以延遲閂鎖1 90内之延遲資料值重新移居管線階段。 第14圖圖示供給至錯誤修正控制和延遲閂鎖的多數處 理階段。處理階段係行程積體電路的部分,其中可能是處 理器核心内之同步管線的一部分、通信匯流排的一部分或 記憶體系統的一部分。第一處理階段包括用於資料通信或 處理邏輯1 0 1 4的一通道、非延遲閃鎖1 〇丨6、延遲閂鎖1 〇 i 8、 比較延遲閃鎖和非延遲閂鎖輸出的比較器i 〇24之一者,並 輸出一控制信號至多工器1020 ’其判斷被供給作為隨後處 理階段或通道101 6之輸入是延遲信號值或非延遲信號值。 此通道/邏輯1014與非延遲閂鎖1〇16係由延遲時脈信號驅 22 1309904 動’但是延遲閂鎖1 0 1 9係被一延遲時脈信號驅動,其中延 遲時脈彳§號為非延遲時脈信號之一相位移位變體。 如果比較器1 0 2 4偵測到在非延遲信號值與延遲信號值 之間的差異時’其係表示若非此時處理操作在非延遲獲得 時間内尚未完成,其中元件1014表示處理邏輯,就是此時 從先前管線階段來之信號未到達本階段,其中元件1 〇 1 4表 示一資料通道。當處理操作很可能是被完成了的或當從先 前階段來的資料很可能是藉由資料通道達到時,如果這樣 差異實際上被偵測,因為其係為較近被獲得的,因此儲存 在延遲閂鎖1018之值則為更加可靠的資料值。藉由從延遲 閃鎖提供結果至下個處理階段丨03 〇,且壓制在隨後處理階 段之非延遲值的使用、向前進展的計算可被保證。然而, 儲存在延遲閂鎖1〇18中之延遲信號值的可靠性可能在此事 件甲被減弱’其係為單一事件不適的發生與訛用延遲值。 單一事件的不適為有效地脈波,所以它可能因為非延遲閂 鎖被錯過,而是由延遲閂鎖拾起。這樣的單一事件可能導 致比較器债測在延遲和非延遲值之間的一差異,以作為單 一事件不適的直接結果,且然後會傳播被訛用之延遲值至 Ik後處理階段》因為其將導致壓制錯誤非延遲值的使用與 傳播此延遲值至隨後階段,因此單一事件的不適訛用此非 延遲值將不會是有問題的。 胃1 4圖的的安排係藉由提供完整資料的交互檢查減少 轨用廷:遲值透過計算前進的可能,其中完整資料的交互檢 ϋ藉由錯誤偵測模組1026來提供,錯誤修正模組1028與 受控於錯誤偵測模組1 026之多工器1 022直接從延遲閂鎖將 延遲僅·供應至比較器1 024或可替代性地,供應錯誤修正模 23 1309904 組1028輸出之錯誤修正值。通道/邏輯單元1〇14之上游一八 位元酬載的資料係為錯誤修正編碼,且四個多餘位元被增 加至資料酬載已形成十二位元信號。十二位元信號通過至 通道/邏輯單元1014’且其值可由非延遲閂鎖1〇16延遲閂鎖 1018獲得。然而,延遲閂鎖1018來之信號的延遲值亦被供 應作為錯誤偵測模組1 026的輸入,其中錯誤偵測模組〖026 判斷在1 2位元錯誤修正編碼信號是否有影響延遲值的任 何錯誤發生。在可替代性的安排中,進一步閂鎖能被提供 來供應一信號值至錯誤偵測模組丨〇丨8,其中比延遲閃鎖 1 0 1 8稍微晚的時間中獲得信號值。當獲得延遲值或稍晚的 同時,此錯誤檢查必須執行在所獲得之一值上,以保證能 馈测到在所獲得之非延遲值與獲得之延遲值間的任一隨機 錯誤。 一指定的誤差修正編碼有能力偵測被預定之錯誤的數 f以及修正錯誤指定的數量。因而錯誤偵測模組1〇26偵測 是否任何錯誤發生,如果有,如果錯誤的數量非常地小, 如此他們是可被修正的。如果可被修正錯誤被偵測到,然 後備測信號值被提供給錯誤修正模組丨〇28,其中錯誤修正 棋組1028係使用錯誤修正碼與被供應至比較器1〇24的延遲 值來修正錯誤。如果是由比較器1024來判斷,所修正的延 遲值不同於非延遲值,然後錯誤修正過程被行使,因此非 延遲值的進一步傳播被壓制在隨後處理階段中,且操作被 執行使用延遲值給替換掉。另一方面,如果比較器1〇24判 斷所修正的延遲值與延遲值是相同的,然後將會有兩個用 於進步演算的可替代性可能。首先,錯誤修正機制仍然可 破行使,因此非延遲值被壓制在隨後處理階段中以及被替 24 1309904 換。可替代地,因為非延遲值被判斷是正確的(依照非延 遲值與所修正的延遲值相等的證據),錯誤修正機制能被 壓制(儘管在延遲值偵測到一錯誤),因此允許非延遲值 繼續前進通過隨後處理階段。然而,藉由錯誤偵測模組丨026 在延遲值中偵測到不可修正的錯誤時,那麼控制信號被供 應來壓制饰用延遲值的使用。在這種情況下,將無法達成 向刖進展的計算。,錯誤修正類型編碼被提供不同於根據 通道/處理邏輯1014的本質。 處理邏輯可被分類成如值通過或值修改。處理邏輯之 值通過例如是記憶體、暫存器與和多工器。值修改處理邏 輯元件例如是加法器、多工器與移位器。因為即使錯誤未 發生時邏輯階段1014輸出的值係不同於十二位元信號1〇1 3 的輸入’因此用於值修改處理邏輯元件之錯誤偵測與修正 係為比用於值通過的處理邏輯元件複雜β 第15圖圖示如果未發生錯誤時,用於資料通過一通道 之錯誤修正為簡單地通過從輸入至輸出的資料值,且資料 值並未改變。在這樣值通過處理邏輯情況下,使用如用於 錯誤修正與偵測之漢明瑪(Hamming code)的線性區塊碼是 方便的。典型地線性區塊碼需要形成一碼字元,其中原始 資料酬栽位元依然是在碼字元中,且並未改變,但一些同 位檢查位元(parity bits)的碼字元(或多餘位元)被增加。漢 明碼疋簡單的一位元錯誤修正編碼和用於(Ν,κ)碼,其中N 為在碼字元中的位元總數,且K是資料位元中被譯瑪的數 量。錯誤的出現和地點係藉由執行在輸出碼字元中同位檢 查的數量被偵測。漢明碼包括N-K同位檢查位元,每一在 資料中來自位元的不同組合被計算《漢明碼可修正一錯誤 25 1309904 或偵測二個錯誤。同位檢查位元的數量(或藉由規則k + p+ 1 $2Ρ指示被要求的多餘位元,其中P是同位檢查位元的數量 以及 Ν = Κ + ρ)。
如第15圖所不’輸入至通道的是一 12位元碼字元,其 包括八個資料位元和四同位檢査或多餘位元。同位檢查係 藉由一錯誤偵測/修正模組11 1 6執行在從通道1 1 1 4的輸出 上。在12位元碼字元中之任何單一位元錯誤在將碼字元輸 出前係藉由錯誤偵測/修正模組1 1 1 6做偵測與修正。如果所 偵測到之錯誤為不可修正的,錯誤偵測/修正模組111 6輸出 一信號以表示其情況。雖然第11圖描述了關於將簡單的代 碼譬如漢明瑪(Hamming codes)使用於通過的處理邏輯,應 了解亦可替代性地使用其它如迴旋碼(convolutional code) 之錯誤修正碼。 第16圖圖示錯誤修正如何被執行在如加法器、多工器 或移位器的值修改邏輯元件。在如AN碼、殘餘碼(residue codes)、反殘餘碼(inverse residue codes)或殘餘數字碼 (residue number codes)的值修改處理邏輯算術碼可用來摘 測與修正在處理邏輯之輸出的任意錯誤。
算術碼可用來檢查算術運算子。其中’ (g)係表示欲檢 查運算子,下列關係式必須滿足:
Code ( X ® = code X ® code(^f AN代碼係算術碼,其涉及將資料字元乘以—常數因 子’例如一 3 N碼可用以藉由之後的比較來檢查一加法運算 的有效性 3N(X) + 3N(Y) ?= 3N(X + Y) 3X +3Y ?= 3(X+Y)。 26 1309904 算術碼組的進一步例子是殘餘碼,其中殘餘(除以一 常數後之餘數)被增加至資料位元,以作為檢查位元,例 如,一 3R碼牵涉到模數(M〇D) 3操作,及應用下列檢查: X MOD 3 + γ MOD 3 ?= (X + Y) MOD 3 考慮X=14和γ = 7的數值例子: 14MOD3=2(碼字元111010,以上二位元作為殘 餘); 7M〇D3 = I(碼字元 oiiioi); X + Y= 21 (10101); 以及 21 MOD 3 = 0 殘餘 MOD 3 的總和= (2+1)MOD3 = 0=(x + y)的殘 餘。 第16圖圖示用於檢查加法運算在第圖之通道/邏輯 單元1014之7R算術碼的使用《加法運算被χ + γ檢查,其 中X和Y是八位資料字元。每一資料字元有四個分別具有 值XMOD 7和Y MOD 7的檢查位元。X MOD 7和Y MOD 7 被提供作為運算元至第一加法器1210以及加法器的輸出被 提供至值(X MOD 7 + Y MOD 7) MOD 7與供應結果如第 一輸出至比較器1250的邏輯。第二加法器1230執行加法(X + Y)、供應結果至計算(X + Y) MOD 7與供應如第二輸出至 比較器12 5 0的邏輯單元12 4 0。如果比較器偵測到在二被輸 入的值之間的任一差異時,然後錯誤將會發生。 第17圖圖示第14圖包括延遲閂鎖值之錯誤修正控制 之電路操作的流程圖。階段1 3 1 0,十二位元錯誤修正譯碼 信號值被輸入到通道/邏輯單元1 01 4。其次,在階段1 320, 非延遲閂鎖1 0 1 6在時間Ti獲得從通道/邏輯單元1 〇 1 4的輸 27 1309904 出,而且被獲得的值在階段1330中被發送至隨後處理邏輯 階段1+1。在階段1340,在時間Ti + d,延遲閂鎖1018獲得 輸出信號。在階段1 350 ’在時間Ti + (d + 5 ),錯誤偵測邏 輯獲得從通道/邏輯單元1014的輸出。雖然<5較佳的安排係 為零,以便藉由延遲值本身實際上被檢查之錯誤的值輸 出,使此輸出可二者擇一地在時間Ti + d延遲閂鎖獲得輸出 信號之後被獲得。用於供應至錯誤偵測電路之值的獲得係 為適當地被計時,以保證可偵測到延遲值中的任一隨機錯 誤。在階段1 3 60 ’錯誤偵測模組丨〇26判斷延遲輸出信號是 否有使用多餘位元之一錯誤。如果錯誤被偵測到,然後它 被判斷是否錯誤是可修正的,在階段丨3 7 〇,其中將取決於 多少位元是受影響的。例如漢明碼可只修正一單一位元錯 誤。在階段1 370,如果錯誤已被判斷為是可修正的,然後 處理過程至階段13 90,因此錯誤被修正以及所修正的延遲 值在多工器1022被選定’且被提供至比較器1〇24。然而, 在階段1370,如果錯誤已被判斷為是不可修正的,然後控 制信號被產生來表示不可修正的錯誤已經發生。在這種情 況下’無法可靠地被執行。在階段1 392,比較器1 〇24判斷 是否被檢查的延遲值與非延遲值是相等的,且如果是相等 的’則繼續向前計算的進展。否則’過程對步驟序列係被 描述相關的第4B圖,藉由在隨後處理階段中之延遲值,行 使非延遲值的壓制與其替換係被執行。 第1 8圖係圖示本技術使用於動態調整處理階段之間的 相對時間。眾所皆知,在一管線處理環境裡,處理階段係 在不同時間完成各自的操作。理想地,處理階段以採用相 同時間來平衡,且用於他們各自的時間以相同方法在周圍 28 1309904 的情況 的,它 或在另 與其他 擾亂在 參數被 充足地 本 線處理 非延遲 錯誤係 至主路 非延遲 效地被 使用之 遲線内 如 比在隨 遲閂鎖 號(假 於慢速 理階段 了閂鎖 在 作期間 之操作 上的變動來 可能是處理 一操作中溫 特性可能造 期間的希望 選擇在相關 嚴密平衡, 技術允許一 電路2000包 閂鎖所獲得 迴授至時脈 徑内相對應 閂鎖。這樣 借用和被分 時脈信號達 之可選擇的 所繪之例子 後階段中之 L B之時脈信 設上升邊緣 處理邏輯之 内之處理邏 L B之時,則 處理階段間 之的電路, 中之錯誤趣 變更。然而’在許多情況下這不是實用 階段的平衡’其中係為平衡一操作電壓 度不被平衡或溫度。此外,製造的變化 成在處理階段時間上的認知差異,其中 平衡。在這些情況下,時脈和其它操作 之一最差狀態情況下,如此處理階段將 以便可使用在所有情況下。 更多的選擇與的確採取動態的方法。管 括延遲閃鎖2002 ’其係可用來偵測藉由 之仏號值中所發生的錯誤。這些發生的 相位控制電路2〇4,其係用以調整被提供 閂鎖之時脈信號值的相關相位,例如, ,調整被作為藉以時間從一處理階段有 配到其匕處理階段。這也許藉由選定被 到,此使用係藉由從在沿著被傳播之延 位置的各自非延遲閂鎖。 ,處理邏輯在閃鎖La和問鎖“係操作的 處理邏輯更慢。相對地,被提供給非延 號可以是相位被位# ’以便延遲時脈俨 閃鎖獲得)的上升邊緣,且藉以擴大: 時間的可純。此減少了用於在隨後處 輯之時間的可能性,當其他階段元件除 假設操作在相同的基本的時脈信號 之時間平衡可被動態地執行在持續之操 此電路係使用從以延遲㈣電路债測到 授。二者擇,平衡可在如製造測試 29 1309904 階段或積體電路之“黃金開機(go〗den_boot) ”間之 〇n off)操作。第1 8圖上所示之延遲閂鎖為用於在處理 之時間平衡的目且爾後可用於如上討論之相關 推21圖之操作參數與錯誤修正的控制。這樣,延遲閃鎖可 違—步被應用於控制相對時脈時間。 第19圖係圖示根據總體時脈閘控用於管線錯誤修正的
:二:。在任一階段偵測—錯誤的事件巾,整個管線為 :閘控下個總體時脈邊緣之—週期而暫停…卜時脈週 針許每個階段使用如延遲閃鎖之輸入重新計算其結果。 果所有先前發送之迷失值將被以從延遲閂鎖之正確值 替換。因為所有階段以延遲閃鎖輸入複評他們的結果, ^誤的任何數量可被容忍在單_週期且保證向前進展。如 所有階段在每-週期產生_錯誤,管線將 是是以1/2正常速度運行。 仃仁
重要的疋在比較器確認之前,迷失管線結果不會被寫 入至結構狀態。因為延遲值之確認採取二個另外的週期例 如,用於錯誤偵測與應急㈣),且在上-延遲P-1鎖與寫 回(WB )階段必須有兩個非不確定階段。在我們的設計中, 屺隱體存取資料快取記憶體係為不確定的,因此 (WB)之前只有-另外階段是被要求貼上用於穩定的標 籤/ ST|%段導引暫存器旁路的另外準位。因為儲存導引為 必V頁執行不確定性,且被執行在管線的WB階段中。 第19圖所不為用於管線之EX階段中失敗之導引的管 線修正,管綠時序圖。第一個失敗階段計算發生在第4週 期’但疋只有在Mem階段後使用從Εχ階段發送之迷失值 被什算不正確結果。在錯誤被偵測之後,《體時脈暫停發 30 1309904 生在第6週期,並允許正確Εχ產生之剃刀影子閂鎖(汉。〇£ shadow latch)藉由MEM階段被評價。在第7週期,修正正 常管線操作。 在先進的時脈設計中,實施沒有極大衝擊的處理週期 之總體時脈閘控是不太可能的。結果,完全管線錯誤修正 機制根據逆流、管線技術被實施。此方法,圖示在第2〇圖 中’配置可忽略的時序限制在基礎線管線設計中在延伸管 線修正之消耗超過幾個週期。當非延遲值錯誤被偵測必 須採取二個特殊動作。首先必須使非延遲閂鎖之迷失階段 a十算無效》此行動成功地使用氣泡信號來指示至下一與隨 後階段管線插槽是空的。其次,清除列藉由確立失敗階段 之階段ID被觸發。在隨後週期,從延遲閂鎖資料來之正確 值被注射回到管線’並允許允許迷失指令繼續通過它的正 確輸入。另外,逆流管線藉由清除列在指令相對方向中傳 播失敗階段之ID。在此動作清除列拜訪的每一階段的、對 應的管線階段與一立即先前係以氣泡作替換。(二個階段必 須是無效的以計數用於主管線之兩次相對速度。)當清除ID 到達管線的開始端時’清除控制邏輯在迷失指令後之指令 重新啟動管線。在同一時間體驗到多階段錯誤時,全部將 初始修正’但是只有最靠近寫回(WB)之非延遲錯誤被完 成。失敗修正將被下一個清除。因此注意逆流管線可能不 與和發送管線一樣有相同長度,例如,逆流管線之清除列 可以是兩個管線階段深,但是發送管線也許是十二個階段 深。 第20圖所示為在ex階段中失敗指令之管線修正的管 線時序圖。在特例中,當第二指令計算在管線之Εχ階段中 31 1309904 的不正確結果時,第一失敗階段計算發生在第4週期。錯誤 在第5週期被偵測到,並造成一氣泡從MEM階段被傳播出 去與在清除列初始化。在EX中之指令,id與IF階段分別在 第6、7與8週期被清除。最後,管線在週期9中之錯誤指令 後被重新啟動,其中係在正常管線操作修正之後。 請重新參照上述第2圖之之描述,電路丨〇2偵測錯誤信 號中之元穩疋的情況下’然後應急信號被確立。在這種情 況下,目前指令(而不是下一指令)需要被重新執行。當 這樣的應急信號被確立時,所有管線狀態被清除,管線在 最近的指令寫回後被立即重新啟動。應急狀態複雜化向前 進展的保證,如在偵測狀態中之延遲可能導致正確結果過 寫入至延遲閂鎖中。結果,在遭遇應急狀態以後,供應電 壓被重置至已知安全操作準位,且管線被重新啟動。一被 重調中,迷失指令應該以只要返回被禁止之錯誤來完成, 直到指令完成後。 管線修正控制的關鍵要求是它不失敗在最小的操作條 件之下(例如,低電壓、高溫與高處理變異)。藉由確認 在最壞狀況之次臨界電壓中錯誤回復電路時間之一保守役 計方法,本發明符合該需求》 第21圖圖示如一序列掃瞄鍊閂鎖之延遲閂鎖21〇〇的再 使用。其係藉由受掃瞄致能信號控制之多工器21〇2的提供 來達成,其中掃瞄致能信號係允許序列掃瞄資料值被寫入 至延遲閂鎖或如被要求依序讀取從延遲閂鎖來之掃瞒致能 信號。此外,允許以延遲閂鎖值替換非延遲閂鎖值之正常 機制被利用來允許序列掃瞄鏈被插入操作路徑中。 32 1309904 【圖式簡單說明】 第1圖圖示本發明之較佳實施例之一種多數處理階段; 第2圖係圖示本發明之較佳實施例之一種使用本技術 之電路方塊圖; 第3圖圖示以一伴生比較器與一錯誤修正邏輯一起之 一非延遲閂鎖和一延遲閂鎖的電路圖; 第4 A圖和第4B圖係圖示第1圖之電路的操作流程圖;
第5圖圖示包括一快速讀取機制與一慢速讀取機制之 一記憶體電路; 第6圖係圖示用於第5圖之部分電路的二者擇一的電路 配置圖; 第7圖圖示第5圖之記憶體電路之操作流程圖; 第8圖係圖示包括在匯流排階段間之非延遲閂鎖和延 遲閂鎖的一管線匯流排; 第9圖圖示第8圖管線匯流排之操作流程圖; 第1 0圖圖示用於控制一微處理器所產生之控制信號, 其中微處理器係為依於非延遲閂鎖和延遲閂鎖;
第1 1圖圖示第1 0圖電路操作的一例子之操作流程圖; 第1 2圖係圖示一處理管線包括非延遲閂鎖和延遲閂 鎖,且這些閂鎖操作在較低功率時將被重複使用,以作為 資料保持閃鎖; 第1 3圖圖示第1 2圖之電路的操作流程圖; 第14圖圖示錯誤修正的多數處理階段與被提供之延遲 閂鎖; 33 1309904 第15圖圖示用於透過一通道之資料通過之錯誤修正, 其中當沒錯誤發生時,通道係為簡單地使資料從輸入通過 到輸出,且資料不會被改變; 第1 6圖圖示用於一值修改邏輯元件如何執行錯誤修 正,此值修改邏輯元件例如是加法器、乘法器或移位器; 第17圖圖示第14圖電路之操作流程圖; 第1 8圖圖示在一處理管線内如何使用延遲和非延遲閂 鎖來控制時脈信號的相關相位;
第19圖和第20圖圖示從錯誤中修正之使用時各自的暫 停與氣泡插入;以及 第2 1圖係圖示使用在處理階段與延遲閂鎖間之非延遲 和延遲閂鎖可被重複使用如一序列掃瞄鍊閃鎖。 【元件代表符號簡單說明】 2 :處理邏輯 4、112、142、1016:非延遲閂鎖 6 、 120 、 147 、 1024 、 1250 :比較器 8、 114、 146、 190、 1018、 2002、 2100:延遲閂鎖
7 :元穩定偵測器 1 0 :非延遲時脈信號 1 2 :延遲時脈信號 1 4、1 6 :閂鎖 1 8 :互斥或閘 20 :錯誤信號 100 :或閘 102 :電路 34 1309904 22 、 116’ 、 1020 、 1022 、 2102 :多工器 24 :元穩定偵測電路 102 :記憶體單元 1 0 0 :記憶體 104 :解碼器 106 :字元線 1 0 8 ·•位元線對 1 1 0、1 1 0 ’、 1 1 0 ’ ’ :感測放大器
102 :記憶體單元 118:進一步處理電路 140 :管線匯流排 144 :數位信號處理電路 148 :緩衝閂鎖 162 :指令閂鎖 164 :解碼器 166 :非延遲控制信號閂鎖 1 6 8 :延遲控制信號閂鎖 1 9 2 :睡眠控制器
2 0 4 :時脈相位控制電路 1 014 :處理邏輯 1016 、 1114:通道 1020 :多工器 1030 :下個處理階段 1026 :錯誤偵測模組 I 02 8 :錯誤修正模組 II 16 :錯誤偵測/修正模組 35 1309904 1210 : 第一加法器 1 230 : 第二加法器 1240 : 邏輯單元 2000 : 管線處理電路
36

Claims (1)

1309904 拾、申請專利範圍: 1. 括: 一用於執行資料處 理之積體電路 該積體電路包 一錯誤偵測器,用以 ^ ^ ^ 猎由該積體電路内之雙重取樣資 料i號值摘測該積體電 ^ g ,t _ . 〒之錯誤操作,以取樣值間之一 :^兵知不出一錯誤; 錯誤修正邏輯,及廄訪 L 汉應該錯誤偵測器,並用以在操作 中修正該些錯誤;以及
—操作參數控制器,用 效能控制操作參數;其中 以控制該積體電路之一或多數 〜操作參數控制器在操作中係根據該錯誤偵測器偵測 到,或多數錯誤的特徵,以動態地控制該至少一或多數 效此控制參數’用以維持操作上錯誤的一非零帛,操作中 之該些錯誤_由該錯誤修正邏輯所修丨,以㈣積體電 路之資料處理能繼續D .如申靖專利範圍第1項所述之積體電路,其中該雙重 取樣在各自不同時刻時’在一取樣點上偵測一信號值。 3.如申請專利範圍第1項所述之積體電路,其中該操作 參數控制器根據由該錯誤偵測器偵測到之該一或多數錯誤 的特徵提供回授控制,以調整該至少一或多數效能控制參 數0 4.如申請專利範圍第1項所述之積體電路,其中由該錯 誤偵測器偵測到之該一或多數錯誤的特徵至少包括: 藉由該錯誤偵測器偵測到之該些錯誤 < 一錯誤率;以 及 37 1309904 誤及 多數 處理效能降低’其係肇因於該錯誤偵測器摘測到該錯 該錯誤修正邏輯對該錯誤進行修正所致。 5.如申請專利範圍第1項所述之積體電路,其中該/或 效能控制參數至少包括: —操作電壓; 一操作頻率; 一積體電路本體偏壓電壓;以及 溫度。 6·如申請專利範圍第1項所述之積體電路,更包括: 複數處理階段,從至少一處理階段來的一處理階段輸 號作為一處理階段輸入信號供應至—隨後處理階段, 該至少一處理階段包括: 一處理邏輯,可操作以執行至少一處理階段輸入值之 理操作,以產生一處理邏輯輸出信號; 一非延遲閂鎖,可操作以在一非延遲獲得時間獲得該 邏輯輸出信號之一非延遲值,該非延遲值將被供給至 後處理階段,作為在該非延遲獲得時間之後的該處理 輸出信號; 一延遲閃鎖,可操作以在一延遲獲得時間中獲得該處 輯輪出信號之一延遲值,其中該延遲獲得時間係比該 遲獲得時間晚;其中 該錯誤偵測器包括一比較器,可操作以比較該非延遲 該延遲值,以偵測在該處理邏輯輸出信號在該非延遲 時間後之一變動,以指出該處理邏輯在該非延遲獲得 内未完成該處理操作;以及
出信 其中 一處 處理 該隨 階段 理邏 非延 值和 獲得 時間
38 1309904 一錯誤修正邏輯,可操作以當該比較器偵測該變動來 執行錯誤修正操作時,壓制在該隨後處理階段對該非延 遲值之使用。 7. 如申請專利範圍第6項所述之積體電路,更包括一元 穩定(meta-stability)偵測器,可操作以偵測在該非延遲值 中之疋穩定以及當發現為元穩定時,則觸發該錯誤修正邏 輯來壓制該非延遲值的使用。 8. 如申請專利範圍第6項所述之積體電路,其中當該比 較器偵測到該變動時,該錯誤修正邏輯可操作以用延遲值 替換該非延遲值’以作為該處理階段輪出信號。 9. 如申請專利範圍第8項所述之積體電路,其中對該隨 後處理階段提供該延遲值,透過處理操作向前驅動推進。 10. 如申請專利範圍第6項所述之積體電路,其中當該 比較器偵測到該變動時,該錯誤修正邏輯可操作以驅動將 該延遲值儲存在該非延遲閃鎖中,以代替該非延遲值。 11. 如申請專利範圍第6項所述之積體電路,其中在該 處理階段内之處理操作與該隨後處理階段係被一非延遲時 脈信號驅動。 12. 如申請專利範圍第11項所述之積體電路,其中當該 比較器偵測到該變動時,該錯誤修正邏輯可操作以閘控該 非延遲時脈信號,以提供用於該隨後處理階段的時間,以 從該非延遲值的輸入修正,並替換為使用該延遲值。 1 3 .如申請專利範圍第1 2項所述之積體電路,其中該非 延遲獲得時間係自該非延遲時脈信號之一預定的相位點所 獲得,該非延遲時脈信號之一相位延遲變體被用來作為一 39 1309904 延遲時脈信號,及該延遲獲得掎間係自該非延遲時脈化號 之一孩定的相位點所獲得。 14.如申請專利範圍第6項所述之積體電路’其中該些 處理階段係為一同步管線内之各個管综階段 ° 1 5 ·如申請專利範圍第6項所述之積體電路’其中被採 取用於該處理操作之一最小處理時間係大於從該非延遲獲 得時間分離該延遲獲得時間之時間’以使該延遲值不党到 以不同輸入值執行之一處理操作影響。 1 6 ·如申請專利範圍第1 5項所述之積體電路’其中該處 理邏輯包括一或多數延遲元件,以保證會超過該最小的處 理時間。 17·如申請專利範圍第6項所述之積體電路,其中被採 取用於該處理操作之一最大處理時間係小於從該非延遲獲 得時間分離該延遲獲得時間之時間與介於非延遲獲得時間 之間的一時間總和’,以使該處理邏輯藉由該延遲獲得時間 來完成該處理操作。 18. 如申請專利範圍第6項所述之積體電路,其中該處 理階段是一資料處理程序的部分。 19. 如申請專利範圍第6項所述之積體電路’更包括一 錯誤計數器電路,可操作以儲存對應於該變動之錯誤偵測 的一計數。 20. 如申請專利範圍第19項所述之積體電路,其中係藉 由軟體讀取該計數。 21. —種用於控制執行資料處理之積體電路的方法’該 方法包括下列步驟: 40 1309904 藉由該積體電路内之一雙重取樣資料信號值來镇測該 積體電路操作中的錯誤,在被取樣的值間之—差異係表示 一錯誤; 在操作中修正所偵測到之錯誤;以及 控制該積體電路中之一或多數效能控制操作參數;其 中 、 根據一或多數被偵測到之該些錯誤的特徵,控制效能 控制參數之至少一或多數,以在操作中保持錯誤的一非零 率’可修正在操作中的該些錯誤,以使該積體電路之資料 處理能繼續。 22. 如申請專利範圍第21項所述之方法,其中在各自不 同的時間中’該雙重取樣係偵測在一取樣點之—信號值。 23. 如申請專利範圍第21項所述之方法’其中該控制步 驟係根據所偵測到之錯誤的一或多數特徵’以提供一回授 控制來調整該一或多數效能控制參數之該至少一者。 24·如申請專利範圍第2 1項所述之方法,其中所偵測到 錯誤之該一或多數特徵包括下列至少一者: 一偵測到的錯誤之錯誤率;以及 處理效能降低’其係肇因於修正該所偵測到的錯誤。 25.如申請專利範圍第21項所述之方法,其中該—或多 數效能控制參數包括下列至少一者: 一操作電壓; 一操作頻率; 一積體電路本體偏壓電壓;以及 溫度。 41 1309904 26. 如申請專利範圍第2 1項所述之方法,更包括下列步 驟: 從多數處理階段中之至少一處理階段提供一處理階段 輸出信號作為一處理階段輸入信號至一隨後處理階段,該 至少一處理階段之操作為: 以資料處理邏輯對至少一處理階段輸入值執行一處理 操作,以產生一處理邏輯輸出信號;
在一非延遲獲得時間獲得該處理邏輯輸出信號之一非 延遲值,該非延遲值被提供至該隨後處理階段以作為該非 延遲獲得時間後之該處理階段輸出信號;以及 在比該非延遲獲得時間晚之一延遲獲得時間中獲得該 處理邏輯輸出信號的一延遲值;其中 偵測錯誤包括比較該非延遲值和該延遲值,以偵測在 該非延遲獲得時間後之在該處理邏輯輸出信號的一變動, 以指出該處理邏輯在該非延遲獲得時間尚未完成該處理操 作;以及 該摘測到錯誤之修正步驟包括藉由該隨後處理階段壓 制該非延遲值的使用。
27. 如申請專利範圍第26項所述之方法,包括在該非 延遲值中偵測元穩定與如果發現是元穩定時,則觸發對該 非廷遲值之使用的壓制。 28. 如申請專利範圍第26項所述之方法,其中當偵測到 該變動時,以該延遲值替換該非延遲值,以作為該處理階 段輸出信號。 42 1309904 2 9.如申請專利範圍第2 6項所述之方法,其中將該延遲 值供給至該隨後處理階段之該延遲值透過處理操作向前驅 動推進。 3 0 ·如申請專利範圍第2 6項所述之方法,其中當偵測到 該變動時,驅動儲存該延遲值以替換該非延遲值。 31_如申請專利範圍第26項所述之方法,其中在該處理 階段内和該隨後處理階段中之處理操作係被一非延遲時脈 信號所驅動。
3 2 ·如申請專利範圍第3 1項所述之方法,其中當在該比 較步驟偵測到一變動時,該錯誤修正操作包括閘控該非延 遲時脈信號,以提供用於該隨後處理階段的時間,以自該 非延遲值的輸入修正,及替換使用該延遲值。 33. 如申請專利範圍第32項所述之方法,其中該非延遲 獲得時間係自該非延遲時脈信號之一預定相位點獲得,該 非延遲時脈信號之一相位延遲變體係被使用作為一延遲時 脈信號,且該延遲獲得時間係自該延遲時脈信號之一預定 相位點獲得。
34. 如申請專利範圍第26項所述之方法’其中該些處理 階段係為一同步管線内之各個管線階段。 35. 如申請專利範圍第26項所述之方法’其中被採取用 於〜處理操作之一最小處理時間係大於從該非延遲獲得時 間分離該延遲獲得時間之時間,以使該延遲值不受到執行 不同輸入值之一處理操作所影響。 36·如申請專利範圍第26項所述之方法’其中該處理邏 輯包括一或多數延遲元件,以保證會超過該最小的處理時 間。 43 1309904 3 7.如申請專利範圍第2 6項所述之方法,其中被採取用 於該處理操作之一最大處理時間係小於從該非延遲獲得時 間分離該延遲獲得時間之時間與該非延遲獲得時間之間的 時間總和,以使該處理邏輯藉由該延遲獲得時間來完成該 處理操作。 3 8 ·如申請專利範圍第2 6項所述之方法,其中該處理階 段是一資料處理程序的部分。
3 9.如申請專利範圍第2 6項所述之方法,更包括儲存與 該改變相符之錯誤偵測的一計數。 40 ·如申請專利範圍第3 9項所述之方法,其中該計數係 藉由軟體讀取。
44
TW093107351A 2003-03-20 2004-03-18 Integrated circuit for peforming data processing and method for controlling same TWI309904B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/392,382 US7278080B2 (en) 2003-03-20 2003-03-20 Error detection and recovery within processing stages of an integrated circuit

Publications (2)

Publication Number Publication Date
TW200507396A TW200507396A (en) 2005-02-16
TWI309904B true TWI309904B (en) 2009-05-11

Family

ID=33029690

Family Applications (1)

Application Number Title Priority Date Filing Date
TW093107351A TWI309904B (en) 2003-03-20 2004-03-18 Integrated circuit for peforming data processing and method for controlling same

Country Status (10)

Country Link
US (6) US7278080B2 (zh)
EP (1) EP1604282B1 (zh)
JP (1) JP4426571B2 (zh)
KR (1) KR100982461B1 (zh)
CN (4) CN100401262C (zh)
IL (3) IL168453A (zh)
MY (1) MY136842A (zh)
RU (1) RU2005129253A (zh)
TW (1) TWI309904B (zh)
WO (1) WO2004084072A1 (zh)

Families Citing this family (110)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7260001B2 (en) 2003-03-20 2007-08-21 Arm Limited Memory system having fast and slow data reading mechanisms
US8650470B2 (en) 2003-03-20 2014-02-11 Arm Limited Error recovery within integrated circuit
EP1604281B1 (en) * 2003-03-20 2006-08-09 ARM Limited Systematic and random error detection and recovery within processing stages of an integrated circuit
US8185812B2 (en) 2003-03-20 2012-05-22 Arm Limited Single event upset error detection within an integrated circuit
US7278080B2 (en) 2003-03-20 2007-10-02 Arm Limited Error detection and recovery within processing stages of an integrated circuit
JP2006527848A (ja) * 2003-06-16 2006-12-07 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ タイミング・クロージャ監視回路および方法
FR2869430A1 (fr) * 2004-04-27 2005-10-28 St Microelectronics Sa Controle de l'execution d'un algorithme par un circuit integre
US7373572B2 (en) * 2005-01-26 2008-05-13 Intel Corporation System pulse latch and shadow pulse latch coupled to output joining circuit
US7523371B2 (en) * 2004-06-30 2009-04-21 Intel Corporation System and shadow bistable circuits coupled to output joining circuit
US7188284B2 (en) * 2004-06-30 2007-03-06 Intel Corporation Error detecting circuit
US20060031733A1 (en) * 2004-08-03 2006-02-09 Xiaowei Zhu Power-saving retention mode
US20060184770A1 (en) * 2005-02-12 2006-08-17 International Business Machines Corporation Method of implementing precise, localized hardware-error workarounds under centralized control
US7701240B2 (en) * 2005-03-04 2010-04-20 Arm Limited Integrated circuit with error correction mechanisms to offset narrow tolerancing
FR2884080B1 (fr) * 2005-04-05 2007-05-25 Iroc Technologies Sa Ensemble de circuits electroniques protege contre des perturbations transitoires
WO2006115474A1 (en) * 2005-04-21 2006-11-02 Arm Limited Error recovery within processing stages of an integrated circuit
US20060288196A1 (en) * 2005-06-20 2006-12-21 Osman Unsal System and method for exploiting timing variability in a processor pipeline
US7447941B2 (en) * 2005-07-19 2008-11-04 Hewlett-Packard Development Company, L.P. Error recovery systems and methods for execution data paths
DE102005049232A1 (de) * 2005-10-14 2007-04-26 Infineon Technologies Ag Integrierter Schaltkreis und Verfahren zum Betreiben eines integrierten Schaltkreises
JP2007195076A (ja) * 2006-01-20 2007-08-02 Nec Corp 無線通信システムとその送信電力制御方法および装置
US7602874B2 (en) * 2006-01-26 2009-10-13 International Business Machines Corporation Providing accurate time-based counters for scaling operating frequencies of microprocessors
CN101501653B (zh) * 2006-02-06 2012-04-04 X档案公司 磁盘的长期备份
JP2007248379A (ja) * 2006-03-17 2007-09-27 Fujitsu Ltd 半導体装置及び半導体装置のテスト方法
JP5173216B2 (ja) * 2006-04-18 2013-04-03 パナソニック株式会社 半導体集積回路システム、半導体集積回路、オペレーティングシステム及び半導体集積回路の制御方法
US7965119B2 (en) * 2006-06-20 2011-06-21 Freescale Semiconductor, Inc. Device and method for handling metastable signals
WO2008015495A1 (en) * 2006-08-03 2008-02-07 Freescale Semiconductor, Inc. Device and method for power management
US20090315601A1 (en) * 2006-08-03 2009-12-24 Freescale Semiconductor, Inc. Device and method for timing error management
JP4224094B2 (ja) * 2006-09-27 2009-02-12 株式会社東芝 半導体集積回路装置
US8020038B2 (en) * 2006-09-28 2011-09-13 Hewlett-Packard Development Company, L.P. System and method for adjusting operating points of a processor based on detected processor errors
US8020018B2 (en) * 2006-09-28 2011-09-13 Infineon Technologies Ag Circuit arrangement and method of operating a circuit arrangement
GB0619949D0 (en) 2006-10-09 2006-11-15 Advanced Risc Mach Ltd Integrated circuit
JP4343945B2 (ja) * 2006-12-28 2009-10-14 三菱電機株式会社 電子制御装置
US8705300B1 (en) * 2007-02-27 2014-04-22 Altera Corporation Memory array circuitry with stability enhancement features
GB2448118B (en) 2007-04-03 2011-08-24 Advanced Risc Mach Ltd Error recovery following erroneous execution with an instruction processing pipeline
GB2479090B (en) * 2007-04-03 2011-11-16 Advanced Risc Mach Ltd Error recovery following erroneous execution with an instruction processing pipeline
US7865808B2 (en) 2007-05-09 2011-01-04 Harris Corporation Fast error detection system and related methods
GB0709911D0 (en) * 2007-05-23 2007-07-04 Advanced Risc Mach Ltd Data processing apparatus and method for controlling a transfer of payload data over a communication channel
US8050781B2 (en) * 2007-06-29 2011-11-01 Emulex Design & Manufacturing Corporation Systems and methods for ASIC power consumption reduction
US8230446B2 (en) * 2007-11-28 2012-07-24 International Business Machines Corporation Providing a computing system with real-time capabilities
GB2455344B (en) * 2007-12-06 2012-06-13 Advanced Risc Mach Ltd Recovering from control path errors
US7917793B2 (en) * 2008-02-11 2011-03-29 National Chung Cheng University Apparatus providing locally adaptive retiming pipeline with swing structure
JP2009200739A (ja) * 2008-02-20 2009-09-03 Panasonic Corp 半導体集積回路
GB2458260A (en) 2008-02-26 2009-09-16 Advanced Risc Mach Ltd Selectively disabling error repair circuitry in an integrated circuit
US8171386B2 (en) * 2008-03-27 2012-05-01 Arm Limited Single event upset error detection within sequential storage circuitry of an integrated circuit
US7795920B2 (en) * 2008-03-31 2010-09-14 Kabushiki Kaisha Toshiba Semiconductor integrated circuit
CN102084349A (zh) * 2008-04-04 2011-06-01 亚利桑那董事会,代表亚利桑那大学行事的亚利桑那州法人团体 用于片上网路的容错与容变能力以及面积优化链路
US7945811B2 (en) * 2008-05-12 2011-05-17 Arm Limited Low power, high reliability specific compound functional units
GB0813027D0 (en) * 2008-07-16 2008-08-20 Advanced Risc Mach Ltd Error detection
US7975172B2 (en) * 2008-08-14 2011-07-05 International Business Machines Corporation Redundant execution of instructions in multistage execution pipeline during unused execution cycles
GB2463278B (en) * 2008-09-05 2012-05-16 Advanced Risc Mach Ltd Scheduling control within a data processing system
US8161367B2 (en) * 2008-10-07 2012-04-17 Arm Limited Correction of single event upset error within sequential storage circuitry of an integrated circuit
US8407025B2 (en) * 2009-02-25 2013-03-26 Arm Limited Operating parameter control of an apparatus for processing data
US7900114B2 (en) * 2009-02-27 2011-03-01 Infineon Technologies Ag Error detection in an integrated circuit
US8006147B2 (en) * 2009-03-16 2011-08-23 Arm Limited Error detection in precharged logic
US8352819B2 (en) * 2009-04-15 2013-01-08 Arm Limited State retention using a variable retention voltage
DE102009029784A1 (de) * 2009-06-18 2010-12-30 Atmel Automotive Gmbh Integrierter Schaltkreis und Standardzelle eines integrierten Schaltkreises
JP2011090448A (ja) * 2009-10-21 2011-05-06 Renesas Electronics Corp 半導体集積回路
CN102712242A (zh) * 2009-11-06 2012-10-03 万国卡车知识产权有限公司 用于具有混合电动系统的车辆上设备的控制系统
US8145669B2 (en) * 2009-12-11 2012-03-27 At&T Intellectual Property I, L.P. Methods and apparatus for representing probabilistic data using a probabilistic histogram
JP5373659B2 (ja) * 2010-02-18 2013-12-18 株式会社日立製作所 電子機器
US8555124B2 (en) 2010-06-07 2013-10-08 Arm Limited Apparatus and method for detecting an approaching error condition
WO2012007643A1 (en) * 2010-07-16 2012-01-19 Aalto University Foundation Sequential circuit with current mode error detection
US8615687B2 (en) 2010-07-23 2013-12-24 Arm Limited Data processing system and method for regulating a voltage supply to functional circuitry of the data processing system
CN101975919B (zh) * 2010-09-19 2013-01-16 王振国 一种电路状态检测的方法和装置
US9075110B2 (en) * 2010-10-05 2015-07-07 Kyushu Institute Of Technology Fault detection system, acquisition apparatus, fault detection method, program, and non-transitory computer-readable medium
JP5621566B2 (ja) * 2010-12-10 2014-11-12 日本電気株式会社 遅延時間測定装置および遅延時間測定方法
US8639987B2 (en) 2011-02-18 2014-01-28 Arm Limited Data processing apparatus and method using monitoring circuitry to control operating parameters
US20120221884A1 (en) * 2011-02-28 2012-08-30 Carter Nicholas P Error management across hardware and software layers
US8493120B2 (en) 2011-03-10 2013-07-23 Arm Limited Storage circuitry and method with increased resilience to single event upsets
US8862938B2 (en) 2011-04-18 2014-10-14 General Electric Company System, method, and apparatus for resolving errors in a system
US8732499B2 (en) 2011-05-27 2014-05-20 Arm Limited State retention circuit adapted to allow its state integrity to be verified
US8639960B2 (en) 2011-05-27 2014-01-28 Arm Limited Verifying state integrity in state retention circuits
ITTO20110485A1 (it) 2011-06-03 2012-12-04 Torino Politecnico Method and circuit for solving metastability conditions and recovering signal errors in digitalintegrated circuits
GB201114831D0 (en) 2011-08-26 2011-10-12 Univ Oxford Brookes Circuit with error correction
US8732523B2 (en) 2011-10-24 2014-05-20 Arm Limited Data processing apparatus and method for analysing transient faults occurring within storage elements of the data processing apparatus
US8599626B2 (en) 2011-12-07 2013-12-03 Arm Limited Memory device and a method of operating such a memory device in a speculative read mode
US8509015B2 (en) 2011-12-16 2013-08-13 Arm Limited Using a precharge characteristics of a node to validate a previous data/signal value represented by a discharge of said node
US9317342B2 (en) * 2011-12-23 2016-04-19 Intel Corporation Characterization of within-die variations of many-core processors
US8624623B2 (en) * 2011-12-30 2014-01-07 Stmicroelectronics International N.V. Apparatus having error detection in sequential logic
US9047184B2 (en) 2012-07-13 2015-06-02 Arm Limited Processing error detection within pipeline circuitry
CN103678017B (zh) * 2012-09-03 2018-05-15 江苏东大集成电路系统工程技术有限公司 一种基于片上监测的可切换错误恢复方法
US9600382B2 (en) * 2012-09-03 2017-03-21 Southeast University Error recovery circuit oriented to CPU pipeline
CN103019876B (zh) * 2012-12-26 2015-07-01 东南大学 一种面向cpu流水线的错误恢复电路
JP6036089B2 (ja) * 2012-09-25 2016-11-30 日本電気株式会社 データ遷移トレース装置、データ遷移トレース方法、及び、データ遷移トレースプログラム
WO2014049395A1 (en) * 2012-09-27 2014-04-03 Freescale Semiconductor, Inc. Scan test system
US9304531B2 (en) * 2012-10-31 2016-04-05 Broadcom Corporation Dynamically scaling voltage/frequency
US9009545B2 (en) * 2013-06-14 2015-04-14 International Business Machines Corporation Pulsed-latch based razor with 1-cycle error recovery scheme
US9069736B2 (en) * 2013-07-09 2015-06-30 Xerox Corporation Error prediction with partial feedback
TWI553484B (zh) * 2014-04-01 2016-10-11 Nat Univ Chung Cheng 前瞻臆測處理裝置及其處理方法
KR102175403B1 (ko) * 2014-07-21 2020-11-06 한국전자통신연구원 디지털 연산 회로의 기능 복구 장치 및 방법
US20160026912A1 (en) * 2014-07-22 2016-01-28 Intel Corporation Weight-shifting mechanism for convolutional neural networks
US9244123B1 (en) 2014-11-25 2016-01-26 Freescale Semiconductor, Inc. Synchronous circuit, method of designing a synchronous circuit, and method of validating a synchronous circuit
TWI554042B (zh) 2014-12-08 2016-10-11 財團法人工業技術研究院 訊號比較裝置及其控制方法
US9645602B2 (en) 2015-09-23 2017-05-09 Qualcomm Incorporated Frequency sensor for side-channel attack
GB2545458A (en) * 2015-12-17 2017-06-21 Minima Processor Oy A system and a method for controlling operating voltage
US20170184664A1 (en) * 2015-12-28 2017-06-29 Michel Nicolaidis Highly efficient double-sampling architectures
DE102015122907B4 (de) 2015-12-29 2019-07-04 Infineon Technologies Ag Speichereinrichtung und Verfahren zum Betreiben einer Speichereinrichtung
CN105913868B (zh) * 2016-03-31 2018-09-21 华为技术有限公司 一种调整频率的方法、片上系统及终端
CN106027024B (zh) * 2016-05-16 2018-08-24 电子科技大学 一种带延迟检测的低功耗寄存器单元电路
EP3300254B1 (en) 2016-09-26 2021-07-07 HS Elektronik Systeme GmbH Control circuit for solid state power controller
CN107015627A (zh) * 2017-03-07 2017-08-04 记忆科技(深圳)有限公司 一种基于扫描链的cpu低功耗实现方法
US9927775B1 (en) * 2017-04-01 2018-03-27 Intel Corporation Binary stochastic time-to-digital converter and method
US10698610B2 (en) 2018-02-23 2020-06-30 Western Digital Technologies, Inc. Storage system and method for performing high-speed read and write operations
CN110660445B (zh) * 2018-06-29 2021-07-30 华邦电子股份有限公司 离群位修复方法和存储器装置
KR20210058566A (ko) * 2019-11-14 2021-05-24 삼성전자주식회사 전자 시스템, 그것의 결함 검출 방법, 시스템 온 칩 및 버스 시스템
US11249883B2 (en) 2020-01-02 2022-02-15 Bank Of America Corporation Error repair tool using sentiment analysis
US11635465B2 (en) 2020-10-29 2023-04-25 Stmicroelectronics International N.V. Device and method for monitoring data and timing signals in integrated circuits
KR20220121632A (ko) * 2021-02-25 2022-09-01 삼성전자주식회사 집적회로 및 집적회로 동작 방법
FI130137B (en) 2021-04-22 2023-03-09 Univ Of Oulu A METHOD FOR INCREASING ENERGY EFFICIENCY USING ERROR-TOLERANT ALGORITHMS FOR UNDERVOLTAGE DIGITAL SYSTEMS
US11928475B2 (en) 2021-11-05 2024-03-12 Ceremorphic, Inc. Fast recovery for dual core lock step
CN115453849B (zh) * 2022-08-25 2023-05-26 灿芯半导体(天津)有限公司 一种高精度捕获电路及捕获方法

Family Cites Families (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3905023A (en) * 1973-08-15 1975-09-09 Burroughs Corp Large scale multi-level information processing system employing improved failsaft techniques
US3893070A (en) 1974-01-07 1975-07-01 Ibm Error correction and detection circuit with modular coding unit
SU809350A1 (ru) 1979-05-31 1981-02-28 Московский Ордена Трудовогокрасного Знамени Текстильныйинститут Запоминающее устройство
US4339657A (en) 1980-02-06 1982-07-13 International Business Machines Corporation Error logging for automatic apparatus
US4414669A (en) * 1981-07-23 1983-11-08 General Electric Company Self-testing pipeline processors
JPS6020398A (ja) 1983-07-14 1985-02-01 Nec Corp メモリ装置
FR2571566B1 (fr) 1984-10-09 1987-01-23 Labo Electronique Physique Dispositif de reception de donnees numeriques comportant un dispositif de recuperation adaptative de rythme
US4633465A (en) 1985-03-27 1986-12-30 At&T Bell Laboratories Eye violation detectors
JPS6224498A (ja) 1985-07-24 1987-02-02 Nippon Telegr & Teleph Corp <Ntt> メモリ読出し方式
US4756005A (en) 1986-05-27 1988-07-05 American Telephone And Telegraph Company At&T Bell Laboratories Digital signal regenerator arranged for fault location
US5043990A (en) 1987-12-04 1991-08-27 Hitachi, Ltd. Semiconductor integrated circuit device
GB2213684A (en) 1987-12-11 1989-08-16 Philips Electronic Associated Data demodulator baud clock phase locking
JP3076044B2 (ja) * 1988-07-27 2000-08-14 日本電気株式会社 パイプラインのエラー情報記憶方式
US4994993A (en) 1988-10-26 1991-02-19 Advanced Micro Devices, Inc. System for detecting and correcting errors generated by arithmetic logic units
US4975930A (en) 1988-11-02 1990-12-04 Digital Equipment Corporation Digital phase locked loop
US4926374A (en) * 1988-11-23 1990-05-15 International Business Machines Corporation Residue checking apparatus for detecting errors in add, subtract, multiply, divide and square root operations
AU628971B2 (en) * 1989-05-22 1992-09-24 Tandem Computers Incorporated Sequential parity correction
JPH03142629A (ja) 1989-10-30 1991-06-18 Toshiba Corp マイクロコントローラ
US5291496A (en) 1990-10-18 1994-03-01 The United States Of America As Represented By The United States Department Of Energy Fault-tolerant corrector/detector chip for high-speed data processing
US5321705A (en) 1990-11-21 1994-06-14 Motorola, Inc. Error detection system
US5203003A (en) 1991-03-28 1993-04-13 Echelon Corporation Computer architecture for conserving power by using shared resources and method for suspending processor execution in pipeline
US5313625A (en) 1991-07-30 1994-05-17 Honeywell Inc. Fault recoverable computer system
US5276690A (en) 1992-01-30 1994-01-04 Intel Corporation Apparatus utilizing dual compare logic for self checking of functional redundancy check (FRC) logic
US5402273A (en) 1992-10-01 1995-03-28 Conner Peripherals, Inc. Circuit for determining window margin for data transitions in a streaming data device
US5408200A (en) 1992-12-18 1995-04-18 Storage Technology Corporation Intelligent phase detector
US5376894A (en) 1992-12-31 1994-12-27 Pacific Communication Sciences, Inc. Phase estimation and synchronization using a PSK demodulator
JPH06216655A (ja) 1993-01-13 1994-08-05 Nec Corp 復調回路
US5400370A (en) 1993-02-24 1995-03-21 Advanced Micro Devices Inc. All digital high speed algorithmic data recovery method and apparatus using locally generated compensated broad band time rulers and data edge position averaging
ES2183808T3 (es) 1993-10-12 2003-04-01 Cit Alcatel Circuito sincronizador.
DE69431374T2 (de) * 1993-10-15 2003-04-30 Hitachi Ltd Logischer Schaltkreis mit Fehlernachweisfunktion
EP0653708B1 (en) 1993-10-15 2000-08-16 Hitachi, Ltd. Logic circuit having error detection function, redundant resource management method, and fault tolerant system using it
US5504859A (en) 1993-11-09 1996-04-02 International Business Machines Corporation Data processor with enhanced error recovery
US5553232A (en) 1994-06-13 1996-09-03 Bull Hn Informations Systems Inc. Automated safestore stack generation and move in a fault tolerant central processor
JPH0863365A (ja) 1994-08-23 1996-03-08 Fujitsu Ltd データ処理装置
US5463351A (en) 1994-09-29 1995-10-31 Motorola, Inc. Nested digital phase lock loop
US5734585A (en) 1994-11-07 1998-03-31 Norand Corporation Method and apparatus for sequencing power delivery in mixed supply computer systems
US5615263A (en) 1995-01-06 1997-03-25 Vlsi Technology, Inc. Dual purpose security architecture with protected internal operating system
US5737369A (en) 1996-02-28 1998-04-07 Motorola, Inc. Apparatus and method for recovering data in the presence of error transients
US5870446A (en) 1996-03-11 1999-02-09 Adtran, Inc. Mechanism for automatically adjusting the phase of a transmission strobe clock signal to correct for misalignment of transmission clock and data signals
JP3669796B2 (ja) 1996-12-03 2005-07-13 富士通株式会社 ディジタルpll回路
US5741110A (en) * 1997-01-03 1998-04-21 Grinage, Jr.; Lloyd Front loading truck rack for wheeled loads
FR2759796B1 (fr) 1997-02-19 2001-12-07 Bull Sa Dispositif et procede de detection d'erreurs sur un circuit integre comportant un port parallele serie
US6114880A (en) 1997-03-14 2000-09-05 Philips Semiconductor Vlsi, Inc. Dynamic over frequency detection and protection circuitry
JP3494849B2 (ja) 1997-05-29 2004-02-09 富士通株式会社 半導体記憶装置のデータ読み出し方法、半導体記憶装置及び半導体記憶装置の制御装置
CN1202530C (zh) 1998-04-01 2005-05-18 三菱电机株式会社 在低电源电压下高速动作的静态型半导体存储装置
US6222660B1 (en) 1998-06-09 2001-04-24 Tektronix, Inc. Adaptive power supply for avalanche photodiode
US6247151B1 (en) 1998-06-30 2001-06-12 Intel Corporation Method and apparatus for verifying that data stored in a memory has not been corrupted
US6167526A (en) 1998-12-29 2000-12-26 Adaptec, Inc. Method and apparatus for synchronizing a decoder circuit with a phase-encoded data signal in a data storage device
US6977910B1 (en) 1998-12-31 2005-12-20 Texas Instruments Incorporated Power control with space time transmit diversity
JP2000228094A (ja) 1999-02-04 2000-08-15 Toshiba Corp 不揮発性半導体記憶装置
FR2790887B1 (fr) 1999-03-09 2003-01-03 Univ Joseph Fourier Circuit logique protege contre des perturbations transitoires
US6523201B1 (en) 1999-05-04 2003-02-25 Eliza A. De Michele Sleep support system
JP3975245B2 (ja) * 1999-12-16 2007-09-12 株式会社ルネサステクノロジ 記録再生装置および半導体メモリ
US6834367B2 (en) 1999-12-22 2004-12-21 International Business Machines Corporation Built-in self test system and method for high speed clock and data recovery circuit
CA2395645A1 (en) 1999-12-23 2001-06-28 General Instrument Corporation Dual-mode processor
JP2001255356A (ja) 2000-03-08 2001-09-21 Matsushita Electric Ind Co Ltd 半導体集積回路のテストパターン生成方法及びテスト方法
JP3450814B2 (ja) 2000-09-26 2003-09-29 松下電器産業株式会社 情報処理装置
JP3688572B2 (ja) * 2000-09-28 2005-08-31 株式会社東芝 半導体集積回路
FR2815197B1 (fr) 2000-10-06 2003-01-03 St Microelectronics Sa Circuit asynchrone pour la detection et la correction de l'erreur induite et procede de mise en oeuvre
WO2002035346A1 (en) 2000-10-23 2002-05-02 The Trustees Of Columbia University In The City Of New York Asynchronous pipeline with latch controllers
US6693985B2 (en) 2000-10-27 2004-02-17 Silicon Image Clock and data recovery method and apparatus
GB0026614D0 (en) 2000-10-31 2000-12-13 Lsi Logic Europ Ltd A method and apparatus for estimation of error in data recovery schemes
US6772388B2 (en) 2000-12-06 2004-08-03 Motorola, Inc Apparatus and method for providing optimal adaptive forward error correction in data communications
US6711712B2 (en) * 2000-12-21 2004-03-23 Intel Corporation Method and apparatus for error detection/correction
JP4526194B2 (ja) 2001-01-11 2010-08-18 ルネサスエレクトロニクス株式会社 オーバーサンプリングクロックリカバリ方法及び回路
US7116744B2 (en) 2001-03-29 2006-10-03 Fujitsu Limited Clock recovery circuit and receiver circuit for improving the error rate of signal reproduction
US6708284B2 (en) * 2001-03-30 2004-03-16 Intel Corporation Method and apparatus for improving reliability in microprocessors
JP4054550B2 (ja) 2001-06-29 2008-02-27 株式会社エヌ・ティ・ティ・ドコモ 送信電力制御方法及び装置
US6952123B2 (en) 2002-03-22 2005-10-04 Rambus Inc. System with dual rail regulated locked loop
US6741110B2 (en) 2002-05-28 2004-05-25 Lsi Logic Corporation Method and/or circuit for generating precision programmable multiple phase angle clocks
US7142623B2 (en) 2002-05-31 2006-11-28 International Business Machines Corporation On-chip system and method for measuring jitter tolerance of a clock and data recovery circuit
US7043679B1 (en) * 2002-06-27 2006-05-09 Advanced Micro Devices, Inc. Piggybacking of ECC corrections behind loads
US7085993B2 (en) 2002-07-29 2006-08-01 International Business Machine Corporation System and method for correcting timing signals in integrated circuits
US7399043B2 (en) 2002-12-02 2008-07-15 Silverbrook Research Pty Ltd Compensation for uneven printhead module lengths in a multi-module printhead
US7055060B2 (en) * 2002-12-19 2006-05-30 Intel Corporation On-die mechanism for high-reliability processor
EP1604281B1 (en) * 2003-03-20 2006-08-09 ARM Limited Systematic and random error detection and recovery within processing stages of an integrated circuit
US7278080B2 (en) * 2003-03-20 2007-10-02 Arm Limited Error detection and recovery within processing stages of an integrated circuit

Also Published As

Publication number Publication date
US7401273B2 (en) 2008-07-15
US20040223386A1 (en) 2004-11-11
US7278080B2 (en) 2007-10-02
US7650551B2 (en) 2010-01-19
US20040239397A1 (en) 2004-12-02
JP4426571B2 (ja) 2010-03-03
US7310755B2 (en) 2007-12-18
US20040199821A1 (en) 2004-10-07
IL169151A0 (en) 2007-07-04
IL168453A (en) 2010-05-31
CN100468286C (zh) 2009-03-11
WO2004084072A1 (en) 2004-09-30
TW200507396A (en) 2005-02-16
JP2006520952A (ja) 2006-09-14
RU2005129253A (ru) 2006-04-10
CN1762028A (zh) 2006-04-19
CN100449651C (zh) 2009-01-07
US20040243893A1 (en) 2004-12-02
CN1761946A (zh) 2006-04-19
MY136842A (en) 2008-11-28
EP1604282B1 (en) 2018-08-22
CN1761927A (zh) 2006-04-19
IL168928A (en) 2010-05-31
CN100416507C (zh) 2008-09-03
US20070288798A1 (en) 2007-12-13
US20050207521A1 (en) 2005-09-22
CN100401262C (zh) 2008-07-09
KR20050118185A (ko) 2005-12-15
US6944067B2 (en) 2005-09-13
EP1604282A1 (en) 2005-12-14
IL169151A (en) 2010-05-31
KR100982461B1 (ko) 2010-09-16
CN1761945A (zh) 2006-04-19
US7162661B2 (en) 2007-01-09

Similar Documents

Publication Publication Date Title
TWI309904B (en) Integrated circuit for peforming data processing and method for controlling same
US10579463B2 (en) Error recovery within integrated circuit
KR100981999B1 (ko) 집적회로의 처리단 내에서의 시스템적이고 랜덤한 오류의검출 및 회복
US8060814B2 (en) Error recovery within processing stages of an integrated circuit
US7260001B2 (en) Memory system having fast and slow data reading mechanisms
US7072229B2 (en) Memory system having fast and slow data reading mechanisms
KR100994188B1 (ko) 집적회로내에서의 데이터 유지 래치 제공