NL7908666A - Snel-werkend en compact uitgevoerd digitaal computer- stelsel. - Google Patents

Snel-werkend en compact uitgevoerd digitaal computer- stelsel. Download PDF

Info

Publication number
NL7908666A
NL7908666A NL7908666A NL7908666A NL7908666A NL 7908666 A NL7908666 A NL 7908666A NL 7908666 A NL7908666 A NL 7908666A NL 7908666 A NL7908666 A NL 7908666A NL 7908666 A NL7908666 A NL 7908666A
Authority
NL
Netherlands
Prior art keywords
memory
instruction
micro
instructions
register
Prior art date
Application number
NL7908666A
Other languages
English (en)
Original Assignee
Data General Corp
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 Data General Corp filed Critical Data General Corp
Publication of NL7908666A publication Critical patent/NL7908666A/nl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/268Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles

Landscapes

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

Description

^ fc- t / VO 8609
Data General Corporation
Westboro, Massachusetts, Verenigde Staten van Amerika.
Snel-werkend en compact uitgevoerd digitaal computerstelsel.
De uitvinding heeft "betrekking op een snel-werkend, digitaal computerstelsel. Meer in het bijzonder heeft de uitvinding betrekking op een architectuur voor een snel-werkend, compact uitgevoerd digitaal computerstelsel, in het bijzonder de daarin toegepaste voorzieningen, 5 waardoor de werksnelheid en rendement van een dergelijk stelsel wor den verbeterd.
Tot de basiselementen van een digitale computer behoren een processor voor het verwerken van in-machinetaal gestelde digitale data, en een geheugen. In het algemeen worden in machinetaal gestelde in-10 structies voor het besturen van de verwerkingsoperaties van de pro- ' cessor opgeslagen in een geheugen. Het geheugen kan tevens bevatten tenminste gedeelten van data, die moeten worden verwerkt. Instructies en data kunnen tussen de processor en het geheugen worden uitge-— wisseld via processoruitgarjpbusleidingen^geheugenuitgangsbusleidingen.
15 Veel gebruikte reeksen van instructies, die wel worden aangeduid als micro-instructiereeksen, worden opgeslagen in een afzonderlijk-micro-instructiegeheugen. Bepaalde instructies die wel worden aangeduid als macro-instructies zijn werkzaam om vanuit het micro-instructiegeheugen een corresponderende reeks van miero-instructies aan de processor aan 20 te bieden. Een computer omvat verder ingangs-uitgangsapparatuur voor het uitwisselen van instructies en data tussen de computer en externe inrichtingen. Tot externe inrichtingen kunnen behoren bijvoorbeeld een besturingsconsole, of een bandopslageenheid.
De prestatie van een dergelijke digitale computer is bepaald en 25 beperkt door de snelheid en het rendement, waarmede data kunnen worden verwerkt en instructies kunnen worden uit gevoerd. Teneinde een maximale prestatie van de computer te verkrijgen is in het- algemeen een efficient gebruik van beschikbare fysieke systeemconfiguraties vereist.
De prestatie van een computerstelsel en het rendement van fysieke ...sys-30 -teemconstructies zijn op diverse gebieden van bijzonder belang. Tot 7908666 2 <r deze gebieden behoren computer micro-instructiegeheugens; ketenvoorzieningen voor het opeenvolgend kiezen van micro-instructies uit micro-in-structiereeksen; ketenvoorzieningen voor het periodiek verversen van het computergeheugen; en voor het vooraf ophalen van instructies :'.j,nge-5 richte ketenvoorzieningen, waarmede tijdens het uitvoeren van een des betreffende instructie een direkt volgende uit te voeren instructie uit het computergeheugen kan worden opgehaald.
Fysiek systeemvolume, zoals vereist door micro-instructiege-heugen is bepaald door het rendement, waarmede micro-instructies daar-10 in kunnen worden opgeborgen. De mi’cro-instructie-organisatie is bepaald door de computerfunctie, terwijl de fysieke structuur van het micro-instructiegeheugen is bepaald door de beschikbare fysieke middelen. Een stel van micro-instructies kan bijvoorbeeld twee of meer afzonderlijke bladzijden van micro-instructies bevatten; elke bladzijde bevat 256 uit 15 ij-8-bits gevormde micro-instructies. Momenteel beschikbare, uitsluitend afleesbare geheugens voor het opslaan van micro-instructies kunnen worden gestructureerd als geheugens met een lengte van 512 woorden en een breedte van 8 bits. Een enkele bladzijde van micro-instructies zal kunnen worden geïmplementeerd'met zes uitsluitend afleesbare geheugens met 20 een lengte van 512 woorden ën een breedte van 8 bits. Het opslagrende- ment zou echter slechts 50$ bedragen; het miero-instructiegeheugen zou _ een fysiek volumè vereisen, dat tweemaal zo groot is als het volume,·, vereist voor het opslaan van een equivalent aantal bits. ’
Een andere beperking die aan de eomputerprestatie is gesteld, is 25 gegeven door de tijd- die is vereist om opeenvolgende micro-instructies van een reeks te kiezen. De voor een dergelijke keuze vereiste ketenvoorzieningen zouden derhalve voor het verkrijgen van een maximale kiessnelheid ‘een minimale implementatie van de fysieke uitvoering, en een minimale vertraging vereisen.
30 Andere beperking die aan de eomputerprestatie is gesteld is ge geven door de ketenvoorzieningen, die zijn vereist om het computergeheugen te verversen wanneer een bedrijfsmodus bestaat met ondersteuning vanuit een batterij. Deze ketenvoorzieningen betekenen echter, alhoewel hiermede een kritische functie samenhangt, geen rechtstreek-35 -se bijdrage aan de eomputerprestatie, zodat derhalve een minimale im- 7WF6 6ΊΓ 6 3 r* i plementatie van fysieke structuur is vereist.
De werksnelheid van de computer kan worden verhoogd door toepassing van ketenvoorzieningen voor het vooraf ophalen van instructies, waarbij tijdens het ten uitvoer brengen van een desbetreffende in-5 structie de volgende uit te voeren instructie uit het geheugen kan wor den opgehaald. Ook hier geldt, dat de ketenvoorzieningen minimale implementatie van de fysieke structuur vereisen voor het beschikbaar stellen van de gewenste functie.
Met de onderhavige uitvinding is beoogd computerstelsel-verbete-10 ringen te realiseren die zijn gericht op de in het voorafgaande be handelde aspecten ten aanzien van computerprestatie en rendement van fysieke comput er structuur, teneinde aldus de snelheid en het rendement van het stelsel te verbeteren, en tevens een oplossing beschikbaar te stellen voor de in het voorafgaande behandelde problemen en beper-15 kingen van de bekende technieken op dit gebied.
De onderhavige uitvinding heeft betrekking op een voor een com-puterstelsel bedoelde architectuur, waardoor de computerprestatie en.het * rendement van de fysieke structuur worden verbeterd. Dë~ architectuur . ' omvat een processor voor het verwerken van in machinetaal, gestelde da- 20 ta, een geheugen voor het opslaan van tenminste in machinetaal gestelde instructies, te gebruiken door de processor, micro-instructielogica voor het opslaan en beschikbaar stellen van reeksen van veel' gebruikte van instructies, en busleidingen voor het overdragen/tenminste van instructies tussen de processor en het geheugen. Tot de architectuur behoren 25 ketenvoorzieningen voor het verhogen van de prestatie en het rendement van het eomputerstelsel. Daartoe behoort een miero-instructiegeheugen met behulp waarvan een efficient gebruik wordt gemaakt van de beschikbare ruimte voor het micro-instrueti egehe^igen. Een ander aspect betreft micro-instructieketens, waarmede met hoge snelheid opeenvolgende 30 micro-instructies van een reeks kunnen worden gekozen. Een ander aspect betreft geheugenbesturingsketens, waarmede gedurende een modus met ondersteuning vanuit, een batterij de geheugeninhoudkan worden ververst.
Weer een ander aspect betreft ketenvoorzieningen voor het vooraf ophalen van instructies, waardoor tijdens het ten.uitvoer brengen van een 35 desbetreffende instructie de direkt volgende uit te voeren instructie f9 0-8 6 6 6 ~...... ........ ‘ • k uit het geheugen kan worden opgehaald.
Wegens de vergroting van de systeemprestatie en het systeemren-dement biedt het derhalve voordeel om de uitvinding toe te passen in een computerstelsel. Verder betekent de uitvinding een voordeel, aange-5 zien de micro-instructies meer efficiënt worden opgeslagen in een micro-instructiegeheugen. Bovendien maakt de onderhavige uitvinding het mogelijk de snelheid op te voeren, waarmede opeenvolgende micro-instructies kunnen worden gekozen en uitgevoerd. Tevens biedt de uitvinding de mogelijkheid om de beschikbare, fysieke ruimte voor het beschikbaarstellen 10 van een verversing van een geheugeninhoud efficiënt te gebruiken. Verder biedt de onderhavige uitvinding het voordeel, dat het vooraf ophalen van instructies kan worden uitgevoerd met een minimum aan implementatie van fysieke structuur.
Met de onderhavige uitvinding is derhalve beoogd een verbeterd 15 computerstelsel beschikbaar te stellen.
Tevens is met de uitvinding beoogd een verbeterd computer micro-instructiegeheugen beschikbaar te stellen, waarmede een efficiënte op- ' slag van micro-instructies mogelijk is. '
Het is een ander doel van de onderhavige uitvinding om de snel-20 heid, waarmede opeenvolgende micro-instructies kunnen worden uitgekozen en geïmplementeerd te verhogen door een daartoe dienende keteninrichting voor het kiezen van micro-instructies.
Ook is met de uitvinding beoogd een verbeterde geheugenbestu-ringsketeninrichting beschikbaar te stellen.
25 Tevens is beoogd een verbeterde instruetie-ophaalketen be schikbaar te stellen, waarmede tijdens het ten uitvoer brengen van een desbetreffende instructie de direkt volgende instructie uit een geheugen kan worden opgehaald.
Ter'nadere toelichting van de uitvinding zullen in .het onder-30 staande enige voorkeursuitvoeringsvormen daarvan worden behandeld met verwijzing naar de tekening. In de tekening is : fig. 1 een gedetailleerd blokschema van een computer, waarin de onderhavige uitvinding is toegepastj fig. 2 een schema van een van een computer de el-uitmakend micro-35 instruct iegeheugen; / 7T(TS 6~8 S ............. : “ .....
’ ·* ' e 5 fig. 2A een schema van een van een computer deel uitmakende micro-instructielogica met een sequentiebesturingsketen; fig. 2B een schema van ketenvoorzieningen voor het teweeg brengen van kloksignalen die worden gebruikt door het micro-instructiegeheugen 5 en de logica, zoals weergegeven in de fig. 2 en 2A; fig. 3 een schema van een van een computer deel uitmakende ge-heugenadresseerketen; fig. 3A een schema van een computergeheugen; fig. 3B een schema van een van een computer deel uitmakendé' ge-10 heugenbesturingsketen; fig. b een blokschema van een gedeelte van een van een computer deel uitmakende processor; en fig. bk een schema van ketenvoorzieningen voor het vooraf ophalen van instructie-adressen.
15 In het onderstaande zal een behandeling worden gegeven van de architectuur en werking van een computer, waarin de onderhavige uitvinding is toegepast. De architectuur en werking van een dergelijke computer zullen in eerste aanleg worden beschreven in de sfeer van een blokschema. Vervolgens zullen in de aangegeven volgorde gekozen gedeelten van 20 computer, en wel het micro-instructiegeheugen, de voor het verversen van geheugeninhoud dienende keten en de voor het vooraf ophalen van instructies dienende keten afzonderlijk worden behandeld.„Tenslotte zullen bepaalde kenmerken van de uitvinding in het kort worden samengevat.
Duidelijkheidshalve worden in de volgende behandeling bepaalde 25 . conventies aangehouden. Wanneer aan elkaar verwante ketenvoorzieningen in twee of meer figuren zijn weergegeven hebben de figuren een gemeenschappelijk figuurcijfer met een letteraanduiding, bijvoorbeeld fig. 2 en fig. 2A. Zich tussen dergelijke ketenvoorzieningen bevindende, daarvoor gemeenschappelijke elektrische punten zullen worden aangeduid door een 30 rechthoekig haakje bij een leiding die naar een dergelijk punt toe gaat en een aanduiding, zoals bijvoorbeeld "A-rb", waarbij "k" een aanduiding geeft omtrent de andere figuren met hetzelfde gemeenschappelijke punt en "bn een letteraanduiding is voor een bepaald gemeenschappelijk, elektrisch punt. De vervijzingseijfers zullen zijn samengesteld uit een 35 twee-cijferig getal (00-99)» voorafgegaan door het nummer van de figuur ’ 79 0 8 δ·β~β ....... ~~ o β Η· waarin deze voorkomen, "bijvoorbeeld 100 t/a 199 in fig. 1 of 1+00 t/m 1+99 in fig· In de situatie vaar in verwante ketens zijn veergegeven in tvee of meer figuren, zal het gebruikte figuurnummer dat nummer zijn , dat overeenkomt met de eerste figuur van de desbetreffende groep. De ver-5 vijzingscijfers zullen vorden toegevezen volgens een reeks, geldend over de bijbehorende groep van figuren.
Een gedetailleerde beschrijving van structuur en werking van ketenvoorzieningen die in de onderhavige aanvrage zullen worden behandeld zal slechts vorden gegeven voor zover nodig om de ^werking' te illustre-10 ren. Conventionele ketensymbolen zijn over de gehele beschrijving gebruikt. Slechts dii componenten die nodig zijn om de werking van'de desbetreffende keteninrichting te illustreren, zullen door een verwijzings-cijfer zijn aangeduid. Alle componenten die op dezelfde wijze zijn weergegeven als die, waarnaar in het bijzonder wordt verwezen, worden ge-15 acht identiek te zijn, alsook op dezelfde wijze te werken als die welke van een verwijzingscijfer zijn voorzien.
1. Computerarchitectuur en werking (fig. 1) A. Structuur
In fig. 1 is weergegeven een gedetailleerd, blokschema van 20 een computer 110 in de architectuur waarvan de onderhavige uitvinding is geïncorporeerd. De hoofdelementen van de computer 1.10 zijn.een een- . trale proeessoreenheid 11 h-, met' miero-instruetielogica 11+1+; geheugen 12l+ en een ingangs/uitgangskoppelketen 130.
De uitgang van een van de centrale proeessoreenheid lik deel 25 •uitmakende reken- en logische eenheid 112 is verbonden met de voor deze eenheid 112 aangebrachte uitgangsbusleiding .1.16 . (ALU0UT.). Deze busleiding 116 is verbonden met een data-ingang vaü een tijdelijk geheugen 118 (SPMEM), dat deel uitmaakt van de eentrale proeessoreenheid 11k (CPU), en met de ingangen van een dataregiater ..(DREG) 120 en een adres-30 register (AEEG) 122 van het geheugen 12k. De busleiding 116 is verder verbonden met ingangen van een universele, synehrone ontvanger/zender (UAKT) 126 en een voor data bedoelde ingang-/uitgang buffer (DI/O) 128A die deel uitmaken van de koppelketen 130 (I/O) . - ·
De uitgang van het adresregister 122 is verbonden.met de adres-35 ingangen van het tijdelijk geheugen 118' en met het voor een console be- 79 0 8 6¾ δ ~~ ~~~ ~~~~ 7 r doelde, uitsluitend afleesbare geheugen 132, dat deel uitmaakt van de centrale processoreenheid 114, alsook met een ingang van een geheugen-multiplexer 134 (MEMMUX). De uitgangen ran het dataregister 120 en de multiplexer 134 zijn respectievelijk verbonden met de data-ingangen en 5 de adresingangen van het geheugen 124. De uitgang van het geheugen 124 is verbonden met de voor het geheugen dienende uitgangsbusleiding 136 (MEMOUT). De uitgang van het uitsluitend afleesbare consolegeheugen 132 is eveneens, verbonden met de uitgangsbusleiding 136. Deze busleiding 136 is verbonden met de ingangen van het tijdelijke register 10 138 en een instruct reregister (IR) l4ö, dat eveneens deel uitmaakt van de centrale processoreenheid 114. De busleiding 136 is ook verbonden met een gtartadresgenerator (SAGE) 142, die deel uitmaakt van de micro-instructielogica 154 van de centrale processoreenheid 114.
Een eerste uitgang van het instruetieregister 140 is verbonden 15 met de busleiding 136 en met de adresingang van een als decoder "werk zaam uitsluitend afleesbaar geheugen 146, dat deel uitmaakt van de . micro-instructielogica 144. Een tweede uitgang van het instructiegeheu- gen 140 is verbonden met een voor het micro-instructiegeheugen aanwezige busleiding 148 (MEMOUT) in de miero-instruetielogica 144. Een derde 20 uitgang is verbonden met een instruct!emultiplexer 150 (lUSTMUX), deel uitmakend van de centrale processoreenheid "114. De uitgangen van de multiplxer 150, het geheügenregister 138 en vfcijdelijk geheugen 118 zijn verbonden met de ingangsbusleiding 152 (ALUïïi) voor de eenheid 112.
In de micro-instructielogica 144 zijn de uitgangen van de start-25 adresgenerator 152, het als decoder werkzame uitsluitend afleesbare geheugen 146 en een voor micro—instructiesprongen'dienende buffer 154 (yuDiSTJ) verbonden met de voor het micro-instruëtiegheugen aanwezige ingangsbusleiding 156 (yuMEHIN). Deze ingangsbusleiding 156 is verbonden met de ingang van een als microprogrammateller werkzaam register 30- 158 (^uPC). De uitgang van dit register 158 is verbonden met de adres ingang van het micro-instructiegeheugen 160 en de uitgang van dit geheugen 160 is verbonden met de busleiding "148 (^uMEMOUT).. Deze busleiding 148 is verbonden met de ingangen .van het miero-instruetieregister A 162 (^uIRA), het miero-instruetieregister B 164 (yuIRB) en de buffer .
35 154. De uitgang van het B-register 164 is verbonden met de ingang van 7908686 ~~ — a de sequentiebesturing 166 (SEQCNTL). De uitgangen van deze sequentiebesturing 166 zijn verbonden met de bes turings ingangen van de start adresgenerator 1^2, het als decoder werkzame, uitsluitend afleesbare geheugen 1¾-6, de buffer 15¼ en het register 158. De uitgang van het micro-5 instructieregister A 162 is verbonden met een andere ingang van de instructiemultiplexer 150.
In de koppelketen 130 is een ingang/uitgangkanaal 168 (ASCII) aangesloten tussen een externe koppelinrichting ASCII (niet weergegeven) en de universele asynchrone ontvanger /zender 126. De data-uitgang van 10 deze ontvanger/zender 126 is verbonden met de busleiding 152. Zoals in het voorafgaande reeds is opgemerkt, is de data—ingang van de ont-vanger/zender 126 verbonden met de busleiding 116. Verder is een data ingang/uitgangbusleiding 170, afkomstig van een (niet weergegeven) . externe databron, verbonden met de ingang van de databuffer 128B. De 15 uitgang van deze buffer 128B is verbonden met.· de busleiding 152. Zoals eerder werd opgemerkt is de ingang van de buffer 128A verbonden met de uitgangsbusleiding 116; de uitgang van de buffer 128A is verbonden met de data-ingang/uitgangbusleiding 17'0. · '
Verder omvat de computer 110 een hoofdvoedingsinrichting en een 20 een batterij omvattende hulpvoedingsinrichting, die eenvoudigheidshalve niet in de figuur zijn weergegeven.
Wanneer de in fig. 1 weergegeven computer.ia werking is, wordt een gebruikersprogramma, bijvoorbeeld data- en micro-instructies opgeslagen in het geheugen 12b en dit programma wordt., wanneer van de cen-25 trale processoreenheid 11¼ een verzoek is 'uitgegaan, vanaf de eenheid 11¼ overgedragen via de geheugenuitgangsbusleiding 136. De overdracht van data/macro-instructies vanuit het geheugen 12¼ en .het. inschrijven ervan in dit geheugen 12¼ vinden plaats via de uitgangsbusleiding 116. Voor het geheugen 12¼ bestemde lees- en schrijf adressen worden vanaf ’30 .de reken- en logische eenheid 112' via de uitgangsbusleiding 116 daarvan beschikbaar gesteld en opgeslagen'in.het.A-register 122. De N data /macro-instructies die moeten worden ingeschreven in het geheugen 12¼ worden eveneens beschikbaar gesteld door de reken- en logische eenheid 112 en opgeslagen in het D-register’1-20. .Data/macro-instruc-35 ties worden rechtstreeks vanaf het D-register:12'0 ingevoerd in het ge-.
7FO8680 9 heugen 12¼. De vanaf het A-register 122 afkomstige lees/schrijfadressen worden door de geheugenmultiplexer 13¼ omgezet in rij- en kolom-adressen en toegevoerd aan het geheugen 12¼. Op de geheugenuitgangsbusleiding 136 verschijnende data/macro-instructies kunnen via het' geheugenregis-5 ter 138 worden overgedragen naar de ingangsbusleiding 152 om door deze reken- en logische eenheid 112 te worden gebruikt. In het algemeen worden op de geheugenuitgangsbusleiding 136 verschijnende macro-instructies overgedragen naar het instruct!eregister ^0. Bepaalde macro-instructies, bijvoorbeeld data, kunnen vervolgens vanaf het instructieregister ^0 10. worden overgedragen naar de reken- en logische eenheid 112 en wel via de multiplexer 150 en de ingangsbusleiding 152. Veel gebruikte reeksen van instructies, die wel worden aangeduid als micro-instructies, zijn opgeslagen in de micro-instructielogica 1¼^ zoals in het onderstaande nader zal worden behandeld. Een macro-instruetie, die correspondeert 5 met een dergelijke reeks van micro-instructies, omvat ten dele. een".
instructie voor de micro-instructielogica 1¼¼. Deze logica 1¼¼ reageert op een der gelijke,'in het instructieregister 1V0 .verschijnende maero-instructie door de corresponderende reeks van micro-instructies op de uitgangsbusleiding 1 b-8 aan te bieden.
1 Zoals in het onderstaande nader zal worden.uiteengezet kunnen bepaalde gedeelten van micro-instructies worden overgedragen naar het micro-instructieregister A 162 en via de multiplexer 150 .naar de ingangsbusleiding 152.
Zoals in het onderstaande nader zal worden behandeld omvat • de computer 110 ketenvoorzieningen voor. het af geven van verversings-adressen aan het geheugen 12k, teneinde aldaar opgeslagen, data/macro-instructies te verversen. De verversingsketen omvat' voor.een gedeelte de reken-logische eenheid 112, het A-register 122 en.de. geheugenmultiplexer 13¼. Zoals tevens in. het onderstaande nader zal worden behan-' deld, omvat de centrale processoreenheid. 11¼ ketenvoorzieningen voor het vooraf ophalen van instructies. Met een dergelijke ophaalketen is het mogelijk om tijdens het ten uitvoer brengen, van. een desbetreffende instructie de direkt volgende instructie, die door de centrale processoreenheid 11¾ moet worden verwerktuit het geheugen 12¼ op te halen. } / 79 0 8 6 6 6 10
Het geheugen 118 hiedt de mogelijkheid van tijdelijke opslag, bijvoorbeeld voor bepaalde inhouden van de reken- en logische eenheid 112 gedurende een interruptie-operatie. Data die in het tijdelijk geheugen 118 moeten worden opgeslagen worden via de uitgangsbusleiding 5 116 aan de data-ingang daarvan aangeboden. Voor het tijdelijk geheugen 118 bestemde lees/schrijfadressen worden vanaf de reken- en logische eenheid 112 en via het A-register 122 aangeboden.. Data die vanuit het tijdelijk geheugen 118 worden afgelezen verschijnen op de ingangsbus-leiding 152 vaar deze voor gebruik door de eenheid' 1.12 beschikbaar zijn. 10 Communicatie tussen externe inrichtingen en de centrale processoreenheid 11U of het geheugen 121; vindt plaats via de ingang/uitgang koppelketen 130. -In parallelvorm gebrachte, digitale woorden kunnen worden overgedragen via de data-ingang/uitgang busleiding 170. Via de buffers 128a en 128b is het mogelijk om data/macro-instrueties tussen de uitgangs-15 busleiding 116 of de ingangsbusleiding 152 en de data-ingang/uitgang busleiding 170 uit te wisselen. Het uitwisselen van data/macro-instruc-. . . ties tussen busleiding 170 en het geheugen 121; vindt plaats via de reken- en logische eenheid 112. ---
In serievorm· gestelde alfanumerieke symbolen, bijvoorbeeld 20 gesteld in. de ASCII-code, kunnen worden uitgewisseld tussen de een- trale processoreenheid 1T-1+ en een externe inrichting (niet weergegeven) via de voor deze code bestemde ingang/uitgang busleiding 168 en de universele, asynchrone ontvanger/zender 126. Zoals aangegeven in de oudere Amerikaanse octrooiaanvrage 959*038 is het uitsluitend aflees-25* bare consolegeheugen 132.een koppelinrichting, waardoor het mógelijk . wordt, dat een willekeurige externe inrichting met bijvoorbeeld een ASCII-koppelaar, werkzaam kan zijn als een voor de computer dienende besturingsconsole. Het uitsluitend, afleesbare consolegeheugen 132 vervangt een veelheid van consoleschakelaars en consolelampen, die nor-§Ö' maliter worden gebruikt om de computer 110 te besturen; hierdoor is ‘ voor de computer 110 slechts een kleinschalige fysieke console-structuur vereist. Het uitsluitend afleesbare consolegeheugen 132 bevat· voor de computer 110 bestemde consoleprogramma macro-instructies voor · console-operaties. Deze omvatten onderzoek en modificatie van bestaan- 1 SS "ie computer inhouden, het inladen van programmal en het uitvoeren van 7 9 0 8 βΤ δ ' : ~ ~ 11 testprogramma’s. Gedurende de werking Tan het geheel, worden reeksen van extern "beschikbaar gestelde alfanumerieke symbolen door de processor eenheid 11U ontvangen via de universele asynchrone ontvanger/ zender 126. De ontvangen reeksen worden vervolgens beschikbaar gesteld 5 als adresingangen voor het uitsluitend afleesbare consolegeheugen 132 en wel via de uitgangsbusleiding 116 en het A-register 122. Corresponderende macro-instructies aan de uitgang van het uitsluitend afleesbare consolegeheugen 132 verschijnen vervolgens op de geheugenuitgangs-busleiding 136 en wel op dezelfde wijze als waarop de macro-instruc-10 ties vanaf het geheugen 12h beschikbaar worden gesteld.
Ha in het voorafgaande de structuur en werking van de computer 110 in de sfeer van een blokschema te hebben behandeld, zullen in het onderstaande structuur 'en werking van de micro-instructie logica 1¾¾ nader gedetailleerd worden behandeld.
15' 2. Micro-instructielogica lUU (fig. 1, 2, 2A en 2B)
Zoals in het voorafgaande werd opgemerkt, is de micro-instruc-tielogica 1W- bedoeld om veel gebruikte reeksen van micro-instructies op*te slaan. Een met een dergelijke reeks van micro-instructies, overeenkomende maero-instructie, is ten dele-werkzaam als een voor de micro-20 instructielogica 1¾¾ bestemde instructie. Deze micro-instructielogica 1V* reageert door het sequentieel presenteren van elke micro-instructie van de corresponderende reeks. Micro-instructies verschijnen op de uit— gangsbusleiding lU8 en worden gedeeltelijk ingevoerd in het instructie-register 162 teneinde via de multiplexer 150 aan de reken- en logische 25'" eenheid 112 te kunnen worden aangeboden. Andere gedeelten van de micro-instructies geven willekeurig verschijnende besturingssignalen af aan de centrale processoreenheid 114 en aan de micro-instructielogica 1½.
De structuur van de micro-instructielogica 1H is in het voorafgaande reeds behandeld bij het beschrijven van de computer 110 in de . 3Q sfeer van een blokschema. In het volgende zal een begin worden gemaakt met een beschrijving van de werking van de micro-instructielogica 1Ü in de sfeer van een blokschema. Vervolgens zullen ketenvoorzieningen, die in een voorkeursuitvoeringsvorm van de micro-instruetielogica 1^4 .
worden behandeld. i :___ ^ Werking van de micro-instructielogica iMt· (fig. 1) ! ΤΑ0'8 51Τ~---""" · ' -' 12 • **' -
Het in fig. 1 weergegeven micro-instructiegeheugen 160 is bedoeld voor bet opslaan van reeksen van micro-instructies. Elk zulk een reeks correspondeert met een of meer macro-instructies, die zijn opgeslagen , bijvoorbeeld in het geheugen 12k. Het geheugen 160 kan zich met 5 betrekking tot de centrale processoreenheid 11^ voordoen als te omvatten een geheugen voor 512 woorden met een breedte van U8 bits, en dat 512, uit h8 bits bestaande micro-instructies bevat. Het geheugen 160 kan intern zijn georganiseerd als een twee-bladzijdengeheugen, waarin elke bladzijde kan zijn georganiseerd als een 512 woorden bevattend ge-^ heugen met een breedte van 2h bits. Een bladzijde van het geheugen 160 heeft derhalve een bitcapaciteit, die groot genoeg is om de ene helft van de micro-instructies, die zich in dit geheugen 160 bevinden, op te slaan. Elke bladzijde van het geheugen 160 kan een breedte hebben van 2h bits, met andere woorden, de helft van een micro-instructie.
Elke bladzijde kan dan 512 woorden lang zijn, met andere woorden tweemaal het aantal micro-instructies, dat daarin moet worden opgeslagen.
Elke micro-instructie kan zijn verdeeld in een eerste en een tweede segment; elk segment omvat 2h bits. De eerste en "tweede segmenten van een enkele micro-instructie kunnen zijn opgeslagen in opeenvolgende .20 woordlocaties van het geheugen 160. Bijvoorbeeld kan een eerste segment van de micro-instructie 2k .in de locatie U8 van het geheugen 160 en .. een tweede segment in een locatie Ij-9 van dit geheugen 1-60 zijn Opge slagen.. In twee sequentiële stappen· kan dan. een enkele micro-instructie . . vanuit het geheugen 160 worden opgeroepen. De toegangstijd van het . , 25 geheugen. 160 is bij voorkeur niet meer dan de helft van êên cyclusperiode van de centrale processoreenheid 11 h·, '{bijvoorbeeld 0,2 mierosec.) . ·. Een enkele micro-instructie kan derhalve uit het geheugen ΐβΟ worden afgelezen' binnen een enkele cyclus van de centrale processoreenheid 114.
Het eerste segment van een micro-instructie wordt overgedragen naar - . .30 het instructieregister 162 en kan instructiebits en besturingssignalen voor de centrale processoreenheid 114 beschikbaar'stellen. Het tweede . segment van een micro-instructie kan worden overgedragen naar het instructieregister 16k teneinde besturingssignalen beschikbaar te stellen voor het kiezen van opeenvolgende micro-instructies van een reeks van ·...- 35 _mdcro-instrueties. .Het zal duidelijk zijn, dat het geheugen 160 en de ; m-w-re—----;-——-———1 13 instructieregisters 162 en l6k op andere wijzen kunnen wrorden georganiseerd. Een "bladzijde van liet geheugen 160 kan bijvoorbeeld een breedte van een-vierde micro-instructie hebben, en kan viermaal zoveel woorden als daarin op te bergen micro-instructies hebben. In dit geval zou een 5 enkele micro-instructie vier segmenten hebben opgeslagen in vier locaties van het geheugen 160. In dat geval zouden ook vier miero-instructieregisters aanwezig zijn. De vier segmenten van de micro-instructie zouden worden overgedragen naar bijbehorende micro-instructieregisters gedurende een enkele cyclus van de centrale processoreenheid 11de toegangs-10 tijd van het geheugen 160 zou den kleiner zijn dan een-vierde van een cyclusperiode van de centrale processoreenheid 11U. Verder is het niet nodig, dat afzonderlijke segmenten van een micro-instructie worden opgeslagen in opeenvolgende locaties van het geheugen 160; bijvoorbeeld kunnen deze segmenten tussen elkaar ingeschoven worden opgeborgen.
15 Tevens kan het geheugen 160 zijn georganiseerd als geheugen met een enke-*-le of meerdere bladzijden.
Gedurende de werking verschijnt" een macro-instruetie, die correspondeert met een bepaalde reeks van micro-instructies op de uitgangs— busleiding 136 en deze instructie wordt overgedragen naar het in— 20 struetieregister 1U0. In het algemeen wordt een in het instructieregister 11*0 aanwezige macro-instructie gedecodeerd door het uitsluitend afleesbare decodeergeheugen 1U6, dat het geheugen (160) adres van de eerste • micro-instructie van de corresponderende reeks presenteert. -Zoals, aangegeven in bovenvermelde Amerikaanse octrooiaanvrage 959-038 kan de 25 start adresgener at or 1^2 bepaalde macro-instrueties rechtstreeks decode ren teneinde het geheugen (160) adres van de eerste miero-instructie direkt beschikbaar te stellen. Door deze startadresgenerator 1^2 wordt . derhalve de vertraging, zoals geïntroduceerd door het instructieregister 140 en de decoder 1^6 geëlimineerd, waarbij de voor het initiëren 30 van de uitvoering van bepaalde reeksen vereiste tijd'wordt verminderd. :
De uitgang van het instruetieregister T^O, die leidt naar de decoder 1 k6 is tevens verbonden met de van de uitgangsbusleiding 136 afkomsti- ' ge ingangsleiding voor de startadresgenerator 1^2..Bijvoorbeeld in de | situatie van een interruptie-operatie kan een lopende macr©-.instructie .
* \ 35 worden opgeborgen in het instructieregister ΐ4θ.- Ka beëindiging van j 7 9 0 8 6 6 8 ·’ · ' » * 14 r een interruptie kan de opgeborgen macro-instructie uit bet instructie-register 140 worden overgedragen naar de uitgangsbusleiding 136 en naar de ingang van de startadresgenerator 142 teneinde opnieuw een begin te maken met de corresponderende reeks van micro-instructies. Hier-5 door is bet mogelijk opnieuw een begin te maken met een reeks van micro-instructies na een interruptie, zonder dat een nieuwe afleescyclus ten aanzien van bet geheugen 124 is vereist.
Het eerste micro-instructiegeheugen (160) adres verschijnt op de voor het micro-instructiegeheugen bestemde ingangsbusleiding 156 en 10 . wordt overgedragen naar het als microprogramma-teller werkzame register 158. Het eerste adres wordt dan aangeboden aan de micro-instructiegeheugen (160) adresingang. Dit adres en alle volgende adressen zijn bepalend voor de keuze van twee zich in het geheugen ΐβθ bevindende opslaglocaties, die eerste en tweede segmenten van de corresponde-15 rende micro-instructie bevatten. In het onderstaande nader te beschrijven afzonderlijke adresingang presenteert een extra adresbit teneinde een keuze te kunnen maken tussen eerste en .tweede locaties, met andere · woorden een keuze tussen eerste en tweede segmenten. .Een eerste segment wordt eerst gekozen en via de bij dit micro-instructiegeheugen be-20 horende uitgangsbusleiding 148 overgedragen, naar het bijbehorende instructieregister 162. Vervolgens wordt een tweede segment gekozen en via deze uitgangsbusleiding 1 h-8 overgedragen naar het instructie-register 164. Wat de werking van de .centrale processoreenheid 1l4 betreft, doet het micro-instructiegeheugen 160 zich voor als een eenheid, die .25 in één cyclus van de centrale processoreenheid 114 een 48-bits- bevattende micro-instructie beschikbaar stelt en als een eenheid, die 512 woorden lang is, met een breedte van 48 bits..
Bepaalde bits van een eerste micro-instructiesegment, dat.zich bevindt in het instruct ieregister 162 kunnen .via de multiplexer '150 30 ais een instructiewoord worden aangeboden aan de reken--en logische eenheid 112. Andere bits van het eerste micro-instructiesegment kunnen · willekeurig verschijnende besturingssignalen voor deze reken- en logische eenheid 112 beschikbaar stellen* De naar de bij het micro-instructiegeheugen behorende uitgangsbusleiding T48 leidende uitgang 35 .van het instruct ieregister 140 maakt het mogelijk, dat bepaalde macro- j 7908065 " . ' ~ : 1 b instructiebits kunnen worden gebruikt voor het modificeren van een eerste (of tweede) micro-instructiesegment. In een dergelijke situatie zijn bepaalde micro-instructiebits "blanco” (bijvoorbeeld een logische 1 missend) en deze bits (bijvoorbeeld logische 0^en) kunnen vanaf het 5 instructieregister 1^0 worden aangeboden. Een tweede micro-instructiesegment, dat zich in het instructieregister 16¼ bevindt, kan in het algemeen worden gebruikt voor het besturen van de keuze van opeenvolgende micro-instructies van de reeks. In dit verband wordt opgemerkt, dat bepaalde bits van een tweede miero-instructiesegment een aanduiding 10 geven omtrent een toestand, die door de desbetreffende micro-instructie moet worden onderzocht. Bepaalde andere bits, die worden aangeboden aan de sequentie-besturingsinrichting 166 kunnen de actie die moet worden ondernomen, aanduiden, in afhankelijkheid van de resultaten van het uitgevoerde onderzoek. Er kunnen, vier acties worden, uitgevoerd. Bij de 15 eerste actie wordt overgegaan naar een micro-instructie, zoals aangeduid door het geheugen (l6o) adres, zoals gegenereerd door de start-adresgenerator ite. Bij de tweede actie wordt overgegaan naar een micro-instructie, zoals aangeduid door een geheugen. (160) adres, gepresen- teerd door hiet uitsluitend afleesbaar geheugen lk6- Bij de derde actie 20 wordt gesprongen naar een micro-instructie.in- een geheugen (160) adres, . zoals beschikbaar gesteld door de micro-instructiesprongbuffer’ 15¼.
Bij de vierde actie wordt voortgegaan met het direkt volgende geheugen (160) adres. De eerste en tweede aeties kunnen worden ondernemen bijvoorbeeld bij een vertakking van een micro-instruetiereeks, ofwel om 25 een nieuwe miero-instructiereeks te initiëren. Ook hierbij -ksm gebruik worden gemaakt van de startadresgenerator .1^2 in diév gevallen, waarin het gewenst is cm zo snel mogelijk met een volgende miero-instructie te beginnen. De derde actie is een standaard sprongoperatie. In dat geval kan het geheugen (160) adres waar naar toe moet worden gesprongen, 30 worden aangeduid door bits van een tweede, segment van een volgende micro-instructie, welke bits via de buffer 15¼ worden overgedragen naar de bij het micro-instructiegeheugen behorende ingangsbuslèiding 156·
Voor het uitvoeren van een sprong zijn derhalve twee opeenvolgende micro-instructies vereist. Een toestand, die moet worden onderzocht 35 wordt aangeduid in een tweede segment van een eerste miero-instructie. [ / 79 fr 8 6 6 6---------------—---— » . 16 ·
Een adres waar naar toe moet worden gesprongen wordt aangeduid In een tweede segment van een tweede micro-instructie. De sprong wordt dan gemaakt bij het begin van een derde volgende micro-instructie. De vierde actie vindt plaats wanneer opeenvolgende micro-instructies zijn 5 opgeslagen in corresponderende, opeenvolgende locaties van het geheugen 160. In dit geval is het bijbet micro-instructiegeheugen behorende register 158 werkzaam als een teller en een zich daarin bevindend adres wordt opgehoogd telkens wanneer een micro-instructie wordt uitgevoêrd.
In het kort samengevat komt het erop neer, dat· een door het re-gister 158 aangeboden adres een keuze maakt uit opeenvolgende paren van zich in het geheugen 160 bevindende locaties die eerste en tweede segmenten van micro-instructies bevatten. De keuze van opeenvolgende micro-instructies wordt gemaakt door de sequentiebesturingsinrichting 166, die bepaalde in een tweede micro-instruetiesegment aanwezige 15 bits en afkomstig van het instructiegeheugen 16'h decodeert. De se quentiebesturingsinrichting 166 presenteert voorbereidende uitgangssignalen die zijn bestemd voor de startadresgenerator 1^2, het als decoder werkzame uitsluitend afleesbare geheugen lh6, de bij het micro-instructiegeheugen behorende sprongbuffer 15^ en het bij dit geheugen 20 „behorende register 158.
Ka de in het voorafgaande beschreven werking van., de micro-instruc-tielogica 1 h-U in de sfeer van een blokschema, zullen, in .het onderstaande ketenvoorzieningen, zoals gebruikt in. een voorkeursuitvoerings— vorm van de micro-instructielogica 1¾¾ worden behandeld. - 25 B. Ketenvoorzieningen, deel uitmakend van de.micro-instructie- logica (fig. 2, 2A, 2B)..........' _
Ketenvoorzieningen, zoals toegepast .in. een voorkeursuitvoe- ' ringsvorm van micro-instructielogica, deeluitmakend van de in fig.
1 weergegeven computer, zijn schematisch weergegeven in fig. 2 t/m .
30 2B. In fig. 2 zijn het micro-instructiegeheugen ΐβθ en het bijbeho rende register 158 nader gedetailleerd .weergegeven. Het-register 158 omvat vier bittellers 200 en 202, en het micro-instructiegeheugen 160 ; omvat de uitsluitend afleesbare geheugens 20k t/m 2lh.
De data-ingangen van de tellers 200,en 202 zijn.verbonden met 35 ’ de ingangsbusleiding 156 en de data-uitgangen van‘ deze tellers. 200 en j __________________________________ · ;_} ' / • 7908666 ; .
17 202 zijn verbonden met de adresingangen van de uitsluitend afleesbare geheugens^20¼ en 21¼. De voor het voorbereiden van een paralleltelling dienende ingangen (ΡΞ) van de tellers 200 en 202 zijn verbonden met de voorbereidingssignaalleiding CONTINUE die-afkomstig is van de se-· 5 quentiebesturingsinrichting 166, die in het onderstaande nader zal worden behandeld. Een op de ingangsbusleiding 156 verschijnend adres wordt door een kloksignaal BCLK en wanneer op de leiding CONTINUE een logische 0 aanwezig is, ingevoerd in de tellers 200 en 202.
Indien op deze leiding CONTINUE een logische 1 aanwezig is, zijn de tellers 200 en 202 werkzaam als binaire serietellers en een daarin opgeslagen adres wordt door het genoemde kloksignaal BCLK in opeenvolging - opgehoogd. Zoals in het onderstaande nader zal worden beschreven, is het signaal BCLK een kanteelvormig kloksignaal, dat verschijnt met de cyclusfrequentie van de centrale processoreenheid 11¼ (hij-15 voorbeeld 5 MHz). De terugzeti'ngangen (R) van de tellers 200 en 202 zijn verbonden met de terugzetsignaalleiding RYSNC, via welke het mogelijk is de inhouden van de tellers 200 en 202 terug te brengen op de.: aarde 0.
Wat de organisatie van het micro-iastructiegeheugen 160 betreft, 20 wordt opgemerkt, dat de uitsluitend afleesbare geheugens 20¼, 208 en 212, bis. 1 van het geheugen l60 vormen, terwijl blz. 2 daarvan wordt gevormd door de geheugens 206, 210 en 21¼. De uitsluitend afleesbare geheugens 20¼ en 206 bevatten de.bits 0 t/m 7 en de bits 2¼ t/m 31, respectievelijk eerste en tweede micro-instructiesegmenten. Op 25 soortgelijke wijze bevatten de uitsluitend, afleesbare geheugens 208 en 210 de bits 8 t/m 15 en 32 t/m 39, terwijl de uitsluitend afleesbare geheugens 212 en 21¼ de bits 16 t/m 23 en t/m hj bevatten. Data-uitgangen van de geheugens 20¼ en 206 (^uMEMOUT 0/2¼ — 7/31) zijn als een 0P-poort bedraad en verbonden.met.de uitgangsbusleiding lk8. 3° 0p soortgelijke wijze zijn de data-uitgangen van de geheugens 208 en 210 (^uMEMOUT 8/32 - 15/39) en de data-uitgangen van de geheugens 212 en 21¼ (yUMEMOUT 16/kO - 23A7) respectievelijk als OF-poort 'bedraad en verbonden met de uitgangsbusleiding Α8- Een keuze, tussen de bladzijden 1 en 2 van het geheugen l6o worden gemaakt, door een signaal . 35 ;0p ö.e leiding PAGE SELECT, afkomstig van het instructiegeheugen lék, ; 7T0 86βΤ · -Λ'.· ~ 18' dat in het onderstaande nader zal worden beschreven. Deze leiding PAGE SELECT is rechtstreeks verbonden met de voorbereidingsingangen (CE) van de geheugens 206, 210 en 21h. Een op de leiding PAGE SELECT aanwezig signaal wordt geïnverteerd door de poort .216 en een aldus geïnver-’.
5 teerd signaal wordt via de leiding PAGE SELECT toegevoerd aan de voorbereidingsingangen (CE) van de geheugens 20l+, 208 en 212 .
Wat blz. 1 (de geheugens 204, 208 en 212) van het geheugen 160 betreft, wordt opgemerkt, dat elk van deze uitsluitend afleesbare geheugens een capaciteit heeft van 512 woorden met een breedte van 8 10 bits. De uitsluitend afleesbare geheugens 20k, 209 en 212 vormen een geheugen met een capaciteit van 512 woorden met een breedte van 2k bits.
De organisatie van de geheugenbladzijde 2 is soortgelijk aan die van bladzijde 1. Elke micro-instructie is verdeeld in twee 2k bits bevattende segmenten, die zijn opgeslagen in opeenvolgende locaties van 15 bladzijde ien, meer in het bijzonder in een even adres en in een oneven adres. Het eerste segment van de micro-instructie 2k is bijvoorbeeld opgeslagen in de locatie 2k en een tweede segment is opgeslagen in de locatie 25. Voor de keuze van een op een enkele bladzijde voorkomend adres zijn negen adresbits (2^ = 512) vereist. Een adresuitgangssignaal van 20 het register 158 omvat de meest significante bits van een desbetreffend geheugen (160) adres. Een adresuitgangssignaal van het register 158 is derhalve in staat om elk willekeurig paar van signaaladresloca-ties, met andere woorden een paar van geheugen (160) locaties die enkele micro-instructie bevatten, te kiezen. De minst significante ge-25 heugen (160) adresbit wordt gevormd door het kloksignaal ACLK. Dit kloksignaal maakt een keuze tussen opeenvolgende geheugen (ΐβθ) locaties, met andere woorden tussen eerste en tweede ’segmenten van een micro- : instructie. Zoals in het onderstaande nader zal worden beschreven, is !-het signaal ACLK een kanteelvormig kloksignaal,. waarvan de frequentie 30 dezelfde is als die van het kloksignaal BCLK, waarbij echter het signaal ACLK met betrekking tot het signaal BCLK. is geïnverteerd. Gedurende ' de eerste helft van een BCLK-periode is ACLK een logische 0 en gedurende de tweede helft van èen BCLK-periode is ACLK een logische 1.
Gedurende een enkele BCLK-periode wordt door het signaal ACLK derhalve | 35 eerst een even adreslocatie, die een eerste micro-instructiesegment j·· ,· Ϋ 9 Ö 8 6 6 8 ~~~ : ' . ; ’ * ' 19 (de "bits O t/m 23) "bevat, gekozen. Vervolgens kiest het signaal ACLK een oneven adreslocatie, die het tweede micro-instructiesegment (de "bits 2¼ - UT) "bevat. De aldus gekozen eerste en tweede micro-instruc-tiesegmenten worden aldus sequentieel vanaf het geheugen 1Ö0 gedurende 5 enkele BCLK-cyclus overgedragen naar de uitgangsbusleiding 148, die "behoort bij het micro-instructiegeheugen.
In fig. 2A zijn nader weergegeven het A-instructiegeheugen 162, het B-instructiegeheugen 164, sequentiebesturingsinrichting 166, de bij het micro-instructiegeheugen behorende sprongbuffer 154, het als decoder 10 werkzame, uitsluitend afleesbare geheugen 146 en de startadresgenerator 142. Het A-instructieregister 162 omvat zes bitregisters 218 t/m 224 waarvan de data-ingangen zijn verbonden met de bij het instructie-geheugen behorende uitgangsbusleiding 148 (^uMEMOUT Q/2k - 23/47).
De klokingangen van de registers 218 t/m 22h zijn verbonden met de lei-15 ding ACHC. Het B-instructieregister 164 omvat zes bitregisters 227 t/m 230, waarvan de data—ingangen eveneens zijn verbonden met de uitgangsbusleiding 148 (yUMEMOUT 0/23-13/37j 22/46, 23/47). De klokingangen van de registers 226 t/m 230 zijn verbonden met de leiding BCLK. Aldus wordt door een signaal ACLK een eerste miero-instructiesegment 20 (^uMEMOUT 0 - 23), dat verschijnt op de uitgangsbusleiding 148 inge voerd in het A-instructieregister* 162. De bits 1 t/m 8 van het eerste micro-instructiesegment (yuIRA 1—8) worden vanaf de registers 222 en 224 als instructiebits gevoerd in de multiplexer 150 en de rekenen logische eenheid 112. De vanaf het register 224 afkomstige bit O 25 (yuIRAO) wordt aan de multiplexer 150 toegevoerd, als een. voorbereidings- signaal, aangevende, dat ^uXRA 1 t/m 8 via de multiplexer 150 moeten worden overgedragen naar de ingangsbusleiding 152. He bits 9 t/m .23 van het eerste micro-instructiesegment (^uIHA 9-23) worden als willekeurige besturingssignalen toegevoerd aan de reken- en logische 30 eenheid 112. De terugzetingahgen van de registers 218 — 224 zijn verbonden met de terugzetsignaalleidiag.S 5 via"·welke het 'moge-lijk is de inhouden van het instruetieregister 162 op de hulwaarde terug te brengen.
Ha een eerste micro-instructiesegment verschijnt op de uitgangs-^ busleiding 148 een tweede micro-instruetiesègment (^uMEMQUT 24 - 47), ; ; 79 0 8 6 6 5 ’ 20 ’ .
welk segment door de werking van BCLK wordt overgedragen, naar het B-in-structieregister 16k. De terugzetingangen (B) van de registers 226 t/m 230 zijn verbonden met de leiding R Y'S CE, via welke de inhouden van het B-instructieregister 16k op de nulwaarde kunnen worden terug-5 gebracht.
Van. het tweede micro-instructiesegment deel uitmakende bits yUlRB 2k - 28 en 33 - 27 worden gebruikt als willekeurige besturings-signalen. Ten dele zijn deze bits bepalend voor.de in het voorafgaande reeds genoemde onderzoekingstoestanden voor het besturen van 10 een sequentiële keuze van micro-instructies. De bits ^uïRB 29 - 32 worden aangelegd aan de poorten 232 en 23 ^ van de sequent iébesturings-inrichting 166,- In afhankelijkheid van de onderzoekresultaten zijn deze bits werkzaam om diê*van de vier mogelijke acties die in het voorafgaande zijn beschreven en die moeten worden ondernomen, uit 15 te kiezen. De ingangsleidingen TEST en TEST leidende haar de poorten 232 en 23^ voeren voorbereidingssignalen, representatief voor onderzoekresultaten. De uitgangen van deze poorten 232 en 23^ zijn verbonden met ingangen van de decodeerinriehting 236. Deze decódeerinrichting 236 decodeert uitgangssignalen van de poorten 232.en 23h, zodat vier 20 voorbereidingssignalen teweeg worden gebraeht. Zoals, in het voorafgaande werd opgemerkt, -wordt een uitgangssignaal op de leiding COIITIMJE ' toegevoerd aan de tellers 200 en 202 van het register 158. Door het op deze leiding aanwezige signaal wordt bepaald of de tellers 200 en 202 in parallelvorm moeten worden geladen met een adres, afkomstig van . 25 de ingangsbusleiding 156, of dat een. daarin opgeslagen adres moet worden opgehoogd. Een signaal, aanwezig op de leiding- ENBJMP wordt aangelegd aan de sprongbuffer 15^.-Een op deze leiding aanwezig signaal bereidt de buffers 238 en 2k0 voor om de bits ^uMEMOUT 38 - k5 van een tweede micro-instructiesegment van de direkt volgende micro-instruct.ie 30 . over te dragen naar de ingangsbusleiding 156. Déze van het tweede segment deel uitmakende bits 38 - ^5 van de.direkt volgende micro— ' instructie zijn representatief voor een geheugen ·(i6'0) adres, dat een micro-instructie bevat, waarnaartoe een sprong moet .worden gemaakt. : Signalen op de leidingen respectievelijk ENBSAGE en EÏÏBDEC0DE zijïï • i 35 -werkzaam om respectievelijk de startadresgenerator 1^2 'en het uitslui- ;
Tfire β ϊβ ; ~^ J
21 tend afleesbare geheugen 1U6 voor te "bereiden.
Zoals in het voorafgaande reeds werd ongemerkt wordt een van een tveede micro-instructiesegment deel uitmakende hit ^uIRB b6 toegevoerd aan het micro-instructiegeheugen 160 als een kiessignaal, aange-5 duid als PAGE SELECT. Elke micro-instructie bevat derhalve informatie, aangevende of de direkt volgende micro-instructie zich bevindt op bladzijde 1 of op bladzijde 2 van het geheugen 160.
Fig. 2B g.eeft een ander uitgewerkt schema van de ketenvoorzieningen voor het genereren van de kloksignalen ACLK en BCLK. De flip-10 flops 2b2 - 2h6 vormen een door acht delende teller, die wordt geklokt door if-OCLK, zijnde een kloksignaal met een frequentie van Lo MHz. De uitgangssignalen Q en Q van de flip-flop 2bS worden geïnverteerd door de poorten 2b8 en 250, zodat symmetrische en geïnverteerde kanteelvormige signalen BCLK en ACLK teweeg worden gebracht. Zoals reeds 15 opgemerkt komt éên periode van het signaal BCLK overeen met een cyclusperiode (5 MHz) van de centrale processor eenheid 11U. ACLK is een logische 0 gedurende de eerste helft van een BCLK-periode en een. logische een gedurende de tweede helft van een der gelijke BCLK-periode .'
Een voor de flip-flops 2^2 - 2b6 bestemd ingangssignaal P maakt het 20 mogelijk om een beginstarttoestand van deze flip-flops 2k2 - 2b6 in te stellen. Ha de in het- voorafgaande gegeven beschrijving van de structuur en werking van de micro-instructielogica 1^4 zal in het onderstaande een beschrijving worden gegeven van de voor het verversen van de inhoud van het geheugen 12b dienende ketenvoorzieningen.
25 '3* Voor het verversen van de inhoud van het geheugen 12b dienende ketenvoorzieningen (fig. 1, 3% 3A en 3B)_ A. ¥erking van het geheugen 124 (fig. 1) - .
Eerst zal in de sfeer van een blokseheraa de werking van het geheugen 12b worden behandeld* Vervolgens zal de werking yan dit ge- . 2o heugen 12b worden beschreven met behulp van de schema’s, ter illustratie van een voorkeursuitvoeringsvorm van het geheugen 12bt het A-register 122, de multiplexer 12b en.de van de centrale processoreenheid 11b deel uitmakende geheugenbesturingsketen.
Het in fig. 1 weergegeven geheugen 12b kan een geheugen met een · . 25 capaciteit van 32K woorden (K= 102b) die'elk uit 16 bits bestaan, om- '78W8T5 '. ··' ’· ’ 22 vatten. Het geheugen 12k kan intern zijn georganiseerd als een tvee-bladzijdengeheugen, waardij elke bladzijde 128 woordrijen en 128 woordkolommen bevat. Een voor het geheugen 12^4 benodigde lees-, schrijf-, of verversingscyclusperiode kan een duur hebben van UOO nanoseconden.
5 Het zal duidelijk zijn, dat andere architectuur, parameters en periode- duren kunnen worden gebruikt voor het geheugen 12b. Een geheugen 12b kan bijvoorbeeld een breedte van 2k of 32 bits hebben of intern anders zijn georganiseerd (256 kolommen en 128 regels). Op soortgelijke' wijze kunnen de adressen van het geheugen 12^4 van een ander formaat zijn dan 10 het hier behandelde.
Zoals in het voorafgaande werd opgemerkt levert de reken- en logische inrichting 112 gedurende de normale werking adressen waar het geheugen 12k moet worden ververst. Bij elke voor het verversen dienende cyclus wordt een volledige rij van de beide bladzijden van het ge-15 heugen 12b ververst. De voor het verversen bestemde adressen kunnen worden opgeborgen in een van de reken- en logische eenheid 112 deel uitmakend register, waarbij zulk een adres met vooraf bepaalde, voor het verversen bestemde intervallen (bijvoorbeeld 12,8 microseconden) wordt opgehoogd en ingevoerd in het geheugen 12b.
20 ", — in e!en situatie, waarin een storing ontstaat .in de hoofdenergie- voeding van de computer 110 kan een van de computer 110 deel uitmakende hulpbatterijvoeding energie leveren voor het geheugen 12b en de ge— heugenbesturingsketen, zoals in het' onder staande nader zal worden beschreven. Door de hulpbatterij voeding, wordt..derhalve voorkomen, dat 25 . . een gebruikersprogramma^xn het geheugen 12b opgeslagen data verloren gaan. Wanneer een storing in de hoofdenergievoeding ontstaat wordt een voor verversing bestemd adres vanaf het van de reken- en' logische-eenheid 112 deel uitmakend register overgedragen naar het adrêsregis- ..· ter 122 en daarin opgeborgen. De van de centrale processoreenheid 11b 30 deel uitmakende geheugenbesturingsketen gaat voort met het besturen van de verversingsoperat ie voor het geheugen 1214. Een zich in het adresregister 122 bevindend voor--verversing bestemd adres wordt bij elk voor verversing bedoeld .interval opgehoogd en ingevoerd in het geheugen 12^4 teneinde opeenvolgende rijen van dit geheugen 12*4 te 35 . verversen.
' 7 9 0 β 0 8 5 ..... ~ 8 · 23 B. Ketenvoorzieningen van het geheugen 12¼ (fig. 3, 3A en 3B)
Ketenvoorzieningen die worden toegepast in een voorkeursuit-voeringsvorm van het geheugen 12it, het A-register 122 en de multiplexer 13¼ en de geheugenbesturingsketen zijn respectievelijk weergegeven in 5 de fig. 3A, 3 en 3B en worden in'die volgorde "behandeld.
Zoals is weergegeven in fig. 3A hevat het geheugen 12¼ twee soortgelijk uitgevoerde groepen 300 en 302 van dynamische in MOS-tech-niek uitgevoerde geheugens met vrije toegankelijkheid. Elke groep "bevat de helft van de opslagcapaciteit van het geheugen 12¼. Meer in het 10 bijzonder omvat de groep 300 zestien identiek uitgevoerde geheugens 301 met vrije toegankelijkheid. Elk van deze geheugens 301 bevat een enkele bit van elk woord, dat in de groep 300 is opgeborgen, en is intern georganiseerd als een configuratie met 128 rijen en 128 kolommen.
Zoals is uiteengezet in de samenhangende Amerikaanse octrooi-15 aanvrage 959*038 worden de voor het geheugen werkzame lees— en schrijf cycli 'doorlopen door het aan de groep 300 aanbieden van sequentiële rij- en ^kolomadressen. Bij elke leescyelts wordt een uit zeven . bits samengestelde rij-adres eerst aangeboden aan de adresingangen (A0-A6)van het van de groep 300 deel uitmakende geheugen 301, in cornbi-.. 20 natie met een rij-adres synchronisatiesignaal (RAS). Een uit zeven bits samengesteld kolomadres wordt vervolgens in combinatie met een ko— lomadres synchronisatiesignaal (CAS) aangeboden aan de adresingangen van het van de groep 300 deel uitmakende geheugen 301. Vervolgens verschijnt 16 bits bevattende informatie representatief voor het ge- -25 adresseerde woord aan de uitgangen (D00 - D015) van de van de groep 300 deel uitmakende geheugens 301. Via de buffer 30¼ wordt, het geadresseerde woord overgedragen naar de uitgangsbusleiding 136,' en wel -door een op de ingangsleiding EHBM verschijnend voor de buffer 30¼ werkzaam voorbereidingssignaal. In een schrijf cyclus wordt, een‘in het geheugen ' 30 12¼ in te schrijven woord, vanaf het dataregister 120 (DATAUT 0 - ΏΑΤΑΙΝ 15) toegevoerd aan de data-ingangen van de van de groep 300 deel uitmakende geheugens 301. Deze ingangssignalen op de leidingen DAIAUTO -DATAÜJ 15 aanwezige signalen zijn gecombineerd met-een schrijf-voorbereidingssignaal (ΉΕ), dat wordt aangelegd aan. de sehrijfvoorbe- .
35 reidingsingangen van de van de groep 300 deel uitmakende geheugens 301 79 0 86 6 6 " .; : ; : r .
2k
De lees- en schrijfcycli voor de groep 302 worden op dezelfde wijze uitgevoerd als geldend is voor de groep 300. Een keuze tussen de groepen 300 en 302 wordt gemaakt door het signaal RAS toe te voeren aan ofwel de groep 300 of:wel de groep 302. Het signaal RAS wordt 5 naar keuze gepoort, met één hit van een geheugen (12U) adres, afkomstig van A-register 122. De groepen 300 en 302 zullen derhalve heide iden-__^ tieke rij- en kolamadresingangen en CAS-ingangen ontvangen. Echter zal slechts één van de groepen 300 of 302 een RAS~inga.ngssignaal ontvangen.
10 Een voor verversen bestemde cyclus is soortgelijk aan een lees- cyclus me-$ uitzondering, dat slechts een rij-adres en een signaal RAS worden aangelegd aan de geheugens 301 van de groep 300. De verver-singsoperatie wordt derhalve uitgevoerd door een-leesoperatie, gedeeltelijk uit te voeren. Wanneer een voor verversen bestemde, cyclus wordt 15 uitgevoerd, ontvangen de beide groepen 300 en 302 HAR-ingangss-igna.lgn 3 zodat rijen van de beide groepen 300 en 302 op dezelfde tijd worden ververst. .
In fig. 3 zijn nader gedetailleerd weergegeven het A-regis- " ; ter 122 en de multiplexer 13*1. Het A-register 122 omvat de tellers . 20 306 en 308, het register 310 en de flip-flops 312. .Data-ingangen van de tellers 306 en 308, het register 310 en de flip-flop 312 zijn verbonden .met de uitgangsbusleiding 116. Van deze uitgangsbusleiding 116 afkomstige adresbits ALU0UT 9 - ALU0UT 15 bevatten rij-adresbits.
De bits ALU0UT 2 - ALU0UT 8 bevatten kolomadresbits. De adresbito 25 ALU0UT 1 is een groepkeuzebit, waarmede ofwel de groep 30Ó ofwel de · ; groep 302 kan worden gekozen.
Elk van de tellers 30β en 308 omvat een enkele flip-flop. (A) en een groep van drie flip-flops (B, C en D), die zijn ingericht als een dr.ie-bitteller. De met de data-ingang A verbonden.flip-flop A
30 geeft een uitgangssignaal Q1 en wordt geklokt door een klokingangssig- / * naai CLK1. De flip-flops B, C en D zijn respectievelijk verbonden met de data-ingangen J, C en D en geven uitgangssignalen Q2, Q3 en en worden geklokt door het ingangssignaal CLK2. De van· de teller 306 ' .
deel uitmakende flip-flops A -.D en de van de teller 308 deel uitma— j 35 kende flip-flops ;3 - D vormen een 7-bit· teller,.die wordt geklokt door. . . / - <# «· • » 25 een signaal PFSTART (start "bij storing in de voeding). Deze zeven flip-flops ontvangen rij-adresbits ALUOUT 9 - 15 en vormen rij-adresuitgangssignalen ADR 9 - 15. De van de teller 308 deel uitmakende flipflop A en zes-bitregister 310 vormen een zeven-bitregister voor bet ont-5 vangen van de kolomadresbits ALUOUT 2-8 ter verkrijging van kolem- adresuitgangssignalen ADH 2-8. De flip-flop 312 ontvangt de adresbit ALUOUT 1 en vormt de uitgangssignalen ADR 1 en ADR1 voor bet naar keuze aanleggen van bet voorbereidingssignaal RAS aan de groep 300 of aan de groep 302. Aan de terugzetingangen van de tellers 306 en 10 308 en bet register 310 -worden respectievelijk de terugzetsignalen TESTRESST en R toegevoerd. Door deze terugzetsignalen is bet mogelijk om de rij- en kolomadresbits op de nulwaarde terug te brengen.
Gedurende normale werking wordt een lees-, schrijf-, of een verversingsadres> door bet voorbereidingssignaal EN3MAD ingevoerd in bet 15 . A-register 122. pe Tanaf de tellers 306 en 308 afkomstige rij-adres- bits ADR 9-15 worden aangelegd aan de ingangen van de .rij-adrespoorten 31¼ in de multiplexer 13¼. Op soortgelijke wijze worden kolcmadres-bits ADR 2-8 aangelegd aan de ingangen van kolomadr espoort en 316.
De groep-keuzebits ADR 1 en ADR 1 worden respectievelijk aangelegd aan ^ de ingangen van de poorten 318 en 320. Het aan de poorten 31h toege voerde rijvoorbereidingsingangssignaal R0¥ is eerst werkzaam om de rij-adresbits ADR 9—15 via de poorten 31¼ (R0-R6) en de OF—poorten 322 (A0-A6) over te dragen naar de adresingangen van de vrij toegankelijke geheugens, dié deel uitmaken van de groepen 300 en 302. Ter-volgens wordt bet signaal RAS aangelegd aan de poorten 318 en 320.
Zoals bepaald door de voorbereidingsingangssignalen ADR 1 en ADR 1 , die aan de poorten 318 en 320 worden aangelegd, ontvangt ofwel de groep.
300 ofwel de groep 302 bet ingangssignaal RAS. Het signaal ROW eindigt nadat bet signaal RAS is verschenen en bet aan de poort 316 aangelegde 30 kolomvoorbereidingsmgangssignaal COL wordt werkzaam. De kolomadr esbits ADR 2-8 worden via. de poorten 316 (C0-C6) en 322 (AQ-A6) aangelegd aan de aöresingangen van de van de groepen 300 en 302 deel uitmakende vrij toegankelijke geheugens. Vervolgens wordt bet signaal CAS aan de poort 32¼ en 326 aangelegd eb de groepen 300 en 302.
35 — ontvangen ingangssignalen CAS. De poorten 32¼ en 326 geven afzonderlijke * CAS-ingangssignalen aan de groenen 300 en 302 teneinde de belasting 7908660’ 26 voor deze poorten te verminderen. Het signaal COL -wordt beëindigd nadat het signaal CAS is verschenen en de geheugen (12U) cyclus is voltooid.
Het signaal WE wordt via de poorten 328 en 330 gedurende een schrijf-cyclus en op dezelfde wijze als CAS aan de groepen 300 en 302 toe-5 gevoerd.
Zoals in het voorafgaande werd ongemerkt, omvat een gedurende normale werking uitgevoerde verversingscyclus een gedeeltelijke lees— cyclus. In het register van de reken-r en logische eenheid 112 opgesla— gen verversingsadres wordt overgedragen naar de uitgangsleidingbus 116.
10 Een verversingsadres omvat echter slechts zeven bits met rij-adresinformatie, met andere woorden de bits ALUOUT 9-15. Deze bits worden overgedragen naar de tellers 306 en 308 om te verschijnen als ADR 9 -15· De poort 332 ontvangt gelijktijdig het Ingangssignaal REFRESH en geeft het signaal ICAS (blokkeer de kolomadressynchronisatie). Door . 15 dit signaal ICAS worden de poorten .32k, 326, 328 en 330 blokkerend, waarbij de doorgang van de signalen CAS en WE naar de groepen 300 en 302 van het geheugen 12U wordt'geblokkeerd. Het signaal ICAS wordt aan— . _ gelegd aan.de zet- en t erugz et ingangen van de flip-flop 312, waar door de signalen ADR1 en ADR1 'een logische 1 worden. 'Het .aan de poorten. ' 20 31 aangelegde ingangssignaal ROW is vervolgens werkzaam om de rij- adresbits ADR 9 - 15 via de poorten 31^ (RO-Rö) en 322 (A0-A6) over te dragen naar de adresingangen van de groepen 300 en 302. Het aan de poorten 318 en- 320, die zijn voorbereid door- de signalen ADR1 en ADR1 aangelegde ingangssignaal RAS wordt vervolgens als het signaal RAS 25 aan de beide groepen 300 en 302'aangelegd. Het signaal ROW wordt beëindigd na het verschijnen van het signaal RAS. Vervolgens is het mo-. gelijk, dat het signaal COL verschijnt, maar zoals, in-.het' voorafgaan- : de is beschreven, worden de ingangen CAS van de groepen 300· en 302 geblokkeerd door het signaal ICAS. Vervolgens wordt de verversings-30 cyclus voltooid en een enkele rij van de groepen 300 en.'302 is ververst door uitvoering van een gedeeltelijke leeseyclus.
Een voor het geheugen 12U dienende verversimgscyclus gedurende door de batterij veroorzaakte steunwerking.is soortgelijk aan de in het; voorafgaande beschreven werking met uitzondering dat het- verver- \ t 35 · singsadres niet afkomstig is van de réken- en-logische eenheid 1121 f · / 7T0sTêfg ' ' ' ··,... ~~
2T
In het onder staande nader te "beschrijven geheugenbesturingsket en inrichtingen fungeren als sensor voor een plaats vindende storing in de energievoorziening, zoals gegeven door de van de computer 110 deel uit-makende hoofdvoedingsinrichting. Een verversingsadres wordt vanaf het 5 van de reken- en logische eenheid 112 deel uitmakend register overgedragen naar de tellers 306 en 308 en wel door het signaal ENBMAD.
Een ingangssignaal PWROFF (voeding uitgeschakeld), dat wordt aangelegd aan de poort 332 genereert het signaal ICAS teneinde de toevoer van de signalen CAS en WE te "blokkeren en de signalen ADR1 en ADR1 in de 10 vorm van een-logische 1 te brengen voor de duur waarover de hoofdvoedingsinrichting van de computer 110 is gestoord. Vervolgens genereert de geheugenbesturingsketen een signaal PFSTART dat gedurende elke verversingscyclus (bijvoorbeeld voor 400 nanoseconden elke 12,8 • - microseconden) wordt toegevoerd aan de tellers 306 en 308. In deze be- 15 drijfsmodus zijn de tellers 306 en 308 als tellers en. niet als registers werkzaam en een verversingsadres wordt door PFSTART bij het einde : van elke verversingseyelus daardoor opgehoogd. Gedurende de aanwezigheid van het signaal PFSTART, worden op de bovenbeschreven wijze de . . signalen ROW en RAS als verversingsadresbits ADR 9-15’ aangelegd aan , 20 de groepen 300 en 302. De doorgang voor de signalen CAS en WE wordt opnieuw geblokkeerd. Daardoor worden gedurende de aanwezigheid van het · signaal PFSTART bij elk van de opeenvolgende verversingsintervallen opeenvolgende rijen van .het geheugen 124 ververst.
Het aan de poorten 316 toegevoerde ingangssignaal COL wordt 25 bij voorkeur omgezet in een logische 1, en het aan de poorten 314 aangelegde ingangssignaal ROW wordt bij voorkeur" omgezet in een logische 0, met. uitzondering wanneer een verversingseyelus wordt door- i lopen. Het register 310, dat kolomadresinformatie bevat, wordt bij voorkeur eveneens van energie voorzien door de hoofdvoedingsinrichting 30 van de computer 110. Het register 310" wordt derhalve buiten werking gesteld gedurende een door de batterij veroorzaakte steunwerking.
Registers 334 geven dan gedurende een dergelijke door de batterij . geleverde steunwerking logische enen als kolomadresbits AI® 2 - 7 af aan de poorten 316. Uitgezonderd gedurende de verversingseycli zijn ! 35 -de uitgangssignalen van. de poorten 314 derhalve logische enen en de i / 79 0 8 6 6~fr _ ~ * * . · 28 uitgangssignalen van de poorten 316 zijn logische nullen, terwijl de uitgangssignalen van de poorten 322 logische enen zijn. Hierdoor wordt de energieconsumptie van het geheugen 12k, de multiplexer 13¼ en het A-register 122 gedurende de steunwerking door de batterij en wanneer 5 verversingscycli worden doorlopen, verminderd. Ter beëindiging van de door de batterij geleverde steunwerking,hervat de computer 110 de normale werking. Bij voorkeur brengt de computer 110 dan een stoot van verversingssub-routines, waarbij alle rijen van het geheugen 12¼ opeenvolgend worden ververst, ten uitvoer. Hierna hervat de computer 110 10 de normale operatie, waarbij het geheugen 12¼ wordt ververst op de in het voorafgaande beschreven wijze.
In fig. 3B is weergegeven een nader uitgewerkt schema van een geheugenbesturingsketen. De flip-flops 336 - 3¼¼ vormen een 5-bit schuif register dat de geheugenbesturings signalen ROW, RAS, COL en 15 CAS kan af geven.
De poorten 3^6, 3^8 en 350 geven een logische 1 af aan de J-ingang van de flip-flop 336 wanneer een lees-, schrijf-, of verver-singscyclus van het geheugen moet'worden uit gevoerd. .Meer in het bijzonder geeft de poort .3¼6 een logische 1 af wanneer een ingangssignaal 20 IHSTSAGEALC (instructie voor start adr e sg ener at or., reken- en logische eenheid), afkomstig van de startadresgenerator. 1¼2 aangeeft, dat instructie, aanwezig op de uitgangsbusleiding 136 vraagt ®m een lees- of schrijf operatie van het geheugen.' De poort 3^-8 'geeft een logische 1 af wanneer het ingangssignaal ^u!RB27s afkomstig van het B-instruc-25 tieregister 16¼ aangeeft, dat een miero-instructie vraagt .cm een lees- of schrijfcyclus van het geheugen. Een'ingangssignaal TSTART (test-start), dat wordt toegevoerd aan de poort 350, maakt .een begin met lees-en schrijfcycli voor het geheugenΊ2¼) gedurende testreeksen voor de computer 110. Bij normaal bedrijf worden de geheugenverversingscycli 30 geïnitieerd als een interruptie-operatie. Een. teller (die niet is weer gegeven) geeft elke 12,8 microseconden een voor verversingsdoeleinden dienend interruptiesignaal af. Een corresponderende miero-instructie-reeks geeft een corresponderend, ingangssignaal voor 'het B-instructïe-register 27 teneinde op de in het voorafgaande beschreven wijze een j 35 begin te maken met een verversingscyclus voor het. geheugen 12¼. |.
jrowri “ ; · =-..;·-- 29
Bij liet "begin van een geheugencyclus is het signaal ROW een logische 1, en de signalen COL, RAS en CAS zijn een logische 0. Van het J-ingangssignaal voor de flip-flop 336 vorfën <±>or klokingangssignaal 5CLK (klopsignaal van 5 MHz) steekproeven genomen, zodat de Q 5 en Q uitgangssignalen van de flip-flop 336 bij het begin van elke ge heugencyclus 200 nanoseconden durende pulsen (MEMSTART en MEMSTART) (startgeheugen) teweeg brengen. De van het schuifregister deel uitmakende flip-flops 338 - 3*A worden geklokt door signaal 1*0CLK (1*0 MHz klopsignaal), waarbij van het uitgangssignaal MEMSTART van de 10 flip-flop 336 steekproeven worden genomen. De aanwezigheid van het signaal MEMSTART heeft derhalve tot gevolg, dat een.logische 1 vanaf de flip-flop 338 wordt overgedragen naar de flip-flop 3^4. Bij de eerst verschijnende 1*0 CLK puls wordt derhalve het signaal RAS een logische 1 en deze toestand blijft gehandhaafd totdat het signaal 15 MEMSTART weer een logische 0 wordt. Twee klokpulsen UOCLK later wordt het signaal COL een logische 1 en het signaal ROW wordt een logische 0. Een 1*0 CLK-periode, nadat COL een logische 1. is geworden, wordt het signaal CAS een logische 1. Het signaal MEMSTART wordt dan beëindigd bij de volgende 5CLK-puls. Het einde van het signaal MEMSTART wordt 20 gedetecteerd via de poort· 352. Het ingangssignaal 10 CLK (10 MHz kloksignaal) voor de poort 352 is werkzaam ®m van het ingangssignaal MEMSTART voor de poort 352 steekproeven te nemen. De poort 352 levert voor de K-ingangen van de flip-flops 338, 3l*0 en 3l*2 signalen teneinde te verzekeren, dat bij het einde van. het signaal MEMSTART ' . 25 de flip-flops 338, 3l*0 en 3l*2 zijn teruggezet (met andere woorden de Q-uitgangen in de logische Q-toestand verkeren)*..Op soortgelijke wijze is het signaal 10CLK werkzaam om van het ingangssignaal EÏÏDMEM (einde geheugencyclus) voor de poort 351*, die een K-ingangssignaal voor de flip-flop 3l*l* geeft, steekproeven te nemen. Het signaal EÏÏDMEM duidt 30 op het einde van een geheugencyelus en .verzekert,: dat de Q-uitgang van de flip-flop 3l*l* bij het einde, van een geheugeneyclus wordt terug- -gezet op een logische 0. Door de signalen P (voorinstelling) en TESTRESET, die worden toegervoerd aan .de zet- en terugzetingangen van de flip-flops 336 - 3^*0, 3^*, 356 en 360 (in, het onderst aande nog te 35 behandelen) bewerkstelligen, dat de besturingsketen.voor het geheugen j .
79 0 86 6^ ———7-—- ! 30 12k kan worden gezet en teruggezet ("bijvoorbeeld'bij het opstarten van de computer 110).
De flip-flop 356 en de poort 358 vormen een keten die een aanduiding kan geven omtrent een belangrijke storing in de hoofdvoe-5 dingsinrichting van de computer 110. Het vanaf de hoofdvoedingsinrich ting van de computer 110 afkomstige en aan de data-ingang van de flipflop 356 toegevoerde signaal PWROK (energietoevoer in orde) kan een aanduiding geven omtrent het bestaan van een dergelijke storing. Van het signaal PWROK worden steekproeven genomen door.het.klokingangs-10 signaal REFRESH van de flip-flop 356. Dit signaal. REFRESH vindt plaats bij het begin van elke normale verversingscyelus en wordt .geleverd door de in het voorafgaande besehreving voor verversingsdoeleinden dienende micro-instructiereeks. De flip-flop 356 is derhalve werkzaam, om gedurende elke normale verversingscyelus steekproeven te nemen van 15 de toestand van de voedingsinrichting van de computer 110. Indien het signaal PWROK aangeeft, dat een belangrijke storing.in de voeding aanwezig is, ontstaat aan de Q^uitgang van de flip-flop 356 een signaal PWR0FF (energietoevoer uit) 'ter aanduiding van een'bestaande storing.
Het signaal PWROFF wordt geïnverteerd door.de.poort 358, zodat het sig-20 . naai PWROFF ontstaat. De signalen PWROFF eü PWROFF "worden respectieve lijk aangelegd aan de poorten 3^-6 en.3^8 ter blokkering van de signalen. IÏTSTSAGEALC en ^uIRB27. Het signaal PWROFF verhindert derhalve, dat gedurende de door de batterij geleverde steunwerking. een valse start : van geheugencycli plaats vindt. ' . ... ‘ 25 Tijdens de door de batterij geleverde steunwerking. genereren van de geheugenbesturingssignalen ROW", RAS, COL en .CAS wordt bestuurd door de flop-flop 360. De flip-flop 360 levert de uitgangssignalèn PFSTART en PFSTART. Gedurende normale werking is het. via de OF-poort 362 aan de terugzet ingang van de flip-flop 360 toegevoerde signaal ..PWROFF werkzaam-.
30 om het signaal PFSTART om te zetten in een logische 1, en het signaal PFSTART om te zetten ïn een.lógische 0. Gedurende de..door·:de batterij geleverde steunwerking Traden van het aan de data-ingang van de flipflop 360 toegevoerde signaal MEMHIGH:(geheugen'hoog, een·logische 1) steekproeven genomen door het aan de klokingang van de. flip-flop 360 ' * 35 aangelegde signaal. REFRQ (aanvraag om een verversingsoperatie). Het. ï '/ 79 0 8 6 6 5 " T~; " ~ “V" ; 31 signaal HEFREQ is afkomstig van een (niet weergegeven) klokke ten en verschijnt met'de voor het geheugen 12h geldende verversingsinter-vallen (12,8 microseeonden). Elk signaal REFRQ bewerkstelligt, dat het signaal PFSTART een logische 1 wordt en het signaal PFSTART een 5 logische 0 wordt. Zoals in het voorafgaande reeds werd vermeld, wordt, het signaal PFSTART aangelegd aan de klokingang van de van het adresregister 122 deel uitmakende teller 306. Het signaal PFSTART wordt aangelegd aan de ingang van de poort 350 en doet dienst om gedurende ' een verversingscyclus de geheugenbesturingssignalen ROW en RAS te 10 doen ontstaan. De signalen MEMSTART en ROW worden aangelegd aan de ingangen van de poort 364, die via de poort 362 aan de. terugzetingang van de flip-flop 3βθ een signaal kan leveren. Het door de poort 364 geleverde terugzetsignaal beëindigt het signaal PFSTART, wanneer het signaal ROW gedurende de verversingscyclus een logische 0 wordt; 15 daardoor wordt de flip-flop 360 teruggezet als voorbereiding voor een volgende verversingscyclus. Eet signaal PFSTART wordt tevens -toegevoerd aan een ingang van de poort 366 waarvan de uitgang is verbonden met de zet ingang van de flip-flop 342. Gedurende normale werking is het signaal FWROFF dat wordt toegevoerd aan de poort 366 werkzaam om het uit-20 gangssignaal van de poort 366 een logische 1 te doen zijn. De flip-flop 342 kan derhalve op de in het voorafgaande beschreven wijze werkzaam zijn om gedurende normaal bedrijf geheugenbesturings signalen te genereren. Bij een door de batterij geleverde steunwerking-bewerkstelligt het signaal PFSTART dat het uitgangssignaal van de-poort 366 een lo-25 gische 0 wordt met uitzondering gedurende de verversingscycli. 'De flip-flop 342 wordt daardoor gezet, waarbij het signaal.COL· een logische 1 en het signaal ROW een logische 0 is. Zoals in het voorafgaande is beschreven wordt hierdoor bewerkstelligd., dat de multiplexer 13¾ en het geheugen 121»· inoeeir toestand va3r*veimsderd.ienergieverbruik 30 worden gebracht wanneer geen verversingscycli worden doorlopen. De zetingang van de flip-flop 342 wordt bij het begin van een verversingscyclus tijdens een door de batterij geleverde steunwerking vrijgegeven door het signaal PFSTART. Hierna wordt de .flip-flop 342 terugge-: · zet door een aan de E-ingang :„en'vanaf de poort· 352 toegevoerd signaal, 35 zodat COL een logische 0 en ROW een logische 1 is, zoals is vereist 79 0 386 S _1‘- : ; = ' ‘‘-~i 32 bij het begin ran een rerrersingseyclus.
Hiermede is de beschrijving van de structuur en -werking van het geheugen 12¼ en de voor dit geheugen aanwezige besturingsketen beëindigd, en in het volgende zullen de ketenvoorzieningen-van de van de 5 computer 110 deel uitmakende ophaalinrichting worden beschreven.
k. Instructie-Q-phaalketen, deel uitmakend van computer 110 (fig. 1, ¼ en kkf:
Zoals in het voorafgaande reeds werd behandeld en met verwijzing naar fig. 1 opgemerkt, geldt dat een reeks van macroinstructies een ,.
gebruikersprogramma vormt,en in het/algemaan is opgeslagen in het geheu- 10 , . ------ -----------· gen 124. De xn hèt onder staande nader te behandelen centrale proces- soreenheid 11¼ volgt de ten uitvoerbrenging van het programma en wel door geheugen 12¼adressen van de instructies die door de centrale processoreenheid 11¼ ten uitvoer worden gebracht, op te slaan. Een dergelijk adres wordt genoemd een lopend-prograrnmatelling (CPC). Een ^ dergelijke telling wordt bij opeenvolgende macro-instructies, zoals opgeroepen vanuit het geheugen 12¼ en ten uitvoer gebracht, opgehoogd.
Van een dergelijke telling kan gedurende de ten uitvoerbrenging van een lopende instructie gebruik worden gemaakt bijvoorbeeld om een ge- i heugen (12¼) adres met betrekking tot deze telling--te genereren. "Door 20 ' .
een van de computer 110 deel uitmakende ophaalketen.is het mogelijk om de direkt volgende instructie, die door de centrale:processoreenheid' 11¼ ten uitvoer moet worden gebracht, lilt het geheugen. 12¼ op te halen, terwijl een lopende instructie ten uitvoer wordt gebracht. Daartoe genereert de reken- en logische eenheid. lil 2 een.volgend-prograrnmatelling 25 (UPC) die indicatief is voor het geheugen (12¼-) adres van de direkt volgende instructie die door de eenheid 11¼ ten. Uitvoer., moet worden gebracht. ‘v - - ' -·- j
Fig. ¼ geeft weer een blokschema van een van.'de reken- en logische eenheid 112 deel uitmakende bit sub-eenheid WO." Elk zulk een- , 30 ‘ bit sub-eenheid WO kan ten aanzien van vier binaire,informatiebits acht rekenkundige en logische operaties'uitvoeren.. De reken- en logische eenheid 112 kan vier van dergelijke, parallel met. elkaar verbonden bit -sub-eenheden kOO omvatten. Elke bit sub-eenheid.'kOO. omvat een vrij toegankelijk geheugen k02s dat weer l6 afzonderlijk adresseerbare regis- j 35 i ters omvat. Via de adresingangen A0-A3 en B0-B3 is het mogelijk elk i . : ' ' ' 33 ' willekeurig tweetal van zestien registers te kiezen als respectievelijk A en B-registers. De inhouden van de aldus gekozen A- en B-registers verschijnen respectievelijk aan de data-uitgangen A en B. Een bron-kiezer bob kan hierna een keuze maken uit de data-uitgangen A en B 5 van het vrij toegankelijk geheugen h02 of uit willekeurige van de drie andere databronnen, die kunnen worden verbonden, met de data-ingangen R en S van de reken- en logische eenheid bo6. Andere databronnen worden . gevormd door de data-ingangen D0-D3, logica-0 UOT en de uitgang van het register Uo8. De reken- en logische eenheid bo6 kan ten aanzien 10 van ingangsdata S en S acht reken- en logische operaties uitvoeren, zodat een uitgangssignaal F wordt afgegeven. Hierna kan de uitgangs-kiezer 410 een keuze maken uit ofwel het uitgangssignaal F van de eenheid Uo6 ofwel de data-uitgangsignalen A van de vrij toegankelijke geheugens U02, welk gekozen signaal dan verschijnt aan de van de uit 15 bit-sub-eenheid kOQ deel uitmakende uitgang Y0 - Y3· Het uitgangssignaal F van de eenheid ko6 kan via het schuifregister bl2 worden ingevoerd in de groep van vrij toegankelijke geheugens b02 of in het register 1θ8. *Het uitgangssignaal van het register ^08 kan door het schuifregister ^16 bit-voor-bit worden uitgeschoven, en' terug warden over- 20 gedragen naar de ingang van het register Uo8. Tier bit sub-eenheden 400, deel uitmakend van de reken- en logisehe eenheid 112 stellen deze . ... eenheid daardoor in staat om ten aanzien van zestien binaire informa-tiebits een willekeurige van acht rekenkundige 'en logische ope— . raties ten uitvoer te brengen. Meer in het. bijzonder cravat de -reken-25 en logische eenheid 112 , daardoor "in feite zestien registers, elk met een capaciteit van zestien bits.
Twee van de van de reken- en logische eenheid 112 deel uitma-kende registers zijn bestemd voor het opslaan van tellingen van de . door CPC en HPC aangeduide soorten. In de bedrijfstoestand en uitgaan-3Q de van de veronderstelling, dat de telling CPC is opgeborgen in een eerste register en de telling HPC is opgeborgen in een tweede register, kan het tweede register worden gekozen als'het A-register. De -telling HPC verschijnt dan op de uitgangsbusleiding 116. Vervolgens kan ' deze telling HPC worden gebruikt ora het geheugen 12¾ te adresseren ' 35 teneinde te bereiken, dat de volgende macro-instruetie ©p de uit gangs- |
790866S
• 3h busleiding 136 verschijnt. De volgende macro-instructie wordt dan ingevoerd in het instructieregister 1U0. Bij het begin van het ten uitvoer brengen van de volgende macro-instructie wordt de telling EPC de telling CPC van deze volgende macro-instructie en een nieuwe telling 5 EPC moet worden gegenereerd. Een oude telling EPC blijft in het twee de register teneinde een nieuwe telling CPC te worden en deze wordt eveneens vanuit het tweede register uitgelezen .en ingevoerd in de eenheid k06 via de bronkiezer 1+Q1+. De oude telling EPC wordt vervolgens opgehoogd, zodat een nieuwe telling EPC wordt verkregen, welke nieuwe 1.0 telling vanaf de uitgang F van de eenheid Uo6 wordt overgedragen naar het eerste register teneinde aldus een nieuwe telling EPC te zijn.
Daardoor bevatten de eerste 'en tweede registers afwisselend tellingen MPC en CPC bij elke volgende macro-instructie. In elk geval wordt een oude telling EPC een nieuwe telling CPC. Het bedrag waar-15 mede een oude telling EPC wordt opgehoogd, teneinde een nieuwe telling EPC te vormen, is bepaald door het in het geheugen. 12k aanwezige adres van de naastvolgende macro-instructie. Indien de macro-instruc— ties worden opgeroepen vanuit opeenvolgende, zich in..het geheugen 12k bevindende adressen, wordt elke oude telling EPC met een opgehoogd 20 ter verkrijging van een nieuwe telling EPC. Een oude telling EPC kan met een bedrag groter dan éên worden opgehoogd, bijvoorbeeld wanneer een nieuw zich in het geheugen 12¼.bevindend..adres is bepaald <Loor overslaan of sprong, ofwel een indirekt adres is. . - '
In fig. hA is weergegeven een keteninrichting· voor het gene:.-25 reren van adressen voor de ingangen AQ-A3 en B0-B3 van de bit sub-.
eenheden U00 van de reken- en logische eenheid TT2. Bij voorkeur zijn · i de eerste en tweede registers zodanig georganiseerd,, dat hun adressen j . slechts een bit verschillen. Het eerste register kan 'bijvoorbeeld bevatten het binaire adres 1011 en het tweede register kan bevatten het 30 binaire adres 1111; deze adressen verschillen dan slechts in de bit- positie 2. De ketenvoorzieningen, waardoor ofwel.het eerste ofwel het tweede register wordt gekozen, kunnen daardoor worden vereenvoudigd.
De voor de vrij toegankelijke geheugens 1+02 bestemde adresbits-A0, B0, j · A1, B1, A3 en B3 zijn geen functie van. de'omstandigheid, welke Van - j.
35 · 'de eerste en tweede registers een telling EPC -.of. een·*telling CPC be- ; . - 7'8* 0' 8 6 6 6 ' ' ' 35 ' vat. De voor de vrij toegankelijke geheugens 402 bestemde ingangs-adressen vorden derhalve geleverd door willekeurige logica met de multiplexers 418 en 420 en de poorten 422 en 424. Deze logica is bepaald door specifieke bits, afkomstig van het instruct reregister ΐ4θ, het 5 A-instructieregister 162 en het B-instructieregister 164 die worden ge bruikt voor het adresseren van de vrij toegankelijke geheugens 402 van de réken- en logische eenheid 112. Deze logica is derhalve een specifieke functie van een bepaald stel miero-instructies en zal niet, verder vorden behandeld; het ontwerp van dergelijke logica is voor de 10 vakman op dit gebied algemeen bekend. De poorten 426 en 432 genere ren de voor de sub-eenheid 400 bestemde adresbits A2 en B2 en zijn eveneens een functie van een specifiek stel micro-instructies. De poorten 426 en 428 krijgen echter een ingangssignaal SELPC (keuzeprogramma-telling) toegevoerd, welk signaal aangeeft of een telling NPC in het 15 eerste of in het tweede register aanwezig is. Zoals in het vooraf gaande werd opgemerkt, kan ofwel het eerste ofwel, het tweede register worden gekozen als een A-register of een B-register. Wanneer.een eerste of tweede register aldus is gekozen, wordt door het signaal SELPC bepaald of de register adresbit 1 een een of een ndl is. Het signaal 20 SELPC is afkomstig van de Q-uitgang van de flip—flop 434. De uitgang Q van de flip-flop 434 is verbonden met de data-ingang van de flipflop 434, zodat het signaal SELP: afwisselend êên of nul is wanneer de flip-flop 434 wordt geklokt door het ingangssignaal CIiKIR (klok— instructieregister). Het signaal CLKZR is .-een aan het' instructie-25 register 140 toegevoerd kloksignaal, dat werkzaam is om macro—instruc ties, afgeleid van de uitgangsbusleiding 136 in te voeren in -het instructieregister 140. Het signaal SELPC wordt derhalve afwisselend een logische êên en een logische nul, wanneer opeenvolgende macro-. instructies in het instructieregister 140 worden Ingevoerd, Door het 30 signaal SELPC wordt dan aangegeven of een telling NPC,' die afwisse lend aanwezig is in eerste en tweede registers, zich in het eerste register of in het tweede register bevindt.
Met het voorafgaande zijn de structuur en werking van de van de ; computer 110 deel uitmakende ophaalketen voltooid. Na de.-in het voor— : 35 ‘ afgaande gegeven "beschrijving van de structuur en werking van de 790 8 6 6 δ > . V ' » * ψ

Claims (5)

1. Digitaal c output er stelsel, omvattende een processor voor het verwerken van digitale datasignalen, van welke processor deel uitmaakt micro-instructielogica voor het besturen-van genoemde processor; en geheugenmiddelen voor het opslaan, van ondermeer instructies, 5 die door genoemde processor worden verwerkt hij het besturen van het stelsel, met het kenmerk, dat genoemde micro-instructielogica omvat.:, micro-instructiegeheugenmiddelen voor het opslaan van.segmenten van micro-instructies, waarbij tenminste éên reeks van dergelijke micro-instructies is geassocieerd met elke van een .eerste groep van bepaal-10 de van genoemde instructies, kiesmiddelen, die in responsie op elke instructie van genoemde eerste groep van genoemde instructies volgens een sequentiële kieswerking, elk van genoemde segmenten van elk van genoemde micro-instructies van een desbetreffende van genoemde reeksen, die is geassocieerd met een desbetreffende van genoemde eerste 15 groep van instructies, ~ . kiezen, en middelen die zijn ingericht om (1) elk van genoemde segmenten van een-desbetreffende van genoemde micro-instructies met' ëên tegelijk sequentieel te ontvangen en qp te slaan, alsook om (2) daarmede corresponderende besturingssignalen voor het besturen van genoemde processor teweeg te brengen. ,
2. Digitaal computer stelsel volgens conclusie. 1 met het' kenmerk, dat elk van genoemde micro-instructies e'en: aantal N-mi cr o-inst ructie-segmenten omvat, waarbij N groter is dan 1, en elk van-deze segmenten een aantal N binaire informatiebits' omvat, en genoemde middelen voor het opslaan van de desbetreffende segmenten van genoemde micro-in-25. structies een aantal afzonderlijk kiesbare opslaglocaties omvat, \ ï waarbij elk van deze opslaglocaties in staat is om tenminste een aantal ΙΓ binaire informatiebits op te slaan..
3. Computerstelsel volgens conclusie 1 of 2 met' hét kenmerk, dat genoemde kiesmiddelen verder omvatten een startadresgenerator voor het * · 30 ontvangen van bepaalde tweede van genoemde-eerste groep van genoemde instructies deel uitmakende instructies, welke generator in responsie . op dergelijke bepaalde tweede instructies een keuze kan maken uit elke van de desbetreffende miero-instructies, die deeluitmaaktvan elkvan ; - ‘r ** . v . j / 71ΠΓ8 6 6_6~ ~ : - 7- ï \ V 1*0 genoemde reeksen, die correspondeert met elk van genoemde bepaalde tweede tot. genoemde eerste groep van instructies , behorende instruc ties. 1*. Computer stelsel volgens conclusie 1 of 2 met het kenmerk, dat 5 bepaalde derde van genoemde segmenten van elk van de desbetreffende micro-instructies van. een desbetreffende van genoemde reeksen informatie bevatten voor het kiezen van elke volgende van de desbetreffende van genoemde micro-instructies die deel uitmaken van een des- „ betreffende van genoemde reeksen, en genoemde kiesmiddelen zijn 10 voorzien van middelen, die in responsie op genoemde bepaalde derde segmenten de desbetreffende volgende van genoemde micro-instructies die deel uitmaken van een desbetreffende van genoemde reeksenkiezen. · . 5· Digitaal computerstelsel, omvattende geheugenmiddelen voor het opslaan van ondermeer instructies voor het besturen van het stelsel, 15 een hoofdvoedingsinrichting voor het afgeven, van elektrische, ener gie aan genoemde geheugenmiddelen, een hulpvoedingsinrichting voor het afgeven van energie aan tenminste genoemde geheugenmiddelen wanneer1 ' - in genoemde hoofdvoedingsinrichting een storing 'is ontstaan en geheugeninhoudverversingsmiddelen, met het kenmerk, dat van genoemde 20 geheugeninhoudverversingsmiddelen deel uitmaken .meetmiddelen voor het · meten van opeenvolgende voor verversingsdoeleinden dienende tijdsintervallen, aanwijsmiddelen» die in responsie op de werking van genoemde hoofdvoedingsinrichting en die van genoemde meetmiddelen, een aanwij— 1 zing geven van elk van bepaalde eerste van genoemde tijdsintervallen, 25 waarin een genoemde storing is ontstaan, signaal-afgevende middelen,. . ___die in responsie op de . werking van genoemde meetmiddelen opeenvolgende - I geheugeningangssignalen representatief voor adressen, waarvan de inhoud moet worden ververst, af geven, en geheugenadresseermiddelen, die in responsie op de werking van genoemde meetmiddelen en die van \3D genoemde aanwijsmiddelen werkzaam zijn (1) gedurende elk van genoemde tijdsintervallen anders dan genoemde ; bepaalde eerste van deze tijdsintervallen om (a) genoemde geheugeningangssignalen te ontvangen en aan genoemde geheugenmiddelen af te geven, alsook_. - ^ .-i—j 35 - - ·.· >·· ' , ' ·: ·- ' T . - - . > ___] · / 79W6 6 6.............'r..... . f Q . · 'in (2) gedurende de reeks van genoemde, bepaalde eerste tijdsintervallen (a) een representatie van genoemde geheugeningangssignalen, 5 zoals verschijnende gedurende het eerste van genoemde bepaalde eerste van genoemde tijdsintervallen^te ontvangen en op te slaan, (b) de opgeslagen representatie van het desbetreffende geheugen-ingangssignaal gedurende opeenvolgende van genoemde bepaalde eerste van genoemde tijdsintervallen, in opeenvolging op te hogen, en 10 (c) de desbetreffende opgeslagen en opgehoogde representatie van de desbetreffende geheugeningangssignalen aan genoemde geheugenmid-delen aan te bieden.
6. Digitaal computerstelsel, omvattende een processor voor het verwer ken van digitale datasignalen, en geheugenmiddelen voor het opslaan 15 van ondermeer instructies, die door genoemde processor worden verwerkt bij het besturen van het stelsel, gekenmerkt door voor het voor- ; af ophalen van instructies dienende middelen, omvattende eerste en tweede registerorganen voor hét ontvangen en opslaan van (1) een actuele programmatelling., representatief voor een eerste· 15 geheugenopslaglocatie, die een eerste instructie bevat, die op het desbetreffende moment door genoemde processor wordt gebruikt., en (2) een toekomstige programmat elling, .representatief voor een tweede geheugenopslaglocatie die een tweede instructie béyat ,d.ie 20 als eerstvolgende door de processor moet worden gebruikt; ' ; middelen-?voor--het teweegbrengen van geheugeningangssignalen, corres- " V-' ~ ponderende met genoemde toekomstige programmatelling eii dienende cm genoemde tweede instructie uit genoemde geheugenmiddelen op te vragen, wanneer genoemde eerste instructie wordt gebruikt, en middelen 25 voor het opnieuw teweegbrengen van genoemde actuele programmatelling' en genoemde toekomstige programmat elling, nadat genoemde eerste instructie is gébruikt.
7. Computerstelsel volgens conclusie 6 met. het kenmerk, dat ge— 1 noemde middelen voor het opnieuw beschikbaar stellen, van genoemde ac- ; 30 tuele en genoemde toekomstige programmatéllingen omvatten, middelen. ; | “7VÓ15ΊΓ6 ·_·.·.· - ' . r t k2 die in responsie op de werking van genoemde processor afwisselend kiezen (1) een van genoemde eerste en tweede, register organen voor het ' opslaan van genoemde actuele programmatelling, en (2) de andere van . genoemde eerste en tweede registerorganen voor het opslaan van ge-^ noemde toekomstige programmatelling, en middelen die in responsie op de werking van genoemde processor en die van genoemde kiesmiddelen (1) genoemde toekomstige programmatelling ontvangen, (2) genoemde toekomstige programmatelling ophogen, en (3) genoemde opgehoogde, toekomstige programmatelling aanbieden aan het uit de eerste en tweede regis-^ terorganen gekozen registerorgaan, teneinde genoemde nieuwe toekomsti ge programmatelling op te .slaan, waarbij de genoemde toekomstige programmatelling blijft opgeslagen in de desbetreffende gekozen van de eerste en tweede registerorganen teneinde deze toekomstige programma-telling in stand te houden ten behoeve van de genoemde nieuwe actuele ^ ^ programmatelling. i ΙΊΓϋΊΠΠΓδ : 'V:· .*· i
NL7908666A 1978-12-06 1979-11-29 Snel-werkend en compact uitgevoerd digitaal computer- stelsel. NL7908666A (nl)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US05/967,041 US4330823A (en) 1978-12-06 1978-12-06 High speed compact digital computer system with segmentally stored microinstructions
US96704178 1978-12-06

Publications (1)

Publication Number Publication Date
NL7908666A true NL7908666A (nl) 1980-06-10

Family

ID=25512228

Family Applications (1)

Application Number Title Priority Date Filing Date
NL7908666A NL7908666A (nl) 1978-12-06 1979-11-29 Snel-werkend en compact uitgevoerd digitaal computer- stelsel.

Country Status (8)

Country Link
US (1) US4330823A (nl)
JP (2) JPS5582355A (nl)
AU (1) AU538812B2 (nl)
CA (1) CA1140678A (nl)
DE (3) DE2954438A1 (nl)
FR (1) FR2443721B1 (nl)
GB (1) GB2037035B (nl)
NL (1) NL7908666A (nl)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4493020A (en) * 1980-05-06 1985-01-08 Burroughs Corporation Microprogrammed digital data processor employing microinstruction tasking and dynamic register allocation
AU3359584A (en) * 1983-09-29 1985-04-04 Tandem Computers Inc. Multi level pipeline control store for cpu microsequencing
US4766533A (en) * 1984-03-09 1988-08-23 The United States Of America As Represented By The United States National Aeronautics And Space Administration Nanosequencer digital logic controller
US4754393A (en) * 1984-12-21 1988-06-28 Advanced Micro Devices, Inc. Single-chip programmable controller
US5062036A (en) * 1985-06-10 1991-10-29 Wang Laboratories, Inc. Instruction prefetcher
US5179716A (en) * 1986-07-02 1993-01-12 Advanced Micro Devices, Inc. Programmable expandable controller with flexible I/O
US4972317A (en) * 1986-10-06 1990-11-20 International Business Machines Corp. Microprocessor implemented data processing system capable of emulating execution of special instructions not within the established microprocessor instruction set by switching access from a main store portion of a memory
DE68927783T2 (de) * 1988-05-03 1997-09-25 Wang Laboratories Mikroprozessor mit äusserem steuerungsspeicher
JP3063006B2 (ja) * 1989-02-08 2000-07-12 インテル・コーポレーション マイクロプログラムされるコンピュータ装置及びマイクロコードシーケンスメモリをアドレツシングする方法
US6327640B1 (en) * 1997-03-07 2001-12-04 Advanced Micro Devices, Inc. Overlapping peripheral chip select space with DRAM on a microcontroller with an integrated DRAM controller
GB2345989A (en) 1999-01-23 2000-07-26 Ibm Executing defined sequences of prolog instructions.

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1308583A (fr) * 1960-06-30 1962-11-09 Ibm Montage permettant le fonctionnement de plusieurs calculateurs en multiplex
DE1167569B (de) * 1960-12-28 1964-04-09 Zuse K G Programmgesteuerte digitale Rechenmaschine
GB1246129A (en) * 1967-12-14 1971-09-15 Olivetti & Co Spa Stored program electronic computer
US3599176A (en) * 1968-01-02 1971-08-10 Ibm Microprogrammed data processing system utilizing improved storage addressing means
CH485277A (de) * 1968-01-25 1970-01-31 Siemens Ag Programmablaufsteuerwerk für eine Datenverarbeitungsanlage
US3634883A (en) * 1969-11-12 1972-01-11 Honeywell Inc Microinstruction address modification and branch system
US3778775A (en) * 1971-05-10 1973-12-11 Computek Inc Microprogrammed terminal
US3753236A (en) * 1972-03-31 1973-08-14 Honeywell Inf Systems Microprogrammable peripheral controller
US3760369A (en) * 1972-06-02 1973-09-18 Ibm Distributed microprogram control in an information handling system
US3868649A (en) * 1972-06-28 1975-02-25 Fujitsu Ltd Microprogram control system
JPS5325226B2 (nl) * 1972-07-20 1978-07-25
JPS549639B2 (nl) * 1973-04-12 1979-04-26
JPS5013460U (nl) * 1973-05-29 1975-02-12
GB1426748A (en) * 1973-06-05 1976-03-03 Burroughs Corp Small micro-programme data processing system employing multi- syllable micro instructions
US3958221A (en) * 1973-06-07 1976-05-18 Bunker Ramo Corporation Method and apparatus for locating effective operand of an instruction
IT995721B (it) * 1973-10-10 1975-11-20 Honeywell Inf Systems Italia Apparato per l interpretazione di codici di funzione in calcolatori microprogrammati e per l indirizza mento indipendente di fasi inter pretative ed esecutive di micro programma
DE2364254B2 (de) 1973-12-22 1976-03-18 Schaltungsanordnung fuer datenverarbeitende geraete
US4050058A (en) * 1973-12-26 1977-09-20 Xerox Corporation Microprocessor with parallel operation
US3990054A (en) * 1974-11-05 1976-11-02 Honeywell Inc. Microprogram organization techniques
US4037202A (en) * 1975-04-21 1977-07-19 Raytheon Company Microprogram controlled digital processor having addressable flip/flop section
US4005395A (en) * 1975-05-08 1977-01-25 Sperry Rand Corporation Compatible standby power driver for a dynamic semiconductor
JPS5230352A (en) * 1975-09-04 1977-03-08 Nippon Telegr & Teleph Corp <Ntt> Micro program control method
US4075687A (en) * 1976-03-01 1978-02-21 Raytheon Company Microprogram controlled digital computer
JPS538034A (en) * 1976-06-30 1978-01-25 Toshiba Corp Electronic computer
US4118773A (en) * 1977-04-01 1978-10-03 Honeywell Information Systems Inc. Microprogram memory bank addressing system

Also Published As

Publication number Publication date
GB2037035A (en) 1980-07-02
GB2037035B (en) 1983-06-15
FR2443721B1 (fr) 1985-06-21
FR2443721A1 (fr) 1980-07-04
US4330823A (en) 1982-05-18
JPS6373333A (ja) 1988-04-02
JPS5582355A (en) 1980-06-21
AU538812B2 (en) 1984-08-30
DE2954439A1 (nl) 1985-05-15
CA1140678A (en) 1983-02-01
DE2948442C2 (nl) 1987-01-15
JPH0115896B2 (nl) 1989-03-22
AU5227379A (en) 1980-06-12
DE2954438A1 (nl) 1985-03-21
DE2948442A1 (de) 1980-06-26

Similar Documents

Publication Publication Date Title
US5280594A (en) Architecture for high speed contiguous sequential access memories
KR950014089B1 (ko) 동기식 디램의 히든 셀프 리프레쉬 방법 및 장치
EP0180237B1 (en) Data processor system having look-ahead control
US9343127B1 (en) Memory device having an adaptable number of open rows
US7436728B2 (en) Fast random access DRAM management method including a method of comparing the address and suspending and storing requests
KR880001170B1 (ko) 마이크로 프로세서
JPH0684351A (ja) クロック同期型半導体記憶装置およびそのアクセス方法
NL7908666A (nl) Snel-werkend en compact uitgevoerd digitaal computer- stelsel.
KR20200123260A (ko) 캐시 및 다중 독립 어레이를 갖는 메모리용 인터페이스
US8914612B2 (en) Data processing with time-based memory access
US11321097B2 (en) Super-thread processor
US4316248A (en) Memory refresh means including means for providing refresh addresses during power failures
US4360868A (en) Instruction prefetch means having first and second register for storing and providing a current PC while generating a next PC
JP2912609B2 (ja) 複数アドレス保持記憶装置
AU604358B2 (en) Prefetching queue control system
KR880000994B1 (ko) 마이크로 프로그램 제어방식
JP3315308B2 (ja) クロック同期型半導体記憶装置およびそのアクセス方法
JPS6391756A (ja) 記憶装置の部分書き込み命令処理方式
JPS58186846A (ja) マイクロプログラム制御装置
KR0141717B1 (ko) 마이크로프로세서 제어장치
GB2111264A (en) High speed compact digital computer system
SU900315A1 (ru) Ассоциативное запоминающее устройство
JPH06266606A (ja) メモリ
JPS584447A (ja) 制御記憶装置
JPH0290324A (ja) マイクロプログラム制御装置

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
BV The patent application has lapsed