SE511114C2 - Metod vid processor, samt processor anpassad att verka enligt metoden - Google Patents

Metod vid processor, samt processor anpassad att verka enligt metoden

Info

Publication number
SE511114C2
SE511114C2 SE9704606A SE9704606A SE511114C2 SE 511114 C2 SE511114 C2 SE 511114C2 SE 9704606 A SE9704606 A SE 9704606A SE 9704606 A SE9704606 A SE 9704606A SE 511114 C2 SE511114 C2 SE 511114C2
Authority
SE
Sweden
Prior art keywords
unit
data word
computing
processor
read
Prior art date
Application number
SE9704606A
Other languages
English (en)
Other versions
SE9704606D0 (sv
SE9704606L (sv
Inventor
Michael Rosendahl
Tomas Lars Jonsson
Per Anders Holmberg
Original Assignee
Ericsson Telefon Ab L M
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 Ericsson Telefon Ab L M filed Critical Ericsson Telefon Ab L M
Priority to SE9704606A priority Critical patent/SE511114C2/sv
Publication of SE9704606D0 publication Critical patent/SE9704606D0/sv
Priority to DE69813018T priority patent/DE69813018T2/de
Priority to AU17951/99A priority patent/AU1795199A/en
Priority to JP2000524727A priority patent/JP2001526422A/ja
Priority to PCT/SE1998/002267 priority patent/WO1999030235A2/en
Priority to EP98962793A priority patent/EP1038224B1/en
Priority to US09/207,765 priority patent/US6330701B1/en
Publication of SE9704606L publication Critical patent/SE9704606L/sv
Publication of SE511114C2 publication Critical patent/SE511114C2/sv

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1654Error detection by comparing the output of redundant processing systems where the output of only one of the redundant processing components can drive the attached hardware, e.g. memory or I/O
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/165Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components

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)
  • Detection And Correction Of Errors (AREA)

Description

10 15 20 25 30 511114 Vidare kan en processorstruktur omfatta en järnförande enhet, avsedd att järnföra utdata från de parallellt verkande beräknande enhetema, en diagnostiserande enhet, vilken är anpassad att utvärdera vilken av de två beräknande enhetema som lämnat korrekt utdata vid en detekterad skillnad i den jämförande enheten, samt en styrande enhet, vilken är anpassad att styra så att utdata från processorstrukturen kommer från en beräknande enhet som lärrmat korrekt utdata.
De två parallellt verkande beräknande enheterna inväntar utvärderingen av den diagnosti- serande enheten vid en detekterad skillnad i den jämförande enheten, varefter den beräknande enhet som lämnat korrekt utdata fortsätter att verka efter ett erhållet resultat av utvärderingen.
Den beräknande enhet som lämnat inkorrekt utdata stoppas och genomgår en uppstartnings- rutin, varigenom den stoppade beräknande enheten bringas till att komma i fas med den fortsatt verkande beräknande enheten, varefter den stoppade beräknande enheten åter kan startas for en parallell verkan med den icke stoppade beräknande enheten, Under det att endast en beräk- nande enhet verkar sägs det allmänt att processorstrukturen verkar som en "enkelmaskin". Med stoppad avses i den följande beskrivningen således inte att den beräknande enheten stannar i sitt arbete och stängs av utan att den beräknande enheten i fråga är stoppad från att utföra ordinarie exekveringsarbete och i stället övergår till att genomföra olika självkontroller och/eller den tidigare nämnda uppstartningsrutinen.
Med beräknande enhet avses här en enhet avsedd att behandla eller exekvera inlästa instruk- tioner eller dataord, såsom en processor eller en ALU (Arithmetic Logica] Unit) inom en processor.
Det är sedan länge känt att använda felkorrigeringen i en dubbelmaskin för att korrigera bitfel i de från programkoden inlästa dataorden och för att, vid en diagnostisering av vilken processor som lämnat ett felaktigt resultat vid en eventuell skillnad mellan resultaten från de två proces- sorema, utvärdera vilken processor som lämnat det felaktiga resultatet.
I ett system som är mycket känsligt för processorstörriingar används normalt två parallella pro- cessorer vilka utför exakt samma operationer. 10 15 20 25 30 511114 Vid varje exekverad instruktionjärnfors resultatet från de två processorema och så länge resul- taten är identiska anser man att resultatet stämmer.
Om det föreligger en skillnad mellan resultaten låter man utgå från att den ena processorn gjort en felaktig beräkning och man måste då ta reda på vilken av processorema som lämnat ett felaktigt resultat.
Vid en skillnad används en metod for diagnostisering som lämnar besked om vilken av de två processorema som länmat ett felaktigt resultat. Denna metod får norrnalt ta högst 20 ms att genomföra. Under denna tid utför de båda processorema inget beräknande eller exekverande arbete avseende de inlästa instruktionerna, utan står i ett vilotillstånd där de exempelvis utför visst sjålvdiagnostiserande arbete.
Efier att det är fastställt vilken av processorema som lämnat det felaktiga resultatet fortsätter den korrekta processom att exekvera inkommande instruktioner som en enkelmaskin.
Under denna tidsperiod är systemet mycket sårbart efiersom det inte ñnns någon kontroll av huruvida resultaten från denna enda processor är korrekta eller ej.
Den stoppade processom måste således komma igång så snart som möjligt, vilket görs med en specifik uppstartningsrutin varigenom den stoppade processorn startas om och fås att komma i fas med den korrekta processorn.
En sådan uppstartningsrutin tar ett antal rninuter i anspråk och omfattar en total omskrivning av samtliga minnen hörande till den stoppade processom där dessa minnen tilldelas samma information som den information som finns i den korrekta processoms minnen.
Då innehållet i samtliga minnen i den stoppade processorn är identiskt med innehållet i minnena hörande till den korrekta processom kan en omstart göras av den stoppade processom och systemet går från enkelmaskin tillbaka till dubbelmaskin igen. 10 15 20 25 30 -4- 511 114 Den högsta felfrekvensen vid felaktigt exekverade instruktioner uppkommer vanligtvis i sam- band med läsning från minnen, vid så kallade minnesaccesser. Detta beror på att kring en processor arbetar ett flertal olika minnen och att minnen i sig har en hög felfrekvens.
För att minska antalet fel på grund av felaktiga minnesaccesser vid inläsning av instruktioner från programkoden är det känt att använda traditionell felkonigering.
Detta görs genom att ett antal kontrollbitar används för varje dataord vid inläsning av instruk- tioner genom vilka en algoritm kan kontrollera att den inlästa instruktionen är korrekt. Vid ett felaktigt inläst dataord används kontrollbitarna för en felkorrigering av dataordet.
Förenklat kan det sägas att felkorrigeringen kan få tre olika utfall: - ett fel hittas och korrigeras, - ett fel hittas och kan ej korrigeras eller - ett fel hittas och korrigeras på ett felaktigt sätt.
Ytterligare en möjlighet är att det föreligger ett bitfel i ett inläst dataord vilket inte upptäcks av felkorrigeringsalgoritmen.
Det första utfallet resulterar i att ett korrekt dataord läses in till processorn och inget fel upp- står Det andra utfallet resulterar i att ett felaktigt dataord läses in till processorn vilket resulterar i en skillnad i resultaten från de parallellt beräknande processorema.
Diagnostiseringsförfarandet blir här förenklat eftersom resultatet från felkorrigeringsalgonitmen visar på att det ena dataordet var felaktigt.
Det tredje utfallet resulterar i att ett felaktigt dataord läses in till processorn vilket resulterar i en skillnad i resultaten från de parallella processorema. Diagnostiseringsförfarandet får här ingen hjälp från felkorrigeringsalgoritmen eftersom denna visar att det inlästa dataordet var lO lS 20 25 30 -5- 511114- korrekt (korrigerat). Sannolikheten for att det tredje utfallet skall uppstå är vanligtvis ytterst liten.
I det fall ett bitfel i ett inlåst dataord inte upptäcks befinner man sig i samma situation som i det ovan beskrivna tredje fallet.
En minnesaccess tar normalt cirka 5 till 6 datacykler i anspråk, av vilka en datacykel används for en felkorrigering.
Vid ett kontinuerligt instruktionsflöde spelar den extra tid som denna datacykel kräver ingen roll efiersom instruktionema kommer sekventiellt efter varandra.
Vid ett sekvensbrott i inläsningen av instmktioner, såsom vid en hoppinstruktion, måste man starta om med att accessa minnet från en före sekvensbrottet okänd adress.
Detta medfor en tidlucka i inläsningssekvensen som motsvaras av accesstiden, alltså i storleks- ordningen 5 till 6 datacykler.
F elkorrigeringen utföres av en ALU som inte ingår i det ordinarie exekveringsarbetet i proces- sorn utan som endast används for felkorrigering. Denna process tar således ingen kapacitet från den övriga processen. Resultatet måste dock inväntas innan instruktionen kan anses vara an- vändbar inom den ordinarie processom.
Vid ansträngningar mot ökad elfektivitet med huvudsakligen bibehållen systemsäkerhet anses vinster på delar av procent i inläsningstiden utgöra klara framsteg.
Cirka 10 % av alla instruktioner som läses in från programkoden är olika sorters hoppinstruk- tioner, vilka är instruktioner som orsakar så kallade sekvensbrott i inläsningen av instruktioner till de beräknande enheterna.
Cirka l0 % av inlästa instruktioner utgörs vanligtvis av hoppinstruktioner, instruktioner som orsakar ett sekvensbrott vid inläsningen av instruktionerna. De sekventiellt inlästa instruk- 10 15 20 25 30 -6- 511 114 tionema upptager en datacykel vardera medan en hoppinstruktion, på grund av det sekvens- brott i inlästa instruktioner som en hoppinstruktion utgör, upptager i storleksordningen 6 data- cykler.
Föreliggande uppfinning avser huvudsakligen att minska den extra tidsåtgång som orsakas av sekvensbrott utan att därför på ett menligt sätt behöva påverka systemsäkerheten.
Om varje hoppinstruktion kan minskas från att upptaga exempelvis 6 till 5 datacykler innebär detta en minskning med i genomsnitt 1 datacykel per 15 datacykler i den totala inläsningen av instruktioner, vilket motsvaras av 6,7 % av den totala inläsningstiden. I dessa sammanhang utgör detta en avsevärd tidsbesparing.
Publikationema US-A-4 358 823, US-A-4 916 696 och EP-A2-O 433 979 utgör en del av teknikens ståndpunkt.
REDOGÖRELSE FÖR FÖRELIGGANDE UPPFINNING TEKNISKT PROBLEM Under beaktande av teknikens tidigare ståndpunkt, såsom den beskrivits ovan, torde det få an- ses vara ett tekniskt problem att kunna effektivisera inläsningen av instruktioner till processom med en huvudsakligen bibehållen säkerhet i systemet och med ett förhållandevis litet tidsbort- fall vid en diagnostisering eller utvärdering av vilken beräknande enhet som lämnat korrekt utdata vid en skillnad i utdata från de två parallellt verkande beräknande enheterna.
Det är även ett tekniskt problem att kunna skapa sådana åtgärder varigenom en balans uppnås mellan systemsäkerhet och effektivitet Det är ett tekniskt problem att kunna erbjuda sådana åtgärder att härigenom minskas antalet datacykler som krävs vid en inläsning av dataord till en processor utan att därför behöva minska den totala systemsäkerheten i systemet. 10 15 20 25 30 -7- 511114 Det är ett tekniskt problem att kunna erbjuda en balans mellan erforderlig systemsäkerhet, även om dataorden läses in direkt till respektive beräknande enhet okorrigerade för eventuella bitfel, och eftersträvad effektivitet.
Det blir då ävenledes ett tekniskt problem att kunna erbjuda en möjlighet att taga vara på den information som erhålls vid bitfelskontrollen utan att behöva invänta resultatet från den tredje beräknande enheten, det vill säga resultatet från bitfelskontrollen, vid inläsningen av dataord till de två parallellt verkande beräknande enheterna.
Det är ett tekniskt problem att kunna erbjuda nödvändig balans av systemsäkerhet och effekti- vitet såväl när en processorstruktur används som dubbelmaskin som enkelmaskin, och att anpassa säkerhetsnivån, och därmed mer öka effektiviteten, i de två fallen.
Det är ett tekniskt problem att kunna erbjuda huvudsakligen bibehållen säkerhetsnivå och en effektivisering vid inläsning av dataord genom att nyttja huvudsakligen kända felkorrigerings- algoritmer för bitfelskorrigering och utvärderingsmetoder för diagnostisering av vilken beräknande enhet som lämnar korrekt utdata vid en skillnad i utdata från de två parallellt verkande beräknande enhetema.
Det är även ett tekniskt problem att kunna anpassad en processor, eller en processorstruktur, till att verka enligt den uppfinningsenliga metoden.
I en sådan processorstruktur är det ett tekniskt problem att kunna anvisa sådana åtgärder som möjliggör en samverkan mellan ingående beräknande enheter och andra enheter som erbjuder en första säkerhetsnivå vid driñ som dubbelmaskin och en andra säkerhetsnivå vid drift som enkelmaskin, där båda säkerhetsnivåerna är tillfredsställande och där framför allt driften som dubbelmaskin effektiviserats i relation till känd teknik.
Det är även ett tekniskt problem att kunna erbjuda en processor eller processorstruktur enligt ovan utan att härför behöva tillföra väsentligen nya enheter eller funktioner i relation till känd teknik. 10 15 20 25 30 511 114 -g- LÖSNINGEN För att kunna lösa ett eller flera av de ovan angivna tekniska problemen, bygger föreliggande uppfinning på att med utgångspunkt från en metod och en processor enligt det inledningsvis beskrivna tekniska området, anvisa, att med avsikten att minska antalet datacykler som krävs vid en rninnesaccess och inläsandet av ett dataord till en beräknande enhet, nämnda dataord läses in direkt till respektive beräknande enhet okorrigerade för eventuella bitfel, under det att både nämnda första och nämnda andra beräknande enheter verkar parallellt. Detta medför att en datacykel sparas vid respektive access, vilket ger en tidsvinst vid hoppinstmktioner som orsakar ett sekvensbrott av inläsningen.
Denna inläsning av okorrigerade dataord kommer att generera ett antal felaktigt inlästa data- ord, och därmed även fler detekterade skillnader mellan utdatan från de båda parallellt verkan- de beräknande enhetema. Den information som den tredje respektive fiärde beräknande enhet- en har skall enligt föreliggande uppfinning nyttjas vid utvärderingen av vilken av de två beräknande enhetema som lämnat korrekt utdata vid en detekterad skillnad.
Enligt föreliggande uppfinning skall denna information nyttjas genom att, i det fall ett dataord innehållande ett bitfel lästs in till en av de två parallellt verkande beräknande enhetema, utdatan från denna beräknande enhet anses vara inkorrekt, vilket avsevärt förenklar utvärderingen för den diagnostiserande enheten i de fall som en detekterad skillnad beror på ett felaktigt inläst dataord.
Med avsikten att bibehålla en eftersträvat hög systemsäkerhet under det att en av de två paral- lellt verkande beräknande enheterna är stoppad, anvisar föreliggande uppfinning att inforrnati- onen från den tredje eller fjärde beräknande enheten nyttjas för en felkorrigering av bitfel hos eventuellt felaktigt inlästa dataord innan respektive dataord läses in till den ensamt verkande första eller andra beräknande enheten, och att den tredje och fjärde beräknande enheten är anpassade att utföra denna felkorrigering I detta fall minskar eifektiviteten något eñersom den datacykel som krävs för felkorrigeringen måste nyttjas vid inläsningen, vilket är det pris som måste betalas for en tillfredsställande systemsäkerhet i enkelmaskíndrift. 10 15 20 25 30 -9_ 511114 Vidare anvisar föreliggande uppfinning att felkorrigeringen av bitfel utgöres av en traditionell felkorrigering avsedd att korrigera fel som kan uppkomma vid accesser av olika minnen som är tillgängliga för processorstrukturen.
Denna felkorrigering är möjlig genom att respektive dataord åtföljs av ett antal kontrollbitar, och att kontrollen består i att databitarna inom respektive dataord matchas mot åtföljande kon- trollbitar, samt att en eventuell felkorrigering av ett dataord som innehåller ett bitfel är möjlig genom de för respektive dataord åtföljande kontrollbitarna.
Föreliggande uppfinning anvisar vidare att en processor som är anpassad att verka enligt den uppfinningsenliga metoden skall utgå från en processorstruktur som är tilldelad en struktur som omfattar en första och en andra parallellt verkbar beräknande enhet, en första läsande enhet, varigenom dataord hörande till instruktioner är inläsbara till den första beräknade enheten, samt en andra läsande enhet, varigenom dataord hörande till instruktioner är inläsbara till den andra beräknade enheten.
Processorstrukturen skall även omfatta en tredje och fjärde beräknande enhet, varigenom en kontroll av bitfel inom inlästa dataord till respektive första och andra beräknande enhet är kontinuerligt genomförbar, en jämförande enhet, varigenom utdata från de parallellt verkande beräknande enheterna är jämförbar, en diagnostiserande enhet, varigenom vilken beräknande enhet som lämnat korrekt utdata vid en detekterad skillnad i nämnda jämförande enhet är utvärderbar, samt en styrande enhet, varigenom det är möjligt att styra så att utdatan från nämnda processorstruktur kommer från en beräknande enhet som lärnnat korrekt utdata.
Vidare är de två parallellt verkande beräknande enhetema anpassade att invänta utvärderingen vid en detekterad skillnad i den jämförande enhet, varefter den beräknande enheten som lämnat korrekt utdata är anpassad att fortsätta att verka efter ett erhållet resultat av utvärderingen, under det att den beräknande enhet som lämnat inkorrekt utdata är anpassad att stoppas och genomgå en uppstartningsrutin.
Genom denna uppstartningsrutin är den stoppade beräknande enheten bringbar till att komma i fas med den fortsatt verkande beräknande enhet, varefter den stoppade beräknande enheten är 10 15 20 25 30 511114 anpassad att åter vara startbar för en parallell verkan med den icke stoppade beräknande _10- enheten.
Med utgångspunkt från en sådan processor anvisar föreliggande uppfinning speciellt att, under det att både den första och den andra beräknande enheten verkar parallellt, dataorden är läs- bara direkt in till respektive beräknande enhet okorrigerade för eventuella bitfel, och att infor- mationen är tillgänglig vid utvärderingen.
Vidare är den diagnostiserande enheten anpassad att nyttja informationen, vilken visar huruvida ett dataord som lästs in till en av de tvâ parallellt verkbara beräknande enheterna innehöll ett bitfel, genom att, i det fall ett dataord innehållande ett bitfel lästs in till en av de två parallellt verkande beräknande enheterna, utdatan från denna beräknande enhet anses vara inkorrekt.
Under det att en av de två parallellt verkbara beräknande enheterna är stoppad, är den tredje eller fiärde beräknande enheten anpassad att nyttja informationen för en felkorrigering av bitfel hos eventuellt felaktigt inlästa dataord innan respektive dataord läses in till den ensamt verkan- de forsta eller andra beräknande enheten.
Vidare är den tredje och fjärde beräknande enheten anpassad att utföra felkorrigeringen.
Med avsikten att möjliggöra nyttjandet av tidigare känd teknik anvisar föreliggande uppfinning att den tredje och fjärde beräknande enheten är anpassad att genomföra en felkorrigering, vilken utgöres av en traditionell felkorrigering avsedd att korrigera fel som kan uppkomma vid accesser av olika minnen som är tillgängliga för processorstrukturen.
Detta är möjligt genom att respektive dataord är anpassat att åtföljas av ett antal kontrollbitar, och att kontrollen av bitfel består i att databitarna inom respektive dataord matchas mot åtföl- jande kontrollbitar, samt genom att den tredje och fiärde beräknande enheten är anpassad att genomföra en eventuell felkorrigering av ett dataord som innehåller ett bitfel genom de för respektive dataord åtföljande kontrollbitarna. 10 15 20 25 30 _11- 51 1 1 1 4 FÖRDELAR De fördelar som främst kan få anses vara käriiietecknande för en metod och en processor enligt föreliggande uppfinning är i första hand att tidsåtgången vid iriläsningen av instruktioner till processorn kan minskas väsentligt.
Ytterligare en fördel är att förfarandet för diagnostiseringen eller utvärderingen blir mycket enkelt och snabbt i de fall som felet beror på ett felaktigt inläst dataord eftersom man i dessa fall endast behöver konstatera i vilken processor som algoritmen för felkorrigeringen påvisat ett felaktigt inläst dataord.
Det som främst kan få anses vara kännetecknande för en metod, i enlighet med föreliggande uppfinning, anges i det efterföljande patentkravets 1 kännetecknande del, och det som främst kan få anses vara kännetecknande för en processor, i enlighet med föreliggande uppfinning, anges i det efterföljande patentkravets 6 kännetecknande del.
KORT F IGURBESKRIVNING En metod och en processor, uppvisande de med föreliggande uppfinning förknippade egen- hetema, skall i exemplifierande syfte nu närmare beskrivas med hänvisning till bifogad ritning, där; figur 1 visar schematiskt och mycket förenklat en processorstruktur enligt föreliggande uppfinning, figur 2 visar förenklat strukturen hos ett dataord med åtföljande kontrollbitar och figur 3 visar schematiskt och mycket förenklat en del av en processorstruktur där 10 15 20 25 30 _12- 511114 dataord som läses till två parallellt verkande beräknande enheter läses fi'ån ett gemensamt minne, BESKRIVNING ÖVER NU FöREsLAGEN UTFÖRINGSFORM Med hänvisning till figur 1 visas således en processor l, vilken är tilldelad en struktur som om- fattar en forsta 11 och en andra 11' parallellt verkande beräknande enhet, en forsta läsande en- het 12, vilken är anpassad att inläsa ett forsta dataord, hörande till instruktioner A till den forsta beräknade enheten 11, och en andra läsande enhet 12', vilken är anpassad att inläsa ett andra dataord hörande till instruktioner A' till den andra beräknade enheten 1l'.
Det forsta och det andra dataordet är samma dataord men lagrade i olika minnen.
En tredje beräknande enhet 13 är avsedd att kontinuerligt genomföra en kontroll "a" av eventu- ella bitfel hos inlästa dataord till den forsta beräknande enheten 1 1. På samma sätt är en fiärde beräknande enhet 13' är avsedd att kontinuerligt genomföra en kontroll "a"' av eventuella bitfel hos inlästa dataord till den andra beräknande enheten 11'.
En jämförande enhet 14 är avsedd att jämföra utdata "b", "b"' från de parallellt verkande beräk- nande enheterna 1 1, 1 l', en diagnostiserande enhet 15 är anpassad att utvärdera vilken beräk- nande enhet 1 1, 1 1' som lämnat korrekt utdata vid en, i den jämforande enheten 14, detekterad "c" skillnad, och en styrande enhet 16 är anpassad att styra så att utdatan från processorstruk- turen 1 kommer från den av de två beräknande enhetema 11, 1 1' som lämnat korrekt utdata enligt information "d" från den diagnostiserande enheten 15.
Hur en utvärdering sker skall inte närmare beskrivas här eftersom det får anses vara känt hur en diagnos eller en utvärdering av vilken av två beräknande enheter som är inkorrekt vid olika utdata från de två beräknande enheterna är genomförbar.
Enligt känd teknik så inväntar de två parallellt verkande beräknande enhetema 11, 11' utvärde- ringen "e" vid en detekterad skillnad i den jämförande enheten 14, vareñer den beräknande en- heten, exempelvis den forsta beräknande enheten 11, som lämnat korrekt utdata fortsätter att 10 15 20 25 30 511 114 verka eñer ett erhållet "e" resultat av utvärderingen, under det att den beräknande enhet, i vårt _13- exempel den andra beräknande enheten 11', som lämnat inkorrekt utdata stoppas och genom- går en uppstartningsrutin, varigenom den stoppade beräknande enheten 11' bringas till att komma i fas med den fortsatt verkande beräknande enheten 1 1.
Efter att den stoppade beräknande enheten 1 1' är i fas med den fortsatt verkande beräknande enheten 11 kan den stoppade beräknande enheten 11' åter startas for en parallell verkan med den icke stoppade beräknande enheten 11.
Enligt en foredragen utforingsforrn av föreliggande uppfinning skall, vid dubbelmaskindrift, det vill säga under det att både den forsta och den andra beräknande enheten 11, 11' verkar paral- lellt, dataord läsas in direkt till respektive beräknande enhet okorrigerade for eventuella bitfel.
Detta medfor att resultatet från bitfelskorrigeringen inte behöver inväntas, varigenom en data- cykel sparas i varje rninnesaccess.
Den tredje respektive fiärde beräknande enheten 13, 13' utfor kontinuerligt en bitfelskontroll av inlästa dataord men resultatet av denna kontroll inväntas alltså inte. Den information som den- na kontroll ger göres tillgänglig medelst ledare "f" och "f" for den diagnostiserande enheten 15, där informationen nyttjas i ett senare skede vid en utvärdering av felorsaken då en skillnad är detekterad i den jämforande enheten 14.
Denna information visar huruvida ett dataord som lästs in till en av de två parallellt verkande beräknande enhetema 11, 11' innehöll ett bitfel, och nyttjas genom att, i det fall ett dataord innehållande ett bitfel lästs in till en av de två parallellt verkande beräknande enheter 11, l1', utdatan från denna beräknande enhet anses vara inkorrekt, vilket i dessa fall väsentligen forenklar utvärderingen for den diagnostiserande enheten 15.
Vid enkelmaskindrifi, det vill säga under det att en av de två parallellt verkande beräknande en- hetema 11, 11' är stoppad, inväntas resultatet "g", "g"' från den tredje eller fiärde beräknande enheten 13, 13' och en eventuell bitfelskorrigering hos ett eventuellt felaktigt inlästa dataord genomfors innan respektive dataord läses in till den ensamt verkande forsta eller andra beräk- nande enheten. Den tredje respektive fjärde beräknande enheten 13, 13' är även anpassad att 10 15 20 25 30 511114 utföra bitfelskorrigeringen. -14_ Det finns inget som hindrar att felkorrigeringen utgöres av en traditionell felkoriigering avsedd att korrigera fel som kan uppkomma vid accesser av olika minnen A, B, C, D respektive A', B', C', D' som är tillgängliga for processorstrukturen l.
Det är, enligt figur 2, här möjligt att nyttja en struktur 3 för använda dataord där respektive dataord 31 åtföljs av ett antal kontrollbitar 32. I figuren visas ett exempel på ett dataord 31 omfattande åtta databitar med tre stycken åtföljande kontrollbitar 32. Kontrollen kan lämpligen bestå i att databitarna 31 inom respektive dataord matchas mot åtföljande kontrollbitar 32 en- ligt en forbestämd algoritm, och en eventuell felkorrigering av ett dataord 31 som innehåller ett bitfel är möjlig genom de for respektive dataord åtföljande kontrollbitama 32.
Figur 1 visar det första dataordet är läst från ett första minne A och att det andra dataordet är läst från ett andra minne A', skilt från det första minnet A.
Det finns dock inget som hindrar att det första dataordet och det andra dataordet utgöres av samma dataord läst från ett gemensamt minne A", enligt figur 3.
En processor som skall kunna verka enligt en uppfinningsenlig metod skall vara tilldelad en struktur som, enligt figur l, omfattar: - en forsta och en andra parallellt verkbar beräknande enhet l 1, 1 1', - en första läsande enhet 12, varigenom ett första dataord hörande till instruktioner A är inläsbara till den första beräknade enheten l 1, - en andra läsande enhet l2', varigenom ett andra dataord hörande till instruktioner A' är inläsbara till den andra beräknade enheten l 1', - en tredje beräknande enhet 13, varigenom en kontroll av bitfel inom det första dataordet, inläst till den forsta beräknande enheten 11, är kontinuerligt genomförbar, - en fiärde beräknande enhet 13', varigenom en kontroll av bitfel inom det andra dataordet, inläst till den andra beräknande enheten l 1', är kontinuerligt genomförbar, - en jämförande enhet 14, varigenom utdata från de parallellt verkande beräknande en- 10 15 20 25 30 _15- 511 114 heterna 11, 11' är jämförbar, - en diagnostiserande enhet 15, varigenom vilken beräknande enhet 1 1, 1 1' som lämnat korrekt utdata vid en detekterad skillnad i den jämförande enheten 14 är utvärderbar, samt - en styrande enhet 16, varigenom det är möjligt att styra så att utdatan från processor- strukturen 1 kommer från en beräknande enhet 11, 11' som lämnat korrekt utdata, vilken får information om vilken beräknande enhet 11, 11' som lämnar korrekt utdata från den diagnostiserande enheten 15, exempelvis via en ledare d.
De två parallellt verkande beräknande enheterna 1 1, 1 1' är anpassade att invänta en utvärdering av den diagnostiserande enheten 15 vid en detekterad skillnad i den jämförande enheten 14, varefier den beräknande enhet, exempelvis den första beräknande enheten 11, som lärnnat kor- rekt utdata är anpassad att fortsätta att verka efter ett erhållet resultat av utvärderingen, under det att den beräknande enhet, i detta exempel den andra beräknande enheten l 1', som lämnat inkorrekt utdata är anpassad att stoppas och genomgå en uppstartningsrutin, varigenom den stoppade beräknande enheten 11' är bringbar till att komma i fas med den fortsatt verkande be- räknande enheten 1 1, varefter den stoppade beräknande enheten 1 1' är anpassad att åter vara startbar för en parallell verkan med den icke stoppade beräknande enheten 11.
En uppfinningsenlig processor skall speciellt anpassas så att vid dubbelmaskindrifi, det vill säga under det att både den första och den andra beräknande enheten 1 l, l 1' verkar parallellt, res- pektive dataord är läsbara direkt in till respektive beräknande enhet okorrigerade för eventuella bitfel.
I en sådan processor skall informationen från den av den tredje respektive fjärde beräknande enheten 13, 13' kontinuerligt utförda kontrollen vara tillgänglig för den diagnostiserande enhe- ten 15, exempelvis genom en ledare f respektive f, för nyttjas vid utvärderingen utförd av den diagnostiserande enheten 15, vilken information visar huruvida ett dataord som lästs in till en av de två parallellt verkbara beräknande enheterna 11, 11' innehöll ett bitfel.
Den diagnostiserande enheten 15 är vidare anpassad att nyttja denna information genom att, i det fall ett dataord innehållande ett bitfel lästs in till en av de två parallellt verkande beräknande 10 15 20 25 30 _16- 511 114 enheterna 1 1, 11', utdatan från denna beräknande enhet anses vara inkorrekt.
Vidare skall en uppfinningsenlig processor vara anpassad så att vid enkelmaskindrifi, det vill säga under det att en av de två parallellt verkbara beräknande enheterna, exempelvis den andra beräknande enheten 1 1', är stoppad, den tredje beräknande enheten 13 är anpassad att nyttja informationen för en felkorrigering av bitfel hos eventuellt felaktigt inlästa dataord innan res- pektive dataord läses in till den, i detta exempel, ensamt verkande första beräknande enheten 1 1, för att utföra en felkorrigering av eventuellt felaktigt inlästa dataord.
Enligt den tidigare beskrivna metoden finns det inget som hindrar att den tredje respektive fiärde beräknande enheten 13, 13' är anpassad att genomföra en felkorrigering som utgöres av en traditionell felkorrigering avsedd att korrigera fel som kan uppkomma vid accesser av olika minnen A B, C, D respektive A', B', C', D' som är tillgängliga för processorstrukturen 1.
En uppfinningsenlig processor kan då exempelvis vara anpassad till att hantera dataord där, enligt figur 2, respektive dataord 31 är anpassat att åtföljas av ett antal kontrollbitar 32, och där kontrollen består i att databitarna inom respektive dataord matchas mot åtföljande kon- trollbitar. Vid en sådan utföringsform skall den tredje beräknande enheten 13 vara anpassad att genomföra en eventuell felkorrigering av ett dataord 31 som innehåller ett bitfel genom de för respektive dataord 31 åtföljande kontrollbitarna 32_ Figur 1 visar att den första läsande enheten 12 är anpassad att läsa från första minne A och att den andra läsande enheten 12' är anpassad till att läsa från ett andra minne A', skilt från det första minne A.
Det skall dock förstås att det inte finns något som hindrar att det första och andra dataordet utgöres av ett och samma dataord, där både den första läsande enheten 12 och den andra läsande enheten 12' är anpassad att läsa samma dataord från ett gemensamt minne A", enligt figur 3.
Uppfmningen medför att fler felaktiga instruktioner kommer att läsas in i processorn vilket kan tyckas ha en menlig inverkan på systemsäkerheten. 10 _17- 511114 Detta kommer att orsaka fler felaktiga resultat från endera av de beräknande enheterna vid dubbelmaskindrifi. Denna ökning av felaktigt utforda instruktioner kommer dock att bestå av lättdiagnostiserade fel eftersom informationen från den tredje respektive fjärde beräknande enheten direkt visar vilken av de två parallellt verkande beräknande enheterna som lämnat det felaktiga resultatet.
Den totala tidsvinsten och fordelama som erhålles genom uppfinningen överväger denna menliga inverkan.
Uppfinningen är givetvis inte begränsad till den ovan såsom exempel angivna utforingsforrnen utan kan genomgå modifikationer inom ramen for uppfinningstanken illustrerad i efterföljande patentkrav.

Claims (14)

    10 15 20 25 30 _13- 51 1 1 1 4 PATENTKRAV
  1. l. Metod for utnyttjandet av information, vilken göres tillgänglig vid en kontroll av bitfel inom dataord hörande till instruktioner inlästa till en processor, vilken processor är tilldelad en struktur som omfattar en forsta och en andra parallellt verkande beräknande enhet, en forsta läsande enhet, vilken är anpassad att inläsa ett forsta dataord till nämnda forsta beräknade en- het, en andra läsande enhet, vilken är anpassad att inläsa ett andra dataord till nämnda andra beräknade enhet, en tredje beräknande enhet, vilken är avsedd att kontinuerligt genomföra nämnda kontroll av eventuella bitfel hos nämnda första dataord inläst till nämnda forsta beräk- nande enhet, en fjärde beräknande enhet, vilken är avsedd att kontinuerligt genomfora nämnda kontroll av eventuella bitfel hos nämnda andra dataord inläst till nämnda andra beräknande en- het, en jämförande enhet, vilken är avsedd att jämfora utdata från nämnda parallellt verkande beräknande enheter, en diagnostiserande enhet, vilken är anpassad att utvärdera vilken beräk- nande enhet som lämnat korrekt utdata vid en detekterad skillnad i nämnda jämförande enhet, samt en styrande enhet, vilken är anpassad att styra så att utdatan från nämnda processorstruk- tur kommer från en beräknande enhet som lämnat korrekt utdata, där nämnda två parallellt verkande beräknande enheter inväntar nämnda utvärdering vid en detekterad skillnad i nämnda jämförande enhet, varefter den beräknande enhet som lämnat korrekt utdata fortsätter att verka efier ett erhållet resultat av nämnda utvärdering, under det att den beräknande enhet som lämnat inkorrekt utdata stoppas och genomgår en uppstartningsrutin, varigenom nämnda stop- pade beräknande enhet bringas till att komma i fas med nämnda fortsatt verkande beräknande enhet, varefier nämnda stoppade beräknande enhet åter kan startas for en parallell verkan med den icke stoppade beräknande enheten, k ä n n e t e c k n a d därav, att, under det att både nämnda forsta och nämnda andra beräknande enhet verkar parallellt, nämnda dataord läses in direkt till respektive forsta och andra beräknande enhet okorrigerade for eventuella bitfel, och att nämnda information nyttjas vid nämnda utvärdering.
  2. 2. Metod enligt patentkravet l, k ä n n e t e c k n a d därav, att nämnda information, vilken visar huruvida ett dataord som lästs in till en av de två parallellt verkande beräknande enhetema innehöll ett bitfel, nyttjas genom att, i det fall ett dataord innehållande ett bitfel lästs in till en av nämnda två parallellt verkande beräknande enheter, utdatan från denna beräknande enhet anses vara inkorrekt, 10 15 20 25 30 _19- 511 114
  3. 3. Metod enligt patentkravet l, k ä n n e t e c k n a d därav, att, under det att en av nämnda två parallellt verkande beräknande enheterna är stoppad, nämnda information nyttjas för en felkorrigering av bitfel hos eventuellt felaktigt inlästa dataord innan respektive dataord läses in till den ensamt verkande forsta eller andra beräknande enheten, och att nämnda tredje respektive fiärde beräknande enhet är anpassad att utföra nämnda felkorri- gering.
  4. 4. Metod enligt patentkravet 3, k ä n n e t e c k n a d därav, att nämnda felkorrigering utgöres av en traditionell felkorrigering avsedd att korrigera fel som kan uppkomma vid accesser av olika minnen som är tillgängliga för nämnda processorstruktur.
  5. 5. Metod enligt något av tidigare patentkrav, k ä n n e t e c k n a d därav, att respektive dataord åtföljs av ett antal kontrollbitar, och att nämnda kontroll består i att databitama inom respektive dataord matchas mot åtföljande kontrollbitar, samt att en even- tuell felkorrigering av ett dataord som innehåller ett bitfel är möjlig genom de for respektive dataord åtföljande kontrollbitarna.
  6. 6. Metod enligt patentkravet 1, k ä n n e t e c k n a d därav att nämnda forsta dataord är läst från ett forsta minne och att nämnda andra dataord är läst från ett andra rninne, skilt från nämnda första minne.
  7. 7. Metod enligt patentkravet l, k ä n n e t e c k n a d därav att nämnda forsta dataord och nämnda andra dataord utgöres av samma dataord läst från ett gemensamt minne.
  8. 8. Processor, vilken är tilldelad en struktur som omfattar en första och en andra parallellt verkbar beräknande enhet, en första läsande enhet, varigenom ett första dataord hörande till instruktioner är inläsbara till nämnda första beräknade enhet, en andra läsande enhet, vari- genom andra dataord hörande till nämnda instruktioner är inläsbara till nämnda andra beräk- nade enhet, en tredje beräknande enhet, varigenom en kontroll av bitfel inom nämnda första dataord inlästa till nämnda första beräknande enhet är kontinuerligt genomforbar, en fiärde 10 15 20 25 511114 beräknande enhet, varigenom en kontroll av bitfel inom nätrmda andra dataord inlästa till _20- nämnda andra beräknande enhet är kontinuerligt genomförbar, en jämförande enhet, varigenom utdata från nämnda parallellt verkande beräknande enheter är jämförbar, en diagnostiserande enhet, varigenom vilken beräknande enhet som lämnat korrekt utdata vid en detekterad skill- nad i nämnda jämförande enhet är utvärderbar, samt en styrande enhet, varigenom det är möjligt att styra så att utdatan från nämnda processorstruktur kommer från en beräknande enhet som lämnat korrekt utdata, där nämnda två parallellt verkande beräknande enheter är anpassade att invänta nämnda utvärdering vid en detekterad skillnad i nämnda jämförande enhet, varefter den beräknande enhet som lämnat korrekt utdata är anpassad att fortsätta att verka efter ett erhållet resultat av nämnda utvärdering, under det att den beräknande enhet som lämnat inkorrekt utdata är anpassad att stoppas och genomgå en uppstartningsrutin, varigenom nämnda stoppade beräknande enhet är bringbar till att komma i fas med nämnda fortsatt ver- kande beräknande enhet, varefter nämnda stoppade beräknande enhet är anpassad att åter vara startbar for en parallell verkan med den icke stoppade beräknande enheten, k ä n - n e t e c k n a d därav, att, under det att både nämnda forsta och nämnda andra beräknande enhet verkar parallellt, nämnda forsta och andra dataord är läsbara direkt in till respektive forsta och andra beräknande enhet okorrigerade för eventuella bitfel, och att nämnda information är tillgänglig vid nämnda utvärdering.
  9. 9. Processor enligt patentkravet 8, k ä n n e t e c k n a d därav, att nämnda diagnostiserande enhet är anpassad att nyttja nämnda information, vilken visar huru- vida ett dataord som lästs in till en av de två parallellt verkbara beräknande enheterna innehöll ett bitfel, genom att, i det fall ett dataord innehållande ett bitfel lästs in till en av nämnda två parallellt verkande beräknande enheter, utdatan från denna beräknande enhet anses vara in- korrekt.
  10. 10. Processor enligt patentkravet 8, k ä n n e t e c k n a d därav, att, under det att en av nämnda två parallellt verkbara beräknande enheterna är stoppad, näm- nda tredje respektive fjärde beräknande enhet är anpassad att nyttja nämnda information för en felkorrigering av bitfel hos eventuellt felaktigt inlästa dataord innan respektive dataord läses in till den ensamt verkande forsta eller andra beräknande enheten, och att nämnda tredje respek- tive fjärde beräknande enhet är anpassad att utföra nämnda felkorrigering. 10 15 20 _21- 511114
  11. 11. Processor enligt patentkravet 10, k ä n n e t e c k n a d därav, att nämnda tredje respektive fjärde beräknande enhet är anpassad att genomföra en felkorrigering, vilken utgöres av en traditionell felkorrigering avsedd att korrigera fel som kan uppkomma vid accesser av olika minnen som är tillgängliga for nämnda processorstruktur. känneteck-
  12. l2. Processor enligt något av patentkraven 8 till 11, n a d därav, att respektive dataord är anpassat att åtfoljas av ett antal kontrollbitar, och att nämnda kontroll består i att databitama inom respektive dataord matchas mot åtföljande kontrollbitar, samt att nämnda tredje respektive fjärde beräknande enhet är anpassad att ge- nomfora en eventuell felkorrigering av ett dataord som innehåller ett bitfel genom de for respektive dataord åtföljande kontrollbitarna.
  13. 13. Processor enligt patentkravet 8, k ä n n e t e c k n a d därav att nämnda forsta läsande enhet är anpassad att läsa från forsta minne och att nämnda andra läsande enhet är anpassad till att läsa från ett andra minne, skilt från nämnda forsta minne.
  14. 14. Processor enligt patentkravet 8, k ä n n e t e c k n a d därav att nämnda forsta och nämnda andra dataord utgöres av ett och samma dataord, och att både nämnda forsta läsande enhet och nämnda andra läsande enhet är anpassad att läsa samma dataord från ett gemensamt minne.
SE9704606A 1997-12-10 1997-12-10 Metod vid processor, samt processor anpassad att verka enligt metoden SE511114C2 (sv)

Priority Applications (7)

Application Number Priority Date Filing Date Title
SE9704606A SE511114C2 (sv) 1997-12-10 1997-12-10 Metod vid processor, samt processor anpassad att verka enligt metoden
DE69813018T DE69813018T2 (de) 1997-12-10 1998-12-09 Verfahren in bezug auf prozessoren und angepasste prozessoren die in übereinstimmung mit dem verfahren funktionieren
AU17951/99A AU1795199A (en) 1997-12-10 1998-12-09 A method relating to processors, and processors adapted to function in accordance with the method
JP2000524727A JP2001526422A (ja) 1997-12-10 1998-12-09 プロセッサに関連する方法と、その方法に基づく機能に適合したプロセッサ
PCT/SE1998/002267 WO1999030235A2 (en) 1997-12-10 1998-12-09 A method relating to processors, and processors adapted to function in accordance with the method
EP98962793A EP1038224B1 (en) 1997-12-10 1998-12-09 A method relating to processors, and processors adapted to function in accordance with the method
US09/207,765 US6330701B1 (en) 1997-12-10 1998-12-09 Method relating to processors, and processors adapted to function in accordance with the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE9704606A SE511114C2 (sv) 1997-12-10 1997-12-10 Metod vid processor, samt processor anpassad att verka enligt metoden

Publications (3)

Publication Number Publication Date
SE9704606D0 SE9704606D0 (sv) 1997-12-10
SE9704606L SE9704606L (sv) 1999-06-11
SE511114C2 true SE511114C2 (sv) 1999-08-09

Family

ID=20409337

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9704606A SE511114C2 (sv) 1997-12-10 1997-12-10 Metod vid processor, samt processor anpassad att verka enligt metoden

Country Status (7)

Country Link
US (1) US6330701B1 (sv)
EP (1) EP1038224B1 (sv)
JP (1) JP2001526422A (sv)
AU (1) AU1795199A (sv)
DE (1) DE69813018T2 (sv)
SE (1) SE511114C2 (sv)
WO (1) WO1999030235A2 (sv)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6587961B1 (en) * 1998-06-15 2003-07-01 Sun Microsystems, Inc. Multi-processor system bridge with controlled access
JP2001297039A (ja) * 2000-04-12 2001-10-26 Matsushita Electric Ind Co Ltd データ処理装置
JP4492035B2 (ja) * 2003-04-21 2010-06-30 日本電気株式会社 データ処理装置
DE10332557A1 (de) * 2003-07-11 2005-02-17 Siemens Ag Verfahren und Computersystem zum Betreiben einer sicherungstechnischen Anlage
US7761657B2 (en) * 2006-07-10 2010-07-20 Hitachi, Ltd. Storage control system, control method for storage control system, port selector, and controller
JP4461135B2 (ja) * 2006-12-25 2010-05-12 富士通株式会社 演算回路及び演算方法並びに情報処理装置
KR101179738B1 (ko) * 2007-11-07 2012-09-04 미쓰비시덴키 가부시키가이샤 안전 제어 장치
US20110179255A1 (en) * 2010-01-21 2011-07-21 Arm Limited Data processing reset operations
US8108730B2 (en) * 2010-01-21 2012-01-31 Arm Limited Debugging a multiprocessor system that switches between a locked mode and a split mode
US8051323B2 (en) * 2010-01-21 2011-11-01 Arm Limited Auxiliary circuit structure in a split-lock dual processor system
CN102822807B (zh) * 2010-03-23 2015-09-02 大陆-特韦斯贸易合伙股份公司及两合公司 控制计算机系统及其控制方法和使用
WO2011117155A1 (de) * 2010-03-23 2011-09-29 Continental Teves Ag & Co. Ohg Redundante zwei-prozessor-steuerung und steuerungsverfahren
ES2581865T3 (es) 2012-12-26 2016-09-07 Universidad Del País Vasco-Euskal Herriko Unibertsitatea Mimético de 1,2,3-triazol 1,4,5-trisustituido de RGD y/u OGP10-14, procedimiento para obtenerlo y usos del mismo
WO2015177927A1 (ja) * 2014-05-23 2015-11-26 株式会社日立製作所 情報処理装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4358823A (en) * 1977-03-25 1982-11-09 Trw, Inc. Double redundant processor
US4345328A (en) * 1980-06-30 1982-08-17 Sperry Corporation ECC Check bit generation using through checking parity bits
JPH0833842B2 (ja) * 1987-05-01 1996-03-29 株式会社日立製作所 論理演算装置
CA2032067A1 (en) * 1989-12-22 1991-06-23 Douglas E. Jewett Fault-tolerant computer system with online reintegration and shutdown/restart
US5272696A (en) * 1992-01-23 1993-12-21 Northern Telecom Limited ATM plane merging filter for ATM switches and the method thereof
MX9306994A (es) * 1992-12-15 1994-06-30 Ericsson Telefon Ab L M Sistema de control de flujo para interruptores de paquete.
US5915082A (en) * 1996-06-07 1999-06-22 Lockheed Martin Corporation Error detection and fault isolation for lockstep processor systems

Also Published As

Publication number Publication date
EP1038224B1 (en) 2003-04-02
AU1795199A (en) 1999-06-28
SE9704606D0 (sv) 1997-12-10
US6330701B1 (en) 2001-12-11
DE69813018D1 (de) 2003-05-08
EP1038224A2 (en) 2000-09-27
DE69813018T2 (de) 2004-01-22
WO1999030235A3 (en) 1999-08-26
JP2001526422A (ja) 2001-12-18
WO1999030235A2 (en) 1999-06-17
SE9704606L (sv) 1999-06-11

Similar Documents

Publication Publication Date Title
SE511114C2 (sv) Metod vid processor, samt processor anpassad att verka enligt metoden
JP2535518B2 (ja) デ−タ処理システム
JP2846407B2 (ja) 例外処理方法及び例外処理装置
US5003458A (en) Suspended instruction restart processing system based on a checkpoint microprogram address
EP0450802A2 (en) Arithmetic unit
US7093105B2 (en) Method and apparatus for determining availability of a queue to which a program step is issued out of program order
JP4991299B2 (ja) オペランド依存関係によるストールを低減する方法ならびにそのためのデータプロセッサ
JP2000330788A (ja) コンピュータシステム
US5146569A (en) System for storing restart address of microprogram, determining the validity, and using valid restart address to resume execution upon removal of suspension
CN100549946C (zh) 用于执行数据处理操作的装置和方法
US20090217090A1 (en) Method, operating system and computing hardware for running a computer program
US7370181B2 (en) Single stepping a virtual machine guest using a reorder buffer
US20250130807A1 (en) Processor macro-operation fusion
CN107423029B (zh) 计算单元
US6990569B2 (en) Handling problematic events in a data processing apparatus
US20060020777A1 (en) Data processing apparatus
JP4876093B2 (ja) 制御装置のタスク管理装置、及び、制御装置のタスク管理方法
JP2006344087A (ja) 制御装置のタスク管理装置、及び、制御装置のタスク管理方法
EP0382234B1 (en) Microprocessor having improved functional redundancy monitor mode arrangement
US11080054B2 (en) Data processing apparatus and method for generating a status flag using predicate indicators
EP4592849A2 (en) Processor testing method, apparatus, electronic device, and storage medium
CN115586998B (zh) 基于主核控制流信息的处理器运行差错检测方法及系统
JPH0769822B2 (ja) 演算レジスタのバイパスチェック方式
JPH0226259B2 (sv)
JPH0814779B2 (ja) 演算制御装置の初期化方法

Legal Events

Date Code Title Description
NUG Patent has lapsed