NL192637C - Stelselprocessor. - Google Patents

Stelselprocessor. Download PDF

Info

Publication number
NL192637C
NL192637C NL8500537A NL8500537A NL192637C NL 192637 C NL192637 C NL 192637C NL 8500537 A NL8500537 A NL 8500537A NL 8500537 A NL8500537 A NL 8500537A NL 192637 C NL192637 C NL 192637C
Authority
NL
Netherlands
Prior art keywords
processing
input
flag
information
pes
Prior art date
Application number
NL8500537A
Other languages
English (en)
Other versions
NL8500537A (nl
NL192637B (nl
Original Assignee
Nippon Telegraph & Telephone
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP59034450A external-priority patent/JPS60179871A/ja
Priority claimed from JP59096656A external-priority patent/JPS60241155A/ja
Application filed by Nippon Telegraph & Telephone filed Critical Nippon Telegraph & Telephone
Publication of NL8500537A publication Critical patent/NL8500537A/nl
Publication of NL192637B publication Critical patent/NL192637B/nl
Application granted granted Critical
Publication of NL192637C publication Critical patent/NL192637C/nl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures 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/8023Two dimensional arrays, e.g. mesh, torus

Description

1 192637
Stelselprocessor
De uitvinding heeft betrekking op een stelselprocessor voorzien van n verwerkingselementen, welke onderling in de vorm van een ring gekoppeld zijn met behulp van n multiplexinrichtingen, waarbij elk van de 5 n verwerkingselementen omvat: invoerorganen voor het invoeren van één van de ingangsvectorgegevens van een eerste en een tweede reeks van ingangsvectorgegevens; organen voor het uitvoeren van voorafbepaalde berekeningen, zoals optellen, aftrekken, vergelijkingsberekeningen en product-somberekeningen tussen de ingangsvectorgegevens van de eerste en de tweede reeks; opslagorganen voor het opslaan van de ingangsvectorgegevens van de eerste reeks, van de tweede reeks, en van de 10 resultaten van de berekeningen; een gegevensoverdraagorgaan voor het overdragen van één van de ingangsvectorgegevens en de berekeningsresultaten naar een naastgelegen verwerkingselement via een van de multiplexinrichtingen; een met een l/O-lijn verbonden uitvoerorgaan voor het uitvoeren als eind-berekening van het resultaat naar de l/O-lijn; en een stuurorgaan voor het besturen van de invoerorganen, de opslagorganen, het berekeningsorgaan, het overdrachtsorgaan en het uitvoerorgaan.
15 Een dergelijke inrichting is bekend uit het artikel 'VLSI structures for speech analysis and pattern recognition” door L. Ciminiera et al in ’’Proceedings, IEEE Computer Society Conference on pattern recognition and Image Processing, 14-17 juni 1982, Las Vegas, Nevada, bladzijden 692-697, IEEE, New York, US. Dit artikel toont een processor voorzien van een aantal PE;s (PE is processing element) in een ring, en is gebaseerd op parallelle verwerking van de Informatie.
20 De informatie wordt vanuit een externe bron via een enkel type informatiebus toegevoerd aan de PE’s en wordt via een poort van elke PE afgevoerd.
Voorts wordt een zogenaamde kruisstangkiezer toegepast om een soort van deeltijdregeiing aan te brengen, maar een nadeel hiervan is dat een snelle modulaire werking niet meer mogelijk is.
Dit artikel beoogt te voorzien in een systeem om met behulp van een processor een hoge verwerkings-25 snelheid te realiseren tussen uitsluitend één soort referentiepatroon en een bepaald onbekend object dat moet worden verwerkt, terwijl volgens de aanvrage een lage snelheid wordt verkregen tussen een aantal referentiepatronen en een bepaald onbekend object. Het verschil zit derhalve in het aantal referentie-patronen.
Zou men met de schakeling volgens genoemd artikel werken met een aantal patronen in ware tijd, zal elk 30 referentiepatroon een afzonderlijke processor moeten hebben, met als gevolg dat het aantal soorten referentiepatronen enorm groot wordt, en dus een groot aantal hardware componenten nodig is.
De uitvinding ondervangt deze bezwaren.
De stelselprocessor volgens de uitvinding heeft daartoe het kenmerk, dat eik van de n multiplexinrichtingen een tweede ingang heeft, die verbonden is met een ingangsvectorgegevenslijn, en voorzien is 35 van organen voor het kiezen van informatie-overdracht hetzij tussen twee verwerkingselementen (PE,... PEn), hetzij tussen de ingangsvectorgegevenslijn en een verwerkingselement; dat de invoerorganen bestaan uit een eerste invoerorgaan voor het invoeren van één van de ingangsvectorgegevens (¾) van de eerste reeks (C = {cj (1 =1,2 .... I)) vanaf de ingangsvectorgegevenslijn via de multiplexinrichting, en uit een tweede invoerorgaan voor het invoeren van één van de ingangsvectorgegevens (r,) van de tweede reeks 40 (R = {rj} (j=1,2,....N) uit de l/O-lijn; en dat het gegevensoverdraagorgaan is ingericht om respectieve verwerkingsresultaten gelijktijdig over te dragen naar respectieve naastgelegen verwerkingselementen, en wel rrKSiN maal (mt??N is de rest als N door n wordt gedeeld), parallel met een berekeningsverwerking in elk verwerkingselement.
Op deze wijze kan men toe met minder PE’s en bovendien zijn er minder toe- en afvoerdraden nodig om 45 toch ten minste dezelfde hoeveelheid informatie te verwerken als bij het stelsel volgens de stand van de techniek. Voorts kan het aantal PE’s bepaald worden ongeacht het aantal en de lengte van een referentiepatroon en de lengte van een onbekend patroon.
Opgemerkt wordt dat stelselprocessoren kunnen worden gebruikt voor het uitvoeren van berekeningen voor alle combinaties van twee typen variabelen en voor recursieve formules met lokale afhankelijkheid van 50 informatie, waarbij deze berekeningsresultaten worden gebruikt, welke worden gekenmerkt door aanpassingsberekeningen, gebaseerd op een dynamische tijdvervormings- of dynamische programmerings-theorie, welke wordt gebruikt in het geval van patroonaanpassing bij spraakherkenning en symbool-herkenning, en een besturingsmethode van de stelselprocessor.
Dynamische tijdvervorming staat bekend als een doeltreffende methode bij patroonaanpassing in 55 spraakherkenning of symboolherkenning. De dynamische tijdvervorming vereist een tijdsgetrouwe verwerking van een bijzonder groot volume aan informatie, zodat een snelle verwerking nodig is. Verwerking van de dynamische tijdvervorming is één type berekening, dat bestaat uit de berekening van alle combinaties 192637 2 van twee typen variabelen en die van recursieve formules met een lokale afhankelijkheid van informatie, waarbij de resultaten van een dergelijke berekening worden gebruikt.
Ter illustratie zal in het onderstaande een voorbeeld van een aanpassingsberekening, gebaseerd op dynamische tijdvervorming, welke de berekening van twee typen vectorvariabelen en die van recursieve 5 formules van cumulatieve operaties onder gebruik van dergelijke berekeningsresultaten omvat, worden aangegeven.
Dïj I Cj - rj|2 = Σ | c,,' - rk’ |2 (1) k=1 10 « /Sj-1 \
Sij = Dij + min (Jm.h j (2) S0j “ 001 SjQ = 00, SqQ = O (3) waarbij: q en fj respectievelijk i-de en j-de elementen van een vector C = (c,, c2,.....c, met I elementen en een 15 vector R = (rn, r2,..... rN met N elementen zijn. Voorts drukt m een orde van elke vector uit. c, stelt (c/, c*.
.... cm') en Tj stelt OV, r2j,...., rj) voor. DSi en Sy drukken respectievelijk een afstand tussen vectoren en cumulatieve afstand uit.
Als een stelselprocessor, welke dit type berekening parallel kan verwerken is op zich een conventioneél stelsel bekend, waarin, wanneer de aantallen gegevens in twee typen vectoren respectievelijk I en N zijn 20 (I x N) verwerkingselementen (hierna betiteld als PE) in een orthogonaal netwerk aanwezig zijn.
Een dergelijke orthogonale constructie van een stelselprocessor is beschreven in het Amerikaanse octrooischrift 4.384.273.
De uitvinding zal nu aan de hand van de tekening en de beschrijving nader worden toegelicht. Daarbij toont: 25 figuur 1 een schema van een voorbeeld van een constructie van een conventionele orthogonale stelselprocessor; figuren 2A en 2B; 3A en 3B; 4A en 4B; en 5A en 5B diagrammen ter toelichting van een voorbeeld van de verwerkingshandelingen van de conventionele stelselprocessor; figuur 6 een blokschema van een uitvoeringsvorm van een stelselprocessor volgens een verbeterd 30 concept; figuur 7 een blokschema van een uitvoeringsvorm van het verwerkingselement in de stelselprocessor van figuur 6; figuur 8 een diagram ter toelichting van een voorbeeld van de verwerkingshandelingen in de in figuur 6 afgebeelde stelselprocessor; 35 figuur 9 een diagram ter toelichting van de informatie-invoer vanuit uitwendige bronnen en toestanden van informatieoverdracht tussen verwerkingselementen in de in figuur 8 afgebeelde stelselprocessor; figuur 10 een diagram ter toelichting van een voorbeeld van de verwerkingshandelingen van elk verwerkingsel ement; figuur 11 een blokschema van een andere uitvoeringsvorm van een stelselprocessor, waarin de 40 verwerkingselementen zijn opgesteld en verbonden in de vorm van een ring; figuur 12 een schema ter toelichting van een voorbeeld van een aan de ingangsvectorinformatie toegevoegde vlag; figuur 13 een blokschema ter toelichting van een voorbeeld van regelhandelingen van een conditievlag-register in het verwerkingselement; 45 figuren 14A-14E diagrammen ter toelichting van een voorbeeld van regelhandelingen wanneer in de in figuur 11 afgebeelde stelselprocessor een dynamische tijdvervormingsberekening wordt uitgevoerd; figuur 15 een blokschema van een uitvoeringsvorm van een constructie, waarbij een regeleenheid als een deel van de stelselprocessor in de verwerkingselementen is opgenomen; figuren 16A-16I diagrammen ter toelichting van een voorbeeld van regelhandelingen wanneer in een 50 stelselprocessor met een orthogonale constructie een matrix vermenigvuldigd wordt uitgevoerd; figuur 17 een stroomdiagram van een voorbeeld van een besturingsstroom van een logische regelketen in de regeleenheid van elk verwerkingselement; figuur 18 een stroomdiagram van een voorbeeld van een regelstroom van de regeleenheid in elk verwerkingselement.
Onder verwijzing nu naar figuren 1-5 toont figuur 1 een illustratieve constructie van een stelselprocessor, die in een orthogonaal netwerk is opgesteld en figuren 2A en 2B; 3A en 3B; 4A en 4B; en 5A en 5B tonen 55 3 192637 een voorbeeld van de werking van de stelselprocessor. In figuur 1 is 100 een PE, 200 een lokale informatie-baan en 300 een instructielijn. Met 400 is een ingangsklem aangegeven en met 500 een uitgangsklem.
Elke PE 100 bezit organen voor het uitvoeren van een intervectorafstandsberekeningsvergelijking (1), welke bestaat uit optel- en vermenigvuldigingsberekeningen en een vergelijkings- en cumulatieve 5 berekeningsvergelijking (2), en organen voor het ontvangen en overdragen van resultaten van de vergelijkingsberekeningen vanuit de naast gelegen PE's en de resultaten van cumulatieve berekeningen Sy, en de vectorinformatie c, en r^ Voorts is elke PE aangegeven met een getal, dat de positie daarvan in het orthogonale stelsel aangeeft. Wanneer de PE in het snijpunt van de kolom i en de rij j wordt omschreven als PEjj, kunnen de bovenstaande vergelijkingen (1), (2) en {3) worden uitgevoerd met de volgende handelin-10 gen.
(i) Vanuit de links naastgelegen ΡΕΜ), welke naast PEg ligt aan de linkerzijde en de naar beneden gericht naastgelegen PEi H, welke bij PEM in neerwaartse richting ligt (alternatief uit een ingangsklem aan de linkerrand en een ingangsklem aan de bodemrand) worden twee typen vectorgegevens ch η ingevoerd en wordt de afstand tussen deze vectoren verkregen door vergelijking (1) uit te voeren.
15 (ii) De vectorinformatie c, en η wordt respectievelijk naar de rechts naast gelegen PEi+1j en naar de boven naast gelegen PEj>j+1 overgedragen.
(iii) Vanuit de links naast gelegen PEMj wordt een cumulatief berekeningsresultaat SM j ingevoerd en vanuit de onder naast gelegen ΡΕ,ιΗ wordt een vergelijkingsberekeningsresultaat van min (S^.·, en βΜιΗ) ingevoerd en wordt een vergelijkingsberekening min {SM >(, min (SijH, SMH)} uitgevoerd en wordt Dy 20 verkregen bij stap (i) bij het resultaat van deze berekeningen opgeteld voor het verkrijgen van Sy.
(iv) Een vergelijkingsberekening min (Sy, SM j) wordt uitgevoerd en het resultaat van deze berekening wordt overgedragen naar de boven naast gelegen PEij+1 terwijl een cumulatief berekeningsresultaat SM wordt overgedragen naar de rechts naast gelegen PEi+1ij.
De stappen (iii) en (iv) illustreren het proces voor het uitvoeren van de vergelijking en cumulatieve 25 berekeningsvergelijking (2). Dat wil zeggen, van de drie typen cumulatieve resultaten SiiM, SMJ, 8ΜιΡΙ, welke nodig zijn voor het uitvoeren van de cumulatieve berekeningsvergelijking (2) in PEy, zijn SjH en SM j respectievelijk aanwezig in PEi H> welke rechts naast PEy ligt en links naast PEM jl terwijl 8ΜιΜ aanwezig is een PEM j.,, welke diagonaal naast PEy ligt.
In verband hiermede vereisen de bovengenoemde twee gegevens een enkele overdracht en deze laatste 30 vereist twee overdrachten via PE1iM. Indien evenwel in de PEiiH via welke SMΛ.Λ wordt overgedragen, SiiH en S|.1iH vooraf worden vergeleken en het resultaat van deze vergelijking wordt overgedragen naar PEy, zodat een vergelijkingsberekening kan worden uitgevoerd met deze informatie en de informatie SM j, welke is overgedragen uit PEM, is het resultaat gelijk aan het uitvoeren van een vergelijkingsberekening van de drie gegevens overeenkomstig vergelijking (2) in PEy.
35 Deze handelingen maken het mogelijk een cumulatief eindresultaat S, N te verkrijgen bij het berekenen van de afstand D, , tussen de vectoren en het cumulatieve resultaat SM door een wijze van uitvoeren van de handelingen in stappen (i)—(iv) voor alle PE’s op de diagonalen, aangegeven door getrokken lijnen in figuur 1, als de inhoud van het verwerken in alle PE’s, of een werkwijze voor het uitvoeren van de twee typen handelingen in (i) en (iii) en in (ii) en (iv) als de inhoud van een parallelle verwerking door handelin-40 gen bij naast elkaar gelegen diagonalen.
In het geval van de laatstgenoemde uitvoeringsmethode verschilt het aantal effectieve dynamische stappen uit de twee parallelle processoreenheden, zodat het aantal uitvoeringsstappen moet worden ingesteld met NOP-instructie (geen bedrijfsinstructie). Een gedetailleerde toelichting hiervan wordt weggelaten.
45 Figuren 2A en 2B; 3A en 3B; 4A en 4B; en 5A en 5B tonen de handelingen in het orthogonale stelsel in het geval van deze laatste uitvoeringsmethode over een periode vanaf het tijdstip t tot het tijdstip t+3. Hier wordt de tijd gemeten in eenheden van tijd, welke voor elke PE nodig is om de gehele verwerking in stappen (i) en (iii), en (ii) en (iv) uit te voeren. Figuren 2A, 3A, 4A en 5A, en 2B, 3B, 4B en 5B tonen respectievelijk de omstandigheden onder welke de informatie, omsloten in de rechthoeken, tijdens de 50 bovenstaande eenheidstijden in elke PE wordt berekend.
Bij een dergelijk orthogonaal stelsel worden het lokalisme en de uniformiteit van de berekening gebruikt om een parallelverwerking mogelijk te maken. Wanneer echter bijvoorbeeld de bovenstaande dynamische tijdvervormingsvergelijking (2) een gecompliceerde berekeningsvergelijking is, zoals die, weergegeven in (4), moet de overdracht van de cumulatieve resultaten SMj.2, S,.^, van vergelijking (4) en het accepte-55 ren van de drie gegevens, welke de onderwerpen zijn van de vergelijkingsberekening, via twee PE’s worden uitgevoerd.
De betreffende methoden kunnen de vergelijkingsberekening in PEy uitvoeren nadat deze drie gegevens 192637 4 in PEjj zijn ingevoerd. Derhalve wordt de inhoud van de verwerking in elke PE, welke parallel moet worden uitgevoerd, gecompliceerd en bovendien is het niet mogelijk een parallelle verwerking uit te voeren waarbij de PE’s met een voldoende rendement worden benut.
/§i-8,j-1 + 2Qj_i, j\ 5 (4)
Voorts moet bij de hier beschouwde dynamische tijdvervormingsgberekening het aantal PE’s worden bepaald in overeenstemming met beide positieve getallen N en I, welke het aantal gegevens in twee typen vectorreeksen voor verwerking uitdrukken, zodat voor het uitvoeren van de dynamische tijdvervormings- 10 berekeningen van de eenvoudige vectorreeks Cu (Cu = {c,u, c2u......ciuu}; waarbij u = 1, 2...... 1J en een meervoudige vectorreeks Rv (Rv = {Γ,ν, r2*...... r^-}; waarbij v = 1,2,.....1r), de waarden Nmax = (1 <v<|r Nv) en Imax (1 <vs|c lu) moeten worden gekozen voor de positieve gehele aantallen N en I en is het aantal vereiste PE’s gelijk aan (Nmax x Imax).
Wanneer derhalve de verwerking van de vectorreeksen Cu en Rv wordt uitgevoerd, zal een aantal PE’s 15 aanwezig zijn, dat onnodig is voor het uitvoeren van bewerkingen bij de dynamische tijdvervormingsbereke-ningsverwerking ten aanzien van alle combinaties van vectorreeksen behalve de combinatie van Cmax en Rmax. Dientengevolge wordt geen doeltreffend gebruik van de onderdelen verkregen.
Bovendien vormt de hoofdzaak tot het bepalen van het aantal vereiste PE’s overeenkomstig het maximale aantal gegevens, dat moet worden verwerkt, een grote belemmering voor de reductie in de 20 stelselschaal onder gebruik van LSI-methoden. Het aantal PE’s, dat kan worden ondergebracht in een enkel LSI-plaatje, varieert overeenkomstig de functies van de PE’s. Wanneer bijvoorbeeld ongeveer vier PE’s op een enkel LSI-plaatje zijn gemonteerd en Nmax is 60 en Imax is 60, moeten 900 LSI-plaatjes in een orthogonaal netwerk worden ondergebracht en verbonden.
Om dit type conventionele stelselprocessor te regelen, voert elk processorelement (PE) een gelijktijdige 25 verwerking uit in overeenstemming met instructies, welke worden verstrekt door een gastheer-rekeninrichting.
Bij het bovenbeschreven stelsel zal wanneer de verwerking wordt uitgevoerd voor een bepaalde vectorreeks Rv welke voldoet aan de voorwaarde Nv < Nmax (v=1, 2,.....1r) zal uit elk verwerkingselement van PEj, Nv (een nummer wordt gegeven aan elke PE en de PE in het snijpunt van een kolom i en een rij j) 30 gelijktijdig een eindresultaat optreden. Aangezien elk van deze PE's zich evenwel op één bepaalde diagonaal bevindt, is de verwerking, welke wordt uitgevoerd overeenkomstig vergelijking (1) door de PE’s behoudens de zojuist genoemde PE, die zich op dezelfde diagonaal bevindt, dezelfde als die, welke door deze PE op dezelfde diagonaal wordt uitgevoerd en men kan geen onderscheid maken tussen de inhoud van verwerking bij deze PE’s op de diagonalen. Derhalve moet ook het eindresultaat voor deze vectorreeks 35 Rv uit elk verwerkingselement PEj Nmax worden uitgevoerd en moeten de PE’s van kolom (Nv + 1) tot kolom Nmax naar de functie van het overdragen van deze behandelingsresultaten in hun eigenlijke vorm vervullen. Dit type regeling is nodig voor elke vectorreeks Rv. Aangezien de verdeling van PE’s, welke de verwerkings-resultaten, in hun eigen vorm naar elke vectorreeks overdragen, varieert, moet een geschikte regeling plaatsvinden wanneer de gastheer-rekeninrichting de verwerkingsomstandigheden van elke PE regelt. Bij 40 deze methode worden alle (I x Nmax) PE’s geregeld en wordt de uitwisseling van regelsignalen tussen elke PE en de gastheer-rekeninrichting en de invoer van instructies naar elke PE bijzonder gecompliceerd.
Figuur 6 toont een verbeterde uitvoeringsvorm van een stelselprocessor voor de bovengenoemde vergelijkingen (1), (2) en (3) als een voorbeeld van een aanpassingsberekening, gebaseerd op dynamische tijdvervorming, worden uitgevoerd voor twee typen vectorreeksen Cu en Rv (u=1, 2......1C, v=1, 2...... 1r).
45 in figuur 6 is aangenomen dat het aantal PE’s gelijk is aan n. Met 1 is de enkele PE aangegeven, welke een rekenkundige eenheid bevat voor het uitvoeren van optellen en aftrekken, vergelijkingsberekeningen en vermenigvuldigings- en optelberekeningen teneinde de dynamische tijdvervormingsberekenings-vergelijkingen (1), (2), en (3) uitvoeren en welke ook is voorzien van registers voor het uitwisselen van informatie met naast gelegen PE’s en voor het uitwisselen van informatie met uitwendige bronnen, en een 50 geheugen voor het opzamelen van berekeningsresultaten en overgedragen informatie. Deze PE’s 1 zijn opgesteld in de vorm van een ring.
Met 2-1 tot 2-n zijn multiplexinrichtingen aangegeven, welke worden bestuurd door een hierna te beschrijven regeleenheid 10 voor het kiezen van één van twee situaties. Dat wil zeggen, in één situatie worden n (het aantal PE’s) ingangsvectorgegevens vanuit uitwendige bronnen Cju (i=1, 2......Iu) op een 55 bepaald moment in het stelsel ingevoerd, en in een andere situatie wordt de ingangsvectorinformatie c" (i=1,2......Iu) circulair uit een naast gelegen PE overgedragen. Wanneer bij voorbeeld n ingangsvector- 5 192637 informatiereeksen ο“,ο2υ...... cnu in elke PE in het stelsel vanuit PE, worden ingevoerd, kiest slechts de multiplexinrichting 2-1 een ingangsvectorinformatielijn 3 uit een (niet afgebeelde) uitwendige bron, en deze wordt als een ingangspoort voor de ingangsvectorinformatiereeks c", c2u,.....cnu uit de uitwendige bron gebruikt. Uitgaande van PE! als een oorsprongspunt, wordt elk van de n ingangsvectorgegevens c/, c2u, 5 ..... cnu aan elk PE toegewezen door de ingangsvectorgegevens c" achtereenvolgens naar de naast gelegen PE’s over te dragen. In alle gevallen kiezen alle multiplexinrichtingen 2-1 tot 2-n een informatieoverdrachtsbaan 5 tussen PE’s, welke ingangsvectorinformatiereeksen c^, c2u...... cnu circulair tussen PE’s overdraagt. Elke PE is zodanig opgesteld, dat elk verwerkingsresultaat maal gelijktijdig naar de naast gelegen PE wordt overgedragen parallel met een gebruikelijke parallelverwerking in alle PE’s 10 op elk moment, dat de bovenbeschreven n ingangsvectorinformatiepatronen op een hierna te beschrijven wijze worden uitgewisseld. Hierbij drukt de rest uit wanneer N wordt gedeeld door n.
Met 4 l/O-lijn aangegeven voor het achtereenvolgens invoeren van vectorgegevens van andere ingangsvectorinformatiereeksen rv = {r/, r2v......rNyv } (k=1, 2,.....1r) in elke PE, naast het uitvoeren van eindresultaten van berekeningen S^, N,. S,2...... Sl(j, Nv,.....Slie, Nv Met 5 is een informatieoverdrachts- 15 baan aangegeven voor het uitvoeren van een circulaire overdracht van ingangsvectorinformatie c" tussen PE’s en voor het uitvoeren van een overdracht van een cumulatief berekeningsresultaat S^. Met 6 is l/O-klem van elke PE aangegeven, welke met een l/O-lijn is verbonden. Voorts geven 7, 8 en 9 ingangsvectorgegevens ο" en r* (i=1, 2,..... Iu; j=1, 2......Nv; u=1, 2,.....1c; v=1, 2......1f) en eindberekenings- resultaten S^N,, S,t, N2...... S,u> Nv,..... S,ic. N1( aan. Met 10 is een regeleenheid aangegeven voor het 20 uitvoeren van regelhandelingen voor het totale stelsel, inclusief het bepalen van het tijdstip van het uitwisselen van de bovengenoemde ingangsvectorinformatie en het tellen van het aantal overdrachten van de verwerkingsresultaten.
Figuur 7 toont een uitvoeringsvorm van een constructie van elke PE. Het door een streep-stippellijn 1 omgeven gedeelte geeft een enkele PE 1 aan. Met 4 is een uitwendige l/O-lijn voor ingangsvectorinformatie 25 η» (J=1, 2......Nv) voor elke PE en voor het uitvoeren van eindberekeningsresultaten S,u. Nv aangegeven. 12 is een l/O-klem voor het ontvangen/overdragen van informatie uit/naar een uitwendige l/O-lijn 4. Met 13 is een klem voor informatieoverdracht vanuit een links naast gelegen PE aangegeven, terwijl 14 een klem is voor informatieoverdracht naar een rechts gelegen PE.
15 is een bufferregister voor het opslaan van een ingangssignaal van een vectorinformatie rj uit de 30 uitwendige l/O-lijn 4.16 is een bufferregister voor het opslaan en uitvoeren van eindberekeningsresultaten S|u, Nv naar de uitwendige l/O-lijn 4. Met 17 is een register aangegeven voor het opslaan van een ingangssignaal van de vectorinformatie ciu (i=1, 2, ..... Iu) vanuit een naast gelegen PE en een ingangsgegeven, dat nodig is bij het berekenen van een cumulatieve berekening Sy, welke wordt uitgevoerd in de hierna te beschrijven verwerkingshandelingen (b) en (c). Met 18 is een register aangegeven voor het 35 overdragen van een vectorgegeven ciu (i=1, 2,.....Iu) naar een naast gelegen PE en het uitvoeren van de overdracht van informatie, welke nodig is voor het berekenen van de cumulatieve berekening S^. Met 19 is een inwendige lijn aangegeven.
Met 20 en 21 zijn respectievelijk buffergeheugens aangegeven, welke alle componenten r*'1, ckui (K=1, 2, ..... m) van de vectorinformatie rf en c", welke in de respectieve PE’s moeten worden ingevoerd, 40 opzamelen. Met 22-1 is een optel- en aftrekeenheid aangegeven, welke optel- en aftrekfunctie vervult, terwijl met 22-2 een accumulator is aangegeven om het resultaat uit de optel- en aftrekeenheid 22-1 te accumuleren. Met 22-3 is een product-someenheid aangegeven, welke product-somberekeningsfuncties vervult. Een rekenkundige eenheid 22, gevormd door eenheid 22-1 en 22-3 en de accumulator 22-2 voert de door de vergelijkingen (1) en (2) uitgedrukte berekeningen uit. De optel- en aftrekeenheid 22-1 kan bestaan uit een 45 54F385 of 74F385, de product-someenheid 22-3 uit een ADSP-1010. Met 23 is een bedrijfsgeheugen aangegeven voor het opzamelen van informatie, welke nodig is voor het uitvoeren van de vergelijkingen (2) en (3). Dit bedrijfsgeheugen 23 bezit twee gebieden 23-1 en 23-2 overeenkomstig de status van de opgeslagen informatie. Dat wil zeggen, dat het gebied 23-1 de informatie opslaat welke nodig is voor het uitvoeren van de verwerkingshandelingen (a), (b) en (c) gedurende een circulaire overdracht van ingangs-50 vectorinformatie c", welke later zal worden beschreven, terwijl het gebied 23-2 de informatie opslaat, welke nodig is voor het uitvoeren van de verwerkingshandelingen (b) en (c) direct naar het uitwisselen van n vectorreeksen van de vectorreeksen c1( c2......cv
Met 24 is een PE-regeleenheid aangegeven, welke een regeling overeenkomstig een inwendig micro-programma of instructies uit een uitwendige bron uitoefent. De PE regeleenheid 24 omvat een logische 55 regelketen 24-1, een programmageheugen 24-2 voor het opslaan van het inwendige microprogramma, een programmateller 24-3 voor het regelen van het geheugen 24-2, een instructieregister 24-4 voor het opslaan van informatie, die uit het geheugen 24-2 is uitgelezen, en een instructiedecodeerinrichting 24-5 voor het 192637 6 decoderen van de in het instructieregister 24-4 opgeslagen informatie. De logische regelketen 24-1 ontvangt regelsignalen uit de regeleenheid 10, weergegeven in figuur 6, via een ingangsklem 25 om de gedeelten 24-2 tot 24-5 te regelen.
Met 26 en 27 zijn adreslijnen naar het bedrijfsgeheugen 23 aangegeven. De adreslijn 26 ontvangt het 5 uitgangssignaal uit een teller 28, welke toegang heeft tot het gebied 23-2, waarin tussen berekenings-resultaten zijn opgeslagen. De adreslijn 27 komt bij voorbeeld overeen met een direct adres uit het microprogramma, dat uit het instructieregister 24-4 wordt geleverd, en heeft toegang tot het opzamelgebied 23-1 voor het opslaan van informatie, welke nodig is voor de individuele verwerking bij de bovenbeschreven verwerkingshandelingen (b) en (c).
10 Met 29, 30, 31 en 32 zijn kiezers aangegeven, welke door de PE-regeleenheid 24 wordt geregeld.
Zoals boven is toegelicht, wordt het in de rekenkundige eenheid 22 verschafte berekeningsresultaat in het bedrijfsgeheugen 23 opgeslagen. De registers 17 en 18 dienen voor het overdragen van informatie tussen naast elkaar gelegen PE’s, op een zodanige wijze, dat wanneer het bovengenoemde berekeningsresultaat in het register 18 vanuit het bedrijfsgeheugen 23 wordt opgeslagen en daarna het resultaat vanuit 15 dit register 18 naar het register 17 van de naast gelegen PE wordt overgedragen, de volgende berekening in de rekenkundige eenheid 22 wordt uitgevoerd. Derhalve is het parallel aan de regelmatige behandelingseenheid voor het overdragen van ingangsvectorinformatie c,, welke wordt bepaald door de alinea’s (a), (b) en (c), welke later zullen worden beschreven, voor het bereken van Dy en en voor het overdragen van het resultaat van de berekening, mogelijk de verwerkingsresultaten mtSiN maal gelijktijdig op een later te 20 beschrijven wijze over te dragen naar de naast gelegen PE’s, onder gebruik van het interval gedurende hetwelk elke PE de bovenbeschreven berekeningen uitvoert, zonder dat de normale verwerkingsstroom in zijn geheel wordt gestoord, wanneer van ingangsvectorinformatiepatroon wordt gewisseld.
De tabel toont een uitvoeringsvorm van een programmageheugen.
7 192637
CM CM CM
« 9 9 9 ςι ~d? -g ~(f iz "HI iHl εΗΐ
— CM CM
05 1 I
C CM CM N w ' < Cvj CNJ - Q) CM CM —) ) 1 33 , ? t < t I t f 2 t 2 -° ΐί: . . 2 ® 2 φ 'Λ -P _£ z s z
tr ^ ^ i g- I
i— r- r— r* r- i—
CM CM CM CM CM CM
CM CM CM CM CM CM
333 3 3 3 t t t --- t t t o o o o o o
CM CM CM CM CM CM
2 2 2 2 2 2 to N
r: y— cc h- oooo oo tf
CM CM CM CM CM CM
2222 2 2 I
r t t t -- t t I £ io in in io ir> in ^ ^ C- E £ £ £ ES o S ή "Uw —I IE DC 2
LU
£9 in in m in in in ttt
Η DC DC DC DC DC DC
t t t t t -- t g
CM CM CM CM CM CM CM $2 ÏU
h- P i— i- i— P 2 I- DC
x:
cd 'T 'T 'T T V V
J= CM CM CM CM CM CM w
^ CM CM CM CM CM CM t- ,-,-,-,-,-,-CM·^- O
S 33 3 cocon-cmcmcmcmcvicmcoco to * * * * t * CMt-t-CMCMCMWCMWWN 3
. TTT TT T. 5CCDC33333322 E
•t *********** 3
C y- y- y- y- y- τ- ΤττΤΤΤΤτΤΤΐ O
- DC DC DC DC DC DC ^ ϋ Ϊ V cm v 7 11 τ— Ί— r· ^— y~ y— ' * CO m S Co CO CO ^ CM CM CM CM CM CM CIVICS! U- £J £! -a 2 2 2 2 2 2 HDC22<2<<< ξ t t t --- tit c N- p- h« p* r» §) E E E E E E ii 3 k_ Η N Η f- 1^· N -¾ E E E E E E ’§> t t t t -- t t * CO CO CO CO CO CO 11 τ- ^ ι— τ— τ- τ- ΓΓ hHl·!- hl· “·
E
® 00 00 CO CO 00 00 "tf
Τ— ^ *T“ Τ"· T” T- II
DC DC DC DC DC DC |_ t t t t t -- t c
11111 1 ΘΘΘ®©<§>€)<§>©©©©© I
0} O) --~-- --CM-' 11 ^ ^ 2 192637 8
De delen (1) en (2) geven de inhoud van de programma’s voor vectorafstandsberekeningen respectievelijk cumulatieve afstandsberekeningen aan. Het deel (1) toont de wijze waarop de vectorafstandsberekeningen parallel worden uitgevoerd, terwijl de respectieve componenten q en η gelijktijdig worden ingevoerd. Er zal een toelichting worden gegeven op de programma-inhoud van de cumulatieve afstands-5 berekeningen bij deel (2). De instructies in de eerste en vierde velden van deel (2) komen overeen met cumulatieve afstandsberekeningen voor elk roosterpunt. Het tweede veld komt overeen met de her-toewijzingsverwerking van de cumulatieve resultaten. Het derde veld komt overeen met de verwerking voor | het uitvoeren van het cumulatieve eindresultaat naar een uitwendige bestemming.
Er zal een gedetailleerd toelichting worden gegeven door de volgorde van instructies in de eerste en 10 vierde velden voor de verwerkingshandelingen (a), (b) en (c) te vergelijken, (ΐ) betekend het invoeren van Dy, terwijl (2) en (3) overeenkomen met de overdracht van het vergelijkingsberekeningsresultaat van min (Sw j- Sm. j) en het ingangssignaal van min (SMi Η, Η). @ - © stellen de uitvoeringsvolgorde van de vergelijkingsberekening van min {SMi jt min (SMi H, S, M)} voor. © - ©stellen de volgorde voor het optellen van Dy bij dit vergelijkingsresultaat voor het verkrijgen van een Sy voor. © - (Q) komen overeen 15 met het invoeren van Sy op hetzelfde moment, dat het vergelijkingsresultaat van min (SM j, Sy) wordt verkregen om te worden overgedragen naar de naast gelegen PE.
De logische regelketen 24-1 in de PE-regeleenheid 24 is zodanig uitgevoerd, dat een regelstroom plaatsvindt, als aangegeven in figuur 17. In figuur 17 stellen q2, q3 de namen van regelsignalen voor, die naar de respectieve PE’s worden gezonden vanuit een inwendige regeleendheid, zoals een gastheerreken-20 inrichting, en stellen respectievelijk de ingangsstatus van de vectorinformatie rjt de uitvoeringsstatus van de hertoewijzingsverwerking en de uitgangsstatus van het uiteindelijke berekeningsresultaat voor. Wanneer elke PE een programmastartregelsignaal ontvangt, voert de logische regelketen 24-1 de regeling van het invoeren van het initiële adres van het programmageheugen 24-1 in de programmateller 24-3 uit. Daarna ontvangt de logische regelketen 24-1 de regelsignalen q1, q2 en q3 voor elke status om deze regelsignalen 25 te controleren voordat de statusvlaggen f5 6, f2 en f3 worden ingesteld. Hier activeren deze vlaggen f5>6, f2 en f3 en vlaggen, welke vijfde en zesde activeren, respectievelijk het tweede veld en het derde veld van de programmareeksen (1) en (2). Wanneer deze vlaggen worden ingesteld, wordt de programmateller 24-3 gestart en worden de programma’s (1) en (2) uitgevoerd. Tijdens het uitvoeren van deze programma’s worden de vlaggen f56, f2 en f3 gecontroleerd en zend de logische regelketen 24-1 naar het instructie-30 register 24-4 een regelsignaal voor het maskeren van eventuele velden, welke niet moeten worden uitgevoerd. Vervolgens bepaald de logische regelketen 24-1 het eind van het programma en zend een regelsignaal naar de uitwendige regeleenheid om de uitwendige regeleenheid te informeren omtrent het eind van de behandelingseenheid.
De logische regeleenheid 24-1 herhaald deze reeks regelhandelingen op elk verwerkingstijdstip.
Vervolgens zal de wijze van het uitvoeren van de dynamische tijdvervormingsberekeningen, aangegeven in de bovengenoemde berekeningsvergelijkingen (1), (2) en (3) met behulp van de in figuur 7 afgebeelde inrichting worden toegelicht. De aanpassingsberekening overeenkomstig de dynamische tijdvervormings-berekening komt overeen met de berekening van de vergelijkingen (1) en (2) voor roosterpunten in twee dimensionale roostervlakken, verkregen door twee typen vectorinformatiereeksen Cj respectievelijk Rv.
Figuur 8 toont een reeks uitvoeringen van dynamische tijdvervormingsberekeningsvergelijkingen (1) en (2) voor de twee typen vectorinformatiereeksen bij deze inrichting, dat wil zeggen de 1c-vectorinformatie- reeks Cu={CjU, c2u,.....cj} (U=1, 2......1J en de 1r-vectorinformatiereeks RV={|·/. r2v,.....rNvu} (v=1,2,.....
1r). De sequentiële uitvoeringen zijn uitgedrukt in de algemene grafische illustratie van dynamische 45 tijdvervorming. In figuur 8 drukken onderbroken diagonalen en ononderbroken diagonalen in het rooster een moment uit in termen van een PE, welke als een tijdeenheid werkt, en geeft een pijl A de richting van het verstrijken van de tijd bij de momenten t.,, t2 ta .... aan. Met andere woorden betekenen roosterpunten op een zelfde onderbroken of ononderbroken lijn, dat informatie gelijktijdig in de verschillende PE’s op de lijn wordt verwerkt. Aangezien er n PE’s zijn, worden de n roosterpunten op de diagonaal steeds tijdens het 50 uitvoeren van de verwerking op hetzelfde moment verwerkt. De verwerking op elk verwerkingstijdstip beweegt zich naar boven met het verstrijken van de tijd in een gebied, aangegeven door X, en beweegt zich dan continue naar het onderste gedeelte van een gebied X2. Tenslotte beweegt de verwerking zich naar het bovenste gedeelte van het gebied X2. Derhalve toont figuur 8 een sequentiële verwerking op de wijze van de algemene grafische uitdrukken van dynamische tijdvervorming. Met I en II zijn groepen onderbroken lijnen aangegeven, welke later zullen worden toegelicht.
Bij het in figuur 8 afgebeelde voorbeeld bestaan slechts n PE’s fysisch. Dat wil zeggen, dat in figuur 8 slechts de n PE’s PE1 - PEn aanwezig zijn (welke in de tekening door de omcirkelde getallen 1 - n zijn 9 192637 aangegeven), die in een schuine richting bij dezelfde tijdpositie zijn gelegen.
Figuur 9 toont de wijze van informatie invoerhandelingen bij een dergelijke inrichting. In figuur 9 is aangenomen, dat n = 6. Met 41 is een PE aangegeven en met 42 een informatieoverdrachtsbaan om vectorinformatie Cj (i=1, 2......I) en het cumulatieve resultaat Sg naar een naast gelegen PE over te dragen.
5 Met 43 is een stroom van vectorinformatie c, (i=1, 2......I) op een informatieoverdrachtsbaan op elk behandelingstijdstip aangegeven. Met 44 is vectorinformatie r; (r=1, 2...... N) op de l/O-lijn aangegeven, welke op elk verwerkingstijdstip in elke PE moet worden ingevoerd. De verwerkingstijd beweegt zich langs een tijdkolom 45 voort, welke het verstrijken van de tijd aangeeft. De ingangsvectorinformatiereeksen c,, c2, ..... c6 voor de zes PE’s worden respectievelijk uit PE, ingevoerd. Wanneer de verwerking van elk vector-*0 gegeven bij elke PE is voltooid, wordt deze vectorinformatie achtereenvolgens naar een rechts naast gelegen PE overgedragen. Gedurende de periode tot de eerste ingangsvectorinformatie c, naar de PE, terugkeert, incrementeerd de informatieoverdrachtsbaan, welke de ingangsvectorinformatie C| (i=1,2......6) voert, steeds met één bij het voortschrijden van de verwerkingstijd. Na een moment waarop de ingangsvectorinformatie c, vanuit PE6 naar PE, is overgedragen, worden de ingangsvectorgegevens C| - c6, die in ^ elke PE aanwezig zijn, gelijktijdig op elk verwerkingstijdstip naar een naast gelegen PE overgedragen.
Anderzijds wordt ingangsvectorinformatie η (j=1, 2.....N) achtereenvolgens ingevoerd in elke PE, in synchronisatie met de overdrachtshandelingen voor de ingangsvectorinformatie Cj (i=1, 2,..... 6) tussen elke PE. Vervolgens wordt de berekening van de vergelijkingen (1), (2) en (3) uitgevoerd voor alle roosterpunten, terwijl informatie regelmatig tussen PE’s wordt uitgewisseld.
20 De stippellijnen in groep I in figuur 8 geven aan, dat slechts de multiplexinrichting 2-1 is ingesteld voor het kiezen van een ingangsvectorinformatielijn uit een uitwendige bron dat een aantal ingangsvectorinformatiereeksen cl, cj......cA equivalent aan het aantal PE’s sequentieel is ingevoerd, en dat PE2-PEn een vectorinformatie cj (x=1, 2......n-1) gelijktijdig met de naast gelegen PE’s uitwisselen op elk tijdstip, dat de verwerking in elke PE is voltooid. De getrokken lijnen in groep I, die zich vanuit de stippellijnen in deze 25 groep i voortzetten, geven aan, dat nadat de informatie cl in de PEn is ingevoerd, alle multiplexinrichtingen 2-1 tot 2-n als informatieoverdrachtsbanen tussen PE’s worden gekozen en dat berekeningsvergelijkingen
(1), (2) en (3) worden uitgevoerd, terwijl ingangsvectorinformatie cl, cl,.....cA circulair vanuit PE naar PE
wordt overgedragen. Voorts geven de stippellijnen in de volgende groep II het proces van een voortgezette berekening aan, dat wordt uitgevoerd wanneer de ingangsvectorinformatie cl, cl,..... cA wordt vervangen door de volgende n vectorinformatiereeksen cnli.....c?i......c}1.
Ofschoon twee typen vectorinformatie c" en r* gedurende elk verwerkingstijdstip in elke PE worden ingevoerd, zodat de berekeningsvergelijking (1) onafhankelijk van en parallel aan elke PE wordt uitgevoerd, wordt de berekeningsvergelijking (2) uitgevoerd wanneer informatie met de naast gelegen PE’s wordt uitgewisseld.
Zo is in figuur 10 het aantal PE’s, gelijk aan n=5. Figuur 10 toont de verwerkingsprocedure in elke PE en de verdeling van de roosterpunten, onder controle van elke PE, wanneer een continue verwerking wordt uitgevoerd voor alle combinaties van vectorinformatiereeksen C, en C2 en vectorinformatiereeksen R, en R2. In figuur 10 worden de groepen roosterpunten, die in een langwerpige cirkel zijn opgesloten, door 4Q dezelfde PE verwerkt en het nummer bij de linker bovenhoek van deze cirkel geeft het PE-nummer aan.
In het geval van het verkrijgen van bij voorbeeld S78 in figuur 10 is de informatie, welke nodig is voor het berekenen van S7 8 op het tijdstip t, S6 7, S7 7 en S68, verkregen door PE4 en PE5. Aangezien de tijdstippen tg en t3 in het verleden liggen ten opzichte van het tijdstip t, is de informatie S68 in PE5 aanwezig, welke S7 8 berekend, en is de informatie S6 7 en S7 7 aanwezig in PE4. Met andere woorden is de vereiste 45 informatie steeds aanwezig in de naast gelegen PE, zodat in het geval van het uitvoeren van een vergelijkingsberekening van vergelijking (2) voor S78, min (Se7, S7>7) wordt uitgevoerd in PE4 en het resultaat wordt overgedragen naar PE5, waar min {S6j8, min (S67, S7 7)} wordt uitgevoerd.
In dit geval moet, zoals boven is toegelicht, op dat de ingangsvectorinformatiereeksen C„ C2...... C,e worden gesplitst in een aantal groepen, equivalent aan het aantal PE’s (n) en in het stelsel worden 50 uitgevoerd voor verwerking, Sy, welke overeenkomt met de roosterpunten, gemarkeerd door een schuine lijn als aangegeven in figuur 10, worden overgedragen naar een vooraf bepaalde PE voordat de substitutie van de ingangsvectorinformatie begint. Zo is het nodig, dat de S51, welke aanwezig is in PEV naar PE3 wordt overgedragen, Ss 2 in PE2 naar PE4, S53 in PE3 naar PE5, S54 in PE4 naar PE1 respectievelijk S5 5 in PE5 naar PE2. , 55 In het algemeen beginnen vanaf het tijdstip, dat met de tijd overeenkomende v 2¾ Nv) overeenkomt tot het tijdstip waarop het vervangen van n vectorinformatiereeksen begint, dat wil zeggen bij het in figuur 10 afgebeelde voorbeeld vanaf het tijdstip voorafgaande aan het tijdstip, overeenkomende 192637 10 met ’"‘S117 tijdeenheden, alle PE’s handelingen voor het gelijktijdig naar de respectieve naast gelegen PE’s overdragend van de cumulatieve resultaten Spn>j (p=1, 2.....), die steeds in de respectieve PE zijn opgesla gen. De overdracht van deze informatie geschiedt één voor één voor elke verwerking van de PE’s onder gebruik van de periode gedurende welke de PE’s slechts de berekeningsverwerking, als boven beschreven, 5 parallel met de normale verwerkingshandelingen volgens de alinea’s (a), (b) en (c) welke later zullen worden beschreven, uitvoeren, zodat het mogelijk is de vereiste informatie Spn j naar een vooraf bepaalde PE over te dragen en wel onmiddellijk vóór de substitutie van n ingangsvectorinformatiereeksen.
Bij het in figuur 10 afgebeelde voorbeeld worden parallel met de verwerking van de roosterpunten (cj, r§) in de PE,, de informatie S51, S52, S5>3, S54, S55, welke aanwezig is in dezelfde adressen in de 10 bedrijfsgeheugens 23-2 voor PE.,, PE2, PE3, PE4 en PE5 overgedragen naar de naast gelegen PE’s en toegewezen aan PE2, PE3, PE4, PE5, PE,. Op een soortgelijke wijze wordt bij de verwerking van het roosterpunt (cj, r§) van PE, de informatie toegewezen aan PE3, PE4, PE5, PE,, PE2 en vervolgens is de informatieoverdracht voltooid.
Bij de verwerking onmiddellijk na de substitutie met de volgende ingangsvectorinformatiereeksen cl, d, 15 cj, c? welke plaatsvindt op het verwerkingstijdstip voor het volgens roosterpunt (cj, r|) van PE,, worden de verwerkingshandelingen (a), (b) en (c) uitgevoerd door PE3, PE4, PE5, PE, en PE2 onder gebruik van de informatie S5,, S5 2, S53, S5 4 en S5 5, welke door de bovengenoemde twee overdrachten wordt verkregen. Door een herhaald uitvoeren van deze wijze van verwerking, kan elke PE de dynamische tijdsvervormings-berekeningsvergelijkingen (1), (2) en (3) regelmatig en sequentieel uitvoeren.
20 Zoals zojuist is beschreven voert terwijl de invoer of substitutie en circulaire overdracht van n vector- informatiereeksen van de ingangsvectorinformatiereeksen Cu (u=1, 2,.....1J en vectorinformatie rj (j=1, 2, ..... Nv) in elke PE wordt ingevoerd in synchronisme met de invoer en circulaire overdracht van bovengenoemde vectorinformatie Cju (1=1, 2......IJ steeds wisselt, elke PE een aantal malen de berekenings- vergelijkingen (1), (2) en (3) voor elk roosterpunt uit, zodat de verwerking voor alle roosterpunten wordt 25 voltooid.
Het bovenstaande resumerende zijn de normale verwerkingshandelingen (de gebruikelijke verwerking) voor een PE, bij het uitvoeren van de vergelijkingen (1) en (2) de volgende: (a) Op hetzelfde moment dat de vectorinformatie C| (i=1, 2, ...,l) vanuit een links naast gelegen PE of vanuit een uitwendige bron via een ingangsvectorinformatielijn wordt ingevoerd, wordt de vectorinformatie cM in de rechts naast gelegen PE overgedragen, wordt de vectorinformatie rf (j=1, 2......N) vanuit de l/O-lijn synchroon met de overdracht van de vectorinformatie ingevoerd, zodat de bovenstaande berekenings-vergelijking (1) wordt uitgevoerd voor het verkrijgen van Dv.
(b) Vergelijkingsberekening van min {SM j, min (SMH, Sj H)} wordt uitgevoerd en DSj wordt bij dit resultaat opgeteld voor het verkrijgen van S^.
(c) De vergelijkingsberekening van min (S,., SJ wordt uitgevoerd en het resultaat wordt overgedragen naar de naast gelegen PE. Tegelijkertijd wordt het resultaat van de vergelijkingsberekening (S, Η, S^,,.,) vanuit de links naast gelegen PE ingevoerd.
De handelingen in (a) komen overeen met het uitvoeren van de berekeningsvergelijking (1) en die in de 40 alinea’s (b) en (c) komen overeen met het uitvoeren van de berekeningsvergelijkingen (2) en (3). Elke PE voert de verwerkingshandelingen gelijktijdig in de reeks van (a), (b) en (c) uit. Met andere woorden voeren wanneer (a) wordt uitgevoerd alle PE’s (a) uit. Wanneer (b) wordt uitgevoerd, voeren alle PE’s (b) uit.
Het fundamentele verschil tussen deze werkingen en de werkingen van een orthogonaal stelsel zijn gelegen in de informatieoverdrachthandeling bij het uitvoeren van vergelijking (2). Bij de werking van een 45 orthogonaal stelsel vindt de vergelijkingsberekening van min (Sj Η, SH> H) plaats nadat het cumulatieve resultaat SMi Η naar de links naast gelegen PE is overgedragen, terwijl bij deze werkingen SM en S: H, welke op het volgende verwerkingstijdstip moeten worden verkregen, aanwezig zijn in dezelfde PE, zodat de vergelijkingsberekening kan worden uitgevoerd zelfs onder dat informatie wordt overgedragen.
Wanneer vergelijking (4) wordt uitgevoerd, kunnen de cumulatieve resultaten normaliter op dezelfde wijze 50 als boven is beschreven worden verkregen door het uitvoeren van twee typen eenvoudige handelingen. Namelijk een eenvoudige werking van (d) het invoeren van het cumulatief resultaat vanuit de naast gelegen PE, het bij deze informatie optellen van het dubbele van de waarde van de intervectorafstand, welke in die PE wordt uitgevoerd, en het uitvoeren van dit opgetelde resultaat naar de naast gelegen PE, en een werking van (e) het invoeren van het cumulatieve resultaat uit de naast gelegen PE, het optellen van de 55 intervectorafstand bij deze informatie en het opslaan van het resultaat. Zoals boven is toegelicht, maakt deze uitvoering het aantal PE’s volledig onafhankelijk van de positieve getallen lu en Nv, welke aantal vectorgegevens uitdrukken, dat moet worden verwerkt, en maakt het mogelijk, dat het aantal PE’s op een 11 192637 geschikte wijze wordt ingesteld overeenkomstig het geschatte volume van de informatieverwerking, en maakt het mogelijk een dynamische tijdvervormingsberekening uit te voeren via ’’pipelineparallel verwerking”, waarbij een maximaal doeltreffend gebruik wordt gemaakt van de onderdelen doordat de PE’s, welke de normale verwerkingshandeling een aantal malen uitvoeren, volledig in bedrijf zijn.
5 Wanneer derhalve LSI-methoden worden gebruikt voor het realiseren van een stelselprocessor, kan de stelselschaal bijzonder klein worden gemaakt vergeleken met het conventionele orthogonale stelsel, waarin het aantal PE’s wordt bepaald in overeenstemming met de positieve gehele getallen lu en Nv, terwijl bovendien de onderdelen op een effectieve wijze kunnen worden gebruikt. Voorts is het mogelijk het aantal PE’s te vergroten. Dat wil zeggen, dat de verwerking van vectorinformatiereeksen met willekeurig gewenste 10 aantal Nv en lu kunnen worden verwerkt, onafhankelijk van het aantal PE’s.
Nu zullen de rendementen van het orthogonale stelsel en de stelselprocessor voor de bit per PE en per eenheid van tijd worden vergeleken waarbij rekening wordt gehouden met een gemiddeld gebruik van de PE’s.
Van de twee typen verwerkingsinhouden in het orthogonale stelsel bestaande uit de bovenbeschreven 15 verwerkingshandelingen (i) en (iii), en (ii) en (iv) wordt aangenomen, dat het aantal stappen, dat van deze twee typen het grootst is, Usquare is, en voorts wordt aangenomen, dat het aantal dynamische stappen bij de verwerking van elke PE in het stelsel bestaande uit de verwerkingshandelingen (a), (b) en (c) gelijk is aan Uring. Bij het orthogonale stelsel zijn voor het voltooien van de aanpassingsberekening, gebaseerd op de dynamische tijdvervorming voor een paar vectorgegevens onder gebruik van de werkwijze met het afwisselend uitvoeren van de twee verwerkingseenheden (i) en (iii), en (ii) en (iv), 2Uspuare stappen nodig.
Bij de aanpassingsberekening, gebaseerd op de betreffende dynamische tijdvervorming, behoeft indien PEjj het uitvoeren van de berekeningsvergelijkingen (1), (2) en (3) voor een enkele vectorinformatiereeks R voltooit voor het verkrijgen van het cumulatieve resultaat Sy, PEy niet de verwerking voor deze vectorinformatiereeks R uit te voeren wanneer PEiT (i’>1, j’>j) de bovengenoemde berekeningsvergelijkingen 25 uitvoert. Derhalve kan tijdens het uitvoeren van een verwerking voor een vectorinformatiereeks Rv, een PE, welke niet tot die verwerking bijdraagt, worden toegewezen aan de verwerking van een andere vectorinformatiereeks Rv·. Met andere woorden kan wanneer het cumulatieve resultaat Sy wordt berekend voor een eerste vectorinformatiereeks R., de berekening van het cumulatieve resultaat ook worden uitgevoerd voor een tweede vectorinformatiereeks R2 via het faseverschil van 2Ust,uare stappen. Totdat het uiteindelijke 30 berekeningsresultaat S|uiNv voor de vectorinformatiereeks lu en voor de vectorinformatiereeks Rv is verkregen, is het aantal stappen (Nmax + Imax), gebaseerd op een eenheid van het aantal dynamische stappen 2Uequare, dat nodig is voor het verkrijgen van Sy vereist, zodat (Nmax + Imax) typen uiteindelijke cumulatieve resultaten S,u, Nv in de periode van (Nmax + Imax) stappen kunnen worden verkregen.
Anderzijds wordt de verwerking herhaald, hetgeen de aanpassingsverwerking is tussen de ingangsvector- informatiereeks R,, R2......R1t en elke n vectorinformatiereeks van de ingangsvectorinformatiereeksen Cn, C2, ..... C1, zodat het uiteindelijke cumulatieve resultaat S,u Nv wordt verkregen.
Op basis van de bovenbeschreven verwerkinghandelingen van het totale stelsel zal het rendement van de PE’s, bij het uitvoeren van een verwerking voor alle combinaties van de vectorinformatiereeksen C,. C2, 40 ..... C1e en de vectorinformatiereeksen R,, R2...... Rv als volgt zijn:
In het geval van het orthogonale stelsel:
Voor het verkrijgen van de eindresultaten van 1r.10 zijn (Nmax + Imax + 1 r-1 c) stappen met een eenheid van 2υ,„ϋβΓβ nodig. Aangezien het aantal PE’s gelijk is aan Nmax.lmax, wordt het rendement van PE gegeven door de volgende vergelijking: ~ _VU_ _ (Nmax + Imax + 1,.1^.21^,^ w
Nmax.lmax
In het geval van de verbeterde stelselprocessor:
Gebaseerd op Uring als eenheid van verwerkingsstap is het aantal verwerkingsstappen tijdens de werking 50 voor de substitutie van n ingangsvectorinformatiereeksen n stappen en is het aantal verwerkingsstappen,
Ir dat moet worden uitgevoerd wanneer de ingangsvectorinformatie circulair wordt overgedragen (Σ Ny-n) V=1' stappen. Het uitvoeren van de verwerking van de ingangsvectorinformatiereeksen C,, C2...... C1c geschiedt op een wijze equivalent aan de verwerking van een enkele ingangsvectorinformatiereeks, zodat het aantal 55 stappen, dat nodig is voor het verkrijgen van de uiteindelijke resultaten van 1r.1c wordt gegeven door de volgende vergelijking: 192637 12 ,, Astu-Γι) ^ ((ΣΙ,,-Γ,) \
— + 1 / + n V-^IT—1 / +2n W
De eerste term van vergelijking (6) stelt het aantal stappen tijdens de circulaire overdracht voor. De 5 tweede term stelt het aantal stappen tijdens de ingangsvectorinformatie substitutie voor. De derde term stelt het aantal stappen bij de eerste en laatste stadia van de gehele aanpassingsverwerking voor. Voorts is lc r, = ^ Σ lu· Aangezien er n PE’s zijn, is het rendement van de PE: U=1 _Uc_ 10 ηΓΐΠ8{ tj:Nv>((Σ,jy-Γ·)H-1)-H(7)
Indien Nav het gemiddelde aantal van N^ N2...... N1c is en lav het gemiddelde aantal van l1t l2,.....I1c is, 1.1c 15 geldt Σ Nv=1r.Nav,u Σ lu = "Ic-'a,. zodat vergelijking (7) als volgt kan worden herschreven: u v=1 u=1 ^ •Hring _ Nmax Imax
Hsq Nav Uv 1 Nmax + Imax W 2Usquare 20 c , Hill . J]!_ ' Uring 11 11 i c'av 1c'av
De noemers en tellers afgezien van 1 in de derde term van vergelijking (8) hebben betrekking op het rendement van elk stelselconfiguratie bij de eerste en laatste stadia van de gehele aanpassingsverwerking. Derhalve wordt de verhouding van de rendementen van de PE’s tijdens het uitvoeren van de verwerking 25 alsvolgt uitgedrukt: 'Hring __ ΝΐΤΠ3Χ ΙΓΠ3Χ ^Usqtiare
Osq Nav lav ^ring
Indien wordt aangenomen, dat elke PE in een orthogonaal stelsel is voorzien van organen om een gelijktijdig uitvoeren van in- en uitvoerhandelingen mogelijk te maken, dan is 2USCJLiare = Uring en Nmax >Nav, 30 lmax>lav, zodat het beschreven stelsel steeds voorziet in een verbeterd rendement, dat groter is dan dat van het orthogonale stelsel. Wanneer bij voorbeeld Nav = |Nmax en l^ = |lmax, dan heeft het beschreven stelsel een rendement, dat bij benadering 1,8 maal zo groot is dan dat van het orthogonale stelsel. Indien bovendien het conventionele stelsel is voorzien van organen voor het slechts uitvoeren van in- en uitvoerhandelingen afwisselt gedurende elke verwerking in elke PE, dan is 2Usquare<Ufine. Dit betekent, dat het 35 relatieve rendement van de stelselprocessor nog groter is vergeleken met dat van het orthogonale stelsel.
De stelselschaalafmeting in het geval van het orthogonale stelsel is bijzonder groot geweest ten gevolge van de noodzaak om ten minste (Nmax X Imax) PE’s aan te brengen en met elkaar te verbinden. Derhalve is bij de conventionele stelsels een serie bitmethode toegepast voor de invoer en uitvoer van elke PE teneinde de afmetingen van de PE compact te maken. Omdat echter de bij de aanpassingsberekening in 40 hier beschouwde dynamische tijdvervorming te verwerken informatie vectorinformatie is, waarin de informatiereeks van een bepaalde afmeting een enkel gegeven is, aangegeven in vergelijking (1) neemt het aantal overdrachtsstappen tussen PE’s extreem toe indien de informatie invoer/uitvoer wordt uitgevoerd in de vorm van serie bitstromen en derhalve vereisen de totale berekeningen een langere tijd. Anderzijds kan bij het hier beschreven stelsel het aantal PE’s op een significante wijze worden gereduceerd, zodat zich 45 geen problemen voordoen ten aanzien van de afmetingen van de stelselprocessor, zelfs indien tussen PE’s parallel informatieoverdracht wordt toegepast. Het beschreven stelsel is zeer geschikt voor het verwerken van vectorinformatie, zoals die, welke wordt verwerkt bij de aanpassingsberekening, gebaseerd op de hier beschouwde dynamische tijdvervorming.
Ofschoon de bovenstaande toelichting in hoofdzaak is gericht op de dynamische tijdvervormings-50 berekeningen, aangegeven in vergelijkingen (1), (2) en (3), is de stelselprocessor niet tot deze berekeningen beperkt, doch kan deze op dezelfde wijze worden toegepast op het geval als boven beschreven, waarbij bij voorbeeld vergelijking (2) wordt gesubstitueerd door vergelijking (4) of anderzijds, voor het uitvoeren van berekeningen voor alle combinaties van twee typen variabelen en voor een recursieve formulevergelijking met lokale afhankelijkheid van informatie, waarbij deze berekeningsresultaten worden gebruikt.
55 Bij een stelselprocessor volgens bovenstaande beschrijving zijn verwerkingselementen met vooraf bepaalde l/O-organen en berekeningsorganen in de vorm van een ring verbonden over multiplexinrichtingen, die één informatieoverdrachtsbaan voor het uitwisselen van informatie met naast gelegen verwerkings- 13 192637 elementen en een uitwendige ingangslijn kiezen. Voorts zijn deze verwerkingselementen zodanig opgesteld, dat de gelijktijdige overdracht van de respectieve verwerkingsresultaten door alle verwerkingselementen naar naast gelegen verwerkingselementen een vooraf bepaald aantal malen parallel plaatsvindt met de gebruikelijke verwerking in elk verwerkingselement. Deze constructie maakt het mogelijk berekeningen voor 5 alle combinaties van twee typen variabelen en voor een willekeurige recursieve formulevergelijking met lokale afhankelijkheid van informatie, waarbij deze berekeningsresultaten worden gebruikt, te realiseren, welke laatste typerend zijn voor de aanpassingsberekening van dynamische tijdsvervorming met een stelselconstructie, opgebouwd uit geschikte aantal verwerkingselementen, overeenkomende met de hoeveelheid berekeningen, die moeten worden uitgevoerd door een parallelverwerking met hoog rendement, 10 waarbij alle verwerkingselementen met een hoog rendement werken.
Bij een berekeningsverwerking zoals uitgedrukt door de vergelijkingen (1) - (3) is Sj, N als het eind-verwerkingsresultaat nodig. Een regelmethode van een stelselprocessor zal nu worden toegelicht onder verwijzing naar het geval, waarin de bovengenoemde dynamische tijdvervormingsberekeningen worden uitgevoerd ten aanzien van alle combinaties van een enkele vectorreeks C en 1 vectorreeks RP (p=1, 2......
15 1) om als een eindresultaat SjP,NP te verkrijgen.
Figuur 11 toont een uitvoeringsvorm van een constructie van een stelselprocessor waarin de verwerkingselementen (PE’s) in de vorm van een ring zijn opgesteld en met elkaar zijn verbonden. In figuur 11 is aangenomen, dat aantal PE’s gelijk is aan n (n s NP).
In figuur 11 is 51 een PE, welke een rekenkundige eenheid bevat voor het uitvoeren van optellen en 20 aftrekken, vergelijkingsberekeningen en product-somberekeningen, welke nodig zijn om de bovengenoemde vergelijking (1) op te lossen. Deze PE 51 bezit een register voor het uitvoeren van een informatie-uitwlsseling met een naast gelegen PE en een informatieuitwisseling met een uitwendige bron, een geheugen voor het opslaan van resultaten van berekeningen en overgedragen informatie en een regelaar voor het regelen van elke sectie van een microprogrammageheugen, dat PE verwerkingshandelingen 25 omvat. Met 52-1 tot 52-n zijn multiplexinrichtingen aangegeven, die een uitwendige lijn 53 kiezen, welke n (overeenkomende met het aantal PE’s) ingangsvectorgegevens C, vanuit een uitwendige bron op een bepaald moment invoert, en een informatieoverdrachtsbaan 55, welke ingangsvectorinformatie (C,) vanuit een naast gelegen PE overdraagt. Met 54 is l/O-lijn aangegeven, welke wordt gebruikt bij het invoeren van ingangsvectorinformatie rf en bij het uitvoeren van de eindresultaten van de berekeningen SP, NP naar een 30 uitwendige bestemming. De informatieoverdrachtsbaan 55 draagt de informatie C( en tussenresultaten van de berekeningen Sp (j-1, 2...... Np-1) tussen de PE’s over. Met 56 zijn l/O-klemmen van elke PE aangege ven, die met l/O-lijn 54 zijn verbonden. Met 57 is een totaal regelstelsel, zoals een gastheerrekeninrichting aangegeven, welke aan elke PE-regelsignalen 58 toevoert. De verwijzingen 59, 60 en 61 hebben respectievelijk betrekking op een ingangsvectorinformatiereeks C, een ingangsvectorinformatiereeks Rp (p=1, 2,.....
35 1) en eindberekeningsresultaat SP, NP (p=1, 2...... 1; i=1, 2......I).
Bij een stelselprocessor met een dergelijke constructie is de volgorde voor het uitvoeren van de op de bovenstaande vergelijkingen (1) tot (3) gebaseerde dynamische tijdvervormingsberekeningen alsvolgt.
Een informatiereeks, verkregen door een ingangsvectorinformatiereeks C te splitsen in reeksen van n gegevens (gelijk aan het aantal PE’s) wordt uitgedrukt alsvolgt: 40 = (Ckn+1· Ckn+2' ·”·ι Ckn+q· ...., C(k+i)n) waarbij k=0,1, 2, ....; q=1, 2,..... n-1 en kn + q s I. De verwerkingsvolgorde omvat het herhaaldelijk uitvoeren van de volgende (I) - (V) procedures voor k=0, 1.....
i
(I) De multiplexinrichting voor de PE, welke zich bevindt in de "^(SNJ-de volgorde telling vanaf de PE
p=1 45 waarin de verwerking tussen de ingangsvectorinformatiereeks Sk.1 en alle ingangsvectorinformatiereeksen RP (p=1, 2......1) begint, wordt naar de uitwendige lijn geschakeld om het ingangssignaal van een volgende ingangsvectorinformatiereeks Sk op te nemen. Gesynchroniseerd met deze informatie invoer begint de berekeningsverwerking voor alle ingangsinformatiereeksen Rp, terwijl de ingangsvectorinformatie r,p achtereenvolgens in elke PE wordt ingevoerd. Wanneer k=0 wordt de multiplexinrichting voor een PE naar 50 de uitwendige lijn omgeschakeld en deze verwerking wordt uitgevoerd.
(II) De ingangsvectorinformatiereeks Sk wordt in het stelsel ingevoerd en wanneer de informatie, waaruit Sk bestaat, aan de verschillende PE’s wordt toegewezen, kiezen alle multiplexinrichtingen de baan voor de informatieoverdracht tussen de PE’s. Tegelijkertijd wordt informatie circulair tussen PE’s in alle PE’s overgedragen en terwijl de ingangsinformatie rf achtereenvolgens in elke PE wordt ingevoerd, gesynchroni- 55 seerd met de overdracht van deze informatie, wordt de berekeningsverwerking, gebaseerd op de bovenstaande vergelijkingen (1) - (3) voor alle ingangsinformatiereeksen Rp uitgevoerd.
(III) Bij de verwerking volgens de procedures (I) en (II) wordt het berekeningsresultaat SiP, NP voor elke 192637 14 ingangsvectorinformatiereeks RP naar een uitwendige bestemming uitgevoerd.
(IV) Bij de verwerking volgens de procedures (I) en (II) wordt het berekeningsresultaat S(k+Ï)n,j voor de laatste informatie c(k+1)n in elke ingangsvectorinformatiereeks Sk opgeslagen in het inwendige geheugen van de PE, welke die berekening uitvoert.
5 1 (V) Bij de verwerking volgens de procedures (I) en (II) "’S0 (X N„) verwerkingstijden voor (de verwerkingstijd, p*1 welke indicatief is voor de tijd, die elke PE nodig heeft om de verwerking in elke PE uit te voeren) het tijdstip waarop de substitutie van ingangsinformatiereeks Sk aanvangt om te worden uitgevoerd, draagt elke PE tegelijkertijd een enkel deel van het berekeningsresultaat, dat in het inwendige geheugen daarvan is 10 opgeslagen, een maal op elk verwerkingstijdstip over. Dat wil zeggen, dat de overdracht in zijn totaal mn^ (X Np)maal geschiedt. Voorts wordt tijdens de circulaire overdracht van de ingangsvectorinformatie q p=1 de overdracht van de berekeningsresultaten tussen de PE’s in alle PE’s bij elke {n - ^ (X Np)} behandelings-15 tijdstip herhaald. Een enkel berekeningsresultaat voor elke PE wordt éénmaal per behandelingstijd i overgedragen dat wil zeggen in zijn totaal T1 (X N0) overdrachten.
P=1
Een regelmethode om een dergelijke verwerking te regelen zal worden uiteengezet in de onderstaande alinea (A) en (B).
20 Figuur 12 toont een voorbeeld van vlaggen, welke aan de ingangsvectorinformatie kunnen worden toegevoegd om de regelmethode te realiseren. Met 61 en 62 zijn vlaggen aangegeven, die de kop en de staart van elke informatiereeks aangeven. Met 63 zijn vlaggen aangegeven voor het instellen van de tempering voor een gelijktijdige overdracht van de berekeningsresultaten van alle PE’s onmiddellijk vóór de substitutie van de ingangsvectorinformatiereeks SK en 64 geeft een ingangsvectorinformatie rf aan.
25 (A) Zoals aangegeven in figuur 12, worden voor elke ingangsvectorinformatiereeks RP, de drie bits van vlaggen 61 en 62 voor het aangeven van de kop en de staart van elke informatiereeks en de vlag 63 voor het instellen van de tempering voor de gelijktijdige overdracht van de berekeningsresultaten van alle PE’s onmiddellijk vóór de substitutie van de ingangsvectorinformatiereeks Sk opgeteld bij de overeenkomstige ingangsvectorinformatie r,p.
go (B) Elke PE heeft een statusvlagregister voor het opslaan van de informatie om de functie te beoordelen, welke elke PE moet vervullen bij het verwerken van het totale stelsel, zoals de ingangstoestand van de ingangsvectorinformatie rf en de telhandelingen voor het aantal gelijktijdige overdrachten (hierna betiteld als hertoewijzingsverwerking) van de berekeningsresultaten over alle PE’s.
Figuur 13 toont een voorbeeld van een regelwerking van een statusvlagregister in een PE. De figuur 35 toont een werking voor het achtereenvolgens in elke PE invoeren van ingangsvectorinformatie rf. Met 66 is een statusvlagregister aangegeven, dat bestaat uit een ingangsvlag 67, welke een ingangstoestand van ingangsvectorinformatie rf specificeert en een telvlag 68 voor het tellen van het aantal overdrachten, dat bij de hertoewijzingsverwerking nodig is.
Met 51 is de PE aangegeven. Met 54 is de uitwendige l/O-lijn. Met 55 is de baan voor de informatieover-40 dracht tussen de PE’s aangegeven.
De inhoud van het statusvlagregister 66 wordt op elk verwerkingstijdstip naar een naast gelegen PE overgedragen en vervult de functie van het instellen van de respectieve status in elke PE voor het begin van de verwerking op het volgende tijdstip. De ingangsvectorinformatie rf wordt ingevoerd in de PE waarvan de vlag 67 gelijk is "1”. De inhoud van het statusvlagregister 66 wordt op elk verwerkingstijdstip achtereen-45 volgens overgedragen naar een naast gelegen PE, zodat de ingangsvectorinformatie rf achtereenvolgens in elke PE wordt ingevoerd. Op dit moment wordt de ingangsvectorinformatie Cj circulair overgedragen tussen PE’s van alle PE’s, welke zijn gesynchroniseerd met de achtereenvolgende invoer van de ingangsinformatie f-
Bij de initiële instelling wordt de vlag 67 in het statusvlagregister van een de PE’s ingesteld op "1" en de gQ vlaggen 67 in de resterende PE’s worden ingesteld op ”0”.
De twee typen regelmiddelen, vermeld in de alinea’s (A) en (B) worden gecombineerd, zodat de procedure voor het uitoefenen van de regeling van handelingen van een stelselprocessor als boven beschreven zal worden toegeiicht in overeenstemming met de bovengenoemde handelingen (l)-(V).
De figuren 14A-14E tonen een voorbeeld van een regelhandeling wanneer de stelselprocessor in figuur „ 11 de aanpassingsberekening uitvoert, welke is gebaseerd op de dynamische tijdvervorming in het geval van n = 5, 1 = 2, N, = 6, N2 = 7.
In deze tekeningen is 51 de PE, 52 de multiplexinrichting voor het kiezen van een informatieoverdrachts- 15 192637 baan 55 en de uitwendige lijn 53 en 54 de uitwendige l/O-lijn. Met 66 is het statusvlagregister aangegeven, dat bestaat uit de vlag 67 voor het specificeren van de ingangsvectorinformatie rf en de vlag 68 voor het uitvoeren van de telwerking van het aantal overdrachten, dat tijdens de hertoewijzingsverwerking wordt uitgevoerd. Met 69 is de informatie aangegeven, welke op elk verwerkingstijdstip door de hertoewijzings-5 verwerking opnieuw moet worden toegewezen. In de hierna volgende toelichting zullen de bovengenoemde verschillende vlaggen alsvolgt worden aangegeven.
Vlaggen toegevoegd aan de ingangsvectorinformatie rf:
Vlag 61 .... ”kop”'Vlag Vlag 62 .... ”staart”-vlag 10 Vlag 63 .... "overdrachts”-vlag
Vlaggen in het statusvlagregister 66:
Vlag 67 .... ”ingangs”-vlag Vlag 68.... ”tel”-vlag
De figuren 14A-14E tonen de verwerkingshandelingen van de PE op elk verwerkingstijdstip vanaf het 15 verwerkingstijdstip (t + 1), waarop de ingangsvectorinformatiereeks 8,=(0,. c2, c3, c4, c5) wordt vervangen door de ingangsvectorinformatiereeks S2=(c6, 07, ce, c9, c,0) tot het verwerkingstijdstip (t + 20) waarop de volgende ingangsvectorinformatiereeks S3=(c,,, c,2, c,3, c,4, c,5) wordt gesubstitueerd voor de ingangsvectorinformatiereeks S2, en de regeltoestanden op elk moment van deze verwerkingstijden. De eenheid van tijd is de tijd, welke elke PE nodig heeft om de verwerking overeenkomstig de bovenstaande vergelijkin-20 gen (1) - (3) in elke PE uit te voeren.
Het verwerkingstijdstip (t + 1) komt overeen met het tijdstip dat met (N,+N2) = "’g0 (6+7) = 3 tijdintervallen eerder is dan het verwerkingstijdstip (t + 4), waarop de verwerking begint met het substitueren van de ingangsvectorinformatiereeks S2 voor S,. Onmiddellijk voor dit verwerkingstijdstip (t + 1), wordt een regelsignaal (hierna betiteld als een ”substituut’’-signaal), dat het uitvoeren van een substitutie van de 25 ingangsinformatiereeks Sk instrueert, naar elke PE overgedragen. Slechts PE, welke informatie opzamelt, die de eerste PE aangeeft, waarin het verwerken voor de invoer van de informatiereeks S, wordt ingeleid, accepteert dit ”substituut”-signaal en maakt zich gereed om de hertoewijzingsverwerking te beginnen.
De boven in alinea (II) beschreven regelmiddelen voegen een ”overdrachts”-vlag ”1” aan de laatste vijf gegevens r§, r|, r§, r§, r? van de ingangsvectorinformatiereeksen R, en R2 toe. Derhalve accepteert de PE, 30 waarvan de ”ingangs”-vlag in het statusvlagregister op het verwerkingstijdstip (t + 1) een "1” is, de informatie r§ van deze informatie om te beoordelen, dat de ”overdrachts”-vlag een ”1” is voor het onderkennen van het begin van de hertoewijzingsverwerking, en stelt de ”tel”-vlag op ”1 ” in. Op hetzelfde moment wordt "ter-vlag beoordeelt als een ”1” te zijn en alle PE’s worden achtereenvolgens geïnformeerd ten aanzien van het begin van de hertoewijzingsverwerking (in de richting van de gestippelde pijl in de 35 tekeningen). Alle PE’s worden dan in een overdrachtstoestand voor de hertoewijzingsverwerking ingesteld.
Vervolgens wordt tijdens de verwerkingstijd het resultaat van deze berekening ook door alle PE’s parallel met de op de bovengenoemde vergelijkingen (1) - (3) gebaseerde berekeningsverwerking overgedragen.
Op het verwerkingstijdstip (t + 1) worden de berekeningsresultaten SJ,,. s|,2, Si.3, S1.4, S|.5 (welke respectievelijk zijn verkregen in PE,, PE2, PE3, PE4 en PE5) in elke PE uitgelezen, welke de eerste overdrachts-40 gegevens vanuit het inwendige geheugen daarvan zijn, en door de verwerking op dit tijdstip naar een naast gelegen PE overgedragen. Derhalve worden deze gegevens SJ.s, SJ.i, Sè.2, SJ|3, opnieuw toegewezen in respectievelijk PE,, PE2, PEg, PE4 en PE5 tot het begin van de verwerking op het verwerkingstijdstip (t + 2). De ingangsvectorinformatie r|, welke in PE2 op het verwerkingstijdstip (t + 2) moet worden ingevoerd bevat geen informatie voor het terugstellen van de status van de hertoewijzingsverwerking, zodat de her-45 toewijzingsverwerking ook op dit tijdstip voortgaat. Daarna wordt voordat de verwerking op het verwerkingstijdstip (t + 3) begint, deze informatie opnieuw toegewezen in de volgorde van SJ.4, SJ,s, SI.i,
Sj,2 en SJ.3.
Door deze wijze van verwerking te herhalen, worden deze gegevens opnieuw in vooraf bepaalde PE’s toegewezen in de volgorde van SJ,3) SJ.4, SJ.5, S£,i en SJ.2 voordat de verwerking op het verwerkingstijdstip 50 (t + 4) begint. Zo wordt bij voorbeeld S£.i, welke opnieuw in PE4 is toegewezen, onmiddellijk gebruikt bij de verwerking op verwerkingstijdstip (t + 4) om voor deze PE4 SJ,i te verkrijgen. Hetzelfde geldt voor de andere gegevens, zodat Si,2 opnieuw toegewezen in PE5 wordt gebruikt om Si,2 op het verwerkingstijdstip (t + 5) te verkrijgen. Op het verwerkingstijdstip (t + 4) wordt de informatie rj waarvan de ”kop”-vlag bestaat uit een ”1” in PE4 opgenomen, zodat deze vlag wordt beoordeeld en onderkent, dat de hertoewijzingsverwerking is 55 voltooid, en wordt de "overdrachts”-vlag in het statusvlagregister teruggesteld. Op hetzelfde moment wordt deze terugstelling bevestigd en worden alle PE’s (in de richting van de gestippelde pijlen in de tekeningen) ervan op de hoogte gesteld, dat de hertoewijzingsverwerking is voltooid, en wordt de hertoewijzingsverwer- 192637 16 kingsstatusinstelling in alle PE’s vrijgegeven. Derhalve wordt op het verwerkingstijdstip (t + 4) slechts de verwerking overeenkomstig de bovenstaande vergelijkingen (1) - (3) in elke PE uitgevoerd.
Voorts onderkent nadat een ”substituut"-signaal in elke PE vanuit het totale regeistelsel is ingevoerd, de eerste PE, welke ingangsvectorgegevens heeft geaccepteerd, waarin de ”kop”-vlag een ”1” is, dat deze PE 5 de eerste PE is, omgeroepen door de uitgangs-PE, welke de verwerking uitvoert voor die ingangsvector-informatiereeks Sk, en de door deze PE beïnvloede multiplexinrichting wordt naar de uitwendige lijn omgeschakeld om de ingangspoort voor de ingangsvectorinformatiereeks Sk te worden. Vervolgens wordt de informatie, welke de eerste PE voor de verwerking aangeeft, in deze PE opgeslagen. Deze wijze van regeling leidt de substitutie van de ingangsvectorinformatiereeksen in. In figuur 14A voert PE4 de werking op 10 het verwerkingstijdstip (t + 4) uit.
De PE’s welke de uitgangs-PE of de eind-PE waren, die de berekening uitvoeren voor de eerste ingangsvectorinformatie in de gehele vectorinformatiereeksen R.,, R2,...., R, van de tellingshandelingen in de hertoewijzingsverwerking zamelen de informatie voor deze uitgangs-PE of eind-PE binnen de PE’s op totdat de uitgangs-PE of eind-PE van de hertoewijzingsverwerking voor de volgende ingangsinformatiereeks 15 Sk+1 optreed. Daarna worden de handelingen opnieuw ingeleid op elk moment, dat een ”ingangs”-vlag van het statusvlagregister in deze PE’s optreedt en vindt de bovengenoemde hertoewijzingsverwerking plaats.
Bij het in figuur 14B afgebeeide voorbeeld vindt de tweede hertoewijzingsverwerking plaats gedurende de periode vanaf de verwerkingstijdstippen (t + 6) tot (t + 8). De berekeningsresultaten SJ.6, Sl.i, S§.2, S§,3 en Sg.4, welke de tweede overdrachtsinformatie voor elke PE zijn, worden in vooraf bepaalde PE’s opnieuw 20 toegewezen door de tweede hertoewijzingsverwerking gedurende de periode vanaf de verwerkingstijdstippen (t + 6) tot (t + 8). De berekeningsresultaten S§,5, S§,6 en S§,7 worden in vooraf bepaalde PE’s ! opnieuw toegewezen door de derde hertoewijzingsverwerking gedurende de periode vanaf de verwerkingstijdstippen (t + 11) tot het moment (t + 13).
Bij de verwerkingstijdstippen (t + 14) is de hertoewijzingsverwerking voor de ingangsvectorinformatie-25 reeks S,, gebaseerd op de telhandelingen tussen de PE’s welke de uitgangs-PE en de eind-PE van de hertoewijzingsverwerking zijn, voltooid. De informatie, welke de uitgangs-PE van de verwerking aangeeft voor de ingangsvectorinformatiereeks S2 ingesteld in PE4 en het ”substituut”-signaal, uitgezonden uit het totale regeistelsel onmiddellijk voor dit verwerkingstijdstip, worden gecontroleerd en de ”overdrachts”-vlag, welke aan de ingangsvectorinformatie r§ wordt toegevoegd, wordt beoordeeld als een ”1” te zijn. De 30 ”tel”-vlag van het statusvlagregister wordt dan onmiddellijk ingesteld.
Daarna wordt de bovenbeschreven bewerkingsprocedure na het verwerkingstijdstip (t + 15) herhaald.
Anderzijds beoordeeld de PE, welke de verwerking van de ingangsvectorinformatie rj en r? heeft uitgevoerd, welke ”staart”-vlaggen hebben, dat deze vlaggen gelijk zijn aan ”1” en voert dan naar een uitwendige bestemming het berekeningsresultaat SP,NP parallel met de berekeningsbewerking volgens de 35 bovenstaande vergelijkingen (1) - (3) uit.
In de figuren 14A-14E wordt het resultaat S?,7 op het bewerkingstijdstip (t + 3) uitgevoerd, Sl.7 op het verwerkingstijdstip (t + 4), S§,7 op het verwerkingstijdstip (t + 5), SS.7 op het verwerkingstijdstip (t + 6), S§,7 op het verwerkingstijdstip (t + 7), Sl,e op het verwerkingstijdstip (t + 9), Sj>,6 op het verwerkingstijdstip (t + 10), SJ,6 op het verwerkingstijdstip (t + 11), SJ.6 op het verwerkingstijdstip (t + 12), S1o,6 op het 40 verwerkingstijdstip (t + 13), Si,7 op het verwerkingstijdstip (t + 16), S?,7 op het verwerkingstijdstip (t + 17), S|,7 op het verwerkingstijdstip (t + 18), Si,? op het verwerkingstijdstip (t + 19) en S?o,7 op het verwerkingstijdstip (t + 20). Derhalve worden de resultaten van de berekeningen voor het ingangsvectorinformatiereeks S2 naar de uitwendige bestemmingen uitgevoerd in de volgorde van Sè,6, S),6l Sè.e, Si,6> Sjo.6, Si.7, S?,7, S|,7, S§,7 en Sfo,7.
45 De informatie, welke de beginnende PE van de verwerking voor elke ingangsvectorinformatiereeks Sk aangeeft, wordt teruggesteld nadat is vastgesteld, dat de ”overdrachts”=vlag een ”1” is en het is bevestigd, dat de ”tel”-vlag is ingesteld op "1”. Bovendien wordt wanneer de ”overdrachts”-vlag ”1” is, de informatie, welke de beginnende PE van de hertoewijzingsverwerking aangeeft ingesteld op ”1" indien de ’’teC’-vlag gelijk is aan ”0” en de informatie niet is gewijzigd, indien deze "teP’-vlag gelijk is ”1 Wanneer de 50 ”overdrachts’’-vlag gelijk is aan ”1”, wordt de informatie, welke de eind-PE van de hertoewijzingsverwerking aangeeft, ingesteld op ”0”, indien de ”tel”-vlag gelijk is ”1” en de informatie wordt niet gewijzigd indien deze ”tel”-vlag gelijk is ”0”. Nadat de multiplexinrichting de uitwendige lijn kiest, onderhoud de multiplexinrichting de keuze van de uitwendige lijn totdat de "ingangs”-vlag van het statusvlagregister veranderd in ”1 ” en nadat is vastgesteld, dat de "ingangs”-vlag gelijk is ”1”, kiest de multiplexinrichting de baan voor de 55 overdracht van informatie tussen PE’s.
Zoals boven is toegelicht, vervullen de inhouden van het statusvlagregister en de vlag, welke is toegevoegd aan de ingangsvectorinformatie rf de functie van het bepalen van de verwerkingsstatus van 17 192637 elke PE onmiddellijk voor het uitvoeren van de berekeningsverwerking overeenkomstig de bovenstaande vergelijking (1) - (3). Dientengevolge vereist deze regelmethode geen regelsignalen uit het totale regel-stelsel, welke de verwerkingshandelingen in de respectieve PE specificeren. Het is voldoende, dat een regelsignaal, dat de tempering voor de substitutie van de ingangsvectorinformatiereeks Sk aangeeft, cyclisch 5 aan elke PE wordt toegevoerd. Deze inrichting maakt het mogelijk dynamische tijdvervormingsberekeningen continue overeenkomstig de bovenstaande vergelijkingen (1) - (3) uit te voeren, terwijl een autonome regeling in het totale steiselprocessor plaatsvindt.
Figuur 15 toont een uitvoeringsvorm van een inrichting wanneer een middel voor het uitvoeren van de regelmethode is opgenomen in een PE, welke in deze steiselprocessor vormt.
10 In figuur 15 zijn de uitwendige ingangsvectorinformatielijn 33, de uitwendige l/O-lijn 34 en de klem 36, welke de PE en de uitwendige l/O-lijn 34 verbindt, dezelfde als die in figuur 11. Met 71 is een regelingangs-klem van een regeleenheid 88 vanuit een regelsignaalbron, zoals een gastheerrekeninrichting aangegeven. Met 72 en 73 zijn ingangs- en uitgangsklemmen van de banen voor de overdracht van informatie tussen respectieve PE’s aangegeven. Met 74 en 75 zijn ingangs- en uitgangsklemmen van een statusvlagregister 15 86 aangegeven. Met 76 en 77 zijn ingangs- en uitgangsbufferregisters voor de informatieoverdracht aangegeven. Met 78 en 79 zijn buffergeheugens voor de ingangsvectorinformatie c, en η aangegeven. Met 80 is een bufferregister voor de uitgangsinformatie naar de uitwendige l/O-lijn 34 aangegeven. Met 81 is een teller voor de geheugentoegang aangegeven. Met 82 is een rekenkundige eenheid weergegeven, voorzien van een optel- en aftrekeenheid 82-1, een accumulator 82-2 en een productsomeenheid 82-3. Met 20 83 is een bedrijfsgeheugen aangegeven. Met 84 en 85 zijn bedrijfsgeheugentoegangslijnen aangegeven.
Met 87 is een bufferregister voor aan de ingangsvectorinformatie toegevoegde vlaggen aangegeven. Met 89 is instructie-eenheid aangegeven, voorzien van een microprogrammageheugen 89-1, dat de PE-verwerkingshandelingen bevat, een programmateller 89-2, een instructieregister 89-3 en een instructie-decodeerinrichting 89-4. Met 90 is een bufferregister aangegeven voor het opslaan van de ingangsvector-25 informatie η wanneer de informatie uit de uitwendige l/O-lijn 34 wordt ingevoerd. Met 91, 92,93 en 94 zijn kiezers aangegeven, die door de instructie-eenheid 89 worden geregeld.
De regeleenheid 88 in elke PE ontvangt een verwerkingsbeginactiveringssignaal uit een uitwendige regeleenheid en wordt geregeld door een regelstroom, als aangegeven in figuur 17. De regeleenheid 88 wekt een regelsignaal op voor het instellen van het initiële adres van het programma in de programmateller 30 89-2. Vervolgens regelt de regeleenheid 88 onder gebruik van overdracht van ”ingangs”-vlag en de "ter’-vlag, en controleert de vlag f5 6 voor de vijfde en zesde velden in het programma (1) door te beoordelen of de ”ingangs"-v!ag ai dan niet een ”1” is, en stelt daarna deze vlag in. In deze situatie werkt de programmateller 89-2, zodat het uitvoeren van het programma (1) wordt geregeld.
Wanneer het programma (1) is beëindigd, wordt de ”ingangs”-vlag beoordeeld en indien de ’’ingangs”-35 vlag gelijk is aan ”1”, wordt de vlag toegevoegd aan de vectorinformatie η, die in PE wordt ingevoerd, beoordeeld, zodat de nodige status instelling voor het uitvoeren van het programma (2) plaatsvindt.
Wanneer het blijkt, dat de ”kop”-vlag gelijk is aan ”1”, wordt de ”tel”-vlag beoordeeld. Indien de ’*tel”-vlag gelijk is aan ”0”, blijft de eerder ingestelde status ongewijzigd en begint de regeleenheid 88 het uitvoeren van het programma (2) te regelen.
40 Wanneer de ”tel”-vlag gelijk is aan ”1”, wordt de hertoewijzingsverwerkingsstatus uitschakelvlag ingesteld op ”1” teneinde het opwekken van een terugstelsignaal van de hertoewijzingsbewerkingsstatus voor te bereiden. De ”tel”-vlag wordt ingesteld op ”0” en er wordt een terugstelsignaal van de her-toewijzingsverwerkingsstatus uitgezonden. Daarna wordt voor het maskeren van het tweede veld van het programma (2), f2 ingesteld op ”0” en wordt de informatie voor de startende PE ingesteld op ”1”. In het 45 geval, dat de "staaiT’-vlag wordt gecontroleerd, wordt de vlag f3, welke het uitvoeren van het derde veld van het programma (2) regelt, ingesteld op "1” of ”0” afhankelijk van het feit dat de ”staart”-vlag gelijk is aan ”1” of niet. In het geval, dat ”overdrachts”-vlag wordt gecontroleerd, wordt de informatie voor de startende PE beoordeeld en indien de informatie niet gelijk is "1", begint de regeleenheid 88 te regelen voor het uitvoeren van het programma (2) zonder dat de voorafgaande status wordt gewijzigd.
50 Indien de informatie voor de startende PE gelijk is ”1 ”, wordt de hertoewijzingsverwerkingsstatus inschakelvlag ingesteld op ”1” om het verschaffen van een hertoewijzingsverwerkingsstatus in te leiden, en wordt de ”tel”-vlag ingesteld op ”1 ”. Daarna wordt het instelsignaal van de hertoewijzingsverwerkingsstatus uitgezonden en wordt de vlag f2 voor het regelen van het uitvoeren van het tweede veld in het programma (2) ingesteld op ”1”. Bovendien wordt de informatie voor de startende PE ingesteld op ”0” en begint de 55 regeleenheid 88 het uitvoeren van het programma (2) te regelen.
Wanneer de aan de ingevoerde vectorinformtaie r{ toegevoegde vlag een vlag is, welke niet deze drie typen vlaggen omvat, dat wil zeggen NOP-vlag is, wordt de hertoewijzingsverwerkingsstatus inschakelvlag 192637 18 gecontroleerd. Indien deze vlag ”0” is, begint de regeleenheid 88 het uitvoeren van het programma (2) te regelen zonder dat de voorafgaande status wordt gewijzigd. Wanneer deze vlag gelijk is aan "1", wordt de ”tel”-vlag ingesteld op ”1 ” om de hertoewijzingsverwerking opnieuw in te leiden, wordt het instelsignaal van de hertoewijzingsverwerkingsstatus uitgezonden, en wordt de vlag f2 ingesteld op ”1". Bovendien wordt de 5 informatie voor de startende PE ingesteld op ”0”.
Wanneer de ”ingangs”-vlag niet gelijk is ”1 ”, worden de berekeningen uitgevoerd onder gebruik van vectorinformatie rj, welke reeds in de PE is opgeslagen tijdens het uitvoeren van het programma (1), zodat de statusinstellingen, welke nodig zijn voor het uitvoeren van het programma (2) plaatsvinden overeenkomstig het feit of het instel- of terugsteisignaal voor de hertoewijzingsverwerkingsstatus al dan niet is ontvan-10 gen. Wanneer het instelsignaal is ontvangen wordt de vlag f2 ingesteld op "1”. Wanneer in plaats van instelsignaal het terugsteisignaal is ontvangen, wordt de vlag f2 ingesteld op ”0”. Wanneer geen signaal is ontvangen, begint de regeleenheid 88 het uitvoeren van het programma (2) te regelen zonder dat de voorafgaande status wordt gewijzigd.
Wanneer de statusinstellingen voor de bovenbeschreven verschillende gevallen zijn voltooid, wordt de 15 programmateller 89-2 geactiveerd, zodat het programma (2) wordt uitgevoerd. De regeleenheid 88 herhaald de bovenstaande regelprocedure op elk verwerkingstijdstip.
De bovenbeschreven uitvoeringsvorm maakt een autonome regeling in het totale stelsel mogelijk door slechts vlaggen van drie bits toe te voegen en in elke PE statusvlaggen van twee bits op te nemen. Deze inrichting maakt niet slechts een reductie van de belasting van het totale regelstelsel 57 mogelijk doch 20 eveneens een vereenvoudiging van de regelmethode.
Er zal een verder uitvoeringsvorm van de regelmethode volgens de uitvinding worden toegelicht voor het geval, dat een productmatrix C wordt verkregen uit 0 X k) matrix A en (k X m) matrix B. Indien A = {ajj | Isisl, Isjsk}, B = {b^ | Isisk en Isjsm} en C = {cif | Isisl, Isjsm} is, k 25 c'i= p5 ^pkpi (5)
Indien a1 = (a1t a2......aj en bj = (b^, b2j,.....bkj) wordt de bovenstaande vergelijking (5) uitgedrukt door:
Cj, = a,. bj (6).
In deze vergelijking stelt de inwendige productoperator tussen de vectoren voor.
Een vermenigvuldiging van matrix A en matrix B betekend het verkrijgen van c^ in de bovenstaande 30 vergelijking (6) voor alle gevallen van 1 sisl, 1 sjsm. Deze regelmethode zal worden toegelicht voor het geval, dat een stelselprocessor met I (I s m) PE's in een lineaire stelselconstructie deze wijze van berekening uitvoert voor verschillende m, in een specifiek geval van I = 4 en m = 6. Thans wordt hier aangenomen, dat elke PE berekeningsfuncties voor het uitvoeren van bovenstaande vergelijking (6), functies voor het invoeren van het informatie as, voor het invoeren en uitvoeren van informatie bj en het opzamelen en 35 uitvoeren van het resultaat van de berekeningen cu, en ingebouwde verwerkingsinstructies voor het uitvoeren van deze verwerkingshandelingen omvat.
De figuren 16A-16I tonen een voorbeeld van de regelhandelingen wanneer de matrix vermenigvuldiging plaatsvindt in een stelselprocessor met een lineaire opbouw.
Met 54 is l/O-lijn voor het invoeren van de informatie a, in de PE en voor het uitvoeren van het 40 berekeningsresultaat α0 uit de PE aangegeven. Met 55 is de baan voor het overdragen van informatie tussen PE’s aangegeven. Met 66 is het statusvlagregister aangeven, bestaande uit de vlag 67, welke de ingangsstatus van de informatie uit l/O-lijn 54 aangeeft, en de vlag 68 welke de uitgangsstatus van het berekeningsresultaat aangeeft. Met 51 is de PE aangegeven, at is kolomvector en bj is een rijvector van de matrixes A en B.
45 Bij de hierna volgende toelichting van de handelingen, zullen de vlaggen 67 en 68 als volgt worden betiteld:
Vlag 67.... ”ingangs”-vlag
Vlag 68.... ”uitgangs"-vlag
Voorts wordt aan de vector bj, b2, b3, b4, b5 en b6 de ”eind”-vlag toegevoegd. Slechts de ”eind”-vlag van 50 de vector b6 is gelijk aan ”1”.
Initieel wordt slechts de "ingangs”-vlag van PE1 ingesteld op "1”. Op het verwrerkingstijdstip t1, controleert PE1 deze vlag en wordt de vector a1 via de l/O-lijn 54 in PE1 ingevoerd. Tegelijkertijd wordt de vector b, vanuit de informatieoverdrachtsbaan 55 ingevoerd. Vervolgens wordt a^b, berekend en inwendig opgeslagen als de informatie c1v Voor het inleiden van de berekeningsverwerking op het verwerkingstijdstip 55 12, wordt de inhoud van de status van het vlagregister 66 overgedragen naar de naast gelegen PE, en worden ”ingangs”-vlag van PE2 ingesteld op ”1”. PE2 beoordeeld deze vlag op het verwerkingstijdstip t2 en daarna wordt op hetzelfde moment, dat de vector a2 vanuit de l/O-lijn 54 in PE2 wordt ingevoerd, de vector

Claims (2)

19 192637 b, vanuit PE1 in PE2 ingevoerd, zodat a2,b·, wordt berekend en als informatie c21 wordt opgeslagen. Op dit moment wordt parallel aan de verwerking in PE2 de vector b2 in PE, ingevoerd en wordt a,.b2 berekend en als de informatie c12 opgeslagen. Daarna wordt dezelfde verwerkingsprocedure herhaald tot het verwerkingstijdstip t4. Voordat de 5 berekeningsverwerking op het verwerkingstijdstip t5 begint, wordt de inhoud van het statusvlagregister 66 overgedragen, zodat de ”ingangs‘’-vlaggen in alle PE’s worden ingesteld op "0” en derhalve wordt beoordeeld, dat het ingangssignaal uit l/O-lijn 54 is voltooid. De vectoren bj worden op elk verwerkingstijdstip naar naast gelegen PE’s overgedragen, zodat op het verwerkingstijdstip t5 alle PE’s de inwendige productberekeningen uitvoeren en de resultaten van de berekeningen accumuleren. Voor het begin van de 10 berekeningsverwerking op het tijdstip t6, beoordeeld PE,, dat de aan de ingevoerde vector b6 toegevoegde ”eind”-vlag gelijk is "1" en daarna stelt PE, de uitgangsverwerkingsstatus voor alle berekeningsresultaten, welke in die PE1 zijn opgezameld, inclusief het resultaat, dat op dit tijdstip wordt verkregen, in en stelt de ”uitgangs’’-vlag op ”1” in. Op hetzelfde moment, dat PE, de ’’uitgangs”-vlag op ”1” instelt, informeert PE,, PE2, PE3 en PE4 sequentieel omtrent de eigen verwerkingsstatus daarvan. PE2, PE3 en PE4 controleren 15 deze status en beoordelen, dat er een verschil in het aantal verwerkingsstappen tussen PE’s is door de uitgangsverwerking van de berekeningsresultaten. Zelfs in het geval, dat de eigen verwerking daarvan is voltooid, worden deze PE’s in een verwerkingsparaatstatus ingesteld totdat zij een regelsignaal ontvangen, dat aangeeft, dat de status in PE, is vrijgegeven. PE, stelt ”uitgangs”-vlag terug wanneer de uitvoer van de eindresultaten van de berekening is voltooit, en na het bevestigen van dit terugstellen van de vlag, 20 informeert PE, alle PE's, dat de uitgangstoestand daarvan is vrijgegeven. Vervolgens wordt op verwerkingstijdstip t7 de vector bf naar de naast gelegen PE overgedragen en voert PE2 dezelfde verwerkings- en regelhandelingen uit als die, welke door PE, op het verwerkingstijdstip t6 zijn uitgevoerd. Op deze wijze wordt wanneer de verwerking op het verwerkingstijdstip t9 is voltooid, het resultaat van de vermenigvuldiging van de matrixes A en B verkregen. 25 Zoals boven is toegelicht heeft de beschreven regelmethode het voordeel, dat deze het mogelijk maakt autonome matrix vermenigvuldigingsverwerkingen in een stelselprocessor uit te voeren door slechts een vlag van één bit bij een ingangsvectorgegeven op te tellen en in een PE een vlag van twee bits op te nemen. 30
1. Stelselprocessor voorzien van n verwerkingselementen, welke onderling in de vorm van een ring gekoppeld zijn met behulp van n multiplexinrichtingen, waarbij elk van de n verwerkingselementen omvat: 35 invoerorganen voor het invoeren van één van de ingangsvectorgegevens van een eerste en een tweede reeks van ingangsvectorgegevens; organen voor het uitvoeren van voorafbepaalde berekeningen, zoals optellen, aftrekken, vergelijkings-berekeningen en product-somberekeningen tussen de ingangsvectorgegevens van de eerste en de tweede reeks; 40 opslagorganen voor het opslaan van de ingangsvectorgegevens van de eerste reeks, van de tweede reeks, en van de resultaten van de berekeningen; een gegevensoverdraagorgaan voor het overdragen van één van de ingangsvectorgegevens en de berekeningsresultaten naar een naastgelegen verwerkingselement via een van de multiplexinrichtingen; een met een l/O-lijn verbonden uitvoerorgaan voor het uitvoeren als eindberekening van het resultaat 45 naar de l/O-lijn; en een stuurorgaan voor het besturen van de invoerorganen, de opslagorganen, het berekeningsorgaan, het overdrachtsorgaan en het uitvoerorgaan, met het kenmerk, dat elk van de n multiplexinrichtingen (2-1 ... 2-n) een tweede ingang heeft, die verbonden is met een 50 ingangsvectorgegevenslijn (3), en voorzien is van organen voor het kiezen van informatie-overdracht hetzij tussen twee verwerkingselementen (PE1 ... PEn), hetzij tussen de ingangsvectorgegevenslijn en een verwerkingselement; dat de invoerorganen bestaan uit een eerste invoerorgaan (13,17) voor het invoeren van één van de ingangsvectorgegevens (Cj) van de eerste reeks (C = (¾} (i = 1,2.....1)) vanaf de ingangsvectorgegevens- 55 lijn (3) via de multiplexinrichting, en uit een tweede invoerorgaan (12,15) voor het invoeren van één van de ingangsvectorgegevens Oj) van de tweede reeks (R = {η} (j = 1,2,....N) uit de l/O-lijn (4); en dat het gegevensoverdraagorgaan (18,14) is ingericht om respectieve verwerkingsresultaten gelijktijdig 192637 20 over te dragen naar respectieve naastgelegen verwerkingselementen, en wel mRdN maal (mSdN is de rest als N door n wordt gedeeld), parallel met een berekeningsverwerking in elk verwerkingselement.
2. Stelselprocessor volgens conclusie 1, met het kenmerk, dat elk verwerkingselement verder is voorzien van: organen voor het ontvangen van een statusvlag uit een naast gelegen verwerkingselement teneinde de 5 statusvlag naar het andere naastgelegen verwerkingselement over te dragen; van een tweede register met een gedeelte voor het opslaan van een vlag, welke is toegevoegd aan de vanuit de l/O-lijn ingevoerde ingangsvectorinformatie; van regelorganen die zijn voorzien van een verwerkingselementregeleenheid, welke het regelsignaal uit een uitwendige bron, het vlagsignaal uit het registergedeelte en de statusvlag ontvangt voor het vormen van een instructieregelsignaal; en van een verwerkingsinstructie-eenheid, welke 10 het instructieregelsignaal ontvangt voor het vormen van de adresinformatie en regelsignalen om eerste, tweede en derde kiesorganen te besturen. Hierbij 22 bladen tekening i
NL8500537A 1984-02-27 1985-02-26 Stelselprocessor. NL192637C (nl)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP59034450A JPS60179871A (ja) 1984-02-27 1984-02-27 アレイプロセツサ
JP3445084 1984-02-27
JP9665684 1984-05-16
JP59096656A JPS60241155A (ja) 1984-05-16 1984-05-16 アレイプロセツサの制御方法

Publications (3)

Publication Number Publication Date
NL8500537A NL8500537A (nl) 1985-09-16
NL192637B NL192637B (nl) 1997-07-01
NL192637C true NL192637C (nl) 1997-11-04

Family

ID=26373263

Family Applications (1)

Application Number Title Priority Date Filing Date
NL8500537A NL192637C (nl) 1984-02-27 1985-02-26 Stelselprocessor.

Country Status (3)

Country Link
US (1) US4905143A (nl)
DE (1) DE3506749A1 (nl)
NL (1) NL192637C (nl)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0269995B1 (en) * 1986-11-27 1993-06-23 Nippon Telegraph And Telephone Corporation Parallel data processing apparatus and method
JPH0254383A (ja) * 1988-08-18 1990-02-23 Mitsubishi Electric Corp アレイプロセッサ
EP0605401B1 (en) * 1988-09-19 1998-04-22 Fujitsu Limited Parallel computer system using a SIMD method
US5159690A (en) * 1988-09-30 1992-10-27 Massachusetts Institute Of Technology Multidimensional cellular data array processing system which separately permutes stored data elements and applies transformation rules to permuted elements
US5249301A (en) * 1988-10-25 1993-09-28 Bull S.A Processing communication system having a plurality of memories and processors coupled through at least one feedback shift register provided from ring configured input stations
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
US5210836A (en) * 1989-10-13 1993-05-11 Texas Instruments Incorporated Instruction generator architecture for a video signal processor controller
US5237685A (en) * 1990-02-26 1993-08-17 International Business Machines Corporation Linear recurrence dispersal structure and method for parallel processors
US5193202A (en) * 1990-05-29 1993-03-09 Wavetracer, Inc. Processor array with relocated operand physical address generator capable of data transfer to distant physical processor for each virtual processor while simulating dimensionally larger array processor
US5208900A (en) * 1990-10-22 1993-05-04 Motorola, Inc. Digital neural network computation ring
US5617577A (en) * 1990-11-13 1997-04-01 International Business Machines Corporation Advanced parallel array processor I/O connection
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
US5794059A (en) * 1990-11-13 1998-08-11 International Business Machines Corporation N-dimensional modified hypercube
US5963746A (en) * 1990-11-13 1999-10-05 International Business Machines Corporation Fully distributed processing memory element
US5713037A (en) * 1990-11-13 1998-01-27 International Business Machines Corporation Slide bus communication functions for SIMD/MIMD array processor
US5630162A (en) * 1990-11-13 1997-05-13 International Business Machines Corporation Array processor dotted communication network based on H-DOTs
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
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
US5809292A (en) * 1990-11-13 1998-09-15 International Business Machines Corporation Floating point for simid array machine
US5765015A (en) * 1990-11-13 1998-06-09 International Business Machines Corporation Slide network for an array processor
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
US5588152A (en) * 1990-11-13 1996-12-24 International Business Machines Corporation Advanced parallel processor including advanced support hardware
US5590345A (en) * 1990-11-13 1996-12-31 International Business Machines Corporation Advanced parallel array processor(APAP)
US5625836A (en) * 1990-11-13 1997-04-29 International Business Machines Corporation SIMD/MIMD processing memory element (PME)
DE69131272T2 (de) * 1990-11-13 1999-12-09 Ibm Paralleles Assoziativprozessor-System
US5966528A (en) * 1990-11-13 1999-10-12 International Business Machines Corporation SIMD/MIMD array processor with vector processing
US5208490A (en) * 1991-04-12 1993-05-04 Hewlett-Packard Company Functionally complete family of self-timed dynamic logic circuits
US5389835A (en) * 1991-04-12 1995-02-14 Hewlett-Packard Company Vector logic method and dynamic mousetrap logic gate for a self-timed monotonic logic progression
US5594918A (en) * 1991-05-13 1997-01-14 International Business Machines Corporation Parallel computer system providing multi-ported intelligent memory
US6282583B1 (en) * 1991-06-04 2001-08-28 Silicon Graphics, Inc. Method and apparatus for memory access in a matrix processor computer
JP2642039B2 (ja) * 1992-05-22 1997-08-20 インターナショナル・ビジネス・マシーンズ・コーポレイション アレイ・プロセッサ
JPH06290158A (ja) * 1993-03-31 1994-10-18 Fujitsu Ltd 再構成可能なトーラス・ネットワーク方式
EP0737342A1 (en) * 1993-12-17 1996-10-16 Quintet, Incorporated Method of automated signature verification
CA2135857A1 (en) * 1994-01-03 1995-07-04 Shay-Ping Thomas Wang Neural network utilizing logarithmic function and method of using same
US5664192A (en) * 1994-12-14 1997-09-02 Motorola, Inc. Method and system for accumulating values in a computing device
US5611068A (en) * 1994-12-27 1997-03-11 Motorola, Inc. Apparatus and method for controlling pipelined data transfer scheme between stages employing shift register and associated addressing mechanism
US5685008A (en) * 1995-03-13 1997-11-04 Motorola, Inc. Computer Processor utilizing logarithmic conversion and method of use thereof
US5644520A (en) * 1995-05-31 1997-07-01 Pan; Shao Wei Accumulator circuit and method of use thereof
US5771391A (en) * 1995-08-28 1998-06-23 Motorola Inc. Computer processor having a pipelined architecture and method of using same
US5956409A (en) * 1996-04-29 1999-09-21 Quintet, Inc. Secure application of seals
US5917447A (en) * 1996-05-29 1999-06-29 Motorola, Inc. Method and system for digital beam forming
JP2879670B2 (ja) * 1997-03-28 1999-04-05 広島大学長 2次元情報処理装置
JPH1165989A (ja) * 1997-08-22 1999-03-09 Sony Computer Entertainment:Kk 情報処理装置
US6502180B1 (en) * 1997-09-12 2002-12-31 California Institute Of Technology Asynchronous circuits with pipelined completion process
US6112288A (en) * 1998-05-19 2000-08-29 Paracel, Inc. Dynamic configurable system of parallel modules comprising chain of chips comprising parallel pipeline chain of processors with master controller feeding command and data
US6167501A (en) * 1998-06-05 2000-12-26 Billions Of Operations Per Second, Inc. Methods and apparatus for manarray PE-PE switch control
US7343249B2 (en) 2005-03-23 2008-03-11 International Business Machines Corporational Vectorization of sequence alignment computation using distance matrix reshaping
WO2012100316A1 (en) * 2011-01-25 2012-08-02 Cognivue Corporation Apparatus and method of vector unit sharing

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3287703A (en) * 1962-12-04 1966-11-22 Westinghouse Electric Corp Computer
US3286309A (en) * 1963-06-06 1966-11-22 Aluminum Co Of America Method and apparatus for horizontal casting of ingots
US3544973A (en) * 1968-03-13 1970-12-01 Westinghouse Electric Corp Variable structure computer
US3582899A (en) * 1968-03-21 1971-06-01 Burroughs Corp Method and apparatus for routing data among processing elements of an array computer
US3970993A (en) * 1974-01-02 1976-07-20 Hughes Aircraft Company Cooperative-word linear array parallel processor
US4065808A (en) * 1975-01-25 1977-12-27 U.S. Philips Corporation Network computer system
US4270169A (en) * 1978-05-03 1981-05-26 International Computers Limited Array processor
US4270170A (en) * 1978-05-03 1981-05-26 International Computers Limited Array processor
US4541048A (en) * 1978-10-06 1985-09-10 Hughes Aircraft Company Modular programmable signal processor
IT1118355B (it) * 1979-02-15 1986-02-24 Cselt Centro Studi Lab Telecom Sistema di interconnessione tra processori
US4380046A (en) * 1979-05-21 1983-04-12 Nasa Massively parallel processor computer
FR2469751A1 (fr) * 1979-11-07 1981-05-22 Philips Data Syst Processeur d'intercommunication du systeme utilise dans un systeme de traitement de donnees reparti
US4314349A (en) * 1979-12-31 1982-02-02 Goodyear Aerospace Corporation Processing element for parallel array processors
ZA811458B (en) * 1980-03-28 1982-03-31 Int Computers Ltd Data processing system
NL8002787A (nl) * 1980-05-14 1981-12-16 Philips Nv Multiprocessor-rekenmachinesysteem voor het uitvoeren van een recursief algorithme.
US4428048A (en) * 1981-01-28 1984-01-24 Grumman Aerospace Corporation Multiprocessor with staggered processing
US4384273A (en) * 1981-03-20 1983-05-17 Bell Telephone Laboratories, Incorporated Time warp signal recognition processor for matching signal patterns
US4533993A (en) * 1981-08-18 1985-08-06 National Research Development Corp. Multiple processing cell digital data processor
JPS58134357A (ja) * 1982-02-03 1983-08-10 Hitachi Ltd ベクトルプロセッサ
US4509187A (en) * 1982-06-14 1985-04-02 At&T Bell Laboratories Time warp signal recognition processor using recirculating and/or reduced array of processor cells
US4739474A (en) * 1983-03-10 1988-04-19 Martin Marietta Corporation Geometric-arithmetic parallel processor
GB8401805D0 (en) * 1984-01-24 1984-02-29 Int Computers Ltd Data processing apparatus
US4739476A (en) * 1985-08-01 1988-04-19 General Electric Company Local interconnection scheme for parallel processing architectures
US4783738A (en) * 1986-03-13 1988-11-08 International Business Machines Corporation Adaptive instruction processing by array processor having processor identification and data dependent status registers in each processing element

Also Published As

Publication number Publication date
DE3506749A1 (de) 1985-09-26
NL8500537A (nl) 1985-09-16
NL192637B (nl) 1997-07-01
US4905143A (en) 1990-02-27
DE3506749C2 (nl) 1989-03-23

Similar Documents

Publication Publication Date Title
NL192637C (nl) Stelselprocessor.
KR102120395B1 (ko) 심층 신경망용 가속기
WO2018184570A1 (zh) 运算装置和方法
US7133950B2 (en) Request arbitration in multi-core processor
EP0504932A2 (en) A parallel data processing system
US5544336A (en) Parallel data processing system which efficiently performs matrix and neurocomputer operations, in a negligible data transmission time
JPH08506198A (ja) 多重パイプライン多重プロセッサシステム
TWI666551B (zh) 以複數個引擎作資源與互連結構的分散式分配以支援指令序列的執行
US4956800A (en) Arithmetic operation processing apparatus of the parallel processing type and compiler which is used in this apparatus
JPS6252392B2 (nl)
US5276902A (en) Memory access system for vector data processed or to be processed by a vector processor
JP2021108104A (ja) 部分的読み取り/書き込みが可能な再構成可能なシストリックアレイのシステム及び方法
Meng et al. Ppoaccel: A high-throughput acceleration framework for proximal policy optimization
JP4687925B2 (ja) 優先調停システム及び優先調停方法
JPH0799515B2 (ja) 命令フロ−コンピュ−タ
Chawla et al. A parallel elimination method for" periodic" tridiagonal systems
JPH03263164A (ja) データ並列処理方式
CA2002104C (en) Vector processing apparatus
EP4156111A1 (en) Parallel processor optimized for machine learning
JPH05508046A (ja) 多重プロセッサシステムのための高速割込み機構
JPH06259582A (ja) データ処理装置
Tashev et al. A Generalized net model for estimation of decisions for PIM-Algorithm in crossbar switch node
US7408937B1 (en) Methods and apparatus for identifying a variable number of items first in sequence from a variable starting position which may be particularly useful by packet or other scheduling mechanisms
Zhang Scheduling and Allocation with Integer Linear Programming
Novikov Parallelization of computations for generating combinations

Legal Events

Date Code Title Description
CNR Transfer of rights (patent application after its laying open for public inspection)

Free format text: NIPPON TELEGRAPH AND TELEPHONE CORPORATION

BA A request for search or an international-type search has been filed
BB A search report has been drawn up
BC A request for examination has been filed
V4 Lapsed because of reaching the maximum lifetime of a patent

Effective date: 20050226