NO873911L - Parallelldrevet dataprosessorsystem med stor datakraft. - Google Patents
Parallelldrevet dataprosessorsystem med stor datakraft.Info
- Publication number
- NO873911L NO873911L NO873911A NO873911A NO873911L NO 873911 L NO873911 L NO 873911L NO 873911 A NO873911 A NO 873911A NO 873911 A NO873911 A NO 873911A NO 873911 L NO873911 L NO 873911L
- Authority
- NO
- Norway
- Prior art keywords
- data
- signal
- processor
- information
- address
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
- G06F15/8023—Two dimensional arrays, e.g. mesh, torus
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/006—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation at wafer scale level, i.e. wafer scale integration [WSI]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Multi Processors (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Dataprosessorsystem av "array"-typen omfattende et større antall prosessorelementer (20) som hver omfatter en prosessor (22) og et lager (23), idet systemet videre innbefatter et rutingsnettverk (30) over hvilket hvert prosessorelement. (20) kan overføre en informasjonsmengde til andre vilkårlige prosessorelementer, og en mekanisme som gjør at en prosessor kan overføre data til én av de fire nærmest liggende prosessorer. Hvertproses-sorelement er inndelt i fire separate elementer som kan benytte data som ligger i hvert av de øvrige delelementers lager. Rutingsnettverket (30) overfører data over en rekke svitsjetrinn som hvert er koblet til det påfølgende trinn og således danner overføringsbaner som er inndelt i grupper. Hver gruppe er knyttet til bestemte adressesignaler. En kontinui-tetsprøve for hver overføringsvei er anordnet for å varsle ethvert brudd i veien og da frakobling av denne. Trinnet kan da sørge for overføring av informasjonen langs en annen-=overføringsvei som knyttes til den samme adresse.
Description
Oppfinnelsen angår generelt den teknologi som omfatter digitale dataprosessorsystemer, og nærmere bestemt et såkalt "array"-prosessorsystem som omfatter et stort antall separate prosessorer som er sammenkoblet i et regelmessig matrisemønster og hvor samtlige prosessorer mottar samme instruksjon fra et felles styreorgan eller kommandonett. Uttrykket "array prosessor" kommer i det følgende til å kalles serieprosessor, men uttrykkene matrise, gruppe og datatabell vil også unntaksvis benyttes.
Et digitalt dataprosessorsystem omfatter tre grunn-enheter, nemlig et lagringselement, et inn/ut-element eller en grensesnittenhet og et prosessorelement. Lagringselementet lagrer informasjon i adresserbare lagringsposisjoner og denne informasjon er i form av data og instruksjoner for databehandling eller -prosessering. Prosessorelementet henter informasjon fra lagringselementet, tolker denne til å være enten en instruksjon eller data, prosesserer datainformasjonen i samsvar med instruksjonene og fører de prosesserte data tilbake til lagringselementet. Inn/ut-elementet eller grensesnittet kommuniserer, under kommando av prosessorelementet, også med lagringselementet for overføring av informasjon, innbefattet instruksjoner og data for behandling til lageret, samt utlesing av prosesserte data , fra dette.
De fleste moderne dataprosessorsystemer er bygget på von Neumann-prinsippet og benytter et databehandlingsmønster etter oppfinneren med dette navn. Von Neumann-maskiner er kjennetegnet ved å ha et prosessorelement, et globalt minne som lagrer systemets totale informasjon, og en programteller som stedbestemmer en adresse i det globale minne for den instruksjon som utføres. Prosessorelementet utfører én instruksjon av gangen, dvs. den instruksjon som indikeres av programtelleren. Når denne instruksjon er utført avanseres programtelleren for å stedbestemme den neste instruksjon som skal utføres. (I de fleste moderne systemer avanseres eller inkrementeres programtelleren i virkeligheten før prosessoren har avsluttet prosesseringen av den hjelpende instruksjon).
Von Neumann-systemer er idémessig enkle å bygge opp
og programmere siden de kun utfører én operasjon av gangen,
men de er også temmelig langsomme. En rekke forbedringer har blitt utført på de opprinnelige von Neumann-behandlingsmønstre for å muliggjøre at de forskjellige elementer i systemet, særlig de forskjellige elementer innenfor prosessoren, kan arbeide relativt uavhengige av hverandre og således øke prosesseringshastigheten betydelig. Det første av disse fremskritt var kanalisering av de ulike trinn ved utførelse av en instruksjon (pipelining), innbefattet instruksjonshenting, koding og deko-ding (en typisk instruksjon inkluderer en operasjonskode som fastlegger den operasjon som skal utføres, og i de fleste tilfeller én eller flere operandfastleggere som bestemmer operandene eller de data som skal benyttes ved utførelse av instruk-sjonen) , operandhenting, utførelse (dvs. utførelse av den operasjon som fastlegges av operasjonskoden for de hentede operander), og lagring av de behandlede data, og disse forskjellige operasjoner utføres for en stor del uavhengig av hverandre ved hjelp av separate maskinvareelementer i prosessoren. I en kanalisert eller gruppeinndelt prosessor kan de elementer som henter instruksjonene utføre henting av én instruksjon mens andre elementer dekoder operasjonskoden for en annen instruksjon, henter operandene for en tredje, utfører nok en fjerde instruksjon og lagrer de behandlede data for en ytterligere femte instruksjon. Kanaliseringen øker egentlig ikke hastigheten av selve databehandlingen av hver enkelt instruksjon, men siden prosessoren starter prosessering av en andre instruksjon før den første instruksjon er ferdigbehandlet, kan det totale tidsforbuk reduseres ganske vesentlig ved databehandling av en rekke instruksjoner.
Kanalisering har også blitt benyttet i forbindelse med en rekke av de andre kretser som inngår i prosessoren, særlig da kretser som utfører visse aritmetiske operasjoner,
for å øke prosesseringshastigheten for en rekke beregninger.
På samme måte som kanalisering av instruksjoner i en prosess
kan kanalisering av aritmetiske algoritmer kun føre til redusert total tid ved at flere operasjoner utføres mer eller mindre samtidig, men hver enkelt separat beregning skjer heller ikke her med større hastighet enn tidligere.
En kanalisert prosessor er åpenbart langt mer kom-plisert enn en enkelt prosessor i et von Neumann-system, siden en slik prosessor da i tillegg til de forskjellige kretser som utfører hver enkelt operasjon (i en enkelt von Neumann-prosessor kan et større antall kretser benyttes for å utføre en rekke operasjoner) også krever styre- eller kommandokretser for koordinering av de enkelte kretsers aktiviteter. Imidlertid kan den totale prosesseseringstid for et slikt system være betydelig kortere enn for det enkle system.
Nylig er lansert enkelte prosessorer som har elementer eller maskinvare som ivaretar utførelsen og omfatter mul-tippelfunksjonsenheter som hver er konstruert for å utføre én bestemt type matematisk operasjon. For eksempel kan enkelte prosessorer da ha separate funksjonsenheter for å utføre heltallsaritmetikk og aritmetikk med flytende komme (flytetall), siden den siste type krever behandling av to deler i et tall angitt som flytetall, nemlig desimaltallet og eksponenten, mens tall i heltallsaritmetikk kun har én del. Enkelte prosessorer, for eksempel type 6600 fra Control Data Corp.
har et større antall separate funksjonsenheter som hver utfører én eller bestemte matematiske operasjoner såsom addisjon, multiplikasjon, divisjon, forgreningsinstruksjoner og logiske operasjoner, og samtlige av disse kan utføres simultant. Dette kan bevirke en raskere utførelse av bestemte beregninger, og særlig de hvor det inngår en rekke funksjonsenheter som kan benyttes samtidig for å utføre deler av den totale beregning.
I en prosessor som benytter kanalisering eller multiple funksjonsenheter (eller begge, siden begge disse kan være innebygget i én og samme prosessor) databehandles en enkelt datafølge ved hjelp av en enkelt tilsvarende instruksjonsfølge. Dette betyr at hver instruksjon prosesserer data slik at det utføres én beregning ad gangen. Slike prosessorer har blitt kalt "SISD" (singulær instruksjon singulære data). Hvis imidlertid et program krever et programsegment for operering på et antall ulike dataelementer for å utføre et bestemt antall beregninger, sørger programmet for at prosessoren arbeider i en sløyfe som benytter programsegmentet for hver av beregningene.
I enkelte tilfeller og særlig hvor programsegmentet er kort og hvor det kun finnes et fåtall dataelementer, vil den tid som kreves for å utføre beregningene ut fra de foreliggende data ikke være særlig lang.
Imidlertid vil SISD-prosessorer kreve betydelig tid
i en rekke typer slike programmer for å utføre det store antall beregninger som kreves. Av denne grunn er det utviklet prosessorer som omfatter et større antall prosessorelementer som samtlige arbeider simultant med samme instruksjon og hvor hvert prosessorelement frembringer en separat datafølge. Slike prosessorer har fått benevnelsen "SIMD"-prosessorer (singulær instruksjon - multiple data).
SIMD-prosessorer er nyttige ved en rekke anvendelser, omfattende bilde- og signalprosessering, kunstig intelligens, databaseoperasjoner og datamaskinsimulering av en rekke feno-mener eller problemer såsom innenfor elektroniske kretser og hydrodynamikk. Innenfor bildeprosessering utfører hver prosessor en prosessering på et bildeelement for å forbedre et bildes totale oppløsning eller utseende. I signalprosessering utfører prosessorene simultant et større antall beregninger som er nødvendige for å utføre en FFT-omvandling av signalet. Innenfor kunstig intelligens utfører prosessorene leting i store databaser som representerer den lagrede kunnskap innenfor den bestemte anvendelse. Ved benyttelse av databaser gjennom-søker prosessorene på samme måte som innenfor kunstig intelligens databasen, og de utfører også sorteringsoperasjoner. Ved simulering ved hjelp av datamaskin, f.eks. av elektroniske kretser representerer hver prosessor én del av kretsen og prosessorens beregninger indikerer da responsen av denne kretsdel overfor signalet fra andre deler av kretsen. Tilsvarende skjer ved simulering innenfor hydrodynamikk, og slik simulering kan være særdeles anvendbar i et større antall sammenhenger såsom innenfor meteorologi eller konstruksjon av fly. Hver prosessor knyttes da til ett punkt i rommet og de beregninger som utføres gir informasjon vedrørende ulike faktorer såsom fluidstrøm, temperatur, trykk etc.
Typiske SIMD-prosessorer omfatter to hovedkomponenter, nemlig en gruppe (array) av prosessorelementer og et rutings-(tilvisnings-) nettverk over hvilket prosessorelementene kan overføre beregningsresultatene til andre prosessorelementer for bruk i fremtidige beregninger. I tillegg omfatter SIMD-prosessorer en kommando- eller styreprosessor for styring av de enkelte prosessorelementers operasjoner og rutingsnettverket i samsvar med instruksjoner og data fra et sentralt datasystem såsom et vertssystem.
En rekke forskjellige rutingsnettverk har vært benyttet i forbindelse med SIMD-prosessorer og et ytterligere antall har vært foreslått. I ett slikt nettverk, benyttet i et større parallellprosessorsystem kalt MPP og fremstilt av Goodyear Arrowspace Corp. er de enkelte prosessorelementer koblet sammen i en matrise eller et maskenett. I denne konfigurasjon skjer forbindelsen mellom de enkelte prosessorelementer langs rekker og spalter og hvert element har sin nærmeste forbindelse med fire respektive naboelementer. Systemet har vist seg å være noe langsomt ved intern informasjonsoverføring til vilkårlige prosessorelementer, men de trådforbindelser som er nødvendige i dette system for å sikre dataoverføringene er færre enn i de fleste andre sammenlignbare systemer, og kun i størrelsesorden 4n, hvor "n" er antall prosessorelementer, idet det forutsettes kun énveis overføring av informasjon i hver enkelt ledning. Hvis hver ledning kan benyttes for bidireksjonal overføring, vil antallet ledninger reduseres til det halve, men på bekost-ning av en reduksjon av mengden overført informasjon pr. tids-enhet.
Et matrisenettverk er også benyttet i det system som er kjent som "Connection Machine" fra Thinking Machines Corp., men dette system omfatter ytterligere et hyperkubisk nettverk som muliggjør forbindelse mellom vilkårlige prosessorelementer (dvs. elementer som ikke ligger i naboforhold til hverandre).
I et hyperkubisk nettverk forbindes hver prosessors brikke (chip) direkte med tolv andre prosessorbrikker. Hver prosessorbrikke innbefatter på sin side en rekke prosessorelementer og kretser som utgjør deler av rutingsnettverket. Rutingskretsene på hver brikke mottar informasjon fra prosessorelementene på brikken for overføring til tilsvarende prosessorelementer på andre prosessorbrikker. I tillegg mottar rutingskretsene informasjon fra andre prosessorbrikker, og dersom informasjon fra én av disse skal mottas av et prosessorelement på en bestemt brikke, føres informasjonen direkte til elementet, men hvis derimot informasjonen skal mottas av et prosessorelement på en annen brikke, overføres informasjonen over en ledning til en ny brikke på prosessoren. Dette gjentas helt til informasjonen har nådd den endelige mottaker. Rutingskretsene på hver brikke må således være istand til å takle både informasjon fra prosessorelementene på denne brikke og likeledes informasjon fra andre brikker som ikke behøver å være adressert til denne brikkes prosessorelementer.
Et hyperkubisk nettverk ivaretar informasjonsoverfø-ringen temmelig raskt, men det kreves et stort antall forbindelsesledninger, nemlig i størrelsesorden 12n dersom informasjon skal overføres kun i én retning i hver ledning. Dersom for eksempel "n" var 4096, (4K, K=1024), ville det hyperkubiske nettverk kreve av størrelsesorden 48K ledninger. Hvis ledningene i stedet kunne overføre informasjon i to retninger, ville kun av størrelsesorden 24K ledninger trenges, men trafikk-volumet ville bli redusert i samsvar med dette. Det typiske er at jo større antall ledninger som finnes i et rutingsnettverk desto mer kostbart er dette og desto større er feil-hyppigheten som skyldes ledningsbrudd eller feil i de sjalteele-menter som forbinder ledningene.
Et annet foreslått rutingsnettverk bygger på anvendelsen av krysskoblingsswitching eller overføring ved hjelp av koordinatvelgere, hvorved hvert prosessorelement kan bringes i forbindelse med hvilket som helst annet prosessorelement direkte, og dette system gir maksimal innbyrdes tilgjengelighet av samtlige av disse omtalte rutingsnettverk. Imidlertid krever benyttelsen av koordinatvelgere av denne type også et maksimalt antall forbindelsesledninger og sjalte- eller switcheelementer, nemlig av størrelsesorden n 2, og slike systemer er således de dyreste og de som har størst feilhyppighet på grunn av ledningsbrudd og defekte switcheelementer. Med samme eksempel som ovenfor, hvor "n" er 4K, vil antallet ledninger og switcheelementer her være 16 000 K.
Nok et rutingssystem er det såkalte omeganettverk hvor switchingen utføres ved hjelp av en rekke seriekoblede trinn hvor hvert trinn har to innganger som hver er tilkoblet utgangene på to foregående trinn eller prosessorbrikker, og hvor hvert trinn likeledes har to utganger. Det system som er kjent under navnet "Butterfly" av Bolt, Beranek og Newman benytter et omeganettverk.
Kostnadene for et rutingsnettverk er direkte knyttet til antallet forbindelsesledninger, og dette antall påvirker også antall feil som skyldes brudd i en av informasjonsveiene. For å redusere antall ledninger, men likevel oppnå en betydelig grad av koblingsmulighetene som forefinnes ved krysskoblings-prinsippet, er det foreslått et rutingsnettverk hvor et flertrinns omeganettverk utfører en viss mengde av switchingen. Utgangen fra omeganettverket er da forbundet med en koordinatvelger som da kan greie seg med langt færre koblingsforbindel-ser enn hva tilfellet ville være hvis omeganettverket ikke ble benyttet. Avhengig av antall trinn i dette kan antall forbindelsesledninger holdes langt lavere enn i en hyperkubisk struktur, mens overføringseffektiviteten eller -mulighetene blir gunstigere enn i en slik struktur. Hvis for eksempel "n" er 4K og det benyttes et syv-trinns omeganettverk i forbindelse med en koordinatvelger, vil det trenges 36K forbindelsesledninger (på ny forutsatt at hver ledning kun fører enveis informasjon) for å danne det ønskede rutingsnettverk.
Imidlertid er det en rekke begrensninger knyttet til anvendelsen av et rutingsnettverk for overføring av data. Maskestrukturen er vanligvis kun gunstig når data overføres til de nærmest liggende prosessorer, siden hver overføring krever en kommando fra styreprogrammet. En hyperkubisk struktur, en koordinatvelger, et omeganettverk eller lignende vil derimot være mest anvendelig dersom dataoverføringen skal kunne skje til vilkårlige prosessorer i systemet. Mange serieprosessorer, for eksempel "the Thinking Machine" har to mekanismer for overføring av data, den ene for overføring til vilkårlige prosessorer, mens den andre er tiltenkt matrise-overføringer. Under visse betingelser vil det imidlertid være raskere å anordne én prosessor med direkte adgang til lager-kretsene forbundet med de øvrige prosessorelementer, og dette kan for eksempel være gunstig når det etter en parallell- operasjon ønskes utført en seriell operasjon på de samme, nettopp behandlede data. Hvis ett prosessorelement har aksess til den informasjon som ligger i det minste i noen av de øvrige prosessorelementers lagre, kan en prosessor utføre serielle operasjoner ved å benytte denne informasjon. Prosessorelementet kan også benytte samme lågere i tillegg til sitt eget tilknyttede lager dersom et problem krever større lagringskapasitet enn prosessorelements eget rommer.
Typisk benyttes serieprosessorer ved utføring av aritmetiske operasjoner på numeriske verdier angitt som flytetall, dvs. med en desimaldel eller mantisse og en eksponentdel med et grunntall som i et binært tallsystem er tallet 2, og opphøyd i en eksponent. Når aritmetiske operasjoner utføres, såsom addisjon og subtraksjon og flytetall benyttes må hvert enkelt, tall plasseres "på linje", dvs. tallene må ha samme eksponent. For å oppnå detteskaleres mantissen hvorved eksponenten endres i samme forhold. Etter at den aritmetiske operasjon er utført normaliseres på ny flytetallet, dvs. ledende nuller fjernes ved å utføre en multiplikasjon av desimaltallet samtidig som det beregnede resultats eksponent endres tilsvarende. Både vedskaleringen til felles eksponent og den etterfølgende normalisering foregår endringen av mantissen ved å forskyve siffere i forhold til de plasser tallet opptar i lageret.
Imidlertid vil både skalerings- og normaliserings-operasjonene hver gang gi et varierende antall forskyvninger i lageret på grunn av at de tall som skal behandles i de ulike prosessorelementer hver gang er et annet.
Den foreliggende oppfinnelse tar sikte på å skaffe til veie et nytt og forbedret dataprosessorsystem med serieprosessorer og hvor det inngår et større antall prosessorelementer som hvert omfatter en prosessor og et tilknyttet lager.
Et trekk ved oppfinnelsen vedrører et serieprosessorsystem med prosessorelementer av denne type og hvor hvert element er oppdelt i grupper som hver omfatter et valgt antall prosessorer og tilknyttede lågere. Som respons på kommando-signaler klareres én prosessor i hver gruppe for å kunne motta data fra et hvilket som helst av lagrene som er tilknyttet de øvrige prosessorer i gruppen, og når denne ene prosessor klareres er de øvrige effektivt sperret. Dette trekk gjør det mulig at beregninger kan utføres parallelt av data i samtlige lågere og av samtlige prosessorer i gruppen, og det gjør det mulig å utføre seriell behandling av disse data av én av prosessorerene i gruppen uten at det er behov for at den øvrige prosessor overfører disse data til denne prosessor via interne forbindelser. På denne måte kan det opprettes en datatabell med større tilknyttet lager, men som innbefatter bruk av et færre antall prosessorer for å utføre en bestemt beregning.
Ifølge et annet trekk skaffes det her til veie en serieprosessor hvis prosessorelementer kan behandle data i bit-modus bit for bit eller i fire-bit-modus i fortløpende grupper på fire bit.
Et annet trekk med oppfinnelsen omfatter en prosessor som har et skiftregister som både kan forflytte data mot en skift-ut- og en skift-inn-terminal, idet forflytningen mot skift-ut-terminalen kan skje både bit for bit eller i grupper på en halv Byte (fire bit). Denne siste mulighet åpner mulighet for operasjon i fire-bits modus. Det at skiftregisteret kan forflytte data mot skiftterminalene er anvendbart innenfor flytetallsaritmetikk, særlig ved skalering for å oppnå samme eksponent av dé tall som skal summeres eller subtraheres og ved normalisering av mantissen av tallene etter at den aritmetiske operasjon er utført.
I nok et aspekt ved oppfinnelsen sørges for en mekanisme som raskt og enkelt genererer et statussignal som indikerer når samtlige prosessorer i en gruppe har utført en operasjon såsom en normalisering som følger etter en aritmetisk operasjon eller en overføring av informasjon.
Et trekk ved oppfinnelsen omfatter et serieprosessorsystem hvor prosessorelementene kan motta data fra og overføre data til øvrige prosessorelementer i en matrisestruktur som sikrer at overført data er den logiske ELLER av de mottatte data og prosessorelementets egne data for å utføre en logisk ELLER av de data som overføres fra samtlige prosessorelementer i en komplett rekke eller spalte i matrisestrukturen.
Foreliggende oppfinnelse skaffer videre til veie et system som omfatter serieprosessorer og hvor det finnes en informasjonsoverføringsmekanisme som gjør det mulig at et bestemt prosessorelement som ellers ville måtte overføre informasjon i seriell form til et stort antall andre prosessorelementer nå kan benytte andre prosessorelementer som hjelpeelementer for overføring av informasjon til de aktuelle andre og først-nevnte prosessorelementer, idet den totale tid som trengs for å overføre den ønskede informasjon derved reduseres i vesentlig grad.
I samsvar med nok et trekk ved oppfinnelsen skaffer denne til veie et system som omfatter et rutingsnettverk for overføring av informasjon hvor hver informasjonsmengde inneholder en adresse som fastlegger den tiltenkte mottaker og hvor rutingsnettverket omfatter et større antall swichetrinn som hvert benytter et valgt antall adressebit for bestemmelse av en koblingsvei gjennom hvert trinn. De linjer som forbinder hvert trinn er inndelt i grupper, og hver gruppe omfatter flere linjer som hver er knyttet til en omkoding av de adressebit som ble benyttet i trinnet ved valg av koblingsveien. Hvert switchegrinn kan overføre en informasjonsmengde med den omkodede adresse til hvilken som helst av de linjer som befinner seg i samme gruppe.
Et annet trekk ved oppfinnelsen angår et dataprosessorsystem ved serieprosessorer og som omfatter et rutingsnettverk hvor en informasjonsmengde kan overføres langs en bestemt vei, idet rutingsnettverket da innbefatter en detekteringsmekanisme som tilkjennegir når en bestemt overføringsvei er brutt, og hvor mekanismen videre tilsier at denne vei ikke skal benyttes.
Ifølge et annet trekk ved oppfinnelsen skaffer denne til veie et serieprosessorsystem med stor datakraft og som omfatter et rutings- eller tilvisningsnettverk for overføring av informasjon langs bestemte baner, idet rutingsnettverket omfatter en deteksjonsmekanisme for når en bestemt overføringsvei er brutt, på samme måte som nevnt i forrige avsnitt, og hvor detekteringsmekanismen likeledes sørger for at denne vei ikke benyttes. Dette skjer ved at hver informasjonsmengde omfatter en adresse som angir den tiltenkte mottaker, og rutingsnett verket innbefatter et større antall switchetrinn som hvert benytter et valgt antall bit av adressen for å fastlegge en overføringsvei gjennom hvert trinn. Overføringsveiene som forbinder hvert trinn er inndelt i grupper, og hver gruppe omfatter flere veier som hver er knyttet til en omkoding av de adressebit som inngikk ved valget av den bestemte innkoblede overføringsvei fra dette trinn. Hvert switchetrinn kan over-føre en informasjonsmengde ved den omkodede adresse til en hvilken som helst overføringsvei i den aktuelle gruppe for over-føring av informasjonsmengden til det neste trinn. Hvis én av overføringsveiene ikke benyttes fordi den er brutt, kan trinnet overføre informasjonsmengden via en av de andre over-føringsveier i samme gruppe til det neste trinn.
Endelig er det ifølge oppfinnelsen skaffet til veie et dataprosessorsystem som benytter serieprosessorer og omfatter et flertrinns rutingsnettverk hvor et første trinn klareres for start av overføring av en informasjonsmengde og hvor hvert trinn i rutingsnettverket klarerer det deretter følgende trinn når dette skal iverksette sin overføring av informasjonen.
Oppfinnelsen er nærmere presisert i de etterfølgende krav. De omtalte trekk ved oppfinnelsen vil bedre forståes ut fra den etterfølgende beskrivelse som henviser til ledsagende tegninger, hvor fig. 1 er et oversiktsdiagram i blokkform av hovedenhetene i et parallelldrevet dataprosessorsystem i samsvar med oppfinnelsen, omfattende en serieprosessor, fig. 2 viser et mer detaljert blokkdiagram over serieprosessoren og hvor det angis en mekanisme for overføring av en informasjonsmengde gjennom prosessoren, fig. 3 viser et annet blokkdiagram av serieprosessoren og med en alternativ mekanisme for over-føring av informasjon, fig. 4 viser et detaljert blokkdiagram av et prosessorelement som utgjør en del av serieprosessoren, fig. 5A viser et blokkdiagram som gir oversikt over forbindelsene mellom forskjellige prosessorelementer og lagringselemen-ter i serieprosessoren, fig. 5B og 5C viser skjematisk koblingsskjemaer som nærmere angir forbindelsene, fig. 6 viser et blokkdiagram som indikerer genereringen av forskjellige statussignaler i hver prosessorbrikke som benyttes i den gruppestyreenhet som er vist på fig. 1, fig. 7 viser i nærmere detalj et skiftregister som utgjør en del av prosessorelementet vist på fig. 4, fig. 8A viser et detaljert blokkdiagram av det rutingsnettverk som benyttes i overføringsmekanismen for informasjon vist på fig. 2, fig. 8B viser den detaljerte struktur av en informasjonsmengde som overføres via rutingsnettverket som er vist på fig. 8A, fig. 9 viser et detaljert blokkdiagram av hvordan en switchebrikke benyttes i rutingsnettverket vist på fig. 8A, og fig. 10A til 10C viser detalj-skjemaer av forskjellige kretser som inngår i rutingsbrikken som er vist på fig. 9.
Et dataprosessorsystem (array) som er i samsvar med oppfinnelsen og vist i blokkform på fig. 1, omfatter en gruppestyreenhet (array control unit) 10, en serieprosessor 11 og et systemgrensesnitt 12. Styreenheten 10 mottar data og instruksjoner fra et verts-prosessorsystem (ikke vist) via systemgrensesnittet 12 og overfører de mottatte data til prosessoren 11 over en databuss 13, mens mikroinstruksjoner overføres til prosessoren 11 og en instruksjonsbuss 14, idet disse gjør det mulig for serieprosessoren 11 å behandle data i samsvar med instruksjonene fra vertprosessoren.
Under utførelse av mikroinstruksjonene kan prosessoren 11 overføre forskjellige statussignaler til gruppestyreenheten 10 over en statusbuss 15 og disse signaler benyttes av styreenheten 10 som beskrevet nærmere nedenfor ved valg av de mikroinstruksjoner som skal overføres til prosessoren 11, etter at denne har utført samtlige operasjoner som mikroinstruksjonene fra styreenheten tilsier, ut fra de instruksjoner som var overført fra vertsprosessorsystemet. Styreenheten 10 klargjør så serieprosessoren 11 for overføring av de behandlede data tilbake til styreenheten over databussen 13, og styreenheten kan deretter videreføre disse data til vertsprosessoren via systemgrensesnittet 12.
Serieprosessoren 11 omfatter to hovedelementer, nemlig et stort antall prosessorelementer anordnet i en rekke prosessorelementbrikker samt en mekanisme for overføring av informasjon mellom styreenheten 10 og hvert av prosessorelen-tene. I en utførelse i samsvar med oppfinnelsen omfatter hver prosessorelementbrikke 32 prosessorelementer. Som beskrevet i nærmere detalj nedenfor og i tilknytning til fig. 4 omfatter hvert prosessorelement én prosessor og kretser for utførelse av valgte aritmetiske og logiske operasjoner, samt et tilhørende lager. I det spesielle utførelseseksempel har hvert lager en lagringskapasitet på 1 Kb (1024 bit).
Prosessorelementene har to mekanismer for overføring av informasjon til andre prosessorer. Den ene mekanisme bygger på tilfeldig overføring og er vist på fig. 2. Hvert prosessorelement kan her overføre en informasjonsmengde til et hvilket som helst annet prosessorelement. I den andre overførings-mekanisme, en "nærmeste nabo-" eller lokaloverføringsmekanisme, vist på fig. 3, forbindes prosessorelementene i et maskenett-verk slik at hvert element nærmest er koblet til fire naboelementer, og mekanismen er slik at hvert element da kun kan overføre informasjon til et av disse direkte tilkoblede naboelementer. I den først nevnte overføringsmekanisme hvor tilfeldig overføring kan finne sted, skjer kommunikasjonen via et rutingsnettverk 30 (fig. 2) som skal beskrives nærmere nedenfor i forbindelse med denne figur og i ytterligere detalj i forbindelse med fig. 8A - 10C. De kretser som benyttes i den andre overføringsmekanisme skal beskrives i sammenheng med fig. 4.
Som fig. 2 viser finnes en rekke prosessorelementbrikker 20A - 20N (generelt angitt med henvisningstallet 20), og hver av disse brikker 20 har et antall separate prosessorelementer. Siden samtlige prosessorelementbrikker 20 er identiske er kun brikken 20A vist i detalj. Brikken omfatter flere prosessorelementer 21A - 21N i ordnet rekkefølge. Hvert prosessorelement 21A - 21M omfatter en respektiv prosessor 22A - 22M og et respektive lager 23A - 23M. Når et prosessorelement klareres for overføring av en informasjonsmengde settes elementets RTS-flagg 24A - 24M (fordringskommando for sending eller overføring). Når så prosessorelementets ROKI-signal foreligger (utgående rutetilvisning, innkommende klarering) klareres prosessorelementet for overføring av informasjonsmengden via styrekretsene i rutingsnettverket 30.
ROKI-signalet er et klareringssignal som overføres
i en kaskade-koblet kjede, og når det er et bestemt prosessor-
elements tur til å overføre en informasjonsmengde, hvilket skjer når dets ROKI-signal foreligger, skjer overføringen via en styrekrets 25 i rutinsnettverket 30 og som overfører informasjonen fra brikken 20A som et utgående informasjonssignal fra den første brikke i rekken, prosessorbrikke 0. Et bekreftel-sesflagg 26A - 26M (ACK) som innlednignsvis er inaktivert, settes når en informasjonsmengde er overført og bekreftet.
En fordel med disseRTS- og ACK-flagg for separat klarering i stedet for å la RTS-flagget på ny settes for bekreftelse, vil fremgå klarere av det følgende.
Etter at informasjonsmengden fra prossssorelementet er overført og bekreftet oppsettes ROKI-signalet for det neste prosessorelement av prosessoren 22. Hvis RTS-flagget 24 er satt og ACK-flagget 26 er satt på ny betyr dette at prosessorelementet er klarert for overføring av en datamengde. Hvis enten flagget 24 er inaktivert eller det er satt, men ACK-flagget 26 også er satt, vil ikke prosesselementet kunne overføre data, men i stedet etablerer da dette element ROKI-signalet for den neste prosessor 22, og etter at de ønskede data er overført og bekreftet for samtlige prosessorelementer hvis RTS-flagg 24A - 24M innledningsvis har blitt satt, genererer styrekretsen 25 et internsignal (LOCAL DONE) som ELLER-kobles med tilsvarende internsignaler fra de andre prosessorelementbrikkene for å danne et endelig eksekutivsignal (DONE) som overføres via statusbussen 15 til gruppestyreenheten 10 for indikasjon av at samtlige prosessorelementer har overført sine data.
I en særlig utførelse er det for å redusere antallet innganger til rutingsnettverket 30 utført en parforbindelse av brikkene 20A - 20N for informasjonsoverføringen via dette, og med henvisning til fig. 2 fremgår dette ut fra at den siste prosessor 22M på brikken 20A gir ROKI-signalet til den første prosessor 22A på brikken 20B. Etter at samtlige informasjonsmengder er overført fra brikken 20A og bekreftet, starter brikken 20B overføringen av sine data.
Utgangene fra enkelte av brikkene 20A - 20N er forbundet med multipleksere 32 som selektivt kobler brikkenes utganger og disses datasignaler fra databussen 13 til rutings nettverket 30 som så utfører overføringen av data fra gruppestyreenheten 10 til serieprosessoren 11. Dette skjer for eksempel for brikken 20A ved at utgangen fra styrekretsen 25
i denne brikke er koblet til den ene av inngangene på multiplekseren 32, mens dennes andre inngang er koblet til en av datalinjene i bussen 13. Multiplekseren 32 er under kommando av et buss-signal for selektering av data (SEL DB) som ved tilstedeværelse på linjen tillater at multiplekseren 32 kobler signalene på databussens 13 linje til rutingsnettverket 30.
Når databusslinjen ikke har dette seleksjonssignal kobler
i stedet multiplekseren 32 signalene fra prosesselementbrikkene til rutingsnettverket 30.
Utgangssignalene fra dette (rutingsnettverket skal beskrives nærmere nedenfor i forbindelse med fig. 8A - 10C) kobler til datainngangsportene på brikkene 20A - 20N og som vist til en inngangsstyrekrets 33 (fig. 4) på brikken 20A. Denne krets bestemmer først om de innkommende data et tiltenkt prosessorelement på denne brikke, og denne bestemmelse skjer i respons Pa\ det første signal som mottas av inngangsstyrekretsen 33 og i avhengighet av et logisk høyt styresignal HI 32. Som vist på fig. 2 overføres dette styresignal HI 32 i ikke komplementert form til det ene av hvert par brikker, såsom brikken 20A og 20(N-1), og i komplementert form til de øvrige brikker såsom brikkene 20B og 20N. Hvis inngangsstyrekretsen 33 mottar det ikke komplementerte styresignal HI 32 godtas de innkommende data for hvilke det første signal foreligger, men dersom kretsen 33 i stedet mottar det komplementerte styresignal HI 32 aksepteres de data som er knyttet til en negasjon av det første signal. De neste få signaler, som forklart nedenfor i forbindelse med fig. 8B, fastlegger den prosessor 22 som skal motta informasjonen, og inngangsstyrekretsen dirigerer så denne til den prosessor som indikeres.
Utgangssignalene fra bestemte linjer fra rutingsnettverket 30 kobles også til databussen 13 for å videreføre datautgangssignaler til gruppestyreenheten 10.
Det fremgår av den foregående beskrivelse at selv om et større antall datafølger kan overføres samtidig ved hjelp av rutingsnettverket 30 i det som heretter skal kalles en "minste datasyklus", vil det være påkrevet med et større antall slike minste datasykluser for å overføre all den informasjon som er nødvendig på én gang i samsvar med et programkrav. Spesielt kan høyst én prosessor 22 overføre en datamengde i et brikkepar i løpet av et visst tidsrom, hvilket betyr at dersom flere prosessorer 22 i et brikkepar skal overføre data trengs minst det samme antall minste datasykluser. I tillegg kan enkelte datamengder blokkeres på grunn av hindringer i rutingsnettverket 30 eller fordi flere datagrupper er overført til samme brikkepar under en minste datasyklus.
Som angitt ovenfor, er det fordelaktig å ha separate RTS-flagg 24A - 24M og ACK-flagg 26A - 26M for å holde kontroll med dataoverføringen, og særlig skal fremheves, hvilket også skal beskrives nærmere nedenfor, at det i en spesiell utførelse av oppfinnelsen i hver informasjonsmengde omfattes en innledende datagruppe som på sin side omfatter en adresse som fastlegger det prosessorelement som skal ta imot informasjonsmengden og en kvitteringstidsluke for det mottagende prosessorelement, hvilket nærmere bestemt betyr at prosessorelementbrikken 20 som inneholder det mottagende prosessorelement gis muligheten av å sende ut et signal til det informasjonsoverførende prosessorelement og som indikerer korrekt mottagelse av informasjonen. Etter den innledende datagruppe følger selve informasjonsmengden som skal overføres. Ved å plassere kvitteringstidsluken i den innledende datagruppe i stedet for i enden av den over-førte informasjonsmengde forenkles tidsstyringen av denne tids-luke, siden den innledende datagruppe har bestemt lengde, mens lengden av informasjonsmengden som følger varierer fra gang til gang.
I enkelte anvendelser av serieprosessoren er det nødvendig for et prosessorelement å sende samme informasjonsmengde til et større antall forskjellige andre prosessorelementer, og dette skjer ved at senderelementet overfører informasjonen til hvert tiltenkt mottagerelement som en iterativ prosess. Hvis et stort antall mottagerelementer er adressert, kan dette ta temmelig lang tid, men tiden kan reduseres betrak-telig dersom senderelementet først overfører informasjonsmengden til et utvalgt antall selekterte hjelpeprosessorelemen- ter som så, sammen med det opprinnelige senderprosessorelement overfører informasjonen til de øvrige mottagenede prosessorelementer. Denne prosess fortsetter helt til samtlige tiltenkte mottagerelementer har mottatt informasjonen.
Ved et gitt tidspunkt under eller umiddelbart etter overføringen av en bestemt informasjonsmengde fra et sender-element til et hjelpeelement, vil det være nødvendig for gruppestyreenheten 10 (fig. 1) å overføre styresignaler til serieprosessoren 11 for å sette RTS-flaggene slik at hjelpeelementene kan klareres for overføring av informasjonen, og om nød-vendig å klarere senderelementet til overføring av informasjonen også til andre mottagende prosessorelementer som kan være hjelpeelementene eller de endelige tiltenkte mottagerelementer. Hvis det under overføringen av den opprinnelige informasjonsmengde skjer en bekreftelse på at denne er mottatt, hvilket bevirker en tilbakestilling av RST-flagget 24A - 24M, vil prosessorelementet ikke lenger være i stand til å bestemme om informasjonen hadde blitt sendt til det første hjelpeelement, og det ville foregå en ny overføring av informasjonen til dette. Ved således å anordne separate RST- og ACK-flagg 24A - 24M
hhv. 26A - 26M kan hjelpeprosessorelementene fritt overføre informasjon i vilkårlig rekkefølge.
Overføringsmekanismen av "nærmeste nabo"-typen er skissert på fig. 3. Flere prosessorelementer 20A - 20N er her vist arrangert i matriseform med k rekker og l spalter, og antallet elementer N = k-£. Hvert element 20A - N kan over-føre informasjon i form av signaler til sine fire nærmeste naboer i matrisen. For eksempel kan prosessorelementet 20
(k+2) overføre signaler "vestover" til elementet 20B, "nordover" til elementet 20 (k+1), "sydover" til elementet 20 (k+3), og "østover" til elementet 20 (2k+2) som imidlertid ikke er vist på figuren. Prosessorelementene i den "vestligste" spalte, og som er lengst til venstre på fig. 3, altså element 20A -
20K kan overføre signaler "vestover" og rundt til den spalte som er vist ytterst til høyre på fig. 3, dvs. til elementene 20(£k+l) - 20N, og tilsvarende kan prosessorelementene i den spalte som er vist ytterst til høyre på figuren overføre signaler videre "østover" og rundt til elementene i den spalte
som er ytterst til venstre på fig. 3. Tilsvarende kan elementene i øverste rekke, dvs. elementene 20A, 20(k+1)...20(£k+l) overføre signaler videre "nordover" og rundt til prosessorelementene i den nederste rekke, dvs. elementene 2OK, 20(2k)...20N, og endelig kan prosessorelementene i den nederste rekke overføre signaler videre "sydover" og rundt til elementene i den øverste rekke. Den mekanisme som bentytes av elementene for overføring i denne "nærmeste nabo"-modus skal beskrives nedenfor i forbindelse med fig. 4.
Den overføringsmekanisme som baserer seg på uteluk-kende dataoverføring til de nærmest beliggende prosessorelementer kan også benyttes for inngangssignalet som representer en informasjonsmengde til og fra en serieprosessor 11 hvor de enkelte prosessorelementer er anordnet i en matrise. Med særlig henvisning til fig. 4 kan et multipleksnettverk (ikke vist) forbindes til den viste venstre side av matrisen, for eksempel for å tillate innlesning av data til den spalte av prosessorelementet som befinner seg lengst til venstre (fig. 3), enten fra spalten ytterst til høyre eller fra en ytre datakilde. Den datamengde som representerer informasjonen opptas og holdes midlertidig i den ytterste venstre spalte og over-føres deretter til neste spalte, dvs. prosessorelementene 22 (k+1) - 22(2k) etter hvert som flere data tilføres og holdes
i elementene i den ytterste venstre spalte. Denne prosess fortsetter helt til data er blitt overført over hele matrisen.
Videreføring av data fra serieprosessoren skjer ved hjelp av en tilsvarende "nærmeste nabo"-overføringsmekanisme ved at det er anordnet et sett utgangsdrivenheter (ikke viste) som er tilkoblet et sett dertil egnede mottager- og opptakskretser. Utgangsdrivenheten kan for eksempel forbindes med overførings-delen i hvert enkelt prosessorelement i den spalte som ligger ytterst til høyre på fig. 3 for å motta datasignaler fra linjene som også forbinder prosessorelementene i denne spalte til de elementer som befinner seg i den ytterste venstre spalte. For å muliggjøre at data kan gjenfinnes i serieprosessoren 11
er prosessorelementene klarert for overføring av disse data i "østlig" retning mens utgangsdrivenhetenes utgangslinjer drives. Etter at samtlige data fra den ytterste venstre spalte er
returnert til denne, har data fra samtlige prosessorelementer i matrisen passert den ytterste høyre spalte av elementet og er overført av drivenhetene.
De nærmeste sider skal vies beskrivelse av selve prosessorelementet 21 som i samsvar med fig. 2 omfatter lageret 23, selve prosessoren 22 samt øvrige kretser. Et prosessorelement som er bygget opp i samsvar med den foreliggende oppfinnelse omfatter, som vist på fig. 4, en komplett adderer 51
for å motta inngangssignaler fra det ene av et par skift-registre, enten et A-skiftregister 52 eller et B-skiftregister 53 fra en logisk krets 54 og fra et menteregister 55. En multiplekser 56 velger utgangssignalene fra skiftutporten på den ene av skiftregistrene 52 eller 53 (A eller B) i respons til et A/B-selekteringssignal som utgjør en bit i det styremikroord som mottas fra gruppestyreenheten 10 over instruk-sjonsbussen 14 (fig. 1). Det typiske i et matriseprosessor-system under en gitt driftssyklus, styrt av ett eller flere klokkesignaler (ikke vist) er at et enkelt styremikroord over-føres av en gruppestyreenhet såsom enheten 10 til samtlige prosessorelementer i prosessormatrisen såsom serieprosessoren 11 for å styre prosessorelementenes operasjoner i matrisen under den bestemte syklus. Avhengig av om ett eller flere indikatorflagg er satt (som beskrevet nærmere nedenfor) kan et prosessorelement klareres for eller hindres i å utføre operasjonene som er underlagt styring av styremikroordet.
Hvis et utgangssignal for klarering av skiftregisteret (CLO) fra styremikroordet føres til negasjon, åpnes multiplekseren for kobling av utgangssignalet fra det valgte skiftregister til inngangen av addereren 51. Når CLO-signalet foreligger klarerer gruppestyreenheten multiplekseren slik at denne kobler et utgangssignal med effektiv verdi = 0 til utgangen av addereren 51, og dette innebærer en mekanisme for innlesning av en verdi i skiftregisteret før en aritmetisk operasjon utføres.
A- og B-skiftregistrene 52 og 53 opererer i samsvar med et antall styresignaler fra styremikroordet. Både A- og B-skiftregistrene omfatter variabel effektiv ordlengdebehand-ling, dvs. at bitposisjonen fra hvilken utgangssignalene over- føres til multiplekseren 56 kan varieres i respons på henholdsvis et A-omfangssignal eller et B-omfangssignal fra skiftregistrene og basert på styremikroordet. I en utførelse av oppfinnelsen har A-skiftregisteret 52 effektive ordlengder på 4, 8, 12, 16, 20, 24, 28 og 32 bit og kan benyttes for å ut-føre heltallsaritmetikk og aritmetikk på flytetalls. matriser.
I samme utførelse har B-skiftregisteret 53 effektive dataord-lengder på 4, 8 og 12 bit og kan benyttes for å utføre aritmetikk på flytetallenes eksponentdel.
Innholdet i skiftregistrene 52 og 53 kan forflyttes
i samsvar med et skiftklareringssignal som tilveiebringes av en ELLER-port 60 som aktiveres av et skiftsignal fra styremikroordet og av et påtrykt signal fra en OG-port 61 som på sin side åpnes av et M-signal fra et M-flagg 62 og aktiveres av et M-skiftsignal fra styremikroordet. Gruppestyreenheten i denne utførelse kan således iverksette en betingelsesfri forflytning i skiftregisteret ved påtrykk av skiftsignalet eller enheten kan alternativt iverksette en betinget forflytning dersom M-flagget 62 er satt ved å påtrykke M-skiftsignalet fra styremikroordet.
Prosessorelementene arbeider enten i seriell bit-modus eller i firebit modus hvor et halvt dataord (fire bit) prosesseres i løpet av en kommandosyklus. Prosessorelementet arbeider i firebitmodus når et firebitmodussignal fra styremikroordet påtrykkes, og da forflytter A- og B-skiftregistrene 52 og 53 fire bit i en syklus, mens de ellers forflytter kun én bit i en full kommandosyklus. Likeledes mottar skiftregistrene i denne firebit modus fire bit pr. syklus for lagring fra skiftinnterminalene (S/I på fig. 4).
Endelig kan A-skiftregisteret 52 også forflytte data i begge retninger, dvs. mot både skiftut-terminalen (S/O) eller mot skiftinn-terminalen (S/I), og forflytningsretningen velges i samsvar med et skiftkommandosignal fra styremikroordet. Dette skal også omtales nærmere senere i beskrivelsen i forbindelse med fig. 7. Evnen til å kunne forflytte innhold i skiftregisteret mot skiftinn-terminalen er anvendbar ved flytetallsaritmetikk, for eksempel ved normalisering som innbefatter at ved reduksjon av ledende nuller lagres disse i enden av
skiftregisteret, nærmest skiftinn-terminalen.
Den logiske krets 54 som kan utføre Boolsk algebra kobler datasignaler til den koplette adderer 51 fra en fire-linjes databuss 58 eller fra en av de nærmest liggende prosessorelementer i samsvar med "nærmeste nabo"-prinsippet. Avhengig av status av logiske funksjonssignaler fra styremikroordet utfører kretsen 54 én av 16 logiske operasjoner mellom et X-flagg 63 og signaler fra databussen 58, eller fra de nærmest liggende prosessorelementer. Hvis en logisk operasjon utføres mellom X-flagget 63 og signalene på databussen 58 gjøres dette i samsvar med signalet på hver av databussens linjer separat. Om for eksempel en OG-operasjon skal utføres skjer egentlig fire slike OG-operasjoner mellom X-flagget 63 og hvert av signalene på hver av databussens 58 linjer.
I enten seriell bitmodus eller firebits modus over-fører menteregisteret 55 et énbits mentesignal til den komplette adderer 51 og menteregisteret 55 holder en mentebit fra mentesignalet hver gang skiftklareringssignalet fra ELLER-porten 60 settes opp. Et menteslettesignal fra styremikroordet bringer utgangen av menteregisteret 55 til null når et slikt signal påtrykkes, og dette er anvendelig for samme for-mål som skiftslettesignalet for skiftregisterets utgang, nemlig for innledende innlesning av menteregisteret 55 før en adde-ringsoperasjon utføres.
I begge modi (seriell eller firebits) genererer dessuten den komplette adderer 55 fire addererutgangssignaler og et mentesignal hvor de første er koblet til A- og B-skiftregistrenes 52 og 53 skiftinn-terminaler (S/I) og til en inngangsport på et addererregister 57. Mentesignalet er da et mentebestemmende signal fra det høyere ordens adderertrinn i den komplette adderer 51, dvs. det trinn som genererer det addererutgangssignal som har den høyeste orden (ordenen "3") av de fire mulige ("null", "1", "2" og "3").
Dette høyeste ordens mentesignal og det laveste ordens mentesignal "null" fra addererens laveste ordenstrinn og som representer menteangivelsen fra dette trinn, er begge koblet til en multiplekser 64 som i respons på firebit-» modussignalet fra styremikroordet kobler ett av disse signaler til inngangen av en andre multiplekser 68 som i sin tur, i respons på et mentesettingsignal fra styremikroordet enten velger mentesignalet fra multipleksren 64 eller det laveste ordens logiske utgangssignal fra kretsen 54 for lagring i menteregisteret 55. Hvis mentesettingssignalet foreligger bringes multiplekseren 68 til å koble det lavere ordens logiske utgangssignal til menteregisteret 55 og dette register åpnes for å føre signalet til mente. Ved dette muliggjøres initialisering av menteregisteret 55 til en kjent status via den logiske krets 54. Hvis på den annen side mentesettingssignalet er komplementert (ført til negasjon) aktiveres multiplekseren 68 for kobling av mentesignalet fra multiplekseren 64 til menteregisterets inngang. Mentesignalet føres til mente hvis skiftklareringssignalet fra styremikroordet foreligger og påtrykkes.
Menteregisteret 55 mottar følgelig i firebit-modusen mentet fra det høyeste ordens trinn i addereren 51, hvilket tilsvarer mentet fra høyeste ordens trinn i det fire-bits datahalvord. I seriell bit-modus mottar menteregisteret 55 mentet fra det laveste ordens trinn i addereren og da ut-føres hovedsakelig de aritmetiske operasjoner i denne innenfor de lavere ordens trinn ved at signaler fra de høyere ordens trinn ignoreres.
M-flagget 62 settes også i avhengighet av signaler fra den komplette adderer 51 via en multiplekser 65 som enten kobler addererutgangssignalet "null" fra addereren 51 eller, dersom firebits modus-signalet foreligger, adderer-utgangssignalet "3". Signalet fra multiplekseren inverteres i en inverteringskrets 66 hvis utgang er koblet til inngangen av
en andre multiplekser 67 som i tillegg omfatter en andre inngangsport som mottar det lavere ordens signal fra den logiske krets 54. Hvis et NSM-signal (negasjonen av M-signalets sum) fra styremikroordet påtrykkes, kobler mulitplekseren 67 komplementet av det høyere ordens signal fra addereren 51 til M-flagget 62 for lagring i respons på et LDM-signal (innles eller påtrykk M) fra styremikroordet. Ellers settes M-flagget 62 fra signalene fra den logiske krets 54. En OG-port 70 kobler M-flaggets 62 status til databussen 58, særlig den linje
som fører de lavere ordens data "null" i samsvar med et RDM-signal (avles M) fra styremikroordet.
Hvis M-flagget 62 settes av addereren 51 kan dette for eksempel benyttes ved normalisering innenfor flytetallsaritmetikk. Flytetallets mantisse lagres da i A-skiftregisteret 52 og forflyttes mot skiftut-terminalen, dvs. skiftregisterets høyere ordens side, inntil det høyere ordens trinn inneholder verdien "1". I respons på hver forflytning i innholdet av A-skiftregisteret 52 inkrementeres eksponenten som ligger i B-skiftregisteret 53. Siden de ulike prosessorelementer i serieprosessoren 11 trenger forskjellige tall for ved normalisering å kunne forskyve innholdet av sine respektive A-skiftregistere 52, vil forflytningsoperasjonene innenfor registrene være avhengig av status av M-skiftsignalet (betinget forflytning) fra styremikroordet. Inntil en ener når det høyere ordens trinn i A-skiftregisteret 52 sørger inverteringskretsen 66 for at M-flagget 62 settes (dvs. at negasjonen av nullverdien fra skiftregisteret 52 lagres), og følgelig settes M-signalet opp. På denne måte klarerer MSH-signalet A- og B-skiftregistrene 52 og 53 for aktivering.
Når imidlertid en ener når det høyere ordens trinn i A-skiftregisteret 52 bevirker inverteringskretsen 66 at M-flagget tas ned (nullstilles) hvorved negasjon utføres av M-signalet. Når MSH-signalet fra styremikroordet settes opp, sperres eller hindres skiftregistrene 52 og 53 av det negasjonskoblede M-signal. M-flagget 62 kan også benyttes for innledende ekvivalering av flytetall før addisjon eller subtraksjon på lignende måte.
To ytterligere flagg settes av det lavere ordens utgangssignal fra den logiske krets 54, nemlig et WRT-flagg 71 (klarering for innlesning til lager) og det tidligere omtalte RTS-flagg 24. WRT-flagget 71 settes i avhengighet av et WRT-settingssignal fra styremikroordet og RTS-flagget 24 settes i samsvar med et tilsvarende RTS-settingssignal fra samme styreord. WRT-flagget 71 genererer et WRT-signal som kobles til prosessorelementbrikkens inngangsstyrekrets 33 for tilvisnings- eller rutingsdirigering og som på sin side genererer et WRT-klareringssignal som knyttes til hvert av lagrene 23 på brikken for styring av innlesning av data til disse.
Styrekretsen 33 tillater innlesning av data til lageret i tre tilfeller: Ved normal drift, dvs. når rutingsnettverket 30 (fig. 2) ikke er i bruk, genererer inngangsstyrekretsen 33 et WRT-klareringssignal for lageret når et innlesningssignal (WR) fra styremikroordet påtrykkes, under betingelse av at det tilhørende prosessorelements WRT-flagg er satt. Dette gir klarering for at det tilhørende lager 23 kan lagre de data som overføres fra databussen 58 via en sender/mottager 72 på den adresse som er fastlagt av adressesignalet i styremikroordet.
Alternativt, når rutingsnettverket er i bruk og faktisk overfører data mottar inngangsstyrekretsen 33 data som et innkommende datasignal. Tidsmessig parallelt med dette settes et rutingsklareringssignal opp (ENR). Som det vil bli forklart nærmere i forbindelse med fig. 10A, bestemmer de første seks bit som mottas av prosessorelementbrikken 20 hvilken brikke det dreier seg om i et bestemt brikkepar og hvilket prosessorelement på denne brikke som skal motta de innkommende data. Inngangsstyrekretsen 33 for rutingsdirigering mottar den identifiserende del av det innkommende datasignal og overfører denne del som et data "null"-signal til databussen 58 for det angitte mottagende prosessorelement og setter opp et WRT-klareringssignal for denne.
Endelig klarerer inngangsstyrekretsen 33 også lageret 23 for lagring av data når rutingsnettverket benyttes, men innimellom periodene med dataoverføring. Klareringen kan finne sted for eksempel når flere informasjonsmengder har adresse til ett bestemt prosessorelement fra forskjellige elementer under én hovedoverføringssyklus for informasjon, og mellom de perioder hvor informasjonsoverføringen foregår må
det adresserte prosessorelement utføre behandling av de sist mottatte data. Som forklart ovenfor omfatter en hovedover-føringssyklus flere såkalte minste overføringssykluser som hver initieres av rutingsklareringssignalet ENR og avsluttes av et BND-signal (foreta avgrening dersom dette ikke er utført). Hvis en bekreftelsesinstruks på utført avgrening ikke foreligger ved slutten av den minste overføringssyklus, betyr dette
at enkelte prosessorelementer fortsatt ligger inne med informasjon som skal overføres og BND-signalet fra styremikroordet indikerer at inngangsstyrekretsen vil vende tilbake til den innledende del av overføringssekvensen. Hvis beregninger skal utføres før starten av den neste minste overføringssyklus negasjonskobles rutingsklareringssignalet ENR, men BND-signalet holdes tilbake inntil beregningen er utført og resultatet inn-lest i lageret 23. Dette klareres i dette tilfelle av inngangsstyrekretsen 33 dersom WRT-flagget settes og innledningssignalet fra styremikroordet er oppsatt og påtrykkes. Imidlertid kommer WRT-klareringssignalet kun for de prosessorelementer som nettopp har mottatt informasjon under den inneværende minste over-føringssyklus.
Datajutgangen fra lageret 23 er koblet til en lagerstyrekrets 73 ,som skal beskrives nærmere i forbindelse med fig. 5A og 5B, og denne krets 73 er innrettet for å gi åpning eller klarering av fire separate lagermoduler 23 "0" - "3", og hver lagermodul er normalt tilknyttet et separat prosessorelement, men kan kobles til andre prosessorelementer i avhengighet av de betingelser som settes med de høyere ordens adressesignaler ADRS "10", "11" fra styremikroordet. I en utførelsesform av oppfinnelsen hvor lagermodulene hver rommer 1 Kb og når enten den ene eller den andre av de to høyere ordens adressebit (den tiende eller den ellevte) velges, vil hvert prosessorelement ha en effektiv lagringskapasitet på 4 Kb (4096 bit), og de øvrige prosessorelementer som vanligvis er koblet til det prosessorelement hvis lagermoduler ligger tilgjengelige for dette prosessorelement, sperres eller uvirksomgjøres effektivt. Dette kan være nyttig i visse situasjoner som omfatter tilfeller hvor det kreves mer lagringsplass enn det som normalt er til-gjengelig i ett prosessorelement. I tillegg kan det være nyttig i de tilfeller hvor det utføres operasjoner i hvert prosessorelement på parallelle data, hvorved operasjonene utføres serielt av ett prosessorelement som benytter de data som ligger lagret i samtlige lagermoduler. Ved å gjøre de data som finnes i lagermodulene direkte tilgjengelige for dette prosessorelement som utfører operasjonene serielt unngås behovet for at prosessorelementene må benyttes for informasjonsoverføringer
til det aktuelle element.
Data fra lagerstyrekretsen 73 lagres i et leseregis-ter 74 og kobles fra dette til sender/mottageren 72 som på
sin side kobler data videre til databussen 58. Denne overfører de samme data videre til inngangen av en multiplekser 75, og dersom et nabosignal fra styremikroordet ikke foreligger som påtrykk, viderekobler multiplekseren 75 utleste data fra databussen 58 via en buss 77 til inngangen på den logiske krets 54.
En multiplekser 76 velger et datasignal fra én av de tilliggende prosessorelementer i avhengighet av de betingelser som settes av retningssignaler (D "0", "1") fra styremikroordet. Hvis nabosignalet fra dette mikroord settes opp kobler multiplekseren 75 det signal som er utvalgt av multiplekseren 76 til den lavere ordens linje på bussen 77 og over-fører negasjonskoblede signaler til de gjenværende linjer i denne buss og muliggjør således overføring av denne del av informasjonen til den "nærmeste nabo"-overføringsmekanisme som er beskrevet i forbindelse med fig. 3.
Data viderekobles så til lagermodulene 23 for lagring som følger: Data fra databussen 58 kobles via sender/mottage-ren 72 til datainngangen DI på den tilhørende lagermodul, og avhengig av hvilken bit som foreligger i det høyere ordens adressesignal kobles i stedet data fra sender/mottageren 72 til en lagermodul 23 som normalt er tilknyttet et annet prosessorelement for lagring i dette, under styring av lagerstyrekretsen 73.
Dataoverføringsdelen i "nærmeste nabo"-overførings-mekanismen, beskrevet ovenfor i forbindelse med fig. 3, utføres slik: Data "0"-signalet fra databussen 58 kobles til den ene av inngangene på en multiplekser 80, og dersom hverken et rekke- eller spaltesignal fra styremikroordet settes opp, kobler multiplekseren 80 data "0"-signalet til inngangen av en demultiplekser 81. Hvis nabomodussignalet NR fra styremikroordet foreligger kobler demultiplekseren 81 data "0"-signalet til prosessorelementet bestemt av retningssignalet D "0", "1".
Hvis på den annen side hverken rekke- eller spalte-signalet fra styremikroordet er satt opp for påtrykk, kobler multiplekseren 80 utgangssignalet fra en ELLER-port 82 til demultiplekseren 81 og porten 82 åpnes av data "0"-signalet fra databussen 58 eller utgangen fra multiplekseren 76. Signalet som overføres til det tilliggende prosessorelement representerer således logisk ELLER av signalet fra et tilliggende prosessorelement og som mottas under den informasjonsover-føring som finner sted fra denne "nærmeste nabo", og datasignalet på den lavere ordens linje på databussen 58. Ved hjelp av denne mekanisme kan de data som ligger i de enkelte rekker og spalter lett sammenlignes, og dette er nyttig i forbindelse med oppsøking av minimal- og maksimal-verdier langs de rekker eller spalter som prosessorelementene danner i en matrise-strukturert serieprosessor. Hvis både rekke- og spaltesignale-ne samtidig forefinnes lettes sammenligningene som kan utføres for samtlige prosessorelementer i serieprosessoren 11, ved at dette kan skje simultant.
På fig. 4 er også vist de kretser som er knyttet til prosessorelementbrikkens inngangsstyrekrets 33 for dirigering av informasjon over rutingsnettverket. Som det ble bemerket tidligere i forbindelse med fig. 2 kan prosessorelementene på en brikke iterativt klareres for overføring av data over rutingsnettverket ved at hvert prosessorelement mottar et ROKI-signal som når påtrykt bevirker at prosessorelementet kan overføre datasignaler på en felles busslinje 90 som uttilvis-ningssignaler. Etter at det er gitt en kvittering på den over-førte datamengde genererer prosessorelementet et ROKU-signal (ruting ut-klarering ut) som kobles til det neste prosessorelement i overføringen som dette elements ROKI-signal.
I detalj foregår dette ved at når RTS-flagget settes og hvis en kvitteringsvippe 91 som er knyttet til ACK-flagget 26 for kvittering, vil det skje en negasjon av et kvitteringssignal fra vippen 91. Som respons på dette signal åpner en inverteringskrets 89 en NOG-port 92 slik at denne kobler et lavstatussignal til en inngang på en ELLER-port 93. Når ROKI-signalet fra prosessorelementet settes opp kobler
en inverteringskrets 94 et andre signal med lav status til ELLER-portens 93 andre inngang og åpner eller klarerer følge-lig denne til å tilveiebringe et senderstartsignal som på sin
side styrer klareringsutgangen på en drivkrets 95. Når sendestartsignalet foreligger kobler drivkretsen 95 data "0"-signalet fra databussen 58 til busslinjen 90 som uttilvisningssignal.
Lavstatussignalet fra NELLER-porten 92 komplementeres av en inverteringskrets 96 som aktiverer en ELLER-port 97 som deretter aktiverer data-inngangen på kvitteringsvippen 91.
Ved slutten av dataoverføringen settes et forsinket kvitteringssignal opp på en felleslinje 100 for samtlige prosessorelementer, kvitteringsvippen 91 aktiveres og tilveiebringer det ikke forsinkede kvitteringssignal. Som svar på dette sperrer inverteringskretsen 89 NOG-porten 92 som da sender ut et høystatussignal. Inverteringskretsen 96 kobler et lavstatussignal deretter til ELLER-porten 97 mens dennes andre inngangssignal som omfatter det nå etablerte kvitteringssignal holder kvitteringsvippen 91 aktivert med tanke på det senere oppsatte forsinkede kvitteringssignal.
Det høystatus utgangssignal fra NOG-porten 92 sperrer også NELLER-porten 93 og klarerer en OG-port 101. Den sperrede NELLER-port 93 gir negasjon av sendestartsignalet som i sin tur slår av drivkretsen 95. Den da klarerte OG-port 101 over-fører så det oppsatte ROKU-signal til det neste prosessorelement.
Det skal bemerkes at dersom RTS-flagget 24 ikke er satt, hvilket indikerer at prosessorelementet ikke er klarert for overføring av en informasjonsmengde over rutingsnettverket 30 (fig. 2), kobler RTS-flagget et lavstatussignal til NOG-porten 92 hvis utgangssignal da vil ha høy status og sperre NELLER-porten 93 og klarere OG-porten 101 for oppsetning av ROKU-signalet.
Etter at samtlige overføringer er utført i løpet av
en hovedoverføringssyklus, tilbakestilles samtlige kvitterings-vipper ved at det påtrykkes et resettingssignal fra styremikroordet i serieprosessoren 11.
I en spesiell utførelse settes alltid ROKI-signaler opp dersom prosessorelementet er det første i rekken elementer på en elementbrikke i det brikkepar som overfører datamengden først, som beskrevet ovenfor i forbindelse med fig. 2. I samsvar med dette kan i denne utførelse prosessorelementet starte overføringen av en informasjonsmengde umiddelbart etter at detsRST-flagg 24 er satt.
Det fremgår her at oppsettingen eller påtrykket av ROKI-signalet for ruting ut, klarering inn ikke bare behøver
å foregå som en forflytning nedover i det hierarki som prosessorelementene på brikken kan sies å danne. Hvis spesielt et RST-flagg 24 på et prosessorelement 21 med en prosessor 22 ikke er satt når dets ROKI-signal kommer opp, vil elementet øyeblikkelig etablere et ROKU-signal for klarering av det neste prosessorelement i hierarkiet. Hvis det imidlertid under hovedoverføringssyklusen kommer en datamengde som mottas av prosessorelementet og som forårsaker at dets RTS-flagg 24 settes siden (a) dets ACK-flagg 26 ikke er satt og (b) detsROKI-signal fremdeles foreligger, sperres OG-porten 101 for negasjon av ROKU-signalet til det etterfølgende prosessorelement i hierarkiet, og drivkretsen 95 klareres da øyeblikkelig for kobling av et leseregistersignal "0" til busslinjen 90 som et uttilvisningssignal. Denne mekanisme sørger for den spredt fordelte tilvisning av de datamengder som skal over-føres og som ble forklart ovenfor.
De nærmeste sider av beskrivelsen skal vies koblin-gene til og fra prosessorelementets lager. Som angitt ovenfor kan serieprosessoren 11 både arbeide i en 1 Kb-modus hvor hvert prosessorelement er knyttet til en lagringskapasitet på 1 Kb i form av en lagermodul (lageret 23, fig. 2 og 3), eller serieprosessoren 11 kan arbeide i 4 Kb-modus hvor hvert prosessorelement er inndelt i grupper på fire og fire med ett element tilknyttet sitt 1 Kb-lager i form av en lagermodul såvel som til de 1 Kb-lagermoduler som ellers (i 1 Kb-modus)
er knyttet til de tre øvrige prosessorelementer. Dette gjør det mulig å arbeide i parallell for samtlige prosessorelementer og gjør at de data som ligger i samtlige lagermoduler kan benyttes av hvert prosessorelement for videreprosessering uten behov for overføring av disse data i form av datagrupper.
Fig. 5A og 5B gir en oversikt over de kretser som sørger for dette.
På fig. 5A er en gruppe på fire prosessorer 22(0) - 22(3) koblet sammen med fire lagermoduler 23(0)- 23(3) under kommando av en lagerstyrekrets 73. En multiplekser/demultiplekser 110 kobler selektivt datasignaler fra og til samtlige lagermoduler 23(0) - 23(3) og prosessoren 22(0), og tre linje-kretser 111, 112, 113 overfører datasignaler mellom hver av lagermodulene 23(1) - 23(3) og respektive prosessorer 22(1) - 22(3). De lavere ordens (9:0) adressesignaler fra styremikroordet kobles til samtlige lagermoduler 23(0) - 23(3) i parallell for valg av en lageradresse i hver av modulene, mens de høyere ordens (11:10) adressesignaler fra styremikroordet er ført til lagerstyrekretsen 73 for styring av denne.
Hvis de høyere ordens adressesignaler begge er ført til negasjon opererer serieprosessoren 11 (fig. 1) i 1 Kb-modus hvor omvandlingskretsen (multiplekser/demultiplekser)
110 overfører datasignaler mellom prosessoren 22(0) og lager-modusen 23(0). De negasjonskoblede høyere ordens adressesignaler (bit 11 og bit 10) aktiverer en NELLER-port 114 som på sin side aktiverer klareringsutgangen på hver av linjekretsene 111 - 113. Dette bevirker at disse kan koble datasignaler mellom lagermodusene 23(1) - 23(3) og de respektive prosessorer 22(1) - 22(3).
Hvis på den annen side en av de høyere ordens adressesignaler foreligger (i ikke komplementær form) arbeider serieprosessoren 11 i 4 Kb-modus, og NELLER-porten 114 sperrer da omvandlingskretsene 111 - 113 på en slik måte at disse over-fører datasignaler med null-verdi til prosessorene 22(1) - 22(3). De høyere ordens adressesignaler gir klarering til omvandlingskretsen 110 for overføring av datasignalet mellom den ene av lagermodulene 22(0) - 22(3) i avhengighet av binær-verdien for de kodede høyere ordens adressesignaler, og prosessoren 22(0).
Fig. 5B viser et koblingsskjerna over én utførelse
av en krets som dekker en del av lagerstyrekretsen 73 mellom lagermodulen 23(3) og prosessoren 22(3) og hvor de kretser som kobler datasignalene til prosessoren 22(0) vises. Når det angis en adresse av de lavere ordens adressesignaler fra styremikroordet overfører lagermodulen 23(3) fire datasignaler
DAT(0)-DAT(3) på respektive linjer 120(0) - 120(3). DAT(0)-signalet tilsvarer innholdet av den adresse som er angitt av de lavere ordens adressesignaler, mens de tre øvrige datasignaler DAT(1) - DAT(3) tilsvarer innholdet av den adresse som i sekvens følger etter den første adresse.
Hvis serieprosessoren 11 ikke arbeider i 4 Kb-modus sperres en ELLER-port 121 for å negasjonskoble et 4K-modus-signal og en inverteringskrets 122 setter da opp et negatert 4K modus-signal som aktiverer fire koblingstransistorer 123(0) - 123(3) som overfører de respektive DAT(0) - DAT(3)-signaler til linjer 130(0) - 130(3) som DTP(3)-signaler for lagring i leseregisteret 74 som består av fire holdekretser 74(0) - 74(3). Disse lagrer de respektive signaler og kobler dem til prosessoren 22 (3) som holde(3)-signaler.
Hvis serieprosessoren befinner seg i sin 4 Kb-modus, åpner de høyere ordens adressesignaler ELLER-porten 121 slik at 4K-modus-signalet settes opp mens det negaterte 4K-signal negateres på ny for sperring av koblingstransistorene 123(0) - 123(3) og blokkering av overførselen av datasignaler til linjene 130(0) - 131(3), og 4K modus-signalet gjør i tillegg parallelltransistorer 131(0) - 131(3) ledende slik at de jorder linjene 130(0) - 130(3) og negasjonskobler samtlige DTB(3)-signaler. Som et resultat av dette tilbakestilles samtlige holdekretser 74(0) - 74(3) og holde(3)-signalene negateres og kobles til prosessoren 22(3).
Hvis i tillegg begge de høyere ordens adressesignaler foreligger, hvilket indikerer at datasignalene fra lagermodul 23(3) skal kobles til prosessor 22(0), aktiverer en demultiplekser 124 en linje 125(3) for etablering av et lagerdata(3)-signal som aktiverer koblingstransistoren 126(0) - 126(3) slik at disse tillater overføring av DAT(0) - DAT(3)-signalene på linjene 120(0) - 120(3) til linjene 127(0) - 127(3) som DTP(0)-signaler som så kobles til prosessoren 22(0).
Data kan leses ut fra prosessoren 22(3) til lagermodulen 23(3) hvis det negaterte 4K modus-signal foreligger når et INNLES(3)-signal påtrykkes av inngangsstyrekretsen 33 (fig. 4). INNLES(3)-signalet åpner OG-porter 132(0) - 132(3) som kobler DFP(3)-signaler fra prosessor 22(3) og til de respektive linjer 130(0) - 130(3). Det foreliggende negaterte 4K modus-signal aktiverer koblingstransistorene 123(0) - 123(3) slik at DFP(3)-signalene overføres til linjene 120(0) - 120(3) hvoretter de lagres i lagermodulen 23(3).
Lagerstyrekretsen 73 som er koblet til prosessorene 22(1) og 22(2) er tilsvarende det som fremkommer fra fig. 5H unntatt i at koblingstransistorene 126(0) - 126(3) er koblet til respektive linjer 125(1) - 125(2) og ligger under kommando av lagerdata(1)-henholdsvis (2)-signaler fra demultiplekseren 124.
Fig. 5C viser koblingen mellom lagerstyrekretsen 73 og prosessoren 22(0). Det fremgår at denne styrekrets 73 og den tilhørende kobling tilsvarer den kobling som er vist på fig. 5B unntatt i at det ikke finnes koblingstransistorer 123 eller parallelltransistorer 131. I stedet forbindes linjene 130(0) - 130(3) direkte til linjene 127(0) henholdsivs 127(3), og DTP(0)-signalene styrer holdekretsene 74(0) - 74(3) direkte. Videre styres koblingstransistorene 126(0) - 126(3) av lagerdata ( 0 ) -signalet fra demultiplekseren 124 for kobling av data-(0)-(3)-signalene fra lagermodulen 23(0) direkte til linjene 127(0) - 127(3) når lagerdata (0)-signalet foreligger. Dette signal tilveiebringes av demultiplekseren 124 når de høyere ordens adressesignaler begge er koblet til negasjon, dvs. når serieprosessoren 11 ikke befinner seg i sin 4 Kb-modus.
De neste sider er viet genereringen av statussignaler.
Som angitt i forbindelse med fig. 2 og 4 benytter gruppestyreenheten 10 (fig. 1) en bekreftelsesinstruks overført over statusbussen 15 for å fastslå om de forskjellige operasjoner er fullført av prosessorelementet 1 i serieprosessoren 11 og for overvåking av den videre dataprosessering. Bekreftelsesinstruksen foreligger for eksempel under informasjons-overføringen over rutingsnettverket 30 (fig. 2) når samtlige prosessorelementer som har informasjonsmengder for overføring (dvs. hvis RTS-flagg 24 er satt) har mottatt bekreftelse eller kvittering på at overføringene er registrert hos adressaten i løpet av en hovedoverføringssyklus. Bekreftelsesinstruksen foreligger også under normalisering innen flytetallsaritmetikk når slike talls mantisser er normalisert i samtlige prosessorelementer.
Ved både dataoverføringen og normaliseringen over-fører gruppestyreenheten 10 sekvenser av styremikroord og som gir klarering av serieprosessoren 11 for å delta i dataover-føringen eller i normaliseringsoperasjonen, helt til bekreftelsesinstruksen mottas. Et bestemt prosessorelement deltar i denne operasjon i avhengighet av den status som de forskjellige av elementets flagg har. Som beskrevet vil deltagelsen av et bestemt prosessorelement i en dataoverføring være avhengig av status for RST-flagget 24, ACK-flagget 26 for kvittering (bekreftelse) og ROKI-signalet (fig. 4). Deltagelsen i en normaliseringsoperasjon vil være avhengig av status for elementets M-flagg 62 (fig. 4).
På fig. 6 vises hvordan koblingen er innenfor en prosessorelementbrikke 20 med antallet N prosessorelementer 21 (0) - (N), hver med sin prosessor 22(0) - 22(N). Det fremgår hvordan en utgående bekreftelsesinstruks til serieprosessoren 11 (fig. 1) genereres i avhengighet av inngående bekreftelsers status. Hver av prosessorene 22(0) - 22 (N) på brikken har en utgående linje henholdsvis 150(0) - 150(N) som respektive fører M-signalene M(0) - M(N). Den foreliggende eller komplementerte status av hvert signal M(0) - M(N) tilsvarer den satte eller tilbakestilte stilling av prosessorens M-flagg 62 (fig. 4). Hvis således et M-flagg 62 er satt kommer prosessorens M(x)-signal opp, ellers føres dette signal til negasjon, (x er her en verdi som varierer fra 0 til N).
Samtlige linjer 150(0) - 150(N) er sammenkoblet i en felles linje 151 slik at det dannes en ELLER-kobling. Felleslinjen 151 fører på denne måte et M-signal som er en kombinasjon av samtlige M(x)-signaler hvis foreliggende eller komplementerte form avhenger av status for samtlige M(x)-signaler fra brikkens totale antall prosessorer. Hvis således M-flagget 62 (fig. 4) i en hvilken som helst prosessor 22(0) - 22(N) er satt, foreligger denne prosessors tilsvarende M(x)-signal og det resulterende eller sammensatte M-signal på felleslinjen 151 foreligger likeledes i ikke komplementert form. Hvis derimot M-flagget 62 på samtlige prosessorer 22 er tilbake stilt vil samtlige M(x)-signaler føres til negasjon og M-signalet på felles linjen 151 vil også være negatert. Som tidligere beskrevet i forbindelse med fig. 4 har M-flagget 62 blitt tilbakestilt når prosessoren har fullført sin normali-seringsoperas jon , og dette betyr at når M-signalet på felleslinjen 151 er ført til negasjon, vil samtlige prosessorer på brikken ha fullført sin normaliseringsoperasjon.
Som likeledes beskrevet tidligere i forbindelse med fig. 4 forstår man at når hver prosessor 22(x) får bekreftet sin overføring av en informasjonsmengde via rutingsnettverket 30 (fig. 2) tilveiebringer den sitt ROKU(x)-signal som klarerer neste prosessor 22(x+1) på brikken for overføring av dennes informasjonsmengde. Hvis prosessoren 22(x) ikke er klarert for overføring av en datamengde, dvs. hvis dens RTS-flagg 24 er tilbakestilt når den mottar ROKI-signalet fra den foregående prosessor 22(x-l) (som tilsvarer den første prosessors ROKU-signal), tilveiebringer prosessoren sitt eget ROKU-signal umiddelbart. Når så den siste prosessor 22(N) tilveiebringer sitt ROKU(N)-signal har således samtlige prosessorer på brikken og som var klarert for overføring av data-informasjon over rutingsnettverket utført denne overføring og har likeledes mottatt bekreftelse eller kvittering på at datamengden er mottatt av adressaten.
Med videre henvisning til fig. 6 fremgår at en inverteringskrets 152 danner komplementet av ROKU(N)-signalet fra prosessor 22(N) og fører dette inverterte signal på linjen 153 til en multiplekser 154. Signalet på linjen 153 er således lavt når ROKU(N)-signalet som tilføres foreligger (har høyt nivå). Felleslinjen 151 og linjen 153 er begge ført til hver sin inngang på multiplekseren 154 som ligger under kommando fra et DN-signal (et selektert bekreftelsessignal) fra styremikroordet. DN-signalet klarerer multiplekseren slik at denne kobler signalet fra én av linjene 151 eller 153 til sin utgang som et BEKREFT X-signal som i sin tur kobles til den ene av inngangene på en ELLER-port 155. Hvis signalet på en av linjene 151 eller 153, som valgt av DN-signalet, foreligger (med høyt nivå), ligger BEKREFT X-signalet også høyt, men ellers føres dette til negasjon. Hvis BEKREFT X-signalet ligger høyt, fører ELLER-porten 155 også ut et høyt utgående bekreftelsessignal.
ELLER-porten 155 har en andre inngang som mottar et PREV-signal (tidligere utført) fra en ELLER-port 156 som på
sin side mottar fire inngående bekreftelsesinstrukser A-D hvilke respektive samsvarer med de utgående bekreftelsessigna-ler fra en annen prosessorelementbrikke. Det utgående bekreftelsessignal fra brikken 20, vist på fig. 6, kan også føres som.et inngangssignal til en ELLER-port som tilsvarer ELLER-porten 156, men som befinner seg på en annen brikke.
Den resulterende forbindelse som danner et ELLER-tre, fører
til ett utgående bekreftelsessignal som fra en hvilken som helst prosessor føres frem til gruppestyreenheten som den endelige bekreftelsesinstruks. Når altså dette har lavt nivå, bestemt av status for DN-signalet vil enten alle M(x)-signaler fra samtlige prosessorbrikker ligge lavt, hvilket betyr at samtlige M-flagg 62 er tilbakestilt, eller samtlige ROKU(N)-signaler ligger høyt, og dette indikerer at samtlige overførte datamengder virkelig er overført og bekreftet korrekt mottatt. Når altså bekreftelsesinstruksen har lavt spenningsnivå, har serieprosessoren 11 fullført sin hovedoverføringssyklus eller operasjonen, såsom en normalisering av et flytetall,
bestemt av M-flaggene 62 i prosesselementene fvar avsluttet.
Nå skal dataprosessorsystemets skiftregister beskrives, særlig i forbindelse med fig. 7.
Som beskrevet ovenfor i forbindelse med fig. 4, kan A-skiftregisteret 52 ikke bare forflytte data mot sin skift-ut-terminal S/O, men også mot sin skiftinnterminal S/I. Denne evne muliggjør at skiftregisterets innhold lett kan forflyttes før operasjoner såsom addisjon eller subtraksjon med flytetall og som krever at tallets desimaldel får forskjøvet sin eksponent for å angi et lavere tall.
Fig. 7 viser skjematisk en del av A-skiftregisteret 52, og det fremgår at dette i én utførelse omfatter åtte celler 160(0) - 160(7), hver bestående av fire trinn. Hvert trinn rommer én bit med data. Cellen 160(0) inneholder de minst signifikante bit (LSB), mens de påfølgende celler
160(1), 160(2) etc. inneholder gradvis mer signifikante bit slik at cellen 160(7) i avhengighet av signalet A SHFT SZ fra styremikroordet (fig. 4) kan inneholde inntil det mest signifikante bit (MSB). Data forflyttes i A-skiftregisteret 52
via cellen 160(0). Cellen fra hvilken data forflyttes bestemmes av status for signalet A SHFT SZ fra styreordet.
Siden kretsoppbyggingen av samtlige celler er den samme, skal kun celle 160(4) beskrives i nærmere detalj. Denne celle omfatter fire trinn 161(0) - 161(3), hvert omfattende et par inverteringskretser som i sin tur omfatter inngangsinver-teringskretser 162(0) - 162(3) og utgangsinverteringskretser 163(0) - 163(3). Trinnet 163(0) lagrer de lavere ordens data fra cellens totale innhold, mens trinnet 161(3) lagrer cellens høyere ordens data.
Lar man n være et heltall fra 0 til og med 3, vil hvert par inverteringskretser 162(n) og 163(n) i hvert trinn være sammenkoblet via styretransistoren 180(n) og 181(n) som danner en vippe som da kan lagre én bit data. I hvert trinn er utgangen av inverteringskretsen 162(n) koblet via en styre-transistor 180(n) som normalt holdes påslått av et styresignal PH 1, til inngangen på inverteringskretsen 163(n). Utgangen
av denne krets er koblet via styretransistoren 181(n) til et knutepunkt 182(n) til hvilket også inngangen på inverteringskretsen 162(n) er koblet. Transistoren 181(n) som normalt holdes påslått av et positivt styresignal HOLD bestemmer tilbakekoblingen fra utgangen fra inverteringskretsen 163(n) til inngangen av inverteringskretsen 162(n) som gir låsing av nivået i knutepunktet 182(n) på kjent måte.
Ved skiftoperasjoner føres HOLD-signalet til negasjon, hvilket fører til at transistoren 181(n) slås av og bryter tilbakekoblingen. I tillegg negateres PH 1-signalet hvorved transistoren 180(n) slås av og skiller utgangsinverteringskret-sen 163(n) fra inngangsinverteringskretsen 162(n). Dette gjør det mulig for inngangsinverteringskretsen i dette trinn å over-føre et signal som representerer de lagrede data samtidig som inngangsinverteringskretsen 162(n) i trinnet mottar et signal som representerer signal som i sin tur representerer én bit data fra et annet trinn som beskrevet nedenfor.
Cellen 160(4) mottar fire bit med data, nemlig DATA IN (O)-data INN (3) fra cellen 160(3) på henholdsvis linjene 164(0) - 164(3). Cellen 160(4) overfører fire bit med data, omfattende DATA UT (0) - DATA UT (3) på de respektive linjer 165(0) - 165(3) til trinnet 1,60(5). Hvis i tillegg trinnet 160(4) er et trinn fra hvilket datasignaler overføres til multiplekseren 56 (fig. 4) ville hvert trinn omfatte en koblingstransistor 170(0) - 170(3) tilkoblet linjene 165(0) - 165(3) og styrt av et utgangssignal fra celle 4 i signalet A SHFT SZ fra A-skiftregisteret 52. Når utgangssignalet fra celle 4 foreligger (med status "høy") bevirker dette at transistorene 170(0) - 170(3) overfører DATA UT (0) -
DATA UT (3)-signalene til A-skiftregisterinngangen på multiplekseren 56.
Størrelse og retning av A-skiftregisterets 52 dataforflytning styres av retningssignalet SHIFT DIR og et 4 bit modus-signal NM hvilke begge fremgår av styremikroordet fra gruppestyreenheten 10 og fra skiftklareringsignalet SHFT EN,
i tillegg til tidsstyresignalene HOLD og PH 1. A-skiftregisteret 52 genererer tre ytterligere styresignaler ut fra retnings- og modus-signalene. Nærmere bestemt omfatter A-skiftregisteret 52 en OG-port 171 som mottar retnings- og modus-signalene og genererer et modusskiftsignal NS som i høy tilstand åpner den ene inngang av en OG-port 176. Hvis NM-signalet for den 4 bits modus ligger høyt når skiftklareringssignalet også er høyt, gir OG-porten 176 et høyt NSU oppadgående modusskiftsignal. Som beskrevet nærmere nedenfor settes betingelsene for A-skiftregisteret 52 når NSU-signalet ligger høyt slik at skiftregisterets data forflyttes fire bit av gangen, dvs. cellen 160 som lagrer de nest mest signifikante databit mottar denne dataforflytning. Når således det oppadgående modusskiftsignal NSU er høyt, foreligger betingelsen for at data forflyttes fra celle til celle og lagres i samme trinn i hver enkelt celle. De data som forflyttes til celle 160(0) mottas på sin side fra den komplette adderer 51.
En andre OG-port 172 genererer et skiftsignal BS ut fra negasjonen av NM-signalet, invertert i inverteringskretsen 173 og retningssignalet fra skiftregisteret. Når således
dette retningssignal ligger høyt, men NM-signalet er lavt,
blir skiftsignalet BS fra OG-porten 172 også liggende høyt.
Når skiftklareringssignalet SHFT DIR påtrykkes tilveiebringes et oppadgående skiftsignal BSU fra en OG-port 177, men siden NM-signalet er negatert, blir modusskiftsignalet NS fra OG-porten 171 også negatert og NSU-signalet fra OG-porten 176 vil holdes lavt når skiftklareringssignalet ligger høyt. Som det imidlertid skal forklares nærmere nedenfor forflytter A-skiftregisteret 52 datagrupper oppover ett trinn av gangen når det oppadgående skiftsignal BSU ligger høyt. Datagruppen i det mest signifikante trinn i hver celle forflyttes da til den minst signifikante celle i den neste mer signifikante celle,
og datagruppen som forflyttes til dette minst signifikante trinn (tilsvarende trinnet 161(0)) fremkommer fra ADDERER UT (0)-signalet fra den komplette adderer 51 (fig. 4).
Nok en OG-port 174 genererer et NED-signal som respons på komplementet av NM-signalet og likeledes komplementet av skiftretningssignalet, invertert i inverteringskretsen 175. Når skiftklareringssignalet neste gang blir liggende høyt skifter status for et skift-NED-signal SD til status "høy" av en OG-port 178 som åpnes av NED- og skiftklareringssignalene. Når således både skiftretningssignalet og det 4 bit modus-signal NM ligger lavt, blir NED-signalet liggende høyt, og da blir også de oppadgående skiftsignaler NSU og BSU fra OG-portene 176 og 177 liggende lavt. Som det skal fremgår av det følgende forflytter A-skiftregisteret 52 datagrupper nedover ett trinn av gangen når skift-NED-signalet SD ligger høyt. Datagruppen i det minst signifikante trinn i hver celle, unntatt det mest signifikante trinn i celle 160(7) forflyttes til det mest signifikante trinn i den neste mindre signifikante celle. En datagruppe med verdien null lagres i mest signifikante celle (tilsvarende trinnet 161(3)) i den mest signifikante celle 160 (7) .
Hvert trinn 161(0) - 161(3) omfatter videre tre transistorer 183(n), 184(n) og 185(n) som hver kan aktiveres av henholdsvis ett av signalene BSU, NSU og SD. Når et styresignal kommer inn og har status "høy" kobler den aktiverte transistor et signal som er representativt for status av en databit fra et annet trinn til knutepunktet 182(n) for det respektive trinn.
I samsvar med status for BSU-signalet i trinn
161(0) slås transistor 183(0) på og kobler DATA INN(3)-signalet på linjen 164(3) til knutepunktet 182(0), og dette datasignal tilsvarer bitstatus i det mest signifikante trinn i celle 160(3). Som respons på BSU-signalet slås transistorene 183(1)-183(3) på og kobler DATA UT (0) - DATA UT (2)-signalene til knutepunktene 182(1) - 182(3). Som resultat av dette forflyttes datagrupper i hvert av trinnene, nemlig det mest signifikante trinn i celle 160(3) og trinnene 161(0) - 161(2) opp ett trinn og lagres i trinnene 161(0) - 161(3) i cellen 160 (4) .
Som respons på påtrykket av et høyt NSU-signal slås transistorene 184(0) - 184(3) på og kobler DATA INN(0) -
DATA INN(3)-signalene på linjene 164(0) - 164(3) respektive til knutepunktene 182(0) - 182(3). Disse datasignaler tilsvarer datagruppene fra de respektive trinn i celle 160(3). Som et resultat av dette forflyttes datagruppene i hver av trinnene i denne celle opp én celle (4 trinn) og lagres i trinnene 161(0) - 161(3) i celle 160(4).
Som respons på trykket av et høyt SD-signal slås transistorene 185(0) - 185(2) på og kobler DATA UT (1) -
DATA UT (3)-signalene på linjene 165(1) - 165(3) respektive til knutepunktene 182(0) - 182(2) for lagring i trinnene 161(0) - 161(2). I tillegg slås transistoren 185(3) på for å koble DATA UT (0) [celle 160(5)]-signalet fra det minst signifikante trinn i celle 160(5) [dvs. det trinn som tilsvarer trinnet 161(0)] til knutepunktet 182(3) for lagring i trinnet 161(3). En transistor i det mest signifikante trinn i celle 160(3) tilsvarer transistoren 185(3) og mottar DATA
UT (0)- signalet fra trinn 161(0) for lagring i dette. Som
et resultat av dette forflyttes datagrupper i hvert av trinnene ned ett trinn.
Nå skal rutingsnettverket 30 beskrives:
Som beskrevet tidligere i forbindelse med fig. 2, benyttes rutingsnettverket 30 for overføring av informasjonsmengder mellom prosessorelementer som typisk ikke befinner seg på én og samme elementbrikke. Et generelt oversiktsskjerna for en utførelse av et rutingsnettverk som er bygget opp i samsvar med oppfinnelsen er vist på fig. 8A. Det fremgår her at rute-nettverket 30 omfatter flere identiske switchebrikker (hver switchebrikke er angitt som et rektangel på fig. 8) som er gruppert i tre switchetrinn 201, 202 og 203. De interne switchekretser i switchebrikkene 200(n) skal beskrives senere i forbindelse med fig. 9, 10A, 10B og 10C.
Før vi går videre kan det være nyttig å omtale for-matet av den informasjonsmengde som skal overføres via rutingsnettverket 30, og fig. 8B viser her en datamengde for overføring og som starter med en innledende del 204 på 23 bit, nemlig bit(0)-(22), og som adresserer det tiltenkte mottagende pro-sesssorelement, fulgt av informasjonsdatabitene som startet med bit (23). Den innledende del 204 omfatter tre rutingsfelter, henholdsvis 205 - 207 og som hvert styrer switchingen via et av switchetrinnene 201 - 203 som i sin tur respektive holder tilbake ett rutingsfelt, dvs. switchetrinnet overfører ikke data i dette felt til det neste switchetrinn eller til den mottagende prosessorelementbrikke.
Hvert rutingsfelt starter med en protokollbit P (som kommer opp med et lavt spenningsnivå) som gir indikasjon på
at informasjonsbit følger. Hvis protokollbiten P ikke mottas ved en inngangsport ignorerer switchebrikkene de påfølgende signaler ved den bestemte inngangsporten under den minste overføringssyklus. De fire bit som følger hver protokollbit er rutingsadressebit RTR ADRS som benyttes av rutingsnettverket for å etablere en switchevei gjennom trinnet, hvilket skal beskrives nedenfor i forbindelse med fig. 9 og 10A - 10C.
Hvis en switchevei er opprettet gjennom samtlige switchetrinn, overføres en protokollbit (bit 15) til elementbrikkeparet
(fig. 2) som er koblet til utgangslinjen fra switchetrinnet 203. Ved bit 16 genererer elementbrikkene et ACK-signal (kvittering) som respons på denne overføring, og kvitteringssignalet overføres over switcheveien som er opprettet gjennom rutingsnettverket 30. Samtidig oppretter switchebrikkene
den switchevei som bevirker at et signal fra det mottagende elementbrikkepar og koble dette signal til elementbrikken 20 som sender ut informasjonen og som benytter kvitteringssignalet for setting av det utsendende prosessorelements ACK-flagg 26 (fig. 2 og 4).
Etter overføringen av ACK-signalet følger en seks-bits prosessoridentifikasjon PROC ID over switcheveien. Det første bit i denne identifikasjonsgruppe fastlegger hvilken brikke 20 i brikkeparet som inneholder det prosessorelement som skal motta informasjonsmengden, og de siste fem bit gir identi-fikasjon av prosessorelementet på den fastlagte brikke. De neste bit er informasjonsmengden som kobles via prosesselement-brikkens rutingsstyring, inngangsstyrekretsen 33 (fig. 2 og 4) til det aktuelle prosessorelement.
De to switchetrinn 201 og 202 på fig. 8 er hver oppdelt i fire switchegrupper, og figuren viser én av disse grupper. Det siste switchetrinn 203 virker som en krysskoblings-switch eller en koordinatvelger for å switche utgangene fra de fire switchegrupper til prosessorelementbrikkene. Siden samtlige fire switchegrupper er identiske, vil kun den ene som er vist på fig. 8A beskrives i detalj. Denne switchegruppe omfatter 16 switchebrikker som er angitt med henvisningstallene 201(0) - 201(15) i switchetrinnet 201 og ytterligere seksten switchebrikker som er angitt med henvisningstallene 202(0) - 202(15) i switchetrinnet 202.
Hver switchebrikke 201(n) og 202(n), idet "n" er et heltall, har 64 inngangsporter, generelt angitt med henvisningstallet 210* og 64 utgangsporter, generelt angitt med henvisningstallet 2li'. De 64 utgangsporter 21l' er gruppert i 16 utgangsgrupper hver med fire utgangsporter, og hver av de
16 utgangsgruppene identifiseres ved en koding av de fire adresseringsbit RTR ADRS i den innledende del 204 (fig. 8B) som holdes tilbake av switchebrikken. Når det til en inngangsport kommer en rutingsadresse med en bestemt koding, søker switchebrikken å åpne en switchevei fra denne inngangsport til en av de fire utgangsporter i utgangsgruppen som adresseres av denne datagruppe. Hvis rutingsadressen som mottas på fire eller færre inngangsporter på switchebrikken fastlegger en bestemt utgangsgruppe kan switcheveier opprettes til denne fra samtlige inngangsporter. Hvis imidlertid rutingsadresseinfor-masjonen som angir en bestemt utgangsgruppe mottas på flere enn fire inngangsporter vil høyst fire switcheveier kunne opprettes til utgangsgruppen, og de øvrige informasjonsmengder for hvilke switcheveier ikke kan opprettes blir da blokkert.
Utgangsportene på switchebrikkene 201(0) - 201(15)
i det første switchetrinn 201 er forbundet med inngangsportene på switchebrikkene 202(0) - 202(15) på det andre switchetrinn på følgende måte: Samtlige utgangsporter på brikkene 201(0) - 201(15) i de grupper som er knyttet til "0000"-kodingen for rutingsadressen som holdes tilbake av switchebrikkene 201(0) - 201(15) er forbundet med inngangsportene på switchebrikken 202(0). Dette er vist på fig. 8A med de linjer som er angitt med "4 x 0000" fra de høyre sider av switchebrikkene 201(0) - 201(15) til den venstre side av switchebrikken 202(0).
(I angivelsen "4 x 0000" på fig. 8A betyr første siffer "4" at den aktuelle linje omfatter fire tilkoblede ledninger, og den andre siffergruppe "0000" indikerer at ledningene er knyttet til "0000"-kodingen for de første fire rutingsadressesignaler som holdes tilbake av switchetrinnet 201.)
Tilsvarende er samtlige utgangsporter på brikkene 201(0) - 201(15) i de grupper som er knyttet til besiffringen "0001" som koding for rutingsadressen som holdes tilbake av switchebrikkene 201(0) - 201(15) forbundet med inngangsportene på switchebrikken 202(1) som angitt på fig. 8A med de linjer som har besiffringen "4 x 0001" og som strekker seg fra høyre side av switchebrikkene 201(0) - 201(15) til venstre side av switchebrikken 202(1). Dette forbindelsesmønster mellom switchebrikkene i de første to trinn 201 og 202 gjentas for samtlige øvrige switchebrikker 202(2) - 202(15) som antydet på figuren, og inngangsportene på switchebrikkene 202(15) er endelig forbundet med utgangsportene på switchebrikkene 201(0) - 201(15) som ligger i de grupper som er knyttet til besiffringen "lill" og som angir rutingsadressen som holdes tilbake av switchebrikkene 201(0) - 201(15). Således er utgangsportgruppene på hver av switchebrikkene 201(0) - 201(15) forbundet med forskjellige switchebrikker 202(0) - 202(15) i det andre trinn 202, og forbindelsen er avhengig av rutingsadressen som holdes tilbake av switchebrikkene i det foregående, første trinn.
På samme måte som beskrevet ovenfor er de 64 utgangsporter på hver av switchebrikkene 202(0) - 202(15) i det andre switchetrinn 202 også oppdelt i 16 grupper med hver fire porter, og på samme måte som switchebrikkene 201(0) - 201(15) er hver utgangsportgruppe på switchebrikkene 202(0) - 202(15) knyttet til én koding av de fire rutingsadressesignalerRTR ADRS som holdes tilbake av de samme brikker. Utgangsterminal-gruppene på switchebrikkene 202(0) er for eksempel koblet via ledninger med indikasjonen "4 x 0000 0001" - "4 x 0000 1111", med "4" indikerende antall ledninger (med hver ledning forbundet til én utgangsport), mens den første blokk med fire sifre "0000" indikerer de rutingsadressebit som holdes tilbake av det første switchetrinn 201, mens den andre blokk med fire sifre "0000" og "1111" angir de rutingsadressebit som holdes tilbake av switchebrikkene 202(0) - 202(15). Ledningene som er forbundet med utgangsportgruppen på switchebrikkene 202(1) - 202(15) er angitt med tilsvarende indikasjon.
Som beskrevet ovenfor er switchetrinnene 201 og 202 inndelt i fire switchegrupper (kun én gruppe er vist på figuren) hvis utganger blir switchet i krysskoblingsswitchetrinnet 203. De øvrige tre switchegrupper i switchetrinnene 201 og 202 omfatter brikker som tilsvarer switchebrikken 202(0) og som har utgangsporter knyttet til rutingsadressebitgruppene "0000 0000" - "0000 lill", brikker som tilsvarer switchebrikken 202(1) med utgangsportgrupper knyttet til rutingsadressebitgruppene "0001 0000" - "0001 lill", og videre på samme måte.
Krysskoblingsswitchetrinnet 203 omfatter 16 kryss-koblingsblokker hver med 16 krysskoblingsswitchebrikker 203(0) - 203(255) [kun switchebrikkene 203(0) - 203(3) er vist på fig. 8A], idet hver krysskoblingsswitcheblokk switcher utgangssignalene fra utgangsportgruppene i den tilsvarende switchebrikke i hver av switchegruppene. Hver av de 16 krysskoblingsswitchebrikker i hver av krysskoblingsswitcheblokkene switcher på sin side utgangene fra de tilsvarende portgrupper i det samsvarende trinn 202, og samtlige brikker i alle fire grupper gjennomløpes. På denne måte forbindes krysskoblingsswitchebrikken 203(0) til, og switcher utgangene fra de utgangsportgrupper på switchegruppen 202(0) som er angitt med "4 x 0000 0000" og tilsvarende switchebrikker i hver av de andre switchegrupper. Analogt er krysskoblingsswitchebrikken 203(1) forbundet med og switcher utgangene fra den portgruppe på switchebrikken 202(0) som er angitt med "4 x 0000 0001" og tilsvarende switchebrikker i hver av de øvrige switchegrupper. I tillegg forbindes den siste krysskoblingsswitchebrikke i krysskoblingsswitcheblokken som er forbundet med switchebrikken 202(0) (og tilsvarende switchebrikker i de øvrige switchegrupper), nemlig krysskoblingsswitchebrikken 203(15), og switcheutgangene fra den portgruppe på switchegruppen 202(0) som er angitt med "4 x 0000 1111" og tilsvarende switchebrikker i hver av de øvrige switchegrupper.
Krysskoblingsswitchebrikkene 203(16) - 203(255) i hver av de øvrige krysskoblingsswitcheblokker er tilsvarende forbundet med de øvrige switchebrikker 202(1) - 202(15) og tilsvarende switchebrikker i de øvrige switchegrupper.
Hver krysskoblingsswitchebrikke virker som en kryss-koblingsswitch eller koordinatvelger, dvs. brikken knytter hver av sine 16 utganger til én gruppering av de endelige fire rutingsadressebit som den mottar fra switchetrinnet 202 og dettes switchebrikker. Switchebrikken 203(0) har for eksempel 16 utgangsporter som hver er forbundet over en ledning med henholdsvis angivelsen "1 x 0000 0000 0000" - "1 x 0000 0000 1111". I dette tilfelle betyr den første "1" at det er én ledning, den neste siffergruppe, dvs. "0000" tilsvarer rutingsadressebitene som holdes tilbake av switchetrinnet 201, den andre siffergruppe, nemlig siffergruppen "0000" tilsvarer rutingsadressebitene som holdes tilbake av switchetrinnet 202, og den siste og tredje siffergruppe som varierer fra "0000" - "1111" tilsvarer rutingsadressebitene som mottas og holdes tilbake av krysskoblingsswitchebrikken 203(0).
Utgangsportene på de øvrige krysskoblingsswitchebrikker 203(1) - 203(255) har tilsvarende angivelser i forbindelse med rutingsadressebitene. Det vil fremgå for de som er kjent innen dette fagområde at:
(1) hver av de 16 utgangsporter i hver krysskoblingsswitchebrikke 203(0) - 203(255) er knyttet til én koding av den tredje gruppe rutingsadressebit (dvs. tredje siffergruppe knyttet til hver utgangslinje fra krysskoblingsswitchebrikken som er vist på fig. 8A), (2) hver av de 16 krysskoblingsswitchebrikker i hver krysskoblingsswitcheblokk er knyttet til en bestemt koding av den andre gruppe rutingsadressebit (dvs. andre siffergruppe knyttet til hver utgangslinje fra krysskoblingsswitchebrikkene angitt på fig. 8A), og (3) hver av de 16 krysskoblingsswitcheblokkene er knyttet til én bestemt gruppering av den første gruppe rutingsadressebit (dvs. den første siffergruppe knyttet til hver av utgangslinjene fra krysskoblingsswitchebrikkene som er vist på fig. 8A).
I samsvar med dette tilveiebringer det rutingsnettverk som er angitt på fig. 8A switche- eller overføringsveier fra inngangsportene på switchebrikkene i trinn 201 til utgangsportene eller -ledningene fra krysskoblingsswitchebrikkene i krysskoblingsswitchetrinnet 203 for samtlige mulige bitmønstre i rutingsadressene RTR ADRS.
Rutingsnettverket 30 som er vist på fig. 8A har en rekke fordeler, særlig knyttet til benyttelsen av multiple utgangsporter fra switchetrinnene 201 og 202 til grupper som er låst til samme bitmønster i rutingsadressen. Dette reduserer vesentlig antall switchetrinn som det er behov for og reduserer antallet switchebrikker og forbindelsesledninger mellom de enkelte brikker. Dette fører videre til en reduksjon av rutingsnettverkets feilhyppighet siden denne er direkte knyttet til antall brikker og særlig til antall ledninger som forbinder de enkelte brikker.
I tillegg oppnås ved å knytte flere ledninger i en portgruppe til hver av bitmønstrene i rutingsadressene at dersom en ledning eller dens tilknyttede drivkrets på brikken får brudd, vil likevel switchebrikkene være i stand til å overføre den ønskede informasjon over de gjenværende ledninger i portgruppen. Den overførte datamengde som kan tas hånd om vil da være noe redusert, men overføringene kan fremdeles avvikles via rutingsnettverket 30.
Nå skal en switchebrikke beskrives nærmere:
Den indre oppbygning og enkeltkretser i en switchebrikke 201(n) eller 202(n) skal nå beskrives med henvisning til fig. 9 og 10A - 10C. Det skal forøvrig bemerkes at samme brikke som her beskrives også gjelder for en krysskoblingsswitchebrikke i krysskoblingsswitchetrinnet 203.
Fig. 9 viser den generelle oppbygning av en del av switchebrikken i samsvar med oppfinnelsen, og det fremgår at den omfatter flere switchekretser som hver er knyttet til sin inngangsport 210'. Én slik switchekrets, angitt med henvisningstallet 210(0) er vist på fig. 9. I en utførelse omfatter en switchebrikke 64 switchekretser. Samtlige av disse er identiske slik at kun én er vist på figuren. Hver av switchekretsene er koblet til én respektive inngangsport 210' slik at switchekretsen 210(0) er koblet til inngangsporten 210'(0) og generelt er en switchekrets 210(u), hvor "u" er et heltall, tilkoblet en inngangsport 210'(u).
Switchekretsen 210(0) omfatter en inngangskrets 211(0), 16 koblingsgrupper 212(0) - 212(15) [generelt angitt som 212(v)] og 16 utgangsportgrupper 217(0) - 217(15)
[generelt angitt som 217(v)]. Hver utgangsportgruppe omfatter fire utgangskretser som generelt er gitt henvisningstallet 217(v)(w). Inngangskretsen 211(0) som er beskrevet nedenfor i forbindelse med fig. 10A, mottar et inngangs(0)-signal fra et prosessorelementbrikkepar dersom brikken befinner seg i trinn 201 (fig. 8A) eller fra et tidligere switchetrinn hvis brikken befinner seg i trinn 202 eller 203. I respons på inngangs(0)-signalet overfører inngangskretsen 211(0) et adressesignal ADRS(0) til en linje 213(0), og dette adresse-signal er komplementet av rutingsadressebitmønsteret som holdes tilbake av brikken. Likeledes overføres et datasignal DAT(0) til en linje 214(0) for de øvrige bit i informasjonsmengden.
Hver koblingsgruppe 212(v) omfatter en adressedekode-og styrekrets 215(0) - 215(15) og som generelt skal angis med henvisningstallet 215(v) og kalles en adressekrets, og en koblingskrets 216(0) - 216(15) [generelt angitt som 216(v)]. En kretsutførelse for en koblingsgruppe skal beskrives i detalj i det følgende i tilknytning til fig. lOB-1 og 10B-2. Linjen 213(0) fra inngangskretsen 211(0) kobler ADRS(0)-signalet til adressekretsen 215(0) i koblingsgruppen 212(0), og linjen 214(0) kobler DAT(0)-signalet til samtlige parallellekoblede koblingskretser 216(v). I respons på de fire rutingsadressebit som holdes tilbake av switchebrikken setter den ene av adressekretsene 215(v) i switchekretsen 210(0) opp et adresseklareringssignal ADRS(v)EN(u). Hvis for eksempel inngangs(O)-signalet som mottas av inngangskretsen 211(0) har rutings-adressebitmønsteret "0000" vil adressekretsen 216(0) sette opp ADRS(0)EN (0)-signalet i status "høy".
Hver koblingsenhet omfatter fire koblingsmodi som generelt er angitt med henvisningstallet 216(v)(w), idet (v)-indikasjonen angir koblingskretsen mens (w)-indikasjonen angir modulen innenfor kretsen. For eksempel er koblingsmodulene i koblingskretsen 216(0) på fig. 9 angitt med henvisningstallet 216(0)(0) - 216(0)(3), mens koblingsmodulene i koblingskretsen 216(1) er angitt med henvisningstallene 216(1)(0) - 216 (1)(3), etc.
Koblingsmodulene 216(v)(0) - 216(v)(3) i hver switchekrets 210(0 - 210(63) er forbundet med én av 64 datalinjer 220 (0) (0) - 220 (15) (3) [generelt angitt ved henvisningstallet 220 (v) (w)]. Data-linjen 220 (0) (0) er parallellkoblet med samtlige koblingsmoduler 216(0) (0) i samtlige swichekretser 210(0) - 210(63), mens datalinjen 220 (0) (1) er parallellkoblet med samtlige koblingsmoduler 216(0)(1) i samtlige switchekretser 210(0) - 210(63) etc.
Til enhver tid er kun én av koblingsmodulene forbundet med datalinjen (220(v)(w) klarert, hvilket skal beskrives nærmere nedenfor, for kobling av et datasignal som samsvarer med DAT(u)-signalet fra dets respektive inngangskretser 211(v)
til data-linjen 220 som et gruppedatasignal GRP(v)DAT(w). Utgangsportgruppen 217(v) mottar datagruppesignaler som hører til dens portgruppe og kobler de videre som switchebrikkens utgangssignaler.
Hver koblingsmodul 216(v)(w) klareres for kobling av DAT(u)-signalet til de respektive datalinjer 220(u)(v) i respons på to klareringssignaler, hvor det ene er ADRS(v)EN(u)-signalet som genereres av adressekretsen 215(v) i respons på dekodingen av rutingsadressemønsteret fra adressesignalet ADRS(u), mens det andre klareringssignal for klarering av en koblingsmodul 216(v)(w) i switchekretsen 210(u) er et klare-ringsignal som er angitt som GRP(v)EN(w)IN(u). For oversiktens skyld er kun GRP(0)EN(0)IN(0) - GRP(0)EN(3)IN(0)-signalene knyttet til utgangsportgruppen 217(0) vist på fig. 9. I en virkelig krets er de øvrige utgangsportgrupper 217(1) - 217(15) like mye inne i bildet for generering av tilsvarende klareringssignaler som da kobles til koblingsmodulene 216(n)(0)
- 216(n)(3) i koblingskretsene 216(1) - 216(15).
Fire kjedekoblede klareringssignaler GRP(v)EN(w) genereres i hver utgangsportgruppe 217(v) for å benyttes i koblingsmodulene 216(v)(w) i switchekretsene 210(u). Disse klarerinssignajler settes normalt opp til status "høy" av utgangskretsene 217(v), men i visse tilfeller såsom for eksempel dersom en kommunikasjonsvei til det neste trinn avbrytes på grunn av linjebrudd eller lignende, vil utgangskretsen 217(v) negatere det tilsvarende klareringssignal GRP(v)EN(w). En krets for å detektere avbrudd i en overføringsvei er beskrevet nedenfor i tilknytning til fig. 10A og 10C.
Signalene fra utgangskretsen 217(v) er til å begynne med koblet til koblingsmodulene 216(v)(w) i switchekretsen 210(0) som et klareringssignal GRP(v)EN(w)IN(0), og dette fremgår av fig. 9. Hvis en koblingsmodul 216(v)(w) i switchekretsen 210(0) mottar et høyt klareringssignal GRP(v)EN(w)UT(0) og åpnes eller klareres av ADRS(u)EN(v)-signalet fra adressekretsen, overfører modulen et negatert GRP(v)EN(w)UT(0)-signal som kan kalles et utklareringssignal til koblingsmodulen 216(u)(v) i switchekretsen 210(1). I dette tilfelle kommer koblingsmodulen til å koble DAT(0)-signalet til en datalinje 220(u)(v). På den annen side, dersom koblingsmodulen 216(u)(v) ikke klareres av ADRS(u)EN(v)-signalet fra adressekretsen, settes et GRP(v)EN(w)UT(0)-signal opp i status "høy" og kobles til koblingsmodulen 216(v)(w) i switchekretsen 210(1). Koblingsmodulen 216(v)(w) i denne og de øvrige switchekretser 210(2) - 210(63) virker på samme måte.
Klareringssignalene GRP(v)EN(w) fra utgangskretsene 217(v) føres følgelig gjennom koblingsmodulene 216(v)(w) som en fortløpende kjede (daisy-chain). Hvis en koblingsmodul 216(v)(w) klareres av sin tilknyttede adressekrets 215(v) og mottar klareringssignalet GRP(v)EN(w) i høy status [dvs. dersom signalet GRP(v)EN(w)IN(u) er høyt] benytter koblingsmodulen den tilknyttede datalinje 220(v)(w) og blokkerer klareringssignalene GRP(v)EN(w) [dvs. modulen overfører klareringssignalet GRP(v)EN(w)OUT(u) til den neste switchekrets i status "lav"].
I en hvilken som helst koblingsgruppe 216(v) er det kun modulen 216(v)(w) som vil bli klarert for kobling av DAT(u)-signalet til den tilknyttede linje 220(v)(w). Hvis således som et eksempel koblingsmodulen 216(0)(0) ytterst til venstre på fig. 9 klareres av ADRS(0)EN(0)-signalet fra adressekretsen 215(v), men sperres av et lavt GRP(0)EN(0)IN(0)-signal gir denne modul på sin side klareringssignal til koblingsmodulen 216(0) (1) direkte til høyre for seg på figuren. Hvis denne koblingsmodul klareres av et høyt GRP(0)EN(1)IN(0)-signal, vil modulen koble DAT(0)-signalet til datalinjen 221(0) (1). Hvis imidlertid GRP(0)EN(1)IN(0)-signalet ligger lavt vil koblingsmodulen 216(0) (1) gi klarering til den koblingsmodul 216(0)(2) som befinner seg direkte til høyre for denne på figuren. Prinsipielt føres klareringssignalene ADRS(0)EN(0) fra adressekretsen 215(0) hovedsakelig i kjede gjennom koblingsmodulene 216(0)(0) - 216(0)(3).
Ved enhver mottatt informasjonsmengde i en hvilken som helst switchekrets 210(u) er det høyst én av klareringssignalene ADRS(v)EN(u) fra én av adressekretsene 215(v) som blir lagt til status "høy". Dette betyr at det kun klareres én koblingskrets 216(v) i en switchekrets 210(u) for en hvilken som helst informasjonsmengde, og da ved hjelp av adressekretsen 215(v). Denne adressekrets skal nå beskrives nærmere i tilknytning til fig. lOB-1. Hovedsakelig har hver adressekrets 215(v) én inngangsport 221(v) og en utgangsport 222(v). Hver adressekrets 215(v) mottar via inngangsporten 221(v) et inngangssignal som er knyttet til adressesignalet av ADRS(u) og som i sin tur er knyttet til rutingsadressebitmønsteret
(RTR ADRS). Adressekretsen 215(v) omfatter også en holdekrets LTH og en inverteringskrets INV. Når holdekretsen er tilbakestilt kobler adressekretsen komplementet av signalet på inn-
gangsporten 221(v) via inverteringskretsen til utgangsporten 222(v). Hvis derimot holdekretsen er aktivert eller satt, holdes denne i denne tilstand under hele informasjonsmengdens overføring og bevirker en forbikobling forbi inverteringskretsen slik at inngangsporten 221(v) overfører sitt signal uten endring til utgangsporten 222(v).
Som vist på fig. 9 fremgår at adressekretsene 215(v) i en switchekrets 210(u) er seriekoblet slik at hver inngangsport 221(1) - 221(15) i adressekretsene 215(1) - 215(15) er koblet til den respektive utgangsport 222(0) - 222(14) i de 15 adressekretser 215(0) - 215(14) på kretsenes respektive venstre side i skjemaet. I utgangspunktet er samtlige holdekretser null- eller tilbakestilt.
I samsvar med dette og hvis inngangs(0)-signalet fører en innledende rutingsadresse med den binære verdi "0" mottas et høyt ADRS(0)-signal av inngangsporten 221(0). Følgelig fremkommer et lavt utgangssignal fra inverteringskretsen i adressekretsen 215(v) på dennes utgang 222(0), og dette lave utgangssignal kobles til inngangsporten 221(1) på adressekretsen 215(1) som i sin tur mottar et lavt inngangssignal på inngangsporten 221 og denne krets' inverteringskrets kobler et høyt utgangssignal til inngangsporten 221 som i sin tur kobler dette videre til utgangsporten 222(2) på adressekretsen 215(2) . De øvrige adressekretser 215(v)
i switchekretsen 210(0) virker på samme måte, slik at når adressekretsen 215(15) mottar et inngangssignal over sin inngangsport 221(15) får de inngangssignaler til adressekretsene 215(v) som har like eller null angivelse "v" et høyt nivå, mens de inngangssignaler til adressekretsene som har odde angivelser "v" blir liggende lave.
Ved dette punkt låser holdekretsene i adressekretsene 215(v) inngangssignalet, og dersom dette, til en adressekrets 215(v), er høyt, holdes holdekretsen nullstilt, ellers aktiveres eller settes den. Etter setting av en holdekrets aktiverer den adressekretsens inverteringskrets slik at denne forbikobles eller fører signalet uendret gjennom og følgelig kobles det signal som mottas på adressekretsens inngangsport 221(v) direkte til utgangsporten 222(v). Hvis holdekretsen er satt sperres også adressekretsen 215(v) fra å videreføre et koblingsklareringssignal ADRS(v) EN(u).
Inngangs- (0) - kretsen overføres så et ADRS (0)-signal som er knyttet til den andre rutingsadressebit,
til inngangsporten 221(0) på adressekretsen 215(0). Adressekretsene 215(v) ("v" betyr her et like tall eller 0) og hvis holdekretser er nullstilt virker på samme måte som beskrevet ovenfor og overfører et signal fra utgangsportene 222(v), hvilket signal er komplementet av signalet på de tilsvarende inngangsporter 221(v). Samtidig overfører adressekretsene 215(v) ("v" betyr her et oddetall) og hvis holdekretser er satt, signalet som mottas på inngangsportene 221(v) til de respektive utgangsporter 222(v). Inngangssignalene til adressekretsene 215(0) og de øvrige 215(v) hvis besiffring (v) kan divideres med fire settes så opp. I motsetning til dette negateres inngangssignalene til de øvrige adressekretser 215(v) og hvis holdekretser ikke allerede er satt (dvs. kretsene 215(v), hvor (v) er et like tall som ikke er delelig med fire).
Ved dette tidspunkt holder på ny holdekretsene inngangssignalene og deres status, og denne prosess gjentas for den tredje og fjerde rutingsadressebit som mottas. Det skal bemerkes at i respons på hver rutingsadressebit settes holdekretsene i halvparten av adressekretsne 215(v). Tilsvarende vil etter fire rutingsadressebit som mottas og prosesseres av den krets som er vist på fig. 9 kun én holdekrets for en av adressekretsene klareres, mens de øvrige alle er satt. I eksemplet ovenfor hvor rutingsadressebitene har kodingen "0000" vil kun holdekretsen for adressekretsen 215(0) klareres, og denne krets setter da opp adresseklareringssignalet ADRS(0) EN (0). Den fortsatte gang i respons på de øvrige kodinger av rutingsadressebitene er tilsvarende med unntak at hver forskjel-lig koding klarerer holdekretser i en annen adressekrets 215(v), hvorved denne også i fortsetningen holdes tilbakestilt, hvilket klarerer adressekretsen for generering av et ADRS(v) EN (0)-signal med status "høy".
De enkelte kretser skal nå beskrives i nærmere detalj: På bakgrunn av det som er forklart nå skal de enkelte kretser i de ulike deler av switchebrikken vist på fig. 9 beskrives, og fig. 10A viser en generell inngangskrets (u),
mens fig. 10B som er delt i fig. lOB-1 og fig. 10B-2 gir oversikt over en krets for en adressekrets 215(v) og den tilknyttede koblingskrets 216(v). Videre viser fig. 10C en krets som er koblet til datalinjen 220(vw) som inngår i utgangskretsen 217(v).
I den følgende beskrivelse vil indeksen (u) og som
har vært benyttet i beskrivelsen i forbindelse med fig. 9
ikke lenger benyttes knyttet til signalbenevnelsene eller henvisningstallene .
Inngangskretsen 211 er vist på fig. 10A, og denne krets mottar et inngående signal på en inngangslinje 230. Inngangssignalet kobles til to holdekretser (LTH), nemlig en bom- 231 og en brytholdekrets 232, til en inverteringskrets 233 og til den ene inngang av en OG-port 234. I respons på det inngående signal tilveiebringer inverteringskretsen 233 et ADRS-signal som kobles til adressekretsen vist på fig. lOB-1.
Som beskrevet ovenfor i forbindelse med fig. 8B, mottas signalets første bit av switchebrikken og således er dette første bit i inngangssignalet som føres til inngangskretsen 211 en protokollbit angitt med P på fig. 8B. Hvis denne bit har verdien "1", dvs. hvis det inngående signal ligger høyt under tidspunktet for protokollbiten, mottas data via inngangskretsen 211. Hvis på den annen side protokollbiten har verdien null, dvs. hvis det inngående signal er lavt under tidspunktet for protokollbiten, overføres ingen data til inngangskretsens inngang. Bomholdekretsen 231 holder det inngående signals status under protokollbitens varighet, og dette bestemmes av et tidsstyresignal som er utledet fra et rutingsstyresignal (ikke vist) fra gruppestyreenheten 10 (fig. 1), og dette tidsstyresignal er på fig. 10A angitt som BOM (LTH).
Rutingsstyresignalet RTR CTRL er overført til switchebrikkene ifølge trinn 201 (fig 8A) i rutingsnettverket 30 (fig. 2). Når switchebrikkene 201(0) - 201(63) i det første trinn har holdt tilbake samtlige bit i det første rutingsfelt 205 (fig. 8B) og er klar for overføring til neste trinn 202, overføres først et styresignal for det neste (NXT) trinn til switchebrikkene 202(0) - 202(63). Denne prosess gjentas som mellom switchebrikkene i trinn 202 og krysskoblingsswitchetrinnet 203 og inngangsportene på prosessorelementbrikkene 20 (fig. 2). Gruppestyreenheten 10 kan da iverksette en over-føring via rutingsnettverket med det enkle rutingsstyresignal koblet til kun det første switchetrinn og hvor hvert trinn styrer neste trinn tidsmessig. Dette arrangement forenkler utvidelser av rutingsvettverket slik at gruppestyreenheten ikke behøver gis opplysning om eventuelle minima eller maksima i antallet switchetrinn.
Bomholdekretsen 231 omfatter to inverteringskretser 233 og 234, idet utgangen av kretsen 233 gir et "bom"-signal
som kobles til inngangen av inverteringskretsen 234. Utgangen fra denne krets kobles gjennom en transistor 235 til inngangen av inverteringskretsen 233 slik at disse to kretser er kaskade-koblet og danner bomholdekretsen. Det inngående signal kobles også til inngangen av inverteringskretsen 233 via en koblingstransistor 236, og disse transistorer 235 og 236 styres av tidsstyresignalet BOM LTH. Transistoren 236 er påslått eller ledende når tidsstyresignalet foreligger (er høyt), men er ellers avslått. Transistoren 235 er på den annen side styrt av komplementet av tidsstyresignalet og er ledende når dette ligger lavt, og er ellers avslått.
Når altså tidsstyresignalet BOM LTH ligger høyt slås transistoren 236 på og transistoren 235 av. Den første transistor kobler det inngående signal til inngangen av inverteringskretsen 233, og BOM-signalet fra denne er det komplementerte av det inngående signal når tidsstyresignalet er høyt. Inverteringskretsen 234 mottar BOM-signalet fra inverteringskretsen 233 og utfører en ny komplementering slik at når tidsstyresignalet på ny blir lavt ved slutten av den tidsperiode som fastlegges av protokollbiten P (fig. 8B) slås transistoren 236 av og skiller inngangen på inverteringskretsen 233 fra det innkommende signal.
Samtidig slås imidlertid transistorene 235 på og kobler utgangssignalet fra inverteringskretsen 234 til inngangen av kretsen 233. Siden utgangssignalet fra kretsen 234 har samme tilstand som inngangssignalet når tidsstyresignalet var høyt, holdes BOM-signalet fra inverteringskretsen 233 også i samme tilstand, dvs. inngangssignalet låses i holdekretsen 231. BOM-signalet er komplementet av P-biten, dvs. komplementet av inngangssignalet i dettes siste status. Når dette signal på nytt blir liggende høyt slås transistoren 235 av og isolerer inngangen på inverteringskretsen 233 fra kretsens 234 utgang, hvilket tillater at inngangssignalet kobles til kretsens 233 inngang via transistoren 236.
Hvis BOM-signalet blir liggende høyt blir
det inngående signal under tidsperioden for P-biten liggende lavt og følgelig kan ingen dataoverføring skje via inngangskretsen 211. Hvis på den annen side BOM-signalet er lavt blir det inngående signal liggende høyt under P-bit-tiden og en dataoverføring kan mottas via inngangskretsen 211.
Oppbygningen av bruddholdekretsen 232 er basert på de samme prinsipper som ved oppbygningen av bomholdekretsen 231 og styrer på samme måte i samsvar med et tidsstyresignal BRK (LTD) fra gruppestyreenheten 10 (fig. 1). Bruddholdekretsen benyttes for å låse eller holde det inngående signal mens overførings-veien fra den foregående brikke utprøves for å avgjøre om den er brutt på grunn av en brutt ledning eller annet, og dette skal beskrives nå. Hvis kommunikasjons- eller overføringsveien er brutt fremkommer et bruddsignal (BRK) fra bruddholdekretsen 232 og dets komplement dannes på holdekretsens utgang, angitt på fig. 10, med BRK (intet brudd). Bruddsignalet kobles til inngangen av en ELLER-port 204 som gir ut et BRK ELLER-signal, og på den andre inngang av denne ELLER-port 204 mottas et BRK ELLER-inngangssignal fra en tilsvarende krets i en inngangskrets 211 på switchebrikken eller, som beskrevet nedenfor i forbindelse med fig. 10C, en utgangskrets 217(v). Samtlige ELLER-porter 240 er sammenkoblet i en ELLER-kjede som driver en belysningskrets (ikke vist) slik at hvis det skulle være brudd i en eller annen av forbindelsene slik at en overføringsvei blir brutt, vil belysningsinnretningen aktiveres.
BRK-signalet er koblet til en " NOG-port 241 som på sin andre inngang mottar bomsignalet fra bomholdekretsen 231. Hvis en "bomsituasjon" skulle oppstå eller kommunikasjonsveien til inngangslinjen 230 brytes, vil NOG-porten 240 sette opp et høyt blokkeringssignal DAT BLK som kobles til adressekretsene 216(v) som beskrevet nedenfor i forbindelse med fig. lOB-1.
Når dette blokkeringssignal ligger høyt sperrer det adressekretsene som er forbundet med inngangskretsen 211 fra å bringe klareringssignalene for koblingskretsene ADRS(v)EN(u) i å få status "høy".
Som det skal beskrives nærmere i tilknytning til fig. 10B-2 settes et CHP-signal for å indikere at det ikke er noen koblingskretser i en switchekrets 210(u) som er klarert for å koble eller overføre datasignalet DAT(u) til datalinjen 220.
En ELLER-port 242 åpnes for å føre frem et høyt blokkeringssignal DAT BLK (fig. 10A) når enten blokkeringssignalet BLOCK eller CHP-signalet ligger høyt. Komplementet av blokkeringssignalet DAT BLK tilveiebringes av en inverteringskrets 243 hvis utgang føres til inngangen på en OG-port 234. Hvis således blokkeringssignalet fra BLK ligger høyt sperres OG-porten 234 og hindrer denne i å koble det inngående signal som mottas på linjen 230 til linjen 214 som et utgående signal kalt DAT-signalet. Linjen 214 er tenkt fortsatt fra fig. 10A til fig. lOB-1 og videre ut fra denne figur via forbindelsespunktet A til fig. 10B-2.
OG-porten 234 gjøres likeledes uvirksom (sperres) av en inverteringskrets 245 (fig. 10A) når et kvitteringssignal med status "høy" tilføres, og dette signal fremkommer når kvitteringsbiten i informasjonsdelen i dataoverføringen
(fig. 8B) forventes eller forflyttes fra adressatprosessor-elementét til det utsendende element. Kvitteringssignalet genereres i gruppestyreenheten 10. Når kvitteringssignalet ligger høyt skiller OG-porten 234 linjen 214 fra linjen 230, motsatt, når kvitteringssignalet er lavt samtidig som blokkeringssignalet DAT BLK er lavt åpnes OG-porten 234 slik at det inngående signal på linjen 230 kobles til linjen 214 som et utgående DAT-signal, og dette skjer ved andre tidspunkter enn under varigheten av kvitteringen, dvs. når kvitteringsbiten er
høy. Denne logiske kombinasjon indikerer at en koblingsmodul forefinnes for overføring av DAT-signalet til en utgående datalinje 220(v)(w).
De øvrige kretselementer på fig. 10A utfører to funk-sjoner. Spesielt gjelder at under tidsintervallet for over-føring av kvitteringstiden i informasjonsdelen, hvilket skjer når kvitteringslinjen har høyt nivå, mottas det signal som representerer kvitteringsbiten av inngangskretsen via linjen 214. Kretser er anordnet for kobling av dette signal til linjen 230 under kvitteringsperioden. I tillegg er det anordnet kretser for utførelse av kontinuitetsprøve av overførings-veien, og disse kretser arbeider i samsvar med et PR RTR IN(L)-signal som i sin aktive fase har status "lav" og et DR LAV RTR IN(L)-signal, og begge disse inngående rutingssignaler tilveiebringes i gruppestyreenheten 10.
Mens kvitteringen foregår er kvitteringslinjen i status "høy", og dette betyr at OG-porten 234 sperrer.
De to inngående rutingssignaler er da begge negatert og har således høyt nivå, hvilket åpner den ene inngang på hver av NOG-portene 246 og 247 og to av inngangene på NOG-porten 250. Siden kvitteringslinjen ligger høyt, kobler inverteringskretsen 245 et lavt inngangssignal til den tredje inngang på NOG-porten 250 hvis utgang således blir liggende høyt og åpner OG-porter 251 hvis utgang på sin side er koblet til linjen 230.
DAT-signalet på linjen 214 og som ved dette tidspunkt representerer kvitteringsbiten, komplementeres i en inverteringskrets 252 og inverteres to ganger i de to åpnede NOG-porter 246 og 247, hvoretter signalet på ny komplementeres i en andre inverteringskrets 253 hvis utgang kobles til den andre inngang på OG-porten 251. Følgelig har det signal som kommer ut av inverteringskretsen 253 og føres til OG-porten 251 samme status som DAT-signalet på linjen 214, og siden OG-porten 251 er åpnet av OG-porten 250 kobles signalet fra inverteringskretsen 253 til linjen 230. Således kobles DAT-signalet under kvitteringsperioden, hvilket signal representerer kvitteringsbiten, fra linje 214 til linje 230, dvs. gjennom inngangskretsen 211.
Ved andre tidspunkter enn under kvitteringen er imidlertid kvitteringssignalet lagt lavt. Inverteringskretsen 245 kobler da et høyt inngangssignal til NOG-porten 250, og siden de øvrige inngangssignaler til denne krets normalt er negatert og således har et høyt nivå blir utgangen av kretsen liggende lavt og sperrer OG-porten 251. Så lenge de to inngående rutingssignaler er negatert og således har høyt nivå under disse øvrige tidspunkter, hindrer OG-porten 251 kobling av signalet fra inverteringskretsen 253 til linjen 230.
Gjennomgangsprøven for overføringsveién utføres av kretser i både inngangskretsen 211 (fig. 10A) og utgangskretsen som skal omtales nærmere med henvisning til fig. 10C.
Fig. lOB-1 og 10B-2 viser koblingsskjemaer for en adressekrets og en koblingskrets som består av fire moduler 216(0) - 216(3) [generelt angitt med henvisningstallet 216(w)].
Som tidligere beskrevet omfatter adressekretsen 215 en holdekrets 260 med to inverteringskretser 261 og 262. Utgangen av den første av disse inverteringskretser er forbundet med inngangen av den andre, og utgangen av den andre krets 262 er koblet via en koblingstransistor 263 som, når påslått av et holdesignal ADRS HOLD kobler utgangssignalet fra inverteringskretsen 262 til inngangen av den første krets eller selve holdekretsen. En annen koblingstransistor 264 og som likeledes styres av ADRS HOLD-signalet kobler utgangssignalet fra inverteringskretsen 262 til styring av to transistorer 265 og 266 samt til en inverteringskrets 267 som på sin side styrer en koblingstransistor 270.
Et EN RTR-signal (rutingsklareringstidsstyring) fra gruppestyreenheten 10 (fig. 1) slår på en transistor 269 når det ligger lavt, ved at signalet først passerer en inverteringskrets 268. Dette påslag gir høyt nivå på inngangen av inverteringskretsen 261 og holdekretsen 260 slik at når rutingsbrikken er aktivert setter gruppestyreenheten 10 opp tids-styringssignalet EN RTR for å slå av transistoren 269 og skille utgangen fra holdekretsen 260 og inverteringskretsen 261 fra disses høytliggende innganger. Dette betyr at det umiddelbart etter at EN RTR-signalet settes opp bevirkes at holdekretsen 260 bringes til den tilstand som holder inngangen på inverte- teringskretsen 261 og likeledes utgangen av inverteringskretsen 262 høy. ADRS HOLD-signalet er da høyt og bevirker at det høye utgangssignal fra inverteringskretsen 262 aktiverer transistorene 265 og 266, men sperrer koblingstransistoren 270 ved hjelp av inverteringskretsen 267.
I respons på et adresse(bings)tidsstyringssignal, angitt på fig. lOB-1 med ADRS tidsstyring, og som settes opp for å fastlegge hver rutingsadressebit (fig. 8B) i det inngående signal (fig. 10A), slås en koblingstransistor 271 på og tillater adressesignalet ADRS fra inverteringskretsen 233 (fig. 10A) å kobles over denne koblingstransistor og transistoren 265. Når adressetidsstyresignalet er på er adressehbldesigna-let ADRS HOLD lavt og koblingstransistorene 263 og 264 er sperret. Sperring av den siste medfører at transistorene 265 og 266 samt inverteringskretsen 267 alle er holdt i den tilstand som de hadde opprinnelig takket være restladninger på inngangene. Imidlertid overlagrer adressesignalet ADRS de eventuelle restladninger som måtte finnes på inngangen av inverteringskretsen 261 og følgelig kobler denne på sin inngang et signal som tilsvarer komplementet av adressesignalet til en linje 272, siden ved dette tidspunkt transistoren 266 holdes påslått som følge av sin restladning. Linjen 272 fører et "neste adresse-signal" ADRS NXT til adressekretsen 215 for den neste adresse i switchekretsen 210 (se fig. 9). Den inverteringskrets som er omtalt i forbindelse med adressekretsene 215 på fig. 9 kan gjerne benytte en inverteringskrets såsom 261 i holdekretsen 260, og likeledes kan holdekretsen omtalt i forbindelse med fig. 9 innbefatte samme type inverteringskrets.
Hvis adressesignalet ADRS har høyt nivå mens adressetidsstyringssignalet foreligger i høy status, vil utgangssignalene fra inverteringskretsene 261 holdes i den tilstand de hadde når adressekretsen ble initialisert i respons på et rutingsklarerings- eller initialiseringssignal. Hvis imidlertid adressesignalet ligger lavt vil inngangen til inverteringskretsen 261 også være lav, og dette vil også være tilfellet på utgangen av inverteringskretsen 262. Når adressetidsstyresignalet neste gang skifter til lavt nivå mens adresseholde-signalet er høyt vil utgangen på inverteringskretsen 262 bli liggende lavt og transistor 264 som er aktivert av dette holdesignal vil da koble det lave utgangssignal til transistorene 265 og 266 som da blir slått av, og signalet føres videre til inverteringskretsen 267 som slår koblingstransistoren 270 på.
Siden denne koblingstransistor 270 i dette tilfelle leder vil adressesignalet ADRS kobles til linjen 272 som ADRS NXT-signal til den neste adressekrets og således forbikoble holdekretsen 260 på samme måte som beskrevet i forbindelse med fig. 9. Siden dessuten transistoren 265 er slått av blokkeres adressesignalet ADRS i sin vei til inverteringskretsen 261 når adressetidsstyrihgssignalet neste gang skifter status til høyt nivå, og ved dette skilles holdekretsen 260 fra adressesignalet. Det fremgår at når et lavnivås adressesignal mottas på inngangen av holdekretsen 260 holdes denne isolert fra signalet helt til et initialiseringssignal for rutingen (EN RTR) skiftes til høy status hvorved transistoren 265 slås på.
Utgangen av transistoren 261 kobles til den ene inngang av en ELLER-port 273, og dersom holdekretsen 260 mottar fire påfølgende høynivåsignaler via transistoren 265 hver gang adressetidsstyringssignalet er i status "høy", hvilket tilsvarer de fire rutingsadressebit som holdes tilbake av switchebrikken på hvilken kretsen ligger (fig. 8B), blir utgangssignalet fra inverteringskretsen 271 liggende med lavt nivå. Hvis blokkeringssignalet BLOCK fra inngangskretsen 211 (fig. 10A) ligger lavt, aktiveres NELLER-porten 273 til å gi et (høyt) adresseklareringssignal ADRS EN som tilsvarer klareringssignalet ADRS(v)EN(u) beskrevet tidligere i forbindelse med fig. 9.
Hvis altså adressekretsen 215 mottar et høyt adresse-signal i løpet av de fire påfølgende høynivås adressetids-styringssignaler som fastlegger de fire rutingsadressebit og dersom protokollbiten P (fig. 8B) er mottatt, hvilket sikrer at blokkeringssignalet BLOCK ligger lavt, vil adresseklareringssignalet ADRS EN bli liggende høyt. I alle andre tilfeller vil dette signal ha lavt nivå.
Koblingskretsen 216 omfatter som omtalt fire koblingsmoduler 216(0) - 216(3), og disse er vist på fig". lOB-1 og 10B-2, idet den første er vist på fig. lOB-1, mens de andre er vist på fig. 10B-2. Siden alle fire koblingsmoduler er identiske
vil kun den første koblingsmodul 216(0) beskrives i detalj.
Som det fremgår av fig. lOB-1 mottar koblingsmodulen 216(0) adresseklareringssignalet ADRS fra adressekretsen 215
og et gruppeklareringssignal GRP EN 0 INN (normalt i status "lav") [og som tilsvarer signalet GRP(v)EN(w) beskrevet i forbindelse med fig. 9]. Hvis klareringssignalet er høyt, men gruppeklareringssignalet er i normal tilstand, dvs. lavt,
åpnes en OG-port 280 som på sin side slår på en transistor 281 for kobling av DAT-signalet fra fig. 10A til datalinjen 220(v)-(0) .
Gruppeklareringssignalet komplementeres av en inverteringskrets 282 og føres til den ene inngang av en NOG-port 283 hvis andre inngang mottar komplementet av adresseklareringssignalet via en inverteringskrets 284. Dersom dette klareringssignal ligger høyt blir signalet på utgangen av inverteringskretsen 284 liggende lavt og med denne betingelse for inngangen på NOG-porten 283 gir denne et høyt utgående gruppeklareringssignal GRP EN 0 UT (hvis normal tilstand er lav), og denne høye utgang hindrer de etterfølgende koblingsmoduler som er tilkoblet utgangslinjen 220(v)(0) fra å overføre datasignaler til denne linje.
Når adresseklareringssignalet fra adressekretsen 215 ligger lavt har det utgående gruppeklareringssignal samme status som det inngående, men hvis motsatt adresseklareringssignalet ligger lavt sperres OG-porten 280 og transistoren 281 holdes sperret. Således blokkeres overføringen av DAT-signalet til datalinjen 220(v)(0) og samtidig komplementeres det lavnivås adresseklareringssignal til status "høy" ved hjelp av inverteringskretsen 284 som åpner denne inngang på NOG-porten 283. Hvis det inngående gruppeklareringssignal ligger lavt kobler inverteringskretsen 282 et høynivåsignal til den andre inngang på NOG-porten 283 og dette medfører at det utgående gruppeklareringssignal får sin lave normaltilstand og tillater en annen koblingsmodul 216(0) i en annen switchekrets 210
(fig. 9) å benytte datalinjen 220(v)(0).
Hvis på den annen side det inngående gruppeklareringssignal er ført til negasjon (status "høy") kobler omverterings-kretsen 282 et lavtliggende inngangssignal til NOG-porten 283 hvilket bevirker at denne overfører et høyt (negatert) utgående gruppeklareringssignal, slik at når adresseklareringssignalet ligger lavt føres det lavnivås utgående gruppeklareringssignal til den etterfølgende koblingsmodul som er tilkoblet datalinjen 220 ved null i samme status som det inngående gruppeklareringssignal til koblingsmodulen.
Hvis adresseklareringssignalet ligger høyt, men det inngående gruppeklareringssignal er negatert, dvs. at det også er høyt, aktiveres en OG-port 285 og gir ut et høytliggende klareringssignal EN(1) til til koblingsmodulen 216(1) som benytter signalet på samme måte som koblingsmodulen 216(0) benytter adresseklareringssignalet. Hvis det inngående gruppeklareringssignal ligger lavt sperres OG-porten 285 og klareringssignalet EN 1 blir liggende lavt. Det fremgår således generelt at hvis en koblingsmodul 216(w) klareres av et adresseklareringssignal fra adressekretsen 215 eller av et klareringssignal EN W, hvor "W" er tallet 1 eller 2, og koblingsmodulen er hindret i å koble datasignalet DAT til sin respektive datalinje 220(v)(w) på grunn av negatert (høyt nivå) inngående gruppeklareringssignal, vil den generere et klareringssignal EN W (W betyr nå 1, 2 eller 3) for klarering av den neste koblingsmodul i kjeden. Hvis imidlertid en koblingsmodul 216(w) er klarert av både adresseklareringssignalet og klareringssignalet EN W samt det inngående gruppeklareringssignal vil modulen gi status "lav" til klareringssignalet EN W til den neste koblingsmodul i kjeden.
På fig. lOB-1 og 10B-2 er likeledes skissert kretser for avslutning av datalinjene 220(v)(0) - 220(v)(3) for å sikre at spenningsnivået for signalene på disse linjer ikke blir sve-vende dersom ingen koblingsmodul kobler sitt respektive datasignal til den tilhørende linje. Hvis det utgående gruppeklareringssignal fra siste koblingsmodul 216(0) forbundet med en datalinje 220(v)(0) får lavt nivå slår en inverteringskrets 290 på en transistor 291 som forbinder datalinjen 220(v)(0) med jordnivå Vgg. Dette jordnivå forbindes også med den neste switchebrikke i rutingsnettverket eller til rutingsnettverkets inngangsport på en prosessorelementbrikke. Jordnivået gir et lavt signalnivå under overføringstiden for
protokollbiten P (fig. 8B), hvilket setter bomholdekretsen 231
i inngangskretsen 211 for å indikere at det ikke har lykkes å sette opp en bestemt overføring.
Som omtalt tidligere og særlig i forbindelse med
fig. 9 og 10A - 10C kan switchebrikkene også utføre krysskoblingsswitching og kan således anvendes i krysskoblingsswitchetrinnet 203 som er vist på fig. 8A. Dette skjer hvis bare det inngående gruppeklareringssignal GRP EN 0 Inn (med normalt lav status) har sin normaltilstand som følge av utgangsportgruppen, mens de øvrige signaler, nemlig gruppeklarerings-signalene GRP EN 1 INN - GRP EN 3 INN ikke har sin normaltilstand, dvs. har høyt nivå.
Avslutningen av utgangslinjene fremgår særlig fra
fig. 10C, idet hver utgangsdatalinje 220(v)(w) har en tilknyttet utgangskrets 217(v)(w) i sin utgangsportgruppe 217(w)
(fig. 9)' som også genererer et gruppeklareringssignal GRP EN
INN (normalt lavt nivå). Av fig. 10C fremgår at datalinjen
220 er koblet til en inverteringskrets 300 som komplementerer dataut-signalet og kobler det til den ene inngang av en NOG-port 301 som på sin annen inngang får tilført et PR RTR UT-signal (normal status "lav") (precharge router out -
asserted low) som kan kalles et prøvesignal og som benyttes i forbindelse med kontinuitetsprøvingen av overføringsveien og som skal beskrives nærmere i det følgende. Vanligvis er dette prøvesignal negatert, dvs. nivået er høyt, og når dette er tilfelle er utgangssignalet fra NOG-porten 301 med samme status som det innkommende DATA UT-signal.
Utgangen fra NOG-porten 301"er koblet til en andre NOG-port 302 som i tillegg styres av et rutingsdrivsignal
DR LAV RTR UT (normalstatus: lav), og dette signal benyttes
også under kontinuitetsprøvingen. Signalet er vanligvis negatert og således høyt, og dette er den normalt motsatte status av utgangen på NOG-porten 301. NOG-porten 302 fører
på utgangen et signal som på ny komplementeres i en inverteringskrets 303 som kobler et NXT CHP-signal for data til den neste brikke til en utgangslinje 304 som på sin side er forbundet med det neste switchetrinn eller til rutingsinngangen på et prosessorelementbrikkepar. Det fremgår at så lenge som prøve- og
rutingsdrivsignalet ligger høye har det utgående datasignal NXT CHP på utgangen av inverteringskretsen 303 samme status som det inngående DATA UT-signal på inngangen av inverteringskretsen 300.
Utgangslinjen 304 er også forbundet med en brudd-holdekrets 305 som er bygget opp på samme måte som bruddholdekretsen 232 vist på fig. 10A og virker i samsvar med ét signal fra linjen 304 og et bruddtidsstyresignal fra gruppestyreenheten 10 (fig. 1), angitt på fig. 10C som BRK LTH. Bruddholdekretsen 305 benyttes under utprøvingen av kontinuitet i signal-overføringen, nærmere beskrevet i det følgende. Hvis det ikke foreligger noe avbrudd i overføringsveien setter bruddholdekretsen 305 opp et BRK UT-signal som normalt har status "lav" og som åpner den ene av inngangene på en ELLER-port 306. Den andre inngang på denne krets tilføres et drivsperresignal DRV DIS fra øvrige kretser (ikke viste) i serieprosessoren
og som styrer overføringsveiene gjennom rutingsnettverket 30 (fig. 2). Hvis drivsperresignalet ligger lavt og det utgående BRK UT-signal også er lavt for å indikere at det ikke foreligger brudd, gir ELLER-porten 306 et gruppeklareringssignal GRP EN W (L) som kobles videre til en koblingsmodul som vist på fig. lOB-1 og 10B-2, men som på disse figurer er kalt GRP EN INN
for å indikere at det er et inngående gruppeklareringssignal. BRK UT-signalet kobles likeledes til en ELLER-port 307 som utfører samme funksjon som ELLER-porten 240 beskrevet i forbindelse med inngangskretsen 211 (fig. 10A).
Under tidsperioder når kvitteringsbiten (fig. 8A) ikke foreligger ligger kvitteringslinjen lavt, og denne linje er tilkoblet den ene inngang på en OG-port 310 som da sperres og skiller datalinjen 220(v)(w) fra utgangslinjen 304. Når derimot kvittering foreligger og kvitteringslinjen ligger høyt åpnes OG-porten 310 og fører videre det signal som mottas fra bakenforliggende kretser, enten en switchebrikke i et påfølgen-de switchetrinn (fig. 8A) eller en prosessorelementbrikke, til data linjen 220(v)(w). Betrakter vi fig. lOB-1 fremgår det at transistoren 281 i ledende tilstand når OG-porten 280 er aktivert for kobling av datasignalet DAT fra linjen 240 (fig. 10A) til datalinjen 220(v)(0) også kobler signalet som representerer kvitteringsbiten i motsatt retning fra linjen 220(v)(0) til linjen 214.
Hvis gruppeklareringssignalet GRP EN INN (L) er negatert (dvs. har status "høy") slås en transistor 313 på og når kvitteringslinjen ligger lavt sørger en inverteringskrets 312 for at en annen transistor 311 også slås på. Disse transistorer er seriekoblet mellom linjen 220(v)(w) og jordnivå
(Vgg) og når de to transistorer i serie begge leder holdes linjen 220(v)(w) på jordpotensial slik at linjen ikke svever med ubestemt spenning når det inngående gruppeklareringssignal hindrer koblingsmodulene 216(v)(w) fra å overføre datasignaler til linjen. Når kvitteringslinjen ligger høyt slår inverteringskretsen 312 av transistoren 311 som da isolerer datalinjen 220(v)(w) fra jordpotensialet.
Kontinuitetsprøving av overføringsveien skal nå beskrives. Som tidligere nevnt omfatter inngangskretsen 211 (fig. 10A) og utgangskretsen 217(v)(w) på fig. 10C kretser for å utføre en kontinuitetsprøve av overføringsveien mellom switchebrikkene og for blokkering av overføring dersom det skulle foreligge brudd i den ønskede overføringsvei. Med henvisning til fig. 10A og 10C fremgår hvordan denne prøving kan utføres i tre trinn, hvert igangsatt av et tidsstyresignal. Til å begynne med påtrykkes som en prøve et høyt spenningsnivå fra enten inngangskretsen 211 eller utgangskretsen til over-føringslinjen, dvs. linjen 230 eller 304 (det fremgår at linjen 304 tilsvarer linjen 230 i switchebrikken i neste trinn). Dette påtrykte spenningsnivå skjer som følge av prøvesignalet PR RTR INN (L) dersom prøvingen skjer ved hjelp av inngangskretsen 211 eller ved hjelp av et tilsvarende utgående prøve-signal PR RTR UT (L) (fig. 10C) dersom det er utgangskretsen som initierer prøvesignalet.
Etter at denne prøvespenning er påtrykt overførings-linjen påtrykkes et signal fra den krets som ikke har forårsaket prøvesignalet (dvs. dersom dette er forårsaket av utgangskretsen er dette inngangskretsen 211 eller omvendt) et signal på linjen hvilket skifter signalnivået på denne til lav tilstand. Dette skjer i samsvar med et av rutingsdrivsignalene DR LAV RTR INN (L) eller UT (L), og endelig klareres bruddholdekretsen 232 eller 305 i kretsen og som innledningsvis påtrykket det høye spenningsnivå på linjen av et BRK (LTH) INN eller UT-signal og låser status av dette signal til overførings-linjen. Hvis det lavnivås signal når bruddholdekretsen er overføringslinjen ubrutt og holdekretsen etablerer et BRK INN eller UT-signal for indikasjon av kontinuitet, men
hvis det lavnivås signal ikke når frem til bruddholdekretsen betyr dette at overføringsveien er brutt, hvorved et BRK INN eller UT-signal genereres. Prøven utføres av både inngangskretsen 211 og utgangskretsen i begge ender av kommunikasjonsveien slik at bruddholdekretser i begge kretser kan funksjonere korrekt.
I den følgende beskrivelse velges utgangslinjen 304 som motsatt ende av inngangslinjen 230 og inngangskretsen 211 befinner seg da i det neste switchetrinn regnet fra utgangskretsen som er vist på fig. 10C. På basis av dette og med henvisning til fig. 10A og"10C drives utgangssignalet fra NOG-porten 246 til høyt nivå når det inngående prøvesignal ligger lavt. Når det inngående rutingsdrivsignal er negatért, dvs. når høyt nivå kobler NOG-porten 246 et lavstatus signal til inverteringskretsen 253 som inverterer dette til et signal med høyt nivå og kobler dette til den ene av inngangene på OG-porten 251.
Det inngående prøvesignal i motsatt, høy status bevirker at NOG-porten 250 også kobler et høynivåsignal til den andre inngang av OG-porten 251, og følgelig aktiveres denne og bringer linjen 230 til høyt nivå.
Utgangskretsen som er vist på fig. 10C fører da et lavnivåsignal gil linjen 304, og dette skjer når det utgående rutingsdrivssignal har lavt nivå, hvorved NOG-porten 302 over-fører signalet med høyt nivå som deretter komplementeres til et lavnivåsignal av inverteringskretsen 303.
Når signalet fra utgangskretsen vist på fig. 10C burde ha nådd inngangskretsen (fig. 10A) settes bruddholde-kretssignalet BRK (LTH) opp og klarerer bruddholdekretsen 232. Hvis overføringslinjen mellom inngangskretsen 211 og utgangs kretsen ikke da er brutt, befinner signalet på linjen 230 seg ved lavt nivå, men dette signal inverteres av bruddholdekretsen for å gi videre et BRK-signål méd høyt nivå ut av holdekretsen. Hvis derimot overføringsveien har brudd kommer ikke det lavnivås signal fra inverteringskretsen 303 frem til bruddholdekretsen og derfor vil signalet på linjen 230 fortsatt få høyt nivå, og dette høye nivå inverteres for å danne det negaterte BRK-signål.
Tilsvarende utføres i bruddholdekretsen 305 i den utgahgskrets som er vist på fig. 10C. Spesielt gjelder at når det utgående prøvesignal har lavt nivå drives utgangssignalet fra NOG-porten 301 høyt. Siden rutingsdrivsignalet på utgangen da er høyt, kobler NOG-porten 302 et signal med lavt nivå til inverteringskretsen 303 etter hvilken et høyt signal føres til linjen 304 for utprøving.
Inngangskretsen vist på fig. 10A fører da et lavnivåsignal ut på linjen 230 og dette skjer når det inngående rutingsdrivsignal har lav status. Når dette skjer overfører NOG-porten 247 et nytt signal med høyt nivå som så komplementeres til et signal med lavt nivå ved hjelp av inverteringskretsen 253 hvis utgang sperrer OG-porten 251 og bevirker at linjen 230 får lavt nivå.
Som det fremgår av fig. 10C, når signalet fra inn-gngskretsen vist på fig. 10A burde ha nådd utgangskretsen etableres et BRK (LTH) UT-signal som klarerer bruddholdekretsen 305. Hvis overføringslinjen mellom inngangskretsen 211 og utgangskretsen er kontinuerlig befinner signalnivået på linjen 304 seg ved lavt nivå, dette nivå inverteres av bruddholdekretsen 305 og gir da et høyt BRK UT-signal på holdekretsens utgang, men motsatt, dersom overføringsveien har et brudd vil ikke det lavnivås signal fra OG-porten 251 nå bruddholdekretsen 305, men i stedet holdes signalet på linjen 304 ved et høyt nivå, og dette nivå føres gjennom holdekretsen 305 for å tilveiebringe det negaterte BRK UT-signal.
Den foregående beskrivelse har blitt begrenset til et særlig utførelseseksempel av oppfinnelsen. Det vil imidlertid være klart at variasjoner og modifikasjoner som kan tenkes utført i forbindelse med oppfinnelsen vil være aktuelle, og disse vil kunne romme noen eller samtlige av de fordeler som oppfinnelsen innebærer. Det er derfor hensikten med de etter-følgende krav å dekke samtlige slike variasjoner og modifikasjoner hvilke faller innenfor oppfinnelsens ramme.
Claims (15)
1. Dataprosessorsystem, karakterisert ved A. flere prosessorelementorganer (21) for databehandling i samsvar med instruksjoner,
B. det samme antall lagerorganer (23), hver innrettet for lagring av data i flere lagerposisjoner hver angitt med en adresse, og hvor hvert lagerorgan (23) er knyttet til ett av prosessorelementorganene (21), og
C. lagersammenkoblingsorganer koblet til samtlige prosessorelementorganer og samtlige lagerorganer som kan adresseres av adressesignaler som angir en adresse og et modussignal med en rekke tilstander for kobling av data mellom lagerorganene og prosessorelementorganene, idet lagersammenkoblingsorganene er avhengige av valgte tilstander av modussignalet for overføring av data mellom hvert enkelt prosessorelementorgan og det tilknyttede lagerorgan, og videre avhengige av en annen av modussignalets tilstander for overføring av data mellom valgte prosessorelementorganer og andre av lagerorganene.
2. Prosessorsystem,
karakterisert ved
A. flere prosessorelementorganer (21) for databehandling i samsvar med instruksjoner,
B. det samme antall lagerorganer (23), hver innrettet for lagring av data i flere lagerposisjoner hver angitt med en adresse, og hvor hvert lagerorgan (23) er knyttet til ett av prosessorelementorganene (21), og
C. lagersammenkoblingsorganer koblet til samtlige prosessorelementorganer og samtlige lagerorganer som kan adresseres av adressesignaler som angir en adresse og et modussignal med en rekke tilstander for kobling av data mellom lagerorganene og prosessorelementorganene, idet lagersammenkoblingsorganene er avhengige av valgte tilstander av modussignalet for overføring av data mellom hvert enkelt prosessorelementorgan og det tilknyttede lagerorgan, og videre avhengige av en annen av modussignalets tilstander for overføring av data mellom et valgt prosessorelementorgan og hvilket som helst lagerorgan i avhengighet av modus signalets tilstand.
3. Skiftregister omfattende en rekke trinn som hver diri-geres fra sin inngang til en utgang, idet hvert trinn er karakterisert ved
a. lagringsorganer for lagring av data som er mottatt på en inngangsport og overføring av de lagrede data via en utgangsport,
b. forflytningsorganer koblet til utgangen av lagringsorganer i trinnet og inngangen av lagringsorganer i det påfølgen-de trinn med neste høyere ordén samt lagringsorganene i det for-løpende trinn med den foregående lavere orden for selektiv over-føring av de data som ligger lagret i lagringsorganene til lagringsorganene i
enten det foregående lavereliggende trinn eller det neste høyere-ordens trinn
i avhengighet av et dirigerende skiftsignals status.
4. Skiftregister omfattende en rekke trinn som hver diri-geres fra sin inngang til en utgang, idet hvert trinn er karakterisert ved
a. lagringsorganer for lagring av data som er mottatt på en inngangsport og overføring av de la' grede data via en utgangsport,
b. forflytningsorganer koblet til utgangen av lagringsorganer i trinnet og inngangen av lagringsorganer i det påfølgen-de trinn med neste høyere orden samt lagringsorganene i det for-løpende trinn med den foregående lavere orden for selektiv over-føring av de data som befinner seg i
enten det foregående lavereliggende trinn eller det neste hø yere-ordens trinn for lagring i lagringsorganene i forflytningsorga-nenes trinn, i avhengighet av et dirigerende skiftsignals status.
5. Digital dataprosessor,
karakterisert ved
A. prosessorganer for databehandling av innkommende digitale data, omfattende to inngangsporter for å motta digitale innkommende data og en utgangsport for overføring av behandlede digitale utgangsdata,
B. datalagringsorganer for lagring av digitale data, omfattende et
skiftregister omfattende en rekke trinn som hver diri-geres fra sin inngang til en utgang, idet hvert trinn er karakterisert ved
a. lagringsorganer for lagring av data som er mottatt på en inngangsport og overføring av de lagrede data via en utgangsport,
b. forflytningsorganer koblet til utgangen av lagringsorganer i trinnet og inngangen av lagringsorganer i det påfølgen-de trinn med neste høyere orden samt lagringsorganene i det for-løpende trinn med den foregående lavere orden for selektiv over-føring av de data som befinner seg i
enten det foregående lavereliggende trinn eller det neste høyere-ordens trinn for lagring i lagringsorganene i forflytningsorga-nenes trinn, i avhengighet av et dirigerende skiftsignals status, C. datainngangsorganer for overføring av digitale data fra datalagringsorganene til en inngangsport på prosessororganene og fra en annen digital datakilde til en annen inngangsport på prosessororganene, og
D. styreorganer tilkoblet datalagringsorganene og inngangsorganene for styring av disse slik at det utføres selektiv styring av datalagringsorganene og datainngangsorganene for å bevirke overføring av data til prosessororganene.
6* Prosessorsystem for digitale data, karakterisert ved
1) flere digitale dataprosessorer som hver omfatter
A. prosessorganer for databehandling av innkommende digitale data, omfattende to inngangsporter for å motta digitale innkommende data og en utgangsport for overføring av behandlede digitale utgangsdata,
B. datalagringsorganer for lagring av digitale data, omfat-tande,et., skiftregister omfattende en rekke trinn som hver diri-geres fra sin inngng til en utgang, idet hvert trinn omfatter a. lagringsorganer for "lagring av data som er mottatt på en inngangsport og overføring av de lagrede data via en utgangsport,
b. forflytningsorganer koblet til utgangen av lagringsorganer i trinnet og inngangen av lagringsorganer i det påføl-gende trinn med neste høyere orden samt lagringsorganene i det forløpende trinn med den foregående lavere orden for selektiv
overføring av de data som befinner seg i
enten det foregående lavereliggende trinn eller det neste høyere-ordens trinn for lagring i lagringsorganene i forflytningsorga-nenes trinn, i avhengighet av et dirigerende skiftsignals status, C. datainngangsorganer for overføring av digitale data fra datalagringsorganene til en inngangsport på prosessororganene og fra en annen digital datakilde til en annen inngangsport på prosessororganene, og
D. flaggorganer koblet til utgangsporten og styreorganene for lagring av signaltilstanden ved utgangsporten på prosessororganene,
E. styreorganer koblet til datalagringsorganene, flaggorganene og inngangsorganene for styring av disse ved selektiv styring av datalagringsorganene og datainngangsorganene slik at disse bevirker at data kan overføres til prosessororganene og av flaggorganene for lagring av status for signalet ved utgangsporten av prosessororganene,
2. systemstatusorganer koblet til samtlige flaggorganer for etablering av et systemstatussignal i samsvar med status for samtlige flaggorganer, og
3. systemstyreorganer koblet til systemstatusorganene og styreorganene i samtlige prosessorer for digitale data for samtidig styring av disse i avhengighet av systemets statussignal.
7. Prosessorsystem for digitale data,
karakterisert ved
1) flere digitale dataprosessorer som hver omfatter
A. prosessorganer for databehandling av innkommende
digitale data, omfattende to inngangsporter for å motta digitale innkommende data og .en utgangsport for overføring av behandlede
digitale utgangsdata,
B. datainngangsorganer for overføring av digitale data fra datalagringsorganene til en inngangsport på prosessororganene og fra en annen digital datakilde til en annen inngangsport i på prosessororganene, og
C. flaggorganer koblet til utgangsporten og styreorganene for lagring av signaltilstanden ved utgangsporten på prosessororganene ,
D. styreorganer koblet til datalagringsorganene, flaggorganene og inngangsorganene for styring av disse ved selektiv styring av datalagringsorganene og datainngangsorganene slik at disse bevirker at data kan overføres til prosessororganene og av flaggorganene for lagring av status for signalet ved utgangsporten av prosessororganene,
2. systemstatusorganer koblet til samtlige flaggorganer for etablering av et systemstatussignal i samsvar med status for samtlige flaggorganer, og
3. systemstyreorganer koblet til systemstatusorganene og styreorganene i samtlige prosessorer for digitale data for samtidig styring av disse i avhengighet av systemets statussignal.
8. Prosessorsystem for sigitale data, karakterisert ved
A. flere digitale prosessorer som hver omfatter:
i. prosessorganer for utførelse av en operasjon,
ii. flaggorganer med en rekke tilstander, og
iii. flaggtilstandsetablerende organer for etablering av tilstanden for flaggorganene i samsvar med databehandlingen i prosessorganene,
B. systemstatusorganer koblet til samtlige flaggorganer for etablering av et systemstatussignal i samsvar med status for samtlige flaggorganer, og
G. systemstyreorganer koblet til systemstatusorganene og styreorganene i samtlige prosessorer for digitale data for samtidig styring av disse i avhengighet av systemets statussignal.
9. Dataprosessorsystem for digitale data, karakterisert ved
A. flere digitale dataprosessorer som hver omfatter:
i. informasjonsoverførende organer omfattende:
a. informasjonsflaggorganer med status ifølge databehandlingen i sin respektive digitale dataprosessor,
b. informasjonsdrivorganer for overføring av informasjon,
c. informasjonsklareringsorganer koblet til infor-masjonsflaggorganene, informasjonsdrivorganene og en annen digital dataprosessor for klarering av informasjonsdrivorganene til overføring av informasjon i samsvar med informasjonsflagg- organene som fremviser en valgt tilstand og et klareringssignal fra den andre digitale dataprosessor,
d. informasjonsmottagerorganer innrettet for å kunne motta informasjon,
B. informasjonsforflytningsorganer koblet til samtlige informasjonsoverføringsorganer og informasjonsmottagerorganene i de digitale dataprosessorer for selektiv forflytning av informasjon fra informasjonsoverføringsorganene til informasjonsmottagerorganene , og
C. systemstyreorganer koblet til de digitale dataprosessorer og informasjonsforflytningsorganene for samtidig styring av de digitale dataprosessorer.
10. Dataprosessor for bruk i et digitalt dataprosessorsystem omfattende flere digitale dataprosessorer, idet hver prosessor er
karakterisert ved
i. informasjonsoverførende organer omfattende:
a. informasjonsflaggorganer med status ifølge databehandlingen i sin respektive digitale dataprosessor,
b. informasjonsdrivorganer for overføring av informasjon,
c. informasjonsklareringsorganer koblet til infor-mas jonsf laggorganene , informasjonsdrivorganene og en annen digital dataprosessor for klarering av informasjonsdrivorganene til overføring av informasjon i samsvar med informasjonsflagg-organene som fremviser en valgt tilstand og et klareringssignal fra den andre digitale dataprosessor,og
d. informasjonsmottagerorganer innrettet for å kunne motta informasjon.
11. Rutingsnettverk (30) for overføring av informasjon blant flere prosessorelementer i et matrisekoblet prosessorsystem,
karakterisert ved at rutingsnettverket overfører informasjon i flere switchetrinn og avslutter overføringen i et krysskoblingsswitchetrinn (203), idet hvert prosessorelement overfører en adresse og en informasjonsdel i hver overføring,
og hvor hvert switchetrinn omfatter:
A. flere utgangskretser som hver omfatter flere utgangsportorganer, idet hver utgangskrets er knyttet til et bestemt bitmønster i en valgt del av en adresse,
B. flere datalinjer som hver er knyttet til et respektive utgangsportorgan,
C. kretsorganer for å motta informasjon og overføre den til en valgt av datalinjene, idet kretsorganene omfatter:
i. inngangskretsorganer for å motta innkommende informasjon, med en adresseutgangsport for overføring av adressen og en datautgangsport for overføring av de innkommende data som representerer informasjonen,
ii. flere adressestyrekretser som hver er knyttet til en utgangskrets og er innrettet for å dekode adressen fra adres-seutgangsporten på inngangskretsorganene, idet hver adressestyrekrets etablerer et adresseklareringssignal i avhengighet av en forhåndsbestemt koding av adressen, og
iii. flere koblingsorgangrupper som hver er koblet til en adressestyrekrets for å motta et klareringssignal fra denne, idet hver koblingsorgangruppe omfatter flere koblingsorganer som hver er koblet til en datalinje, og hvor én av koblings-organene i en koblingsorgangruppe kobler data fra inngangskretsorganene til en datalinje i avhengighet av mottagelsen av adresseklareringssignaler fra adressekretsorganene.
12. Rutingstrinn for overføring av informasjon blant flere prosessorelementer i et rutingsnettverk, karakterisert ved å omfatte:
A. flere utgangskretser som hver omfatter flere utgangsportorganer, idet hver utgangskrets er knyttet til et bestemt bitmønster i en valgt del av en adresse,
B. flere datalinjer som hver er knyttet til et respektive utgangsportorgan,
C. kretsorganer for å motta informasjon og overføre den til en valgt av datalinjene, idet kretsorganene omfatter:
i. inngangskretsorganer for å motta innkommende informasjon, med en adresseutgangsport for overføring av adressen og en datautgangsport for overføring av de innkommende data som representerer informasjonen,
ii. flere adressestyrekretser som hver er knyttet til en utgangskrets og er innrettet for å dekode adressen fra adres- seutgangsporten på inngangskretsorganene, idet hver adressestyrekrets etablerer et adresseklareringssignal i avhengighet av en forhåndsbestemt koding av adressen, og
iii. flere koblingsorgangrupper som hver er koblet til en adressestyrekrets for å motta et klareringssignal fra denne, idet hver koblingsorgangruppe omfatter flere koblingsorganer som hver er koblet til en datalinje, og hvor én av koblings-organene i en koblingsorgangruppe kobler data fra inngangskretsorganene til en datalinje i avhengighet av mottagelsen av adresseklareringssignaler fra adressekretsorganene.
13. Ledningsbrudd-detektor for anvendelse i et rutingsnettverk som overfører informasjon blant flere prosessorelementer, idet rutingsnettverket omfatter informasjonsoverførings-organer for overføring av informasjon, informasjonsmottagerorganer for å motta informasjon og forbindelsesorganer for overføring av informasjonen fra overføringsorganene til mot-tagerorganene, idet ledningsbrudd-detektoren er karakterisert ved å omfatte:
A. ledningsbruddsignalorganer forbundet med informasjonsmottagerorganene og koblet til forbindelsesorganene for over-føring av et signal over disse,
B. bruddholdeorganer forbundet med informasjonsover-føringsorganene og koblet til forbindelsesorganene for å holde et signal som mottas over en informasjonsoverføringsledning i avhengighet av et holdeklareringssignal, idet holdeorganene selektivt klarerer informasjonsoverføringsorganene i samsvar med tilstanden for det holdte signal, og
C. styreorganer koblet til ledningsbruddsignalorganene og overføringsholdeorganene for klarering av signalorganene for overføring av et signal via forbindelsesorganene og for klarering av overføringsholdeorganene for å holde tilstanden av signalet på informasjonsoverføringsledningen.
14. Detektor ifølge krav 13, videre karakterisert ved
A. ledningsbruddsendeorganer forbundet med informasjons-overf øringsorganene og koblet til forbindelsesorganene for over-føring av et signal over disse,
B. bruddindikasjonsholdeorganer forbundet med informasjonsmottagerorganene og koblet til forbindelsesorganene for å holde et signal som mottas over disse i avhengighet av et holdeklareringssignal, idet indikasjonsholdeorganene selektivt klarerer informasjonsmottagelsesorganene i avhengighet av tilstanden for det holdte signal, og at
C. styreorganene videre er koblet til ledningsbrudd-senderorganene og indikasjonsholdeorganene for klarering av sendeorganene
for overføring av et signal via forbindelsesorganene og for klarering av overføringsholdeorganene for å holde tilstanden av signalet på informasjonsoverføringsledningen.
15. Rutingsnettverk for overføring av informasjon blant flere prosessorelementer i et matrisekoblet prosessorsystem, idet rutingsnettverket overfører informasjon i flere switchetrinn og avslutter i et krysskoblingsswitchetrinn (203), idet hvert prosessorelement overfører informasjon som omfatter en adressedel og en informasjonsdel,
karakterisert ved at hvert switchetrinn omfatter:
A. flere utgangskretser som hver omfatter flere utgangsportorganer og hver er fastlagt ved et bestemt bitmønster i en adresse,
B. flere datalinjer som hver er tilkoblet respektive utgangsportorganer,
C. flere kretsorganer som hver er innrettet for å motta informasjon fra et prosessorelement og overføre det til én av datalinjene som er tilkoblet utgangsportorganene i en utgangskrets i samsvar med adressen i informasjonen.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/909,013 US4985832A (en) | 1986-09-18 | 1986-09-18 | SIMD array processing system with routing networks having plurality of switching stages to transfer messages among processors |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| NO873911D0 NO873911D0 (no) | 1987-09-17 |
| NO873911L true NO873911L (no) | 1988-03-21 |
Family
ID=25426513
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| NO873911A NO873911L (no) | 1986-09-18 | 1987-09-17 | Parallelldrevet dataprosessorsystem med stor datakraft. |
Country Status (10)
| Country | Link |
|---|---|
| US (3) | US4985832A (no) |
| EP (1) | EP0261034A3 (no) |
| JP (1) | JPS63233459A (no) |
| KR (1) | KR880004373A (no) |
| CN (1) | CN87107224A (no) |
| AU (1) | AU7865187A (no) |
| BR (1) | BR8705182A (no) |
| CA (1) | CA1292076C (no) |
| IE (1) | IE872522L (no) |
| NO (1) | NO873911L (no) |
Families Citing this family (108)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0303696A1 (en) * | 1987-02-25 | 1989-02-22 | Digital Equipment Corporation | Massively parallel array processing system |
| GB8713819D0 (en) * | 1987-06-12 | 1987-12-16 | Smiths Industries Plc | Information processing systems |
| US5038282A (en) * | 1988-05-11 | 1991-08-06 | Massachusetts Institute Of Technology | Synchronous processor with simultaneous instruction processing and data transfer |
| DE68920388T2 (de) * | 1988-09-19 | 1995-05-11 | Fujitsu Ltd | Paralleles Rechnersystem mit Verwendung eines SIMD-Verfahrens. |
| US5689647A (en) * | 1989-03-14 | 1997-11-18 | Sanyo Electric Co., Ltd. | Parallel computing system with processing element number setting mode and shortest route determination with matrix size information |
| GB2232512A (en) * | 1989-05-31 | 1990-12-12 | Plessey Telecomm | Processor unit networks |
| US6070003A (en) * | 1989-11-17 | 2000-05-30 | Texas Instruments Incorporated | System and method of memory access in apparatus having plural processors and plural memories |
| EP0428770B1 (de) * | 1989-11-21 | 1995-02-01 | Deutsche ITT Industries GmbH | Datengesteuerter Arrayprozessor |
| EP0509058A4 (en) * | 1990-01-05 | 1993-11-18 | Maspar Computer Corporation | Router chip with quad-crossbar and hyperbar personalities |
| US5280474A (en) * | 1990-01-05 | 1994-01-18 | Maspar Computer Corporation | Scalable processor to processor and processor-to-I/O interconnection network and method for parallel processing arrays |
| US5752070A (en) * | 1990-03-19 | 1998-05-12 | California Institute Of Technology | Asynchronous processors |
| US5099235A (en) * | 1990-05-14 | 1992-03-24 | Hughes Aircraft Company | Method for transferring data through a network of intelligent control stations using decentralized control techniques |
| US5283877A (en) * | 1990-07-17 | 1994-02-01 | Sun Microsystems, Inc. | Single in-line DRAM memory module including a memory controller and cross bar switches |
| US5418915A (en) * | 1990-08-08 | 1995-05-23 | Sumitomo Metal Industries, Ltd. | Arithmetic unit for SIMD type parallel computer |
| EP0552288A1 (en) * | 1990-10-03 | 1993-07-28 | Thinking Machines Corporation | Parallel computer system |
| DE69131272T2 (de) * | 1990-11-13 | 1999-12-09 | International Business Machines Corp., Armonk | Paralleles Assoziativprozessor-System |
| US5752067A (en) * | 1990-11-13 | 1998-05-12 | International Business Machines Corporation | Fully scalable parallel processing system having asynchronous SIMD processing |
| US5809292A (en) * | 1990-11-13 | 1998-09-15 | International Business Machines Corporation | Floating point for simid array machine |
| US5765011A (en) * | 1990-11-13 | 1998-06-09 | International Business Machines Corporation | Parallel processing system having a synchronous SIMD processing with processing elements emulating SIMD operation using individual instruction streams |
| US5625836A (en) * | 1990-11-13 | 1997-04-29 | International Business Machines Corporation | SIMD/MIMD processing memory element (PME) |
| US5630162A (en) * | 1990-11-13 | 1997-05-13 | International Business Machines Corporation | Array processor dotted communication network based on H-DOTs |
| US5765015A (en) * | 1990-11-13 | 1998-06-09 | International Business Machines Corporation | Slide network for an array processor |
| US5617577A (en) * | 1990-11-13 | 1997-04-01 | International Business Machines Corporation | Advanced parallel array processor I/O connection |
| US5590345A (en) * | 1990-11-13 | 1996-12-31 | International Business Machines Corporation | Advanced parallel array processor(APAP) |
| US5765012A (en) * | 1990-11-13 | 1998-06-09 | International Business Machines Corporation | Controller for a SIMD/MIMD array having an instruction sequencer utilizing a canned routine library |
| US5963746A (en) * | 1990-11-13 | 1999-10-05 | International Business Machines Corporation | Fully distributed processing memory element |
| US5966528A (en) * | 1990-11-13 | 1999-10-12 | International Business Machines Corporation | SIMD/MIMD array processor with vector processing |
| US5588152A (en) * | 1990-11-13 | 1996-12-24 | International Business Machines Corporation | Advanced parallel processor including advanced support hardware |
| US5828894A (en) * | 1990-11-13 | 1998-10-27 | International Business Machines Corporation | Array processor having grouping of SIMD pickets |
| US5963745A (en) * | 1990-11-13 | 1999-10-05 | International Business Machines Corporation | APAP I/O programmable router |
| US5794059A (en) * | 1990-11-13 | 1998-08-11 | International Business Machines Corporation | N-dimensional modified hypercube |
| US5815723A (en) * | 1990-11-13 | 1998-09-29 | International Business Machines Corporation | Picket autonomy on a SIMD machine |
| US5734921A (en) * | 1990-11-13 | 1998-03-31 | International Business Machines Corporation | Advanced parallel array processor computer package |
| IE920032A1 (en) * | 1991-01-11 | 1992-07-15 | Marconi Gec Ltd | Parallel processing apparatus |
| US5594918A (en) * | 1991-05-13 | 1997-01-14 | International Business Machines Corporation | Parallel computer system providing multi-ported intelligent memory |
| US5313649A (en) * | 1991-05-28 | 1994-05-17 | International Business Machines Corporation | Switch queue structure for one-network parallel processor systems |
| US5689719A (en) * | 1991-06-28 | 1997-11-18 | Sanyo Electric O., Ltd. | Parallel computer system including processing elements |
| JP3679813B2 (ja) * | 1991-07-22 | 2005-08-03 | 株式会社日立製作所 | 並列計算機 |
| US5715391A (en) * | 1991-11-15 | 1998-02-03 | International Business Machines Corporation | Modular and infinitely extendable three dimensional torus packaging scheme for parallel processing |
| AU2939892A (en) * | 1991-12-06 | 1993-06-28 | Richard S. Norman | Massively-parallel direct output processor array |
| EP0567217B1 (en) * | 1992-04-20 | 2001-10-24 | 3Com Corporation | System of extending network resources to remote networks |
| US5581773A (en) * | 1992-05-12 | 1996-12-03 | Glover; Michael A. | Massively parallel SIMD processor which selectively transfers individual contiguously disposed serial memory elements |
| JP2642039B2 (ja) * | 1992-05-22 | 1997-08-20 | インターナショナル・ビジネス・マシーンズ・コーポレイション | アレイ・プロセッサ |
| US5758053A (en) * | 1992-07-22 | 1998-05-26 | Hitachi, Ltd. | Fault handling and recovery for system having plural processors |
| US5561805A (en) * | 1992-10-22 | 1996-10-01 | International Business Machines Corporation | System for selectively packing together datablocks and efficiently routing independent of network topology in a parallel computer system in accordance with a selected numbering system |
| US6298162B1 (en) | 1992-12-23 | 2001-10-02 | Lockheed Martin Corporation | Image compression/expansion using parallel decomposition/recomposition |
| DE69323861T2 (de) * | 1993-01-25 | 1999-10-07 | Bull Hn Information Systems Italia S.P.A., Pregnana Milanese | Multiprozessorsystem mit gemeinsamem Speicher |
| US5717947A (en) * | 1993-03-31 | 1998-02-10 | Motorola, Inc. | Data processing system and method thereof |
| US5835492A (en) * | 1993-09-08 | 1998-11-10 | Hitachi, Ltd. | Network for mutually connecting computers and communicating method using such network |
| US5659780A (en) * | 1994-02-24 | 1997-08-19 | Wu; Chen-Mie | Pipelined SIMD-systolic array processor and methods thereof |
| US5708835A (en) * | 1995-03-27 | 1998-01-13 | Hughes Electronics | Dual-directional parallel processor |
| US5859981A (en) * | 1995-07-12 | 1999-01-12 | Super P.C., L.L.C. | Method for deadlock-free message passing in MIMD systems using routers and buffers |
| US5956518A (en) * | 1996-04-11 | 1999-09-21 | Massachusetts Institute Of Technology | Intermediate-grain reconfigurable processing device |
| US5822766A (en) * | 1997-01-09 | 1998-10-13 | Unisys Corporation | Main memory interface for high speed data transfer |
| US5848404A (en) * | 1997-03-24 | 1998-12-08 | International Business Machines Corporation | Fast query search in large dimension database |
| US6185667B1 (en) * | 1998-04-09 | 2001-02-06 | Teranex, Inc. | Input/output support for processing in a mesh connected computer |
| US6167501A (en) * | 1998-06-05 | 2000-12-26 | Billions Of Operations Per Second, Inc. | Methods and apparatus for manarray PE-PE switch control |
| US6357018B1 (en) | 1999-01-26 | 2002-03-12 | Dell Usa, L.P. | Method and apparatus for determining continuity and integrity of a RAMBUS channel in a computer system |
| GB2394815B (en) * | 1999-04-09 | 2004-08-25 | Clearspeed Technology Ltd | Parallel data processing systems |
| US7526630B2 (en) | 1999-04-09 | 2009-04-28 | Clearspeed Technology, Plc | Parallel data processing apparatus |
| US7966475B2 (en) | 1999-04-09 | 2011-06-21 | Rambus Inc. | Parallel data processing apparatus |
| US20080008393A1 (en) * | 1999-04-09 | 2008-01-10 | Dave Stuttard | Parallel data processing apparatus |
| US20080016318A1 (en) * | 1999-04-09 | 2008-01-17 | Dave Stuttard | Parallel data processing apparatus |
| US20080007562A1 (en) * | 1999-04-09 | 2008-01-10 | Dave Stuttard | Parallel data processing apparatus |
| US20070294510A1 (en) * | 1999-04-09 | 2007-12-20 | Dave Stuttard | Parallel data processing apparatus |
| AU3829500A (en) * | 1999-04-09 | 2000-11-14 | Clearspeed Technology Limited | Parallel data processing apparatus |
| US7802079B2 (en) * | 1999-04-09 | 2010-09-21 | Clearspeed Technology Limited | Parallel data processing apparatus |
| US7506136B2 (en) * | 1999-04-09 | 2009-03-17 | Clearspeed Technology Plc | Parallel data processing apparatus |
| US8171263B2 (en) * | 1999-04-09 | 2012-05-01 | Rambus Inc. | Data processing apparatus comprising an array controller for separating an instruction stream processing instructions and data transfer instructions |
| US8169440B2 (en) * | 1999-04-09 | 2012-05-01 | Rambus Inc. | Parallel data processing apparatus |
| US20080162874A1 (en) * | 1999-04-09 | 2008-07-03 | Dave Stuttard | Parallel data processing apparatus |
| US8762691B2 (en) * | 1999-04-09 | 2014-06-24 | Rambus Inc. | Memory access consolidation for SIMD processing elements using transaction identifiers |
| US20070242074A1 (en) * | 1999-04-09 | 2007-10-18 | Dave Stuttard | Parallel data processing apparatus |
| US8174530B2 (en) * | 1999-04-09 | 2012-05-08 | Rambus Inc. | Parallel date processing apparatus |
| US20080184017A1 (en) * | 1999-04-09 | 2008-07-31 | Dave Stuttard | Parallel data processing apparatus |
| US7627736B2 (en) * | 1999-04-09 | 2009-12-01 | Clearspeed Technology Plc | Thread manager to control an array of processing elements |
| US6728863B1 (en) | 1999-10-26 | 2004-04-27 | Assabet Ventures | Wide connections for transferring data between PE's of an N-dimensional mesh-connected SIMD array while transferring operands from memory |
| US6356993B1 (en) | 1999-10-26 | 2002-03-12 | Pyxsys Corporation | Dual aspect ratio PE array with no connection switching |
| US6732253B1 (en) | 2000-11-13 | 2004-05-04 | Chipwrights Design, Inc. | Loop handling for single instruction multiple datapath processor architectures |
| US6931518B1 (en) | 2000-11-28 | 2005-08-16 | Chipwrights Design, Inc. | Branching around conditional processing if states of all single instruction multiple datapaths are disabled and the computer program is non-deterministic |
| JP3693013B2 (ja) * | 2001-12-26 | 2005-09-07 | 日本電気株式会社 | データ処理システム、アレイ型プロセッサ、データ処理装置、コンピュータプログラム、情報記憶媒体 |
| JP3902741B2 (ja) * | 2002-01-25 | 2007-04-11 | 株式会社半導体理工学研究センター | 半導体集積回路装置 |
| US20040003201A1 (en) * | 2002-06-28 | 2004-01-01 | Koninklijke Philips Electronics N.V. | Division on an array processor |
| US7493607B2 (en) | 2002-07-09 | 2009-02-17 | Bluerisc Inc. | Statically speculative compilation and execution |
| US7418574B2 (en) * | 2002-10-31 | 2008-08-26 | Lockheed Martin Corporation | Configuring a portion of a pipeline accelerator to generate pipeline date without a program instruction |
| US20040255096A1 (en) * | 2003-06-11 | 2004-12-16 | Norman Richard S. | Method for continuous linear production of integrated circuits |
| US20050114850A1 (en) | 2003-10-29 | 2005-05-26 | Saurabh Chheda | Energy-focused re-compilation of executables and hardware mechanisms based on compiler-architecture interaction and compiler-inserted control |
| US7996671B2 (en) | 2003-11-17 | 2011-08-09 | Bluerisc Inc. | Security of program executables and microprocessors based on compiler-architecture interaction |
| US8607209B2 (en) | 2004-02-04 | 2013-12-10 | Bluerisc Inc. | Energy-focused compiler-assisted branch prediction |
| US7676649B2 (en) * | 2004-10-01 | 2010-03-09 | Lockheed Martin Corporation | Computing machine with redundancy and related systems and methods |
| US20070294181A1 (en) * | 2006-05-22 | 2007-12-20 | Saurabh Chheda | Flexible digital rights management with secure snippets |
| US20080126766A1 (en) | 2006-11-03 | 2008-05-29 | Saurabh Chheda | Securing microprocessors against information leakage and physical tampering |
| US20080154379A1 (en) * | 2006-12-22 | 2008-06-26 | Musculoskeletal Transplant Foundation | Interbody fusion hybrid graft |
| US8145880B1 (en) | 2008-07-07 | 2012-03-27 | Ovics | Matrix processor data switch routing systems and methods |
| US8327114B1 (en) | 2008-07-07 | 2012-12-04 | Ovics | Matrix processor proxy systems and methods |
| US8131975B1 (en) | 2008-07-07 | 2012-03-06 | Ovics | Matrix processor initialization systems and methods |
| US7870365B1 (en) | 2008-07-07 | 2011-01-11 | Ovics | Matrix of processors with data stream instruction execution pipeline coupled to data switch linking to neighbor units by non-contentious command channel / data channel |
| US7958341B1 (en) | 2008-07-07 | 2011-06-07 | Ovics | Processing stream instruction in IC of mesh connected matrix of processors containing pipeline coupled switch transferring messages over consecutive cycles from one link to another link or memory |
| US8755515B1 (en) | 2008-09-29 | 2014-06-17 | Wai Wu | Parallel signal processing system and method |
| US8150902B2 (en) | 2009-06-19 | 2012-04-03 | Singular Computing Llc | Processing with compact arithmetic processing element |
| US10698859B2 (en) * | 2009-09-18 | 2020-06-30 | The Board Of Regents Of The University Of Texas System | Data multicasting with router replication and target instruction identification in a distributed multi-core processing architecture |
| KR101076869B1 (ko) | 2010-03-16 | 2011-10-25 | 광운대학교 산학협력단 | 코어스 그레인 재구성 어레이에서의 메모리 중심 통신 장치 |
| KR101763731B1 (ko) * | 2013-03-15 | 2017-08-01 | 인텔 코포레이션 | 회선 속도 상호 연결 구조를 구현하는 방법 |
| US10452399B2 (en) | 2015-09-19 | 2019-10-22 | Microsoft Technology Licensing, Llc | Broadcast channel architectures for block-based processors |
| US10963379B2 (en) | 2018-01-30 | 2021-03-30 | Microsoft Technology Licensing, Llc | Coupling wide memory interface to wide write back paths |
| KR102771901B1 (ko) | 2020-06-19 | 2025-02-25 | 삼성전자주식회사 | 일 함수 층들을 갖는 반도체 소자들 |
| KR102820462B1 (ko) | 2020-06-24 | 2025-06-16 | 삼성전자주식회사 | 게이트 라인을 포함하는 집적회로 소자 |
| KR102788873B1 (ko) | 2020-06-24 | 2025-03-31 | 삼성전자주식회사 | 캡핑층을 포함하는 반도체 소자 |
Family Cites Families (54)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4A (en) | 1836-08-10 | Thomas Blanchard | Stock shaving or rounding machine for edges ends etc of ships' tackle-blocks | |
| FR2079703A6 (no) * | 1970-02-10 | 1971-11-12 | Cit Alcatel | |
| US3883855A (en) * | 1973-09-27 | 1975-05-13 | Stromberg Carlson Corp | Control system for a digital switching network |
| SE381548B (sv) * | 1974-12-20 | 1975-12-08 | Ellemtel Utvecklings Ab | Anordning for omstyrning av veljarnet |
| US4051551A (en) * | 1976-05-03 | 1977-09-27 | Burroughs Corporation | Multidimensional parallel access computer memory system |
| US4079455A (en) * | 1976-12-13 | 1978-03-14 | Rca Corporation | Microprocessor architecture |
| JPS582513B2 (ja) * | 1978-03-03 | 1983-01-17 | 株式会社日立製作所 | ネットワ−ク駆動方式 |
| US4247892A (en) * | 1978-10-12 | 1981-01-27 | Lawrence Patrick N | Arrays of machines such as computers |
| US4304002A (en) * | 1978-11-23 | 1981-12-01 | International Computers Limited | Data processing system with error checking |
| US4382277A (en) * | 1979-05-14 | 1983-05-03 | System Development Corp. | Method and means utilizing multiple processing means for determining degree of match between two data arrays |
| US4380046A (en) * | 1979-05-21 | 1983-04-12 | Nasa | Massively parallel processor computer |
| US4412303A (en) * | 1979-11-26 | 1983-10-25 | Burroughs Corporation | Array processor architecture |
| US4314349A (en) * | 1979-12-31 | 1982-02-02 | Goodyear Aerospace Corporation | Processing element for parallel array processors |
| JPS56164464A (en) * | 1980-05-21 | 1981-12-17 | Tatsuo Nogi | Parallel processing computer |
| US4396979A (en) * | 1980-05-30 | 1983-08-02 | Fairchild Camera & Instrument Corporation | Microprocessor with improved arithmetic logic unit data path |
| US4370709A (en) * | 1980-08-01 | 1983-01-25 | Tracor, Inc. | Computer emulator with three segment microcode memory and two separate microcontrollers for operand derivation and execution phases |
| US4439826A (en) * | 1981-07-20 | 1984-03-27 | International Telephone & Telegraph Corporation | Diagnostic system for a distributed control switching network |
| US4498133A (en) * | 1981-12-10 | 1985-02-05 | Burroughs Corp. | Selector switch for a concurrent network of processors |
| US4543627A (en) * | 1981-12-14 | 1985-09-24 | At&T Bell Laboratories | Internal communication arrangement for a multiprocessor system |
| IT1194131B (it) * | 1981-12-23 | 1988-09-14 | Italtel Spa | Disposizione circuitale atta a collegare una pluralita' di coppie di elaboratori ad un ulteriore coppia di elaboratori di gerarchia superiore |
| US4543642A (en) * | 1982-01-26 | 1985-09-24 | Hughes Aircraft Company | Data Exchange Subsystem for use in a modular array processor |
| US4524428A (en) * | 1982-01-26 | 1985-06-18 | Hughes Aircraft Company | Modular input-programmable logic circuits for use in a modular array processor |
| US4507726A (en) * | 1982-01-26 | 1985-03-26 | Hughes Aircraft Company | Array processor architecture utilizing modular elemental processors |
| US4498134A (en) * | 1982-01-26 | 1985-02-05 | Hughes Aircraft Company | Segregator functional plane for use in a modular array processor |
| US4466060A (en) * | 1982-02-11 | 1984-08-14 | At&T Bell Telephone Laboratories, Incorporated | Message routing in a computer network |
| EP0097351A3 (en) * | 1982-06-21 | 1986-02-26 | Nec Corporation | Router unit and routing network for determining an output port by detecting a part of an input packet |
| US4622632A (en) * | 1982-08-18 | 1986-11-11 | Board Of Regents, University Of Washington | Data processing system having a pyramidal array of processors |
| US4644496A (en) * | 1983-01-11 | 1987-02-17 | Iowa State University Research Foundation, Inc. | Apparatus, methods, and systems for computer information transfer |
| US4727474A (en) * | 1983-02-18 | 1988-02-23 | Loral Corporation | Staging memory for massively parallel processor |
| US4739474A (en) * | 1983-03-10 | 1988-04-19 | Martin Marietta Corporation | Geometric-arithmetic parallel processor |
| US4589067A (en) * | 1983-05-27 | 1986-05-13 | Analogic Corporation | Full floating point vector processor with dynamically configurable multifunction pipelined ALU |
| US4709327A (en) * | 1983-05-31 | 1987-11-24 | Hillis W Daniel | Parallel processor/memory circuit |
| US5008815A (en) * | 1983-05-31 | 1991-04-16 | Thinking Machines Corporation | Parallel processor |
| US4621339A (en) * | 1983-06-13 | 1986-11-04 | Duke University | SIMD machine using cube connected cycles network architecture for vector processing |
| FR2569290B1 (fr) * | 1984-08-14 | 1986-12-05 | Trt Telecom Radio Electr | Processeur pour le traitement de signal et structure de multitraitement hierarchisee comportant au moins un tel processeur |
| US4661947A (en) * | 1984-09-26 | 1987-04-28 | American Telephone And Telegraph Company At&T Bell Laboratories | Self-routing packet switching network with intrastage packet communication |
| US4627048A (en) * | 1984-10-09 | 1986-12-02 | At&T Bell Laboratories | Routing address bit selection in a packet switching network |
| US4630259A (en) * | 1984-11-14 | 1986-12-16 | At&T Bell Laboratories | Lockup detection and recovery in a packet switching network |
| US4651318A (en) * | 1984-11-30 | 1987-03-17 | At&T Bell Laboratories | Self-routing packets with stage address identifying fields |
| US4922408A (en) * | 1985-09-27 | 1990-05-01 | Schlumberger Technology Corporation | Apparatus for multi-processor communications |
| US5003508A (en) * | 1985-10-31 | 1991-03-26 | Floating Point Systems, Inc. | Linear nearest neighbor interconnect bus system |
| US4736291A (en) * | 1985-11-22 | 1988-04-05 | Texas Instruments Incorporated | General-purpose array processor |
| US4706240A (en) * | 1985-11-29 | 1987-11-10 | American Telephone And Telegraph Co., At&T Bell Labs | Switching system having multiple parallel switching networks |
| US4731878A (en) * | 1985-11-29 | 1988-03-15 | American Telephone And Telegraph Company, At&T Bell Laboratories | Self-routing switch node combining electronic and photonic switching |
| US4783732A (en) * | 1985-12-12 | 1988-11-08 | Itt Corporation | Two-wire/three-port RAM for cellular array processor |
| CA1293819C (en) * | 1986-08-29 | 1991-12-31 | Thinking Machines Corporation | Very large scale computer |
| US4843540A (en) * | 1986-09-02 | 1989-06-27 | The Trustees Of Columbia University In The City Of New York | Parallel processing method |
| US4827403A (en) * | 1986-11-24 | 1989-05-02 | Thinking Machines Corporation | Virtual processor techniques in a SIMD multiprocessor array |
| US4873626A (en) * | 1986-12-17 | 1989-10-10 | Massachusetts Institute Of Technology | Parallel processing system with processor array having memory system included in system memory |
| US4891787A (en) * | 1986-12-17 | 1990-01-02 | Massachusetts Institute Of Technology | Parallel processing system with processor array having SIMD/MIMD instruction processing |
| US5119484A (en) * | 1987-02-24 | 1992-06-02 | Digital Equipment Corporation | Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction |
| US4891751A (en) * | 1987-03-27 | 1990-01-02 | Floating Point Systems, Inc. | Massively parallel vector processing computer |
| US4852083A (en) * | 1987-06-22 | 1989-07-25 | Texas Instruments Incorporated | Digital crossbar switch |
| US5165093A (en) * | 1992-03-23 | 1992-11-17 | The Titan Corporation | Interstitial X-ray needle |
-
1986
- 1986-09-18 US US06/909,013 patent/US4985832A/en not_active Expired - Lifetime
-
1987
- 1987-09-16 EP EP87402068A patent/EP0261034A3/en not_active Ceased
- 1987-09-17 IE IE872522A patent/IE872522L/xx unknown
- 1987-09-17 CA CA000547188A patent/CA1292076C/en not_active Expired - Fee Related
- 1987-09-17 NO NO873911A patent/NO873911L/no unknown
- 1987-09-18 KR KR870010397A patent/KR880004373A/ko not_active Withdrawn
- 1987-09-18 JP JP62234716A patent/JPS63233459A/ja active Pending
- 1987-09-18 BR BR8705182A patent/BR8705182A/pt unknown
- 1987-09-18 AU AU78651/87A patent/AU7865187A/en not_active Abandoned
- 1987-09-18 CN CN198787107224A patent/CN87107224A/zh active Pending
-
1990
- 1990-03-21 US US07/497,403 patent/US5276895A/en not_active Expired - Lifetime
-
1993
- 1993-06-03 US US08/072,342 patent/US5305462A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| CA1292076C (en) | 1991-11-12 |
| KR880004373A (ko) | 1988-06-03 |
| EP0261034A3 (en) | 1989-04-12 |
| CN87107224A (zh) | 1988-05-18 |
| EP0261034A2 (en) | 1988-03-23 |
| JPS63233459A (ja) | 1988-09-29 |
| US5276895A (en) | 1994-01-04 |
| US5305462A (en) | 1994-04-19 |
| US4985832A (en) | 1991-01-15 |
| IE872522L (en) | 1988-03-18 |
| BR8705182A (pt) | 1988-05-24 |
| AU7865187A (en) | 1988-03-31 |
| NO873911D0 (no) | 1987-09-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| NO873911L (no) | Parallelldrevet dataprosessorsystem med stor datakraft. | |
| US5170484A (en) | Massively parallel array processing system | |
| US5146606A (en) | Systems for interconnecting and configuring plurality of memory elements by control of mode signals | |
| US5230079A (en) | Massively parallel array processing system with processors selectively accessing memory module locations using address in microword or in address register | |
| US5421019A (en) | Parallel data processor | |
| US4745546A (en) | Column shorted and full array shorted functional plane for use in a modular array processor and method for using same | |
| KR0125623B1 (ko) | 데이타 프로세서 및 데이타 처리방법 | |
| EP0456201B1 (en) | Massively parallel processor including slice-wise communications arrangement | |
| US4498134A (en) | Segregator functional plane for use in a modular array processor | |
| US4507726A (en) | Array processor architecture utilizing modular elemental processors | |
| US3364472A (en) | Computation unit | |
| US6167501A (en) | Methods and apparatus for manarray PE-PE switch control | |
| NO750339L (no) | ||
| US3312943A (en) | Computer organization | |
| US8949576B2 (en) | Arithmetic node including general digital signal processing functions for an adaptive computing machine | |
| GB2062915A (en) | Parallel array processor system | |
| JPH0727516B2 (ja) | Simdアレイ・プロセツサ | |
| NO141105B (no) | Databehandlingssystem som har en hoeyhastighets bufferlager - enhet for overfoering av data mellom et hovedlager og en sentral behandlingsenhet | |
| US4524428A (en) | Modular input-programmable logic circuits for use in a modular array processor | |
| WO1991019269A1 (en) | Multi-dimensional processor system and processor array with massively parallel input/output | |
| US6108763A (en) | Simultaneous parity generating/reading circuit for massively parallel processing systems | |
| US6367063B1 (en) | Method and apparatus for selectively performing a plurality of logic operations and memory functions | |
| EP0303696A1 (en) | Massively parallel array processing system | |
| US5153521A (en) | Broken wire detector for use in a massively parallel array processing system | |
| US3631401A (en) | Direct function data processor |