NL8105849A - Informatie-verwerkende inrichting. - Google Patents

Informatie-verwerkende inrichting. Download PDF

Info

Publication number
NL8105849A
NL8105849A NL8105849A NL8105849A NL8105849A NL 8105849 A NL8105849 A NL 8105849A NL 8105849 A NL8105849 A NL 8105849A NL 8105849 A NL8105849 A NL 8105849A NL 8105849 A NL8105849 A NL 8105849A
Authority
NL
Netherlands
Prior art keywords
memory
signals
address
page
register
Prior art date
Application number
NL8105849A
Other languages
English (en)
Other versions
NL192144B (nl
NL192144C (nl
Original Assignee
Wang Laboratories
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 Wang Laboratories filed Critical Wang Laboratories
Publication of NL8105849A publication Critical patent/NL8105849A/nl
Publication of NL192144B publication Critical patent/NL192144B/nl
Application granted granted Critical
Publication of NL192144C publication Critical patent/NL192144C/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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation

Description

* * Ν.0. 30740 1
Informatie-verwerkende inrichting.
De uitvinding heeft betrekking op een geheugenbeheer in informatieverwerkende inrichtingen. In het bijzonder heeft de uitvinding betrekking op verbeteringen in het geheugenbeheer van een virtueel geheugen, gevoed door een informatieverwerkende inrichting.
5 In het algemeen zijn in fysische geheugens of geheugenstructuren voor gebruik in informatieverwerkende inrichtingen de kosten (per geheu-geneenheid) van het geheugen omgekeerd evenredig gerelateerd aan de snelheid waarmee toegang kan worden verkregen tot een geheugeneenheid. Zeer snel toegankelijke geheugens zijn duurder dan geheugens die een 10 langere toegangstijd vereisen. Een gevolg daarvan is dat bij pogingen om economische informatieverwerkende inrichtingen te ontwerpen, veel inrichtingen worden voorzien van een hi'érarchie van geheugens, waarin delen van het geheugen langzaam zijn maar een grote capaciteit hebben, terwijl andere delen snel zijn maar een kleine capaciteit hebben. Tij-15 dens het bedrijf van de informatieverwerkende machine kunnen de inhouden van de geheugens onderling worden overgedragen of gekopieerd, al naar gelang dit nodig is.
In het bijzonder bevatten informatieverwerkende machines in het algemeen een "hoofdgeheugen", gelokaliseerd binnen de inrichting en direkt 20 toegankelijk door de centrale processor van de inrichting. Dit geheugen m is in 'het algemeen opgebouwd uit dynamische willekeurig toegankelijke geheugenelementen (RAM’s).
Daarnaast bevatten dergelijke inrichtingen over het algemeen "sekundaire geheugens" (of "bestandsgeheugens”), aangebracht in perifere 25 eenheden, zoals magnetische bandeenheden of schijfeenheden. De toegangstijd naar het hoofdgeheugen bedraagt in een kenmerkend geval 500 nano-sekonden, terwijl de toegangstijd tot een magnetische schijf in een kenmerkend geval 20 millisekonden bedraagt.
Tenslotte bevatten informatieverwerkende inrichtingen over het al-30 gemeen een stuurgeheugen, dat afgezonderd kan zijn van het hoofdgeheugen of een tegen inschrijven beveiligd gedeelte van het hoofdgeheugen beslaat, en een met zeer hoge snelheid werkend voorraadgeheugen, dat een met de tijd variërende subset van de inhoud van het hoofdgeheugen bevat. Het voorraadgeheugen is in het algemeen gelokaliseerd binnen de centrale 35 processor.
Als de data (waartoe het macro programma kan behoren) dat door de informatieverwerkende machine wordt gebruikt, meer geheugenplaatsen vraagt dan er beschikbaar zijn in het hoofdgeheugen, dan wordt verdere 8105849 * * 2 geheugenruimte verschaft door het sekundaire geheugen. Voor de ontwikkeling van het virtuele geheugen werd de data door de programmeur in porties verdeeld, aangeduid met de Engelse term "overlays", elk passend binnen het hoofdgeheugen. Deze porties werden een voor een in het hoofd-5 geheugen ingebracht tijdens het bedrijf van de inrichting; een later ingebrachte dataportie werd geschreven over de eerder in het hoofdgeheugen ingebrachte portie. De programmeur was verantwoordelijk voor het verdelen van de data in deze porties, het bepalen van de plaats in het sekundaire geheugen waar elk van deze porties moet worden opgeslagen, het be-10 palen van het moment waarop elke nieuwe portie moet worden overgebracht, het nemen van maatregelen voor het transporteren van de porties tussen het hoofdgeheugen en het sekundaire geheugen, en in het algemeen het beheer van het gehele verdelingsproces zonder enige hulp van de informatieverwerkende machine.
15 De ontwikkeling van het virtuele geheugen heeft het mogelijk ge maakt om dit beheer te laten uitvoeren door de informatieverwerkende machine zonder dat het voor de programmeur noodzakelijk is om dit proces te besturen of er zelfs maar rekening mee te houden. Volgens deze ontwikkeling wordt een grote adresruimte gedefinieerd die adresseerbaar is 20 door de centrale processor van de informatieverwerkende machine, en die aangeduid wordt als de virtuele adresruimte. De virtuele adresruimte kan veel groter zijn dan de fysische geheugenruimte die beschikbaar is in het hoofdgeheugen. Data is opgeborgen in het sekundaire geheugen in blokken van gelijke grootte, pagina’s genoemd, en wordt overgedragen per 25 pagina naar het hoofdgeheugen. Het hoofdgeheugen is in blokken verdeeld die aangeduid worden met paginaframes, elk van dezelfde grootte als een pagina. Een pagina met data wordt opgeborgen in een paginaframe, zodanig dat het begin en het einde van frame en pagina gelijk liggen.
Gedurende het bedrijf 'van de informatieverwerkende machine zullen, 30 wanneer er behoefte ontstaat aan geheugentoegang, signalen worden gegenereerd door de centrale processor die representatief zijn voor een virtueel geheugenadres· Het virtuele geheugenadres bevat een paginanummer waarmee de pagina wordt aangeduid, die de benodigde informatie bevat, en verder een adreswaarde, aangeduid als de offset-waarde, welke de plaats 35 van de informatie in de pagina aanduidt. Teneinde de geheugentoegang te completeren, moet het virtuele adrespaginanummer worden vertaald in een fysisch adrespaginaframenummer, waarmee de fysische ruimte in het hoofdgeheugen wordt geïndiceerd. Als de data zich al in het hoofdgeheugen bevindt, dan wordt ze uit de fysische lokatie opgehaald en de verwerking 40 gaat verder. (Er kan ook een verdere kontrolestap worden toegepast om te 8105849
* A
3 zien of de data zich in het met hoge snelheid merkende voorraadgeheugen bevindt en indien dit zo is kan ze direkt uit dit geheugen worden opgehaald; de uitvinding houdt zich echter met deze verdere stap niet bezig). Als de data zich niet in het hoofdgeheugen bevindt, dan moet de 5 informatieverwerkende machine de datapagina, die de benodigde informatie bevat ophalen uit het sekundaire geheugen en overbrengen naar het hoofdgeheugen, waarna de benodigde informatie dan uit deze pagina wordt opgehaald, waarna de verwerking doorgaat.
Een dergelijk ontwerp kan in de praktijk funktioneren vanwege het 10 feit dat de logische verwerkingsvolgorde binnen de meeste programma's zodanig is, dat niet het gehele programma in het hoofdgeheugen aanwezig behoeft te zijn op ieder tijdstip tijdens de uitvoering van het programma. De initialisatie- en beëindigingsroutines bijvoorbeeld wordt slechts êên keer gedurende de werking van een programma uitgevoerd. Iedere pro-15 cedure, die een uitzonderingstoestand behandelt, zoals een foutroutine, is alleen nodig wanneer deze uitzonderingstoestand optreedt. Met andere woorden, op ieder willekeurig bepaald tijdstip gedurende de uitvoering van het programma behoeft alleen te worden gerefereerd aan het subset van het gehele programma, en de elementen van deze subset bevinden zich 20 in het algemeen dicht bij elkaar. Deze eigenschap van programma's wordt soms aangeduid als de "lokale eigenschap van de referentie".
De realisatie van een virtueel geheugen verschaft grote voordelen in het geheugenbeheer, bevrijdt de programmeur van het beheer van de programmadelen en van de zorg, dat hij uit het beschikbare hoofdgeheugen 25 van de informatieverwerkende inrichting loopt. Bovendien kan een inrichting die gebruik maakt van een virtueel geheugen funktioneren met een relatief grote hoeveelheid van relatief goedkope (langzame) sekundaire geheugens en een relatief kleine hoeveelheid aan relatief kostbaar (snel) hoofdgeheugen, waardoor de kosten van de inrichting als totaal 30 worden gereduceerd.
Het gebruik van een virtueel geheugen vereist echter dat er bedrijfstijd moet worden uitgetrokken voor het uitvoeren van de desbetreffende instrukties voor het verkrijgen van het fysische adres uit het virtuele adres. De vertaling van het virtuele adres naar het fysische 35 adres vergt toegang tot een paginatabel, geïdentificeerd door een seg-mentnummer en opgeborgen in het hoofdgeheugen, welke tabel informatie bevat betreffende de plaats in het hoofdgeheugen van alle pagina's in dat segment van de momentane virtuele adresruimte. De paginatabel wordt geadresseerd door het virtuele paginanummer teneinde de gewenste ingang 40 tot de paginatabel te lokaliseren. Elke ingang in de paginatabel bevat 8105849 \ * * 4 een foutbit, dat aangeeft of de pagina al dan niet in het hoofdgeheugen - is ingébracht. Verder bevat de paginatabelingang beschermingsbits en het paginaframenummer (refererend aan het fysische hoofdgeheugen), waar de pagina is opgeslagen indien de pagina zich in het hoofdgeheugen bevindt.
5 Het vertaalproces vergt derhalve de volgende stappen die door de processor (onder besturing van een microprogramma) moeten worden uitgevoerd of door speciaal daarvoor bestemde hardware in de processor moeten worden uitgevoerd: het aanbrengen van het segmentnummer voor het lokaliseren van de paginatabel, het aanbrengen van het virtuele paginanummer 10 voor het adresseren van een ingang in de paginatabel, het ophalen van de paginatabelingang, het kontroleren van de toestand van het foutbit en (indien de pagina zich in het hoofdgeheugen bevindt) het kombineren van het paginaframenummer met de offset van het virtuele adres, teneinde het fysische adres te vormen.
15 Het vertaalproces neemt derhalve een eindige hoeveelheid tijd in beslag, telkens wanneer het proces wordt uitgevoerd. Als het proces moet worden uitgevoerd dan wordt er telkens toegang gemaakt tot het geheugen, waardoor het geheugenbedrijf van de informatieverwerkende richting aanzienlijk zal worden vertraagd. Het is derhalve wenselijk om de noodzake-20 lijke vertaaltijd te reduceren.
Dit probleem werd benaderd door het verschaffen van een klein buf-ferregister buiten de centrale processor (in de geheugenstuureenheid) voor het opbergen van signalen die representatief zijn voor kort geleden vertaalde adressen. Deze buffer kreeg bijvoorbeeld een groep van acht 25 tot tweeëndertig associatieve registers, elk voorzien van twee velden. Het eerste veld bevat signalen, die representatief zijn voor het paginanummer van een kort geleden vertaald virtueel geheugenadres. Het tweede veld bevat signalen, die representatief zijn voor het paginaframe dat in de lopende situatie toegewezen is aan de virtuele geheugenpagina. Tel-30 kens wanneer een virtueel geheugenadres wordt vertaald tijdens de uitvoering van een instruktie worden signalen die representatief zijn voor het vrituele geheugenadrespaginanummer en het resulterende werkelijke geheugenadrespaginaframenummer geplaatst in deze buffer. Een "minder recentelijk gebruikt" standaard wordt toegepast voor het selekteren van 35 het register waarin de nieuwe vertaling wordt ondergebracht (ter vervanging van een oudere vertaling).
Wanneer een geheugenreferentie, gespecificeerd door een virtueel adres, nodig is in de loop van het bedrijf van de informatieverwerkende inrichting, dan worden de acht registers simultaan (parallel) onder-40 zocht. De signalen die representatief zijn voor het virtuele paginanum- 8105849 5 mer in elk register worden vergeleken met de signalen die representatief zijn voor het virtuele paginanummer van het virtuele adres van de lopende geheugenoperatie. Als een overeenstemming wordt gevonden, dan worden de paginaframenummersignalen genomen uit het register en gekombineerd 5 met de offsetsignalen, teneinde het fysische adres te vormen. Indien geen overeenstemming wordt gevonden dan wordt de normale vertaalprocedu-re uitgevoerd.
Deze struktuur heeft een aantal nadelen. In de eerste plaats gebeurt het parallelle onderzoek (door associatieve adressering) weliswaar 10 zeer snel, maar de schakelingen nodig voor een dergelijke onderzoekpro-cedure zijn kostbaar. Verder is de adresseerschakeling fysisch komplex en deze komplexiteit neemt zeer snel toe met een toenemend aantal te onderzoeken registers. Daarom wordt er in de praktijk een scherpe grens gesteld aan de mogelijke afmetingen van de buffer, afhankelijk van zowel 15 kosten als komplexiteit. Een gevolg daarvan is dat slechts een zeer begrensde subset van recentelijk vertaalde adressen kan worden onderhouden.
Bovendien moet in een voor meerdere taken bestemde informatieverwerkende inrichting de inhoud van de gehele buffer (acht tot tweeënder-20 tig registers) worden gewist wanneer de informatieverwerkende inrichting van taak wisselt. Dat gebeurt zeer frequent. Deze vereiste resulteert in twee nadelen. Allereerst is er tijd nodig om de buffer te wissen. In de # tweede plaats zijn er, nadat de buffer is gewist, geen vertaalde adressen beschikbaar, zodat voor elke daaropvolgende geheugentoegang de buf-25 fer moet worden onderzocht en daarna nieuw vertaalde adressen in de buffer moeten worden ingeschreven totdat de buffer is gevuld. Dat neemt verdere tijd in beslag.
De uitvinding heeft nu ten doel middelen te verschaffen voor het verbeteren van de werkingsgraad en de bedrijfssnelheid van een informa-30 tieverwerkende machine, die gebruik maakt van een virtueel geheugen door de totale tijd nodig voor de adrestranslatie te reduceren.
De uitvinding wordt gerealiseerd in een voor meerdere taken bestemde informatieverwerkende inrichting, die samenwerkt met een virtueel geheugen, voorzien van een aantal segmenten. De informatieverwerkende in-35 richting heeft een centrale processor, waartoe behoort een grendelregis-ter, een geheugenadresregister en een geheugendataregister. Met de centrale processor is een stuurgeheugen verbonden. Een bus, die verbonden is met de centrale processor, bevat adressignaallijnen voor ontvangst van adressignalen van het geheugenadresregister, en datasignaallijnen 40 voor ontvangst van datasignalen van het geheugendataregister en voor het 8105849 6 leveren van datasignalen aan het geheugendataregister. De informatieverwerkende inrichting omvat verder een fysisch geheugen bestemd voor het opbergen van datasignalen, die representatief zijn voor data en macro-instrukties.
5 Het fysische geheugen omvat een relatief langzaam toegankelijk se- kundair geheugen, dat gekoppeld is met de bus en voorzien is van een aantal pagina's van uniforme afmeting (aantal bytes), waarbij elke pagina een aantal datasignalen bevat, alsmede een relatief snel toegankelijk hoofdgeheugen, gekoppeld met de bus voor het ontvangen en leveren van 10 datasignalen en het ontvangen van adressignalen. Het hoofdgeheugen omvat een aantal paginaframes, elk geschikt om dezelfde hoeveelheid datasignalen te bevatten als ook aanwezig is in een pagina van het sekundaire geheugen, welke paginaframes kunnen worden geadresseerd door fysische adressignalen omvattende paginaframenummersignalen en offsetsignalen. De 15 centrale processor, het stuurgeheugen en de bus vormen samen de middelen voor het besturen van het kopiëren van een aantal datasignalen met de omvang van een pagine vanuit het sekundaire geheugen in bepaalde hoofd-geheugenpaginaframes geadresseerd door fysische adressignalen, en omgekeerd .
20 De informatieverwerkende inrichting is bestemd om te reageren op bepaalde datasignalen die representatief zijn voor door het fysische geheugen verschafte macro-instrukties; de centrale processor en het stuurgeheugen reageren samen op signalen die representatief zijn voor bepaalde, op lezen en schrijven betrekking hebbende geheugentoegang-macro-in-25 strukties voor het genereren van virtuele adressignalen, waartoe behoren segmentnummersignalen, paginanummersignalen en offsetsignalen, en voor het leveren van virtuele adressignalen aan het grendelregister. De centrale processor en het stuurgeheugen reageren verder op de geheugentoe-gang-macro-instrukties door het uitvoeren van een translatie van de vir-30 tuele adressignalen in korresponderende fysische adressignalen. De translatie omvat het aanbieden van segmentnummer- en paginanummersignalen aan het hoofdgeheugen voor het adresseren van bepaalde delen van het hoofdgeheugen, welke de paginaframenummersignalen bevat, en de overdracht van de paginaframenummersignalen van het hoofdgeheugen, samen met 35 de offsetsignalen uit het grendelregister, naar het geheugenadresregis-ter.
De centrale processor en het stuurgeheugen reageren verder op de, op lezen betrekking hebbende geheugentoegang-macro-instrukties door aan het geheugendataregister datasignalen aan te bieden van de geadresseerde 40 hoofdgeheugenpaginaframes, en reageren op, op schrijven betrekking heb- 8105849 7 bende geheugentoegang-macro-instrukties door aan de geadresseerde hoofd-geheugenpaginaframes signalen aan te bieden van het geheugendataregis-ter.
Volgens de uitvinding verschaft de informatieverwerkende machine 5 een geïndexeerd willekeurig toegankelijk geheugen (in het volgende aangeduid als T/RAM, of translatie RAM) binnen de centrale processor voorzien van indexeringsmiddelen, gekoppeld met bepaalde uitgangen van het grendelregister. Verder zijn multiplexermiddelen aanwezig, waarvan de uitgangen gekoppeld zijn met de ingangen van het geheugenadresregister 10 en die voorzien zijn van twee groepen van ingangen, waarbij de uitgangen van het willekeurig toegankelijke geheugen gekoppeld zijn met de eerste groep van ingangen en de uitgangen van het grendelregister gekoppeld zijn met de tweede groep van ingangen. De centrale processor en het stuurgeheugen reageren om te beginnen samen op een geheugentoegang-15 macro-instruktie door het aanbieden van signalen die representatief zijn voor het virtuele adrespaginanummer van het grendelregister aan de indexeringsmiddelen van het willekeurig toegankelijke geheugen teneinde aan de uitgangen ervan de groep van signalen te plaatsen die opgeborgen zijn in de geïndexeerde lokatie, met inbegrip van signalen, die repre-20 sentatief zijn voor het paginaframenummer en een foutsignaal, dat een van twee toestanden kan aannemen.
De multiplexer middelen reageren op een eerste toestand van het foutsignaal door het overdragen van de geïndexeerde paginaframenummer-signalen van het willekeurig toegankelijke geheugen naar het geheugen-25 adresregister voor het adresseren van het hoofdgeheugen, en reageren op een tweede toestand van het foutbit door het overdragen van virtuele adressignalen vanaf de uitgang van het grendelregister naar het geheugenadresregister ter translatie. De centrale processor en het stuurgeheugen reageren verder op de tweede toestand van het foutsignaal door 30 het uitvoeren van een translatie van de virtuele adressignalen en door het aanbieden van signalen, representatief voor het vertaalde paginage-heugennummer aan de geïndexeerde lokatie in het willekeurig toegankelijke geheugen, tezamen met een foutsignaal dat de eerste toestand heeft.
Volgens een verder kenmerk van de uitvinding omvat de centrale pro-35 cessor van de informatieverwerkende inrichting verder een statusregister voorzien van een aantal instelbare statusbits voor het indexeren van de bedrijfsstatus van de informatieverwerkende inrichting, en indexerings-signaalopslagmiddelen, omvattende een referentie- en wijzigingstabel, voorzien van een instelbaar referentiebit en een instelbaar wijzigings-40 bit voor elk paginaframe in het hoofdgeheugen. De referentie- en wijzi- 8105849 * \ 8 gingstabel is gekoppeld met de uitgang van het geïndexeerde willekeurig toegankelijke geheugen voor het indexeren van de tabel door middel van het paginaframenummer. De centrale processor en het stuurgeheugen reageren samen op de geheugentoegang-macro-instruktie door het instellen van 5 het geïndexeerde referentiebit en op een, op schrijven betrekking hebbende geheugentoegang-macro-instruktie door het instellen van het geïndexeerde wijzigingsbit. De uitgang van de referentie- en wijzigingstabel is gekoppeld met het statusregister voor het instellen van bepaalde sta-tusbits in responsie op de toestand van de geïndexeerde referentie- en 10 wijzigingsbits.
Volgens een verder kenmerk van de uitvinding is er verder een moni-torbit aanwezig in het hoofdgeheugen van de informatieverwerkende inrichting, geassocieerd met elk virtueel geheugensegment, welke bit een van twee toestanden kan aannemen, alsmede stapelsignaalgeheugenmiddelen 15 in de centrale processor. De centrale processor en de stuurmiddelen reageren samen op de tweede toestand van het foutsignaal en op de virtuele adressegmentnummersignalen, gedurende de translatie van het virtuele adres, voor het adresseren van het monitorbit voor dat betreffende segment en het testen van de toestand ervan. De centrale processor en de 20 stuurmiddelen reageren op een eerste toestand van het monitorbit door het aanbieden van de virtuele adrespaginanummersignalen aan de stapel-signaalgeheugenmiddelen voor opslag daarin.
De centrale processor en de stuurmiddelen reageren op een wisseling van taken gedurende het bedrijf van de machine door het ophalen van de 25 opgeslagen virtuele adrespaginanummersignalen uit de stapelsignaalgeheugenmiddelen en het aanbieden van de opgeborgen signalen ter indexering van het willekeurig toegankelijke geheugen voor het instellen van het foutsignaal in zijn tweede toestand.
Andere doelstellingen, kenmerken en voordelen zullen duidelijk wor-30 den aan de hand van de volgende gedetailleerde beschrijving van de uitvinding waarin wordt verwezen naar de tekeningen.
Fig. 1 toont een schematisch overzicht van een informatieverwerkende machine, waarin de uitvinding wordt toegepast.
Fig. 2 toont een vereenvoudigd blokschema van de centrale processor. 35 van de informatieverwerkende inrichting uit fig. 1.
Fig. 3 toont een schematische indeling van de virtuele adresruimte van de informatieverwerkende inrichting uit fig. 1.
Fig. 4 toont het formaat van een ingevoerd gegeven in de trans-latie-RAM volgens de uitvinding.
40 Fig. 5 toont het formaat van een virtueel adres.
8105849 9
Fig. 6 toont het formaat van een ingevoerd gegeven in de pagina-tabel.
Fig. 7 toont het formaat van een segmentstuurregister.
Fig. 8 toont het formaat van een fysisch adres.
5 Fig. 9 toont schematisch het stuurgeheugen en de bijbehorende uit gangen.
Fig. 10 toont de schakelingen voor het afleiden van bepaalde stuursignalen uit bepaalde uitgangssignalen van het stuurgeheugen.
Fig. 11 toont in detail de schakeling van het T/RAM-adresgrendel-10 register.
Fig. 12 toont in detail de schakeling van de T/RAM.
Fig. 13, 14 en 15 tonen schakelingen voor het afleiden van bepaalde stuursignalen.
Fig. 16 toont de schakeling van de T/RAM multiplexer in detail.
15 Fig. 17 toont de schakeling van de referentie/wijzigingstabel in detail.
Fig. 18 toont de tijdbepalende signalen die gebruikt worden voor het besturen van de werking van de informatieverwerkende inrichting.
Fig. 19 toont in detail de elementen van de centrale processor die 20 betrekking hebben op de monitorfunktie.
Fig. 20 illustreert in concept de werkwijze voor het wissen van waargenomen ingevoerde gegevens in de T/RAM.
Fig. 21 toont de schakeling van de geheugenadresregistermultiplexer in detail.
25 Fig. 22 en 23 tonen de tijdsrelaties bij toegang tot de T/RAM en bij het laden van een in te voeren gegeven in de T/RAM in overeenstemming met de uitvinding.
In de bijgaande figuren, en in het bijzonder in fig. 1, is een informatieverwerkende inrichting, gebruik makend van en virtueel geheugen, 30 schematisch geïllustreerd. De informatieverwerkende inrichting 10 is voorzien van een centrale processor (CPU) 12, die direkt toegang heeft tot een stuurgeheugen 14, waarin groepen van stuursignalen zijn ondergebracht voor het sturen van de hardware van de informatieverwerkende inrichting. Bepaalde groepen van stuursignalen worden aangesproken in res-35 ponsie op instrukties ingevoerd via perifere eenheden, of in responsie op de huidige bedrijfstoestanden binnen de centrale processor, alles op een uit de stand der techniek bekende wijze.
De informatieverwerkende inrichting 10 omvat verder een hoofdgeheugen 16 en een geheugenstuureenheid 18, die als funktie heeft het verde-40 len van de adrestoegankelijkheid tussen de centrale processor en de 8105849 10 perifere eenheden. Tot de perifere eenheden behoort een sekundair geheugen 20, en andere eenheden zoals een toetsenbord, een beeldschermeen-heid, een afdrukeenheid, telekommunikatiekoppelschakelingen en dergelijke. Het hoofdgeheugen 16 -.wordt geadresseerd door de centrale processor 5 via de bus 15 (waartoe data- en adreslijnen behoren) en de geheugen-stuureenheid 18.
Het hoofdgeheugen 16 heeft een capaciteit van 8 megabytes (8.388.608 bytes) met een woordgrootte van 32 bits (vier bytes). Het hoofdgeheugen 16 wordt geadresseerd over 24 lijnen, vla welke een 24-bit 10 fysisch adres wordt aangeboden. De inhoud van het hoofdgeheugen 16 wordt verdeeld in paginaframes. Een paginaframe heeft een grootte van 2 Kbytes. Zoals blijkt uit fig. 8 omvat het 24-bits fysische adresformaat een 13-bit paginaframenummer en een 11-bit offsetinformatie waarmee een byte binnen het paginaframe wordt gespecificeerd. (Het (meest signifi-15 cante) extra bit in het paginaframenummer maakt een toekomstige uitbreiding van het geheugen met een faktor 2 mogelijk).
De inhouden van de bestandsgeheugeneenheden ofwel het sekundaire geheugen 20 zijn verdeeld in pagina’s, waarbij elke pagina dezelfde afmeting heeft als het paginaframe in het hoofdgeheugen 16, dat wil zeggen 20 2 Kbytes groot is. Data wordt overgedragen tussen het sekundaire geheu gen en het hoofdgeheugen in blokken, in het bijzonder in pagina's. De betreffende wijze waarop dit wordt gerealiseerd maakt geen deel uit van de uitvinding.
In fig. 2 zijn een aantal elementen van de centrale processor 12, 25 die in verband met de uitvinding van belang zijn, in meer detail dan in fig. 1 in een blokschema geïllustreerd. De centrale processor 12 bevat in het bijzonder een rekenkundige eenheid (ALU) 22 van bekend ontwerp, voorzien van twee 32-bits ingangsbussen, de A-bus 21 en de B-bus 23, terwijl de uitgang gekoppeld is met een 32-bits bestemmingsbus, de C-bus 30 24. De C-bus 24 vormt, naast andere bestemmingen, de ingang voor een stapelgeheugen 30, omvattende 256 registers van elk 32 bits, van een C-bus/geheugenmultiplexer 32, van een T/RAM adresgrendelregister 38, en van een 24-bits virtueel adresregister 26. Een deel van het stapelgeheugen 30 is aangegeven als het monitorgebied 34, omvattende registers met 35 128 woorden van elk 32 bits. Zoals uit het volgende nog zal blijken wordt het monitorgebied 34 gebruikt voor het opslaan van een lijst van kortgeleden vertaalde virtuele adressen. De funktie van het monitorgebied zal uit het volgende nog blijken en in het bijzonder duidelijk worden uit de beschrijving van fig. 19.
40 Een verder deel 36 van het stapelgeheugen 30 wordt gebruikt voor ( __________ 8105849 11 het opslaan van een groep signalen samen aangeduld als de tabel van seg-mentbeschrijvingswoorden. Er zijn 8 van deze segmentbeschrijvingswoorden in de tabel, een voor elk segment van de virtuele adresruimte, gerealiseerd op een bepaald moment door de hardware. Het formaat van een seg-5 mentbeschrijvingswoord is getoond in fig. 7 en de toepassing ervan zal bij de beschrijving van fig. 19 worden verklaard.
De C-bus/geheugenmultiplexer 32 wordt geschakeld door geheugen-stuursignalen, die in verband met de uitvinding van minder belang zijn, teneinde ofwel data vanaf het hoofdgeheugen ofwel vanaf de C-bus 24 door 10 te geven via de uitgang van de multiplexer 32 naar een groep van 5 ge-heugendataregisters (0-4) 40. De uitgangssignalen van de geheugendata-registers 40 worden ofwel toegevoerd aan een databuffer 44 en vandaar naar het hoofdgeheugen 16, ofwel toegevoerd aan een groep werkregisters en verschuivings- en vermenigvuldigingslogicaschakelingen, die niet in 15 detail getoond zijn, omdat hun bepaalde konfiguratie geen deel uitmaakt van de uitvinding.
Het 32-bits statusregister 46 is niet gekoppeld met de A-, B- of C-bus; de bits ervan worden individueel ingesteld en afgetast door de hardware van de CPU 12 tijdens het bedrijf. De bepaalde statusbits die 20 in verband met de uitvinding van belang zijn zijn de bits "M2H" en "M2B" die op een nog te beschrijven wijze ingesteld worden door de schakeling van fig. 17, en "STATE", hetgeen het ingangssignaal is van de schakeling van fig. 14. Dit ”STATE”-bit indiceerd ofwel de "systeemtoestand” (STATE * 0) ofwel de "gebruikertoestand" (STATE =* 1); het bedrijfssysteem loopt 25 in de systeemtoestand, terwijl alle programma’s lopen in de gebruikstoe-stand. Bepaalde machinefunkties kunnen in de ene of de andere toestand niet beschikbaar zijn; de details zijn in verband met de uitvinding niet relevant.
Het hoofdgeheugen 16 wordt geadresseerd door een groep van drie ge-30 heugenadresregisters (MAR 0-2) tezamen aangeduid door het referentie-cijfer 28. De MAR’s 28 worden geladen vanuit de MAR-multiplexer 52, die in meer detail in fig. 21 is getoond. De drie individuele MAR-registers hebben respektievelijk een lengte van 24, 32 en 32 bits. Individuele registers van deze drie geheugenadresregisters worden geselekteerd voor 35 het uitvoeren van verschillende funktles door de CPU 12, maar deze se-lektie is in verband met de uitvinding van minder belang en zal in het volgende niet worden gespecificeerd. De uitgangssignalen van de MAR’s 28 worden toegevoerd aan de B-bus 23 en aan een (niet getoond) geheugen-adresgrendelregister, van waar de (fysische) adressignalen worden afge-40 geven voor het adresseren van het hoofdgeheugen 16 op een konventionele 8105849 12 wijze, hetgeen ook weer geen deel uitmaakt van de uitvinding.
Teneinde in overeenstemming met de uitvinding voordelen te realiseren in het geheugenbeheer omvat de centrale processor 10 verder een lokaal willekeurig toegankelijk geheugen 42, aangeduid met de term 5 translatie-RAM of T/RAM, voorzien van vier K-geheugenplaatsen (4096) van elk 16 bits. De T/RAM 42 wordt geïndexeerd door 12 lijnen die tezamen een 12-bits index verschaffen. De t:RAM 42 bevat een ingevoerd gegeven per pagina (elke pagina bevat 2 Kbytes) voor de gehele 8 megabyte grote virtuele adresruimte, die door de hardware kan worden gerealiseerd.
10 In een voor meerdere taken bestemde informatieverwerkende inrich ting kan de virtuele adresruimte worden beschouwd als verdeel in segmenten. In de hierin beschreven specifieke inrichting is de virtuele adresruimte verdeeld in 8 segmenten, elk ter grootte van 1 megabyte. Zoals blijkt uit fig. 3, waarin de door de hardware gerealiseerde virtuele 15 adresruimte in concept is getoond, bevat het segment 0 de bedrijfspro-grammatuur van de informatieverwerkende inrichting, segment 1 bevat een gebruikerprogramma, segment 2 bevat een gebruikerprogramma en verdere segmenten zijn voor uitbreiding beschikbaar. Elke gebruiker van de machine ziet een virtuele adresruimte van 8 segmenten, waarbij de be-20 drijfsprogrammatuur aanwezig is in segment 0 van deze ruimte, terwijl zijn eigen programma en data aanwezig zijn in de resterende segmenten.
Het 24-bits virtuele adresformaat is getoond in fig. 5. Het eerste (meest significante) bit (V0) in de virtuele adressignalen is een ongel-dig-bit, hetgeen in een geldig 23-bits adres gelijk is aan 0; als dit 25 bit gelijk is aan 1, dan is het adres groter dan toegestaan. (Het 24-bits virtuele adresformaat maakt een toekomstige uitbreiding van de door de hardware gerealiseerde virtuele adresruimte mogelijk). De toestand van het meest significante bit V0 wordt getest door de hardware in de inrichting, zoals zal worden beschreven. De bits VI tm V12 vormen een 30 eenheid, aangeduid als de T/RAM-index. Dit deel van het adres wordt logisch verdeeld in twee gedeelten, een segmentnummer en een paginanummer, tijdens het bedrijf van de centrale processor. Er wordt echter in hardware geen onderscheid gemaakt. De T/RAM-index wordt vertaald gedurende het proces waarin het virtuele adres wordt afgeheeld op het fysische 35 adres, op een wijze zoals nog zal worden beschreven. Het overblijvende deel van het virtuele adres (V13 - V23) vormt de 11-bits offset, ofwel de plaats van het byte binnen de pagina. Dit deel van het adres wordt niet vertaald, omdat het zowel voor het virtuele als voor het fysische adres gelijk is.
40 Voor het opbergen van signalen in de T/RAM of voor het ophalen van 8105849 * 13 signalen daaruit wordt de T/RAM geïndexeerd door de twaalf "T/RAM index" signalen afgegeven door het T/RAM-adresgrendelregister 38, dat 24 virtuele adressignalen (zoals getoond in fig. 5) ontvangt via de C-bus 24. Tijdens het bedrijf van de informatieverwerkende inrichting wordt de 5 T/RAM met telkens een gegeven tegelijkertijd geladen vanuit het virtuele adresregister 26 op een nog nader te beschrijven wijze.
Het formaat van een in de T/RAM ingevoerd gegeven is getoond in fig. 4. Dit gehele gegeven omvat 16 bits; bit 0 is een foutbit, bit 1 is een leesbeschermbit, bit 2 is een schrijfbeschermbit, en de bits 3-15 10 bevatten het paginaframenummer. Zoals blijkt uit fig. 2 worden de pagi-naframenummersignalen van een geadresseerd ingevoerd gegeven uitgelezen uit de T/RAM 42 en toegevoerd aan de T/SAM multiplexer 54, die tevens een ingangssignaal ontvangt van het T/RAM-adresgrendelregister 38. De werking van de T:RAM multiplexer 54 zal nog aan de hand van fig. 16 vor-15 den besproken.
Het paginaframenummergedeelte (de bits 3-15) van het uitgangssignaal van T/RAM 42 wordt eveneens gebruikt voor het indexeren van de referentie- en wijzigingstabel 50, welke een 2-bits ingevoerd gegeven per paginaframenummer bevat. Het gebruik van een referentie- en wijzigings-20 tabel is op zichzelf bekend en zal derhalve niet in detail worden besproken. De twee bits omvatten een referentiebit en een wijzigingsbit voor elk paginaframe; het referentiebit wordt hoog ingesteld om een referentie naar dat paginaframe in het hoofdgeheugen aan te geven; het wijzigingsbit wordt hoog ingesteld om aan te geven dat het korresponde-25 rende ingevoerde gegeven in het hoofdgeheugen is gewijzigd. Als deel van zijn "huishoudelijke" bewerkingen refereert de bedrijfsprogrammatuur aan het wijzigingsbit en herschrijft het korresponderende deel van het se-kundaire geheugen teneinde dit in overeenstemming te houden met het hoofdgeheugen. De referentie- of wijzigingsbits worden alleen ingesteld 30 wanneer een translatie wordt uitgevoerd, niet bij elke geheugenreferen-tie. (Het optreden van niet op translatie betrekking hebbende geheugen-referenties zal nog in het volgende worden besproken). De referentie- en wijzigingsbits worden teruggesteld wanneer het paginaframe opnieuw wordt gebruikt, dat wil zeggen wanneer een verschillend gedeelte van het se-35 kundaire geheugen wordt gelezen in dat paginaframe van het hoofdgeheugen, normaal op een tijdstip waarop de informatieverwerkende inrichting van taak wisselt.
In verband met de uitvinding is het van belang dat de geheugen-adresregisters 28 langs twee wegen ingangssignalen ontvangen. Allereerst 40 worden bij het optreden van de "T/RAM-fout", die nog in het volgende 8105849 14 wordt besproken, (virtuele) paginanummersignalen ontvangen van het T/RAM-adresgrendelregister 38. Anderzijds, wanneer er geen fout optreedt in de T/RAM, dan worden de (fysische) paginaframenummersignalen ontvangen van de T/RAM multiplexer 54. In beide gevallen worden de offsetsig-5 nalen (de elf minder significante bits) ontvangen van het T/RAM-adresgrendelregister 38.
Zoals blijkt uit fig. 9 bevat het stuurgeheugen 14 stuursignalen, die worden aangesproken in groepen van 48 signalen, afgegeven aan de uitgang op 48 parallelle lijnen. Het signaal op elke lijn kan ofwel hoog 10 (1) ofwel laag (0) zijn, en wordt direkt toegevoerd aan de hardwarescha- kelingen van de centrale processor 12, teneinde de werking daarvan de besturen. Van de signalen op de lijnen zijn er slechts enkele in verband met de uitvinding van belang. Dat zijn de signalen 0-6, die als groep worden aangeboden aan een dekodeerschakeling (fig· 10) teneinde een van 15 de stuursignalen, geïdentificeerd door de mnemonics ’’LT/RAM" (laden van een gegeven in de T/RAM), "TRCTM (test referentie/wijzigingstabel), en "RRCT" (terugstellen referentie/wijzigingstabel) indiceren, de signalen 22 en 23, die een van de drie MAR-registers 28 selekteren en waarvan de toepassing nog in het volgende zal worden besproken; en de signalen 20 27-29, die als groep worden aangeboden aan een dekodeer schakeling,,(fig.
10) voor het aflelden van een van beide translatiestuursignalen geïdentificeerd door de mnemonics ”WT" (translatiebewerking van het schrijf-type) en "TRAN" (translatiebewerking). De bepaalde toepassing van de afgeleide stuursignalen zal uit het volgende nog duidelijk blijken.
25 De algemene wijze van aanspreken van bepaalde groepen van stuursig nalen in responsie op macro-instrukties en machinetoestanden vormt geen deel van de uitvinding en zal op zichzelf duidelijk zijn uit de stand der techniek van het besturen van informatieverwerkende inrichtingen. Het aanspreken van bepaalde groepen, die in verband met de uitvinding 30 van belang zijn, zal in het volgende nog worden beschreven.
In fig. 11 is de schakeling van het T/RAM-adresgrendelregister 38 in detail getoond. De bits 8-31 van de 32-bits C-bus 24 waarover het virtuele 24-bits adres wordt getransporteerd, worden ingevoerd in het grendelregister 38. Het grendelregister 38 wordt bestuurd door een sig-35 naai op de ingang "CK", omvattende een stuursignaal en een kloksignaal; het stuursignaal is een van de signalen aangeduid met TRAN, LT/RAM, TRCT, of RRCT, waarvan de afleidingen zijn getoond in fig. 10, terwijl het kloksignaal is aangeduid met "T2" (fig. 18). Onder klokpulssturing zorgt het grendelregister voor overdracht van de bits 0-13, waartoe be-40 hoort het bit V0 ("IVA") en de 12 bits van de T/RAM index (zie fig. 5) 8105849 15 van het virtuele adres. De resterende uitgangssignalen van het grendel-register 38 omvatten de 11-bits offset (zie fig. 5) en worden aangeboden aan de HAR multiplexer 52.
In fig a 12 is de schakeling van de T/RAM 42 in detail getoond. De 5 twaalf T/RAM indexbits van het grendelregister 38 (fig. 11) worden aangeboden voor het indexeren van de T/RAM ofwel voor de ingang ofwel voor de uitgang. Signalen, die een in de T/RAM in te voeren gegeven vertegenwoordigen, kunnen aan de T/RAM worden aangeboden aan de data-ingangs-poorten ("Dl"), afkomstig van het virtuele adresregister (26) bij aan-10 bieden van het stuursignaal "LT/RAM” (van de schakeling volgens fig. 10) tezamen met het kloksignaal T2 (fig. 18). De signalen worden opgeborgen op de geïndexeerde plaats. Signalen representatief voor het geïndexeerde ingevoerde gegeven worden uitgevoerd via de data-uitgangspoorten (”D0") en de bits 3-15 (die het paginaframenummer vertegenwoordigen) worden 15 aangeboden aan de T/RAM multiplexer 54 (fig. 16), waarvan de werking nog zal worden.beschreven.
Zoals blijkt uit fig. 4 bevatten de als ingevoerd gegeven in de T/RAM opgeborgen signalen een foutbit (F), een leesbeschermbit (RP) en een schrijfbeschermbit (WP) alsmede een paginaframenummer van 13 bits. 20 Zoals blijkt uit fig. 12 worden deze zestien signalen af gegeven via de data-uitgangspoorten (DO) van de T/RAM 42. Fig. 13 toont dat het foutbit tezamen met het "IVA” bit van het T/RAM adresgrendelregister 38 (fig.
11), de stuursignalen CM 22 en 23 van het stuurgeheugen 14 (MAR selek-tiesignalen), en TRAN (van fig. 10) worden aangeboden aan de logische 25 translatietrapschakeling 56, die een van de twee mogelijke trapsignalen TTO en TTl genereert. Dit zijn beide translatietrapsignalen; het onderscheid ertussen hangt alleen af van het feit welk van de geheugenadres-registers de adressignalen moeten ontvangen, hetgeen in verband met de uitvinding niet van belang is.
30 Zoals blijkt uit fig. 14 worden de WP en RP bits van de T/RAM 42 tezamen met het STATE statusbit (fig. 2) en de WT en TRAN stuursignalen (van fig. 10) aangeboden aan een logische beschermingstrapschakeling 58. Deze schakeling genereert een trapsignaal TT2. Het gebruik van bescher-mingsbits is in het algemeen bekend en zal niet in detail worden be-35 schreven.
De drie trapsignalen worden aangeboden aan de schakeling 60 van fig. 15, die indien er geen trapsignaal is gegenereerd (dat wil zeggen dat er noch een T/RAM fout noch een beschermingsfout optreedt) een "geen trap" stuursignaal TT opwekt. De verdere funktie van de drie trapsigna-40 len zal in het volgende nog worden beschreven.
8105849 16
Zoals blijkt uit flg. 16 wordt het stuursignaal TT tezamen met het klokpulssignaal Tl aangeboden aan de T/RAM multiplexer 54 voor het se-lekteren van een van zijn twee Ingangen (elke ingang bestaat uit een groep van lijnen). Indien er geen trapsignalen optreden dan wordt het 5 13-bit paginaframenummergedeelte van het ingevoerde T/RAM gegeven, dat uit de T/RAM 42 is uitgelezen (als fysisch adres) overgedragen door de multiplexer 54 via de lijnen TR 0-12 naar de MAR multiplexer 52 (fig.
2). Als echter een trapsignaal optreedt, dan worden de C-bus bits 8-20 (virtueel adres) overgedragen vla de lijnen TR 0-12 naar de MAR multi-10 plexer 52.
In fig. 17 is de referentie/wijzigingstabel 50 in meer detail getoond. De stuursignalen, die de werking van deze tabel besturen, zijn aangeduid met de mnemonics WT (translatie-operatie van het schrijftype), RRCT (terugstellen referentie/wijzigingstabel), RF (instellen referen-15 tiebit), en TRCT (testen referentie/wijzigingstabel), alle afkomstig van fig. 10; TRAN (translatiebewerking), afkomstig van fig. 13; TT (geen trapsignalen) afkomstig van fig. 15; CM 22 (een van de MAR selektie-stuursignalen) afkomstig van fig. 9; en CL9 en CLIO, die worden af gegeven door het T/RAM grendelregister 38 (fig. 11). De klokpulssignalen Tl 20 en TA (fig. 18) besturen verder de werking van de referentie/wijzigings- \ tabel. Het signaal RRCT zorgt voor het terugstellen van het 2-bits ingevoerde gegeven, geïndexeerd door de T/RAM bits 3-15 op ”00” (beide bits zijn op de lage toestand gesteld). Het signaal RF zorgt voor het instellen van het "referentie"bit van het geïndexeerde ingevoerde gegeven in 25 de hoge toestand. Het signaal WT zorgt met TT voor het instellen van het "wijzigings"bit van het geïndexeerde ingevoerde gegeven in de hoge toestand. Het gebruik van het paginaframenummer van T/RAM 42 voor het indexeren van de referentie/wijzigingstabel 50 resulteert in een toenemende snelheid en werkingsgraad van het bedrijf van de informatieverwerken-30 de inrichting.
Het signaal TRCT zorgt ervoor dat de statusbits ”M2H” en ”M2B" in het statusregister 46 (fig. 2) worden ingesteld op de waarden van de referentie- en wijzigingsbits van het geadresseerde ingevoerde gegeven. De statusbits worden later getest door de bedrijfsprogrammatuur om vast te 35 stellen welke delen van het sekundaire geheugen herschreven moeten worden om ze in overeenstemming te houden met de inhouden van het hoofdgeheugen. Deze procedure is in de stand der techniek betreffende de werking van informatieverwerkende machines bekend en maakt ook geen deel uit van de uitvinding.
40 Zoals blijkt uit fig. 9 worden de trapsignalen ttO, ttl en tt2 ge- 8105849 17 brulkt om toegang te verkrijgen, tot bepaalde groepen, van stuursignalen opgeborgen in het stuurgeheugen. De details van bepaalde stuursignalen voor het uitvoeren van geïndexeerde funkties zullen afhangen van de ge-*. detailleerde struktuur van de machine, waarin zij moeten worden gebruikt 5 en het valt binnen de kennis van ontwerpers van informatieverwerkende machines om dergelijke bepaalde signalen te selekteren. Derhalve zal dit aspekt van de werking van de inrichting slechts in zijn algemeenheid worden aangegeven zonder details te beschrijving van de stuursignalen, met uitzondering van het signaal dat nodig is voor het laden van T/RAM. 10 In het algemeen bestuurt de T/RAM fouten behandelende groep van stuursignalen de CPU voor het kopiëren van signalen uit het gedeelte 36 van de stapel 30 (tabel van segmentbeschrijvingswoorden) in een van de geheugendataregisters 40, welke signalen representatief zijn voor een bepaald segmentbeschrijvingswoord geïndiceerd door het segmentgedeelte 15 (de drie hoogst significante bits) van de T/RAM index van de virtuele adressignalen, die zijn afgedragen naar een werkregister vanuit de ge-heugenadresregisters 28 via de B-bus 23.
Uit fig. 7 blijkt dat elk segmentbeschrijvingswoord bestaat uit 32 bits, waarvan het bit 0 wordt aangeduid als het "monitorbit", waarvan 20 het gebruik nog nader zal worden beschreven; de bits 1-10 vertegenwoordigen de lengte van de paginatabel voor het segment; de bits 11-30 vertegenwoordigen het adres van de paginatabel voor het segment; en bit 31 is een "virtueel/fysisch" bit aangevende of het adres virtueel of fysisch is. Als het paginatabeladres fysisch is dan behoeft het adres 25 niet te worden vertaald; als het virtueel is dan moet het worden vertaald voorafgaande aan de verwerking.
Het paginatabeladresgedeelte van de segmentbeschrijvingswoordsigna-len wordt gebruikt voor het adresseren van de paginatabel in het hoofdgeheugen 16. Het formaat van een ingevoerd gegeven in de paginatabel is 30 getoond in fig. 6 en daaruit blijkt dat dit identiek is met het formaat van een ingevoerd gegeven in T/RAM. Het bepaalde ingevoerde gegeven in een paginatabel wordt geadresseerd door gebruik te maken van het pagina-gedeelte van het T/RAM indexgedeelte (de bits V1-V13) van de virtuele adressignalen (die nu in het werkregister staan). De signalen, die re-35 presentatief zijn voor het geadresseerde ingevoerde gegeven in de paginatabel worden vanuit het hoofdgeheugen naar het virtuele adresregister 26 gebracht. De foutbit van de PTE wordt getest. Indien het foutbit * 1, dan bevindt de pagina zich niet in het geheugen en moet met behulp van konventionele middelen daarnaar worden overgebracht, en het foutbit 40 wordt teruggesteld op segment 0. Als het foutbit = 0, dan zorgen de 8105849 18 stuursignalen LT/RAM (fig. 10) voor het laden van de paginatabel-invoer-signalen in de T/RAM op de geïndexeerde positie samen met het foutbit ingesteld op 0 en beschermingsbits waarvan de toestand wordt bepaald op een wijze die in verband met de uitvinding niet van. belang is.
5 Zoals blijkt uit fig. 19 wordt het "monitorbit" van de segmentbe- schrijvingswoordsignalen getest door de schakeling 62. Als het monitorbit laag is dan wordt de interpretatie van de macro-instruktie opnieuw gestart. Als het monitorbit hoog is, dan wordt een stuursignaal "MOVE VA" afgegeven, waardoor de virtuele adressignalen vanaf het werkregister 10 worden aangeboden aan het stapelregister 30. De stapeladreslogicaschake-ling 64 adresseert een plaats in het monitorgebied 34 van het stapelregister; de virtuele adressignalen worden opgeborgen binnen het monitorgebied. Maximaal 128 virtuele adressen kunnen in het monitorgebied worden opgeborgen. Er wordt een telling bijgehouden en gebruikt door de 15 stapeladreslogicaschakeling 64 bij het laden van verdere virtuele adressen. Nadat de virtuele adressen in het monitorgebied 34 zijn opgeslagen wordt de interpretatie van de macro-instruktie opnieuw gestart.
De in het monitorgebied 34 opgeslagen virtuele adressignalen zijn voor gebruik beschikbaar bij het wissen van bepaalde ingevoerde gegevens 20 in .T/RAM 42. Dat kan op diverse manieren worden uitgevoerd afhankelijk van bedrijfsomstandigheden die in verband met de uitvinding niet van belang zijn. In het bijzonder wanneer de informatieverwerkende inrichting wisselt van de ene taak naar de andere, kunnen waargenomen ingevoerde gegevens worden gewist door de bedrijfsprogrammatuur in samenhang met 25 andere "huishoudelijke" operaties, die uitgevoerd worden in verband met ' de taakwisseling, hetgeen in verband met de uitvinding verder niet van belang is. In fig. 9 wordt een "taakwissel"-signaal (afkomstig van de bedrijfsprogrammatuur) gebruikt om toegang te verkrijgen tot bepaalde stuursignalen in het stuurgeheugen teneinde de waargenomen ingevoerde 30 gegevens te wissen.
Tijdens het wissen van een ingevoerd gegeven in de T/RAM worden, zoals blijkt uit het concept dat geïllustreerd is in fig. 20, de in het monitorgebied 34 van het stapelregister 30 opgeslagen virtuele adressignalen toegevoerd aan het T/RAM adresgrendelregister 38 voor het indexe-35 ren van een bepaald ingevoerd te wissen gegeven. Het hoogst significante (fout) bit van het ingevoerde gegeven wordt in de hoge toestand ingesteld en de overblijvende bits worden in de lage toestand ingesteld op de geïndexeerde plaats teneinde het gegeven te wissen. Door gebruik te maken van adressen uit het monitorgebied kunnen de betreffende ingevoer-40 de gegevens snel worden gewist zonder dat het nodig is om de gehele 8105849 19 T/RAM te wissen. Tegelijkertijd kunnen de niet bewaakte ingevoerde gegevens (zoals signalen die representatief zijn voor adressen van een segment van de bedrijfsprogrammatuur) in de T/RAM blijven en behoeven niet te worden gewist of te herladen bij een volgende geheugentoegang. Dit 5 bespaart verdere bedrijfstijd.
Als voorbeeld wordt gekeken naar het gebruik van segment 1 van de viruele adresruimte (fig. 3). Wanneer het bedrijf van de informatieverwerkende inrichting begint, dan zijn er nog geen geldige ingevoerde gegevens in het T/RAM voor segment 1 van de virtuele adresruimte. De be-10 drijfsprogrammatuur zorgt aanvankelijk voor het laden van het segment-beschrijvingswoord voor segment 1, met M = 1 (waarmee een bewakingsfunk-tie wordt geïndiceerd, zie fig. 7). De taak die van segment 1 gebruik maakt begint dan.
Verondersteld wordt, dat bij de uitvoering van deze taak geheugen-15 referenties naar negen pagina’s van segment 1 zijn betrokken voordat de taak wordt onderbroken. Als elk van deze pagina's wordt aangesproken dan wordt zijn virtuele adres vertaald door referentie aan het segmentbe-schrijvingswoord en de paginatabel; bij elke referentie wordt de toestand van het monitorbit genoteerd en terwijl elk fysisch adres wordt 20 opgeborgen in de T/RAM wordt het virtuele adres opgeborgen in het moni-torgebied 34. Als de taak wordt onderbroken dan moeten de in T/RAM ingevoerde gegevens van segment 1 worden gewist. In dit voorbeeld zullen er op dit tijdstip negen virtuele adressen opgeborgen zijn in het monitor-gebied 34 van het stapelregister 30. Derhalve behoeven slechts deze ne-25 gen in de T/RAM ingevoerde gegevens te worden gewist. Tijdens bedrijf wordt de translatiefunktie opgeroepen gedurende de werking van de CPU 12 in responsie op een macro-instruktie, dat wil zeggen een instruktie die deel uitmaakt van het door de informatieverwerkende inrichting uit te voeren programma. De CPU 12 interpreteert elke macro-instruktie en de 30 hardware-elementen van de CPU 12 funktioneren in overeenstemming met de interpretatie voor het uitvoeren van de gespecificeerde operatie. Deze hardware-interpretatie van macro-instrukties is in de stand der techniek algemeen bekend en de details ervan maken geen deel uit van de uitvinding met uitzondering van het hiernavolgend beschrevene.
35 In de loop van de interpretatie van de macro-instruktie zal de CPU
12, indien de CPU 12 herkent, dat een geheugentoegangsoperatie is gespecificeerd, de betreffende stuursignalen uit het stuurgeheugen 14 aanspreken, met inbegrip van bepaalde signalen op de lijnen CM 27-29 (fig. 10).
40 Niet iedere toegang tot het geheugen vereist een translatiebewer- 8105849 20 king- Veelal zullen opeenvolgende geheugenoperatles betrekking hebben op naburige geheugenplaatsen en in zo’n geval is het mogelijk om in plaats van een geheel adres van 23 bits voor elke opeenvolgende geheugenopera-tie te genereren het reeds gegenereerde adres (dat aanwezig is in de 5 MAR’s 28) te verhogen of te verlagen teneinde de gespecificeerde plaats voor de volgende geheugenoperatie aan te geven. Deze verhogende of verlagende stapfunkties worden aangeduid als "golf"-operaties en in de hierin beschreven inrichting wordt de "golf'-funktie gespecificeerd door kombinaties van de stuursignalen op de lijn CM 27-29, anders dan die ge-10 toond in fig. 10. De selektie van de "golf"- of ,,translatie,,-groepen van stuursignalen binnen het stuurgebeugen hangt af van andere aspekten van de interpretatie van de macro-instrukties door de CPU 12, hetgeen in verband met de onderhavige aanvrage niet van belang is.
Als het volgende fysische adres door translatie moet worden vastge-15 steld, dan zullen in plaats van een "golf"-funktie afhankelijk van het feit of het gaat om een schrijf- of leesoperatie, de via de drie lijnen CM 27-29 afgegeven signalen ofwel een "leeshoofdgeheugen met transla-tie”-operatie (RTRAN), of een "schrijfhoofdgeheugen met translatie"-operatie (WTRAN) besturen. Er zijn twee typen "RTRAN"-operaties mogelijk, 20 afhankelijk van bepaalde bedrijfsomstandigheden die in verband met de \ uitvinding niet van belang zijn.
De groep van stuursignalen, waartoe de RTRAN of WTRAN kombinaties van signalen op de lijnen CM 27-29 behoren, omvat ook C-bus-bestemmings-stuursignalen, welke ervoor zorgen, dat de signalen, die representatief 25 zijn voor het virtuele adres, waar toegang tot het geheugen moet worden verkregen, worden geplaatst op de C-bus 24 en van de C-bus 24 worden aangeboden aan het virtuele adresregister 26 en aan het T/RAM adresgren-delregister 38. Het stuursignaal TRAN zorgt voor het grendelen van het T/RAM indexgedeelte van de virtuele adressignalen uit het T/RAM adres-30 grendelregister 28 in T/RAM 42. Het geïndexeerde gegeven in T/RAM zorgt voor het invoeren van signalen afgegeven aan de data-uitgangspoorten van T/RAM 42. De fout- en besehermingsbits (TR 0 - TR 2) worden aangeboden aan de trapschakelingen van de fig. 13 en 14, terwijl de paginaframenum-merbits (TR 3-15) worden aangeboden aan de T/RAM multiplexer 54 (fig. 35 16). Zijn er geen trappen aanwezig, dan zorgt het "geen trap"-signaal TT
voor het schakelen van de multiplexer 54 voor het overdragen van de pa-ginaframenummersignalen naar de MAR multiplexer 52 (fig. 2), die deze dan overbrengt samen met de offsetsignalen (VI4-23) naar de MAR’s 28, waarin een groep van signalen wordt gevormd als representatie van het 40 fysische adres. Het geïndexeerde gegeven in de referentie/wijzigings- 8 1 0 5,8 4 9 21 tabel 50 wordt op dat moment bijgewerkt.
Als er anderzijds een T/RAM fout optreedt, dan wordt het foutbit (TR 0) ingevoerd in de schakeling 56 van fig. 13 en zorgt ervoor dat daar een translatietrapsignaal ttO of ttl wordt gegenereerd. Het uit-5 gangssignaal van de schakeling 60 (fig. 15) schakelt de multiplexer 54 op het doorgeven van TRAM adressignalen van de C-bus 24 naar de MAR multiplexer 52. Het translatietrapsignaal spreekt een bepaalde groep van stuursignaal in het stuurgeheugen 14 aan, welke ervoor zorgen dat een segmentbeschrijvingswoord in tabel 36 in het stapelregister 30 wordt ge-10 bruikt voor het in het geheugen 16 lokaliseren van de paginatabel voor dat segment. Het paginatabelgegeven wordt gevonden in de segmentpagina-tabel en het bepaalde gedekodeerde stuursignaal LT/RAM (fig. 10) zorgt ervoor dat paginatabelgegevenssignalen worden geladen in de T/RAM 42 (fig. 12), van V MAR 26, op de plaats die wordt aangegeven door de T/RAM 15 indexsignalen van het T/RAM adresgrendelregister 38: het monitorbit van het segmentbeschrijvingswoord wordt getest door de schakeling 62 en indien dit bit hoog is dan worden de virtuele adressignalen opgeborgen in het monitorgebied 34 van het stapelregister 30 voor gebruik bij het se-lektief wissen van de ingevoerde gegevens in de T/RAM op een later tijd-20 stip.
De interpretatie van de macro-instruktie wordt dan opnieuw gestart. De WTSAN of RTRAN stuursignalen worden opnieuw aangeboden aan de schakeling van fig. 10, en de signalen van het geïndexeerde gegeven worden gelezen uit de T/RAM 42. Ditmaal maakt het foutbit » 0 het mogelijk dat de 25 vertaalde paginaframenummersignalen worden geplaatst in de MAR’s 28 teneinde de door de macro-instruktie gespecificeerde lees- of schrijfopera-tie uit te voeren. De referentie/wijzigingstabel 50 wordt bijgewerkt op de door de paginaframenummersignalen (fig. 17) op dat moment aangegeven plaats.
30 Indien er een beschermingsfout optreedt, gedetekteerd door de scha keling 58 van fig. 14, dan spreekt het beschermingstrapsignaal tt2 bepaalde stuursignalen in het stuurgeheugen 14 (fig. 9) aan om de juiste werking van de CPU 12 te initiëren op een wijze die in verband met de uitvinding verder niet van belang is.
35 De tijdsrelaties bij het indexeren van de T/RAM 42 zijn getoond in fig. 22. Zoals uit deze figuur blijkt bevat een cyclus van de centrale processor (CP) vier tijdintervallen TA, T0, Tl en T2 (deze signalen worden gegenereerd op de wijze als geïllustreerd is in fig. 18). Elke translatie-operatie vergt twee CP-cyclussen, een ”M0VE”-cyclus en een 40 "TRAN”-cyclus. De tijdsafhankelijkheid is dezelfde onafhankelijk of er 8105849 22 een T/RAM fout optreedt.
Het tijdsignaal T2 wordt ingevoerd in het T/RAM adresgrendelregis-ter 38 (fig. 11) voor het vasthouden van de virtuele adressignalen van de C-bus 24 voor het indexeren van de T/RAM 42. De F, WP en RP bits van 5 het T/RAM uitgangssignalen worden aangeboden aan de schakelingen van de fig. 13 en 14 voor het genereren van trapsignalen, en het uitgangssignaal van de schakeling 60 (fig. 15) wordt tezamen met het tijdsignaal Tl aangeboden aan de T/RAM multiplexer 54. In geval van een T/RAM fout worden de virtuele adressignalen overgedragen naar de MAR multiplexer 52; 10 in andere gevallen worden de paginaframenummersignalen (het fysische adres) .overgedragen. De uitgangssignalen van de MAR multiplexer 52 (fig.
23) worden geladen in de MAR’s 28 door T2. Tenslotte wordt de referentie- en wijzigingstabel 50 bijgewerkt op de volgende Tl (indien er geen T/RAM fout optreedt).
15 Zoals beschreven is wordt in het geval van een T/RAM fout een trap- signaal aangeboden aan het stuurgeheugen 14 voor het aanspreken geschik- * te stuursignalen voor het behandelen van de fout. Een van de op deze wijze af te leiden signalen is LT/RAM (laden van T/RAM, fig. 10) die, zoals beschreven is, ervoor zorgt, dat de paginaframenummersignalen wor-20 den geladen in de T/RAM. De tijdsrelaties tijdens het laden van een gegeven in de T/RAM 42 na een T/RAM fout, zijn getoond in fig. 23.
Nadat de informatieverwerkende inrichting een deel van het eerste gebruikersprogramma heeft uitgevoerd wordt de inrichting omgeschakeld voor het uitvoeren van het programma van een andere gebruiker. Dat zal 25 in het algemeen betekenen dat nieuwe data ingebracht moet worden vanaf de bestandsgeheugens (sekundaire geheugen 20, fig. 1) naar het hoofdgeheugen. Een paginatabel (voor elk segment van de voor de tweede gebruiker geldende virtuele adresruimte) wordt gekonstrueerd door de bedrijfs-programmatuur teneinde de bepaalde paginaframes in het hoofdgeheugen, 30 waarin bepaalde pagina's van het sekundaire«geheugen moeten worden geschreven, vast te leggen. Deze paginatabellen zullen worden gebruikt voor het vertalen van virtuele in fysische adressen voor het virtuele geheugen, zoals dit wordt gezien door de tweede gebruiker. De paginatabellen voor het stelsel zoals dit werd gezien door de voorafgaande ge-35 bruiker zijn niet langer geldig (omdat het programma van de tweede gebruiker of de data nu kunnen worden gelokaliseerd in paginaframes die eerder werden gebruikt door de eerste gebruiker) en gegevens in de T/RAM die verwijzen naar de eerste paginatabellen moeten ongeldig worden gemaakt .
40 De bedrijfsprogrammatuur reageert op deze taakomschakeling door het 8105849 23 uitvoeren van een aantal "huishoudelijke” operaties, met het begrip van het aktiveren van nieuwe paginatabellen door het overbrengen van nieuwe segmentbeschrijvingswoorden vanaf het hoofdgeheugen naar het deel 36 van het stapelregister 30 teneinde de paginatabellen aan te wijzen. In de 5 loop van deze operaties zal de besturingsprogrammatuur de waargenomen gegevens uit de T/RAM wissen, zoals getoond is in fig. 20, gebruik makend van de virtuele adressen die opgeborgen zijn in het monitorgebied 34 van het stapelregister 30 op de reeds beschreven wijze. Niet alle gegevens in de T/RAM zijn echter ongeldig; diegene, die verwijzen naar het 10 bedrijfsprogrammatuursegment (segment 0) blijven geldig. Deze bedrijfs-programmatuurdelen zijn bijvoorbeeld een inventarismodule, een pagineer-module, bestandsbeheerdiensten, of diensten in verband met het beheer van een gegevensbestand. In dergelijke gevallen zal het segmentbeschrij-vingswoord voor het segment dat deze module bevat, een monitorbit heb-15 ben, dat op de lage toestand is ingesteld en als resultaat daarvan zal geen virtueel adres in dit segment worden opgeborgen in het monitorgebied 34. Derhalve zal geen van de voor dit segment in de T/RAM opgeslagen gegevens bij het wisselen van een taak worden gewist. Volgens de uitvinding zullen alleen de gegevens van de paginatabel voor een waarge-20 nomen segment ongeldig worden gemaakt wanneer een nieuwe taak wordt ge-aktiveerd.
Diverse modifikaties van de uitvinding, die binnen het kader van de bijgaande conclusies liggen, zullen voor de deskundige voor de hand liggen.
8105849

Claims (3)

1. Voor meerdere taken geschikte informatieverwerkende inrichting, voorzien van een virtueel geheugen met een aantal segmenten, welke informatieverwerkende inrichting omvat • 5 een centrale processor met inbegrip van een grendelregister, een geheugenadresregister en een geheugendataregister, een stuurgeheugen gekoppeld met de centrale processor, een bus gekoppeld met de centrale processor en omvattende adressignaallijnen voor ontvangst van adressignalen van het geheugenadresregis-10 ter, en datasignaallijnen voor ontvangst van datasignalen van het geheugendataregister en het leveren van datasignalen aan het geheugendataregister, een fysisch geheugen bestemd voor het opbergen van datasignalen die representatief zijn voor data en macro-instrukties, omvattende 15 een relatief langzaam toegankelijk sekundair geheugen gekoppeld met de genoemde bus omvattende een aantal pagina's waarbij elke pagina een aantal van de genoemde datasignalen bevat, en een relatief snel toegankelijk hoofdgeheugen, dat gekoppeld is met de genoemde bus, voor het ontvangen en leveren van datasignalen en 20 voor ontvangen van adressignalen, welk hoofdgeheugen een aantal pagina-frames omvat, ook bestemd om eenzelfde hoeveelheid datasignalen te herbergen als aanwezig is in een pagina van het genoemde sekundaire geheugen en adresseerbaar door fysische adressignalen omvattende paginaframe-nummersignalen en offsetsignalen, 25 welke centrale processor, stuurgeheugen en bus tezamen de middelen verschaffen voor het besturen van het kopiëren van een groep datasignalen ter grootte van een pagina vanuit het genoemde sekundaire geheugen in de geadresseerde paginaframes van het hoofdgeheugen en omgekeerd, welke informatieverwerkende inrichting bestemd is om te reageren op 30 bepaalde datasignalen representatief voor macro-instrukties en opgeslagen in het genoemde fysische geheugen, welke centrale processor en stuurgeheugen tezamen reageren op signalen die representatief zijn voor bepaalde geheugentoegang-macro-instrukties voor lezen of schrijven teneinde virtuele adressignalen te genereren met inbegrip van segmentnum-35 mersignalen, paginanummersignalen en offsetsignalen en het leveren van deze virtuele adressignalen aan het genoemde grendelregister, welke centrale processor en stuurgeheugen verder reageren op de genoemde geheugentoegang-macro-adresinstrukties voor het uitvoeren van een translatie van de genoemde virtuele adressignalen in korresponderende 40 fysische adressignalen, welke translatie omvat het aanbieden van de ge- 8105849 noemde segmentnummer- en paginanummersignalen aan het hoofdgeheugen voor het adresseren van bepaalde delen van het hoofdgeheugen, welke de pagi-naframemimmersignalen bevatten, en de overdracht van de paginaframenum-mersignalen vanuit het hoofdgeheugen tezamen met van het grendelregister 5 afkomstige offsetsignalen naar het geheugenadresregister, welke centrale processor en stuurgeheugen verder reageren op de ge-heugentoegang-macro-instrukties voor leesbewerkingen door het aanbieden van datasignalen afkomstig van de geadresseerde hoofdgeheugenpagina-frames aan het geheugendataregister, en reageren op geheugentoegang-10 macro-instrukties voor schr i j fb e werking en door het aanbieden van de geadresseerde hoofdgeheugenpaginaframesignalen van het geheugendataregister, gekenmerkt door een geïndexeerd willekeurig toegankelijk geheugen binnen de centra-15 le processor voorzien van indexeringsmiddelen gekoppeld met bepaalde uitgangen van het grendelregister, multiplexermiddelen waarvan de uitgangen zijn verbonden met de ingangen van het geheugenadresregister, welke middelen twee groepen van ingangen bezitten, waarbij de uitgangen van het willekeurig toegankelij-20 ke geheugen zijn gekoppeld met de eerste groep van ingangen en de uitgangen van het grendelregister zijn gekoppeld met de tweede groep van ingangen, welke centrale processor en stuurgeheugen tezamen aanvankelijk reageren op de genoemde geheugentoegang-macro-instruktie voor het aanbieden 25 van signalen die representatief zijn voor het virtuele adrespaginanummer vanuit het grendelregister naar de indexeringsmiddelen van het willekeurig toegankelijke geheugen teneinde aan de uitgangen ervan de groep van signalen opgeborgen op de geïndexeerde plaats aan te bieden met inbegrip van signalen, die representatief zijn voor het genoemde paginaframenum-30 mer en een foutsignaal dat een van twee toestanden kan aannemen, welke multiplexer middelen reageren op een eerste toestand van het genoemde foutsignaal voor het overdragen van de geïndexeerde pagina-framenummersignalen van het genoemde willekeurig toegankelijke geheugen naar het geheugenadresregister voor het adresseren van het hoofdgeheu-35 gen, en reageren op een tweede toestand van het foutsignaal voor het overdragen van virtuele adressignalen afkomstig van het grendelregister naar het geheugenadresregister ter translatie, welke centrale processor en stuurgeheugen verder reageren op de tweede toestand van het genoemde foutsignaal door uitvoeren van de 40 translatie van de virtuele adressignalen en het aanbieden van signalen 8 1 0 5 8 4 9 die representatief zijn voor het genoemde vertaalde paglnaframenummer aan de geïndexeerde lokatie in het willekeurig toegankelijke geheugen tezamen met een foutsignaal dat de eerste toestand heeft.
2. Informatieverwerkende Inrichting volgens conclusie 1, met het 5 kenmerk, dat de centrale processor verder omvat een statusregister met een aantal instelbare statusbits voor het indiceren van de bedrijfsstatus van de informatieverwerkende inrichting, een geïndexeerde referentie- en wijzigingstabel welke een instelbaar referentiebit en een instelbaar wijzigingsbit verschaft voor elk 10 paginaframe in het hoofdgeheugen, welke referentie- en wijzigingstabel gekoppeld is met de uitgang van het geïndexeerde willekeurig toegankelijke geheugen voor het indexeren van deze tabel door het paglnaframenummer, welke centrale processor en stuurgeheugen tezamen reageren op een 15 geheugentoegang-macro-instruktie voor het instellen van het geïndexeerde referentiebit, en op een geheugentoegang-macro-instruktie voor schrijf-operaties door het instellen van het geïndexeerde wijzigingsbit, waarbij de uitgang van de referentie- en wijzigingstabel gekoppeld is met het statusregister voor het instellen van bepaalde bits van de genoemde 20 statusbits in responsie op de toestand van de genoemde geïndexeerde referentie- en wijzigingsbits.
3. Informatieverwerkende inrichting volgens conclusie 1, verder ge-kenmerkt door een monitorbit in het genoemde hoofdgeheugen geassocieerd met elk 25 virtueel geheugensegment, welk bit een van twee toestanden aanneemt en een stapelsignaalgeheugen in de centrale processor, welke centrale processor en stuurmiddelen tezamen reageren op de genoemde tweede toestand van het foutsignaal en op de virtuele adresseg-mentnummersignalen gedurende de translatie van het genoemde virtuele 30 adres teneinde het monitorbit voor elk segment te adresseren en de toestand ervan te testen, welke centrale processor en stuurmiddelen reageren op de eerste toestand van het genoemde monitorbit door het aanbieden van virtuele adrespaginanummersignalen aan de stapelsignaalgeheugenmiddelen voor op-35 slag daarin, welke centrale processor en stuurmiddelen reageren op een omschakeling van taken gedurende het bedrijf van de genoemde inrichting door het ophalen van opgeborgen virtuele adrespaginanummersignalen uit de stapelsignaalgeheugenmiddelen en het aanbieden van de opgeborgen signalen als 40 indexeringssignalen aan het willekeurig toegankelijke geheugen voor Let 8105849 instellen van het foutsignaal in zijn genoemde tweede toestand. 8105849
NL8105849A 1980-12-29 1981-12-24 Informatieverwerkende inrichting. NL192144C (nl)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US22090280 1980-12-29
US06/220,902 US4410941A (en) 1980-12-29 1980-12-29 Computer having an indexed local ram to store previously translated virtual addresses

Publications (3)

Publication Number Publication Date
NL8105849A true NL8105849A (nl) 1982-07-16
NL192144B NL192144B (nl) 1996-10-01
NL192144C NL192144C (nl) 1997-02-04

Family

ID=22825488

Family Applications (1)

Application Number Title Priority Date Filing Date
NL8105849A NL192144C (nl) 1980-12-29 1981-12-24 Informatieverwerkende inrichting.

Country Status (11)

Country Link
US (1) US4410941A (nl)
JP (1) JPS57135493A (nl)
BE (1) BE891653A (nl)
CA (1) CA1165898A (nl)
CH (1) CH657218A5 (nl)
DE (1) DE3151745A1 (nl)
FR (1) FR2497374B1 (nl)
GB (1) GB2090448B (nl)
IT (1) IT1145635B (nl)
NL (1) NL192144C (nl)
SE (1) SE445269B (nl)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4464713A (en) * 1981-08-17 1984-08-07 International Business Machines Corporation Method and apparatus for converting addresses of a backing store having addressable data storage devices for accessing a cache attached to the backing store
US4525778A (en) * 1982-05-25 1985-06-25 Massachusetts Computer Corporation Computer memory control
JPS6047624B2 (ja) * 1982-06-30 1985-10-22 富士通株式会社 アドレス変換制御方式
US4513371A (en) * 1982-07-29 1985-04-23 Ncr Corporation Computer interface apparatus using split-cycle lookahead addressing for faster access to paged memory
US4926316A (en) * 1982-09-29 1990-05-15 Apple Computer, Inc. Memory management unit with overlapping control for accessing main memory of a digital computer
US4524415A (en) * 1982-12-07 1985-06-18 Motorola, Inc. Virtual machine data processor
USRE37305E1 (en) * 1982-12-30 2001-07-31 International Business Machines Corporation Virtual memory address translation mechanism with controlled data persistence
DE3300223A1 (de) * 1983-01-05 1984-07-05 Siemens AG, 1000 Berlin und 8000 München Anordnung zur umwandlung einer virtuellen adresse in eine physikalische adresse fuer einen in seiten organisierten arbeitsspeicher einer datenverarbeitungsanlage
US4580217A (en) * 1983-06-22 1986-04-01 Ncr Corporation High speed memory management system and method
US4538241A (en) * 1983-07-14 1985-08-27 Burroughs Corporation Address translation buffer
US4747043A (en) * 1984-02-10 1988-05-24 Prime Computer, Inc. Multiprocessor cache coherence system
US4669043A (en) * 1984-02-17 1987-05-26 Signetics Corporation Memory access controller
US4873629A (en) * 1984-06-20 1989-10-10 Convex Computer Corporation Instruction processing unit for computer
US4757438A (en) * 1984-07-12 1988-07-12 Texas Instruments Incorporated Computer system enabling automatic memory management operations
EP0182501A3 (en) * 1984-11-20 1988-01-20 Tektronix, Inc. Memory mapping method and apparatus
EP0203601B1 (en) * 1985-05-29 1992-08-05 Kabushiki Kaisha Toshiba Cache system adopting an lru system, and magnetic disk controller incorporating it
US4972338A (en) * 1985-06-13 1990-11-20 Intel Corporation Memory management for microprocessor system
US4698749A (en) * 1985-10-18 1987-10-06 Gte Communication Systems Corporation RAM memory overlay gate array circuit
JPH0814803B2 (ja) * 1986-05-23 1996-02-14 株式会社日立製作所 アドレス変換方式
US4930065A (en) * 1987-08-20 1990-05-29 David Computer Corporation Automatic data channels for a computer system
US4937736A (en) * 1987-11-30 1990-06-26 International Business Machines Corporation Memory controller for protected memory with automatic access granting capability
US5155834A (en) * 1988-03-18 1992-10-13 Wang Laboratories, Inc. Reference and change table storage system for virtual memory data processing system having a plurality of processors accessing common memory
US5155826A (en) * 1988-12-05 1992-10-13 Fadem Richard J Memory paging method and apparatus
US5099415A (en) * 1989-02-15 1992-03-24 International Business Machines Guess mechanism for virtual address translation
US5644787A (en) * 1993-08-03 1997-07-01 Seiko Epson Corporation Apparatus for controlling data transfer between external interfaces through buffer memory using table data having transfer start address transfer count and unit selection parameter
US5479628A (en) * 1993-10-12 1995-12-26 Wang Laboratories, Inc. Virtual address translation hardware assist circuit and method
US5842225A (en) * 1995-02-27 1998-11-24 Sun Microsystems, Inc. Method and apparatus for implementing non-faulting load instruction
US5838893A (en) 1996-12-26 1998-11-17 Microsoft Corporation Method and system for remapping physical memory
US5956754A (en) * 1997-03-03 1999-09-21 Data General Corporation Dynamic shared user-mode mapping of shared memory
KR100546403B1 (ko) * 2004-02-19 2006-01-26 삼성전자주식회사 감소된 메모리 버스 점유 시간을 가지는 시리얼 플레쉬메모리 컨트롤러
US7506009B2 (en) * 2005-01-28 2009-03-17 Dell Products Lp Systems and methods for accessing a shared storage network using multiple system nodes configured as server nodes
GB0505289D0 (en) * 2005-03-15 2005-04-20 Symbian Software Ltd Computing device with automated page based rem shadowing and method of operation
US20070039060A1 (en) * 2005-08-12 2007-02-15 Jamieson Georges E Methods and systems for programming secure data into programmable and irreversible cells
US9588902B2 (en) * 2012-12-04 2017-03-07 Advanced Micro Devices, Inc. Flexible page sizes for virtual memory

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3829840A (en) * 1972-07-24 1974-08-13 Ibm Virtual memory system
JPS51115737A (en) * 1975-03-24 1976-10-12 Hitachi Ltd Adress conversion versus control system
US3976978A (en) * 1975-03-26 1976-08-24 Honeywell Information Systems, Inc. Method of generating addresses to a paged memory
JPS52149444A (en) * 1976-06-08 1977-12-12 Fujitsu Ltd Multiplex virtual space processing data processing system
DE2641722C3 (de) * 1976-09-16 1981-10-08 Siemens AG, 1000 Berlin und 8000 München Hierarchisch geordnetes Speichersystem für eine datenverarbeitende Anlage mit virtueller Adressierung
JPS53121538A (en) * 1977-03-31 1978-10-24 Fujitsu Ltd Information processor

Also Published As

Publication number Publication date
FR2497374A1 (fr) 1982-07-02
US4410941A (en) 1983-10-18
BE891653A (fr) 1982-04-16
SE8107831L (sv) 1982-06-30
NL192144B (nl) 1996-10-01
CH657218A5 (de) 1986-08-15
DE3151745C2 (nl) 1991-05-16
JPH0425579B2 (nl) 1992-05-01
IT1145635B (it) 1986-11-05
SE445269B (sv) 1986-06-09
GB2090448B (en) 1984-11-28
CA1165898A (en) 1984-04-17
DE3151745A1 (de) 1982-08-19
IT8168706A0 (it) 1981-12-29
FR2497374B1 (fr) 1988-05-06
NL192144C (nl) 1997-02-04
JPS57135493A (en) 1982-08-21
GB2090448A (en) 1982-07-07

Similar Documents

Publication Publication Date Title
NL8105849A (nl) Informatie-verwerkende inrichting.
US3949379A (en) Pipeline data processing apparatus with high speed slave store
US4339804A (en) Memory system wherein individual bits may be updated
US5073851A (en) Apparatus and method for improved caching in a computer system
US3979726A (en) Apparatus for selectively clearing a cache store in a processor having segmentation and paging
US4888679A (en) Method and apparatus using a cache and main memory for both vector processing and scalar processing by prefetching cache blocks including vector data elements
US4442488A (en) Instruction cache memory system
US4747070A (en) Reconfigurable memory system
US5530829A (en) Track and record mode caching scheme for a storage system employing a scatter index table with pointer and a track directory
US4493026A (en) Set associative sector cache
US4439829A (en) Data processing machine with improved cache memory management
EP0315321B1 (en) Multiprocessor system with multiple memories
US4520441A (en) Data processing system
JP3666689B2 (ja) 仮想アドレス変換方法
US3947823A (en) Means for coordinating asynchronous main store accesses in a multiprocessing system using virtual storage
US4323968A (en) Multilevel storage system having unitary control of data transfers
US3701977A (en) General purpose digital computer
US3956737A (en) Memory system with parallel access to multi-word blocks
US3440615A (en) Overlapping boundary storage
JPS604493B2 (ja) マイクロプログラム化データ処理システム
US4445191A (en) Data word handling enhancement in a page oriented named-data hierarchical memory system
EP0173909A2 (en) Look-aside buffer least recently used marker controller
US4212058A (en) Computer store mechanism
EP0915416B1 (en) System for allowing a two word instruction to be executed in a single cycle and method therefor
KR920005296B1 (ko) 정보처리장치

Legal Events

Date Code Title Description
A85 Still pending on 85-01-01
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
V2 Lapsed due to non-payment of the last due maintenance fee for the patent application

Free format text: 970701