DK145049B - Databehandlingsanlaeg med et faelled hovedlager og et antal behandlingsenheder med bufferlager - Google Patents

Databehandlingsanlaeg med et faelled hovedlager og et antal behandlingsenheder med bufferlager Download PDF

Info

Publication number
DK145049B
DK145049B DK420872AA DK420872A DK145049B DK 145049 B DK145049 B DK 145049B DK 420872A A DK420872A A DK 420872AA DK 420872 A DK420872 A DK 420872A DK 145049 B DK145049 B DK 145049B
Authority
DK
Denmark
Prior art keywords
storage
block
data
processing unit
buffer
Prior art date
Application number
DK420872AA
Other languages
English (en)
Other versions
DK145049C (da
Inventor
D W Anderson
R N Gustafson
L H Johnson
F J Sparacio
Original Assignee
Ibm
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 Ibm filed Critical Ibm
Publication of DK145049B publication Critical patent/DK145049B/da
Application granted granted Critical
Publication of DK145049C publication Critical patent/DK145049C/da

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0817Cache consistency protocols using directory methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

i 145049 o
Opfindelsen angår et databehandlingsanlæg af den i kravets indledning angivne art.
Et sådant databehandlingsanlæg omfatter flere behandlingsenheder og et fælles hovedlager, der deles af alle 5 behandlingsenhederne. Behandlingsenhederne bearbejder uaf hængigt af hinanden data, som er hentet fra hovedlageret.
Hver behandlingsenhed er forsynet med et bufferlager, hvortil data, som efterspørges af behandlingsenheden, overføres fra hovedlageret. Det er i og for sig kendt at forøge be-10 handlingshastigheden ved indkobling af et lille, forholds vis hurtigt bufferlager mellem behandlingsenheden og et stort, forholdsvis langsomt hovedlager. Hvis imidlertid flere behandlingsenheder, der hver er forsynet med sit tilhørende bufferlager, deler et fælles hovedlager, opstår der 15 problemer med til ethvert tidspunkt at sikre gyldigheden af de i forskellige bufferlagre indførte data. De samme data kan være blevet hentet ud fra hovedlageret af flere bufferlagre. Hvis data, som er hentet ud fra hovedlageret, nu ændres som følge af bearbejdning i en behandlingsenhed, må 20 der træffes foranstaltninger for at sikre, at eventuelle andre behandlingsenheder, der fra hovedlageret henter de samme data, får tilgang til den mest aktuelle version af disse data og hindres i at bearbejde ældre, ikke længere aktuelle versioner. En tidligere foreslået løsning af dette 25 problem kendes fra USA-patentskrift nr. 3.581.291. Ifølge dette patentskrift anbringes der i tilslutning til hovedlageret er separat indikatorlager "KEY MEMORY”. Så snart en datablok hentes fra hovedlageret og overføres til et bufferlager, indføres der i indikatorlageret en markering, ΟΛ som angiver, hvilken blok der er hentet, og hvilken behandlingsenhed der har hentet denne datablok. Ved overførsel af data fra et bufferlager til hovedlageret afføles indikatorlageret med hensyn til den hovedlageradresse, hvortil der indføres data. Hvis den pågældende datablok tid- ligere er hentet af et andet bufferlager, sendes der et signal til dette bufferlager for at markere, at den tid- 35 0 2 145049 ligere hentede datablok ikke længere er gyldig. Dette konstruktionsprincip medfører, at enhver ændring af data i et bufferlager umiddelbart må efterfølges af en indskrivning af den nye dataversion i hovedlageret for at sikre, at 5 hvert bufferlager har tilgang til gyldige data. Dette krav om stadig opdatering af det langsomme hovedlager medfører en betydelig nedsættelse af anlæggets totale arbejdshastighed.
Det er på baggrund heraf opfindelsens formål at 10 anvise udformningen af et databehandlingsanlæg af den ind ledningsvis nævnte art, hvis effektivitet og dermed arbejdshastighed er betydeligt forøget i forhold til hvad der kan opnås ved de kendte anlæg af denne art.
Det angivne formål opnås ved et anlæg, som ifølge 15 opfindelsen er ejendommeligt ved de i kravets kendetegnende del angivne træk.
Forøgelse af anlæggets effektivitet opnås ved, at der anbringes et antal styreindikatorer i tilslutning til hvert bufferlager. Hvert bufferlager er forsynet med sin 20 egen lagerstyreenhed, og alle lagerstyreenheder er forbun det indbyrdes. Der spredes adresse- og styreinformation mellem lagerstyreenhederne i afhængighed af styreindikatorernes tilstand. Herved opnås, at der kun kræves opdatering af hovedlagerets indhold i de forholdsvis sjældne tilfælde, .25 hvor et bufferlager anmoder om tilgang til en datablok fra hovedlageret, hvilken datablok tidligere er hentet til et andet bufferlager og deri har været udsat for ændringer.
Som det fremgår af kravet anvendes der tre særskilte styreindikatorer.
30 Den første styreindikator (gyldighedsbit) markerer, om den pågældende datablok er hentet også af et andet bufferlager og heri har været gjort til genstand for nogen ændring. Den gyldighedsbit, der hører til hvert afsnit i hvert bufferlager, markerer med andre ord, hvorvidt det pågældende 35 afsnits dataindhold er gyldigt eller ej.
145049 3
O
Den anden styreindikator (hentebit) markerer, om indholdet i det tilhørende bufferlagerafsnit udgør den eneste version af den aktuelle datablok, som af noget bufferlager er hentet fra hovedlageret. Hvis det-5 te er tilfældet, kræves der ingen spredning af informa tion til andre bufferlagre ved ændring af datablokken.
Da en bestemt datablok i mange tilfælde kun hentes fra hovedlageret af et enkelt bufferlager, muliggør hentebitten en yderligere forøgelse af anlæggets totale ar-10 bejdseffektivitet.
Den tredje styreindikator (oplagringsbit) indikerer, om behandlingsenheden har udført oplagring i det tilhørende bufferlagerafsnit, dvs., om den i buffer-lagerafsnittet indførte datablok har undergået nogen for-15 andring efter at være hentet fra hovedlageret. I mange tilfælde sker"der ingen forandring af en hentet datablok i den tid, hvor datablokken befinder sig i et bufferlager.
Hvis oplagringsbitten markerer, at datablokken er uforandret, kræves der ingen genindføring af datablokken i 20 hovedlageret ved udskiftning af bufferlagerets indhold.
Herved formindskes antallet af nødvendige tilgangsdannelser til hovedlageret yderligere, så at der opnås en yderligere forøgelse af anlæggets totale arbejdseffektivitet.
25 Ifølge det nævnte USA-patentskrift nr. 3.581.291, se spalte 1, linie 38-44, sprees adresse- og styreinformation i forbindelse med indskrivning (oplagring) i hovedlageret, mens derimod denne spredning ifølge den foreliggende opfindelse opnås ved hjælp af til styreindikatorerne 30 koblede portkredse, dvs. i afhængighed af styreindikato rerne. Dette betyder, at heller ikke styreindikatoren for gyldighedsbitten med tilhørende portkredse er opbygget på samme måde som gyldighedsbitten ifølge det amerikanske patent.
35 Det er selvsagt almindeligt kendt inden for data behandlingsteknikken at anvende styreindikatorer, men det er ikke kendt at koble dem til portkredse for at sprede adresse- og styreinformation på den måde, som opfindelsen 0 4 145049 indebærer.
Overføring af operander mellem et bufferlager og et hovedlager samt spredning af adresse- og styreinformation mellem bufferlagrene kræver en behandlingstid af 5 de tilhørende behandlingsenheder. Ved opfindelsen opnås en besparelse af denne behandlingstid ved, at informationsspredningen og undertiden operandoverføringen i visse tilfælde kan undgås i modsætning til tilsvarende tilfælde ved den tidligere kendte teknik. Dette beror på, at tilstanden 10 for en operand i de forskellige bufferlagre ved hjælp af styreindikatorerne er veldokumenteret i hvert bufferlager.
Som et eksempel på denne besparelse kan nævnes den situation, at indskrivning eller oplagring af data sker fra en behandlingsenhed ind i en sådan operand i dennes buf-15 ferlager, hvis hentebit indicerer, at denne operand er den eneste operand, som af noget bufferlager er hentet fra hovedlageret. I denne situation spares de operationer, som behøves til adresse- og styreinformationsspredning.
En foretrukken udførelsesform for databehand-20 lingsanlægget ifølge opfindelsen beskrives i det følgende mere detaljeret under henvisning til tegningen, på hvilken fig. 1 er et blokdiagram til illustration af sammenkoblingen med henblik på udspredning mellem behandlingsenheder, der hver for sig har et privat, hurtigt . 25 lager, fig. 2 er et strømskema for logikbeslutninger og -sekvenser, fig. 3 er et logisk diagram, der viser de grundlæggende styreorganer i en lagerstyreenhed i hver behand-30 lingsenhed og logikken til bestemmelse af behovet for at udsprede information, og fig. 4 er et logisk diagram for lagerstyreenheden i hver behandlingsenhed, hvilken lagerstyreenhed reagerer over for udspredning af adresse- og tilgangsstyresignaler 35 - fra en fjernbehandlingsenhed.
O
5 U5Q49
Fig. 1 viser det generelle arrangement af anlægget ifølge opfindelsen. Operander, der skal udnyttes i anlægget, er indeholdt i et fælles hovedlager 10. Der sker tilgang til operanderne ved hjælp af et antal data-5 behandlingsenheder 11 og 12. Hver af behandlingsenheder ne 11 og 12 identificerer operander i hovedlageret 10 på adressehovedledninger 13 og 14. Behandlingsenhederne 11 og 12 har private hurtige lagre 15 og 16 samt datahoved-ledninger 17 og 18 til overførsel af data mellem behand-10 lingsenhederne og det lokale, private lager. Et krav om tilgang til pladser for operander, der specificeres på adressehovedledningen 13 eller 14, indikeres på tilgangsstyreledninger 19 og 20. Tilgangsstyresignalerne specificerer, at behandlingsenheden ønsker tilgang til ope-15 randpladsen med henblik på at hente data til behandlings enheden eller' at oplagre data fra behandlingsenheden på den plads, hvortil der sker tilgang.
Den på hovedledningerne 13 og 14 afgivne adresseinformation føres til lokallagerstyreenheder 21 og 22 for 20 at bestemme, hvorvidt de ønskede data er tilgængelige i privatlagrene 15 og 16 eller ej. Hvis de ønskede data findes i privatlageret 15 eller 16, vil disse data umiddelbart blive overført på datahovedledningen 17 eller 18. Hvis lagerstyreenheden 21 eller 22 bestemmer, at de ønskede data 25 ikke findes i privatlagrene 15 og 16, må der på styreled ningen 23 eller 24 afgives en anmodning for at indlede overførsel af data fra hovedlageret 10 til privatlageret 15 eller 16 på lagerdatahovedledningerne 25 eller 26. Bestemmelsen af, hvorvidt de ønskede data findes i det lokale 30 privatlager, sker ved hjælp af en afsøgningsmekanisme, som indbefatter indholdsfortegnelserne 27 og 28.
Ifølge opfindelsen er behandlingsenhederne sammenkoblet med henblik på udspredning af information, der er nødvendig for at sikre, at hver behandlingsenhed får til-35 gang til operandpladser, som har den mest aktuelle værdi
O
6 145049 for en operand under hensyntagen til den kendsgerning, at hver af behandlingsenhederne uafhængigt af hinanden kan modificere operandværdierne. Selv om der i det følgende omtales forskellige modifikationer, hvad angår den ge-5 nerelle udspredning, bliver den minimale mængde tilslut
ninger en hovedledning 29 til overførsel af adresseinformation mellem behandlingsenhederne og en styreledning 30 til signalering fra en behandlingsenhed til de øvrige behandlingsenheder, at en enhed har tilgang til en ope-10 randplads med henblik på at hente eller oplagre data. I
overensstemmelse med en modifikation, der er baseret på metoden "oplagring i buffer", findes der yderligere en tilslutningssignalledning 31 til signalering fra en behandlingsenhed til de øvrige behandlingsenheder, at en 15 overførsel finder sted fra hovedlageret til et privat lager. En tilslutningssignalledning 32 findes ved en anden udførelsesform for opfindelsen, ved hvilken forskellige styreorganer aktiveres i afhængighed af, hvorvidt der eksisterer flere en én kopi af en bestemt blok af operander 20 i de forskellige privatlagre.
Fig. 2 viser et strømdiagram for logikbeslutninger og sekvenser af beslutninger, der træffes som reaktion på et ønske om tilgang til en hovedlagerplads fra en behandlingsenhed, hvilket tilgangsønske gælder hentning af data 25 eller oplagring af data på tilgangspladsen. Før beskrivel sen af de i fig. 2 viste sekvenser følger herefter en kort redegørelse for den generelle organisation af privatlageret, indholdsfortegnelsen og lagerstyreapparaturet for en af behandlingsenhederne, idet der henvises til fig. 3.
30 I fig. 3 er de elementer, som allerede er behand let i forbindelse med fig. 1, forsynet med tilsvarende henvisningsbetegnelser.
Ved den foretrukne udførelsesform for databehandlingsanlægget ifølge opfindelsen udnyttes i et hurtig-35 -privatlagerarrangement, ved hvilket "indstilling asso ciativ" -metoden for dataordning og -oplagring anvendes sam-
O
7 14504-9 men med den tilgangsmetode, der kendes under betegnelsen "oplagring i buffer". Dette medfører, at hvert tilgangsønske fra en behandlingsenhed til slut må udføres i det hurtige lager, hvad enten hensigten er at hente data el-5 ler at oplagre data.
Privatlageret 15 indeholder som vist 128 oplagringssektioner 33. Hver af disse oplagringssektioner har kapacitet til oplagring af en blok af dataoperander, hvilken blok kaldes for en side i beskrivelsen til det ovenfor 10 nævnte USA patent nr. 3.588.829. Til hver af de 128 oplagringssektioner 33 hører der 128 registre 34, som danner indholdsfortegnelsen 27. I overensstemmelse med beskrivelsen til det ovenfor nævnte USA-patent vil en sektion 35 i hvert af registrene 34 indeholde en adressebe-15 tegnelse for en bestemt bog fra det fælles hovedlager 10.
Med andre ord vil side 4 fra en hvilken som helst bog i det fælles hovedlager 10 altid blive overført til og oplagret i oplagringssektionen med samme nr. Den særlige bog, hvorfra side 4 er overført, vil blive betegnet i sek-20 tionen 35 med registernummeret 4.
Når der signaleres et tilgangsønske på ledningen 19 fra den lokale behandlingsenhed 11, passerer lokaladres-seinformationen på hovedledningen 13 gennem et ELLER-kreds-løb 36 med henblik på afsøgning af indholdsfortegnelsen 27 25 for at bestemme, hvorvidt de ønskede data findes i privat lageret 15 eller ej. Den del af adresseinformationen·, der specificerer et sidenummer, udnyttes på hovedledningerne 37 og 38 til at danne tilgang til det indicerede register 34 og oplagringssektionen 33. Bogadresseinformationen læses 30 fra det register, 34, hvortil der er dannet tilgang, og udnyttes i et sammenligningskredsløb 39 til bestemmelse af, hvorvidt den blokadresseinformation, der er oplagret i det register 34, hvortil der er dannet tilgang, er lig med eller ikke-lig med den på adressehovedledningen 13 afgivne 35 blokadresseinformation.
O
8 145049
Formålet med flere yderligere, binære bits, der hører til hvert af registrene 34, omtales detaljeret i det følgende. For øjeblikket bør tilstedeværelsen af en gyldig-bit 40 imidlertid nævnes. Når gyldig-bitten har 5 en binær værdi 1, og sammenligningskredsløbet 39 indike rer, at den på hovedledningen 13 ønskede blokadresse stemmer overens med den blokadresse i registreret 34, hvortil der er dannet tilgang, afgiver et OG-kredsløb 41 på ledningen 42 et udgangssignal, som indikerer en blok-gyldig-10 -tilstand. Dette indebærer, at den ønskede datablok er oplagret i privatlageret 15 og er gyldig.
Den adresseinformation, der afgives på hovedledningen 37 til privatlageret 15, tilvejebringer tilgang til den identificerede oplagringssektion 33 og placerer disse 15 data på en hovedledning 43. Som reaktion på et tilgangs ønske for en henteoperation på signalledningen 19 og bestemmelsen af, at blokken er gyldig i privatlageret, tilvejebringer et OG-kredsløb 44 et signal til et åbningskredsløb 45 med henblik på overførsel af de ønskede data 20 umiddelbart til centralenheden på en hovedledning 46.
Når det som reaktion på afsøgningen af indholdsfortegnelsen 27 med adresseinformationen på hovedledningen 13 bestemmes, at den Ønskede datablok ikke er gyldigt oplagret i privatlageret 15, afgiver et inversionskredsløb .25 47 et udgangssignal 48, som indikerer behovet for at over føre den ønskede datablok fra det fælles lager 10 til privatlageret 15.
Hvis privatlageret og indholdsfortegnelsen er udformet i overensstemmelse med beskrivelsen til det ovenfor 30 nævnte USA-patent, kan der anvendes en udskiftningsalgo ritme til udvælgelse af en oplagringssektion, som skal modtage de ønskede data. Adressen for den oplagringssektion, der skal udskiftes, indikeres på en hovedledning 49, og den tilføres desuden via ELLER-kredsløbet 36 for 35 at danne tilgang til det register, som hører sammen med den oplagringssektion, der skal udskiftes. Den gyldig-bit o 9 145049 40, der hører sammen med dette register, tilbagestilles for at indikere, at de data, som i øjeblikket findes i privatlageret 15, ikke længere er gyldige. Endvidere vil den blok, som identificerer adressedelen af de ønskede 5 data, blive indført i det register 34, hvortil der er dan net tilgang, på en hovedledning 50. Den datablok, som tilbageføres fra det fælles hovedlager 10, vil på en hovedledning 51 blive fremført via et åbningskredsløb 52 og ELLER-kredsløbet 53 til den til udskiftning udvalgte op-10 lagringssektion.
Hvis den ønskede datablok, der blev overført fra det fælles hovedlager til privatlageret, vedrørte et hente-tilgangsønske fra den tilhørende behandlingsenhed, vil OG-kredsløbet 44 nu afgive en indikering, som er nødvendig 15 for at aktivere åbningskredsløbet 45 med henblik på over førsel af den' ønskede operand til behandlingsenheden på hovedledningen 46. Hvis den ønskede datablok skulle føres til privatlageret 15 med henblik på oplagring af data på en af operandpladserne, skal de data, der skal oplagres i 20 privatlageret, afgives på en hovedledning 54 via et akti veret åbningskredsløb 55 og et aktiveret åbningskredsløb 55 og ELLER-kredsløbet 53 til den identificerede operand-plads i oplagringssektionen 33, hvilket omtales mere detaljeret i det følgende.
25 Når det er bestemt, at en datablok i en af oplag ringssektionerne 33 i privatlageret 15 skal udskiftes, bliver desuden en binær bit, som hører sammen med hver af registrene 34, aktiv. Detaljerne omkring denne yderligere bit, der kaldes en oplagringsbit 56, behandles detalje-30 ret i forbindelse med udspredningsmekanismen. Den kan ud nyttes til at indikere, at de data, der skal udskiftes i den udvalgte oplagringssektion 33, er modificeret eller er gjort til genstand for oplagring af den tilhørende behandlingsenhed, mens de befandt sig i oplagringssektionen 35 33. Hver gang, en tilhørende behandlingsenhed oplagrer o 10 145049 data i lagersektionen 33, bliver oplagringsbitten 56 i det tilhørende register 34 indstillet på den binære tilstand 1. Når indikeringen af dataoverførsel optræder på ledningen 48, vil yderligere et signal, som angiver det 5 eventuelle behov for fornyet oplagring af en blok, blive afgivet på en signalledning 57. OG-kredsløbet 58 træffer beslutninger om, at de data i oplagringssektionen 33, der skal udskiftes, er gyldige og er gjort til genstand for oplagring. Behovet for oplagringsbitten hænger også sam-10 men med udnyttelsen af metoden "oplagring i buffer". Op lagringsbitten 56's 1-tilstand indicerer, at de data, der befinder sig i oplagringssektionen 33 i privatlageret 15, er modificeret og ikke længere er identiske med den samme datablok, som stadig findes i det fælles hovedlager 15 10. Når data i privatlageret adskiller sig fra de data, der findes i hovedlageret, vil OG-kredsløbet 58 derfor blive anvendt til at påbegynde overførsel af den datablok, som udskiftes, til hovedlageret på en hovedledning 59 via et åbningskredsløb 60, der aktiveres af udgangs-20 signalet fra OG-kredsløbet 58. Når de pågældende i den aktuelle oplagringssektion er ført tilbage til hovedlageret, og nye data er overført fra hovedlageret til privatlageret, anvendes ledningen 61 til tilbagestilling af oplagringsbitten 56 til O-tilstanden, hvilket angiver, at .25 de data, der nu findes i oplagringssektionen 33, er de samme, som findes i hovedlageret 10.
En yderligere binær bit, der hører sammen med hvert register 34 i fig. 3, defineres i det følgende. Denne yderligere binære bit kaldes for en hentebit 62. Når den-30 ne hentebit er i O-tilstanden, indicerer dette over for lagerstyremekanismen, at dette særlige privatlager har den eneste kopi af datablokken fra hovedlageret 10. Dette betyder, at intet andet privatlager 15 har ønsket denne specielle datablok. Når hentebitten befinder sig i den bi-35 nære 1-tilstand, indikerer dette, at en anden behandlings enhed en eller anden gang har overført den samme datablok fra hovedlageret 10 til sit privatlager.
o 11 145049
De tre mest aktuelle tilstande for gyldigheds-bitten 40 (V) oplagringsbitten 56 (S) og hentebitten 62 (F) er vist i indholdsfortegnelsespositioner 1, 2 og 3. Tilstanden i position 1 indicerer, at denne behand-5 lingsenheds privatlager indeholder den eneste kopi af den identificerede datablok. I denne specielle blok kan denne behandlingsenhed udføre oplagring uden at påvirke de samme data i noget andet privatlager. Den i position 2 indikerede tilstand betyder, at blokken er gyldig i dette 10 særlige privatlager, men at den også eksisterer eller har eksisteret til et eller andet tidspunkt i en anden behandlingsenheds privatlager. Denne særlige behandlingsenhed kan blot læse data fra denne blok, uden at det er nødvendigt at underrette en anden behandlingsenhed om nogen for-15 anstaltning. Inden behandlingsenheden kan udføre oplagring i denne blok,'må der udføres en spredning af information for ugyldig erklæring af de data, der befinder sig i de andre privatlagre, og ændring af dette privatlagers markering, så at det ser ud som i position 1. Den tilstand, 20 der indikeres i position 3, er i hovedsagen den samme som i position 1, med undtagelse af, at der i denne datablok er udført oplagring af denne behandlingsenhed, så at der er tale om den mest aktuelle kopi af denne datablok.
Under henvisning til fig. 2 følger nu en generel 25 beskrivelse af logiske beslutninger og logiksekvenser, der er velegnede til at bringe samtlige privatlagre i samtlige behandlingsenheder til at genspejle den korrekte værdi af en bestemt operand under hensyn til den kendsgerning, at hver behandlingsenhed kan arbejde uafhængigt med de data 30 som findes i det tilhørende privatlager. I fig. 2 angiver betegnelsen B-l den af den tilhørende behandlingsenhed ønskede datablok. Betegnelsen B-2 angiver den datablok i et privatlager, der skal udskiftes med nye data.
Som reaktion på et hente- eller oplagrings-til-35 gangsønske fra behandlingsenheden A afgør beslutningsblok ken 63, om blok-gyldig-signalet frembringes for den ønskede
O
12 145049 blok i bufferen A. Hvis blokken er gyldig, afgør beslutningsblokken 64, hvorvidt der er tale om et hente-ønske eller et oplagringsønske. Hvis der er tale om et hente--ønske, bliver handlingsforløbet ved 65 aktuelt. Data fra 5 den ønskede blok B-l i bufferen A tilbageføres til be handlingsenheden A. Når beslutningsblokken 64 afgør, at ønsket gælder en oplagringsoperation, vil beslutningsblokken 66 afgøre, hvorvidt hentebitten befinder sig i 1-tilstanden eller O-tilstanden for den ønskede blok i 10 bufferen A. Hvis hentebitten befinder sig i O-tilstanden, er funktionen ved 68 aktuel. Der oplagres da data fra behandlingsenheden A på den rigtige operandplads for blokken B-l i bufferen A. Oplagringen af blokken B-l i bufferen A bevirker også, at oplagringsbitten omstilles til 15 1-tilstanden i bufferen A.
Hvis beslutningsblokken 66 indicerer, at hentebitten befinder sig i en binær 1-tilstand, viser dette, at andre privatlagre indeholder eller ved et eller andet tidspunkt har indeholdt en kopi af den samme datablok.
20 Derfor startes behovet for informationsspredning på de sammenkoblende organer mellem behandlingsenhederne. Den grundinformation, der spredes, er adressen for den ønskede blok B-l og hvorvidt det gælder et hente- eller oplagring--tilgangsønske. Når de udspredte data modtages ved de øv-25 rige behandlingsenheder, afgør beslutningsblokken 69, hvor vidt den Ønskede blok B-l er gyldig i dette særlige privatlager, der i dette tilfælde er betegnet behandlingsenheden B. Hvis den ønskede blok B-l ikke er gyldig i det andet privatlager, vil hentebitten i behandlingsenheden 30 A's buffer blive omstillet til O ved 67, og oplagrings operationen kan finde sted ved 68.
Når det konstateres, at den ønskede blok B-l er gyldig i behandlingsenheden B's privatlager, vil blok--gyldig-bitten for den oplagringssektion, der indeholder 35 den ønskede blok B-l, blive omstillet til O ved 70, da spredningen var et resultat af et oplagring-tilgangsønske
O
13 145049 i behandlingsenheden A. Dette bevirker, at behandlingsenheden B kræver en overførsel af data fra det fælles lager 10 til dens privatlager, næste gang behandlingsenheden søger tilgang til data i blokken B-l. Når blok-5 -gyldig-triggeren er udkoblet for blokken B-l i bufferen B, vil hentebitten for blokken B-l i behandlingsenheden A blive omstillet til O-tilstanden ved 67, og oplagringsoperationen kan finde sted ved 68.
Resten af de logiske beslutninger og logikse-10 kvenser, der er vist i fig. 2, er aktuelle, når det ved 63 bestemmes, at den ønskede blok B-l ikke er gyldig i behandlingsenheden A. Når den ønskede blok ikke er gyldig i bufferen A, træder en udskiftningsalgoritme i funktion ved 71 for at udtage en blok, som skal udskiftes i buffe-15 ren A, hvilken blok senere bliver identificeret som blok ken B-2. På dfette punkt træffes der en beslutning ved 72 vedrørende behovet for fornyet oplagring af data fra privatlageret tilbage i det fælles hovedlager. Som tidligere antydet afhænger denne beslutning af tilstanden af gyl-20 dighedsbitten og oplagringsbitten i blokken B-2 i behand lingsenheden A,s buffer. Hvis gyldighedsbitten og oplagringsbitten befinder sig i 1-tilstanden, følges rutinen ved 73. Den blok B-2, der skal udskiftes,'bliver da overført til det fælles lager 10 fra bufferen A, og oplag-25 ringsbitten for den oplagringssektion, der indeholder B-2 i bufferen A, omstilles til O-tilstanden. Når der er sket en fornyet oplagring af datablokken ved 73, eller det bestemmes, at dette ikke er nødvendigt ved 72, må der ske en spredning af adresse- og tilgangsstyreinformation. For-30 målet med spredningen af information på dette punkt er at u' konstatere, hvorvidt den ønskede blok B-l findes eller ikke findes i behandlingsenheden B's buffer, og hvorvidt værdien af operanderne i behandlingsenheden B's buffer stemmer overens med eller afviger fra operandblokken i det 36 fælles lager 10.
0 14 145049
De udspredte adresse- og tilgangsstyresignalet anvendes til afsøgning af indholdsfortegnelsen i behandlingsenheden B, hvad angår tilstedeværelsen af den ønskede blok B-l, og beslutningen af, hvorvidt blokken B-l er gyl-5 dig i bufferen B, træffes ved 74. Hvis den Ønskede blok B-l findes i bufferen B, og oplagringsbitten for den ønskede blok B-l i bufferen B befinder sig i 1-stillingen, som det er antydet ved 75, må datablokken B-l på ny oplagres i det fælles lager 10 fra bufferen i behandlingsen-10 heden B, som det er vist ved 76. Endvidere omstilles op lagringsbitten for blokken B-l i behandlingsenheden B's buffer til O-tilstanden for at indikere, at data i det fælles lager 10 stemmer overens med de data, som findes i behandlingsenheden B's buffer. Når blokken B-l på ny er 15 oplagret i det fælles lager 10, eller det er bestemt, at dette ikke er nødvendigt, gælder den næste afgørelse ved 77, hvorvidt tilgangsønsket ved behandlingsenheden A vedrører hentning af data eller oplagring af data. Hvis tilgangsønsket ved behandlingsenheden A ikke gælder hentning, 20 men i stedet en oplagring, består rutinen ved 78 i at om stille blok-gyldig-bitten for blokken B-l i bufferen i behandlingsenheden B til O-tilstanden, hvilket får behandlingsenheden B til at afgive det næste ønske om en operand fra blokken B-l til det fælles lager 10. Hvis beslut-25 ningen ved 77 indikerer, at ønsket ved behandlingsenheden A vedrører hentning af data, omstilles hentebitten for blokken B-l i bufferen B til 1-tilstanden ved 79, og hentebitten for blokken B-l i behandlingsenheden A omstilles også til 1-tilstand ved 80 for at genspejle, at der findes fle-30 re end én kopi af blokken B-l i alle behandlingsenheder nes privatlagre.
Hvis der som et resultat af informationsspredningen træffes en beslutning ved 74 gående ud på, at den ønskede blok B-l ikke er gyldig i behandlingsenheden B's
OC
buffer, vil hentebitten for den ønskede blok B-l i buf- 0 15 145049 feren i behandlingsenheden A blive omstillet til O-tilstanden ved 81, hvilket angiver, at bufferen i behandlingsenheden A har den eneste kopi af blokken B-l ud over den, som findes i det fælles lager 10.
5 Når det er bestemt, at den blok, der må overføres fra hovedlageret 10 til bufferen i behandlingsenheden A, er gyldig i hovedlageret, vil blokken B-l blive overført fra hovedlageret 10 til den udvalgte oplagringssektion i bufferen i behandlingsenheden A, idet gyldighedsbitten i 10 det tilhørende register for blokken B-l omstilles til 1-tilstanden. Denne rutine er vist ved 82. Når disse data er overført fra hovedlageret 10 til bufferen i behandlingsenheden A, sker bestemmelsen af, om et hente- eller et oplagringsønske er aktuelt ved 83, hvorefter rutinerne ved 15 65 eller 68 følges.
De Γ forbindelse med fig, 2 behandlede logikbeslutninger og -sekvenser knyttes nu sammen med fig. 3 og 4. Fig. 3 tilsigter at repræsenteret den del af logikken, der er nødvendig for, at en af behandlingsenhederne skal 20 kunne påbegynde en spredning eller overførsel af tilgangs styreinformation og adresseinformation på de sammenkoblende organer. Fig. 4 viser den logik, der kræves i de øvrige behandlingsenheder for at besvare den udspredte information .
25 Behovet for adresseinformationsspredning på den sammenkoblende adressehovedledning 24 og overførselen af tilgangsstyresignaler på ledningen 30 kan betragtes som fjernsignaler, der passerer et ELLER-kredsløb 84, et åbningskredsløb 85 og et åbningskredsløb 86. Behovet for 30 at sprede adresse- og tilgangsstyreinformation på basis af beslutningen i fig. 2, hvilket indikerer, at den ønskede blok er gyldig i det ønskede anlæg, og at tilgangen gælder oplagring af information, repræsenteres af et OG-kredsløb 87. OG-kredsløbet 87 reagerer over for blok-35 -gyldig-signalet fra OG-kredsløbet 41, der er en indi-
O
16 145049 kering af, at hentebitten for den ønskede blok er et binært ettal, og at signalet for tilgangsønsket er en oplagringsoperation, frembragt af en inverter 88. Udgangssignalet fra OG-kredsløbet føres til ELLER-kredsløbet 84 5 for at aktivere åbningskredsløbene 85 og 86 og med henblik på spredning eller overførsel på de sammenkoblende organer af den ønskede blokadresse og tilgangsønsket. Hvis hente-bitten 62 for den ønskede blok er et binært 0, hvilket indikerer, at dette er den eneste kopi af de pågældende da-10 ta, vil OG-kredsløbet 87 som tidligere nævnt ikke frem bringe noget udgangssignal, hvorved spredningen af information hindres.
Når den behandlingsenhed, der kræver information, detekterer, at der foreligger et behov for overførsel af 15 blokken fra det fælles lager 10 til privatlageret 15, fremføres som omtalt i forbindelse med fig. 2 signalet på ledningen 48, hvilket indikerer et behov for overførsel af en blok til ELLER-kredsløbet 84 med henblik på aktivering af åbningskredsløbene 85 og 86. Signalet på led-20 ningen 48 overføres som et fjernsignal til andre behand lingsenheder med henblik på påbegyndelse af de beslutninger, der begynder ved 74 i fig. 2.
Den øvrige logik i fig. 3, der reagerer over for den indledende afsøgning af indholdsfortegnelsen 27 ved .25 hjælp af den tilførte lokaladresse på adressehovedledning en 13, indbefatter et OG-kredsløb 89, som reagerer over for et blok-gyldig-signal og ønsket om en oplagringstilgang med indstilling af S-bitten 56 hørende til den oplagringssektion, hvortil der er dannet tilgang, og regi-30 streret. Inverteren 90 og OG-kredsløbet 91 reagerer over for en afsøgning af indholdsfortegnelsen 27 for at indikere, at den ønskede blok er gyldig, og at det er den eneste kopi af den ønskede datablok.
Fig. 4 viser de logiske kredsløb i samtlige be-3$ handlingsenheder, der aktiveres, når der spredes eller overføres information på den sammenkoblende adressehoved- U5049
O
17 ledning 29 og tilgangsstyreledningen 30. Den eneste yderligere ledning, der kræves til overførsel på de sammenkoblende organer til de øvrige behandlingsenheder, er ledningen med betegnelsen 31, som indicerer, at den 5 informationsspredende behandlingsenhed anmodes om at overføre en datablok fra det fælles hovedlager 10 til privatlageret. Spredningen af adresseinformation anvendes til afsøgning af andre behandlingsenheders indholdsfortegnelser.
10 Fig. 4 viser indholdsfortegnelsen 28 i behand lingsenheden B og privatlageret 16 i samme behandlings-enhed. Det samme sammenligningskredsløb 39 og OG-kreds-løbet 41 tilvejebringer blok-gyldig-signalet på ledningen 42 og et blok-ikke-gyldig-signal fra en inverter 47.
15 En inverter 92 reagerer over for fjerntilgangsanmodnings ledningen 30 for at indikere, hvornår der sker en .fjernoplagring. OG-kredsløbet 93 tilvejebringer den beslutning, der indikeres i beslutningsblokken 69 i fig. 2. Når den ønskede blok er gyldig i de andre behandlingsenheder, og 20 den informationsspredende behandlingsenhed oplagrer in formation, har et OG-kredsløb 93 til opgave at tilbagestille gyldighedsbitten 40 i den tilsvarende datablok i behandlingsenheden B, hvori der sker en oplagring fra behandlingsenheden A. Samtidig er udgangssignalet fra 0G-25 -kredsløbet 93 i stand til ved ELLER-kredsløbet 94 til behandlingsenheden A på de sammenkoblende organer på ledningen 95 at overføre det signal, som er nødvendigt til tilbagestilling af hentebitten 62 i behandlingsenheden A for at angive, at behandlingsenheden A nu har den eneste 30 gyldige kopi af operandblokken til oplagring. ELLER-kreds- · løbet 94 reagerer også over for inverteren 47, der signalerer, at den af behaidlingsenheden ønskede blok ikke er gyldig i behandlingsenheden B's privatlager for derved også at tilbagestille hentebitten i behandlingsenheden A.
35 0 18 145049
Et OG-kredsløb 96 reagerer over for fjern-hentesignalet 30 og blok-gyldig-signalet fra OG-kredsløbet 41 for at indikere over for såvel den lokale indholdsfortegnelse 28 i behandlingsenheden B som over for 5 indholdsfortegnelsen 27 i behandlingsenheden A, at der eksisterer flere end én kopi af den ønskede datablok i de private lagre. Denne ledning med betegnelsen 97 indstiller den lokale F-bit og påvirker de sammenkoblende organer til indstilling af F-bitten i behandlingsenheden 10 a.
Det resterende logiske kredsløb i fig. 4, nemlig OG-kredsløbet 98, tilvejebringer den beslutning, som er vist ved 72 i fig. 2. Dette medfører, at der, når behandlingsenheden A har signaleret, at den overfører en datals blok på ledningen 31, at den ønskede datablok er gyldig i behandlingsenheden B, hvilket signaleres på ledningen 42, og at behandlingsenheden B har udført oplagringen i blokken i overensstemmelse med, hvad der indikeres af oplagringsbitten 56's 1-tilstand, sker en overførsel af ind-2° holdet i oplagringssektionen i privatlageret 16 ved hjælp af et åbningskredsløb 99 til den rigtige plads i det fælles hovedlager 10. Endvidere bliver udgangssignalet fra OG-kredsløbet 98 anvendt til tilbagestilling af lokal-S--bitten 56 for at angive, at værdien af de operander, .25 som er overført til det fælles hovedlager 10, nu er iden tisk med de data, som findes i privatlageret 16's oplagringssektion.
I det følgende beskrives resten af de logiske kredsløb under henvisning til fig. 3. Indikeringen af, 30 at den lokale behandlingsenhed oplagrer information i en datablok, som er den eneste kopi uden for hovedlageret 10, afgives af et OG-kredsløb 100 og et ELLER-kredsløb 101. Udgangssignalet fra OG-kredsløbet 100 er i stand til ved åbningskredsløbet 55 umiddelbart at overføre de på-35 gældende data på hovedledningen 54 fra den lokale een- 19 1Λ 5 Ο Λ 9 Ο tralenhed til den oplagringssektion 33 i privatlageret 15, hvortil der er dannet tilgang. Det andet indgangssignal til ELLER-kredsløbet 101 kommer på den sammenkoblende signalledning 95 og indikerer, at de andre be-5 handlingsenheder har tilbagestillet hentebitten 62 i de informationsspredende behandlingsenheders indholdsfortegnelse. OG-kredsløbene 102 og 103 aktiveres, når in-verteren 47 indikerer et behov for overførsel af en datablok fra det fælles hovedlager 10 til det lokale pri-10 vatlager 15. Åbningskredsløbet 52, der overfører data r på hovedledningen 51 fra hovedlageret til privatlageret 15, aktiveres via et ELLER-kredsløb 104.
Den direkte tilslutning af ledningen 95 til ELLER-kredsløbet 104 angiver den ved 74 i fig. 2 trufne be-15 slutning, der frembringes som reaktion på bestemmelsen af, at den øreskede blok ikke findes i noget andet privatlager. OG-kredsløbet 102 angiver den beslutning, som træffes, når den lokale behandlingsenhed ønsker at oplagre data i en blok, men denne blok må overføres fra hovedlageret 20 10 til det lokale privatlager 15. Når der signaleres be hovet for, at en blok overføres fra hovedlageret 10 til privatlageret 15, angiver blokken 78 i fig. 2, at den gyldige kopi i behandlingsenheden B gøres ugyldig af OG-kreds-løbet 93 i fig. 4, der også via ELLER-kredsløbet 94 frem-25 bringer signalet 95. Når dette er modtaget af OG-kreds- løbet 102, påvirker ELLER-kredsløbet 104 åbningskredsløbet 52 til overførsel af datablokken fra hovedlageret 10 til privatlageret 15.
OG-kredsløbet 103 angiver åen trufne beslutning, 30 hvilket til slut frembringer det signal, som er vist i v blokken 80 i fig. 2, hvilket signal tilkobler hentebitten i begge behandlingsenhedernes bufferlagre. Endnu en gang afgives ELLER-kredsløbet 104 en indikering om at indlede overførselen af en datablok fra det fælles lager 35 10 via åbningskredsløbet 52. Et forsinkelseskredsløb 105 frembringer et signal til indstilling af gyldig-bit- 0 20 145049 ten 40 i indholdsfortegnelsen 27, når datablokken er overført til den udvalgte oplagringssektion 33 i bufferlageret 15.
Som tidligere nævnt indbefatter den foretrukne 5 udførelsesform af databehandlingsanlægget ifølge opfin delsen en privatlager- og indholdsfortegnelsesform, som udnytter "indstil associativ"-metoden. Endvidere er den under betegnelsen "oplagring i buffer" kendte metode anvendt, og varierende styrefunktioner og beslutninger til-10 vejebringes som reaktion på gyldighedsbitten, oplagrings bitten og hentebitten. Forskellige modifikationer kan udføres af dette grundlæggende system. Indholdsfortegnelserne 27 og 28 kan alene indeholde en gyldig-bit 40. I dette tilfælde optræder der behov for spredning af adres-1$ se- og tilgangsstyreinformation, hver gang en oplagrings- . operation i. et privatlager eller i det fælles lager udføres. Den punkteret viste styreledning 106 i fig. 3 angiver denne situation. Dette medfører, at der, hver gang en behandlingsenhed oplagrer information, må ske en af-20 Søgning af de øvrige behandlingsenheder med den udspredte adresse- og tilgangsstyreinformation for at ugyldiggøre data i et eventuelt andet privatlager, som også indeholder den datablok, hvori oplagringen sker.
Den næste mulige modifikation består i, at hen-.25 tebitten 62 adderes til den tidligere nævnte gyldig-bit 40, hvilket eliminerer behovet for at udsprede denne information vedrørende en oplagringsinformation, når det afgøres, at den datablok, hvori oplagringen sker, er den eneste, som findes i et eneste privatlager. Hvis der er 30 behov for at overføre en datablok fra hovedlageret 10 til en anmodende behandlingsenhed foreligger der, når alene gyldighedsbitten eller gyldighedsbitten og hentebitten anvendes, et behov for at bestemme, hvorvidt datablokken findes i noget andet privatlager eller ej. Hvis da-35 tablokken findes i et andet privatlager, er det nødven- 145049 21 o digt at påbegynde en overførsel af datablokken fra det andet privatlager til det fælles hovedlager 10 forud for overførselen af blokken til den anmodende behandlingsenhed. Endvidere må en blok, der udnyttes i et bestemt 5 af privatlagrene, altid føres tilbage til den rigtige plads i det fælles hovedlager 10, da man ikke kan være sikker på, om disse data er modificeret, da de befandt sig i det lokale privatlager.
Ved addition af oplagringsbitten 56 til hvert 10 af registrene i indholdsfortegnelserne kan behovet for påbegyndelse af en overførsel af datablokken fra et pri-vatlager til hovedlageret elimineres, når det konstateres, at der ikke er sket nogen oplagring i datablokken i privatlageret før det tidspunkt, på hvilket den om-15 placeres ved hjælp af udskiftningsalgoritmen. Selv om der ved den foretrukne udførelsesform for databehandlingsanlægget ifølge den foreliggende opfindelse udnyt-tes en "indstilling associativ”-form, kan den helt associative metode bringes til anvendelse. Ved tilveje- 20 bringelse af de yderligere styrebit i hvert af de associative registre kan de forskellige oplagringsstyremetoder anvendes. Ved tilføjelse af gyldighedsbitten 40, oplagringsbitten 56 eller hentebitten 62 opnås stør- refleksibilitet ved valget af størrelsen af den data-25 blok, som flyttes frem og tilbage mellem privatlageret og det fælles hovedlager. Ved eliminering af behovet for at udjævne de nødvendige sammenkoblinger til en forud fastsat blokstørrelse, som beskyttes af en eller anden mekanisme, har man elimineret behovet for at ugyl-30 diggøre indføringen i et andet privatlager, hver gang en bestemt operand modificeres i blokken af beskyttede operander.
35

Claims (1)

  1. 0 145049 Patentkrav. Databehandlingsanlæg indbefattende et delt hovedlager (10) til oplagring af flere operander på adresser-5 bare pladser og flere behandlingsenheder (11, 12), der hver indeholder midler til tilvejebringelse af lokaladres-sesignaler (via 13, 14), som identificerer en operand-plads i det nævnte delte hovedlager, og lokaltilgangs-.styreorganer (19, 20), til signalering af en tilgangs-1Q anmodning for at hente data ud fra eller et oplagre da ta på den adresserede plads, hvorhos hver behandlingsenhed (11, 12) desuden indeholder et hurtigt bufferlager ' (15, 16) til oplagring.af en forud fastsat del af operan-der, som tidligere er overført fra det nævnte delte hoved-15 lager til bufferlageret, en indholdsfortegnelse (27, 28) til identifikation af operanderne i det nævnte bufferlager med henblik på umiddelbar tilgang fra den tilhørende behandlingsenhed samt oplagringsstyreorganer (21, 22) indbefattende organer, der reagerer over for de nævnte 20 lokaladressesignalerende midler, de nævnte lokaltilgangs- styreorganer og den nævnte indholdsfortegnelse for at danne tilgang til en identificeret operandplads i det nævnte bufferlager, hvorhos samtlige oplagringsstyreorganer (21, 22. er sammenkoblet ved hjælp·».af hoved- og styreledning-25 er (29-32) for at bevirke, at samtlige behandlingsen heder (11, 12) får tilgang til den mest aktuelle værdi af en operand, kendetegnet ved, at oplagringsstyreorganerne (21, 22) reagerer over for af behandlings-enhederne (11, 12) frembragte adressesignaler, der re-30 præsenterer pladser for en bestemt operand, ved i afhæng ighed af tilstanden af flere styreindikatorer (40, 56, 62), der er anbragt i tilknytning til hver indholdsfortegnelse (27, 28), at sprede adresse- og styreinformation mellem oplagringsstyreorganerne (21, 22), hvilken spred-35 ning tilvejebringes ved hjælp af til styreindikatorerne
DK420872A 1971-08-25 1972-08-24 Databehandlingsanlaeg med et faelles hovedlager og et antal behandlingsenheder med bufferlager DK145049C (da)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17482471A 1971-08-25 1971-08-25
US17482471 1971-08-25

Publications (2)

Publication Number Publication Date
DK145049B true DK145049B (da) 1982-08-09
DK145049C DK145049C (da) 1983-01-10

Family

ID=22637676

Family Applications (1)

Application Number Title Priority Date Filing Date
DK420872A DK145049C (da) 1971-08-25 1972-08-24 Databehandlingsanlaeg med et faelles hovedlager og et antal behandlingsenheder med bufferlager

Country Status (14)

Country Link
US (1) US3735360A (da)
JP (1) JPS5214064B2 (da)
BE (1) BE787602A (da)
CA (1) CA960782A (da)
CH (1) CH546983A (da)
DE (1) DE2241257C3 (da)
DK (1) DK145049C (da)
FI (1) FI61363C (da)
FR (1) FR2151425A5 (da)
GB (1) GB1343375A (da)
IT (1) IT963416B (da)
NL (1) NL7211220A (da)
NO (1) NO135885C (da)
SE (1) SE380373B (da)

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1354827A (en) * 1971-08-25 1974-06-05 Ibm Data processing systems
US4115866A (en) * 1972-02-25 1978-09-19 International Standard Electric Corporation Data processing network for communications switching system
GB1434186A (en) * 1972-04-26 1976-05-05 Gen Electric Co Ltd Multiprocessor computer systems
US3824551A (en) * 1972-05-18 1974-07-16 Little Inc A Releasable buffer memory for data processor
US4015242A (en) * 1972-11-29 1977-03-29 Institut Francais Du Petrole, Des Carburants Et Lubrifiants Et Entreprise De Recherches Et D'activities Petrolieres Elf Device for coupling several data processing units to a single memory
US3833889A (en) * 1973-03-08 1974-09-03 Control Data Corp Multi-mode data processing system
US3940743A (en) * 1973-11-05 1976-02-24 Digital Equipment Corporation Interconnecting unit for independently operable data processing systems
US3889237A (en) * 1973-11-16 1975-06-10 Sperry Rand Corp Common storage controller for dual processor system
US4073005A (en) * 1974-01-21 1978-02-07 Control Data Corporation Multi-processor computer system
DE2505518A1 (de) * 1974-03-13 1975-09-18 Control Data Corp Vorrichtung zur uebertragung von daten zwischen den speicher- und rechenabschnitten eines elektronischen rechners
US3967247A (en) * 1974-11-11 1976-06-29 Sperry Rand Corporation Storage interface unit
US4212057A (en) * 1976-04-22 1980-07-08 General Electric Company Shared memory multi-microprocessor computer system
US4171536A (en) * 1976-05-03 1979-10-16 International Business Machines Corporation Microprocessor system
JPS589977B2 (ja) * 1976-05-21 1983-02-23 三菱電機株式会社 複合形処理装置
US4075686A (en) * 1976-12-30 1978-02-21 Honeywell Information Systems Inc. Input/output cache system including bypass capability
JPS5386542A (en) * 1977-01-10 1978-07-31 Hitachi Ltd Multiple information processor
US4136386A (en) * 1977-10-06 1979-01-23 International Business Machines Corporation Backing store access coordination in a multi-processor system
GB2080989B (en) * 1977-11-22 1982-12-08 Honeywell Inf Systems Improvements in or relating to data processing systems including cache stores
US4357656A (en) * 1977-12-09 1982-11-02 Digital Equipment Corporation Method and apparatus for disabling and diagnosing cache memory storage locations
JPS5489444A (en) * 1977-12-27 1979-07-16 Fujitsu Ltd Associative memory processing system
US4191919A (en) * 1978-05-22 1980-03-04 Varian Associates, Inc. Fast NMR acquisition processor
US4197580A (en) * 1978-06-08 1980-04-08 Bell Telephone Laboratories, Incorporated Data processing system including a cache memory
US4373179A (en) * 1978-06-26 1983-02-08 Fujitsu Limited Dynamic address translation system
FR2430637A1 (fr) * 1978-07-06 1980-02-01 Cii Honeywell Bull Procede et dispositif pour garantir la coherence des informations entre des caches et d'autres memoires d'un systeme de traitement de l'information travaillant en multitraitement
US4228503A (en) * 1978-10-02 1980-10-14 Sperry Corporation Multiplexed directory for dedicated cache memory system
CA1123964A (en) * 1978-10-26 1982-05-18 Anthony J. Capozzi Integrated multilevel storage hierarchy for a data processing system
US4257097A (en) * 1978-12-11 1981-03-17 Bell Telephone Laboratories, Incorporated Multiprocessor system with demand assignable program paging stores
US4402046A (en) * 1978-12-21 1983-08-30 Intel Corporation Interprocessor communication system
JPS55134459A (en) * 1979-04-06 1980-10-20 Hitachi Ltd Data processing system
US4325116A (en) * 1979-08-21 1982-04-13 International Business Machines Corporation Parallel storage access by multiprocessors
US4313161A (en) * 1979-11-13 1982-01-26 International Business Machines Corporation Shared storage for multiple processor systems
JPS5680872A (en) * 1979-12-06 1981-07-02 Fujitsu Ltd Buffer memory control system
US4471429A (en) * 1979-12-14 1984-09-11 Honeywell Information Systems, Inc. Apparatus for cache clearing
FR2474201B1 (fr) 1980-01-22 1986-05-16 Bull Sa Procede et dispositif pour gerer les conflits poses par des acces multiples a un meme cache d'un systeme de traitement numerique de l'information comprenant au moins deux processus possedant chacun un cache
EP0047238B1 (en) * 1980-02-28 1988-11-02 Intel Corporation Data processing system
US4399506A (en) * 1980-10-06 1983-08-16 International Business Machines Corporation Store-in-cache processor means for clearing main storage
US4394731A (en) * 1980-11-10 1983-07-19 International Business Machines Corporation Cache storage line shareability control for a multiprocessor system
EP0051745B1 (en) * 1980-11-10 1988-01-27 International Business Machines Corporation Cache storage hierarchy for a multiprocessor system
US4513367A (en) * 1981-03-23 1985-04-23 International Business Machines Corporation Cache locking controls in a multiprocessor
US4410944A (en) * 1981-03-24 1983-10-18 Burroughs Corporation Apparatus and method for maintaining cache memory integrity in a shared memory environment
US4445174A (en) * 1981-03-31 1984-04-24 International Business Machines Corporation Multiprocessing system including a shared cache
US4525777A (en) * 1981-08-03 1985-06-25 Honeywell Information Systems Inc. Split-cycle cache system with SCU controlled cache clearing during cache store access period
JPS5846428A (ja) * 1981-09-11 1983-03-17 Sharp Corp 文章編集装置の停電保護用処理方式
US4476526A (en) * 1981-11-27 1984-10-09 Storage Technology Corporation Cache buffered memory subsystem
US4442487A (en) * 1981-12-31 1984-04-10 International Business Machines Corporation Three level memory hierarchy using write and share flags
US4463420A (en) * 1982-02-23 1984-07-31 International Business Machines Corporation Multiprocessor cache replacement under task control
US4503497A (en) * 1982-05-27 1985-03-05 International Business Machines Corporation System for independent cache-to-cache transfer
US4571674A (en) * 1982-09-27 1986-02-18 International Business Machines Corporation Peripheral storage system having multiple data transfer rates
US4590554A (en) * 1982-11-23 1986-05-20 Parallel Computers Systems, Inc. Backup fault tolerant computer system
US4695951A (en) * 1983-07-07 1987-09-22 Honeywell Bull Inc. Computer hierarchy control
US4648030A (en) * 1983-09-22 1987-03-03 Digital Equipment Corporation Cache invalidation mechanism for multiprocessor systems
US4881164A (en) * 1983-12-30 1989-11-14 International Business Machines Corporation Multi-microprocessor for controlling shared memory
JPH0616272B2 (ja) * 1984-06-27 1994-03-02 株式会社日立製作所 メモリアクセス制御方式
US4827401A (en) * 1984-10-24 1989-05-02 International Business Machines Corporation Method and apparatus for synchronizing clocks prior to the execution of a flush operation
ATE80480T1 (de) * 1985-02-05 1992-09-15 Digital Equipment Corp Vorrichtung und verfahren zur zugriffsteuerung in einer mehrcachespeicherdatenverarbeitungsanordnung.
JP2609220B2 (ja) * 1985-03-15 1997-05-14 ソニー株式会社 マルチ・プロセツサ・システム
DE3650021T2 (de) * 1985-10-30 1995-03-09 Ibm Cache-Speicherübereinstimmungsvorrichtung mit Verriegelung.
JPS62147548A (ja) * 1985-12-23 1987-07-01 Mitsubishi Electric Corp 外部記憶制御装置
US5146607A (en) * 1986-06-30 1992-09-08 Encore Computer Corporation Method and apparatus for sharing information between a plurality of processing units
CH672816A5 (da) * 1986-10-03 1989-12-29 Pantex Stahl Ag
EP0271187B1 (en) * 1986-10-17 1995-12-20 Amdahl Corporation Split instruction and operand cache management
FR2609195A1 (fr) * 1986-12-31 1988-07-01 Thomson Csf Procede de gestion d'antememoires associees a des processeurs dans une architecture multiprocesseur a bus unique et systeme de traitement de donnees fonctionnant suivant ce procede
JP2714952B2 (ja) * 1988-04-20 1998-02-16 株式会社日立製作所 計算機システム
US4984153A (en) * 1988-04-27 1991-01-08 Unisys Corporation Storage locking control for a plurality of processors which share a common storage unit
DE3919802C2 (de) * 1988-06-17 1997-01-30 Hitachi Ltd Speichersteuersystem für ein Multiprozessorsystem
US4939641A (en) * 1988-06-30 1990-07-03 Wang Laboratories, Inc. Multi-processor system with cache memories
US5097409A (en) * 1988-06-30 1992-03-17 Wang Laboratories, Inc. Multi-processor system with cache memories
US5317716A (en) * 1988-08-16 1994-05-31 International Business Machines Corporation Multiple caches using state information indicating if cache line was previously modified and type of access rights granted to assign access rights to cache line
US5202972A (en) * 1988-12-29 1993-04-13 International Business Machines Corporation Store buffer apparatus in a multiprocessor system
US5142638A (en) * 1989-02-07 1992-08-25 Cray Research, Inc. Apparatus for sharing memory in a multiprocessor system
US5526487A (en) * 1989-02-09 1996-06-11 Cray Research, Inc. System for multiprocessor communication
US5210848A (en) * 1989-02-22 1993-05-11 International Business Machines Corporation Multi-processor caches with large granularity exclusivity locking
US5524255A (en) * 1989-12-29 1996-06-04 Cray Research, Inc. Method and apparatus for accessing global registers in a multiprocessor system
US5197139A (en) * 1990-04-05 1993-03-23 International Business Machines Corporation Cache management for multi-processor systems utilizing bulk cross-invalidate
US5297269A (en) * 1990-04-26 1994-03-22 Digital Equipment Company Cache coherency protocol for multi processor computer system
US5263144A (en) * 1990-06-29 1993-11-16 Digital Equipment Corporation Method and apparatus for sharing data between processors in a computer system
US5206952A (en) * 1990-09-12 1993-04-27 Cray Research, Inc. Fault tolerant networking architecture
US5434970A (en) * 1991-02-14 1995-07-18 Cray Research, Inc. System for distributed multiprocessor communication
US5303362A (en) * 1991-03-20 1994-04-12 Digital Equipment Corporation Coupled memory multiprocessor computer system including cache coherency management protocols
JP2743608B2 (ja) * 1991-03-27 1998-04-22 日本電気株式会社 共有レジスタ制御方式
US5953510A (en) * 1991-09-05 1999-09-14 International Business Machines Corporation Bidirectional data bus reservation priority controls having token logic
US5361345A (en) * 1991-09-19 1994-11-01 Hewlett-Packard Company Critical line first paging system
JPH0619771A (ja) * 1992-04-20 1994-01-28 Internatl Business Mach Corp <Ibm> 異種のクライアントによる共用ファイルのファイル管理機構
JPH0797352B2 (ja) * 1992-07-02 1995-10-18 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ・システム及び入出力コントローラ
US5522058A (en) * 1992-08-11 1996-05-28 Kabushiki Kaisha Toshiba Distributed shared-memory multiprocessor system with reduced traffic on shared bus
US5317749A (en) * 1992-09-25 1994-05-31 International Business Machines Corporation Method and apparatus for controlling access by a plurality of processors to a shared resource
CA2107056C (en) * 1993-01-08 1998-06-23 James Allan Kahle Method and system for increased system memory concurrency in a multiprocessor computer system
US5689679A (en) * 1993-04-28 1997-11-18 Digital Equipment Corporation Memory system and method for selective multi-level caching using a cache level code
US5809525A (en) * 1993-09-17 1998-09-15 International Business Machines Corporation Multi-level computer cache system providing plural cache controllers associated with memory address ranges and having cache directories
JPH07210445A (ja) * 1994-01-20 1995-08-11 Mitsubishi Electric Corp 半導体記憶装置およびコンピュータ
US5539895A (en) * 1994-05-12 1996-07-23 International Business Machines Corporation Hierarchical computer cache system
US7168088B1 (en) 1995-11-02 2007-01-23 Sun Microsystems, Inc. Method and apparatus for reliable disk fencing in a multicomputer system
US5996075A (en) * 1995-11-02 1999-11-30 Sun Microsystems, Inc. Method and apparatus for reliable disk fencing in a multicomputer system
US6279084B1 (en) * 1997-10-24 2001-08-21 Compaq Computer Corporation Shadow commands to optimize sequencing of requests in a switch-based multi-processor system
US6754696B1 (en) * 1999-03-25 2004-06-22 Micosoft Corporation Extended file system
US6339793B1 (en) 1999-04-06 2002-01-15 International Business Machines Corporation Read/write data sharing of DASD data, including byte file system data, in a cluster of multiple data processing systems
US6865645B1 (en) * 2000-10-02 2005-03-08 International Business Machines Corporation Program store compare handling between instruction and operand caches
TWI230859B (en) * 2004-03-11 2005-04-11 Amic Technology Corp Method and related system for accessing LPC memory or firmware memory in a computer system
JP2005259320A (ja) * 2004-03-15 2005-09-22 Nec Electronics Corp パーシャル・デュアル・ポート・メモリ及び該メモリを用いた電子機器
JP2005259321A (ja) * 2004-03-15 2005-09-22 Nec Electronics Corp フレキシブル・マルチエリア・メモリ及び該メモリを用いた電子機器
JP4837264B2 (ja) 2004-07-14 2011-12-14 ヤマウチ株式会社 熱プレス用クッション材
US8386527B2 (en) * 2009-11-30 2013-02-26 Pocket Soft, Inc. Method and system for efficiently sharing array entries in a multiprocessing environment
US9244841B2 (en) * 2012-12-31 2016-01-26 Advanced Micro Devices, Inc. Merging eviction and fill buffers for cache line transactions
US11966992B1 (en) 2017-05-10 2024-04-23 State Farm Mutual Automobile Insurance Company Identifying multiple mortgage ready properties
US11094007B1 (en) 2017-05-10 2021-08-17 State Farm Mutual Automobile Insurance Company Continuously updating mortgage ready data
US10949919B1 (en) 2017-05-10 2021-03-16 State Farm Mutual Automobile Insurance Company Approving and updating dynamic mortgage applications
US11210734B1 (en) 2017-05-10 2021-12-28 State Farm Mutual Automobile Insurance Company Approving and updating dynamic mortgage applications
US10943294B1 (en) 2017-05-10 2021-03-09 State Farm Mutual Automobile Insurance Company Continuously monitoring and updating mortgage ready data

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4731652A (da) * 1966-02-22 1972-11-13
US3618040A (en) * 1968-09-18 1971-11-02 Hitachi Ltd Memory control apparatus in multiprocessor system
US3581291A (en) * 1968-10-31 1971-05-25 Hitachi Ltd Memory control system in multiprocessing system
US3588829A (en) * 1968-11-14 1971-06-28 Ibm Integrated memory system with block transfer to a buffer store

Also Published As

Publication number Publication date
CH546983A (de) 1974-03-15
NO135885B (da) 1977-03-07
US3735360A (en) 1973-05-22
BE787602A (fr) 1972-12-18
JPS4831033A (da) 1973-04-24
DE2241257B2 (de) 1974-01-03
JPS5214064B2 (da) 1977-04-19
NO135885C (da) 1977-06-29
DE2241257C3 (de) 1979-12-13
DE2241257A1 (de) 1973-03-08
FR2151425A5 (da) 1973-04-13
DK145049C (da) 1983-01-10
IT963416B (it) 1974-01-10
GB1343375A (en) 1974-01-10
NL7211220A (da) 1973-02-27
CA960782A (en) 1975-01-07
SE380373B (sv) 1975-11-03
FI61363B (fi) 1982-03-31
FI61363C (fi) 1982-07-12

Similar Documents

Publication Publication Date Title
DK145049B (da) Databehandlingsanlaeg med et faelled hovedlager og et antal behandlingsenheder med bufferlager
US4471429A (en) Apparatus for cache clearing
US5379424A (en) Distributed database management system for retrieving data files from databases selected based upon retrieval time
US4445174A (en) Multiprocessing system including a shared cache
US5490253A (en) Multiprocessor system using odd/even data buses with a timeshared address bus
US5426750A (en) Translation lookaside buffer apparatus and method with input/output entries, page table entries and page table pointers
US3569938A (en) Storage manager
US4410944A (en) Apparatus and method for maintaining cache memory integrity in a shared memory environment
JP2547424B2 (ja) デジタルデータ処理システム
TW475117B (en) Method of shared intervention for cache lines in the recently read state for SMP bus
JPH07506921A (ja) コンピュータ・システムにおける主記憶装置のアクセス時間とキャッシュ・メモリのサイズを最小限にするためのキャッシュへの先取り
JPS624745B2 (da)
US4290103A (en) System and method for achieving buffer memory coincidence in a multiprocessor system
WO1983001323A1 (en) Cache memory using a lowest priority replacement circuit
SE445269B (sv) Dator med indexerat lokalt direktminne
GB1313528A (en) Two-level storage system
EP0303661A1 (en) CENTRAL UNIT FOR DIGITAL DATA PROCESSING SYSTEM, WITH WRITING BUFFER MANAGEMENT TECHNOLOGY.
US6366978B1 (en) Cache memory
EP0303648A1 (en) CENTRAL PROCESSOR UNIT FOR DIGITAL DATA PROCESSING ARRANGEMENT WITH CACHE MEMORY MANAGEMENT DEVICE.
US5206941A (en) Fast store-through cache memory
US5119484A (en) Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction
US4695951A (en) Computer hierarchy control
US4774687A (en) Advanced store-in system for a hierarchy memory device
US3525985A (en) Data handling arrangements
JPH04336641A (ja) 処理システムにおける使用のためのデータキャッシュおよび方法

Legal Events

Date Code Title Description
PBP Patent lapsed