NL7807314A - Inrichting voor het vergroten van de lengte van een logisch computeradres. - Google Patents

Inrichting voor het vergroten van de lengte van een logisch computeradres. Download PDF

Info

Publication number
NL7807314A
NL7807314A NL7807314A NL7807314A NL7807314A NL 7807314 A NL7807314 A NL 7807314A NL 7807314 A NL7807314 A NL 7807314A NL 7807314 A NL7807314 A NL 7807314A NL 7807314 A NL7807314 A NL 7807314A
Authority
NL
Netherlands
Prior art keywords
address
output
register
memory
instruction
Prior art date
Application number
NL7807314A
Other languages
English (en)
Original Assignee
Philips Nv
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 Philips Nv filed Critical Philips Nv
Priority to NL7807314A priority Critical patent/NL7807314A/nl
Priority to DE19792926589 priority patent/DE2926589A1/de
Priority to US06/054,534 priority patent/US4361868A/en
Priority to GB7923052A priority patent/GB2025097B/en
Priority to FR7917634A priority patent/FR2430636B1/fr
Priority to JP54085806A priority patent/JPS5855528B2/ja
Publication of NL7807314A publication Critical patent/NL7807314A/nl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System (AREA)

Description

* Λ ΡΗΝ 9182 N.V. Philips’ Gloeilampenfabrieken te Eindhoven.
Inrichting voor het vergroten van de lengte van een logisch computeradres.
Achtergrond van de uitvinding.
. In algemene zin betreft de uitvinding het adresseren van elementen van een rekenmachinegeheugen.
Voor het uitvoeren van een zogenoemd gebruikersprogramma 5 wordt een computer bestuurd door gebruikersadressen. Deze worden door het programma verschaft voor het besturen van een erin gespecificeerde geheugentoegang. Zo'n adres specificeert een gegevenselement (data item) bijvoorbeeld als een bepaald element van een bepaald gegevensbestand. Zulke 10 adressen zijn logische adressen in die zin dat ze geen relatie hebben met de fysieke organisatie van het geheugen.
Zo'n adres bevat dus een bitstreng van opvolgende signifi-kantieniveau's waarbij de opeenvolgende bits geen verschillende betekenis hebben op grond van electrische, mechani-15 sche of andere eigenschappen van het geheugen. Verder wordt de werking van de computer bestuurd door één of meer in-strukties. Deze hebben een lengte in bits welke gelijk is aan een veelvoud van de standaard woordlengte waarvoor de computer is ontworpen. In enkele gevallen kan de lengte 20 van de instruktie ook gelijk zijn aan de woordlengte. Een voor de uitvinding relevante computer ter referentie is de Philips P856 M minicomputer uit de P800 reeks. Hierbij wordt verwezen naar het handboek "P800 M Interface and Installation Manual" door Philips Data Systems B.V., Apel-25 doorn, Nederland, April 1976» publikatienummer 5122 991 269^2. De instruktieset van deze computer is beschreven in het voor déze reeks toepasselijke boek "P852 M, Program- 7807314 - 2 - ♦ ,.ΡΗΝ. 9182____________________________________________________________________________________________________ _________, mers Guide 1 & 2, Vol. 2, Instruction Set, basic/disk operating System”, Philips Electrologica MMG-OEM September 1974, Apeldoorn, Nederland, publikatienummer 5122 991 11711·
De woordlengte in genoemde computers is 5 zestien bits, terwijl veelal instrukties van zogenaamde dubbele lengte (32 bits) worden gebruikt. Een deel van een instruktie kan worden gebruikt om een bepaald index register binnen een verzameling van index registers te adresseren. Het laden van deze registers vindt plaats via de nor-10 male gegevenskanalen, bijvoorbeeld de interne data BUS van de computer. Daarom is het gebruikelijk dat de lengte van de index registers overeenkomt met de lengte van een com-puterwoord (dus 16 bits in het voorbeeld). De inhoud van een index register kan direkt een fysiek of logisch adres 15 bevatten. In het laatste geval wordt dat logisch adres in een fysiek adres vertaald door middel van een afbeeldings-tabel of mapping table (segment or page table). Anderzijds kan de inhoud van het register met een voorafbepaald deel van de instruktie worden gekombineerd om een adres te vor-20 men. Dit laatste kan dan weer een fysiek of een logisch adres zijn.
Men heeft ondervonden dat in een computersysteem als beschreven de beschikbare woordlengte voor het vormen van logische adressen δ.1 te beperkt is. Het is daar-25 mee namelijk veelal onmogelijk om een voldoende groot aan tal data elementen direkt te adresseren. Aan de andere kant is het overgaan op een grotere woordlengte buitengewoon kostbaar omdat alle hardware en software aan de grotere woordlengte moet worden aangepast.
30 Samenvatting van de uitvinding.
Het is een doelstelling van de uitvinding te verschaffen een vergrote breedte van de logische adressen voor een computer met een voorafbepaalde, kleinere, lengte van het machinewoord, waarbij bestaande programma's 35 die gebaseerd zijn op de kleinere woordlengte niet gewij zigd behoeven te worden zodat voor zulke programma's de 7807314 - 3 - > ν' ΡΗΝ 9182________________________________ ______________________ uitgebreidere adresseermogelijkheid als het ware onzichtbaar zou zijn.
De uitvinding realiseert de doelstelling door een adresgenereerinrichting voor het genereren van 5 fysieke adresgegevens ten gebruike in een machine voor het verwerken van digitale gegevens, bevattende een in-struktieregister met een ingang van een voorafbepaalde bitbreedte voor het ontvangen van een bitreeks in genoemd register om als een instruktie te werken, met het kenmerk, 10 dat genoemd instruktieregister een eerste uitgang heeft voor het doen uitgaan van een operatiekode die in genoemde instruktie bevat is, een tweede uitgang heeft voor het doen uitgaan van een index registeradres voor het adresseren van een gespecificeerd indexregister binnen een in-15 dexregisterbank, en een derde uitgang heeft voor het doen uitgaan van een eerste geheugensubadres, dat het aldus geadresseerde indexregister een vierde uitgang heeft voor het doen uitgaan van een voorafbepaald aantal meer signi-fikante bits erin vervat en een vijfde uitgang voor het 20 doen uitgaan van een voorafbepaald aantal minder signifi- kante bits erin vervat, welke laatste werken als een tweede geheugensubadres, dat de gekombineerde bitbreedte van genoemde vierde en vijfde uitgangen groter is dan genoemde voorafbepaalde bitbreedte, dat kombinatiemiddelen aanwezig 25 zijn waarvan ingangen verbonden zijn met genoemde derde en vijfde uitgangen voor het lineair kombineren van genoemde eerste en tweede geheugensubadres voor het genereren van verdere minder signifikante adresbits welke tesamen met genoemde meer signifikante bits een volledig geheugenadres 30 vormen om geproduceerd te worden op een zesde uitgang van genoemde kombinatiemiddden.
Op déze manier wordt een vergrote adreslengte geproduceerd zonder dat elementen binnen de computer met aparte bitinrichtingen (bit slices) voorzien hoe-35 ven te worden. In het geval een indexregister een lengte heeft die overeenkomt met de lengte van twee machinewoor- 7807314 - 4 - « PHN .9182___________________________________________________________________________________________________________________________________ den vereist het vullen over de gehele lengte ervan twee machinecycli. In de meeste gevallen kan men volstaan met het laden van het minder signifikante deel ervan ter lengte van een enkel machinewoord. Immers, gedurende het uit-5 voeren van grote delen van een programma kan het meer sig nifikante deel van de inhoud van het indexre gaster ongewijzigd blijven; slechts nu en dan zal het gehele index-register gevuld moeten worden. Het indexregister zal veelal als een fysiek register met flipflops aanwezig zijn. Het 10 is ook mogelijk dat de indexregisters tesamen een vooraf bepaald opslaggebied binnen een geheugen vormen, bijvoorbeeld een deel daarvan. Het vormen van een lineaire kombi-natie van eerste en tweede geheugensubadres kan op verschillende manieren gebeuren. Een voordelige manier is dat 15 ze bij elkaar worden opgeteld. Een andere voordelige manier is het aaneenschakelen (concatenating). Dit laatste wordt gerealiseerd door een bitsgewijze inclusief-OF-funktie te vormen waarbij als beperkende voorwaarde geldt dat overeenkomstige bitposities niet beide een logische ”1” mogen 20 bevatten: als dus één der te aaneenschakelen bitreeksen op een bepaalde positie een signifikante informatiebit bevat (die δ. priori dus de waarde "O" of M1n hebben kan) moet de andere van die twee bitreeksen op die positie beslist een logische "0" bevatten. In het algemeen kunnen in het voor-25 gaande de waarden van logische ”0” en "1" worden verwisseld onder overeenkomstige aanpassing van de lógische funktie.
De gekombineerde breedte van genoemde vierde en vijfde uitgangen is daarmee beschikbaar voor een gebruikerspro-gramma dat in de rekenmachine wordt uitgevoerd en dat 30 daarmee een vergrote adresruimte krijgt. De voordelen van zo’n vergrote adresruimte zijn de mogelijkheid tot het uitvoeren van programma's met gekompliceerde struktuur en de adresseerbaarheid van grotere bestanden van gegevens.
Verdere aspekten van de uitvinding.
35 Het is gunstig als genoemde tweede bit breedte ligt tussen () 1-J- en (^) 1·$· maal genoemde eerste 78 0 7 3 1 4 ’ * -5 - V' PHN.9182_____________________________________________________________________________________________________________ bitbreedte. Enerzijds levert dit een aanmerkelijk vergrote lengte voor het logische adres. Anderzijds blijft het aantal toe te voegen onderdelen beperkt. In het later bespreken uitvoeringsvoorbeeld is genoemde verhouding Ander- 5 zijds kan in bepaalde gevallen een grotere verhouding voor delig zijn, zoals 2:1 of zelfs nog groter.
Het is gunstig als genoemde vierde uitgang verbonden is met een. adresingang van een segmenttabel-inrichting welke bevat een aantal regpektievelijke opslag-10 posities elk voor het opnemen van een segment-basis-identi-fikatie, en bevat een zevende uitgang voor het doen uitgaan van een geadresseerde segmentbasis identifikatie, dat genoemde zevende uitgang een bitbreedte heeft die tenminste even groot is als genoemde eerste bitbreedte, en dat ge-15 noemde zesde en zevende uitgangen verbonden zijn met ingangen van uitgangsoptelmiddelen voor het produceren van een absoluut adres op een achtste uitgang van genoemde uitgangsoptelmiddelen. Zo'n segmentbasis-identifikatie is altijd een adres. Op deze manier wordt de uitbreiding van de 20 lengte van het logische adres op voordelige manier gebruikt bij een adres-segmenteringsorganisatie. Eventueel is het toepassen van de uitvindingsgedachte als eerder vermeld ook mogelijk als de uitgangsoptelmiddelen een kleinere bitbreedte hebben dan genoemde eerste bitbreedte. Zeer voor-25 delig evenwel is het als de bitbreedte van genoemde zeven de uitgang ligt tussen fe) 1 en (^) 1y maal genoemde eerste bitbreedte. In het later te bespreken voorbeeld is de verhouding 1-£, waardoor een gunstige balans bestaat tussen de extra toevoegingen aan de apparatuur en de daardoor ver-30 grote mogelijkheden.
Het is gunstig als genoemde opslagposities voorts een opslagkapaciteit bezitten voor een segmentboven-grensidentifikatie en dat de segmenttabel een negende uitgang bezit voor het doen uitgaan van een segmentbovengrens-35 identifikatie bij een deze bevattende opslagpositie daar van. Zo worden voordelige middelen verschaft voor het be- 7807314 «r 6 PHN 9182 werken van een geheugenprotektie om te voorkomen dat door een onjuiste programmering een overflow ontstaat buiten de grenzen van een segment. In zijn meest uitgebreide vorm bestaat de uitvinding dus uit het tweemaal achtereen adres-5 seren van een specifiek geheugendeel, beide malen gevolgd door het vormen van een lineaire combinatie tussen twee uitgelezen deelgrootheden.
Korte beschrijving van de figuren.
De uitvinding wordt nader geadstrueerd 10 aan de hand van de volgende figuren.
Fig. 1 geeft een registerbank te gebruiken als een indexregisterbank.
Fig, 2 geeft de opbouw van enkele bekende instrukties.
15 Fig. 3 geeft een voorbeeld van een adresseringsorganisatie.
Fig. h geeft een aanbouwinrichting voor het gebruik bij de uitvinding.
Fig. 5 geeft een uitbreidingsinrichting 20 te gebruiken bij de uitvinding.
Fig, 6 geeft een tijdsdiagram bij fig, 3.
Uitgebreide beschrijving van de uitvinding, 25 Voor beter begrip van de uitvinding wordt eerst gerefereerd asm het begrip "virtueel geheugen". Een voorbeeld van een organisatie met een virtueel geheugen vindt men bij de combinatie vein een snel voorgrondge-heugen met een relatief kleine capaciteit teseunen met een 30 langzamer achtergrondgeheugen van grotere kapaciteit. Al naar gelang de verhoudingen der snelheden en der kapaci-teiten en de correlatie binnen een reeks achtereenvolgens door de gebruikersinrichting (bijvoorbeeld de centrale processor) gegenereerde adressen is de ogenschijnlijke 35 kapaciteit gelijk aan die van het grote achtergrondgeheugen terwijl de snelheid die van het voorgrondgeheugen benade- 7807314 * 7 PHN 9182 ren kan. In dit geval kan het achtergrondgeheugen beschouwd worden als een "virtueel" geheugens hoewel het niet direkt toegankelijk is, gedraagt de hele organisatie van gebruikersinrichting plus geheugen zich als of dit wèl 5 het geval is.
Aan de andere kant kan men ook een "transparant" geheugen definiëren. In tegenstelling tot het geval hierboven gedraagt de organisatie van gebruikersinrichting plus geheugen zich als of het transparante geheu-10 gen juist niet aanwezig is. De lengte van het logische adres in een rekenmachine bepaalt het aantal verschillende geheugenposities (bijvoorbeeld geheugenwoorden) met dit adres bereikt kunnen worden. Als de lengte van het logisch adres korter is dan overeenkomt met de fysieke afmetingen 15 van het geheugen dan is een gedeelte daarvan dus niet zon der meer adresseerbaar. Het afbeelden vein de logische adressen op de fysische adressen gebeurt met behulp van een af-beeldingsmechanisme (mapping), hetgeen bestuurd wordt door het "supervisie"-programma (operating systeem) en niet 20 door het gebruikersprogramma. Het niet adresseerbare ge heugen is als het ware "transparant". Met name in het laatste geval is het voordelig een logisch adres van grotere lengte te creëren omdat de adresseringsmogelijkheden daardoor direkt worden vergroot. Ook in het eerste geval 25 kan van een verlengd adres een gunstig effekt uitgaan.
In dit verband geeft Fig. 1 een index-registerbank. De fysieke realisatie (flipflopregisters, specifiek deel van het machinegeheugen, lees-schrijfbaar deel van het besturingsgeheugen) is op het systeemniveau 30 van de uitvinding niet relevant. Indexregisters zijn op zichzelf in de techniek van digitale rekenmachines wèlbe-kend en zijn ook in de rekenmachinereeks Philips P850 geïmplementeerd. De aansluiting tussen het instruktieformaat en de adresseringsorganisatie zal worden besproken aan de 35 hand van fig. 2, 3· Volgens de uitvinding wordt aan de programmeur, respektievelijk het programma, een logische * 7807314 8
V
> PHN 9182 adresruimte ter beschikking gesteld van adressen. Be kende logische adresorganisaties in de gerefereerde reken-machinereeks hebben een adresbreedte van N=16 bits of 64k adressen het dikwijls te krap is. Volgens het hiernavol-5 gende voorbeeld is M=8 zodat A-M geheugenplaatsen adresseer- baar zouden kunnen zijn. Andere geschikte waarden zouden kunnen zijn M=4, M=12, M=16, en in voorkomende gevallen kan ook een waarde M=16 worden gekozen. Steeds echter blijft de struktuur van de rekenmachine waaraan de uit-10 breiding is toegevoegd onveranderd gebaseerd op een adres lengte van N (hier dus 16 bits). Daardoor zijn programma's die voor de oorspronkelijke adreslengte zijn geschreven ongemodificeerd bruikbaar,
Registerbank 100 nu bevat een eerste 15 deelregister 101, dat als minst signifikant deel (tail) is aangegeven. Dit deel met een breedte van N bits wordt op precies dezelfde manier gebruikt als de computer zonder de uitbreiding bij het uitvoeren van instrukties die operan-den uit de registers bewerken. Het tweede registerdeel 102 20 is als meer signifikant deel (head) aangegeven met een breedte van M bits en wordt in twee specifieke situaties gebruikt. De eerste situatie treedt op als de geheugentoegang wordt geëffektueerd waarbij een register gebruikt wordt als indexregister of "baseM-register, dat wil zeggen 25 als een vorm van relatieve adressering wordt gebruikt. Dan wordt een leesoperatie uitgevoerd met betrekking tot de gehele breedte van registerbank 100. Dit wordt aan de hand van fig. 3 nader uitgelegd. De tweede situatie waarin registerdeel 102 optreedt als een specifieke (nieuwe) instruk-30 tie wordt uitgevoerd waardoor het laden of opslaan (load or store) van het registerdeel 102 wordt bestuurd. In het algemeen is deze instruktie niet aanwezig in de conventionele instruktieverzameling en het formaat ervan zal dan ook aan de hand van fig. 2 worden uiteengezet. De additio-33 nele M adresbits in de kop (head) van registerbankdeel 102 kunnen de meer signifikante adresbits van een fysiek of 7807314 β 9 ΡΗΝ 9182 virtueel adres verschaffen. Een virtueel adres wordt daardoor gekenmerkt, dat het aantal vormbare logische adressen groter is dan het aantal fysiek aanwezige adresplaatsen.
Aan de andere kant kunnen de additionele adresbits een seg-5 mentnummer verschaffen ten gebruike in een dan volgende vertaling van het gesegmenteerde (en dus virtuele) adres in een fysiek adres. Het blijkt dat het verschil tussen beide gevallen is dat in het laatste geval het niet nodig is om een overdrachtsuitgangssignaal mogelijk te maken van het 10 N bits brede gedeelte naar het M bits brede gedeelte van het register. ,
Fig, 2 geeft voor de gerefereerde computer enkele instruktieformaten, De eerste regel geeft een zogenaamde "formaat 0" instruktie, hetgeen wordt gesigna-15 leerd doordat instruktiebit 0 steeds de logische waarde "0" bezit, Instruktiebits 1 tot en met 4 bevatten een vierbits op(eratie)code. Instruktiebits 5-7 kunnen een adres bevatten van een zogenaamd "kladblok” (scratch pad) register, Instruktiebits 8-15 kunnen bijvoorbeeld bevatten een acht-20 bits positief constante grootheid, het adres van een rand- apparaat (in geval het een i/O of ingangs/uitgangsinstruk-tie betreft) plus specifieke funktiebits, of wel een vaste parametergrootheid,
De tweede en derde regel geven tesamen 25 een zogenaamde "formaat 1” instruktie voor het uitvoeren van een aantal bewerkingen middels referentie aan twee van de zestien registers die voor toegang door een gebruikers-programma beschikbaar zijn. Een van deze registers kan een aanwijsinformatie bevatten naar een woordplaats in het 30 hoofdgeheugen omdat die woordplaats als een indexregister te gebruiken is, In dit geval wordt het formaat van de instruktie aangegeven doordat instruktiebit 0 steeds de logische waarde "1" bezit, In dit geval bevatten instruktiebits 1-¾ weer een vierbits operatiekode. Instruktiebits 35 5-8 bevatten het adres van een kladblokregister zodat nu zestien registers adresseerbaar zijn in plaats van slechts 7807314 '< 10 > PHN 9182 acht, Instruktiebits 9-10 bevatten de kode die aangeeft welke soort van adresseren wordt gebruikt. Deze bits geven aan hoe het adres voor de te gebruiken operand moet worden berekend. Instruktiebits 11-14 kunnen het adres van een 5 kladblokregister bevatten op overeenkomstige wijze als besproken voor instruktiebits 5-8. Instruktiebit 15 bevat een indikator "laden-*opslaan" (load-store) die in bepaalde in-strukties wordt gebruikt om asm te geven dat het resultaat van de bewerking hetzij opgeslagen moet worden in het regis-10 ter dat door instruktiebits 5-8 wordt aangegeven, of anderzijds in een woordplaats van het hoofdgeheugen· De zestien minder signifikante instruktiebits 16-31 zijn gestippeld aangegeven; ze kunnen een operand bevatten als dit wordt aangegeven door één of meer van de waarden der zestien meer 15 signifikante bits. Het bovenstaande is een bqperkte selektie uit de instruktie-verzameling van de gerefereerde computer-reeks en werd tot dusverre geïmplementeerd met uitsluitend registers ter lengte van zestien bits.
In dit verband illustreert fig. 3 het 20 nieuwe adresseringssysteem volgens de uitvinding dat wordt geïmplementeerd onder besturing van een instruktiewoord in de "long constant mode" (mode met een lange konstante). In dit geval is de lengte van de instruktie gelijk aan twee computerwoorden of 32 bits. Op zichzelf is deze mode bekend 25 uit het geciteerde boek "P800 Programmer's Guide". De wijze van laden van het instruktieregister 1 is kortheidshalve niet nader aangegeven. Het eerste computerwoord bevindt zich in de links aangegeven helft B van het instruktieregister en bevat de 0-bit die het formaat "1" indiceert, de 30 opkode, de defirifcie van de "long constant mode" en voor zover vereist verdere besturingsbits die kortheidshalve niet aangegeven zijn. De bits 5-8 bij A indiceren een in-dexregister. Het tweede computerwoord van 16 bits bevindt zich in de rechterhelft C van het instruktieregister 1 en 35 bevat een zestien bits adres. Onder besturing van een hier niet aangegeven synchronisatiesignaal, bijvoorbeeld van een 7807314 * 11 PHN 9182 centrale klok begint de uitvoering van de instruktie ermee dat het vierbits adres bij A via lijn 5 wordt getransporteerd naar het adresregister annex adresdekodeur van de. indexregisterbank, die voorts de opslaggedeelten 3 en 4 be-5 vat, De indexregisterbank bevat zestien afzonderlijk adres- seerbare registers waarvan er eenvoudshalve slechts acht zijn aangegeven. Elk register bevat een achtbits gedeelte in bank 3 en een zestienbits gedeelte in bank 4. Deze twee banken behoeven geen fysiek afzonderlijke eenheden te zijn, 10 maar deze onderscheiding kan denkbeeldig zijn. Op zichzelf zijn indexregisters in de techniek van rekenmachines wèl-bekend; ze worden bijvoorbeeld gebruikt voor de opslag van referentieadressen in een organisatie voor het modificeren van adressen. Door zo'n organisatie kan op gunstige wijze 15 volstaan worden met instrukties van beperkte lengte om een bepaald programma uit te voeren. In deze adressering wordt nu in een eerste operatieslag het gehele geadresseerde in-dexregister uitgelezen, waartoe nog een leessignaal ont- -vangen wordt op lijn 2A uit de besturingsinrichting IA. Dit 20 element werkt in deze als de bekende opcode decodeur in de gerefereerde computerreeks voor het geven van een leesbe-sturingssignaal aan een geadresseerd indexregister; het verschil met de bekende inrichting is de grotere lengte van dit register. Zo zijn op de lijnen 7» 8 en 6 respektie-25 velijk 8, 16 en 16 adresbits beschikbaar. Vervolgens worden in een eerste rekenslag twee zestienbits adresgegevens op de lijnen 8 en 6 lineair gekombineerd in zestienbits arith-metisch element 9 dat wordt gesynchroniseerd door een be-sturingssignaal op lijn 9-A-. De lineaire kombinatie kan een 30 optelbewerking zijn. Het kan ook een verketening zijn (con catenating). Als twee woorden van zes bits luiden 000011 en 010000, dan is het resultaat van de verketening: 010011, waarbij geldt dat de bits in de onderstreepte woordgedeelten altijd de nulwaarde moeten hebben en de verketening 35 middels een logische OF-funktie bitsgewijs wordt uitgevoerd,
In het geval van een verketening kan een synchronisatiesig- 7807314 12 ΡΗΝ 9182 naai naar arithmetisch element 9 achterwege blijven.
In het geval van een optelling wordt de som, en bij een verketening het resultaat van deze verketening via lijn 22 toegevoerd aan accumulatorregister 11 dat even-5 eens een kapaciteit heeft van zestien bits. Het kan tesamen met het arithmetische element 9 worden bestuurd voor deze opslag. De 8 op lijn 7 beschikbaar gekomen bits worden tesamen daarmee opgeslagen in registerdeel 10. De opslagbe-sturing in de registerdelen 10, 11 is kortheidshalve niet 10 separaat aangegeven. Op deze manier kunnen de registerdelen 10, 11 tesamen bevatten een logisch adres van 24'bits waarmee een adresruimte van 16.277»216 afzonderlijke informatie-eenheden (bijvoorbeeld bytes of woorden) adresseerbaar is. Deze adresruimte is veel groter dan die welke door een adres-15 ter lengte van precies één computerwoord van 16 bits adres seerbaar zou zijn; de computerreeks in kwestie werd oorspronkelijk voor die woordlengte ontworpen. Het is nu moge-hjk dat registerdelen 10, 11 tesamen een fysiek adres bevatten waardoor dus direkt een geheugenplaats adresseerbaar 20 is. In dat geval zijn de datauitgangen van dit register direkt verbindbaar met adresingangen van het geheugen. Evenwel, in het uitvoeringsvoorbeeld bevat registerdeel 10 een adres om een segmenttabel te adresseren en registerdeel 11 bevat een verplaatsings-(displacement-)grootheid. Éó’n 25 verplaatsingsgrootheid heeft betekenis in verband met een basis(base-)adres dat hierna besproken wordt.- Vervolgens komt de inhoud van registerdeel 10 beschikbaar op lijn 13 en die van registerdeel 11 op lijn 18. Onder besturing van een synchronisatiesignaal op lijn 12A van adresregister/ 30 adresdekodeur 12 van de afbeeldingstabelinrichting met af- beeldingstabel elementen 14 en 15 vindt een verdere lees-operatie plaats. Evenals bij de elementen 3 en 4 behoeven dit geen fysiek onderscheidene onderdelen te zijn van het systeem maar kan de onderverdeling denkbeeldig zijn. Op 35 zichzelf is een afbeeldingstabel wèlbekend in de techniek de computerarchitectuur voor het opslaan vein adresgegevens 7807314 13 % PHN 9182 die verband houden met de organisatie van de geheugenop-slag in het computergeheugen. In dit voorbeeld bevat de afbeeldingstabel acht afzonderlijke gegevenselementen, maar elk aantal dat bij de geheugenorganisatie past zou nuttig 5 kunnen zijn. Voor de lokatie van de afbeeldingstabel geldt hetzelfde als voor de indexregisterbank is vermeld, namelijk dat hij zowel in een aantaL flipflopregisters als in een voorafbepaald deel van het hoofdgeheugen belichaamd kan zijn. Het gedeelte 15 van de afbeeldingstabel bevat in 10 dit voorbeeld een twintigbits basis (base) adres. In een ander geval zou het nuttig zijn hiervoor een vierentwintig-bits adres te nemen. Het basisadres is het eerste adres dat aan het te gebruiken segment in het geheugen is toegewezen, Het afbeeldingstabelgedeelte 14 bevat voor ieder 15 tabelelement (entry) een grens (bound) gegeven indikatie.
Deze indikatie geeft aan de maximaal adresseerbare geheugenruimte die alsdan aan het segment is toegewezen. Als de grensindikata aangeeft de absolute bovengrens voor het ge-heugenadres dat toelaatbaar is, gaande vanaf het bijbe-20 horende basisadres, dan moet het dezelfde bitbreedte heb ben als dat basisadres, dus in dit voorbeeld 20, dan wel 2b bits. Als de grensindikatie de bovengrens aangeeft voor de toelaatbare verplaatsingsindikatie kan worden volstaan met een bitbreedte die gelijk is aan de lengte van deze 25 verplaatsingsindikatie dus in dit voorbeeld registerdeel 11) zestien bits. De opslagorganisatie in het geheugen met behulp van segmenten is zeer voordelig omdat verschillende segmenten toegewezen kunnen worden aan verschillende (deelprocessen waardoor de werking van de rekenmachine flexibe-30 Ier wordt. Vervolgens komen, aldus, onder besturing van het synchronisatiesignaal op klem 12A de beide geadresseerde adresdelen beschikbaar op de lijnen 23, respektievelijk 19. Vervolgens wordt in een tweede rekenslag de informatie op lijn 18 en die op lijn 19 in arithmetisch element 17 35 opgeteld. Dit element kan daartoe weer geaktiveerd worden door een synchronisatiesignaal op klem 17A; de resulteren- 7807314 t 14 PHN 9182 de som wordt via lijn 25 toegeleid aan somregister 20 dat dezelfde lengte heeft als het deel 19 van de afbeeldings-tabelinrichting, dus 20, respektievelijk 24 bits, De opslag kan bestuurd worden door hetzelfde signaal als op ingang 5 17A al is dit eenvoudshalve niet aangegeven. Op uitgang 21 is daarop beschikbaar het fysieke adres dat geschikt is om het computergeheugen te adresseren. Verder kan de grensin-dikatie uit tabelgedeelte op overeenkomstige manier worden gebruikt, en wel voor geheugenprotektie, Als dit betreft 10 een relatieve adresindikatie wordt de informatie op lijn 18 (via de gestippeld getekende verbinding) tesamen met de informatie op lijn 23 toegevoerd naar element 16, dat in dat geval werkt als comparatorelement, indien nodig gesynchroniseerd door hetzelfde signaal als dat op klem 17A. Als 15 het verplaatsingsbedrag op lijn 18 groter is dan overeenkomt met de toegestane geheugenruimte geeft element 16 op de uitgang 16A ervan een "memory overflow" signaal dat de uitvoering van de eigenlijke geheugentoegang blokkeert en op bekende manier de uitvoering van het aktieve programma 20 beëindigt: er is dan namelijk een fout opgetreden, hetzij door een fout in het programma, hetzij door een fout in de inrichting (maar meestal zal het eerste geval relevant zijn). Deze fout dient verbeterd te worden door verandering in het programma, maar daarop heeft de uitvinding verder geen be-25 trekking. Als de afbeeldingstateLinrichting in gedeelte 14 een absolute adresruimte definieert wordt een zelfde vergelijking als hierboven beschreven uitgevoerd in element 16, maar nu ten aanzien van de uitgangsgegevens van element 20 op uitgang 21, waarbij de noodzakelijke verbinding hier-30 bij niet separaat is aangegeven. Hierboven werd een normale adresseringsoperatie beschreven waarin ten aanzien van de elementen 3> 4, 14 en 15 een uitleesoperatie wordt uitgevoerd, In het algemeen zal de segmentorganisatie ook veranderbaar zijn. Daartoe bezitten de elementen 14 en 15 35 respektievelijke datatoevoerverbindingen 14A, 15A, Deze kunnen met de interne gegevensbus zijn verbonden. Laatstge- 7807314 * 9 15 PHN 9182 noemde heeft een breedte van één computervoord, dus zestien bits en wordt van gegevens voorzien, bijvoorbeeld door het datagedeelte van het instruktieregister, dus middels lijn 6, onder besturing van een daarvoor gereserveerde operatie-5 kode. Met name in dat geval is het voordelig als de onderverdeling tussen elementen 14, 15 denkbeeldig is en ze dus in hun kapaciteit niet tot 16 bits beperkt zijn: het laden van deze twee gebeurt op overigens op zich bekende manier, bijvoorbeeld door twee opkodes die de respektievelijke 10 helften van een geadresseerd register van de segmenttabel vullen. De verbinding met lijn 6 is niet afzonderlijk aangegeven. Op overeenkomstige manier bezitten elementen 3» ^ laadverbindingen 3A, 4A.
De beschreven organisatie kan op verschillen-15 de manieren worden geïmplementeerd. In de eerste plaats kan het een integraal deel vormen van het ontwerp van de rekenmachine of rekenmachinereeks, of bijvoorbeeld van de meer gecompliceerde leden van een rekenmachinereeks, waarvan de afzonderlijke machines in meerdere of mindere mate 20 compartibel zijn. In dat geval wordt de organisatie gerealiseerd met specifieke logische middelen en registers zoals deze in fig. 3 zijn getoond, De besturing kan door een of meer uitdrukkingen van de microcode worden gerealiseerd, welke microcode overigens op bekende wijze de interne or-25 ganisatie van de machine bestuurt. In dit verband wordt reeds verwezen naar het tijdsdiagram van fig. 6.
In de tweede plaats kan die organisatie worden gerealiseerd door een aan de computer of microcomputer aangevoegde eenheid, die bijvoorbeeld als een uitbreidings-30 inrichting werkt. Er wordt verwezen naar fig. 4 waarin de uitbreidingsinrichting (extender) 300 hetzelfde "gezicht" (interface) geeft aan de computer 200 als het geheugen kOO daaraan bij direkte aahkoppeling zou geven. De computer is dus in dit geval de reeds geciteerde P856 computer, en het 35 geheugen de daarvoor gebruikelijke en bekende geheugeneen-heid. In dit verband wordt geciteerd het Philips P856 M/ 7807314 ί «* 16 ΡΗΝ 9182 Ρ857 Μ System Handbook, Philips Data Systems, B.V., publi-katienummer 512299126934, April 1978, bijvoorbeeld de passages "Memory management unit MMU (p. 5.1), General purpose BUS (p. 9»1)» Memory (p. 4.1). In dit verband is er 5 dus een 16-bits éénrichtingsadresbuslijn (MAD) respektie-velijk 201 en 203» een 16-bits, tweerichtingsgegevenslijn BIO, respektievelijk 202 en 302, en een meervoudige synchronisatie- en besturingslijn 203> respectievelijk 303, waarvan de re spekt ievëtijke bitlijnen in één of in beide 10 richtingen operationeel zijn op dezelfde manier als bij de computer zonder de uitbreiding. Met name bevatten deze signalen een 1-bits schrijfbesturingssignaal "WRITE" dat uitgaat van computer 200, en een paar van "spiegel"-(handsMce-) signalen TMRN en TRMN. Het eerste van deze twee 15 wordt gegenereerd door de computer 200 en het tweede is het antwoord daarop dat door het geheugen 400 wordt geproduceerd (zie het geciteerde boek, blz, 9-6/7· De genoemde letters hebben de betekenissen: T(transfer) M (from memory) R (to register) N (signals: inverse value), In de uitbrei-20 dingsinrichting 300 worden de ontvangen instruktiesignalen opgenomen en onderzocht. Als een instruktie (uit het in-struktieregister in computer 200) één of meer registers wil gebruiken om er een basis (base) informatie aan te ontlenen wordt er in de uitbreidingsinrichting gekontro-25 leerd of er geen toegangsfout zou ontstaan. Deze toegangs- fout zou ontstaan als er een referentie werd gemaakt naar een pagina of segment die niet in het geheugen aanwezig was (maar bijvoorbeeld in een achtergrondgeheugen, zoals een magnetisch schijfgeheugen), Als zo een fout (fault) 30 ontstaat geeft de uitbreidingsinrichting 300 een aftakkings- signaal aan computer 200, waardoor deze een aftakkings-stap begint en naar een voorafbepaald punt binnen zijn microprogramma gaat door een betreffend adres te genereren. Op zichzelf is zo'n aftakkingsstap bekend, In een andere 35 computerorganisatie kan de uitbreidingsinrichting de re kenmachine 200 een onderbrekingssignaal toevoeren. Als er 7807314 s 17 ♦ PHN 9182 geen fout optreedt verbindt de uitbreidingsinrichtxng de databuslijnen 202 en 302 en genereert de adressen als hierboven beschreven. De voltooiing van de bewerking wordt gesignaleerd door het signal TRMN op de daartoe bestemde 3 synchronisatieverbinding.
De uitbreidingsinrichtxng 300 uit Fig. k wordt weer in detail getoond in fig. 5» hij is in het bijzonder toegesneden op het gebruik bij de geciteerde computer P8.56 M. Hij is verbonden middels de adreslijn 201, de datalijn 10 202 en de besturingslijn 203 met computer 200. Hij bevat verder een zestienbits instruktieregister 311» middelen voor het dekoderen van het instruktieregister en voor het genereren van volgorde besturingssignalen door logika schakelingen 312, registeruitbreidingen 313» een arithme-15 tisch element voor het effektueren van een verketenings- en/of optelbewerking, een afbeeldingstabeleenheid annex element voor het controleren van de lengte (31^/315) indien noodzakelijk voor uitbreiding van het virtueel geheugen.
Het instruktieregister 311 bevat een kopie vein 20 de instruktie in de rekenmachine 200, voor zover het de bits 0-15 daarvan betreft en voor zover het betreft het meer woordinstrukties. De verbinding voor het laden van dit register is eenvoufehalve niet aangegeven: dit laden kan gebeuren langs dezelfde lijn en tesamen met het korre-25 sponderende instruktiegeheugen in de computer zelf. Element 312 bevat in de eerste plaats een dekodeur om de inhoud van het register 311 te dekoderen met betrekking tot de vraag of de instruktie: a) een register gebruikt als een indikatie van een basis 30 (base)gegeven; b) een "speciale" instruktie is voor het laden van de een voorafbepaald adres binnen de registeruitbreidingen 313· Deze instruktie kan worden geïmplementeerd door middel van de bekende WER (schrijf uit- 35 wendig register) instruktie van de gerefereerde P800 rekenmachinereeks (vergelijk blz. 9·01· van de "pro- 7807314 τ 18 ΡΗΝ 9182 grammer's guide).
Deze dekodeur verschaft bovendien het adres voor de re-gisteruitbreiding 313 en de lees- en schrijfbesturingssignalen ervoor. Deze worden tesamen getransporteerd langs 5 lijn 312A, Element 313 bevat dus de met element 3 uit fig.
3 overeenkomende registergedeelten. Verder ontvangt element 312 langs lijn 322 de uitgangssignalen van vergelijkin-richting 315 en verschaft zonodig op lijn 319 een uitgangssignaal dat via lijn 203 naar de computer 200 wordt ge-10 stuurd om deze zonodig naar een voorafbepaalde instruktie te doen aftakken zoals eerder is uiteengezet. Verder wordt element 312 teruggesteld door het systeemterugstelsignaal (system reset) dat via een andere geleider van de lijnen 203/319 wordt toegevoerd en wordt gesynchroniseerd door 15 een signaal op lijn 303 dat de status (namelijk "klaar" of "niet klaar") van de geheugentoegangsoperatie aangeeft· Element 316 bevat in een uitgebreide versie de afbeeldings-tabel (elementen 12, 14, 15 uit fig. 3)· In een eenvoudiger versie bevat element 316 slechts een doorgangsverbinding 20 en is dus in fig. 3 lijn 7 direkt met lijn 19 (hier dus 320, respektievelijk 321) verbonden. De arithmetische eenheid 31^ wordt dan gebruikt voor het samenvoegen van het adres op lijn 201 met het uit de registeruitbreidingsin-richting 313» respektievehjk de daardoor geadresseerde af-25 beeldingstabelinrichting om het geheugenadres op uitgang 301 te genereren. Op overeenkomstige manier kan vergelij-kingsinrichting 315 door vergelijking van de informaties op de lijnen 201 en 321 al dan niet een "overflow"-signaal genereren. Het laden van registeruitbreiding 313 kan ge-30 beuren via datalijn 202, kortheidshalve is deze verbinding niet aangegeven, evenmin als de synchronisatielijnen vanuit de cyclusbesturing in element 312 naar de afbeeldings-tabelinrichting 316, de comparator 315 en het arithmetische element 31^· De afbeeldingstabelinrichting 316 en compara-35 tor 315 worden gebruikt om een virtuele adresseringsmode te implementeren. De uitbreidingsinrichting (312/313) 7807314

Claims (6)

1. Adresgenereerinrichting voor het genereren van fysieke adresgegevens ten gebruike in een machine voor het verwerken van digitale gegevens, bevattende een instruktie-register met een ingang van een voorafbepaalde eerste bitbreedte voor het ontvangen van een bitreeks(string) in 23 genoemd register om als een instruktie te werken, met het kenmerk, dat genoemd instruktieregister een eerste uitgang heeft voor het doen uitgaan van een operatiekode die in genoemde instruktie bevat is, een tweede uitgang heeft voor het doen uitgaan van een indexregisteradres voor het 30 adresseren van een gespecificeerd indexregister binnen een indexregisterbank, en een derde uitgang heeft voor het doen uitgaan van een eerste geheugensubadres, dat het aldus geadresseerde indexregister een vierde uitgang heeft voor het doen uitgaan vein een voorafbepaald aantal meer 35 signifikante bits erin vervat, en een vijfde uitgang voor het doen uitgaan van een voorafbepaald aantal minder sig- 7807314 if PHN 9182 nifikante bits erin vervat, welke laatste werken als een tweede geheugensubadres, dat de gekombineerde breedte van genoemde vierde en vijfde uitgangen als tweede bitbreedte groter is dan genoemde voorafbepaalde eerste bitbreedte, 5 dat combinatiemiddelen aanwezig zijn waarvan ingangen ver bonden zijn met genoemde derde en vijfde uitgangen voor het lineair kombineren van genoemde eerste en tweede geheugensubadres voor het genereren van verdere minder sig-nifikante adresbits welke tesamen met genoemde meer sig-10 nifikante bits een volledig geheugenadres vormen om gepro duceerd te worden op een zesde uitgang van genoemde kombi-natiemiddelen.
2. Adresgenereerinrichting volgens conclusie 1, met het kenmerk, dat genoemde kombinatiemiddelen optelmid- 15 delen bevatten.
3. Adresgenereerinrichting volgens conclusie 1, met het kenmerk, dat genoemde tweede bitbreedte ligt tussen (^)1-5- en (é) 1-£ maal genoemde eerste bitbreedte,
4. Adresgenereerinrichting volgens conclusie 1,2 20 of 3i met het kenmerk, dat genoemde vierde uitgang verbon den is met een adresingang van een segmenttabd.inrich.ting, welke bevat een aantal respektievelijke opslagposities elk voor het opnemen van een segment-basis identifikatie, en bevat een zevende uitgang voor het doen uitgaan van een 25 daarin geadresseerde segmentbasisidentifikatie, dat ge noemde zevende uitgang een bitbreedte heeft die tenminste even groot is als genoemde eerste bitbreedte, en dat genoemde zesde en zevende uitgangen verbonden zijn met ingangen van uitgangsoptelmiddelen voor het produceren van 30 een absoluut adres op een achtste uitgang van genoemde uit- gangsoptelmiddelen,
5. Adresgenereerinrichting volgens conclusie k, met het kenmerk, dat de bitbreedte van genoemde zevende uitgang ligt tussen (^)1 en (^1¾) maal genoemde eerste 35 bitbreedte.
6. Adresgenereerinrichting volgens conclusie 4 of 7807314 * PHN 9182 5, met het kenmerk, dat genoemde opslagposities voorts een opslagkapaciteit bezitten voor een segmentbovengrens (bound) identifikatie en dat de segmenttabelinrichting een negende uitgang bezit voor het doen uitgaan van een seg-5 mentbovengrensidentifikatie bij een adressering van een deze bevattende opslagpositie daarvan. * 7807314
NL7807314A 1978-07-06 1978-07-06 Inrichting voor het vergroten van de lengte van een logisch computeradres. NL7807314A (nl)

Priority Applications (6)

Application Number Priority Date Filing Date Title
NL7807314A NL7807314A (nl) 1978-07-06 1978-07-06 Inrichting voor het vergroten van de lengte van een logisch computeradres.
DE19792926589 DE2926589A1 (de) 1978-07-06 1979-06-30 Anordnung zur verlaengerung einer logischen computeradresse
US06/054,534 US4361868A (en) 1978-07-06 1979-07-03 Device for increasing the length of a logic computer address
GB7923052A GB2025097B (en) 1978-07-06 1979-07-03 Address generatingdevice
FR7917634A FR2430636B1 (fr) 1978-07-06 1979-07-06 Dispositif pour allonger une adresse logique de calculateur
JP54085806A JPS5855528B2 (ja) 1978-07-06 1979-07-06 アドレス発生装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL7807314A NL7807314A (nl) 1978-07-06 1978-07-06 Inrichting voor het vergroten van de lengte van een logisch computeradres.
NL7807314 1978-07-06

Publications (1)

Publication Number Publication Date
NL7807314A true NL7807314A (nl) 1980-01-08

Family

ID=19831201

Family Applications (1)

Application Number Title Priority Date Filing Date
NL7807314A NL7807314A (nl) 1978-07-06 1978-07-06 Inrichting voor het vergroten van de lengte van een logisch computeradres.

Country Status (6)

Country Link
US (1) US4361868A (nl)
JP (1) JPS5855528B2 (nl)
DE (1) DE2926589A1 (nl)
FR (1) FR2430636B1 (nl)
GB (1) GB2025097B (nl)
NL (1) NL7807314A (nl)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0149858B1 (en) * 1980-04-25 1991-03-06 Data General Corporation Data processing system
JPS5750052A (en) * 1980-09-09 1982-03-24 Toshiba Corp Address extension system
EP0066083B1 (en) * 1981-06-01 1986-07-16 International Business Machines Corporation An address substitution apparatus
US4432053A (en) * 1981-06-29 1984-02-14 Burroughs Corporation Address generating apparatus and method
US4453212A (en) * 1981-07-13 1984-06-05 Burroughs Corporation Extended address generating apparatus and method
FR2515404B1 (fr) * 1981-10-28 1987-06-26 France Etat Ensemble de gestion de la memoire d'un processeur
US4473878A (en) * 1981-11-23 1984-09-25 Motorola, Inc. Memory management unit
JPS59191919U (ja) * 1983-06-07 1984-12-20 大昭和紙工産業株式会社 提げ袋
DE3479356D1 (en) * 1983-12-23 1989-09-14 Hitachi Ltd A data processor with control of the significant bit lenghts of general purpose registers
US4677548A (en) * 1984-09-26 1987-06-30 Honeywell Information Systems Inc. LSI microprocessor chip with backward pin compatibility and forward expandable functionality
US5027273A (en) * 1985-04-10 1991-06-25 Microsoft Corporation Method and operating system for executing programs in a multi-mode microprocessor
US4796177A (en) * 1985-04-30 1989-01-03 Fujitsu Limited Address extension system
JPS6228850A (ja) * 1985-07-31 1987-02-06 Toshiba Corp メモリアドレスマツピング機構
JP2507756B2 (ja) * 1987-10-05 1996-06-19 株式会社日立製作所 情報処理装置
JPH01204147A (ja) * 1988-02-09 1989-08-16 Toshiba Corp アドレス修飾回路
FR2629930B1 (fr) * 1988-04-12 1991-03-15 Labo Electronique Physique Procede et unite de gestion de mots d'adresse
US4965720A (en) * 1988-07-18 1990-10-23 International Business Machines Corporation Directed address generation for virtual-address data processors
JPH0289132A (ja) * 1988-09-26 1990-03-29 Nec Corp 論理アドレス生成方式
US5317706A (en) * 1989-11-15 1994-05-31 Ncr Corporation Memory expansion method and apparatus in a virtual memory system
US5771368A (en) * 1990-10-29 1998-06-23 Sun Microsystems, Inc. Memory addressing scheme for increasing the number of memory locations available in a computer for storing higher precision numbers
EP0492970B1 (en) * 1990-12-21 1995-08-02 Sun Microsystems, Inc. Method and apparatus for extending computer architecture from thirty-two to sixty-four bits
ES2132073T3 (es) * 1991-01-10 1999-08-16 Siemens Ag Disposicion de circuito para la reproduccion del espacio de direccionamiento logico de una unidad de procesador sobre el espacio de direccionamiento fisico de una memoria.
US5423013A (en) * 1991-09-04 1995-06-06 International Business Machines Corporation System for addressing a very large memory with real or virtual addresses using address mode registers
US5381537A (en) * 1991-12-06 1995-01-10 International Business Machines Corporation Large logical addressing method and means
KR950006332B1 (ko) * 1992-11-19 1995-06-14 삼성전자주식회사 메모리 데이터의 고속 억세스 회로
US5680632A (en) * 1992-12-24 1997-10-21 Motorola, Inc. Method for providing an extensible register in the first and second data processing systems
DE69434967T2 (de) * 1993-05-27 2008-01-17 Matsushita Electric Industrial Co., Ltd., Kadoma Programmumsetzungseinheit und verbesserter Prozessor für Adressierung
US5680598A (en) * 1995-03-31 1997-10-21 International Business Machines Corporation Millicode extended memory addressing using operand access control register to control extended address concatenation
US5649125A (en) * 1995-10-30 1997-07-15 Motorola, Inc. Method and apparatus for address extension across a multiplexed communication bus
DE10163342A1 (de) * 2001-12-21 2003-07-10 Elektro Beckhoff Gmbh Unterneh Datenübertragungsverfahren, serielles Bussystem und Anschalteinheit für einen passiven Busteilnehmer
US7596680B2 (en) * 2003-09-15 2009-09-29 International Business Machines Corporation System and method for encoding and decoding architecture registers
WO2007015035A1 (en) * 2005-08-01 2007-02-08 Arm Limited Handling of denormals in floating point number processim
US8766995B2 (en) * 2006-04-26 2014-07-01 Qualcomm Incorporated Graphics system with configurable caches
US7502908B2 (en) * 2006-05-04 2009-03-10 International Business Machines Corporation Method for providing an address format compatible with different addressing formats used for addressing different sized address spaces
US20070268289A1 (en) * 2006-05-16 2007-11-22 Chun Yu Graphics system with dynamic reposition of depth engine
US8884972B2 (en) * 2006-05-25 2014-11-11 Qualcomm Incorporated Graphics processor with arithmetic and elementary function units
US8869147B2 (en) * 2006-05-31 2014-10-21 Qualcomm Incorporated Multi-threaded processor with deferred thread output control
US8644643B2 (en) 2006-06-14 2014-02-04 Qualcomm Incorporated Convolution filtering in a graphics processor
US8766996B2 (en) 2006-06-21 2014-07-01 Qualcomm Incorporated Unified virtual addressed register file
US10198203B2 (en) * 2016-11-15 2019-02-05 Samsung Electronics Co., Ltd. Method of operating memory device using pseudo-random functions, memory device using the same and memory system including the device

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3412382A (en) * 1965-11-26 1968-11-19 Massachusetts Inst Technology Shared-access data processing system
NL6806735A (nl) * 1968-05-11 1969-11-13
NL6815506A (nl) * 1968-10-31 1970-05-04
US3735355A (en) * 1971-05-12 1973-05-22 Burroughs Corp Digital processor having variable length addressing
FR2329170A5 (fr) * 1973-02-06 1977-05-20 Ibm France Calculateur muni de facilites d'extension d'adresse
FR122199A (nl) * 1973-12-17
US3949378A (en) * 1974-12-09 1976-04-06 The United States Of America As Represented By The Secretary Of The Navy Computer memory addressing employing base and index registers
US4044334A (en) * 1975-06-19 1977-08-23 Honeywell Information Systems, Inc. Database instruction unload
FR2337373A1 (fr) * 1975-12-31 1977-07-29 Honeywell Bull Soc Ind Dispositif de developpement d'adresse faisant intervenir une nouvelle technique de pagination
US4084227A (en) * 1976-09-24 1978-04-11 Sperry Rand Corporation Virtual address translator
US4128875A (en) * 1976-12-16 1978-12-05 Sperry Rand Corporation Optional virtual memory system
US4096573A (en) * 1977-04-25 1978-06-20 International Business Machines Corporation DLAT Synonym control means for common portions of all address spaces

Also Published As

Publication number Publication date
JPS5855528B2 (ja) 1983-12-10
DE2926589A1 (de) 1980-01-24
FR2430636A1 (fr) 1980-02-01
JPS5513499A (en) 1980-01-30
GB2025097A (en) 1980-01-16
FR2430636B1 (fr) 1986-09-26
US4361868A (en) 1982-11-30
GB2025097B (en) 1982-12-08

Similar Documents

Publication Publication Date Title
NL7807314A (nl) Inrichting voor het vergroten van de lengte van een logisch computeradres.
US5819117A (en) Method and system for facilitating byte ordering interfacing of a computer system
US4241397A (en) Central processor unit for executing instructions with a special operand specifier of indeterminate length
US4631663A (en) Macroinstruction execution in a microprogram-controlled processor
US4236206A (en) Central processor unit for executing instructions of variable length
US4395758A (en) Accelerator processor for a data processing system
US4156910A (en) Nested data structures in a data driven digital data processor
US4156903A (en) Data driven digital data processor
EP0248436B1 (en) Method of and apparatus for processing data
EP0054243A2 (en) Memory controlling apparatus
JPS59117666A (ja) ベクトル処理装置
US4338663A (en) Calling instructions for a data processing system
US4446517A (en) Microprogram memory with page addressing and address decode in memory
US4241399A (en) Calling instructions for a data processing system
JPS58501560A (ja) マイクロプロセツサ
US4347566A (en) Data processor with register file and arithmetic logic circuit on one chip and register means directly connected to the chip
US3737871A (en) Stack register renamer
US4156909A (en) Structured data files in a data driven digital data processor
US4156908A (en) Cursive mechanism in a data driven digital data processor
JPH027097B2 (nl)
US3673575A (en) Microprogrammed common control unit with double format control words
US5642523A (en) Microprocessor with variable size register windowing
US4975835A (en) Variable length data processing apparatus for consecutively processing variable-length data responsive to one instruction
US3631401A (en) Direct function data processor
US4956805A (en) Circuitry for character translate functions

Legal Events

Date Code Title Description
A1B A search report has been drawn up
BV The patent application has lapsed