DK164420B - Multiprocessordatamatsystem - Google Patents

Multiprocessordatamatsystem Download PDF

Info

Publication number
DK164420B
DK164420B DK220883A DK220883A DK164420B DK 164420 B DK164420 B DK 164420B DK 220883 A DK220883 A DK 220883A DK 220883 A DK220883 A DK 220883A DK 164420 B DK164420 B DK 164420B
Authority
DK
Denmark
Prior art keywords
storage
data
central unit
connection
bus
Prior art date
Application number
DK220883A
Other languages
English (en)
Other versions
DK220883A (da
DK164420C (da
DK220883D0 (da
Inventor
Asbjoern Smitt
Original Assignee
Rovsing As Christian
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 Rovsing As Christian filed Critical Rovsing As Christian
Priority to DK220883A priority Critical patent/DK164420C/da
Publication of DK220883A publication Critical patent/DK220883A/da
Publication of DK220883D0 publication Critical patent/DK220883D0/da
Publication of DK164420B publication Critical patent/DK164420B/da
Application granted granted Critical
Publication of DK164420C publication Critical patent/DK164420C/da

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2017Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where memory access, memory control or I/O control functionality is redundant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • G06F15/17343Direct connection machines, e.g. completely connected computers, point to point communication networks wherein the interconnection is dynamically configurable, e.g. having loosely coupled nearest neighbor architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F15/177Initialisation or configuration control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1443Transmit or communication errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2005Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2035Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)

Description

i
DK 164420 B
Baggrund for opfindelsen
Opfindelsen vedrører et multiprocessordatamatsystem, specielt til on-line transaktions- og kommunikations-orienteret behandling af store datamængder, specielt 5 hvor kravet om mange behandlingsprocesser indebærer et behov for såvel en stor tilslutningskapacitet, en stor behandlingskapacitet som udvidelsesmuligheder.
Der er behov for sådanne systemer til on-line behandling 10 af store datamængder med store transaktionshastigheder.
Et anvendelsesområde kan være et automatisk kreditkort-system eller et anlæg til behandling af telekommunikationsdata, hvor der ankommer meget store datamængder meget hurtigt til systemet, hvor data skal sorteres, 15 forbehandles, registreres, behandles med videre.
I forbindelse med disse krav til databehandlingene er det nødvendigt, at systemet opfylder specielle krav med hensyn til fejltolerance.
Det har i nogen tid været kendt, at en første forudsæt-20 ning for fejltolerant drift er, at et flertal af centralenhedmoduler skal arbejde i forening på databehandlingsopgaven, således at databehandlingen, som skulle foregå på et fejlramt modul, midlertidigt kan overtages af et andet modul. Den kendte måde til sammenkobling af 25 flere moduler har nogle ulemper.
Ved en første kendt teknik er et antal, sædvanligvis to generelle datamater fælles om et lager. Dette kendte fælles lager har den ulempe, at hele systemet bryder sammen i tilfælde af fejl i lageret, og at det er 2
DK 164420 B
vanskeligt at administrere, hvorledes de generelle datamater skal skiftes til at have adgang til lageret.
Ved en anden kendt teknik er et flertal af minidatamater indbyrdes forbundet via deres indgangs/udgangskanaler.
5 Dette medfører en relativt langsom datatransport, dvs.
en lille transmissionsbåndbredde samt et relativt omfattende materiel til indbyrdes forbindelse af minidatamaterne, som oprindeligt ikke er beregnet på en sådan sammenkobling.
10 Det kendte materiel løser derfor ikke problemet tilstrækkeligt godt, og de tilhørende operativsystemer kan heller ikke udformes tilfredsstillende.
Ved en anden kendt teknik er et flertal af behandlings-moduler indbyrdes forbundet ved hjælp af forbindelses-15 busser, som hver er styret af en speciel busstyreenhed, med henblik på at opnå et multiprocessorsystem. Hvert af de kendte behandlingsmoduler har en centralenhed med adgang til et lager, der er operativt forbundet til en indgangs/udgangskanal. En ydre styreenhed kan 20 forbindes til indgangs/udgangskanalerne for flere behand lingsmoduler.
I det amerikanske patentskrift nr. 4 228 496 angives et multiprocessordatamatsystem med et antal central-enhedssystemer, der hver omfatter mindst én centralen-25 hed til at behandle data i afhængighed af instruktioner og er indrettet til at kunne frembringe adresseinformation, lagerorganer til lagring af data, organer til at overføre data mellem i det mindste en centralenhed og nævnte lagerorganer, ydre styreenheder til datamat-30 systemets eksterne datakommunikation, og omfattende et lagerkommunikationsnetværk for centralenhedssystemets eksterne dataoverførsel. Centralenhederne er beliggende 3
DK 164420 B
inden for et processormodul og har adgang til et lager, der er operativt forbundet til en indgangs/udgangs-ka-nal. En styreenhed kan forbindes til indgangs/udgangs-kanalerne for adskillige processormoduler. Det i US 5 4 228 496 angivne system omfatter lagre, hvor et lager alene er styret af en centralenhed, mens de andre lagre alene er styret af en anden centralenhed. Lagrene er forbundet til styreenheder på en måde, så begge lagrene er forbundet med styreenheden, men disse forbindelser 10 er fysiske, da hver styreenhed kun kan være logisk for bundet til en enkel centralenhed ad gangen. Hvis der optræder fejl i dette kendte system, vil alle data indeholdt i et lager mistes, og dette gælder for alle styreenheder, der er logisk forbundet med dette lager.
13 Den sidstnævnte kendte teknik har også nogle af de oven nævnte ulemper. For det første er antallet af behandlingsenheder, som kan forbindes til forbindelsesbusserne, som deles af behandlingsmodulerne, begrænset som følge af forbindelsesbussernes begrænsede båndbredde, hvil-20 ket kun kan afhjælpes ved at forsyne systemet med et så omfattende materiel, som vil medføre en dårlig udnyttelse af udstyret, og endvidere vil overføringskapaciteten blive reduceret, idet styringen af det omfattende materiel tager relativ lang tid. Endvidere er systemets 25 forbindelseskapacitet, dvs. systemets evne til at kunne forbindes til et stort antal hurtige datakilder, reduceret, fordi indgangs/udgangskanalerne skal deles med centralenhederne om lageret, hvilket endvidere reducerer systemets behandlingskapacitet, som yderligere er redu-30 ceret ved at centralenhederne skal deltage i dataover førslen mellem lageret og de busforbindelser, som forbinder modulerne indbyrdes. Selv om dette kendte system udviser nogen fejltolerance, har det dog den ulempe, at en fejl i en ydre styreenhed medfører inhibering 35 af de tilhørende ydre enheder. Dette er specielt en 4
DK 164420 B
ulempe ved systemer af den aktuelle art, hvor de ydre enheder udgør en væsentlig del af hele systemet, når det er beregnet på at håndtere meget store datamængder.
Sammenfattende kan det siges, at ulemperne ved den kend-5 te teknik har vist sig i takt med, at der stilles større krav til forbindelses- og behandlingskapaciteten, fordi den fejltolerante drift som nævnt tager* som forudsætning, at der eksisterer et samspil mellem et flertal af behandlingsmoduler. Ved den kendte teknik har for-10 søgene på at opnå en fejltolerant drift været gjort på bekostning af forbindelses- og behandlingskapaciteten, hvorfor udvidelsesmuligheder har været næsten ukendt. Med udvidelsesmuligheder menes, at antallet af centralenheder kan forøges til et stort antal, som hidtil har 15 været ukendt og umuligt på grund af de båndbreddebe grænsninger, som eksisterer for de kendte indbyrdes forbindelser af systemer med mange centralenheder.
Formålet med opfindelsen er at angive et multiprocessor-datamatsystem, som både er fejltolerant og samtidig 20 tillader en i forhold til den kendte teknik væsentlig forøgelse af forbindelseskapaciteten, behandlingskapaciteten og udvidelseskapaciteten, hvor de nævnte kapaciteter kan udvides hver for sig uden at indebære en nævneværdig reduktion af en anden af de nævnte kapaciteter.
25 Et andet formål med opfindelsen er at angive en fejltolerant indgangs/udgangsstruktur for særskilt forbedring af forbindelseskapaciteten.
Et yderligere formål med opfindelsen er at angive et centralenhedsmodul for særskilt forbedring af behand-30 lingskapaciteten i fejltolerante systemer.
Endelig er det et formål med opfindelsen at angive et fejltolerant kommunikationsnetværk for indbyrdes lager- forbindelse med henblik på en forøget udvidelseskapaci tet .
5
DK 164420 B
Oversigt over opfindelsen 5 Multiprocessordatamatsystemet ifølge opfindelsen omfatter et flertal af centralenhedssystemer, der er indbyrdes forbundet via et lagerforbindelsesnetværk. Opfindelsens formål opnås med et multiprocessordatamat -system som angivet i krav 1, hvilket system ifølge op-10 findelsen er ejendommeligt ved det i kravets kendeteg nende del angivne.
Systemet ifølge opfindelsen er hensigtsmæssigt ved, at ikke alle data indeholdt i et lager tabes ved systemfejl. Til forskel fra kendt teknik, er systemet 15 ifølge opfindelsen udformet, så sådanne datatab ikke kan finde sted, da data opbevares i respektive lager-kamre, hvorfra de kan hentes af et centralenhedssystem, hvis et andet centralenhedssystem fejler. Herfra vil det være klart, at der ved tilfælde af lagerfejl i et 20 system ifølge kendt teknik, vil denne fejl påvirke alle de logisk tilkoblede styreenheder, mens en sådan fejl i systemet ifølge opfindelsen kun vil påvirke den enkelte styreenhed, der er forbundet til kammeret, hvor fejlen optræder.
25 Multiprocessordatamatsystemet ifølge opfindelsen omfat ter et flertal af centralenhedssystemer, der er indbyrdes forbundne via et lagerforbindelsesnetværk.
Et centralenhedssystem ifølge opfindelsen kan beskrives som værende struktureret omkring en kerne, som inde-30 holder en speciel busstruktur, en speciel lagerfordeling og specielle direkte lageradgangsorganer, hvilken kerne er udformet således, at den under multiprocesdrift kan 6
DK 164420 B
samarbejde med tre satellitsystemer, hvis hovedfunktioner er i hovedsagen indbyrdes uafhængige. Disse satelit-systemer omfatter et antal ydre styreorganer, et antal centralenheder og et antal kommunikationsforbindelser 5 mellem centraenhedssystemernes lager indbyrdes, hvilke forbindelser betegnes lager forbindelsesnetværket.
Behandlingskapaciteten vokser ikke lineært med antallet af centralenheder på grund af trafikproblemer på bussen, men behandlingskapaciteten kan forøges væsent-10 ligt som senere beskrevet, når antallet af centralenheder forøges.
Lageret i et centralenhedssystem er ifølge opfindelsen opdelt i flere dele, hvoraf i det mindste en del er fælles for to eller flere centralenhedssystemer, hvil-15 ket specielt har relation til den fejltolerante funktion.
Det er et afgørende træk, at de fælles lagerdele eller andre lagerdele er direkte adresserbare fra en eller flere ydre styreenheder, hvorved forbindelseskapaciteten forøges.
20 Forbindelsesudvidelsen er opnået ved hjælp af et lagerfor bindelsesnetværk med udstrakte forgreningsmuligheder til en kombination af andre centralenhedssystemer, således at der opnås en stor båndbredde mellem central-enhedssystemerne indbyrdes.
25 De mange forbindelsesmuligheder, som opnås med lagerforbindelsesnetværket, kan kun udnyttes maximalt, hvis de adressefrembringende organer, såsom centralenheder, ydre styreenheder og direkte lageradgangsorganer, er forbundet således til lagerbusorganerne, at dataover-30 førsler inden for den tidligere nævnte kerne kan foregå så uafhængigt af hinanden som muligt.
Udvidelse af multiprocessordatamatsystemet ifølge op- 7
DK 164420 B
findelsen vil ikke medføre de kendte båndbreddeproblemer, fordi de indbyrdes lager forbindelser, som udgør lagerforbindelsesnetværket, ikke behøver at være tilsluttet til alle centralenhedssystemerne men kan være grupperet 5 med forskelligt omfang i overensstemmelse med det faktiske båndbreddebehov.
En vigtig del i multiprocessordatamatsystemet ifølge opfindelsen er konfigurationsstyreorganer, det er indrettet til at overvåge hele systemet. En af konfigurations-10 styreorganernes opgaver er at tildele lagerfraktioner enten til et centralenhedssystem eller til deling mellem flere centralenhedssystemer.
Konfigurationsstyreorganerne kan være indeholdt i central-enhedssystemet og kan være tilsluttet lagerforbindelses-15 netværket, men kan også være adskilt fra lagerforbindelsesnetværket og lagerbusorganerne.
En anden funktion hos konfigurationsstyreorganerne er at overvåge spænding, strøm og temperaturforhold i systemets trykte kredsløbskortgrupper og bl.a. i afhængig-20 hed heraf aktivere og deaktivere dataoverførsler til lagerforbindelsesnetværket og alle eller en brøkdel af lagerbusorganerne i et eller flere af centralenheds-systemerne. Overvågningen af multiprocessordatamatsystemet er specielt vigtig, når forudsætningerne for fejl-25 tolerant drift bliver marginale, da dette vil føre til en forøget fejlhyppighed i systemets moduler. Som en yderligere sikkerhedskontrol findes der hjælpstyreorga-ner til beskyttelse af systemet imod fejl konfigurationsstyreorganerne . 1
For yderligere at beskytte multiprocessordatamatsystemet ifølge opfindelsen er i det mindste konfigurationsstyreorganerne og de operativ omflyttelige dele af lageret, 8
DK 164420 B
som er styret af konfigurationsstyreorganerne, effekt-forsynet via et kombinationskredsløb fra i det mindste to særskilte strømforsyninger.
Som tidligere nævnt findes der styreorganer for direkte 5 lageradgang, der initieres af en centralenhed til over flytning af dataord fra en del af centralenhedssystemets lager til en anden del af centralenhedssystemets lager.
Det skal bemærkes, at bortset fra nogle få priviligerede instruktioner effektueres alle datatransporter via lager-10 kortorganer, der er indrettet til at overvåge og spore alle dataoverførsler i et centralenhedssystem.
Ifølge opfindelsen findes der direkte lageradgangsstyre-organer til overføring af en strøm af data via lagerforbindelsesnetværket mellem lagre i to specificerede cen-15 tralenhedssystemer, hvor det ene af de specificerede centralenhedssystemer har en sendepuffer, der er oprettet alene af hensyn til denne datastrøm, medens det andet af de specificerede centralenhedssystemer har en modtagepuffer, der er oprettet alene for denne data-20 strøm.
Ifølge opfindelsen er de nævnte puffere oprettet i forbindelse med en såkaldt strømbeskriver, der definerer et frit lagerområde, som er tildelt udelukkende denne strømbeskriver, hvor strømbeskriveren slettes, når en 25 ønsket dataoverførsel er afsluttet, hvorved den nævnte lagerplads, som var forbeholdt strømbeskriveren, frigives. Strømbeskriveren oprettes ved hjælp af specielle midler i et styreorgan for direkte lageradgang omfattende midler til modtagelse af en forespørgsel for op-30 rettelse af en strømbeskriver, afbrydeorganer til af brydelse af en centralenhed samt et styrelager, som alene vedfører styreorganet for direkte lageradgang.
9
DK 164420 B
Styreorganerne for direkte lageradgang omfatter endvidere fartstyreorganer til styring af overførselshastigheden for hver datastrøm, som går ind i lagerforbindelsesnetværket fra de puffere i lageret, der er 5 specificeret som kilde, således at der sikres en speci ficeret datahastighed for datastrømmene uafhængigt af hinanden og uafhængigt af en centralenhed.
Ifølge et yderligere træk ved opfindelsen omfatter et centralenhedssystem i det mindste en gruppe af ydre 10 styreenheder, der er indrettet til alene at kunne adres sere en respektiv afdeling af lagerorganerne, hvilke afdelinger er særskilt og operativt forbundet med la-gerbusorganerne. Bortset fra en enkelt er de ydre styre-enheder normalt forbundet til respektive ydre enheder 15 via respektive omskiftermoduler, hvor nævnte undtagede ydre styreenhed er en hjælpeenhed, som kan overtage arbejdet for en fejlramt ydre behandlingsenhed, hvilket betegnes som N + 1 redundans.
De nævnte organer til reducering af trafikproblemer 20 på en bus, som er forbundet til et lager og er fælles for et flertal af centralenheder i et centralenhedssystem, omfatter et cachelager, der er indrettet til at forhindre, at en centralenhed med et sådant cachelager søger adgang i en lagerlokation i lageret, hvis der 25 allerede findes en kopi af den tilsvarende lagerlokation i cachelageret.
Den specielle busstruktur i centralenhedssystemet omfatter ifølge opfindelsen tre dataveje, hvor lagerbusorganer operativt forbinder centralenheder langs en første 3D vej og operativt forbinder adressefrembringende kilder, bortset fra centralenhederne, langs en anden vej med en første del af lageret, samt operativt forbinder centralenhederne og de andre adressefrembringende organer
DK 164420B
10 via den første og den anden samt en tredie vej med den øvrige del af lageret. Den første og anden vej medfører, at centralenhederne og nævnte adressefrembringende organer kan få adgang til den første del af lageret uden 5 indbyrdes trafikstrid og medføre en formindsket strid, når der skal skabes adgang til den anden del af lageret.
Ifølge opfindelsen findes der forbindelsestilpasningsenheder til forbindelse af centralenhedssystemet og lagerforbindelsesnetværket, hvilke tilpasningsenheder 10 er indrettet til automatisk at fordele brugen af en respektiv lagerforbindelse, når de tilhørende sende-puffere er fyldte. Endvidere er styreorganerne for direkte lageradgang, som samarbejder med tilpasningsenhederne, indrettet til automatisk at fylde tomme sendepuf-15 fere i tilpasningsenhederne. Derved kan der opnås data overførsel mellem centralenhedssystemer via lagerforbindelsesnetværket uden deltagelse af centralenheder.
Andre formål med opfindelsen vil fremgår af deniiifølgende beskrivelse og af patentkravene, og opfindelsen vil 20 blive nærmere forklaret under henvisning til tegningen, der viser foretrukne udførelsesformer for opfindelsen, som bedst beskriver virkemåden. Inden for de ved patent-kravene definerede rammer for opfindelsen kan der tænkes modificerede eller ækvivalente udførelsesformer.
25 Oversigt over tegningen fig. 1 viser et blokdiagram af en udførelsesform for multiprocessordatamatsystemet ifølge opfindelsen, hvor der kan ses et flertal af centralenhedsssystemer, der er indbyrdes forbundne ved hjælp af et lagerforbindel-30 sesnetværk, fig. 2 viser et blokdiagram over detaljer af et central- 11
DK 164420 B
enhedssystem fra fig. 1, fig. 3 viser en del af muItiprocessordatamatsystemet, nærmere betegnet en udførelsesform for en strukturering af lagerforbindelsesnetværket ifølge opfindelsen, 5 fig. 4 svarer til fig. 3, idet der er vist en anden udførelsesform for lager forbindelsesnet værket ifølge opfindelsen, fig. 5 viser et blokdiagram af en udførelsesform for et centralenhedssystem ifølge opfindelsen, 10 fig. 6 er en graf, som viser forbedringen af behand lingskapacitet i et behandlingsmodul, som omfatter et cachememory som vist på fig. 5, fig. 7 er en tabel, som illustrerer princippet for cache-lageret, 13 fig. 8 viser et detaljeret blokdiagram til forklaring af virkemåden for cachelageret fra fig. 5, fig. 9 viser et koblingsdiagram med forbindelser mellem en enkelt lagerforbindelse og et flertal af forbindelsestilpasningsenheder, 20 fig. 10 viser et blokdiagram af detajler ved de på fig.
9 viste tilpasningsenheder, fig. 11 viser et blokdiagram af et transmissionstids-kredsløb, som er indeholdt i den på fig. 10 viste sendestyreenhed, samt viser en tabel, som findes i trans-25 missionstidskredsløbet, og som har relation til forstå elsen af arbitreringsorganerne ifølge opfindelsen, 12
DK 164420 B
fig. 12 viser et detaljeret blokdiagram af en tilpasningsstyreenhed for direkte lageradgang, jfr. fig. 2, og hvor der er vist et styrelager og en afbrydestyreenhed for oprettelse af en strømbeskriver ifølge opfin-5 delsen, fig. 13 angiver det foretrukne format for data og signalblokke, som transmitteres via lagerforbindelsesnetværket , fig. 14 viser, hvorledes styrelageret fra fig. 12 er 10 nærmere indrettet til forklaring dels af oprettelsen af en strømbeskriver og dels af yderligere styrefunktioner for accelerering af dataoverførsler til effektiv udnyttelse af det vidtstrakte lagerforbindelsesnetværk ifølge opfindelsen, 15 fig. 15 viser en skitse til forståelse af en datastrøm med relation til fig. 14, fig. 16 er et diagram, som viser, hvorledes lagerkort (MAP) oversætter et adressefrembringende organs 128 K ords store logiske adresserum til et 16 M ords adres-20 serum i en centralenheds fysiske lager, fig. 17 viser et funktionsdiagram over brugen af det segmentopdelte lager (RAM), som muliggør, at hvert adres-sefrembringende organ i et centralenhedssystem har et privat par af segmenter og et MAP oversættelseslager, 25 der definerer oversættelsen fra et logisk adresserum til et fysisk adresserum, fig. 18 viser et blokdiagram over forskellige veje for priviligeret læse/skrive opsættelse af MAP lageret, og viser styrelager og styrestatusregistre i central-30 enhedssystemet uden MAP oversættelse af adresserne,
DK 164420B
13 fig. 19 viser et blokdiagram over forskellige lager-kortdataoverførsler inden for centralenhederne, fig. 20 viser et detaljeret blokdiagram over virkemåden for MAP lageret, en afbrydeforbehandlingsenhed og en 5 intern styreenhed for direkte lageradgang, fig. 21 viser et blokdiagram over en brøkdel af lageret, som er fælles for to centralenhedssystemer, og som er opdelt i kamre for respektive ydre styreenheder, som er indrettet til N + 1 redundans, 10 fig. 22 viser et blokdiagram over nærmere detaljer ved et lagerkammer fra fig. 21 samt komponenter i forbindelse med dette kammer, fig. 23 viser et blokdiagram over en udførelsesform for konfigurationsstyreorganerne ifølge opfindelsen, 15 som er forbundet til et flertal af konfigurationstilpasningsenheder, medens fig. 24 viser et blokdiagram over et koblingsskema for den på fig. 23 viste konfigurationstilpasningsenhed.
Multiprocessordatamatsystemet 20 Fig. 1 viser en udførelsesform for multiprocessordatamatsystemet ifølge opfindelsen. Figuren viser et flertal af særskilte centralenhedssystemer, som er nummeret fra 1 til N, og som er indbyrdes forbundne via det skematisk viste lagerforbindelsesnetværk, idet busorganerne 25 i hvert centralenhedssystem er forbundet til lagerforbindelsesnetværket via forbindelsestilpasningsenheder og har styreorganer for direkte lageradgang, hvilket vil blive forklaret i detaljer i det efterfølgende.
14
DK 164420 B
På fig. 2 er vist en mere detaljeret struktur for et centralenhedssystem, men under henvisning til fig. 1 vil der først blive forklaret nogle hovedtræk for systemet. Et væsentligt træk er, at hvert centralenhedssystems 5 lager er opdelt i fraktioner, hvoraf i det mindste nogle er fælles for to eller flere centralenhedssystemer.
Dette er på fig. 1 vist for lagerets 5 vedkommende, som ved hjælp af senere beskrevne organer kan forbindes operativt til de to centralenhedssystemer, hvis stip-10 lede indramninger begge omfatter lageret 5. Lageret 5 har tre porte, hvor den tredie port er forbundet til en ydre styreenhed 15, som styrer en direkte forbindelse mellem et stort antal kommunikationslinier og lageret 5. Kommunikationsdata kan derfor indføres direkte i 15 lageret 5, hvorfra de er tilgængelige fra det ene eller fra det andet af centralenhedssystemerne afhængigt af de respektive belastninger. Det ene af systemerne kan overtage datatransporten fuldstændigt i tilfælde af, at der opstår fejl i det andet system. Disse datatrans-20 porter foregår uden at belaste centralenhederne i et centralenhedssystem, men det mest bemærkelsesværdige er, at systemet ifølge opfindelsen tilalder data, som er indført i lageret 5, at blive overført via lagerforbindelsesnetværket til en lager fraktion i et andet 25 centralenhedssystem, uden at de respektive centralen heder belastes af dataoverførslen. Data kan let udlæses fra den sidstnævnte lagerfraktion, hvis denne også er direkte forbundet til en ydre styreenhed, Antallet af ydre styreenheder kan være stort, og da data kan overføres 30 uden indblanding af centralenhederne, kan informations- tætheden på buslinierne blive så stor, at båndbredde-kravet til lagerforbindelsesnetværket ikke kan imøde- · kommes med kendte konstruktioner, når multiprocessor-datamatsystemet udvides til et omfang, som der allerede 35 er behov for i vore dage. Et andet væsentligt træk ved opfindelsen vedfører derfor lagerforbindelsesnetværkets 15
DK 164420 B
konstruktion, således at systemet kan udvides til at imødekomme ethvert behov. Denne udvidelsesmulighed vil fremgå af beskrivelsen nedenfor i forbindelse med fig.
3 og 4, som viser udførelsesformer for lagerforbindelses-5 netværket.
Fig. 2 viser i detaljer et eksempel på en struktur for et centralenhedssystem. Det er ovenfor forklaret, hvorledes systemet ifølge opfindelsen kan håndtere transport af meget store datamængde, hvilket indebærer, at central-10 enhedssystemets centralenheder skal kunne håndtere data meget hurtigt. Til dette formål omfatter centralenheds-systemet et flertal, f.eks. fem centralenheder 1, som via en P-bus 6 har direkte adgang til en fraktion 2 af lageret i centralenhedssystemet. Centralenhederne 15 1 har derfor direkte adgang til lageret 2 uafhængigt af trafikken på en C-bus 7 og en lagerudvidelsesbus 8, og for yderligere at forbedre centralenhedernes effektivitet, er de hver forsynet med et cachelager, som reducerer centralenhedernes behov for at komme i for-20 bindelse med lageret 2 væsentligt.
Af fig. 2 fremgår den tidligere forklarede opdeling af lageret i et centralenhedssystem. Foruden lageret 2, som normalt kun udgør en lille brøkdel af centralenhedssystemets totale lager, findes der andre lagre 25 3, 4 og 5, hvor lageret 5 med tilhørende ydre styreen hed 13 kan sammenlignes med fig. 10. Lageret 4 er også direkte forbundet til en ydre styreenhed, som f.eks. kan betjene en skriver, medens lageret 3 alene tjener til at forøge den totale lagerkapacitet. En styreenhed 30 13 for direkte lageradgang har til formål at styre data transporten mellem de nævnte fraktioner, og det bemærkes, at i det mindste lagerfraktionen 2 er dobbeltportet, således at data kan overføres mellem lagerfraktionen 2 og f.eks. lagerfraktionen 5 uden at forstyrre central- 16
DK 164420 B
enhederne. Henvisningstallene 9, 10, 11 repræsenterer busdrivkredsløb, som adskiller busserne, 6, 7 og 8 i afhængighed af behovet for løbende ændringer i busforbindelserne. Separatorerne 9, 10 og 11 kan styres på 5 i og for sig kendt måde og vil derfor ikke blive nærmere forklaret. Det skal imidlertid bemærkes, at bortset fra nogle få priviligerede instruktioner vil alle datatransporter via busserne 6, 7 og 8 foregå via et lager-kortmodul 12, som overvåger alle datatransporter i cen-10 tralenhedssystemet. Mange af datatransporterne er af brydestyret, hvilket forbehandles i en afbrydeforbehandlingsenhed 14, der ligesom de andre nævnte komponenter vil blive forklaret senere.
C-bus 7 kan i princippet også være forbundet til ydre 15 enheder, f.eks. via styreenheden 16, men tjener for trinsvis som et lagerbusorgan for direkte datakommunikation mellem en lagerfraktion i et centralenhedssystem og en lagerfraktion i et andet centralenhedssystem via de på fig. 2 viste lagerforbindelser, hvor alle lager-20 forbindelserne i multiprocessordatamatsystemet ifølge opfindelsen tilsammen udgør et lagerforbindelsesnetværk, der er vist skematisk på fig. 1. Forbindelsen mellem bussen 7 og lagerforbindelserne er tilvejebragt via et flertal af styreorganer for direkte lageradgang, 25 hvor der på fig. 2 er vist to styreorganer 17 og 18.
Som vist på figuren er hvert styreorgan forbundet med et flertal af tilpasningsenheder, hvor tilpasningsenhederne 19 og 20 er vist i forbindelse med styreenheden 17, og tilpasningsenhederne 19 og 20 er vist med forbin-30 delsertil deres respektive lagerforbindelser 21 og 22.
Ved en foretrukken udførelsesform er C-bussen 7 forbundet til i alt fire styreenheder af typen 17, 18, som hver er forbundet til op til 32 tilpasningsenheder af typen 19, 20. Af hensyn til overskueligheden er lager-35 forbindelsen hørende til styreenheden 17 grupperet (A) 17
DK 164420 B
ved hjælp af symboler A og B på fig. 1, hvilket imidlertid ikke skal opfattes som en begrænsning af mulighederne ifølge opfindelsen, idet nogle af forbindelserne i gruppe A kan have forbindelse til en første kombina-5 tion af andre centralenhedssystemer, medens andre for bindelser i gruppen A kan have forbindelse til en anden kombination af andre centralenhedssystemer. På fig.
3 og 4 vil der blive vist nogle konkrete eksempler på lager forbindelsesnetværk.
10 På fig. 3 er der skematisk vist ni centralenhedssystemer fra et multiprocessordatamatsystem, som kan udvides yderligere i overensstemmelse med den på fig. 3 viste struktur. Centralenhedssystemer er arrangeret i rækker henholdsvis N, P og R, som hovedsageligt er forbundet 15 til respektive lagerforbindelsesgrupper NL, PL og RL.
Dette skal forstås således, så sidstnævnte lagerforbindelsesgrupper betjener en overvejende del af forbindelsestilpasningsenhederne i de respektive rækker af centralenhedsystemet. De øvrige, relativt få forbindel-20 sestilpasningsenheder er afset til lagerforbindelses kommunikation, som foregår lodret på fig. 3.
Den på fig. 3 skematisk viste konfiguration for lagerforbindelsesnetværket er specielt anvendeligt til behandling af store datamængder og kan opdeles i relativt 25 veldefinerede databehandlingssektioner. Det vil f.eks.
kunne forstås, at der kan foregå en omfattende databehandling i rækken N i forbindelse med brugen af lagerforbindelsesgruppen NL til frembringelse af mellemresultater, hvis omfang er væsentligt mindre end omfanget 30 af de oprindeligt behandlede data, således at mellem resultaterne let kan overføres fra N-rækken til P-ræk-ken af centralenhedssystemerne via de lodrette lager-forbindelser, som yder en relativ lille båndbredde. Mellemresultaterne kan herefter give anledning til en 18
DK 164420 B
udstrakt, ny type databehandling i P-rækken af central-enhedssystemer ved udstrakt anvendelse af lagerforbindelsesgruppe PL. Den beskrevne sekvens kan fortsætte til R-rækken og videre igen, hvis det er nødvendigt.
5 Det på fig. 3 viste lagerforbindelsesnetværk ifølge opfindelsen har helt åbenbare fordele i forhold til den kendte teknik, hvor alle centralenhedssystemer er forbundet til en eller flere fælles kommunikationsbusser, som således er fælles for det totale system. Bånd-10 breddeproblemerne på en sådan kommunikåtionsbus ville være uoverstigelige, hvilket problem er løst ved opfindelsen, f.eks. som vist på fig. 3, hvor multiproces-sordatamatsystemet kan udvides til et omfang, som ikke er båndbreddebegrænset.
15 Det på fig. 3 viste lagerforbindelsesnetværk er fejltolerant. Hvis f.eks. centralenhedssystem nr. N + 1 skulle svigte, kan dets arbejde midlertidigt overtages af centralenhedssystem nr. N + 2, fordi det sidstnævnte system har adgang til en dublet af brugerprogrammerne 20 i det fejlramte centralenhedssystem via det tidligere beskrevne lagersystem, hvilke programmer delvis.kan være fælles for adskillige af centralenhedssystemerne i N-rækken.
På fig. 4 er der skematisk vist en anden udførelsesform 25 for lagerforbindelsesnetværket ifølge opfindelsen, hvor centralenhedssystemerne er symboliseret på samme måde som på fig. 3. Hvert centralenhedssystem er kun forbundet for direkte kommunikation med et hosliggende centralenhedssystem. Lagerforbindelsesnetværket forbinder f.eks.
30 centralenhedssystem nr. P + 1 direkte med centralenheds- system nr. P, R + 1, P + 2 og N + 1 via grupper af lagerforbindelser henholdsvis AL, BL, CL og DL, som vil være tilstrækkelig ved nogle anvendelser. Det kan på 19
DK 164420 B
forhånd forudsiges, hvor udstrakt datakommunikationen vil være mellem centralenhedssystemerne parvis, således at lagerforbindelsernes båndbredde kan indrettes i over-enstemmelse med kravene. Hvis det f.eks. antages, at 5 datatransporten mellem P og P + 1 er dobbelt så stor som datatransporten melelm P + 1 og N + 1, kan båndbredden for AL indrettes til at være dobbelt så stor som båndbredden for DL, hvilket betyder, at lagerforbindelsesgruppen AL indeholder dobbelt så mange kommunika-10 tionsforbindelser som forbindelsesgruppen DL. Central- enhedssystemet P + 1 kan have dobbelt så mange forbindelsestilpasningsenheder forbundet til AL i forhold til antallet af forbindelsestilpasningsenheder, der er forbundet til DL. Det på fig. 4 viste eksempel il-15 lustrerer, hvorledes hvert centralenhedssystem kan være direkte forbundet til fire andre centralenhedssystemer under maximal udnyttelse af lagerforbindelsesnetværket. Netværket kan udvides på alle tænkelige måder, f.eks. ved at udvide det i en yderligere dimension i 20 forhold til de to viste dimensioner.
Fejltolerancen for det på fig. 4 viste lagerforbindelses-netværk er ikke så åbenbar, som forklaret i forbindelse med netværket fra fig. 3. En beregning af fejlsandsynligheden kan imidlertid ofte afsløre, hvad båndbredde-25 kravene vil være til lagerforbindelsesnetværket under fejlfri drift. Der kan derfor tænkes et multiprocessor-datamatsystem med den på fig. 4 viste grundstruktur, som har en mget stor totalbåndbredde, kombineret med en estimeret, fejloperationsoptimeret understruktur 30 af lagerforbindelser med en væsentligt lavere totalbåndbredde. Det samlede billede af lagerforbindelsesnetvær-ket kunne f.eks. fremkomme ved at anbringe den på fig.
3 viste struktur oven på den på fig. 4 viste struktur.
20
DK 164420 B
Det er i det foregående forklaret, hvorledes totalstrukturen for et multiprocessordatamatsystem ifølge opfindelsen kan imødekomme fremtidens krav om en meget hurtig og fejltolerant databehandling af stadigt voksende data-5 mængder. Andre komponenter i systemet, som ligeledes medvirker til systemets kapacitet, vil blive forklaret i det følgende.
Multiprocessormodulet
Det på fig. 2 viste centralenhedssystem omfatter et 10 multiprocessormodul som vist på fig. 5.
Hovedformålet med det på fig. 5 viste multiprocessormodul er at tillade centralenheder 201 at dele brugen af P-bussen 204 med hensyn til adgangen til central-enhedssystemets lager 203, 206.
15 Ifølge opfindelsen er det et vigtigt træk, at centralenhederne 201 har cachelager 202, således at en centralenheds 201 adgang til at læse indholdet i en lokation i lageret 203 via P-bussen 204 spærres, hvis indholdet af denne lagerlokation allerede forefindes i det til-20 hørende cachelager 202.
Da den begrænsende faktor for det maksimalt udførte antal instruktioner pr. sekund i multiprocessormodulet er trafikstrid på P-bussen 204, vil reduktionen af nødvendig trafik på P-bussen 204 som følge af cachelagrene 25 202 medføre en væsentlig forbedring af multiprocessor- modulets behandlingskapacitet.
På fig. 6 er vist, hvilken forbedring, der opnås i totalbehandlingskapacitet ved at benytte centralenheder 201, som hver har cachelager 202, i forhold til centralenhe-30 derne 201 uden et cachelager, som funktion af antallet 21
DK 164420 B
af centralenheder 201 i multiprocessormodulet, idet behandlingskapaciteten er jævnført med, dvs. målt i enheder i overensstemmelse med behandlingskapaciteten for et multiprocessormodul, som kun indeholder en enkeltcen-5 tralenhed uden cachelager og derfor ikke udviser tra fikstrid på P-bussen 204. Det vil kunne ses af fig.
6, at der med en centralenhed 201 med cachelager 202 opnås en lille forbedring i behandlingskapaciteten, hvilket skyldes, at adgangen til cachelageret 202 er 10 hurtigere end til lageret 203, 206. Ved at forøge antallet af centralenheder 201 i multiprocessormodulet 214 kan det af fig. 6 ses, at den totale behandlingskapacitet er begrænset til, hvad der svarer til to ækvivalente, selvstændige centralenheder, når der findes tre eller 15 flere centralenheder 201 uden cachelager 202 i multi processormodulet 214, hvilket skyldes trafikstriden på P-bussen 204. Det kan endvidere ses, at der ved at benytte centralenheder 201 med cachelager 202 opnås en væsentlig forøgelse af behandlingskapaciteten. Hvis 20 der f. eks. findes fem centralenheder 201 med cachelager 202 på P-bussen 204, opnås der en behandlingskapacitet, som er ækvivalent med 4,5 selvstændige centralenheder, fordi cachelageret 202 reducerer centralenhedernes strid om P-bussen 204.
25 Cachelageret 202 kan være udformet som forklaret neden for: I tilfælde af at centralenheden 201 skal læse i lageret 203, vil cachelageret 202 først blive undersøgt, og hvis data er til stede i cachelageret, vil centralenhe-30 den 201 kunne hente data der og således ikke have behov for adgang til lageret 203. Hvis de ønskede data ikke findes i cachelageret 202, vil centralenheden læse i lageret 203 via P-bussen 204, og de data, som således hentes af centralenheden 201, vil samtidigt blive kopie- 22
DK 164420 B
ret i cachelageret 202.
Skriveoperationer fra centralenheden 201 til et lager 203 medfører, at den tilsvarende lagerlokation i cache-lager opdateres. Skriveoperationer til lokationer i 5 lageret 203 fra andre centralenheder 201, der er til sluttet P-bussen 204, eller fra adressefrembringende organer 216 på C-bussen 205 medfører, at kopier, som tidligere var indført i cachelageret 202, slettes af den tilhørende centralenhed 201. Under henvisning til 10 fig. 5 har hver centralenhed 201 et cachelager 202, og centralenhederne adresserer lageret 203, 206 via P-bussen 204 gældende for alle tilgange, bortset fra sådanne læsetilgange, hvor adresseindholdet er kopieret i cachelageret 202. Brugen af P-bussen 204 multipleksdeles 15 mellem centralenhederne 201 under styring af P-busarbi- treringsmodulet 212 i overensstemmelse med kendte principper, og centralenheden, som til ethvert tidspunkt har kontrol over P-bussen 204, sender den logiske adresse på den lagerlokation, til hvilken der skal skabes adgang, 20 via P-bussen 204 og busseparatoren 210, til lagerkortet 208, hvor den logiske adresse omsættes til den aktuelle fysiske adresse i lageret 203, 206, hvorefter den fysiske adresse returneres via busseparatoren 209 og P-bussen 204 til lageret 203, eller alternativt overføres 25 den fysiske adresse via busseparatoren 211 og lagerudvidelsesbussen 207 til lageret 206 afhængig af, om den adresserede lokation er indeholdt i lageret 203 eller 206. Under en skrivecyclus udsender centralenheden 201 endvidere det dataord, som skal skrives i den adresse-30 rede lagerlokation på P-bussen 204, idet dataordet skri ves direkte fra P-bussen ind i den adresserede lagerlo-, kation i lageret 203 eller i lageret 206 via busseparatoren 209, den interne bus 215, busseparatoren 211 og lagerudvidelsesbussen 207.
23
DK 164420 B
I løbet af en læsecyclus overføres Indholdet af den adresserede lagerlokation til centralenheden 201 enten direkte via P-bussen 204 fra lageret 203 eller via lagerudvidelsesbussen 207, busseparatoren 211, den indre 5 bus 215, busseparatoren 209 og P-bussen.
Adresserings- skrive- og læsecykler udføres af andre adressefrembringende organer, såsom styreenheden 216 på C-bussen 205 for direkte lageradgang på samme måde som ovenfor beskrevet, idet centralenheden 210 ombyttes 10 med styreenheden 216, P-bussen 204 ombyttes med C-bussen 205, busseparatoren 209 ombyttes med busseparatoren 210, medens P-busarbitratormodulet 212 ombyttes med C-busarbitratormodulet 213.
Med henvisning til fig. 5 er centralenheden 201 i stand 15 til at adressere et sammenhængende logisk lager på 128K ord, hvor 1K er ord lig med 1024 ord. Dette logiske lager er opdelt i 128 logiske sider på hver 1024 ord, hvor lagerkortet 208 på den ovenfor beskrevne måde omsætter de logiske adresser omfattende et logisk sidenummer 20 fra 0 til 127 og en logisk lokation fra 0 til 1023, til en aktuel fysisk adresse i lageret 203, 206, hvilken adresse består af et fysisk sidenummer fra 0 til 16384 og en fysisk lokation fra 0 til 1023 inden for den fysiske side, hvor det fysiske lokationstal er identisk med 25 det logiske lokationstal. De fysiske sidenumre 0 til 1023 er indeholdt i lageret 203, medens de fysiske sidenumre 1024 til 16384 er indeholdt i lageret 206. Cache-lageret 202 er et 1K ords hurtiglager, som indeholder en kopi af de lokationer i lageret 203, som hyppigst 30 adresseres af centralenheden 201, hvor cachelageret adresseres af det logiske lokationsnummer fra centralenheden inden for en logisk side uafhængigt af det logiske sidenummer, eller adresseres fra lagerkortet 208 via den indre bus 215, busseparatoren 209 og P-bussen 24
DK 164420 B
204 i form af det fysiske lokationsnummer inden for en fysisk side, uafhængigt af det fysiske sidenummer.
Fig. 7 illustrerer dette mange-til-en princip i cachela-geret 202, når det adresseres af centralenheden 201.
5 Hver lokation i det på fig. 8 viste cachelager indeholder foruden en kopi 232 af en tilsvarende lagerlokation i lageret 203 også de logiske sidenumre 230 og fysiske sidenumre 233 af den kopierede lokation i lageret 203 samt indeholder et gyldigt indgangsbit 231, som angiver, 10 at indholdet af denne lokation i cachelageret er gyldig .
Under henvisning til fig. 8 begynder en centralenheds læseoperation til en lokation i lageret 203 på P-bussen 204 med først at undersøge, om indholdet af denne lokation 13 er kopieret i cachelageret, før der skabes adgang til P-bussen 204, idet centralenheden 201 adresserer cachelageret 230, 231, 232 og 233 ved hjælp af det logiske lokationsnummer via vælgeren 241, hvorefter det logiske sidenummer 230 for den adresserede lokation sammenlig-20 nes i komparatoren 234 med det logiske sidenummer, som er udsendt af centralenheden. Komparatorens 234 udgangssignal og centralenhedens 201 læsesignal overføres til indgangen af en AND sluse 235.hvis udgangssignal samt et signal for gyldig indgang 231 overføres til en AND 25 sluse 237, hvis udgang frembringer et HIT-signal. HIT- signalet overfører kopien af det adresserede dataord fra lageret 232 via pufferen 236 til centralenheden 201, hvorved læseoperationen er tilendebragt uden at belaste P-bussen 204. 1
Hvis resultatet af ovennævnte undersøgelse ikke medfører et HIT-signal på udgangen af AND slusen 237, vil centralenheden 201 fortsætte en normal læsecyclus på P-bussen 25
DK 164420 B
204 som tidligere beskrevet, dvs. omfattende oversættelse af logisk adresse fra centralenheden 201 til fysisk adresse ved hjælp af lagerkortet 208, fig. 5. Ved hjælp af checkstyreenheden 246 lagres det dataord, som er 5 modtaget af centralenheden 201 via P-bussen 204 fra lageret 203, i cachedataordlageret 232, og det fysiske sidenummer på P-bussen 204 lagres i det fysiske cache-sidelager 233, medens det logiske sidenummer fra centralenheden 201 lagres i det logiske cachesidelager 230, 10 og endelig sættes det gyldige indgangsbit i cachelagerets gyldige indgang 231, hvor al informationen er lagret i den lokation, som udpeges af centralenhedens logiske lokationsnummer via vælgeren 241.
Idet der stadig henvises til fig. 8 udføres en skriveope-15 ration af centralenheden 201 i lageret 203 på samme måde som ovenfor beskrevet i forbindelse med en læseope-ration i lageret 203, når der ikke findes en kopi af den adresserede lagerlokation i cachelageret, og endvidere opdateres cashlageret med en kopi af det indhold, 20 som er skrevet i den adresserede lokation i lageret 203.
For at sikre at de kopierede dataord i cachelageret altid svarer nøjagtigt til indholdet af den tilsvarende lokation i lageret 203, hvilket også skal være tilfældet, 25 hvis andre adressefrembringende organer på P-busssen 204 eller C-bussen 205 skriver i disse lokationer i lageret 203, benyttes P-bussens 204 og C-bussens 205 fysiske lokationsnummer i tilfælde af skriveadgang på disse busser 204 og 205 til via vælgeren 241 at adres-30 sere det fysiske sidenummerlager 233. Det fysiske side nummer, som er lagret i denne lokation, udlæses til komparatoren 238, hvor det sammenlignes med det fysiske sidenummer på P-bussen 204 eller på C-bussen 205 afhængigt af, hvilken der skal have adgang til lageret 203. Hvis 26
DK 164420 B
de fysiske sidenumre er identiske, dvs. at adressen i lageret 203 svarer til kopien af en adresse i cache-lageret, overføres udgangssignalet fra komparatoren 238 til AND-slusen 239 tillige med et skrivesignal fra 5 OR-slusen 247, som angiver skrivning på C-bussen 205 eller skrivning fra andet end den forbundne centralenhed 201 på P-bussen 204, hvor sidstnævnte omgivelse hidrører fra NAND-kredsløbet 240, som ser bort fra centralenhed-skrivesignal på P-bussen 204. Udgangssignalet fra AND-siu-10 sen 239 sluses tillige med udgangen fra den adresserede lokation i det gyldige indgangslager 231 gennem AND-slusen 248 for frembringelse af et kollisionssignal til cachestyreenheden 246 for sletning af det adresserede indgangsbit i indgangslageret 231 svarende til, at ind-15 holdet af den adresserede lokation i cachelageret slettes.
Lagerforbindelsessystem
Virkemåden for det på.fig. 1-4 viste lagerforbindelses-system vil nu blive nærmere forklaret i forbindelse med de forbindelsestilpasningsenheder, som forbinder 20 lagerforbindelsessystemet til C-bussen i et central enhedssystem via styreorganer (17 fig. 2) for direkte lageradgang.
Ved den foretrukne udførelsesform for opfindelsen omfatter hver kommunikationsforbindelse (f.eks. 21 fig. 2) 25 to ledninger, nemlig en dataledning 301 og en svarledning 302, se fig. 9. Forbindelsen omfatter således et par snoede ledninger for overførsel af databit på serieform mellem et flertal af forbindelsestilpasningsenheder 0,1..N i forskellige centralenhedssystemer. Databitene 30 overføres typisk ved 16 mHz, og ledningerne er afsluttet med modstande R af hensyn til impedanstilpasning.
Det vil kunne forstås, at en forudsætning for at for- 27
DK 164420 B
binde mange forbindelsestilpasningsenheder til et fælles ledningspar er, at ledningerne er galvanisk isolerede forbindelsestilpasningsenheder. Af denne grund indeholder hver forbindelsestilpasningenhed transformatorer 303, 5 304 (se også fig. 10) til forbindelse af et respektivt ledningspar og en transceiver i en forbindelsestilpasningsenhed, som vil blive nærmere beskrevet nedenfor.
Fig. 10 viser et blokdiagram af en udførelsesform for en forbindelsestilpasningsenhed ifølge opfindelsen.
10 Forbindelsestilpasningsenheden er via en bus 311 koblet til et styreorgan for direkte lageradgang, som er fælles for et flertal af forbindelsestilpasningsenheder.
Den på fig. 10 viste forbindelsestilpasningsenhed omfatter to transceivere 312, 313, der hver er forbundet til 13 et modtagekredsløb 314 og til et sendekredsløb 315, der er indrettet til serie/parallelkonvertering af data fra transceiveren 313 til en modtagepuffer 316 og til parallel/seriekonvertering af data fra en sendepuffer 317 til transceiveren 313.
20 De nævnte puffere er forbundet til bussen 311 og styres af tilstandsstyreenheder henholdsvis 313 og 319. Transceiveren 312 er forbundet til registre 320, 321, som vil blive nærmere forklaret i forbindelse med det tildelingsprincip, som benyttes for forbindelsestilpas-25 ningsenhedernes brug af lagerforbindelsessystemet.
Bussen 311 er endvidere forbundet til statusregistre 322, 323, som står i forbindelse med styreenhederne henholdsvis 318 og 319. Idet det antages, at styreorganet for direkte lageradgang er informeret om, at sende-30 pufferen 317 er tom (ved at teste statusregistret 323), kan styreorganet overføre en datablok til sendepufferen 317 og ændre status for registret 323 til at angive, 28
DK 164420 B
at pufferen 317 er fuld, hvorved tilstandsstyreenheden 319 aktiveres til at udføre en tildelingscyclus, som vil blive nærmere forklaret i forbindelse med fig. 11.
En tildelingscyclus indebærer, at der til et tidspunkt 5 vil blive givet en meddelse til sendepufferen 317 om at initiere en udlæsning fra pufferen til dataledningen 301 (fig. 9), hvis ledningen er tavs. Samtidigt med dataudlæsningen overføres data til en cyclisk redundans-kontrolgenerator 324, og den fjerde byte af datablokken 10 indføres i et register 325. Hvis der i det mindste modtages fire gyldige bytes af en forudbestemt, modtagende forbindelsestilpasningsenhed, vil den sendende forbindelsestilpasningsenhed modtage nævnte fjerde byte som et svar via ledning 302 (fig. 9), hvilket svar vil blive 15 anbragt i registeret 321 ved hjælp af transceiveren 312. Derefter sammenlignes indholdet af registrene 321, 325 i en komparator 326, og hvis data er ens, må sende-tilstandsstyreenheden fortsætte med at læse data ud fra pufferen 317. Når sendepufferen 317 er tom, vil 20 transmissionen blive afsluttet med udsendelse af kontrolbytes fra generatoren 324, og registeret 323 vil blive omskiftet til at angive, at sendepufferen er tom.
Hvis data, som sammenlignes i komparatoren 326, er forskellige, vil sendetilstandsstyreenheden 319 blive in-25 strueret om at standse udlæsningen fra sendepufferen 317 og til at initiere en ny tildelingscyclus, idet registeret 323 fortsat indikerer, at sendepufferen er fuld.
Forbindelsestilpasningsenheden på fig. 10 er klar til 30 at modtage data via dataledning 301 (fig. 9) og trans- , ceiveren 313, når som helst registeret 322 angiver, at modtagerpufferen 316 er tom. Data modtages af modtagekredsløbet 314, der er indrettet til at dirigere data til generator/kontrolkredsløbet 324 og til paral- 29
DK 164420 B
leloverførsel af data til modtagepufferen 316, idet den fjerde byte overføres til registeret 320 for initiering af udsendelse af den fjerde byte via transceiveren 312 og svarledningen 302 (fig. 9) til den forbindelsestil-5 pasningsenhed, som udsender den modtagende information, jfr. de ovenstående bemærkninger. Når modtagepufferen 316 er fuld, og der ikke har været detekteret fejl ved hjælp af kontrolkredsløbet 324, vil statusregisteret 322 blive skiftet til at angive, at pufferen er fuld.
10 Styreorganet for direkte lageradgang informeres ved hjælp af statusregisteret 322 om, at datablokken kan hentes i modtagepufferen 316, og når datablokken er hentet, skiftes statusregisteret 322 til at angive, at pufferen er tom.
15 Under henvisning til fig. 11 vil den ovennævnte tilde- lingscyclus blive nærmere forklaret, fig. 11 viser, at sendetilstandsstyreenheden 319 fra fig. 10 indeholder et sendetidsstyrekredsløb. I korthed omfatter tidsstyrekredsløbet en nedadtæller 331, en fritløbende tæller 20 332, et programerbart læselager 333, som er vist i nær mere detaljer nederst på fig. 11, en yderligere nedtæller 334, en multivibrator 335, et forsinkelseskredsløb 339 samt AND-sluser 336, 337, 338. For at forklare tids-kredsløbets funktion er der behov for et signal, som 25 betegnes "tavs ledning", som frembringes af et ikke vist detektorkredsløb, når dette detekterer, at dataledningen er tavs (dvs. at der ikke forekommer transmission på dataledningen).
Når statusregisteret 323 skiftes til at indikere fuld 30 sendepuffer, venter tidskredsløbet, indtil der detekteres tavshed på ledningen. Når ledningen er tavs, vil der blive frembragt et signal IAC via en AND-sluse 338 og forsinkelseskredsløbet 339. IAC-signalet forsinkes 2 mikrosekunder på grund af udbredelsesforsinkelse langs 30
DK 164420 B
dataledningen. IAC-signalet sletter multivibratoren 335 og aktiverer tælleren 334 til at modtage et tal fra lageret 333 som forklaret nedenfor. Tælleren 334 begynder med at tælle ned fra det nævnte tal i overens-5 stemmelse med et taktimpulssignal. Når bitene i tælleren 334 alle er 0, frembringes der et udgangssignal til AND-slusen 337, og hvis dataledningen stadig er tavs, sætter AND-slusen 337 multivibratoren 335 til at frembringe et STD-signal (start transmission af datablok).
10 Hvis dataledningen er optaget, vil der ikke blive initieret nogen transmission af datablokke, og den ovenfor beskrevne procedure vil blive gentaget, næste gang dataledningen er tavs. IAC-signalet styrer også tælleren 331, som bliver nulstillet første gang, hvor IAC fore-15 kommer. Udgangssignalerne fra tællerne 331 og 332 udgør adresseindgangssignalet til lageret 333, hvor indholdet af en lagerlokation indlæses i tælleren 334 ved hjælp af IAC-signalet.
I løbet af den første tildelingscyclus vil d-udgangen 20 fra tælleren 331 være d = 15, medens r-udgangen fra. den fritløbende tæller 332 vil være et tal mellem 0 og 15. Hvis det antages, at d = 15 og r = 1, vil tallet F241 blive indlæst i tælleren 334, hvilket tal repræsenterer en aktuel tidsforsinkelse for initiering af trans-25 missionen af datablokke, forudsat at dataledningen er tavs.
Indholdet af de 256 lagerlokationer i lageret 333 er forudbestemt i overensstemmelse med en plan, hvor de mest betydende bits repræsenterer et fast tal for hver 30 værdi af d, hvilket tal aftager fra en maksimumsværdi, når d = 15, til 0, når d = 0, medens de mindst betydende bits repræsenterer et tilfældigt tal for hver lagerlokation. De mindst betydende bits kunne repræsentere et fast tal forudsat, at to fritløbende tællere 332 31
DK 164420 B
i forskellige centralenhedssystemer ikke udviser indbyrdes synkronisme og samtidigt frembringer ens værdier for r. Dette ville medføre, at forskellige forbindelsestilpasningsenheder samtidigt kunne initiere udlæsning 5 på dataledningen. For at forhindre en sådan situation er de mindst betydende bits i lagerlokationerne repræsenteret ved de nævnte tilfældige tal. Tidsforsinkelsen, som er repræsenteret ved indholdet af lagerlokationerne, er naturligvis afhængig af taktimpulshastigheden for 10 tælleren 334. Indholdet kan typisk variere mellem 0 og 75 svarende til en maksimal tidsforsinkelse på 7,5 mikrosekund, når taktimpulshastigheden er 10 MHz. Hver gang et forsøg på at sende har slået fejl, eller en transmission er standset på grund af komparatoren 326, 15 vil der blive frembragt et IAC-signal og tælleren 331 vil blive talt ned. På'grund af den aftagende værdi for de mest betydende bits i lagerlokationerne (set fra bunden mod lagerets top) vil tidsforsinkelsen, som er frembragt af tælleren 334, medføre, at en forbin-20 delsestilpasningsenhed, som har fejlet adskillige gange, vil opnå præference i forhold til forbindelsestilpasningsenheder, som har fejlet et færre antal gange. Det vil kunne forstås, at en forbindelsestilpasningsenhed kan tillægges en forudbestemt prioritet i forhold til 25 andre forbindelsestilpasningsenheder, som er forbun det til en fælles dataledning, ved at indlæse mindre d-værdier i lageret 333 for denne forbindelsestilpasningsenhed i forhold til de d-værdier, som er gældende for de andre forbindelsestilpasningsenheder. 1 2 3 4 5 6
Under henvisning til fig. 4 er den fjerde byte, som 2 skal sammenlignes i komparatoren 326, valgt i overens 3 stemmelse med signaludbredelsesforsinkelsen til den 4 yderste ende af lagerforbindelsessystemet, således at 5 alle detektorer til detektering af tavshed på denne 6 ledning får lejlighed til at detektere, om forbindelsen 32
DK 164420 B
er optaget, inden den fjerde bit udsendes.
På grund af den separate svarledning (302 fig. 9) for hver lagerforbindelse er det muligt at standse transmission af en datablok på et meget tidligt stadium, således 5 at forbindelsen ikke vil være optaget af en dataoverfør sel, der er bestemt til en fuld modtagepuffer, eller som er meningsløs på grund af kollision med en anden dataoverførsel. Hvis modtagepufferen er fuld, vil den fjerde byte ikke blive modtaget i registeret 321, og 10 hvis der er sket en kollision, vil den fjerde byte være fejlagtig, således at transmissionen vil blive standset af komparatoren 326. Den udsendte datablok omfatter fortrinsvis 261 bits, og det vil derfor kunne forstås, at det beskrevne arrangement medfører en bemærkelses-15 værdig stor udnyttelsesgrad af lagerforbindelsessystemet, idet fejlramte dataoverførsler kun vil optage forbindelse i en meget lille brøkdel af transmissionstiden.
I/F styreorgan for direkte lageradgang i lagerforbin-delsesystemet_ 1 2 3 4 5 6 7 8 9 10 11 På fig. 12 er vist et tilpasningsstyreorgan 352 for 2 direkte lageradgang til overførsel af data mellem cen 3 tralenhedssystemets 371 lager og forbindelsestilpasnings 4 enhederne 361. Dette styreorgan er opbygget omkring 5 to indre busser, nemlig Hi-bussen 351 og CI-bussen 350.
6
Hi-bussen er indrettet til indbyrdes forbindelse af 7 en indgående behandlingsdel 341, som udgående behandlings 8 del 342, et styrelager 343, forbindelsestilpasningsen 9 hederne 361 og CI-bussen, idet tildelingen af Hi-bussen 10 til de forskellige adressefrembringende organer er til- 11 vejebragt ved hjælp af en Hl-busarbitrator 344. CI-bus- sen er indrettet til indbyrdes forbindelse af en indgående DMA (direkte lageradgang) 345, en udgående DMA 346, Hi-bussen 351, C-bussen 205, et statusregister 349 samt 33
DK 164420 B
en afbrydebehandlingsdel 348, idet tildelingen af CI-bus-sen til de forskellige adressefrembringende organer er tilvejebragt ved hjælp af en CI-busarbitrator 347.
Den indgående behandlingsdel 341 omfatter en centralenhed 5 364, hvis arbejdslager omfatter et programlager i PROM- 363 og RAM-366, og som er en afgrænset mikrodatamat, der er isoleret fra Hi-bussen 351 ved hjælp af busseparator 360, når der foregår intern behandling, og som via Hi-bussen har adgang til modtagepuffere 362 i for-10 bindelsestilpasningsenhederne 361 og til styrelageret 343 samt via busseparatoren 357 og CI-bussen til den indgående DMA 345, statusregisteret 349 og afbrydestyreenheden 348 samt via busseparatoren 354 og C-bussen 353 har adgang til MAP oversættelseslagre 208, fig.
15 5, i det centralenhedssystemet 371, til hvilket I/F
styreorganet er forbundet. Den indgående behandlingsenheds 341 opgave er at skandere modtagepufferne 362 i forbindelsestilpasningsenhederne 361 og til, når der findes en puffer med en modtaget datablok 382, fig.
20 13, at overføre denne fra lagerforbindelsessystemet 390 med henblik på at analysere de første fem bytes 380, fig. 13, i afhængighed af styreinformation, som findes i styrelageret 343, således at den indgående DMA 345 sættes op til at overføre datadelen af datablok-25 ken i modtagepufferen 362 til den specificerede datapuf fer i centralenhedssystemets 371 lager. Den indgående behandlingsenhed 341 behandler også signalblokke 381, fig. 13, der er modtaget fra lagerforbindelsessystemet 370 i forbindelsestilpasningsenhedernes 361 modtagepuf-30 fer 362, hvilken signalblok angiver, at centralenheds-systemet, som sender signalblokken via lagerforbindelsessystemet ønsker at kommunikere med centralenheds-systemet 371 via en endnu ikke specificeret datastrøm, hvorved den indgående behandlingsdel 341 lagrer et num-35 mer for den forespurgte datastrøm i statusregisteret 349 og afbryder centralenhedssystemet 371 via afbrydestyreenheden 348 med henblik på at få tildelt lagerpuffere 34
DK 164420 B
til kommunikationen og på at få specificeret datastrømmen ved hjælp af en strømbeskriver 801, fig. 14, i styrelageret 343, idet den indgående behandlingsenhed 341 vil se bort fra de indkommende data i en ikke specificeret 5 datastrøm fra lagerforbindelsessystemet.
Den på fig. 12 viste udgående behandlingsenhed 342, som omfatter en centralenhed 367, et programlager PROM 368 og et lager RAM 369, er lige som den indgående behandlingsenhed en afgrænset mikrodatamat, der er isoleret 10 fra Hi-bussen 331 ved hjælp af busisolatoren 359, når der foregår intern behandling, og som via Hi-bussen har adgang til sendepuffere 363 i forbindelsestilpasningsenhederne 361 og til styrelageret 343, samt via busseparatoren 357 og CI-bussen 350 har adgang til den udgående 15 DMA 346, statusregisteret 349, afbrydestyreenheden 348 samt endelig via busseparatoren 354 og C-bussen 353 har adgang til MAP oversættelseslageret 208, fig. 5, i centralenhedssystemet 371. Den udgående behandlingsdels 342 opgave er at udsende datablokke på aktive datastrømme 20 fra lagerpufferne i centralenhedssystemet 371 til tomme sendepuffere 363 i forbindelsestilpasningsenhederne 361, idet den udgående behandlingsdel analyserer strømbe-skriveren 801, fig. 14, i strømbeskriverlageret 373, fig. 14, der specificerer en datastrøm, og sætter den 25 udgående DMA 346 op til at overføre datadelen 383, fig.
13, af en datablok, som skal overføres til lagerforbindelsessystemet 370, fig. 12, fra lageret i centralenhedssystemet 371 til en tom sendepuffer 363 i en forbindelsestilpasningsenhed 361, som via sin forbindelse i lagerfor-30 bindelsessystemet, hvilket er specificeret i forbindelses konfigurationslageret 375, er forbundet med destinationscentralenhedssystemet, og på basis af informationen i strømbeskriveren overfører den udgående behandlingsdel 342 endvidere de fem bytes 380, fig. 12, direkte til 35 sendepufferen 363 i den valgte forbindelsestilpasnings enhed 361.
35
DK 164420 B
Kommunikationsprotokollen, som sikrer fejlfri kommunikation på en datastrøm mellem to centralenhedssystemer via lagerforbindelsessystemet, afvikles samtidigt af den indgående behandlingsdel 341 og den udgående behand-5 lingsdel 342 i samarbejde med den tilsvarende indgående og udgående behandlingsdel i datastrømmens anden ende via lagerforbindelsessystemet, idet den information, som har relation til kommunikationsprotokollen lagres i et midlertidigt resultatområde 809, fig. 14, i strømbe-10 skriveren 801, der specificerer datastrømmen i begge ender.
Data overføres via lagerforbindelsessystemet i form af pakker, der omfatter en eller flere datablokke. For at overføre en pakke fejlfrit via lagerforbindelsessyste-15 met på en datastrøm, der er specificeret ved hjælp af en strømbeskriver 801, fig. 14, i begge strømbeskriver-lagre 373, fig. 12, i de to centralenhedssystemers I/F styreorganer 352, sendes der pakkestyre- og statusinformation i begge retninger, hvilken information er indeholdt 20 i styrebyte 384, fig. 13, i datablokkene 382, fig. 13, som overføres i begge retninger på den specificerede datastrøm. Hver specificeret datastrøm styres af en særskilt kommunikationsprotokol uafhængigt af alle andre datastrømme, og den følgende beskrivelse refererer der-25 for kun til en enkelt datastrøm.
Under henvisning til fig. 15 findes der for hver pakke en udsender 830 for enden af den datastrøm, som til at begynde med havde pakken, og en indhenter 833 i den anden ende, som til slut får pakken. Sidstnævnte begreber 30 skal skelnes fra "sender" og "modtager", der benyttes på konventionel måde til at skelne mellem de to ender af en enkelt transmission, idet en styrebyte 384, fig.
36
DK 164420 B
13, som udsendes i en retning, kan indeholde information om en pakkeudsendelse i den modsatte retning.
Idet en datastrøm er en fuld dupleks forbindelse (uden at der nødvendigvis hersker ens transmissionshastig-5 hed i begge retninger) både med hensyn til udsending/ indhentning og sende/modtage, kan to pakker transmitteres samtidigt og indbyrdes uafhængigt i modsatte retninger via datastrømmen.
En pakke består af en eller flere datablokke, hvor data-10 blokkene i en pakke er løbende nummeret modulo 8, hvil ken nummering er indeholdt byte 4 385, fig. 13, i datablokforløberen, idet der begyndes med 0 for den første datablok i pakken. Den første og den sidste datablok 382, fig. 13 i pakken indeholder en styrebyte, der indi-15 kerer begyndelse og slutningen af pakken, såvel som udtagningsfasen (0 eller 1) for pakken.
Under henvisning til fig. 15 sikres fuldstændigheden af en modtaget pakke ved hjælp af indhenteren 833 på basis af den løbende nummerering (modulo 8) mellem den 20 første og den sidste datablok i pakken. Alle fejl vil resultere i, at datablokken afvises ved modtagestationen, og fejlene detekteres af protokollen, når den følgende datablok ankommer ude af rækkefølge (eller hvis den sidste ramme i en pakke ankommer for sent ifølge en 25 tidsstyring 806, fig. 14), således at hele pakken straks afvises (uden at der ventes på den fuldstændige pakke), og samtidigt anmoder indhenteren 833 om retransmission ved hjælp af signalet NAK (ikke anerkendt), som er en styrebyte 384, fig. 13, af en datablok, som udsendes 30 i modsat retning af datastrømmen. Pakkefasen, som er angivet i den første og sidste ramme af pakken, kontrolleres også, og hvis den er n + 1 (modulo 2), hvor n 37
DK 164420 B
er den sidst accepterede pakke, accepteres overførslen af indhenteren 843 ved hjælp af signalet ACK (anerkendt) i styrebyte 384, fig. 13, i en datablok, som udsendes i modsat retning af datastrømmen. Hvis fasen er n, ac-5 cepteres det via ACK, men kastes bort af indhenteren 833, idet pakken anses for at være et duplikat som følge af en fejl i et af anerkendelsessignalerne.
ACK/NAK transmitteres af indhenteren i kommunikationsstyrebyte. Styrebyte 384, fig. 13, transmitteres enten 10 som indeholdt i en datablok i en pakke, der afgår fra indhenteren (enhver datablok: første, sidste eller i midten af blokken), eller initierer udsendelse af en datablok, uden for pakkerne, som ikke indeholder data, og som bortkastes af udsenderen 830, bortset fra indhol-15 det af styrebyte 384, hvilket tillader et øjeblikkeligt ACK/NAK svar fra indhenteren 833 på en pakke, der er modtaget fra udsenderen 830.
I udsenderen 830 kontrolleres hvert anerkendelsessignal for fejl og bortkastes, hvis der konstateres fejl, medens 20 et fejlfrit ACK signal bevirker, at pakke nr. n + 1 transmitteres, medens et fejlfrit NAK signal medfører retransmission af pakken nr. n. Et tidsstyrekredsløb 803, fig. 14, i senderen initierer retransmission af pakke nr. n i tilfalde af, at der hverken modtages ACK 25 eller NAK inden for et forudbestemt tidsrum (f. eks.
på grund af fejl i netværksforbindelsen) og en sådan retransmission forsøges tre gange, før protokollen opgiver transmissionen.
38
DK 164420 B
Overførsel af en pakke i den modsatte retning i datastrømmen udføres identisk med det ovenfor beskrevne, idet udsenderen 830 erstattes med udsenderen 831, og indhenteren 833 erstattes med indhenteren 832.
5 I hver ende af datastrømmen 834, fig. 15, afvikler den udgående behandlingsdel 342, fig. 12, den del af kommunikationsprotokollen, som har relation til de respektive udsendere, medens den indgående behandlingsdel 341, fig. 12, afvikler den del, der har relation til de respek-10 tive indhentere.
Under henvisning til fig. 1 udføres kommunikation over lagerforbindelsesnetværket mellem to centralenhedssystemer ved at specificere en datastrøm mellem centralenhedssystemernes lagre, idet en specificeret datastrøm 15 vil overføre dataindholdet fra en puffer i et første centralenhedssystems lager til en puffer i et andet centralenhedssystems lager, og idet der samtidig kan foregå overførsel i den modsatte retning fra en puffer i det andet centralenhedssystems lager til en puffer 20 i det første centralenhedssystems lager. Under henvisning til fig. 2 medfører hver af de op til fire DMA I/F styreenheder 17, 18 ved den foretrukne udførelsesform for centralenhedssystemet, at der kan specificeres op til 256 datastrømme til hvert af op til femten centralenheds-25 systemer med forbindelse til lagerforbindelsesnetværket, hvorved der kan opnås i alt 16128 mulige, indbyrdes uafhængige datastrømme (specificeret ved hjælp af strøm-beskrivere) mellem centralenhederne, og afhængigt af konfigurationen kan et centralenhedssystem kommunikere 30 med op til 60 andre centralenhedssystemer, idet de mulige datastrømme er identificeret ved 16 bits, hvor 8 bits identificerer hver af de to indbyrdes kommunikerende centralenhedssystemer ved et firebits tal, medens de 39
DK 164420 B
sidste otte bits indikerer den af de 256 mulige datastrømme mellem disse to centralenhedssystemer. Overførslen af datablokke mellem lager forbindelsesnetværket og een-' tralenhedssystemet er multipleksdelt mellem de specifi- 5 cerede datastrømme ved hjælp af DMA I/F styreenhederne 17, 18 med en akkumuleret dataoverførselskapacitet på 400 K bytes pr. sekund for hver DMA I/F. Det er et vigtigt træk ved opfindelsen, at der tilvejebringes et stort antal mulige datastrømme med stor overførselskapacitet, 10 hvor datastrømmene er specificeret direkte mellem dataområder i lageret for en programproces i forskellige centralenheder, som skal kommunikere med hinanden, i stedet for, som det er tilfældet ved den kendte teknik, at der kun findes nogle få lagerpuffere, der er reserveret 15 til indbyrdes kommunikation mellem centralenhedssystemer, hvor disse få puffere skal multipleksdeles mellem de programprocesser, som skal kommunikere indbyrdes, idet multipleksdelingen skal udføres ved hjælp af programmel og således belaster centralenhederne kraftigt. Det 20 er også et vigtigt træk, at en datastrøm kan specificeres direkte mellem et første lager 608, fig. 22, i et centralenhedssystem, der er direkte adresserbart fra en ydre styreenhed 607, fig. 22, og et tilsvarende andet lager i et andet centralenhedssystem, hvor det andet 25 lager er direkte tilgængeligt fra en anden ydre styre- enhed, og at datastrømmen kan være specificeret til løbende at overføre indholdet af en lagerpuffer i det første lager til en lagerpuffer i det andet lager og omvendt, hvilke overførsler kan tilvejebringes uden 30 at afbryde centralenhederne. Endvidere kan overførslen genstartes, således, at der kan opnås kontinuerlig kommunikation mellem ydre styreenheder via lagerforbindelsesnetværket, uden at dette skal overvåges af centralenhederne, der blot skal have specificeret data-35 strømmen til at begynde med. Sidstnævnte træk er væsent- 40
DK 164420 B
ligt, når systemet ifølge opfindelsen omfatter ydre styreenheder, der er indrettet til at sende og modtage data via eksterne telefonlinier, idet data kan omskiftes 5 mellem vilkårlige telefonlinier via lagerforbindelses-netvsrket, uden at systemets centralenheder belastes af denne trafik.
Det er et vigtigt træk ved opfindelsen, at en datastrøm mellem to særskilte centralenhedssystemer er specifice-10 ret ved hjælp af begge centralenhedssystemer, idet der indføres en strømbeskriver 301, fig. 14, i styrelageret for en af de tilsluttede DMA I/F styreenheder, fig.
12, hvor strømbeskriveren 801, fig. 14, definerer de lagerpuffere og den styreinformation, som skal benyttes 15 i centralenhedssystemet i forbindelse med denne datastrøm. Datastrømme er til at begynde med ikke specificeret mellem centralenhedssystemerne men genereres og specificeres dynamisk ved, at et centralenhedssystem først indfører en strømbeskriver 801, fig. 14, i styrelage-20 ret 343, fig. 12, i en af de tilhørende DMA I/F styreenheder, fig. 12, hvorved der angives det andet central-enhedssystem, datastrømnummeret, og mængden af data, som skal overføres, men hvor der endnu ikke er angivet lagerpuffere for indhentning og udsendelse af data.
25 Derefter frembringes en forespørgselssignalblok 381, fig. 13, som indeholder data for den datastrøm, som søges specificeret, hvilke data sendes via lagerforbindelsesnetværket til det specificerede centralenhedssystem. Hvis det centralenhedssystem, som modtager signal-30 blokken, accepterer at kommunikere med den initiativtagende centralenhed på det angivne datastrømnummer, vil destinationscentralenhedssystemet indføre en tilsvarende strømbeskriver 801, fig. 14, i styrelageret 343, fig.
12, i en af sine DMA I/F styreenheder, og hvor strømbeskriver peger 41
DK 164420 B
på lagerpuffere for indhentning og udsendelse af data. Sidstnævnte strømbeskriver vil først sende en signalblok som ovenfor beskrevet i den modsatte retning indeholdende information om den mængde data, som skal overføres i 5 nævnte modsatte retning, hvorefter denne strømbeskriver er klar for normal datatransport. Det initiativtagende centralenhedssystem vil derefter indlæse en strømbeskriver i en af sine DMA styreenheder, hvor der nu er defineret lagerpuffere for indhentning og udsendelse 10 i afhængighed af den signalblok, som er modtaget fra destinationscentralenhedssystemet. Datastrømmen siges herefter at være specificeret, hvorefter DMA I/F styre-enhederne automatisk kan overføre data mellem de specificerede puffere i de to centralenhedssystemers lagre 15 via lagerforbindelsesnetvarket, indtil pufferne er fuld stændigt overført, hvorefter DMA I/F styreenhederne afbryder de tilhørende centralenhedssystemer for nedtagning af datastrømmen, hvilket indebærer, at de tilhørende strømbeskrivere i styrelageret 343, fig. 12, slettes.
20 Fig. 14 illustrerer virkemåden for de forskellige dele i DMA I/F styreenheden for initiering af en datastrøm og overførsel af data via datastrømmen mellem lageret i et første centralenhedssystem og lager forbindelsesnetværket, samt samvirkningen med en tilsvarende DMA I/F 25 styreenhed og lageret i et andet centralenhedssystem i datastrømmens anden ende.
Under henvisning til fig. 14 initierer et første central-enhedssystem opsætningen af en datastrøm ved at indlæse en strømbeskriver 801 i strømbeskriverlageret 373 i 30 en af de tilsluttede DMA I/F styreenheder omfattende et sat INIT bit 802, bit 8, nummeret på den datastrøm, som skal initieres i 802 bit 0-7, 1111 (som angiver signalblok) i datatypen 803 bit 12 - 15, nummeret på 42
DK 164420 B
destinationscentralenhedssystemet i 803 bit 8 - 11, en sendetidsværdi i 803 bit 0-7, samt længden i bytes af centralenhedssystemets puffer, som skal overføres til destinationscentralenhedssystemet, i 810 bit 0 -5 16. Endvidere indføres der et ord, som indeholder begyn delsesadressen på strømbeskriveren, i et område i skanderingslageret 372, svarende til et af de 16 hastigheds-niveauer. Den udgående behandlingsdel 342 skanderer lageret 372 og henter således et ord og udfører den 10 behandling, som er angivet ved den udpegede strømbeskri ver, og fortsætter derefter til det næste ord og udpegede strømbeskriver, således at de ord i skanderingslageret, som er indført i et hastighedsniveau, hentes dobbelt så mange gange som de ord, der er indført i det efterføl-15 gende hastighedsniveau. Som det vil blive beskrevet senere vil den udgående behandlingsdels behandling af strømbeskriveren normalt medføre overførsel af datablokke på den tilhørende datastrøm, hvor hastighedsniveauet, i hvilket pegeordet er indført i skanderingslageret, 20 definerer den hastighed, hvormed data overføres på datastrømmen. Når den udgående behandlingsdel har hentet det ord i skanderingslageret, som peger på strømbeskriveren, vil der, som følge af at IIMIT bit'et 802 bit 8, er sat blive overført en signalblok 381, fig. 13, 25 til lager forbindelsesnetværket på følgende måde: Ved hjælp af nummeret på destinationscentralenhedssystemet findes der i netværkskonfigurationslageret 375 sådanne af de tilhørende tilpasningsenheder, som via en lagerforbindelse er forbundet med destinationscentralenhedssy-30 stemet, og derefter udvælges en af disse tilpasningsen heder, hvis sendepuffer 363 er tom. Den udgående behandlingsdel fylder herefter den fundne sendepuffer 363 med indholdet af signalblokken 381, hvor byte nr. 1 indeholder datatypen 1111 og destinationscentralenheds-35 systemets nummer i strømbeskriveren 803 bit 8 - 15, byte nr. 2 indeholder datastrømnummeret 802 bit 0 - 43
DK 164420 B
7, byte nr. 3 indeholder lutter nuller, de fire mest betydende bits i byte nr. 4 angiver 0001, medens de fire mindst betydende bits i byte nr. 4 angiver nummeret på det centralenhedssystem, som ifølge strømbeskriveren 5 806 bit 8 - 1 er transmissionskilde, byte nr. 5 inde holder 00000001, som angiver to efterfølgende databytes nr. 6 og 7, der angiver længden af den udgående transport 810 bit 0 - 16. Efter at have indlæst signalblokken til lager forbindelsestilpasningsenheden initierer den 10 udgående behandlingsdel 342 overførsel af signalblokken til lager forbindelsesnetværket ved at sætte en meddelse i tilpasningsenhedens statusregister 323, fig. 10, om at sendepufferen er fuld. Endvidere vil et DONE bit i strømbeskriveren 802, bit 10, blive sat for at angive, 15 at signalblokken er blevet behandlet med henblik på udsendelse, og værdien af sendetiden 803 bit 0-7 tælles ned. Som følge af at DONE bit'et er sat, vil sendetidens værdi i strømbeskriveren blive talt ned, hver gang strøm-beskriveren skanderes af den udgående behandlingsdel, 20 og hvis tiden bliver 0, hvilket angiver, at yderligere handlinger, som vil blive forklaret neden for i forbindelse med opsætning af datastrømmen, ikke er blevet udført inden for det indstillede tidsrum, vil den udgående behandlingsdel afbryde centralenhedssystemet via afbryde-25 styreenheden 348 og således give meddelelse om datastrøm-nummeret 802, bit 0 - 7, og destinationscentralenhedssystemet 803, bit 8 - 11, og endvidere vil statusregisteret 349 indeholde en fejlårsag, og endelig vil yderligere behandling af strømbeskriveren blive standset ved 30 at fjerne pegeordet i skanderingslageret 372.
Den indgående behandlingsdel 341 i den DMA I/F styreenhed i det centrale enhedssystem, der er specificeret som destination ved hjælp af den oven for beskrevne signalblok, vil kontinuerligt skandere sine tilhørende tilpasnings- 44
DK 164420 B
enheder med henblik på at finde en fuld modtagepuffer og med henblik på at behandle signalblokken i en modtage-puffer. Når den indgående behandlingsdel ved hjælp af byte nr. 1, som er et 1111, konstaterer, at der er tale 5 om en signalblok, vil behandlingsdelen fylde statusregi steret 349 dels med det modtagede datastrømnummer i byte nr. 2, dels med nummeret på kildecentralenhedssystemet i de fire mindst betydende bits i byte nr. 4 og dels med længden af den udgående transport, som er 10 indeholdt i byte nr. 6 og 7, og endelig vil der blive frembragt en afbrydelse ved hjælp af afbrydestyreenheden 348. Som følge af afbrydelsen henter centralenhedssystemet indholdet i statusregisteret 349 og vælger enten at se bort fra forespørgslen om at sætte en datastrøm op 15 eller vælger på grundlag af den meddelte længde på den udgående overførsel at tildele en modtagepuffer af tilsvarende størrelse fra sit lager, i hvilket tilfælde DMA I/F styreenheden vil modtage en tilsvarende strømbeskriver i sit strømbeskriverlager 373 og modtage datapuffer-20 kæder i datapufferkædelageret 374, som vil blive nærmere forklaret i det følgende. Centralenhedssystemet vil også definere bytelængden på en eventuel lagerpuffer i sit lager, som skal overføres i den modsatte retning på datastrømmen, i strømbeskriverordet 810 og sætte 25 et svarbit RESP 802 bit 9 samt indføre et pegeord for strømbeskriveren i et specificeret hastighedsniveau i skanderingslageret 372. Når strømbeskriveren som følge af den udgående behandlingsdels 342 skandering vælges for behandling, vil der blive frembragt en signalblok 30 med datatype 1111 i byte nr. 1 uafhængigt af indholdet af strømbeskriverordet 803 bit 12 - 14 for overførsel i den modsatte retning som følge af, at RESP bit'et er sat, og transporten vil foregå på samme måde som ovenfor beskrevet, bortset fra, at RESP bit'et er sat i stedet 35 for DONE bit'et, hvilket angiver, at strømbeskriveren spe- 45
DK 164420 B
cificerer overførsel af datablokke, hvilken overførsel foregår ind i og ud af centralenhedssystemets lager på den forespurgte datastrøm, når hverken bit'ene INIT, RESP eller DONE er sat i strømbeskriverordet 802's bit 5 8, 9, 10.
Det initiativtagende centralenhedssystem modtager signalblokken som tidligere beskrevet og tildeler som svar på afbrydelsen en modtagepuffer med en størrelse, som er angivet ved byte nr. 6 og 7 (381, fig. 13), der er 10 modtaget via statusregisteret 349, samt lagrer strøm-beskriveren i strømbeskriverlageret 373 og datapuffer-kæder i datapufferkædelageret 374, som specificerer den anden ende af datastrømmen, samt indfører et pegeord for strømbeskriveren i skanderingslageret 372 i det 15 specificerede hastighedsniveau. Datastrømmen mellem de to centralenhedssystemer siges herefter at være specificeret, og datatransporten mellem centralenhedssystemernes lagre kan foregå som beskrevet i det følgende, idet DMA I/F styreenhederne i begge af datastrømmens 20 ender fungerer på samme måde. Hver gang strømbeskriveren 801 tages op til behandling som følge af den udgående behandlingsdels 342 skandering af skanderingslageret 372, finder den udgående behandlingsdel som tidligere forklaret en tom sendepuffer 363 i en tilhørende for-25 bindelsestilpasningsenhed og indlæser den 5 bytes lange forløber 380, fig. 13, for datablokken, hvor de fem bytes tages fra strømbeskriveren 801 således (se fig.
14): Datatypen (forskellig fra 1111) og destinationscentralenhedssystemet nummer fra ord 803 bits 8 - 11 i 30 bytes nr. 1, ordet 802, hvor bits 0-7 indeholder datastrømnummer, i byte nr. 2, styrebyte ifølge den tidligere beskrevne kommunikationsprotokol fra mellemresultatområdet 809 i byte nr. 4, hvis tre mindst betydende bits indeholder cyclisk sekvensnummer fra mellemresultatområ- 46
DK 164420 B
det 809; endvidere ssttes bit 4 i byte 4, hvis der følger data efter, og i de fire mindst betydende bits af byte nr. 4 indlæses kildecentralenhedssystemets nummer fra ord 806 bit 8 - 11, medens byte nr. 5 angiver antallet 5 af databytes minus 1, som følger efter den 5 byte lange forløber 384. Ued hjalp af strømbeskriverordet 805, som indeholder adressen på den løbende datapufferkæde i udgangspakken som pegeord, får den udgående behandlingsdel adgang til datapufferkæden 816, der peger på de 10 lokationer i centralenhedssystemernes lagre, hvortil de naste data skal overføres, hvor datapufferkaderne 815, 816, 817 omfatter fem ord på 16 bits, hvor første ord 818 indeholder det fysiske sidenummer i lageret, hvor data er beliggende tilligemed tilhørende beskyt-15 telsesbits, og hvor det andet ord 819 indeholder adressen inden for den ovennævnte fysiske side, hvorfra det næste dataord skal hentes, det tredje ord 820 angiver resterende bytes inden for den fysiske side i pufferen, det fjerde ord 822 angiver den oprindelige størrelse i bytes 20 inden for pufferens fysiske side, medens det femte ord 821 angiver adressen på den næste datapufferkæde i datapuf ferkædelageret 374 eller angiver afslutningen af udgangspakken, hvis det mest betydende bit er 1, eller angiver afslutning af overførslen, hvis det mest betydende 25 bit er 0. Den udgående behandlingsdel 342 undersøger først, om byte tælleordet 820 er 0, hvilket som neden for forklaret angiver, at det næste datapufferkædeord 821 angiver enten afslutningen af pakken eller afslutningen af overførslen (som også er en pakkeafslutning), 30 hvorefter den udgående behandlingsdel undersøger strøm- beskriverens mellemresultatområde 809. Hvis der i forbindelse med denne pakke er modtaget et anerkendelsessignal ACK fra den anden ende af datastrømmen, vil den udgående behandlingsdel 342, hvis der ikke er tale om afslut-35 ning af overførslen, indføre adressen på næste data-
DK 164420 B
m pufferksdeord 821 i strømbeskriverordet 805 og 806 og fortsatte som beskrevet nedenfor. Hvis der er tale om afslutning af en overførsel, vil centralenheden få besked om, at udsendelsen af data er tilendebragt, hvilket 5 meddeles via afbrydestyreenheden 348 og statusregisteret 349. Hvis strømbeskriverens mellemresultatområde indeholder ikke-anerkendelsessignalet NACK, som er modtaget fra den anden ende af datastrømmen, vil adressen for den første datapufferkade i udgangspakken i strømbeskri-10 verordet 804 blive indlast i adressen for løbende data- pufferkade i udgangspakkeordet 805, hvorved der forebe- -redes for retransmission af pakken, og den udgående behandlingsdel vil endvidere genlagre indholdet i datapuf feradresseordet 819 og bytetælleren 820 ved hjælp 15 af indholdet i datapufferlsngdeordet 822 i alle data- pufferkæder og herefter fortsatte som beskrevet nedenfor. Hvis hverken signalet ACK eller NACK forekommer, vil strømbeskriverordet 803 blive talt ned, og hvis det ikke er 0, vil den udgående behandlingsdel hente 20 et nyt pegeord i skanderingslageret og starte behandlin gen af den næste strømbeskriver. Hvis strømbeskriverordet 803 er talt ned til 0, vil der ske det samme som ovenfor beskrevet i tilfælde af NACK.
Hvis bytetælleordet 820 ikke er 0, vil den udgående 25 behandlingsdel 342 indlæse det første ord 818 i den løbende datapufferksde 815, som indeholder fysisk sidenummer og adgangsbeskyttelsesbits, til oversættelses-lageret 468, fig. 9, i den lokation, som benyttes, når der skal oversættes adresser, der er frembragt af den 30 udgående DMA 346, og overføre datapufferadressen 819 og bytetælleren 820 til den udgående DMA 346, som overfører de specificerede dataord fra lageret i centralenhedssystemet til sendepufferen i lagerforbindelsestilpasningsenheden, idet datapufferadressen tælles op, 48
DK 164420 B
og bytetælleren tælles ned for hvert ord, der overføres, idet den udgående behandlingsdel 342 lagrer den nye datapufferadresse og bytetælleværdien fra den udgående DMA 346 i datapufferkædeordet 819 og 820. Hvis bytetæl-5 levsrdien er lig med 0, undersøges det næste datapufferkæ-deord 821, og hvis det peger på en yderligere datapuf-ferkæde, lagres ordet 821 i strømbeskriverordet 805.
Hvis det næste datapufferkædeord 821 angiver, at pakken er slut, eller at overførslen er slut (hvilket også 10 er en afslutning på pakkerne), er styrebyte, dvs. byte nr. 5 i datablokken 382, fig. 13, allerede placeret i sendepufferen 363 i den valgte lagerforbindelsestilpasningsenhed og er modificeret, således at dette meddeles til den anden ende af datastrømmen, medens sendetiden 15 er indeholdt i ordet 803, bit 0-7, og udløber, hvis ACK ikke er modtaget fra den anden ende af strømmen inden for det specificerede tidsrum, men adressen på den løbende datapufferkæde i udgangspakkens strømbe-skriverord 805 er ikke ændret. Transmission af den færdige 20 datablok initieres af den udgående behandlingsdel, idet denne sætter sendepufferen i statusregisteret 323, fig.
10, til at være fuld, og den udgående behandlingsdel finder pegeordet til den næste strømbeskriver i skanderingslageret 372, som skal behandles. 1 2 3 4 5 6
Den indgående behandlingsdel 341 skanderer løbende sta 2 tusregisteret 322, fig. 10, for de tilsluttede lagerfor 3 bindelsestilpasningsenheder, og når der er modtaget 4 en datablok, indikeres dette ved et flag i tilpasnings 5 enhedens statusregister. Datastrømnummeret i byte 2 6 og kildecentralenhedsnummeret i de fire mindst betydende pladser af byte 4 i den modtagende datablok benyttes som pil til den tilhørende strømbeskriver 801 i strømbe-skriverlageret 373. Den indgående behandlingsdel tester, at det modtagne sekvensnummer, dvs. de tre mest 49
DK 164420 B
betydende bits i byte 4 i datablokken 382, fig. 13, er blevet talt frem med 1 modulo 8 i forhold til den forudgående, modtagne datablok på datastrømmen, men hvis dette ikke er tilfaldet, lagres der et NACK signal 5 i mellemresultatområderne 809 med henblik på senere transmission ved hjalp af den udgående behandlingsdel, idet yderligere behandling af denne datablok standses ved at satte lagerforbindelsestilpasningsenhedens statusregister 322, fig. 10, til at vare tom og fortsætte 10 skanderingen efter fulde modtagepuffere i lagerforbindelsestilpasningsenhederne, hvis det modtagne sekvensnummer var talt korrekt frem. Den indgående behandlingsenhed lagrer styrebyte, som muligvis indeholder ACK eller NACK for den pakke, som er ført ud af den udgåen-15 de behandlingsenhed, dvs. byte nr. 3 i datablokken i mellemresultatlageret 809 i strømbeskriveren 801.
Hvis byte nr. 4 i datablokken 382, fig. 13 angiver afslutning af pakken i det modtagne styrebyte, lagrer den indgående behandlingsdel ACK for pakken i mellemresul-20 tatområdet 809 for senere transmission ved hjælp af den udgående behandlingsdel. Idet strømbeskriverordet 808, som indeholder adressen på den løbende datapuffer-kade i indgangspakken, benyttes som pil, får den indgående behandlingsdel adgang til den datapufferksde, der 25 peger på lokationerne i centralenhedssystemets lager, hvortil de modtagne data skal overføres. Datapuffer-kæderne 829, 830, 831 omfatter fem ord på 16 bits som tidligere forklaret. For at overføre de datablokke, 30 som er modtaget i lagerforbindelsestilpasningsenhedernes modtagepuffer 362, til lageret i centralenhedssystemet overfører den indgående behandlingsdel datapuf-feradresseordet 825, og bytenummeret 826 til den indgående DMA 345, som endvidere modtager indholdet af 35 byte nr. 5 for datablokken 382, fig. 13, optalt med 50
DK 164420 B
1, hvilket angiver det aktuelle antal af databytes, som er indeholdt i den modtagne datablok, og endvidere overføres det første ord 824 fra den løbende datapuffer-ksde 830, der indeholder det fysiske sidenummer og ad-5 gangsbeskyttelsesbit, til oversættelseslageret 468, fig. 9 i den lokation, som benyttes, når der skal oversættes adresser, der er frembragt af den indgående DMA 345, hvorefter den indgående DMA 345 begynder at overføre dataord fra lagerforbindelsestilpasningsenhedens modta-10 gepuffer til centralenhedssystemets lager, idet der foretages optælling af datapufferadressen og nedtælling af bytenummeret og det aktuelt modtagne bytenummer for hvert ord, der er overført, indtil enten det modtagne aktuelle bytenummer bliver 0 og alle modtagne data er 15 overført til lageret, eller indtil bytenummert bliver 0, hvilket angiver, at der er behov for yderligere pufferplads i lageret. Den yderligere pufferplads tilvejebringes ved hjælp af den indgående behandlingsdel, som får adgang til adressen i næste datapufferkædeord 828, 20 hvor adresseindholdet overføres til strømbeskriverordet 808 og benyttes som pil til den naste datapufferkæde, som peger på yderligere lagerpufferlokationer. Den indgående behandlingsdel overfører også datapufferadressen 825 og bytenummeret 826 for denne datapufferkæde til 25 den indgående DMA 345 og fortsætter dataoverførslen, indtil det aktuelle bytenummer i den indgående DMA 345 er 0, hvorefter datapufferadressen og bytenummeret fra den indgående DMA 345 lagres i ordet 325 og 326, hvorefter den indgående behandlingsdel sætter lagerforbindel-30 sestilpasningsenhedens statusregister 322, fig. 10, til at være tom og genoptager skanderingen efter fulde modtagepuffere i lagerforbindelsestilpasningsenheder-ne. I tilfælde af at der modtages en pakkebegyndelse i styrebyte, dvs. byte 5 i datablokken 382, fig. 13, 35 i midten af en pakke af datablokke på datastrømmen, 51
DK 164420 B
hvorved der indikeres retransmission af denne pakke, vil den indgående behandlingsdel genstarte indførsel af data for denne pakke til centralenhedssystemets lager ved at indlæse adressen for den første datapuf-5 ferkede i indgangspakken, dvs. strømbeskriverordet 807, i adressen for den løbende datapufferkede i indgangspakkeordet 808, og den indgående behandlingsdel vil genlagre datapufferadresseordet 825 og bytenummeret 826 ved hjælp af indholdet af datapufferlsngdeordet 10 827 for alle datapufferksder og derefter fortsætte data overførslen fra lager forbindelsestilpasningsenhedens modtagepuffer 362 til centralenhedssystemets lager som ovenfor beskrevet. Hver gang der modtages en datablok på datastrømmen vil den indgående behandlingsdel endvidere 15 overføre det modtagne tidsrum i strømbeskriverordet 806, dvs. bit 0-7, hvilket tidsrum tælles ned og afprøves ved hjælp af den udgående behandlingsdel, hver gang strømbeskriveren skanderes, og hvis tiden bliver 0, vil der blive udsendt et NACK i styrebyte af en data-20 blok, som udsendes på datastrømmen.
Når byte nr. 3 i en modtaget datablok 382, fig. 13, angiver afslutning på overførslen, vil den indgående behandlingsdel informere centralenhedssystemet om afslutningen af overførslen ved at afbryde gennem afbry-25 destyreenheden 348 og ved at lagre årsagen i statusregi steret 349.
Centralenhedssystemet venter på afbrydelser, som indikerer færdiggørelse af overførsler på både den indgående og den udgående del af datastrømmen og lukker datastrømmen, 30 når begge dele er tilendebragt, ved at slette pegeordet til strømbeskriveren i skanderingslageret 372.
Når rotations bit'et ROT, dvs. bit 11 i strømbeskriverordet 802, er sat, vil den udgående behandlings- 52
DK 164420 B
del, når den møder et næste datapufferksdeord 821, som indeholder afslutning af overførslen, genlagre datapuf ferksderne som tidligere beskrevet og indlæse adressen på den første pufferkæde i udgangspakken, dvs. strøm-5 beskriverordet 804, i adressen på den løbende datapuf-ferksde i udgangspakken, dvs. strømbeskriverordet 805, og således løbende udsende lagerpufferen i centralenheds-systemet, som er udpeget ved datapufferkæderne, der omfatter udgangspakken. Den indgående behandlingsdel, 10 som i datablokkens styrebyte modtager afslutning af overførslen, vil ligeledes genlagre datapufferksder som tidligere forklaret og indføre adressen på den første datapufferkæde i indgangspakken, dvs. strømbeskriverordet 807, i adressen for den løbende datapuffer, dvs. strøm-15 beskriverordet 808, i indgangspakken, således at der tilvejebringes overskrivning af centralenhedssystemets lagerpuffer, som er udpeget af de datapufferkæder, som omfatter indgangspakken. Når rotationsbit1 et ROT er sat i strømbeskriveren, gældende for begge dens ender, 20 kan der opnås kontinuerlig kommunikation mellem to ydre styreenheder via lagerforbindelsesnetværket, idet sendepuffere transmitteres løbende, medens modtagepuffere overskrives løbende.
Laqerkort, afbrydebehandlinqsenhed og intern laqeradqanq 25 Det fysiske lager i et centralenhedssystem, som er vist på fig. 1, 2, 3, 4, 5 har en totalt adresserbar størrelse på 16 mega ord (16000 K ord, hvor hver K ord er lig med 1024 ord), hvor hvert ord består af 16 bits plus paretetsbits for detektering af enkeltbitfejl. Det fysiske 30 lager er opdelt i løbende sider, som hver omfatter 1K ord (1024 bits), og som er nummeret fra 0 til 15999, hvor sidenummer 0 begynder i lokation nr. 0 i det fysiske lager.
53
DK 164420 B
Alle tilgange til lageret fra adressefrembringende organerne, såsom, under henvisning til fig. 5, centralenheder 201, styreorganer 216 for direkte lageradgang og, under henvisning til fig. 11, DMA styreenheden 13, 5 udføres til et logisk adresserum på 128 K ord, som er sårskilt for hvert adressefrembringende organ. På fig.
16 er det logiske adresserum 490 for et adressefrembringende organ vist, bestående af to segmenter 495, 496, der hver har 64 sider på 1!< ord svarende til adresse-10 området for en logisk adresse på 17 bits, idet det 17. bit definerer, hvilket af de to segmenter, der skal anvendes. For en centralenheds vedkommende er det første segment 495 udelukkende benyttet til at indeholde programkoder, medens det andet segment indeholder data.
15 For et organ til direkte lageradgang indeholder det første segment 495 det adresserum, som benyttes, når organet Isser fra lageret, medens det andet segment 496 indeholder adresserummet, som benyttes, når der skrives i lageret. Der er ikke påkravet nogen korrespon-20 dance mellem et logisk adresserum og et fysisk adresserum. Adresseoversættelsen 492, fig. 16, som foregår i lagerkortsystemet ifølge opfindelsen, er indrettet til at omsatte mellem løbende logiske sider og ethvert arrangement af tilsvarende fysiske sider i lageret. 1 2 3 4 5 6
Ued at hvert adressefrembringende organ har sit eget 2 private logiske adresserum og adressekort opnås bruger- 3 beskyttelse ved multidatabehandling, hvor mange brugere 4 har adgang til anlægget, idet det kan sikres, at en 5 bruger ikke kan Isse eller skrive i en anden brugers 6 lagerrum. Som det vil fremgå af det følgende indeholder lagerkortet overssttelsestabeller for 32 komplette logiske adresserum, hvoraf et er vist ved 490, fig. 16, som tillader hurtigt skift til et nyt logisk adresserum, når et adressefrembringende organ skifter bruger (det kan være een- 54
DK 164420 B
tralenheder eller organer for direkte lageradgang), forudsat, at der i multiprogrammel er sørget for adskillelse mellem brugerne. Endvidere har hver side i det fysiske lager sine egne to adgangsstyrebit i lagerkor-5 tets oversættelsestabel til angivelse af, om der kan læses eller skrives, eller der ikke kan fås adgang til denne side i lageret. Adgangsstyrebit'en kontrolleres ved hver adresseoversættelse i lagerkortet, når centralenhederne afvikler brugerprogrammer (centralenhed i 10 brugertilstand), men tages ikke i betragtning ved afviklingen af pålideligt systemprogrammel (centralenhed i systemtilstand). Når et organ for direkte lageradgang søger adgang i lageret, kontrolleres adgangsstyrebit'ene altid, og et uautoriseret forsøg vil forårsage afbry-15 delse af centralenhederne, som underretter operativsystemet om fejlen. Der er således opnået beskyttelse mod, at brugere kan modificere andre brugeres operativsystem og data, fordi der findes særskilte logiske adresserum for apparater og brugere, fordi der er adgangs-20 kontrol til hver fysiske side, fordi centralenhederne har brugertilstand og systemtilstand, og fordi ingen instruktioner, som kan afvikles i et brugerprogram, kan modificere brugerprogrammet.
Indikation af manglende side og afbrydelse, når lager-25 kortoversættelsen forsøges til en fysisk side, hvis adgangsstyrebit er sat til at angive fraværende side, benyttes til at implementere virtuelt lager. Operativsystemet, som startes af afbrydelsen, bringer den manglende side fra ydre lagre (plader, magnetbånd og sider) 30 ind i det fysiske lager og ændrer oversættelsestabellen i lageret til at tillade adgang samt genstarter brugeren, der nu har adgang til en lokation i lageret, som ikke tidligere fandtes. Det virtuelle lager tillader således, at de logiske adresserum kan være meget større 55
DK 164420 B
end det aktuelle fysiske lager, fordi det fysiske lager således udvides ved hjælp af ydre lagre. Overssttel-se af den 17 bit lange logiske adresse til den 24 bit lange fysiske adresse tilvejebringes ved hjælp af over-5 sættelsestabellen i MAP oversstteiseslageret. Oversst- telsestabellen oversætter logiske sidenumre til fysiske sidenumre, medens adressen inden for en side er uafhængig af, om det er en logisk eller fysisk side. Dette er illustreret på fig. 17, som viser oversættelsen af 10 logisk til fysisk adresse for centralenhederne 201 på P-bussen og organerne 216 for direkte lageradgang på C-bussen, idet lagerkortet er multipleksdelt mellem disse adressefrembringende organer og P-bussen samt C-bussen, således at kun et adressefrembringende organ 15 kan benytte lagerkortet ad gangen. Det adressefrembringen de organ 201 eller 216 på enten P-bussen eller C-bussen, som har kontrol over lagerkortet, adresserer en lokation i det segmentopdelte lager RAM 460 ved hjælp af sit nummer (0 - 4) og ved hjælp af læs/skriv (R/W) 20 ledningen i tilfælde af organer for direkte lageradgang på C-bussen eller ved hjælp af program/data (P/D) ledningen i tilfælde af centralenheder på P-bussen. Den adresserede lokation i RAM 460 frembringer et 6 bit segment-nummer som udgangssignal, hvilket benyttes som adresse 25 A11-A6 til MAP oversættelseslageret 468, hvorved der specificeres en ud af 64 segmentoversættelsestabeller i kortoversættelseslageret 468. Samtidigt benyttes de 6 mest betydende bit 467 af den 16 bit lange adresse fra det adressefrembringende organ som adresse A5-A0 30 til MAP oversættelseslageret, hvorved der specificeres det logiske sidenummer inden for det segment, som skal oversættes, idet den lokation, der udpeges i MAP oversættelseslageret 468, frembringer et udgangssignal i form af et 14 bit fysisk sidenummer 471, 470 (D13-D0) og 35 to adgangsstyrebit 461 (D15, D14) samt bits 460 for 56
DK 164420 B
MAP lagerlokationen (B17, D16). Beliggenheden inden for den logiske side 466 er uændret i forhold til beliggenheden inden for den fysiske side 469. Adresseoversættelsen fra den 17 bit lange logiske adresse til den 24 bit lange fysiske adresse 472 er herefter udført.
Hvis den fysiske adresse 472 er beliggende inden for lagerets første mega ord, reflekteres de fysiske adressebit 0-19 tilbage på bussen, enten P-bussen eller C-bussen for adressering af lageret 203, fig. 5, som er beliggende mellem disse busser. Hvis den fysiske adresse 472 er beliggende mellem 1 og 16 mega ord, udsendes hele den 24 bit lange fysiske adresse til lagerudvidelsesbussen 207 for adressering af lageret 206, fig.
5, som er forbundet til lagerudvidelsesbussen.
Der kan kun skabes adgang til styrelagre, lagerkortover-sættelseslagre, styre/statusregistre i et centralenheds-system (men ikke en del af det fysiske adresserum) ved hjælp af priviligerede læse/skriveinstruktioner, som kun kan afvikles af en centralenhed i systemtilstanden ved hjælp af systemprogrammel, bortset fra*»indlæsning 2^ i lagerkortoversættelseslageret RAM, hvilket kan gøres ved hjælp af mikrokodede behandlingsenheder i styreorganerne for direkte lageradgang og i afbrydeforbehandler-enheden på basis af information i deres styrelagre.
Da denne information oprindeligt var indlæst af opera-2ø tivsystemet, sikres integriteten af alle styrelagre og status/styreregistre i centralenhedssystemet. De priviligerede læse/skriveinstruktioner adresserer styre-lagrene eller styre/statusregistrene direkte uden oversættelse i lagerkortet. Fig. 18 viser de forskellige former for priviligerede læse/skriveinstruktioner: A: En centralenhed 201, læsning/skrivning i MAP oversættelseslageret RAM 468 (adresseoversættelsestabeller) 57
DK 164420 B
eller MAP segmentlagre RAM 460.
B: En centralenhed 201, lasning/skrivning i styrelageret 445 i afbrydeforbehandlerenheden.
C: En centralenhed 201, lasning/skrivning i styrelageret 5 449 for en styreenhed 448 for direkte lageradgang.
D: En centralenhed 201, lasning/skrivning i styrelageret eller status/styreregistrene i et apparat på lagerudvidelsesbussen 209.
E: En afbrydeforbehandler 446, skrivning i MAP oversst-10 telseslageret RAM 468 eller det segmentopdelte lager RAM 460 for opsætning af oversættelse fra logisk til fysisk adresse for en intern direkte lageradgangsoverførsel.
F: En behandlingsenhed 450 (for direkte lageradgang), 15 skrivning i MAP overssttelseslageret RAM 468 eller segmentlageret RAM 460 for opsætning af en oversættelse fra logisk til fysisk adresse for en direkte lageradgangsoverførsel.
58
DK 164420 B
Alle andre tilgange end priviligerede læse/skriveopera- tioner foregår til lageret i centralenhedssystemets fysiske adresserum og foregår altid via centralenheds- systemets lagerkort. Fig. 19 viser forskellige former 5 for lagerkortstyrede dataoverførsler: A: Centralenhed 201 adresserer lageret 203 B: Centralenhed 201 adresserer lageret 206 på lagerudvidelsesbussen C: Intern lager DMA 410 adresserer lageret 203 som 10 datakilde og datadestination.
D: Intern lager DMA 410 adresserer lageret 206 på lagerudvidelsesbussen 209 som datakilde og datadestination .
15 E: Intern lager DMA 410 adresserer lageret 203 som datakilde (eller datadestination) og lageret 206 på lagerudvidelsesbussen 209 som datadestination (eller 20 datakilde).
F: C-bus DMA 405 adresserer lageret 203 som datakilde (eller datadestination) og adresserer lagerforbindelsestilpasningsenhedens 25 409 sendepuffer som datadesti nation (eller tilpasningsenhedens modtagepuffer som datakilde).
G: C-bus DMA 405 adresserer lageret 206 på lager udvidelsesbussen 209 som data- 59
DK 164420 B
kilde (eller datadestination), og adresserer lagerforbindelsestilpasningsenhedens 409 sendepuffer som datadestina- 5 tion (eller tilpasningsenhedens modtagepuffer som datakilde).
Under henvisning til fig. 20, som viser lagerkortet, det indre busarrangement, afbrydeforbehandlingsenheden og den indre lager DMA, vil den detaljerede funktion for disse 10 dele blive beskrevet i det følgende. Centralenhederne på P-bussen 204 vil for at få adgang til lageret via P-bussen sende en P-busforespørgsel ved at sætte lavt signal på PREQ-ledningen svarende til centralenhedsnummeret, hvorved der gives besked til P-busarbitratoren 212, der er indret-15 tet til at vælge én af centralenhederne ved at angive dens nummer i et 3 bits PRG-ord til en vælger 901. Andre styre-enheder for direkte lageradgang på C-bussen, som også ønsker adgang til C-bussen, sætter på lignende måde lavt signal på CREQ-ledningen svarende til DMA-nummeret til 20 C-busarbitratoren 213, som er indrettet til at vælge én af styreenhederne ved at angive dens nummer i et 3 bits CGR-ord til vælgeren 901. Det vil kunne ses, at den interne lager DMA 410 behandles som styreenhed for direkte lageradgang med nummer 0 på C-bussen 205, selv om den 25 operativt er forbundet til den interne bus 215. Som følge af, at i det mindste én centralenhed anmoder om adgang, sender P-busarbitratoren 212 endvidere signalet PR til styreenheden 902, og C-busarbitratoren 213 videresender CR, hvis et organ for direkte lageradgang har anmodet om 30 adgang. Styreenheden 902 vælger et adressefrembringende organ på enten P-bussen eller C-bussen ved at sætte P/C-signalet, hvis det er et P-busorgan, eller slette P/C, hvis det er et C-busorgan, således at der via vælgeren 901 vælges PRG eller CRG til overførsel på GRANT-linjerne 35 i den indre bus 215. Endvidere åbner styreenheden 902 60
DK 164420 B
busisolatoren 209 ved hjælp af OP-signalet (open P-bus), hvis P/C er sat, og hvis P/C er slettet, vælges busisolator 210 ved hjælp af OC-signalet (open C-bus), således at data på GRANT-linjerner i den indre bus 215 nu slippes 5 ud til den valgte P-bus eller C-bus og videre til det valgte adressefrembringende organ, som har sendt forespørgslen, og som ved at genkende sit nummer åbner sine adresse-data og styrelinjer til bussen (P-bussen eller C-bussen). Adresserne fra det valgte adressefrembringende 10 organ er nu tilgængelige på den indre bus 215, og hvis det er en priviligeret læse/skriveoperation, er PRIV-linjen på højt niveau, og den priviligerede læse/skrive-afkoder 903 er indrettet til på basis af adressen AD0-AD15, at frembringe vælgesignaler i afhængighed af posi- 15 tionen for den lokation, til hvilken der søges adgang, således: 1. SRM, hvis adressen findes i det segmenterede lager RAM 460; det segmenterede lagers læse/skrivetilpas-ningsenhed 904 udfører den specificerede adgang.
20 2. MTR, hvis adressen findes i kortoversættelseslageret RAM 468; tilpasningsstyreenheden 905 i oversættelses-lageret udfører den specificerede adgang.
3. IPR, hvis adressen findes i afbrydeforbehandlingsenhedens 446 styrelager 445; afbrydeforbehandlerens 25 tilpasningskredsløb 906 udfører den specificerede adgang.
4. EXT, hvis adressen findes i styrelageret eller styre/ status-registrene i lagerudvidelsesbussen 207; EXT åbner busisolatoren 211 til udvidelsesbussen 207 for 30 overføring af adresse, signaler og data fra den indre bus 215.
61
DK 164420 B
5. CCR, huis adressen findes i styrelageret eller styre/status-registrene på C-bussen 205; CCR åbner busisolatoren 210 for passage af adresser, signaler og data fra den indre bus.
5 Styreenheden 902 overvåger signalerne på den indre bus og lukker busisolatorerne 209, 210, 211 efter priviligerede læse/skriveoperationer, hvorefter arbitrerings-cyklus gentages.
Hvis det udvalgte, adressefrembringende organ ikke for-10 søgte en priviligeret læse/skriveoperation, men en kort- styret dataoverførsel (PRIV-ledningen på lavt niveau), vil styreenheden indføre adresselinjesignalerne AD10-AD15 (logisk sidenummer) i et låseregister 908 for A0-A5 adressering af MAP-oversættelseslageret RAM 468, og 15 endvidere vælger vælgeren 903 i afhængighed af P/C enten buslinjen P/D, som angiver om program eller data søges tilgængelig fra en centralenhed, eller buslinjen R/W, som angiver en læse- eller skriveadgang fra en styre-enhed for direkte lageradgang. Det valgte signal kombi-20 neres tillige med selve P/C signalet med det 3 bit store GRANT-ord for adressering af det segmenterede lager RAM 460 (A0-A4), hvis udgangssignal angiver adresser A6-All til MAP oversættelseslageret RAM 468, som specificerer segmentnummeret. Udgangssignalet fra MAP oversættetses-25 lageret RAM 468 er det fysiske sidenummer D0-D13, som fastholdes af styreenheden 902 i låsekredsløbet 909, medens paritets- og adgangsstyrebit D14-D17 ledes til et styrekredsløb 910, som er indrettet til, hvis der findes en paritetsfejl, eller hvis læsning eller skrivning 30 forsøges i en beskyttet side eller i en manglende side, at initiere, at en afbrydeindikerende årsag overføres til en afbrydemodtager 911, og styreenheden 902 afslutter adgangen.
62
DK 164420 B
Hvis der ikke er nogen sidefejl, sætter styreenheden 902 HADD busledningen, hvorved senderne for adressen AD10-19 i de adressefrembringende organer på P-bussen eller C-bus-sen drives til høj impedans. Når der er højt signal på 5 HADD ledningen reverseres tovejsbusdrivkredsløbene i bus- isolatorerne 209 eller 210 gældende for AD10-AD19 linjerne på den valgte P-bus eller C-bus, og bussen er nu drevet af låseregisteret 909 og indeholder det fysiske sidenummer, og da adresserne AD0-AD9 ikke ændres ved logisk til fysisk 10 adresseoversættelse, holder det adressefrembringende organs bus faktisk den komplette fysiske adresse for adgang til lageret 203, fig. 19. Et prøvekredsløb 912 for AD20-AD23 åbner busisolatoren 211, hvis den fysiske adresselokation findes i området 1-16M af lageret 206, fig. 19, som er for-15 bundet til lagerudvidelsesbussen 207, således at den 24 bit lange fysiske adresse udsendes til lagerudvidelsesbussen 207. Styreenheden 902 overvåger signaler på den indre bus, og ved afslutning af lagerkortoverførslen lukker styreenheden busisolatorerne 209, 210, 211, hvorefter arbitre-20 ringscyklus gentages. Afbrydeforbehandlingsenheden 446 har til formål at forbehandle alle afbrydelser, som er frembragt i centralenhedssystemet for at opnå, at centralenhederne kun afbrydes af kvalificerede afbrydelser, som vil blive forklaret i det følgende. Under henvisning til fig.
25 20 modtager afbrydeforbehandlingsenheden 446 afbrydelser med tilhørende afbrydevektor fra afbrydemodtageren 911, idet afbrydelser CIRT udgår fra organer på C-bussen 205, afbrydelser EIRT udgår fra organer på udvidelsesbussen 207, og som tidligere forklaret behandles også afbrydelser fra 30 paritets- og kontrolkredsløbet 910. En afbrydevektor er et 10 bit ord, som indeholder nummeret på det organ (eller grunden), som har givet anledning til afbrydelsen, samt indeholder en prioritet for afbrydelsen. Afbrydeforbehandlingsenhedens styrelager 445 indeholder en lokation, som 35 har prioritets- og maskebit for hver af de .arbejdende centralenheder, og hver afbrydevektor, som ankommer til af- 63
DK 164420 B
brydemodtageren 911, sammenlignes i forbehandlingsenheden 446 med de ovennævnte lokationer, der indeholder prioritet for de løbende programmelprocesser, der er under afvikling i hver af centralenhederne. Hvis prioriteten for en ankom-5 mende afbrydevektor er større end prioriteten for den lø bende programproces på en eller flere centralenheder, som ikke har sat maskebit'et, vil afbrydeforbehandlingsenheden 446 afbryde én af centralenhederne, som derefter henter afbrydevektoren ved priviligeret læsning i styrelageret 445.
10 Hvis prioriteten for den modtagne afbrydelse er lavere end prioriteten for enhver af centralenhederne, lagres afbrydelsen i styrelageret 445, indtil prioriteten tfor centralenhederne falder til en værdi, som er lavere end værdien for den lagrede afbrydelse, hvorefter afbrydeforbehandleren 15 446 afbryder den valgte centralenhed som tidligere beskrevet.
Formålet med det indre DMA-kredsløb 410 er at flytte en blok af kontinuerlige dataord fra én del af centralenhedssystemets lager til en anden del af centralenhedssystemets lager. Under henvisning til fig. 20 lagrer centralenhederne 20 ved hjælp af priviligerede skriveoperationer styreblokke, som definerer interne DMA-overførsler, via det interne DMA-lager 410 i styrelageret 445. En indre DMA-styreblok, som definerer flytning af op til 64 K ord, omfatter: en logisk begyndelsesadresse i lageret, hvorfra data skal hentes, 25 en logisk begyndelsesadresse i lageret, hvortil data skal flyttes, og en ordtælleværdi, som angiver størrelsen af den datablok, som skal flyttes. Styreblokken omfatter endvidere to oversættelsestabellister, der definerer oversættelsen fra logisk til fysisk adresse, gældende for det 30 logiske adresserum, hvorfra dataordene skal flyttes, og for det logiske adresserum, hvortil dataordene skal flyttes.
Afbryde forbehandlingsenheden 446 sætter en datablokbevægelse op, sommer defineret ved hjælp af den ovennævnte styreblok således: ved at overføre dataordene gennem registeret 913 35 og ved adressering af MAP-oversættelseslageret RAM 468 gennem det indre DMA-kredsløb 410 indfører afbrydeforbehand- 64
DK 164420 B
lingsenheden de ovennævnte to oversættelseslister for styreblokken i MAP-oversættelseslageret RAM 468 i de læse- og skrivesegmenter, der er defineret for den indre DMA. Afbrydeforbehandlingsenheden indfører endvidere 5 den logiske begyndelsesadresse og ordtælleværdien i det indre DMA kredsløb 410, som nu, ved at tælle begyndelsesadressen op og ved at benytte registeret 913 som mellemlager for dataordene i løbet af overførslen, flytter dataordene ord for ord fra det ene område til det 10 andet, idet ordtælleværdien tælles ned hver gang, indtil den bliver nul, hvorefter afbrydeforbehandlingsenheden 446 får besked om, at overførslen af datablokken er tilendebragt .
Ydre styresystem 15 Under henvisning til fig. 21 og 22 vil det ydre styre system nu blive beskrevet. Fig. 21 viser en udførelses form for det ydre styresystem ifølge opfindelsen, hvilket typisk er indeholdt i en kasse (trykt kredsløbskortkasse), som er forbundet til lagerudvidelsesbusserne 20 ved hjælp af tilpasningskredsløb (CIA). På fig. 21 er vist N+l ydre styreenheder, som hver hører sammen med et lager med tilfældig adgang (RAM) og en omskiftertilpasningsenhed. På fig. 22 er en enkelt ydre styre-enhed og dens tilhørende komponenter vist i nærmere 25 detaljer for at forklare virkemåden.
Den kortkasse, som fremgår af fig. 21, omfatter en A-bus 601 og en B-bus 602, der er forbundet til en respektiv lagerudvidelsesbus via tilpasningskredløb 603 og 604, og som er forbundet til særskilte strømforsyninger 605 30 og 606. Ifølge opfindelsen er hver ydre styreenhed, f.eks.
607, forbundet direkte til et lager 608 med tre porte, hvor én port er forbundet til A-bussen, medens en anden port er forbundet til B-bussen. På fig. 21 er der også 65
DK 164420 B
vist en konfigurationsstyretilpasningsenhed 609, som via en konfigurationsbus er forbundet til en konfigurationsstyreenhed, som vil blive beskrevet senere. Nævnte konfigurationsstyreenhed, som overvåger det totale system, 5 modtager tilstandsinformation fra forskellige moduler og detekterer f.eks. strømforsyningerne 605 og 606 via ledningerne henholdsvis PA og PB og overvåger den tilhørende styretilpasningsenhed og konfigurationsbus. Konfigurationsstyreenheden modtager også information fra centralenheds-10 systemet, hvilken information f.eks. kan omfatte en med delelse vedrørende manglende data eller datafejl fra indgående telekommunikationslinjer, såsom nummer N. Sådanne meddelelser frembringes fortrinsvis ved hjælp af applikationsprogrammel og håndteres således af konfigurations-15 styreenheden, at et reservevælgesignal udsendes til om skiftertilpasningsenheden 610 (nr. N), som indeholder i og for sig kendte transistoromskifteorganer i hver busledning, som er indrettet til at afbryde telekommunikationslinjernes forbindelse til styreenhed nr. N og i stedet 20 forbinde disse linjer til en fælles reservestyreenhed nr.
N+l, når reservevælgesignalet modtages.
Det beskrevne arrangement reducerer ifølge opfindelsen fejl-følsomheden bemærkelsesværdigt i forhold til kendte principper. Systemets tilslutningskapacitet forbedres også, 25 idet det på fig. 21 viste lager er opdelt i kamre, således at en lagerfraktion kun er overgivet til en enkelt, tilhørende ydre styreenhed. Det er velkendt, at størstedelen af signalbehandlingen i forbindelse med telekommunikationsdata omfatter fortolkning af data og fastslåelse af deres 30 bestemmelsessted. Disse funktioner kan udføres af de ydre styreenheder på grund af den stadige samvirkning med det tilhørende lager, og uden at centralenhederne skal indblandes, hvorefter de forbehandlede data lagres i lageret, hvor de er klar for overførsel til f.eks. et andet central-35 enhedssystem. Fortolkningen af telekommunikationsdata om- 66
DK 164420 B
fatter afvikling af omfattende programmel i overénsstemmelse med moderne kommunikationsprotokoller. Ved at indlæse programmer hørende til en specifik kommunikationsprotokol i lagerkammeret for den ydre styreenhed, som betjener 5 kommunikationslinjerne i overensstemmelse med nævnte protokol, kan der opnås en standardisering af indgangs-linjerne. Det er endvidere vigtigt, at lageret for den ydre styreenhed nr. N+l, i tilfælde af den nævnte omskiftning til den ydre styreenhed nr. N+l, kan modtage 10 protokolprogrammerne svarende til programmerne for den fejlramte ydre styreenhed.
Under henvisning til fig. 22 vil der blive forklaret nærmere detaljer ved den ydre styreenhed. Figuren viser dele af A-bussen, B-bussen, lagerudvidelsesbusserne og 15 kortkassetilpasningsenhederne, som er beskrevet ovenfor.
Lageret 608 ses at være forbundet til A-bussen og B-bussen via tilpasningskredsløb henholdsvis 611 og 612. Endvidere er der vist et konfigurationsstyreregister 613, en strøm-begrænser 614, et ydre apparat 615, en afbrydestyreenhed 20 616, styre/statusregistre 617 og dioder 618, 619.
Hovedstyreledninger og datastyreledninger er vist på figuren, hvor signalretningerne er angivet ved pile.
Det vil kunne forstås, at der kun er vist sådanne komponenter og ledninger, som er nødvendige i forbindelse 25 med den nedenstående forklaring af opfindelsen.
Konfigurationsstyreregisteret 613 er styret på forskellige måder til deaktivering af enten A-bussen eller B-bussen.
Hvis konfigurationsstyreenheden detekterer en fejl i det multiprocessorsystem, hvis lagerudvidelsesbus er forbundet 30 til A-bussen, vil konfigurationsstyreenheden afgive et deaktiveringssignal DA til konfigurationsstyreregisteret 613, hvilket medfører, at A-bussens tilpasningskredsløb 611 afbrydes fra A-bussen, bortset fra den skraverede del 67
DK 164420 B
af tilpasningskredsløbet 611, hvilken del og en tilsvarende del af B-bustilpasningskredsløbet også er forbundet til indgangene på konfigurationsstyreregisteret 613 via ledninger henholdsvis da og db. DA-signalet undertrykker 5 også da-signalet, foruden at det deaktiverer A-bustilpas- ningskredsløbet. Hvis signalerne da og db ikke er tilsidesat af signalerne henholdsvis DA og DB, styrer de registeret 613 til at aktivere eller deaktivere bustilpasningskredsløbene 611 eller 612, dvs. at bust ilpasnings-10 kredsløbet kan styres direkte af centralenhederne. Det fremgår af figuren, at afbrydesignaler fra afbrydestyreenheden 616 og dataoverførsler til og fra styre/status-registeret 617 aldrig transmitteres via et deaktiveret bustilpasningskredsløb. Det er således muligt, at begge 15 centralenhedssystemer kan have adgang til lageret 608, hvilket styres af centralenhedssystemerne selv eller af et overvågningssystem. Den aktuelle drift fremgår af styre/statusregisteret 617, således at et centralenhedssystem kan blive bekendt med funktionen for det andet 20 centralenhedssystem eller med handlinger hidrørende fra konfigurationsstyreenheden samt kan blive bekendt med driften af en ydre styreenhed 607. Eksempelvis holder registeret 617 resultatet af en selvkontrollerende rutine i den ydre styreenhed. Hvis omskiftertilpasningsenheden 25 610 (fig. 21) skiftes om fra ydre styreenhed nr. N til ydre styreenhed nr. N+l, vil omskiftetilstandene være lagret i disse ydre styreenheders statusregistre, således at hvert af centralenhedssystemerne ved, hvorfra de kan hente, eller hvortil de kan bringe data. 1 2 3 4 5 6
Den N+l redundans, som fremgår af fig. 21, kombineret med 2 den omskiftelige adgang til lageret 608 fra to central- 3 enhedssystemer medfører en væsentlig forbedring i forhold 4 til den kendte teknik med hensyn til tilslutningskapacitet 5 og fejltolerance. For yderligere at forbedre pålidelig- 6 heden findes der som vist på fig. 22 en dobbelt strømfor- 68
DK 164420 B
syning. Dobbelte strømforsyninger er sædvanligvis forbundet til de forbrugende apparater via dioder 618, 619 uden den viste strømbegrænser 614, hvorved en kortslutning i det ene apparat vil deaktivere hele kortkassen 5 på fig. 21 (dvs. begge strømforsyninger trækkes ned via dioderne 618, 614). Denne ulempe er undgået ved hjælp af den viste strømbegrænser 674.
Konfigurationsstyrebehandlinq
Under henvisning til fig. 23 og 24 vil der nu blive for-10 klaret nogle detaljer vedrørende konfigurationsstyre- behandlingen. Under forklaringen af fig. 21 har det allerede været antaget, at der findes en konfigurationsstyreenhed, hvilken styreenhed er vist på fig. 23.
Konfigurationsstyreenheden CCP 701 på fig. 23 er en sær-15 skilt behandlingsenhed, som dels er forbundet til to eller flere centralenhedssystemer for modtagelse af information og dels er forbundet til et flertal, ved den foretrukne udførelsesform maksimalt 64, kortkassekonfigurationsstyre-tilpasningsenheder 702, som er vist mere detaljeret på 20 fig. '24, via en konfigurationsbus 703, der også er for bundet til et manuelt reservepanel MBP 704. De ovennævnte komponenter medfører en forbedring af den totale funktion af multiprocessordatamatsystemet ifølge opfindelsen, idet et fejlramt centralenhedssystem ikke kan bevirke en u-25 tilsigtet rekonfiguration af datamatsystemet, fordi kon figurationsstyreenheden er fejlsikker på grund af det manuelle reservepanel. Det manuelle reservepanel sørger også for overvågning og fremvisning af fejl. Fig. 23 og 24 viser kun et eksempel på, hvorledes konfigurations-30 systemet kan være indrettet, idet det vil kunne forstås, at det kan implementeres på andre måder inden for opfindelsens rammer.
69
DK 164420 B
CCP-enheden 701 er indrettet til at modtage information fra mindst to centralenhedssystemer vedrørende enhver mangel i disse systemer og til at træffe en afgørelse om behovet for at udelukke en del af datamatsystemet.
5 Informationen, som modtages af CCP-enheden, kan være frembragt adskillige steder rundt om i et centralenheds-system, men det foretrækkes at forbinde CCP-enheden til afbrydeforbehandlingsenheden (14, fig. 2) i det relevante centralenhedssystem via en respektiv ledning for duplex 10 seriebitoverførsel. Enhver ændring kan udlæses på en skriver, der er vist skematisk på figuren.
Styring og overvågning af de tilsluttede kortkassekonfigu-rationstilpasningsenheder opnås via seriekonfigurationsbussen 703 ved hjælp af CCP-enheden eller MBP-enheden 13 under benyttelse af alternative veje 705, 706 af bussen 703. Kun én vej er aktiv ad gangen, idet den aktive vej er bestemt automatisk eller manuelt ved hjælp af samvirkende vælgerorganer i CCP-enheden og MBP-enheden. l/ælger-organerne i CCP-enheden omfatter en monostabil multi-20 vibrator 707, som driver en omskifter 708, der er serie- forbundet med magnetiseringsviklingen i et relæ, som styrer omskifterne 709, 710. Vælgerorganerne i MBP-enheden omfatter en manuel omskifter 711 og omfatter en omskifter 712, der er drevet af et relæ, hvis magneti-23 seringsvikling aktiveres via omskifterne 709, 711. Som vist på figuren er hver af omskifterne 710 og 712 faktisk et sæt af omskiftere, der er indbyrdes forbundne via en respektiv af et flertal af ledninger, der udgør hver vej 706 eller 705. Når omskifteren 711 er i den automatiske 30 stilling som vist på figuren, og når det antages, at om skifteren 708 er sluttet, vil magnetiseringsviklingen drives af en +5 volts forsyning, der er forbundet til omskifteren 711. Omskifteren 708 er styret af en monostabil multivibrator 707 og er sluttet, så længe multi-35 vibratoren 707 gentrigges inden for et forudbestemt tids- 70
DK 164420 B
rum. Multivibratoren trigges kun, når en repetitivt selvkontrollerende rutine i CCP-enheden har bekræftet korrekt drift, dvs. at omskifteren 708 vil blive åbnet, hvis der detekteres en fejl i CCP-enheden. Når omskif-5 teren 708 åbnes, vil relæet i CCP-enheden blive deakti- veret, hvorved dels vejen 706 vil blive afbrudt af omskifteren 710, og dels vil relæet i MBP-enheden blive deaktiveret, således at omskifteren 712 slutter vejen 705, hvilket medfører, at kortkassekonfigurationstil-10 pasningsenhederne gives over til MBP-enheden fra CCP- enheden .
Den manuelle reservepanelenhed 704 omfatter et flertal af omskiftere 713, som er manuelt indstillelige til at definere en forudbestemt konfiguration af det totale 15 system. MBP-enheden indeholder også skanderingsorganer (ikke vist), som er indrettet til at skandere stillingerne for de nævnte omskiftere for umiddelbar udlæsning af tilsvarende konfigurationsinformation til konfigurationstilpasningsenhederne 702, når omskifteren 712 sluttes. Om-20 skifteren 711 er også manuelt betjent og har i den manu elle stilling overvægt i forhold til multivibratoren 707, således at konfigurationstilpasningsenhederne overgives til at blive styret af MBP-enheden. Dette er et vigtigt træk, når CCP-enheden afbrydes i tilfælde af service.
25 Indstilling af omskifteren 711 i den manuelle stilling vil blive detekteret af afbrydeforbehandlingsenheden, der er følsom over for bagkanten af +5 volts signalet.
På fig. 24 er der vist en foretrukken udførelsesform for kortkassekonfigurationstilpasningsenheden 702, som er 30 vist skematisk forbundet til konfigurationsbussen 703 fra fig. 23. Bortset fra ledninger, som ikke har betydning for den følgende beskrivelse, ses vejen 706 i konfigurationsbussen 703 at omfatte fem ledninger, nemlig to ledninger, ved hjælp af hvilke konfigurationstilpas- 71
DK 164420 B
ningsenheden kan modtage seriesignaler, og tre ledninger, ved hjælp af hvilke konfigurationstilpasningsenheden kan udsende seriesignaler. De modtagne signaler er frembragt ved hjælp af en sender 720 i CCP-enheden, og overføres 5 til en serietransceiver 721 i konfigurationstilpasnings- enheden via en optokobler 722. Signaler udsendes fra serietransceiveren 721 via en optokobler 723, der strøm-forsynes fra én af de nævnte tre ledninger, idet de resterende to ledninger er forbundet til en busmodtager 724 10 i CCP-enheden. Bussenderen, busmodtageren og optokoblerne er konventionelle komponenter og vil derfor ikke blive nærmere beskrevet. Det skal dog bemærkes, at der derved opnås galvanisk adskillelse af konfigurationsbussen fra hver af konfigurationstilpasningsenhederne. Det vil kunne 15 forstås, at optokoblerne 725 og 726 er forbundet til re spektive ledninger i vejen 705.
Styresignalerne, som modtages af serietransceiveren 721 via et konventionelt optrådet OR-kredsløb omsættes til et flertal af udgangsledninger, der er vist til højre 20 på fig. 24. De øverste fem ledninger kan eksempelvis ud gøre den på fig. 21 viste reservevælgebus, som skal udvælge én ud af maksimalt 16 omskiftertilpasningsenheder 610 til at blive afbrudt fra en tilhørende ydre styre-enhed og i stedet blive forbundet til en fælles reserve-25 styreenhed, når omskiftesignalet rejses. Andre udgående ledninger kan være ledningerne DA, DB fra fig. 22 for deaktivering af enten A-bustilpasningskredsløbet 611 eller B-bustilpasningskredsløbet 612, hvor der er behov for ialt 34 ledninger for at styre op til 16+1 kammer-30 opdelte lagre 608. Andre udgående ledninger kan være forbundet til transceivere 312, 313 i lagerforbindelsestilpasningsenhederne fra fig. 10 for deaktivering af disse tilpasningsenheder. Konfigurationstilpasningsenhederne er også indrettet til at modtage kontrolsignaler 35 og til at sende disse signaler til konfigurationsbussen.
72
DK 164420 B
Eksempelvis kan der frembringes et tænd/sluksignal ved hjælp af en pressostat til indikering af trykforskellen over en køleventilator, hvilket signal overføres direkte til serietransceiveren 721, medens analoge signaler kan 5 modtages via A/D-omsætteren og multiplexeren 727- Eksempler på analoge ledninger er ledningerne PA, PB (fig- 21) for detektering af spænding og/eller strøm i strømforsyningen, og der kan forefindes flere ledninger for afprøvning af kortkassetemperaturer med videre. Kontrol-10 signalerne transmitteres af serietransceiveren 721 via et konventionelt drivkredsløb til konfigurationsstyreenheden, hvor signalerne fortolkes, hvis omskifteren 710 er sluttet. Hvis omskifteren 712 imidlertid er sluttet, vil der ikke blive foretaget noget bortset fra fremvis-15 ning af tilstanden.
Der vil nu blive givet nogle få eksempler på konfigurationsstyreenhedens virkemåde. Idet det antages, at et centralenhedssystem har afsløret en fejl ved hjælp af sine selv-kontrollerende rutiner, vil der blive sendt en meddelelse 20 via afbrydeforbehandlingsenheden i dette centralenheds- system til den tilhørende konfigurations styreenhed, som har programmer og tabeller for analysering af meddelelsen med henblik på at beslutte delvis eller total afbrydelse af dette centralenhedssystem fra multiprocessordatamat-25 systemet. Hvis det besluttes kun at afbryde centralenheds- systemet fra lagerforbindelsesnetværket, vil konfigurationsstyreenheden udsende en meddelelse, der er adresseret til den kortkassekonfigurationstilpasningsenhed, der er relevant, og instruere denne tilpasningsenhed om at afbryde 30 alle lagerforbindelsestilpasningsenheder (fig. 10) ved at deaktivere de respektive transceivere. Hvis centralenheds-systemet skal afbrydes fuldstændigt, frembringes., der. en meddelelse ved hjælp af kon.figurationsstyreenheden, som instruerer den relevante konfigurationstilpasnings-35 enhed om at hæve signaltilstanden for DA (fig. 22) 73
DK 164420 B
for hvert kammeropdelte lager, således at dette afbrydes helt fra forbindelse med A-bussen, som hører til det fejlramte centralenhedssystem· Som et andet eksempel kunne en centralenhedsprotokol afsløre en fejl i en 5 ydre enhed, f.eks. enheden 607 på fig. 21. Dette ville medføre, at konfigurationsstyreenheden instruerer den relevante konfigurationstilpasningsenhed om at udsende adressen på den tilhørende omskiftertilpasningsenhed 610 vis reservevælgebussen tillige med et aktiverings-10 signal for skiftning af omskiftetilpasningsenheden over
til den fælles, ydre reservestyreenhed som tidligere forklaret i forbindelse med fig. 21. Kommunikationen mellem kortkassekonfigurationstilpasningsenhederne og konfigurationsstyreenheden, der er fælles for disse tilpasnings-15 enheder, tilvejebringes fortrinsvis i to tilstande. I
sendetilstanden udsender CCP-enheden to bytes, hvor det første byte angiver kortkasseadressen for den relevante konfigurationstilpasningsenhed, medens den anden byte definerer den instruktion, som skal sendes ud til kon-20 figurationstilpasningsenheden. I modtagetilstanden ud sender CCP-enheden også to bytes, hvor den første byte angiver kortkasseadressen for den relevante konfigurationstilpasningsenhed, medens den anden byte identificerer en kombination af indgående signaler til serietransceiveren 25 721, som skal overføres til CCP-enheden for overvågning.
CCP-enheden kan derved overvåge specifikke tilstande i hele systemet, f.eks. strømforsyningernes spænding.
Alternativt kunne konfigurationsstyrebehandlingen afvikles ved hjælp af et centralenhedssystemt af den be-30 skrevne art, og som er indbyrdes forbundne med de andre centralenhedssystemer i multiprocessordatamatsystemet via lagerforbindelsesnetværket.

Claims (25)

  1. 74 DK 164420 B
  2. 1. Multiprocessordatamatsystem med et flertal af centralenhedssystemer (N, P, R i fig. 3), der hver omfatter (a) mindst én centralenhed (1 i fig. 2, 201 i fig. 5) 5 til at behandle data i afhængighed af instruktioner, og indrettet til at kunne frembringe adresseinformation, (b) lagerorganer (2, 5 i fig. 2) til at lagre data, (c) busorganer (6, 8 i fig. 2) til at overføre data mellem nævnte centralenhed (1) og lagerorganerne (5), 10 og (d) ydre styreenhedsorganer (15 i fig. 2) til at kommunikere data eksternt med datamatsystemet, og omfattende et lager forbindelsesnetværk (fig. 1, 3; 370 fig. 12. til at overføre data eksternt med centralenheds-15 systemet, kendetegnet ved, (A) at i det mindste en del af lagerorganerne udgør et fælles lager (5 i fig. 2) med separate ind- og udgange til forbindelse med busorganerne (8) i mindst 20 to af nævnte flertal af centralenhedssystemer, hvor forbindelsen tillader, at det fælles lager deles mellem centralenhedssystemernej (B) at mindst en del af det fælles lager udgør et kammeropbygget lager, der er opdelt i et antal separate 25 lagerkamre (608 i fig. 21 og 22), hvilke lagerkamre 75 DK 164420 B har en respektiv dataoverføringsport (til henholdsvis bus 601 og 601); (C) at mindst ét ydre styreenhedsorgan (15 i fig. 2) er knyttet til mindst ét af centralenhedssystemerne 5 (N, P, R), og indrettet til at kunne forbindes med en ydre enhed (615 i fig. 22), hvor hvert ydre styreenhedsorgan (15) er forbundet til et forudvalgt lagerkammer (608) i det fælles lager (5) gennem den med det valgte lagerkammer tilknyttede dataoverføringsport, 10 hvilke styreenhedsorganer (15) er indrettet til at kunne frembringe adresseninformation og i afhængighed heraf at styre overførslen mellem den ydre enhed og det forudvalgte kammer (608) i det fælles lager (5); (D) at lagerforbindelsesnetværket (fig. 1, 3; 370 i 15 fig. 12) omfatter et flertal af lagerforbindelsesor ganer (21, 22 i fig. 2) til forbindelse med nævnte flertal af centralenhedssystemer via forbindelsestilpasningsenheder (19, 20 i fig. 2) til at overføre data mellem centralenhedssystemernes lagerorganer (2-5 i fig. 2); 20 (E) at organer for direkte lageradgang (17, 18 i fig. 2; 345, 346 i fig. 12) er knyttet til forbindelsestilpasningsorganerne (19, 20), og er indrettet til at kunne frembringe adresseinformation til styring af dataoverførslen mellem forbindelsestilpasningsenhederne 25 (19, 20) og dele af nævnte lagerorganer via busorganerne uden indblanding fra centralenheder; og (F) at tilpasningsstyreorganer (352 i fig. 12) for direkte lageradgang er forbundet til lagerforbindelses-netværket via forbindelsestilpasningsenhederne (19, 30 20), til styring af adgangen til lagrene (2-5) i hvert af centralenhedssystemerne via organer for direkte lageradgang (17, 18), hvilke tilpasningsstyreorganer (352) 76 DK 164420 B for direkte lageradgang er indrettet til at kunne udføre multiplexoverførsel af data over lagerforbindelsesnetværket, samt at kunne etablere logisk forbindelse mellem mindst to udvalgte forbindelsestilpasningsenhe-5 der (19, 20) i tilknyttede centralenhedssystemer til nævnte lagerforbindelsesnetværk i afhængighed af adresseinformationer, og multiplexoverføre data mellem de tilknyttede centralenhedssystemers lagerorganer over lagerforbindelsesnetværket uden indblanding fra de til-10 knyttede centralenheder.
  3. 2. Multiprocessordatamatsystem ifølge krav 1, k e n- detegnet ved, at busorganerne (7 i fig. 2) for mindst to centralenhedssystemer er uden direkte forbindelse med hinanden, men alene er forbundet til andre 15 centralenhedssystemers busorganer (7).
  4. 3. Multiprocessordatamatsystem ifølge krav 2, k e n- d e;t egnet ved, at i det mindste to af nævnte flertal af centralenhedssystemer er parallelforbundet med nævnte forbindelsestilpasningsenheder (fig. 3). 20 4.iMultiprocessordatamatsystem ifølge krav 2, k e n- detegnet ved, at nævnte flertal af centralenheds-systemer er serieforbundet i forhold til forbindelsestilpasningsenhederne (fig. 4).
  5. 5. Multiprocessordatamatsystem ifølge krav 1, k e n- 25 detegnet ved, at i det mindste ét af centralen hedssystemerne omfatter mindst to uafhængigt arbejdende centralenheder (1 i fig. 2).
  6. 6. Multiprocessordatamatsystem ifølge krav 1, kendetegnet ved, at forbindelsestilpasningsenheder- 30 ne (19, 20 i fig. 2) omfatter arbitreringsorganer (fig. 10. til operativ forbindelse af forbindelsestilpasnings- 77 DK 164420 B enhederne til en lagerforbindelse for at styre adgangen (contention) og dataoverførslen over forbindelsestilpasningsenhederne.
  7. 7. Multiprocessordatamatsystem ifølge krav 1, k e n- 5 detegnet ved, at det kammeropdelte lager omfat ter et reservelagerkammer (RAM, fælles reserve i fig. 21), og at multiprocessordatamatsystemet yderligere omfatter mindst én ydre reservestyreenhed (N + 1 i fig. 21. til forbindelse med busorganerne (8) i mindst ét 10 af nævnte centralenhedssystemer gennem reservelager- kammeret, konfigurationsstyreorganer (fig. 23) til at overvåge fejl i en gruppe af komponenter, der omfatter nævnte lagerkamre og nævnte ydre styreenheder, og til frembringelse af rekonfigurationsinformation som svar 15 på en fejl (se fig. 22), og konfigurationstilpasnings enheder (609 i fig. 21), der er indrettet til, i afhængighed af rekonfigurationsinformationen, at substituere nævnte ydre reservestyreenhed (N + 1) og dens reservelagerkammer (RAM) i stedet for en fejlbehæftet ydre 20 styreenhed og dens lagerkammer.
  8. 8. Multiprocessordatamatsystem ifølge krav 7, k e n-detegnet ved, at lagerforbindelsestilpasningsenhederne (19, 20 i fig. 2) omfatter aktivering/deak-tiveringsorganer, der er forbundet til en respektiv 25 konfigurationstilpasningsenhed (se fig. 24), således at konfigurationstilpasningsenheden kan afbryde de respektive busorganer fra lagerforbindelsesnetværket.
  9. 9. Multiprocessordatamatsystem ifølge krav 7, og yderligere omfattende busseparatorer, kendetegnet 30 ved, at i det mindste en del (608) af nævnte lagerorganer er adresserbare med adresseinformationen, og er forbundet til busorganerne (8) i mindst ét centralenhedssystem via særskilte busseparatorer (611, 612 i 78 DK 164420 B fig- 22), således at hver del af lagerorganet kan aktiveres og deaktiveres med konfigurationtilpasningsenhederne (DA, DB 613 i fig. 22).
  10. 10. Multiprocessordatamatsystem ifølge krav 9, k e n- 5 detegnet ved, at respektive dele af første lager-organer er individuelt strømforsynet fra mindst to særskilte strømforsyninger (618, 619 i fig. 22).
  11. 11. Multiprocessordatamatsystem ifølge krav 7, k e n-detegnet ved, at konfigurationstilpasningsen- 10 hederne omfatter en konfigurationsbus (703 i fig. 23) til at overføre konfigurationsinformation, hvilken konfigurationsbus er galvanisk adskilt (722 i fig. 24) fra konfigurationstilpasningsenhederne.
  12. 12. Multiprocessordatamatsystem ifølge krav 7, k e n- 15 detegnet ved, at konfigurationstilpasningsenhe derne yderligere omfatter indgange (727 i fig. 24) til at modtage information fra detektororganer, der er fordelt rundt om i multiprocessordatamatsystemet til at overvåge driftsbetingelser og detektere fejl i multi- 20 processordatamatsystemet, hvor indgange er tilgænge lige via konfigurationstilpasningsenheden (721) og via konfigurationsbussen (703 i fig. 23) med konfigurationsstyreenheden (701) for at overvåge driftsbetingelser og fejl, og for i afhængighed heraf at frembringe re-25 konfigurationsinformation.
  13. 13. Multiprocessordatamatsystem ifølge krav 12, ken detegnet ved, at driftsbetingelserne, der overvåges, omfatter spænding, strøm og temperatur i mindst én del af multiprocessordatamatsystemet. 1
  14. 14. Multiprocessordatamatsystem ifølge krav 7, ken detegnet ved, at det yderligere omfatter en re- 79 DK 164420 B servestyreenhed (back-up 704 i fig. 23), der er forbundet til konfigurationsbussen (703), der har redundante veje, der er forbundet særskilt til konfigurationsstyreenheden (701) og til reservestyreenheden (704), 5 og at der findes omskifterorganer (709, 710), som er indrettet til, i afhængighed af fejl i konfigurationsstyreenheden, at aktivere en af vejene og deaktivere en anden af vejene.
  15. 13. Multiprocessordatamatsystem ifølge krav 14, ken detegnet ved, at reservestyreenheden (704) omfatter et flertal af manuelt indstillelige omskiftere (713), hvis stillinger definerer en forudbestemt konfiguration af multiprocessordatamatsystemet, og at der 15 findes skanderingsorganer, der er indrettet til at skan dere omskifternes stillinger, og til at overføre tilsvarende konfigurationsinformation til en respektiv konfigurationsbus gennem aktiveret vej i denne.
  16. 16. Multiprocessordatamatsystem ifølge krav 14, k e n- 20 detegnet ved, at reservestyreenheden omfatter en manuelt indstillelig omskifter (711 i fig. 23), der tilsidesætter nævnte omskifterorganers stilling.
  17. 17. Multiprocessordatamatsystem'ifølge krav 7, k e n-detegnet ved, at det omfatter et flertal af om- 25 skiftermoduler (610 i fig. 21), der i'antal er en mindre end antallet af ydre styreenheder, og som er styret af en respektiv af de nævnte konfigurationstilpasningsenheder (609), et flertal ydre enheder, der er forbundet via respektive omskiftermoduler til gruppen af ydre 30 styreenheder, når omskiftermodulerne er indstillet i en første stilling, og ydre reservestyreenheder (N + 1), der forbindes til de ydre enheder hørende til et forudbestemt omskiftermodul, når dette er indstillet i en anden stilling. 80 DK 164420 B
  18. 18. Centralenhedssystem til et multiprocessordatamat-system ifølge krav 1, og omfattende mindst ét adresse-frembringende organ foruden centralenheden til at frembringe adresseinformation og til at overføre og lagre 5 data, kendetegnet ved, at det omfatter primære busorganer (6 i fig. 2) tilknyttet centralenhederne (1) og en første del (2) af nævnte lagerorganer til at overføre data mellem centralenhederne og nævnte lager-organer langs en første lagervej, sekundære busorganer 10 (7, 8) til at forbinde de adressefrembringende enheder (f.eks. 13) langs en anden lagervej (via 7) til nævnte første del (2) af lagerorganerne, og til at forbinde centralenhederne (1) og de adressefrembringende organer henholdsvis langs en tredie fælles lagerudvidelsesvej 13 (via 8) til en anden del (3-5) af lagerorganerne, hvor den første og den anden lagervej tillader centralenhederne (1) og de adressefrembringende organer at have adgang til den første del (2) af lagerorganerne uden indbyrdes trafikstrid, og er indrettet til at reducere 20 den indbyrdes trafikstrid væsentligt, når der skal ska bes adgang til den anden del (3-5) af lagerorganerne, hvor forbindelsestilpasningsenhederne er forbundet til de sekundære busorganer (7) via organerne (17) for at overføre centralenhedssystemets data eksternt, og hvor 25 tilpasningsstyreorganerne for direkte lageradgang sam virker med mindst ét af de adressefrembringende organer for at styre dataoverførslen, så at trafikstriden blandt lagerorganerne (2-5) i mindst to af de nævnte centralenhedssystemer reduceres uden for centralenhedssystemet 30 via forbindelsestilpasningsenhederne.
  19. 19. Multiprocessordatamatsystem ifølge krav 1, k e n-detegnet ved, at mindst to specificerede centralenhedssystemer overfører data via lagerforbindelsesnetværket i form af en datastrøm, der er styret af til- 35 pasningsstyreorganer for direkte lageradgang, hvorhos 81 DK 164420 B et af de specificerede centralenhedssystemer har en sendepuffer, der er oprettet alene for en specificeret datastrøm, mens den anden af de specificerede centralenhedssystemer har en modtagepuffer, der er oprettet 5 alene for nævnte datastrøm (se fig. 14).
  20. 20. Centralenhedssystem til et multiprocessordatamat-system ifølge krav 19, kendetegnet ved, at tilpasningsstyreorganerne (352 i fig. 12) for direkte lageradgang omfatter organer (34), der er afhængige 10 af et forespørgselssignal, der overføres via lagerforbindelsesnetværket fra et andet centralenhedssystem for etablering af en datastrøm specificeret med en forespørgsel for dataoverførsel, afbrydeorganer (348), som er afhængige af forespørgselssignalet, og er indrettet 15 til at afbryde det pågældende centralenhedssystem for generering af en strømbeskriver, der definerer overførselsparametre omfattende frit lagerrum til lagring af data overført med datastrømmen, et for tilpasningsstyreorganerne (352) for direkte lageradgang lokalt 20 styrelager (343), der indeholder et flertal af aktuelle strømbeskrivere (373) skallagerorganer (372) til at håndtere dataoverførsler i overensstemmelse med parametrene defineret med et antal strømbeskrivere indeholdt i det lokale styrelager.
  21. 21. Centralenhedssystem ifølge krav 20, kendeteg net ved, at afbrydeorganerne (348) er afhængige af slutningen af datastrømoverførslen for afbrydelse af det respektive centralenhedssystem med henblik på at slette den tilhørende strømbeskriver, der indeholdes 30 i det lokale styrelager (343), hvorved lagerplads til delt strømbeskriveren frigives. 1 2 Centralenhedssystem ifølge krav 19, kendeteg 2 net ved, at tilpasningsstyreorganerne (352) for direkte 82 DK 164420 B lageradgang desuden omfatter fartstyreorganer til styring af overførselshastigheden fra hver af de datastrømme, der føres ind i lagerforbindelsesnetværket fra respektive puffere i lagerorganerne, der er specificeret 5 som en kilde, hvilket sikrer en specificeret dataover førselshastighed fra hver af datastrømmene til lagerforbindelsesnetværket uafhængigt af hinanden og uafhængigt af en centralenhed.
  22. 23. Centralenhedssystem ifølge krav 22, k e n d e t e g-10 net ved, at fartstyreorganerne omfatter et lager (372), der indeholder et adresseområde, der definerer en indgang for hver datastrøm, som skal overføres, hvilke indgange er ordnet i grupper i overensstemmelse med specificerede dataoverførselshastigheder, skanderings-15 organer, der er indrettet til at skandere indgangene i en dataoverførselshastighedsgruppe dobbelt så hyppigt, som indgangene i en næstfølgende dataoverførselshastighedsgruppe, hvilke skanderingsorganer er indrettet til inden for et forudbestemt tidspunkt at udføre et 20 forudbestemt antal skanderinger af hver indgang i data gruppen med den højeste overførselshastighed, og hvor indgang ved skandering med skanderingsorganern anvendes til at initiere en dataoverførsel af en datablok, der er en del af en dataoverførselsstrøm, og er specifice-25 ret med tilpasningsstyreorganerne for direkte lager adgang . 1 Centralenhedssystem for et multiprocessordatamat-system ifølge krav 1, kendetegnet ved, at hver forbindelsestilpasningsenhed (0-N i fig. 9) er 30 forbundet til et respektivt udtag på i det mindste to lagerforbindelser (301, 302) og har en modtagepuffer (310 i fig. 10) og en sendepuffer (317), hvor sendepufferen (317), der omfatter organer til at angive, når pufferen er optaget, hvilket er tilfældet, når den inde- 83 DK 164420 B holder data, samt organer til at angive, når pufferen er fri, hvilket er tilfældet, når data er blevet overført til en lagerforbindelse (301), hvor forbindelsestilpasningsenhed har arbitreringsstyreorganer (fig. 5 11), der er indrettet til at arbitrere brugen af en lager forbinde Ise, der er fælles for et flertal af forbindelsesti Ipasningsenhederne, hvilke tilpasningsstyreorganer (352 i fig. 12) for direkte lageradgang, som initieret af et respektivt centralenhedssystem er 10 indrettet til operativt at forbinde udvalgte forbin delsestilpasningsenheder (361) til netværket (370), og til at overføre et antal datablokke via lagerforbindelsesnetværket til et forudbestemt centralenhedssystem, der definerer et destinationsdatamatsystem via en første 15 lagertilpasningsenhed (361), samt er indrettet til re- pitativt at vælge en anden fri sendepuffer (317) i en anden forbindeIsestilpasningsenhed, der er operativt forbundet med destinationsdatamatsystemet via en anden lager forbindelse, indtil der er modtaget en bekræftende 20 meddelelse fra tilpasningsstyreorganerne (352) for di rekte lageradgang i destinationsdatamatsystemet, hvilken bekræftende meddelelse angiver, at nævnte antal datablokke er gyldigt modtaget inden for et forudbestemt tidsrum efter overførslen af datablokkene til 25 en forudvalgt sendepuffer (317). 1 Centralenhedssystem ifølge krav 24, kendetegnet ved, at hver lager forbinde Ise (9) er forbundet til en respektiv tilpasningsenhed indeholdende arbitreringsstyreorganer, indeholder en overførselsvej (301) 30 0g en svarvej (302), hvor arbitreringsstyreorganerne omfatter detektororganer til frembringelse af et "ledigt"-signal (linier tavs på fig. 11), hvor en respektiv lagerforbindelsesoverføringsvej er tavs, et forsinkelses-organ (339), der er aktiveret, når den respektive sen-35 depuffer er optaget, og som er indrettet til som svar på "ledig"-signalet at initiere en dataoverførsel fra 84 DK 164420 B sendepufferen (317 i fig. 10) over overføringsvejen på et pseudotilfældigt tidsrum efter hvert "ledigt"-signal, svarorganer (314, 320, 312), der er indrettet til at overføre data, der er modtaget via den respektive 3 overførselsvej (datalinier i fig. 10) fra en anden for bindelsestilpasningsenhed, tilbage til sidstnævnte forbindelsestilpasningsenhed via den tilhørende svarvej (svar linie i fig. 10), samt sammenligningsorganer (326), der er indrettet til at sammenligne data modtaget via 10 svarvejen og data afsendt fra sendepufferen (317) over den tilhørende overførselsvej, og som er indrettet til at afskære dataoverførsel, hvis de sammenlignede data er forskellige, og indrettet til at deaktivere forsinkelsesorganet (339), hvis de sammenlignede data er ens.
  23. 26. Centralenhedssystem ifølge krav 25, kendeteg net ved, at svarorganerne (314, 320, 312) er indrettet til kun at overføre data modtaget via respektive overføringsveje fra en anden forbindelsestilpasningsenhed, tilbage til sidstnævnte forbindelsestilpasnings-20 enhed, hvis modtagepufferen (316) hørende til svarorganerne er klar til at modtage data.
  24. 27. Centralenhedssystem ifølge krav 25, kendetegnet ved, at overføringsvejen og svarvejen hver består af et kabel (301, 302 i fig. 9) til seriebittransmission. 1
  25. 28. Centralenhedssystem ifølge krav 24, kendeteg net ved, at hver forbindelsestilpasningsenhed (361 i fig. 12) er galvanisk og mekanisk adskilt fra lagerforbindelsesnetværket (370).
DK220883A 1981-09-18 1983-05-18 Multiprocessordatamatsystem DK164420C (da)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DK220883A DK164420C (da) 1981-09-18 1983-05-18 Multiprocessordatamatsystem

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US30351481A 1981-09-18 1981-09-18
US30351481 1981-09-18
PCT/DK1982/000083 WO1983001135A1 (en) 1981-09-18 1982-09-16 Multiprocessor computer system
DK8200083 1982-09-16
DK220883A DK164420C (da) 1981-09-18 1983-05-18 Multiprocessordatamatsystem
DK220883 1983-05-18

Publications (4)

Publication Number Publication Date
DK220883A DK220883A (da) 1983-05-18
DK220883D0 DK220883D0 (da) 1983-05-18
DK164420B true DK164420B (da) 1992-06-22
DK164420C DK164420C (da) 1992-11-16

Family

ID=23172468

Family Applications (1)

Application Number Title Priority Date Filing Date
DK220883A DK164420C (da) 1981-09-18 1983-05-18 Multiprocessordatamatsystem

Country Status (6)

Country Link
US (1) US4564900A (da)
EP (1) EP0088789B1 (da)
JP (1) JPS58501602A (da)
DE (1) DE3276916D1 (da)
DK (1) DK164420C (da)
WO (1) WO1983001135A1 (da)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4677588A (en) * 1983-11-14 1987-06-30 International Business Machines Corp. Network interconnection without integration
US4660141A (en) * 1983-12-06 1987-04-21 Tri Sigma Corporation Self configuring computer network with automatic bus exchange of module identification numbers and processor assigned module numbers
US4653048A (en) * 1984-05-14 1987-03-24 American Telephone And Telegraph Company Method for interprocessor message accountability
US4870704A (en) * 1984-10-31 1989-09-26 Flexible Computer Corporation Multicomputer digital processing system
US4922416A (en) * 1984-12-14 1990-05-01 Alcatel Usa, Corp. Interface device end message storing with register and interrupt service registers for directing segmented message transfer between intelligent switch and microcomputer
US4821180A (en) * 1985-02-25 1989-04-11 Itt Corporation Device interface controller for intercepting communication between a microcomputer and peripheral devices to control data transfers
US4916603A (en) * 1985-03-18 1990-04-10 Wang Labortatories, Inc. Distributed reference and change table for a virtual memory system
US5056003A (en) * 1985-06-17 1991-10-08 International Business Machines Corporation Distributed data management mechanism
US5228127A (en) * 1985-06-24 1993-07-13 Fujitsu Limited Clustered multiprocessor system with global controller connected to each cluster memory control unit for directing order from processor to different cluster processors
US4794521A (en) * 1985-07-22 1988-12-27 Alliant Computer Systems Corporation Digital computer with cache capable of concurrently handling multiple accesses from parallel processors
US4783736A (en) * 1985-07-22 1988-11-08 Alliant Computer Systems Corporation Digital computer with multisection cache
IT1184015B (it) * 1985-12-13 1987-10-22 Elsag Sistema multiprocessore a piu livelli gerarchici
US5251299A (en) * 1985-12-28 1993-10-05 Fujitsu Limited System for switching between processors in a multiprocessor system
US5274797A (en) * 1986-05-30 1993-12-28 Bull Hn Information Systems Inc. Multiprocessor system with centralized initialization, testing and monitoring of the system and providing centralized timing
US4837739A (en) * 1986-07-25 1989-06-06 Ford Aerospace & Communications Corporation Telemetry data processor
US4914576A (en) * 1986-12-18 1990-04-03 Bull Hn Information Systems Inc. Apparatus and method of loading a control store memory of a central subsystem
JPH0221342A (ja) * 1987-02-27 1990-01-24 Hitachi Ltd マルチプロセッサシステム及びマルチプロセッサシステムにおける論理キャッシュメモリのアクセス方法
US4805096A (en) * 1987-03-06 1989-02-14 Eta Systems, Inc. Interrupt system
US4890254A (en) * 1987-03-11 1989-12-26 Aristacom International, Inc. Clock disabling circuit
US5099417A (en) * 1987-03-13 1992-03-24 Texas Instruments Incorporated Data processing device with improved direct memory access
US5179689A (en) * 1987-03-13 1993-01-12 Texas Instruments Incorporated Dataprocessing device with instruction cache
US5175841A (en) * 1987-03-13 1992-12-29 Texas Instruments Incorporated Data processing device with multiple on-chip memory buses
US4912636A (en) * 1987-03-13 1990-03-27 Magar Surendar S Data processing device with multiple on chip memory buses
US4821170A (en) * 1987-04-17 1989-04-11 Tandem Computers Incorporated Input/output system for multiprocessors
JPH0821011B2 (ja) * 1987-06-03 1996-03-04 株式会社日立製作所 バス拡張制御方式
CA1302584C (en) * 1987-07-30 1992-06-02 Alliant Computer Systems Corporation Parallel processing computer in which memory access priorities are varied
US4933845A (en) * 1987-09-04 1990-06-12 Digital Equipment Corporation Reconfigurable bus
US5291489A (en) * 1987-11-13 1994-03-01 Dsc Communications Corporation Interprocessor switching network
US4878166A (en) * 1987-12-15 1989-10-31 Advanced Micro Devices, Inc. Direct memory access apparatus and methods for transferring data between buses having different performance characteristics
JPH01226066A (ja) * 1988-03-04 1989-09-08 Hitachi Ltd ディジタル信号処理プロセッサ
US5155834A (en) * 1988-03-18 1992-10-13 Wang Laboratories, Inc. Reference and change table storage system for virtual memory data processing system having a plurality of processors accessing common memory
US4866609A (en) * 1988-06-22 1989-09-12 International Business Machines Corporation Byte count handling in serial channel extender with buffering for data pre-fetch
US5287482A (en) * 1989-01-13 1994-02-15 International Business Machines Corporation Input/output cache
US5161219A (en) * 1989-01-13 1992-11-03 International Business Machines Corporation Computer system with input/output cache
JP2712131B2 (ja) * 1989-01-23 1998-02-10 株式会社日立製作所 通信制御装置
JP2986802B2 (ja) * 1989-03-13 1999-12-06 株式会社日立製作所 プロトコル高速処理方法
US5159551A (en) * 1989-08-09 1992-10-27 Picker International, Inc. Prism architecture for ct scanner image reconstruction
US5212775A (en) * 1990-01-04 1993-05-18 National Semiconductor Corporation Method and apparatus for observing internal memory-mapped registers
JP3369580B2 (ja) * 1990-03-12 2003-01-20 ヒューレット・パッカード・カンパニー 直接メモリアクセスを行うためのインターフェース装置及び方法
JPH04233642A (ja) * 1990-07-27 1992-08-21 Dell Usa Corp キャッシュアクセスと並列的にメモリアクセスを行なうプロセッサ及びそれに用いられる方法
US5141329A (en) * 1990-09-27 1992-08-25 Alcor, Inc. Micro freeze point analysis apparatus and method
JP2770603B2 (ja) * 1991-03-14 1998-07-02 三菱電機株式会社 並列計算機
JP2945498B2 (ja) * 1991-04-12 1999-09-06 富士通株式会社 システム間通信方式
US5359715A (en) * 1991-09-16 1994-10-25 Ncr Corporation Architectures for computer systems having multiple processors, multiple system buses and multiple I/O buses interfaced via multiple ported interfaces
US5649142A (en) * 1991-10-24 1997-07-15 Intel Corporation Method and apparatus for translating addresses using mask and replacement value registers and for accessing a service routine in response to a page fault
US5506964A (en) * 1992-04-16 1996-04-09 International Business Machines Corporation System with multiple interface logic circuits including arbitration logic for individually linking multiple processing systems to at least one remote sub-system
WO1994016391A1 (en) * 1992-12-31 1994-07-21 Intel Corporation Bus to bus interface with address translation
IT1260848B (it) * 1993-06-11 1996-04-23 Finmeccanica Spa Sistema a multiprocessore
JPH0793274A (ja) * 1993-07-27 1995-04-07 Fujitsu Ltd データ転送方式及びデータ転送装置
GB2283596B (en) * 1993-11-01 1998-07-01 Ericsson Ge Mobile Communicat Multiprocessor data memory sharing
JP3402398B2 (ja) * 1994-03-17 2003-05-06 株式会社日立製作所 並列プロセッサシステムの通信制御方法
US5799207A (en) * 1995-03-28 1998-08-25 Industrial Technology Research Institute Non-blocking peripheral access architecture having a register configure to indicate a path selection for data transfer between a master, memory, and an I/O device
US5845094A (en) * 1996-06-11 1998-12-01 Data General Corporation Device access controller and remote support facility for installation of cabling in a multiprocessor system
JPH10240557A (ja) * 1997-02-27 1998-09-11 Mitsubishi Electric Corp 待機冗長化システム
US5991893A (en) * 1997-08-29 1999-11-23 Hewlett-Packard Company Virtually reliable shared memory
US6067595A (en) * 1997-09-23 2000-05-23 Icore Technologies, Inc. Method and apparatus for enabling high-performance intelligent I/O subsystems using multi-port memories
US5978858A (en) * 1997-09-30 1999-11-02 Compaq Computer Corporation Packet protocol and distributed burst engine
US6327668B1 (en) * 1998-06-30 2001-12-04 Sun Microsystems, Inc. Determinism in a multiprocessor computer system and monitor and processor therefor
US7046625B1 (en) * 1998-09-30 2006-05-16 Stmicroelectronics, Inc. Method and system for routing network-based data using frame address notification
DE19933963A1 (de) * 1999-07-20 2001-02-01 Heidenhain Gmbh Dr Johannes Verfahren und Anordnung zur Datenübertragung zwischen verschiedenen Speichereinheiten von Positionsmeßeinrichtungen
US6381681B1 (en) * 1999-09-30 2002-04-30 Silicon Graphics, Inc. System and method for shared memory protection in a multiprocessor computer
US6493635B1 (en) * 1999-11-01 2002-12-10 3Dgeo Development, Inc. Remote access and automated dialog building for seismic processing
US7010579B1 (en) * 2000-09-26 2006-03-07 Cisco Technology, Inc. Direct data routing system
US7020753B2 (en) * 2002-01-09 2006-03-28 Sun Microsystems, Inc. Inter-domain data transfer
US6795902B2 (en) * 2002-01-09 2004-09-21 Sun Microsystems, Inc. Inter-domain data transfer
US20040151116A1 (en) * 2003-01-31 2004-08-05 Dell Products L.P. Event based auto-link speed implementation in an information handling system network
US7505822B2 (en) * 2003-03-18 2009-03-17 University Of Maryland Optical interconnect structure in a computer system and method of transporting data between processing elements and memory through the optical interconnect structure
JP4100256B2 (ja) 2003-05-29 2008-06-11 株式会社日立製作所 通信方法および情報処理装置
US7536593B2 (en) * 2004-03-05 2009-05-19 International Business Machines Corporation Apparatus, system, and method for emergency backup
EP3340511B1 (en) 2004-10-12 2022-11-30 TQ Delta, LLC Resource sharing in a telecommunications enviroment
US20060179392A1 (en) * 2005-02-08 2006-08-10 Takaaki Ota Handshakeless retransmission protocol
US7698495B2 (en) * 2005-07-01 2010-04-13 QNZ Software Systems GmbH & Co. KG Computer system having logically ordered cache management
CN101223508B (zh) * 2005-07-12 2010-05-26 国际商业机器公司 数据处理系统中重新配置功能性能力的方法和系统
EP2005674B1 (en) 2006-04-12 2016-09-28 TQ Delta, LLC Packet retransmission and memory sharing
US7930459B2 (en) * 2007-09-28 2011-04-19 Intel Corporation Coherent input output device
WO2009109853A2 (en) * 2008-03-07 2009-09-11 Ek3 Technologies, Inc Fault detection and correction for single and multiple media players connected to electronic displays, and related devices, methods and systems
US8381031B2 (en) 2009-08-07 2013-02-19 Advanced Processor Architectures, Llc Distributed computing
US11042211B2 (en) 2009-08-07 2021-06-22 Advanced Processor Architectures, Llc Serially connected computing nodes in a distributed computing system
US9429983B1 (en) 2013-09-12 2016-08-30 Advanced Processor Architectures, Llc System clock distribution in a distributed computing environment
US9645603B1 (en) 2013-09-12 2017-05-09 Advanced Processor Architectures, Llc System clock distribution in a distributed computing environment
TW201142608A (en) * 2010-05-31 2011-12-01 Hon Hai Prec Ind Co Ltd Multiple processors based system and method for controlling PCI-E slots
US9514083B1 (en) * 2015-12-07 2016-12-06 International Business Machines Corporation Topology specific replicated bus unit addressing in a data processing system

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3419849A (en) * 1962-11-30 1968-12-31 Burroughs Corp Modular computer system
US3300764A (en) * 1963-08-26 1967-01-24 Collins Radio Co Data processor
US3411139A (en) * 1965-11-26 1968-11-12 Burroughs Corp Modular multi-computing data processing system
US3413613A (en) * 1966-06-17 1968-11-26 Gen Electric Reconfigurable data processing system
US3480914A (en) * 1967-01-03 1969-11-25 Ibm Control mechanism for a multi-processor computing system
DE1925427A1 (de) * 1968-05-25 1970-01-15 Fujitsu Ltd Datenuebertragungsvorrichtung zum UEbertragen von Daten zwischen Informationsspeichern
US3588831A (en) * 1968-11-13 1971-06-28 Honeywell Inf Systems Input/output controller for independently supervising a plurality of operations in response to a single command
US3634830A (en) * 1969-06-13 1972-01-11 Ibm Modular computer sharing system with intercomputer communication control apparatus
US3641505A (en) * 1969-06-25 1972-02-08 Bell Telephone Labor Inc Multiprocessor computer adapted for partitioning into a plurality of independently operating systems
BE757606A (fr) * 1969-10-21 1971-04-01 Western Electric Co Systeme de traitement de donnees
BE757671A (fr) * 1969-10-21 1971-04-01 Western Electric Co Systeme commande par programme
US3648252A (en) * 1969-11-03 1972-03-07 Honeywell Inc Multiprogrammable, multiprocessor computer system
US3716838A (en) * 1970-08-24 1973-02-13 Honeywell Inf Systems Data processing system with selective character addressing of system store
US3692989A (en) * 1970-10-14 1972-09-19 Atomic Energy Commission Computer diagnostic with inherent fail-safety
US3820079A (en) * 1971-11-01 1974-06-25 Hewlett Packard Co Bus oriented,modular,multiprocessing computer
US3768074A (en) * 1972-05-12 1973-10-23 Burroughs Corp Multiprocessing system having means for permissive coupling of different subsystems
US3828321A (en) * 1973-03-15 1974-08-06 Gte Automatic Electric Lab Inc System for reconfiguring central processor and instruction storage combinations
US3905023A (en) * 1973-08-15 1975-09-09 Burroughs Corp Large scale multi-level information processing system employing improved failsaft techniques
US3886524A (en) * 1973-10-18 1975-05-27 Texas Instruments Inc Asynchronous communication bus
US3889237A (en) * 1973-11-16 1975-06-10 Sperry Rand Corp Common storage controller for dual processor system
GB1474385A (en) * 1973-12-14 1977-05-25 Int Computers Ltd Multiprocessor data processing systems
US4123794A (en) * 1974-02-15 1978-10-31 Tokyo Shibaura Electric Co., Limited Multi-computer system
FR2273317B1 (da) * 1974-05-28 1976-10-15 Philips Electrologica
US3984819A (en) * 1974-06-03 1976-10-05 Honeywell Inc. Data processing interconnection techniques
US4130865A (en) * 1974-06-05 1978-12-19 Bolt Beranek And Newman Inc. Multiprocessor computer apparatus employing distributed communications paths and a passive task register
US4263650B1 (en) * 1974-10-30 1994-11-29 Motorola Inc Digital data processing system with interface adaptor having programmable monitorable control register therein
US3976977A (en) * 1975-03-26 1976-08-24 Honeywell Information Systems, Inc. Processor for input-output processing system
US4010450A (en) * 1975-03-26 1977-03-01 Honeywell Information Systems, Inc. Fail soft memory
CH584488A5 (da) * 1975-05-05 1977-01-31 Ibm
US4015243A (en) * 1975-06-02 1977-03-29 Kurpanek Horst G Multi-processing computer system
US4001790A (en) * 1975-06-30 1977-01-04 Honeywell Information Systems, Inc. Modularly addressable units coupled in a data processing system over a common bus
US4007450A (en) * 1975-06-30 1977-02-08 International Business Machines Corporation Data sharing computer network
US4034347A (en) * 1975-08-08 1977-07-05 Bell Telephone Laboratories, Incorporated Method and apparatus for controlling a multiprocessor system
US4257099A (en) * 1975-10-14 1981-03-17 Texas Instruments Incorporated Communication bus coupler
DE2546202A1 (de) * 1975-10-15 1977-04-28 Siemens Ag Rechnersystem aus mehreren miteinander verbundenen und zusammenwirkenden einzelrechnern und verfahren zum betrieb des rechnersystems
IT1055645B (it) * 1975-10-24 1982-01-11 Elsag Multielaboratore elettronico associativo per elabobazioni multiple contemporanee di dati in tempo reale
US4067059A (en) * 1976-01-29 1978-01-03 Sperry Rand Corporation Shared direct memory access controller
US4041472A (en) * 1976-04-29 1977-08-09 Ncr Corporation Data processing internal communications system having plural time-shared intercommunication buses and inter-bus communication means
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4099234A (en) * 1976-11-15 1978-07-04 Honeywell Information Systems Inc. Input/output processing system utilizing locked processors
JPS53124943A (en) * 1977-04-08 1978-10-31 Agency Of Ind Science & Technol Composite information processor
JPS547252A (en) * 1977-06-20 1979-01-19 Hitachi Ltd Program control system
US4141066A (en) * 1977-09-13 1979-02-20 Honeywell Inc. Process control system with backup process controller
JPS5463634A (en) * 1977-10-03 1979-05-22 Nec Corp Bus controller
US4296465A (en) * 1977-11-03 1981-10-20 Honeywell Information Systems Inc. Data mover
FR2409551A1 (fr) * 1977-11-21 1979-06-15 Cii Honeywell Bull Coupleur rapide de ligne de transmission ou peripheriques d'ordinateur utilisant une structure particuliere de microinstruction
US4161024A (en) * 1977-12-22 1979-07-10 Honeywell Information Systems Inc. Private cache-to-CPU interface in a bus oriented data processing system
IT1091633B (it) * 1977-12-30 1985-07-06 Olivetti C Ing E C Spa Dispositivo per la gestione del l accesso diretto alla memoria di un calcolatore
US4181974A (en) * 1978-01-05 1980-01-01 Honeywell Information Systems, Inc. System providing multiple outstanding information requests
US4296466A (en) * 1978-01-23 1981-10-20 Data General Corporation Data processing system including a separate input/output processor with micro-interrupt request apparatus
US4276594A (en) * 1978-01-27 1981-06-30 Gould Inc. Modicon Division Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same
JPS54129942A (en) * 1978-03-31 1979-10-08 Fujitsu Ltd Direct transfer system between sub-systems
US4270167A (en) * 1978-06-30 1981-05-26 Intel Corporation Apparatus and method for cooperative and concurrent coprocessing of digital information
US4270168A (en) * 1978-08-31 1981-05-26 United Technologies Corporation Selective disablement in fail-operational, fail-safe multi-computer control system
US4228503A (en) * 1978-10-02 1980-10-14 Sperry Corporation Multiplexed directory for dedicated cache memory system
US4232366A (en) * 1978-10-25 1980-11-04 Digital Equipment Corporation Bus for a data processing system with overlapped sequences
US4231086A (en) * 1978-10-31 1980-10-28 Honeywell Information Systems, Inc. Multiple CPU control system
US4234919A (en) * 1978-10-31 1980-11-18 Honeywell Information Systems Inc. Intersystem communication link
US4237534A (en) * 1978-11-13 1980-12-02 Motorola, Inc. Bus arbiter
US4253144A (en) * 1978-12-21 1981-02-24 Burroughs Corporation Multi-processor communication network
US4240143A (en) * 1978-12-22 1980-12-16 Burroughs Corporation Hierarchical multi-processor network for memory sharing
US4295192A (en) * 1979-04-13 1981-10-13 Sperry Rand Corporation Row address memory map overlap
JPS564854A (en) * 1979-06-22 1981-01-19 Fanuc Ltd Control system for plural microprocessors
US4261035A (en) * 1979-09-28 1981-04-07 Honeywell Information Systems Inc. Broadband high level data link communication line adapter
US4342083A (en) * 1980-02-05 1982-07-27 The Bendix Corporation Communication system for a multiple-computer system
WO1982001095A1 (en) * 1980-09-23 1982-04-01 Western Electric Co Processor interconnection system

Also Published As

Publication number Publication date
DK220883A (da) 1983-05-18
JPS58501602A (ja) 1983-09-22
EP0088789B1 (en) 1987-08-05
DK164420C (da) 1992-11-16
DE3276916D1 (en) 1987-09-10
DK220883D0 (da) 1983-05-18
JPH0571981B2 (da) 1993-10-08
EP0088789A1 (en) 1983-09-21
US4564900A (en) 1986-01-14
WO1983001135A1 (en) 1983-03-31

Similar Documents

Publication Publication Date Title
DK164420B (da) Multiprocessordatamatsystem
US4543627A (en) Internal communication arrangement for a multiprocessor system
JP2536915B2 (ja) デ―タ処理装置クラスタ―に使用するコンピュ―タ相互結合カプラ
US4581701A (en) Monitoring plural process control stations
JP2677418B2 (ja) Atmスイッチの系切換方式
US6411599B1 (en) Fault tolerant switching architecture
CA1256528A (en) Inter-subsystem communication system
US4466098A (en) Cross channel circuit for an electronic system having two or more redundant computers
US4396983A (en) Distributed data processing system having several local system and communication modules for use in such data processing system
US6453391B2 (en) Multiplexed computer system
US5689728A (en) Controller of paths for data transfer in system having external memory device
EP0282628A2 (en) Dual path bus structure for computer interconnection
EP0230029A2 (en) Method and apparatus for fault recovery in a distributed processing system
US4521850A (en) Instruction buffer associated with a cache memory unit
US3838261A (en) Interrupt control circuit for central processor of digital communication system
US3964056A (en) System for transferring data between central units and controlled units
JPS61180340A (ja) メインテナンスサブシステム
EP0397476A2 (en) Error logging data storing system
EP0809185A1 (en) A shared storage duplicating method
EP0237580B1 (en) Packet switching system
US6389554B1 (en) Concurrent write duplex device
JPH04229748A (ja) メッセージパケットの経路選択方法および回路装置
US4754480A (en) Circuit arrangement for telecommunication switching systems connected to line concentrator sub-exchanges by connecting channels
JPS6215649A (ja) 複数のポ−トと複数のチヤンネルとの間を選択的に接続する手段
EP1703392A2 (en) Method and apparatus for detecting failures in a partitioned large scale computer system

Legal Events

Date Code Title Description
PBP Patent lapsed