NL8500683A - Adresberekeningsstelsel voor een digitale verwerkingsinrichting. - Google Patents

Adresberekeningsstelsel voor een digitale verwerkingsinrichting. Download PDF

Info

Publication number
NL8500683A
NL8500683A NL8500683A NL8500683A NL8500683A NL 8500683 A NL8500683 A NL 8500683A NL 8500683 A NL8500683 A NL 8500683A NL 8500683 A NL8500683 A NL 8500683A NL 8500683 A NL8500683 A NL 8500683A
Authority
NL
Netherlands
Prior art keywords
address
data
register means
address register
logical
Prior art date
Application number
NL8500683A
Other languages
English (en)
Original Assignee
Tektronix Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tektronix Inc filed Critical Tektronix Inc
Publication of NL8500683A publication Critical patent/NL8500683A/nl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
    • G06F9/345Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)
  • Memory System (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Description

A * , 85.3024/AA/MW -1-
Korte aanduiding: Adresberekeningsstelsel voor een digitale verwerkingsinrichting.
De uitvinding heeft betrekking op een digitale ver-werkingsinrichting, in het bijzonder op een stelsel voor het berekenen van het adres van de uit een datageheugen te halen volgende operand tegelijk met de bewerking op de laatst ge-5 haalde operand.
Bij rijbewerkingsinrichtingen is het vaak nodig om de ene geordende verzameling, of rij ("array"), data herhaaldelijk te bewerken met een andere geordende verzameling data, beginnend met een nieuw datapunt in de eerste verzameling 10 bij elke volgende bewerking. Bijvoorbeeld bij het digitaal filteren van een signaal dat voorgesteld wordt door een rij monsters van een signaalgolfvorm wordt typisch convolutie toegepast. Een algemene uitdrukking die de convolutie voorstelt van het signaal x door de filterkarakteristiek h is: 15 P = aantal coëfficiënten van de P filterkarakteristiek y(i) =*jj~ h(i) *x(i+n) n=o i = het nummer van een datapunt;
0 < i < P
20 In dit voorbeeld wordt elke verzameling datapunten die de golfvorm x voorstellen eerst vermenigvuldigd met een korres-ponderende coëfficiënt van h en wordt de som van deze pro-dukten gevormd; daarna worden de coëfficiënten over een positie verschoven en wordt deze werkwijze herhaald. Deze 25 vermenigvuldiging en optelling voor elk van de coëfficiënten die de filterkarakteristiek voorstellen wordt herhaald totdat de hele dataverzameling die de signaalgolfvorm voorstelt geconvolueerd is met alle coëfficiënten die de filterkarakteristiek voorstellen. Tijdens elke doorgang door de 30 verzameling coëfficiënten moeten na elke volgende vermenig-vuldigings- en optelbewerking de adressen van de data en de coëfficiënten in het datageheugen berekend worden. Na elke doorgang door de verzameling coëfficiënten die de filterkarakteristiek voorstellen moet het stelsel terugkeren 35 naar een startadres dat het begin aangeeft van de verzameling coëfficiënten in het datageheugen en naar een startadres I 4 -2- dat het volgende datapunt in de de golfvorm voorstellende verzameling datapunten aangeeft, waarbij de oorspronkelijke wijzer met êën bijgesteld is.
Een bij rijbewerking vaak nagestreefd doel, in het 5 bijzonder bij signaalverwerking, is om de berekening met hoge snelheid uit te voeren. Dit is vooral belangrijk wanneer verwerking in werkelijke tijd gewenst is. Wanneer , zoals in het genoemde voorbeeld, herhaaldelijke doorgangen door verzamelingen datapunten nodig zijn moeten nieuwe adressen voor 10 elke volgende bewerking berekend worden; dat wil zeggen dat ëën of ander mechanisme aanwezig moet zijn voor het bij elke doorgang verhogen van de operandadressen en het opnieuw ini-tialiseren van de wijzers bij het begin van elke doorgang, met inbegrip van verhoging van de waarde naar welke een wij-15 zer geinitialiseerd wordt.
Bij bekende microprocessorinrichtingen vereist de berekening van het startadres typisch dat de.startadressen en de hoeveelheid waarmee de startadressen verhoogd moeten worden in een geheugen opgeslagen zijn, dat deze waarden steeds . 20 wanneer een nieuw startadres berekend moet worden opgehaald worden, dat wil zeggen voor het opnieuw initialiseren van het actuele adres aan het begin van elke nieuwe doorgang door een verzameling operanden, en dat het nieuwe startadres berekend wordt. Deze werkwijze wordt verzorgd door een reeks 25 programmastappen, dat wil zeggen instructies. Inrichtingen die op deze wijze werken zijn bijvoorbeeld de door "Texas Instruments Corp." vervaardigde TMS 320 microprocessor, de door "Fairchild, Inc." vervaardigde F9445 microprocessor en de door "Radio Corporation of America" vervaardigde ATMAC 30 microprocessor. Deze programmastappen vereisen beheershandelingen die de voor een rijbewerking benodigde tijdsduur vergroten.
Het is daarom gewenst om een mechanisme te verschaffen dat geschikt is voor het volgen van startadressen en actuele 35 adressen, het berekenen van nieuwe adressen wanneer de rij-behandelingsbewerking door de dataverzamelingen gaat, en het berekenen van nieuwe startadressen bij elke doorgang door een rekencyclus tegelijk met de bewerking van de geadresseerde operanden voor het maximaliseren van de snelheid van rij-40 behandelingsbewerkingen.
35 0 0 63 3 -3-
De behoefte aan het elimineren van beheerstijd die meestal benut werd voor het berekenen van nieuwe adressen en het opnieuw initialiseren van wijzers wordt volgens de uitvinding opgelost door te voorzien in een stelselarchitec-5 . tuur die een traditioneel programmatuurfunktie vervangt. Er is voorzien in een eerste verzameling adresregisters voor het opslaan van de wijzers naar de startadressen van de dataverzamelingen. Er is voorzien in een tweede verzameling adres-registers voor het opslaan van de actuele adressen behorend 10 bij deze data en er is voorzien in een derde verzameling registers voor het opslaan van de pagina en het geheugen waarvoor deze adressen optreden. De naar het datageheugen gevoerde adres is een combinatie van de uitvoer van de pagi-naregisters en de uitvoer van de eerste of de tweede adres-15 registers.
Aanvankelijk levert de eerste verzameling registers, samen met het paginaregister, de startadressen aan het datageheugen. Tegelijk worden de startadressen in de eerste verzameling registers met een bepaalde hoeveelheid gewijzigd 20 en terug opgeslagen in de tweede en eventueel in de eerste verzameling registers. Dit vernieuwt niet alleen de eerste verzameling registers naar de startadressen voor de volgende lus, maar vehoogt de adressen in de tweede verzameling registers naar de tweede stap van de lus. Daarna, wanneer het 25 stelsel door een berekening stapt, wordt het tweede register bij elke volgende stap gewijzigd. Na beëindiging van een doorgang door een berekeningslus levert de eerste verzameling registers weer de startadressen, die ook weer vernieuwd worden en gaat de tweede verzameling registers door als hiervoor. 30 Dit doet zich voor totdat de hele behandeling gereed is.
Het vernieuwen wordt verzorgd door middel van combinatorische logica die de uitvoer opneemt van een van de eerste, tweede of derde verzamelingen registers en combineert het in een rekenkundige logische eenheid volgens een vooraf-35 bepaalde funktie met een voorafbepaalde waarde. Het resultaat wordt terug opgeslagen in het resp. register. Een geselecteerde waarde kan gebruikt worden voor het veranderen van de uitvoeren en het leveren van het genoemde resultaat. Het adresseren van het datageheugen, de berekening van de nieuwe 40 adressen, het laden van de nieuwe adressen in de adresregis- aoaSo -4- ters treedt op binnen een instructieverwerkingscyclus van de dataverwerkingsinrichting.
Het hoofddoel van de uitvinding is daarom een nieuw data-berekeningsstelsel te verschaffen voor toepassing in een 5 dataverwerkingsinrichting.
Een ander doel van de uitvinding is te voorzien in een adresberekeningsstelsel waarin het startadres van een bere-keningslus automatisch opnieuw geïnitialiseerd kan worden.
Nog een ander doel van de uitvinding is te voorzien 10 in een adresberekeningsstelsel waarin data gehaald kan worden en startadressen vernieuwd kunnen worden tegelijk met een berekeningsbewerking op de vorige dataoperand.
De uitvinding wordt toegelicht aan de hand van de tekening. In de tekening toont: 15 Fig. 1 voorbeeldverzamelingen van datapunten en coëf ficiënten voor gebruik in een rijbehandelingsberekening;
Fig. 2 een algemeen voorbeeld van een gedeelte van een rijbehandelingsarchitectuur waarbij het adresberekeningsstelsel volgens de uitvinding toegepast kan worden; 20 Fig. 3 een blokschema van een voorkeursuitvoeringsvorm . van het adresberekeningsstelsel volgens de uitvinding.
In fig. 1 stellen de datapunten D1-D12 een bemonsterde signaalgolfvorm voor die bewerkt moet worden door middel van de door de'coëfficiënten C1-C6 voorgestelde funktie Deze 25 verzamelingen datapunten en coëfficiënten stellen te verwerken rijen voor en komen overeen met een geheugen 10 van een in fig. 2 getoond algemeen stelsel opgeslagen waarden, waarbij elke waarde een resp. geheugenadres heeft. Bij een
Ik typische toepassing zal de datareeks met de coëfficiënten-30 reeks geconvoceerd worden. Daarom moeten Dl-Cl uit het geheugen gehaald worden gebaseerd op door de adreseenheid 14 geleverde adressen en moeten vermenigvuldigd worden in de rekeneenheid 12 die het resultaat zal bewaren. Daarna worden D2 en C2 gehaald en vermenigvuldigd enz. tot D6 en C6 gehaald 35 en vermenigvuldigd worden,waarbij de resp. produkten gesommeerd worden. Het uiteindelijke totaal zal typisch, maar niet noodzakelijk, in een geheugen bewaard worden. Daarna wordt dezelfde sequentie herhaald, beginnend met het tweede datapunt in de datareeks? dat wil zeggen dat D2 vermenigvuldigd 40 wordt met Cl, D3 en C2 enz. totdat D7 vermenigvuldigd wordt 8 0 -J ”J J -J 0 -5- met C6. De werkwijze zou weer even vaak herhaald worden als nodig voor het vermenigvuldigen van een voorafbepaald aantal datapunten met alle coëfficiënten.
De werkwijze van het vermenigvuldigen van de datapun-5 ten met resp. coëfficiënten en sommeren van de produkten omvat een serie herhaaldelijk/ dat wil zeggen in een lus, uit te voeren stappen. Tijdens elke doorgang door de lus moet de adreseenheid aan het datageheugen de adressen van de te vermenigvuldigen actuele data- en coëfficiëntwaarden leveren.
10 Deze adressen moeten dus voor elke ophaling, vermenigvuldiging en optelbewerking gewijzigd worden. Bij het begin van elke achtereenvolgende doorgang door de lus moet de adres-eenheid de adressen aariwijzen van de startcoëfficiënt en het nieuwe startdatapunt. Hoewel dit voorbeeld van rijbehan-15 deling genoemd is als middel ter toelichting van de uitvinding moet het duidelijk zijn dat veel andere rijbehandelings-algorithmen herhaaldelijk stappen vereist door één of meer reeksen adressen, overeenkomend met datarijen, die starten met één of meer nieuwe adressen bij elke opeenvolgende serie 20 bewerkingen, en dat de uitvinding op veel van dergelijke algorithmen toepasbaar is.
Bij het in fig.2 getoonde algemene stelsel vindt de berekening van adressen in de adreseenheid 14 plaats in de tijd die de rekeneenheid 12 nodig heeft voor het be-25 eindigen van een rekenbewerking, dat wil zeggen binnen een operationele instructiecyclus van de dataverwerkingsinrichting. In het genoemde voorbeeld wordt, terwijl een datapunt en een coëfficiënt vermenigvuldigd worden, het adres voor het volgende datapunt naar het geheugen gezonden en wordt 30 het adres voor het volgende datapunt door de adreseenheid berekend. Terwijl het produkt bij het vorige produkt opgeteld wordt, wordt het adres voor de volgende coëfficiënt naar het geheugen gezonden en wordt het adres voor de volgende coëfficiënt berekend. Dit veronderstelt dat het data-35 geheugen haar inhoud automatisch aan de rekeneenheid levert bij ontvangst van een adres en dat de rekeneenheid registers omvat voor het tijdelijk opslaan van operanden, zoals op dit gebied van de techniek algemeen bekend is. Er wordt ook op gewezen, dat het adresberekeningsstelsel volgens de uitvin- 40 ding gebruikt kan worden voor een scala van verschillende ** λ 'i Ct C- / 0 V »* 1 -6- processorarchitecturen; het verdient echter de voorkeur dat voorzien wordt in afzonderlijke data- en programma-instruc-tiegeheugens en dat de programma-instructieketens, de rekeneenheid, en de adreseenheid alle tegelijk en onafhankelijk 5 werken voor maximale benutting van de voordelen van de uitvinding.
Fig. 3 toont een voorkeursuitvoeringsvorm van het adresbérekeningsstelsel volgens de uitvinding, waarbij het startadres van elke binnen te treden dataverzameling opgesla-10 gen is in een eerste adresgeheugen ("ARA" )-16, dat bij voorkeur in werkelijkheid een verzameling opslagregisters is voor het opslaan van de startadressen van resp. verzamelingen datarijen. De actuele data-adressen worden opgeslagen in een tweede adresgeheugen ("ARB") 18, dat bij voorkeur ook 15 een verzameling opslagregisters is voor het opslaan van actuele adressen. De in ARA 16 en ARB 18 opgeslagen adressen worden via ingangspoorten 20 resp. 22 gevoed uit een bron voor nieuwe of vernieuwde adressen.
Wanneer data in"pagina's" in een geheugen opgeslagen 20 wordt, is het stelsel bij voorkeur ook voorzien van een pa-gina-adresgeheugen ("PR") 24 voor het vasthouden van de meest significante bits van het naar het datageheugen te zenden adres, waarbij de ARA en ARB de minst significante bits van hun resp. adressen vasthouden. Net als de ARA en de ARB om-25 vat de PR 24 bij voorkeur een aantal registers voor het op- . slaan van gedeelten van adressen die pagina's voorstellen waarin resp. rijdata opgeslagen is. Net als de ARA en ARB ontvangt de PR haar adresbits uit een bron voor nieuwe of vernieuwde adressen aan een ingangspoort 26. Het bepaalde 30 register in de ARA, ARB en PR waaruit of waarnaar tijdens een bepaalde bewerking een adres gevoerd wordt, wordt gevoed door een registerindexinvoer 28, dat een deel is van de process orinstructiecode, die geleverd wordt door programmain-structieketens met elke geschikte uitvoering (niet getoond).
35 Het naar het datageheugen aan de uitgang 30 gevoerde adres is een combinatie van de uitvoer 32 van PR 24 en de uitvoer 34 van een adresmultiplexer 36 initieel kiest de multiplexer 36 als uitvoer de uitvoer .38 van de ARA 16. Daarna kiest de multiplexer 36 de uitvoer 40 van de ARB 18, dat wil zeggen 40 totdat een serie stappen, of lus, beëndigd is. Op het^-zelfde o r> n £ a ?
yy ϋ υ DöO
-7- « .» moment als de uitvoer van de ARA naar de multiplexer 36 gevoerd wordt kan het gewijzigd worden, dat wil zeggen vernieuwd en via de ingangspoort 20 terug in het korresponde-rende register van.de ARA geplaatst worden. Overeenkomstig, 5 wanneer de uitvoer van de ARB naar de adresmultiplexer 36 gevoerd wordt, kan het ook vernieuwd worden, waarbij het resultaat via de ingangspoort 22 terug in het korresponde-rende register van de ARB geplaatst wordt. Het is van bijzonder belang dat wanneer de uitvoer van de ARA van het data-10 geheugen geleverd en vernieuwd is, het vernieuwde adres niet alleen in de ARA geladen wordt maar ook de ARB, waarbij de ARB vooruit gebracht wordt. Typisch worden de adressen eenvoudig met één verhoogd; zij kunnen echter met een grotere waarde verhoogd of verlaagd worden of zij kunnen helemaal 15 niet gewijzigd worden. Voor elk geval wordt het mechanisme voor het wijzigen van die waarden hierna toegelicht.
De uitvoer 38 van de ARA 16 wordt naar een eerste tussenmultiplexer 44 gevoerd, die ook als invoeren een verzameling nullen van een invoer 46 ontvangt, een verzame-20 ling enen van de ingang 48, de uitvoer 50 (typisch een ver-schuivingswaarde) van een x-register 52 en de uitvoer 54 van een y-register 56. Een andere tussenmultiplexer 58 ontvangt als invoeren de uitvoer 40 van de ARB 18, de uitvoer 32 van de PR 24, een verzameling nullen van de invoer 60, 25 en de uitvoer 50 van een x-register 52. Een logische rekeneenheid ("ALU") 62, die geschikt is voor het selectief uitvoeren van rekenkundige of logische bewerkingen, wordt voorzien van twee invoeren, dat wil zeggen de uitvoer 64 van de eerste tussenmultiplexer 44 en de uitvoer 66 van de tweede 30 tussenmultiplexer 58. Deze twee invoeren naar de ALU 62 worden door de ALU gecombineerd ter verkrijging van een resulterende uitvoer 68.
De uitvoer 68 van de ALU 62 wordt naar een andere multiplexer 70 gevoerd, waarvan de uitgang invoeren levert aan 35 de ARA 16, de ARB 18, de PR 24, het x-register 52, en het y-register 56. De uitvoer van de multiplexer 70 kan dus gebruikt worden voor het vernieuwen van de adressen in de ARA, ARB, en PR en voor het wijzigen van de waarden in de x- en y-registers. Zo kan bijvoorbeeld de uitvoer van de ARA 16 door 40 de multiplexer 44 gekozen worden voor invoer naar de ALU 62 <5 : ' Λ .* 2
t « „ · . j % J
-8- samen met de waarde van een van de door de multiplexer 58 gekozen invoeren, zodat de twee waarden door de ALU logisch of rekenkundig bewerkt kunnen worden voor het leveren van een nieuwe waarde aan de uitgang 68. Een startadres in de 5 ARA kan met één verhoogd worden door het plaatsen van een één in het x-register 52 en het kiezen daarvan als invoer van de multiplexer 58 voor optelling bij de waarde in een gekozen register van de ARA. De uitvoer van de ALU 62 zou de waarde in het gekozen register van de ARA plus één 10 voorstellen. De waarde van ARA plus één wordt door de multiplexer 70 gekozen en terug in het gekozen register van de ARA opgeslagen, waarbij dat register van de ARA met één verhoogd wordt. Het wordt ook naar de ingangspoort 22 van de ARB gezonden voor vervanging van het korresponderende 15 actuele adres daarin met verhoging van het actuele adres korresponderend met de verzameling data waarvoor het startadres vernieuwd werd. In het convolutievoorbeeld hierboven komt dit neer op verschuiving van het startadres van de da-tarij met één datapunt en het verhogen van het actuele adres 20 van de datarij naar de tweede stap van een nieuwe lus.
Overeenkomstig kan steeds wanneer een adres naar het datageheugen uit een gekozen register van de ARB 18 gezonden wordt dit ook via de tussenmultiplexer 58 naar de ALU 62 gezonden worden. Tegelijk kan door de tussenmultiplexer 25 44 een getal gekozen worden, bijvoorbeeld uit het x-register voor optelling bij en verhoging van het adres, waarbij het resultaat terug in het gekozen register van de ARB opgeslagen wordt. In het convolutie-voorbeeld komt dit neer op het naar een nieuw datapunt of nieuwe coëfficiënt doorstappen.
30 Het x-register 52 dient dus voor het leveren van een hoeveelheid waarmee de waarden in de ARA 16, ARB 18, of PR 24 8 veranderd kunnen worden. Het y-register 56 kan al$&ter-natief gebruikt worden voor het leveren van een waarde voor het wijzigen van de waarden in het ARB 18 of het PR 24. Deze 35 x- en y-registers worden via de multiplexer 70 uit een register 72 geladen, waarbij de in de x- en y-registers te laden waarden afkomstig zijn van andere rekeneenheden, zoals tot rekenen in staat zijnde eenheden zoals de genoemde in-structieketens, in complete dataverwerkingsinrichtingen.
40 Het x-register kan bijvoorbeeld geladen worden met een waarde
O 'J w ü ö J
-9- waarmee een register in het ARA verhoogd moet worden voor nieuwe initialisatie van het startadres van een rij aan het begin van een lus, terwijl het y-register geladen zou kunnen worden met een andere waarde waarmee een register in het 5 ARB verhoogd moet worden bij berekening van het actuele adres van een andere rij tijdens een doorgang door een lus.
De uitvoer 68 van de ALU kan ook via een buffer 74 op de registerbus 72 geplaatst worden voor gebruik door andere tot rekenen in staat zijnde eenheden in de inrich-10 ting. Onder bepaalde omstandigheden kan het gewenst zijn om te bepalen wanneer een herberekend adres nul is, wat direkt van de ALü uitvoer 68 gedetecteerd kan worden. Er moet opgemerkt worden, dat de genoemde funktionele eigenschappen van de adresberekeningseenheid bijbehorende besturingslogica 15 (niet getoond) omvat. Het ontwerp en de vervaardiging van specifieke ketens voor het realiseren van de toegelichte stelselarchitectuur met bijbehorende besturingslogica is op het onderhavige gebied van de techniek bekend en er is voor de uitvinding geen bijzonder ontwerp nodig behalve dat 20 combinatorische logica gebruikt moet worden zodat uitvoer van een adres en herberekening van dat adres voor presentatie aan de ingangen van de ARA, ARB, en PR alle in één stap optreden en opslag van het resultaat in de ARA, ARB, PR in een tweede stap optreedt. De presentatie van adressen aan 25 het datageheugen en het vernieuwen van deze adressen kan daardoor verzorgd worden in een enkele operationele instruc-tiecyclus van de dataverwerkingsinrichting, dat wil zeggen de door de rekeneenheid vereiste periode voor het geheel afhandelen van een enkele operationele instructie. Meestal 30 houdt dit in het uit een opslaglocatie, zoals een tijdelijk opslagregister binnen de rekeneenheid, nemen van een operand, het uitvoeren van een bewerking op die operand en het opbergen van het resultaat.
-conclusies-35 - * λ £ λ -=7 v y v 0

Claims (8)

1. Adresberekeningsstelsel voor een dataverwerkingsinrichting met een datageheugen en middelen voor het uitvoeren van een operationele instructie gedurende een instruc-tiecyclus gekenmerkt door: 5 a) eerste adresregistermiddelen voor het opslaan van een aan het datageheugen te leveren bepaald deel van een data-adres, b) tweede adresregistermiddelen voor het opslaan van een aan het datageheugen te leveren bepaald deel van een 10 data-adres, c) uitvoermultiplexmiddelen, die reageren op de eerste en tweede adresregistermiddelen en op een operationele instructie, voor het selectief aan het datageheugen leveren van een in de eerste adresregistermiddelen opgeslagen adres- 15 deel of een in de tweede adresregistermiddelen opgeslagen adresdeel, en d) logische vernieuwingsmiddelen, die reageren op de eerste adresregistermiddelen en een operationele instructie voor het wijzigen van een in de eerste adresregistermiddelen 20 opgeslagen adresdeel met een bepaalde hoeveelheid wanneer het naar het datageheugen gevoerd wordt en het in zowel de eerste als tweede adresregistermiddelen laden van het gewijzigde data-dresdeel voor opslag daarin, waarbij het wijzigen en laden optreden binnen één instructiecyclus van de data- 25 verwerkingsinrichting.
2. Stelsel volgens conclusie 1, m e t het ken merk, dat de in de eerste en de tweede adresregistermiddelen opgeslagen data-adresdelen een bepaald aantal van de minst significante bits van de respektievelijke binaire 30 adressen omvatten, waarbij het stelsel tevens voorzien is van derde adresregistermiddelen voor het opslaan van de overblijvende bits van de binaire adressen en middelen die reageren op de derde registermiddelen en de uitvoer multiplex-middelen voor het aan het datageheugen leveren van een 35 compleet binair adres.
3. Stelsel volgens conclusie 1, m e t het ken merk, dat de logische vernieuwingseenheid middelen omvat 3500583 -11- voor liet met een bepaalde hoeveelheid wijzigen van een data-adresdeel in de tweede adresregistermiddelen.
4. Stelsel volgens conclusie 1, m e t het kenmerk/ dat de logische vernieuwingseenheid uitgevoerd is 5 met logische rekenmiddelen voor het selectief uitwerken van rekenkundige of logische bewerkingen op elk of beide van twee ingangsoperanden en het leveren van een resultaat/ eerste tussenmultiplexmiddelen voor het aan de logische rekenmiddelen als een operandinvoer leveren van een data-adres- 10 deel uit de eerste adresregistermiddelen, middelen voor het aan de logische rekenmiddelen als een tweede operandinvoer leveren van een voorafbepaalde waarde, en middelen voor het opslaan van het resultaat in één of beide van de adresregistermiddelen.
5. Stelsel volgens conclusie 4,met het ken merk, dat de middelen voor het leveren van een voorafbepaalde waarde uitgevoerd zijn met verschuivingsregister-middelen voor het opslaan van de bepaalde waarde en tweede tussenmultiplexmiddelen voor het als invoeroperand naar de 20 logische rekenmiddelen kiezen van de in de verschuivings-registermiddelen opgeslagen waarde.
6. Stelsel volgens conclusie 5,met het ken merk, dat de tweede tussenmultiplexmiddelen reageren op de tweede adresregistermiddelen voor het als invoer naar de 25 logische rekenmiddelen kiezen van een in de tweede adresregistermiddelen opgeslagen data-adresdeel, en de eerste tussenmultiplexmiddelen reageren op de verschuivingsregis-termiddelen voor het als invoer naar de logische rekenmiddelen kiezen van de in de verschuivingsregistermiddelen opge- 30 slagen waarde.
7. Stelsel volgens conclusie l,met het ken merk, dat de eerste en de tweede adresregistermiddelen elk voorzien zijn van een aantal opslagregisters en middelen voor het selectief opslaan in deze opslagregisters of 35 het daaruit lezen van een adresdeel.
8. Stelsel volgens conclusie 7,met het ken merk, dat de in de eerste en het tweede adresregistermiddelen opgesiagen data-adresdelen een bepaald aantal minst significante bits van resp. binaire adressen omvatten, 40 waarbij het stelsel tevens voorzien is van een derde groep 2: ' ' ' ·' 3 *· „ m -12- ops lagregisters voor het opslaan van de overblijvende bits van de binaire adressen, middelen voor het selectief opslaan in de derde opslagregisters of het daaruit lezen, en middelen die reageren op de derde opslagregisters en de uitvoer-5 multiplexmiddelen voor het leveren van een compleet binair adres aan het datageheugen. Λ (j O 9 ö J
NL8500683A 1984-08-15 1985-03-11 Adresberekeningsstelsel voor een digitale verwerkingsinrichting. NL8500683A (nl)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/641,098 US4704680A (en) 1984-08-15 1984-08-15 Address computation system for updating starting addresses of data arrays in an array processor within an instruction cycle
US64109884 1984-08-15

Publications (1)

Publication Number Publication Date
NL8500683A true NL8500683A (nl) 1986-03-03

Family

ID=24570924

Family Applications (1)

Application Number Title Priority Date Filing Date
NL8500683A NL8500683A (nl) 1984-08-15 1985-03-11 Adresberekeningsstelsel voor een digitale verwerkingsinrichting.

Country Status (7)

Country Link
US (1) US4704680A (nl)
JP (1) JPS6160133A (nl)
CA (1) CA1223664A (nl)
DE (1) DE3507584A1 (nl)
FR (1) FR2569288B1 (nl)
GB (1) GB2163280B (nl)
NL (1) NL8500683A (nl)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3619036A1 (de) * 1986-06-06 1987-12-10 Wajda Eligiusz Dipl Ing Verfahren zur steuerung von datenverarbeitenden einrichtungen
US5050070A (en) * 1988-02-29 1991-09-17 Convex Computer Corporation Multi-processor computer system having self-allocating processors
US5159686A (en) * 1988-02-29 1992-10-27 Convex Computer Corporation Multi-processor computer system having process-independent communication register addressing
JP2617974B2 (ja) * 1988-03-08 1997-06-11 富士通株式会社 データ処理装置
US5163149A (en) * 1988-11-02 1992-11-10 International Business Machines Corporation Combining switch for reducing accesses to memory and for synchronizing parallel processes
US5265225A (en) * 1990-02-21 1993-11-23 Harris Corporation Digital signal processing address sequencer
US5293596A (en) * 1990-02-21 1994-03-08 Matsushita Electric Industrial Co., Ltd. Multidimensional address generator and a system for controlling the generator
US5832533A (en) * 1995-01-04 1998-11-03 International Business Machines Corporation Method and system for addressing registers in a data processing unit in an indexed addressing mode
US6049858A (en) * 1997-08-27 2000-04-11 Lucent Technologies Inc. Modulo address generator with precomputed comparison and correction terms
US6047364A (en) * 1997-08-27 2000-04-04 Lucent Technologies Inc. True modulo addressing generator
US5983333A (en) * 1997-08-27 1999-11-09 Lucent Technologies Inc. High speed module address generator
US6529983B1 (en) 1999-11-03 2003-03-04 Cisco Technology, Inc. Group and virtual locking mechanism for inter processor synchronization
US6892237B1 (en) 2000-03-28 2005-05-10 Cisco Technology, Inc. Method and apparatus for high-speed parsing of network messages
US6505269B1 (en) 2000-05-16 2003-01-07 Cisco Technology, Inc. Dynamic addressing mapping to eliminate memory resource contention in a symmetric multiprocessor system
WO2001090888A1 (en) * 2000-05-23 2001-11-29 Theis Jean Paul A data processing system having an address generation unit with hardwired multidimensional memory indexing support

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5852265B2 (ja) * 1977-01-12 1983-11-21 株式会社日立製作所 デ−タ処理装置
US4130868A (en) * 1977-04-12 1978-12-19 International Business Machines Corporation Independently controllable multiple address registers for a data processor
JPS54127653A (en) * 1978-03-28 1979-10-03 Toshiba Corp Data processor
US4365292A (en) * 1979-11-26 1982-12-21 Burroughs Corporation Array processor architecture connection network
US4370732A (en) * 1980-09-15 1983-01-25 Ibm Corporation Skewed matrix address generator
US4439827A (en) * 1981-12-28 1984-03-27 Raytheon Company Dual fetch microsequencer
JPS5965377A (ja) * 1982-10-05 1984-04-13 Nippon Telegr & Teleph Corp <Ntt> アドレス制御方法およびその装置
EP0124799B1 (en) * 1983-04-13 1990-10-31 Nec Corporation Memory access arrangement in a data processing system

Also Published As

Publication number Publication date
CA1223664A (en) 1987-06-30
FR2569288B1 (fr) 1990-12-14
GB8504822D0 (en) 1985-03-27
GB2163280B (en) 1988-06-08
US4704680A (en) 1987-11-03
DE3507584C2 (nl) 1988-10-20
DE3507584A1 (de) 1986-02-27
JPS6160133A (ja) 1986-03-27
JPH0444970B2 (nl) 1992-07-23
GB2163280A (en) 1986-02-19
FR2569288A1 (fr) 1986-02-21

Similar Documents

Publication Publication Date Title
NL8500683A (nl) Adresberekeningsstelsel voor een digitale verwerkingsinrichting.
EP0450803B1 (en) Normalizing floating point processing unit
NL8304186A (nl) Geintegreerde processor voor het verwerken van woordsgewijze ontvangbare informatie.
JPS6347874A (ja) 算術演算装置
JPS6037513B2 (ja) デジタル回路
JPS6256536B2 (nl)
JP2001067206A (ja) モジュラー乗算を実行するためのシステム並びに方法
EP0018298A1 (fr) Procédé pour obtenir un résultat de calcul numérique en représentation au virgule flottante avec le nombre de chiffres significatifs exacts dans ce résultat et dispositif de calcul numérique mettant en oeuvre ce procédé
JPS58146969A (ja) インデツクス限定連続演算ベクトルプロセツサ
JP2617974B2 (ja) データ処理装置
US5602766A (en) Method of and device for forming the sum of a chain of products
US5255213A (en) Apparatus for providing selectable fractional output signals
US5317531A (en) Apparatus for reducing the size of an arithmetic and logic unit necessary to practice non-restore division
US5214599A (en) Advanced dimensional processing with division
US5650952A (en) Circuit arrangement for forming the sum of products
US7278090B2 (en) Correction parameter determination system
NL8103895A (nl) Inrichting voor het beheren van een tussengeheugen bij een massaal datatransport tussen een broninrichting en een bestemmingsinrichting.
RU2159464C1 (ru) Реконфигурируемый асинхронный сумматор-умножитель
JP2989830B2 (ja) ベクトル処理方法
US3609696A (en) Programmed arrangement for serial handling of numerical information
EP0515956A1 (en) Apparatus and method for modulo computation
US4706188A (en) Method and apparatus for reading samples of a time-dependent signal in a data processing system
EP0243189A1 (en) Data storage and transfer apparatus
JPH05120321A (ja) 行列計算の演算方法
FR2509070A1 (fr) Circuit de decalage ne necessitant aucune transformation entre des donnees a multiplets a neuf bits et des donnees a multiplets a huit bits

Legal Events

Date Code Title Description
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
BV The patent application has lapsed