DE2418034C3 - Circuit arrangement for managing memory segments - Google Patents
Circuit arrangement for managing memory segmentsInfo
- Publication number
- DE2418034C3 DE2418034C3 DE19742418034 DE2418034A DE2418034C3 DE 2418034 C3 DE2418034 C3 DE 2418034C3 DE 19742418034 DE19742418034 DE 19742418034 DE 2418034 A DE2418034 A DE 2418034A DE 2418034 C3 DE2418034 C3 DE 2418034C3
- Authority
- DE
- Germany
- Prior art keywords
- address
- memory
- register
- segment
- bit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired
Links
- 230000015654 memory Effects 0.000 title claims description 90
- 241001442055 Vipera berus Species 0.000 claims description 15
- 230000000875 corresponding Effects 0.000 claims description 10
- 238000000034 method Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 claims description 2
- 230000001681 protective Effects 0.000 claims description 2
- 230000003936 working memory Effects 0.000 claims description 2
- 230000003247 decreasing Effects 0.000 claims 5
- 210000004072 Lung Anatomy 0.000 claims 2
- 241000088844 Nothocestrum Species 0.000 claims 1
- 230000018109 developmental process Effects 0.000 claims 1
- 239000003550 marker Substances 0.000 claims 1
- OMFHQUCUWSMFOJ-FMONCPFKSA-N COMP protocol Chemical compound ClCCN(CCCl)P1(=O)NCCCO1.O=C1C=C[C@]2(C)[C@H]3C(=O)C[C@](C)([C@@](CC4)(O)C(=O)CO)[C@@H]4[C@@H]3CCC2=C1.C=1N=C2N=C(N)N=C(N)C2=NC=1CN(C)C1=CC=C(C(=O)N[C@@H](CCC(O)=O)C(O)=O)C=C1.C([C@H](C[C@]1(C(=O)OC)C=2C(=C3C([C@]45[C@H]([C@@]([C@H](OC(C)=O)[C@]6(CC)C=CCN([C@H]56)CC4)(O)C(=O)OC)N3C=O)=CC=2)OC)C[C@@](C2)(O)CC)N2CCC2=C1NC1=CC=CC=C21 OMFHQUCUWSMFOJ-FMONCPFKSA-N 0.000 description 3
- 238000010845 search algorithm Methods 0.000 description 3
- YEJRWHAVMIAJKC-UHFFFAOYSA-N γ-lactone 4-hydroxy-butyric acid Chemical compound O=C1CCCO1 YEJRWHAVMIAJKC-UHFFFAOYSA-N 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000000903 blocking Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
Description
1 ö LO41 ö LO4
von Datensammelschicncn A' (/ι — I :())und X (n — I :0). welchen / und D zugeordnet sind in der Formof data collection files A '(/ ι - I :()) and X (n - I: 0). which / and D are assigned in the form
XU) = IH) Vi)(Z)
XH) = ( /(O V DH) XU) = IH) Vi) (Z)
XH) = (/ (OV DH)
Die Datcnsammelschienen .V(Z) und XH) sind mil der Dekodierlogik in der üblichen Weise verbunden, so daß in Abwesenheit von »dont care« — Bedingungen D(O = 0 für alle ι eine einzelne Zelle MEM(I) adressiert ist.The data busbars V (Z) and XH) are connected to the decoding logic in the usual way, so that in the absence of "don't care" conditions D (O = 0 for all ι a single cell MEM (I) is addressed.
Ist D von der FormIs D of the form
Dk = D k =
0 für ii-l > i > k 0 for ii-l >i> k
1 für k- I > i > O.1 for k- I> i > O.
worin k ein Bit vorbestimmter Wertigkeit von η möglichen Bits ist — dann existiert ein Block von 2k fortlaufenden Adressen in den Grenzen I4 und /,.. deren Binärkodes durch die Gleichungenwhere k is a bit of predetermined significance of η possible bits - then there is a block of 2 k consecutive addresses in the limits I 4 and /, .. their binary codes by the equations
( /(/) für /i-l > i >
k
/,(0 = 13)(/ (/) for / il >i> k
/, (0 = 13)
0 für k- I > / > 0.0 for k- I>/> 0.
/(O fur Ji-I > /
> k
1 für k - 1 > ( > 0/ (O for Ji-I>/> k
1 for k - 1>(> 0
gegeben ist, der gleichzeitig aktiviert werden kann.is given, which can be activated at the same time.
Um diese Methode des blockweisen Adressierens auf den Algorithmus zum Suchen von Folgen unbesetzter Speicherplätze anwenden zu können, muß ein beliebig angeordnetes Segment MEM(I1: Iv) in solche Blöcke unterteilt und eine Strategie für deren schrittweises Abfragen entwickelt werden.In order to be able to apply this method of block-wise addressing to the algorithm for searching for sequences of unoccupied memory locations, an arbitrarily arranged segment MEM (I 1 : I v ) must be subdivided into such blocks and a strategy developed for their step-by-step interrogation.
1st g das höchste Bit, in welchem sich die Binärkodes von IL und J17 unterscheiden, z. B. IL (n-1 :g + I) = Iv(n-]:g+l). aber Iv(g) = 1; IL(g) = 0, dann definiert g eine Segmentadresse /s der BinärformIf g is the highest bit in which the binary codes of I L and J 17 differ, e.g. B. I L (n-1: g + I) = I v (n -]: g + l). but I v (g) = 1; I L (g) = 0, then g defines a segment address / s in binary form
[IAi) fur n — 1 > ι > g [IAi) for n - 1>ι> g
/s(0 = (4) / s (0 = (4)
[0 g- 1 > / > 0[0 g- 1> /> 0
mit folgenden Merkmalen: /s teilt das Speicherzustandsregister MEM(1L:I0) in ein unteres Segmentwith the following features: / s divides the memory status register MEM (1 L : I 0 ) into a lower segment
50 = MEM (I1: Is - 1) und in ein oberes Segment50 = MEM (I 1 : I s - 1) and into an upper segment
51 = MEM(I3A1,). /s-i und /s sind obere und untere Grenzen von zwei gleichzeitig adressierbaren BlöckenBO = MEM (Is-2e:Is- l)undßl = MEM (/s:Js + 29-l) der Größe 29.51 = MEM (I 3 A 1 ,). / s -i and / s are upper and lower limits of two simultaneously addressable blocks BO = MEM (I s -2 e : I s - l) and ßl = MEM (/ s : J s + 2 9 -l) of size 2 9 .
Da Iv < Is + 29 - 1 und IL > /s - 29, ist die Adresse /„ und auch das Segment Sl in den Block Bl und die Adresse IL und das Segment SO in den Block BO eingeschlossen.Since I v <I s + 2 9 - 1 and I L > / s - 2 9 , the address / "and also the segment S1 are included in the block B1 and the address I L and the segment SO in the block BO.
Das blockweise Adressieren innerhalb des oberen Segments Sl oder innerhalb des unteren Segmentes SO des Speicherzustandsregisters MEM ergibt sich aus folgendem. Liegt die Adresse I11 in der oberen Hälfte BIl von BlockBl, so ist das BItJ1Jg-I) des Adreßkodes logisch 1, anderenfalls logisch 0.Addressing in blocks within the upper segment S1 or within the lower segment SO of the memory status register MEM results from the following. If the address I 11 is in the upper half BIl of BlockBl, then the BItJ 1 Jg-I) of the address code is logic 1, otherwise logic 0.
Andererseits bedeutet die Bedingung I0 (g - 1) = K daß die untere Hälfte B10 von B1 zum blockweisen Abfragen ansteht, wenn Ιυ in BIl liegt, denn BIO ist vollständig in dem Segment Sl enthalten. Der Block B 10 kann über die Adresse /t. erreicht werden. In diesem Fall muß das Bit I1 (g-l) als logisch 0 interpretiert und »dont care« states D(O = 1 für Ä - 2 > / > 0 [ζ. B. für alle Bits rechts von der Stelle (g — I)] benutzt werden.On the other hand, the condition I 0 (g − 1) = K means that the lower half B10 of B1 is available for interrogation in blocks if Ι υ is in BI1, because BIO is completely contained in segment S1. The block B 10 can be accessed via the address / t . can be achieved. In this case the bit I 1 (gl) must be interpreted as logical 0 and "don't care" states D (O = 1 for - 2>/> 0 [ζ. B. for all bits to the right of the position (g - I )] to be used.
Die Bedingung I1. (g — I) = 0 zeigt, daß im oberen Segment Sl kein Block der Größe 2S~' existiert.The condition I 1 . (g - I) = 0 shows that there is no block of size 2 S ~ 'in the upper segment S1.
Liegt die Adresse /; in der unteren Hälfte BOO von Ö0. dann ist das Bit /,(,?— 1) auf logisch 0 gesetzt,If the address is / ; in the lower half BOO of Ö0. then the bit /, (,? - 1) is set to logic 0,
ίο so daß die obere Hälfte BOl des Blocks BO zum blockweisen Adressieren in dem unteren Segment SO ansteht.ίο so that the upper half BOl of the block BO to block-wise addressing is pending in the lower segment SO.
Ist der Block zu adressieren, muß /,_(g—1) auf logisch 1 gesetzt werden unter gleichzeitigem Setzen von »dont care« states D(i) = 1 für g-2 > ι > 0.If the block is to be addressed, /, _ (g-1) must be set to logical 1 while simultaneously setting "don't care" states D (i) = 1 for g-2>ι> 0.
Die Bedingung /, (g — 1) = 1 zeigt, daß im unterenThe condition /, (g - 1) = 1 shows that in the lower
Segment SO ein Block der Größe 29^1 nicht existiert.Segment SO a block of size 2 9 ^ 1 does not exist.
Dieses Schema wird nacheinander auf alle BitsThis scheme is applied sequentially to all bits
g — 1 > ι > 0 der Adressen I1, und /, angewandt und die gesamte Blockstruktur des Segmentes MEM (I1- XA1 + 1) bestimmt. Z1-I und IL+\ liegen immer unter der oberen Grenze Z1- bzw. über der unteren Grenze I1 eines Blockes. Zum ordnungsgemäßen Einschließen von I1- und /, in die Blockstruktur müssen deshalb die Adressen I1 + I und /, - 1 untersucht werden. g - 1>ι> 0 of the addresses I 1 , and /, applied and the entire block structure of the segment MEM (I 1 - XA 1 + 1) determined. Z 1 -I and I L + \ are always below the upper limit Z 1 - or above the lower limit I 1 of a block. In order to properly include I 1 - and /, in the block structure, the addresses I 1 + I and /, - 1 must therefore be examined.
Das Blockdiagramm der Speicherverwaltungseinheit MMU, die nach dem an Hand der Fig. 1 erläuterten Prinzip arbeitet, ist in F i g. 2 dargestellt. Die Speicherverwaltungseinheit enthält eine arithmetisch-logische Funktionseinheit und Datensammelleitungen, die jeweils für /1 Bits ausgelegt sind, wobei η durch eine Arbeitsspeicherkapazität von 2" adressierbaren Speicherzellen bestimmt ist.The block diagram of the memory management unit MMU, which operates according to the principle explained with reference to FIG. 1, is shown in FIG. 2 shown. The memory management unit contains an arithmetic-logic functional unit and data bus lines which are each designed for / 1 bits, where η is determined by a working memory capacity of 2 "addressable memory cells.
Das Steuerwerk CONTR führt abhängig von den Zuständen der Status Flip-Flops STATl einen der Modes SEARCH. ERASE, ERBAS, WRITE aus oder durchläuft eine Warteschleife.The control unit CONTR executes one of the SEARCH modes depending on the states of the status flip-flops STATl. ERASE, ERBAS, WRITE or goes through a waiting loop.
Der Mode SEARCH bearbeitet eine Speicherplatzanforderung durch simultanes Absuchen der
Speicherzustandsregisters MEM und des Basisadressen markierungsregisters BAS nach einem nur mit
»0« besetzten Segment vorgegebener Länge; der Mode ERASE bearbeitet eine Speicherplatzrückgäbe
durch Rückgeben eines vorgegebenen, fortlaufend mit »l« besetzten Segmentes in MEM auf »0«.
Der Mode ERBAS sucht bei der Rückgabe eines Speichersegmentes übriggebliebene Basis-Adressen
(markiert durch eine »1« in der korrespondierenden Zelle in BAS) auf und veranlaßt die Freigabe des
korrespondierenden Speichersegmentes. Der Mode WRITE markiert Basis-Adressen durch Einschreiben
einer »1« in die entsprechende Zelle in B/IS.
Die arithmetisch-logische Funktionseinheit 1 führt die entsprechenden Mikroprogramme aus.The SEARCH mode processes a memory space request by simultaneously searching the memory status register MEM and the base address marking register BAS for a segment of a given length that is only occupied by "0"; the ERASE mode processes a memory location return by returning a specified segment in MEM that is continuously filled with "1" to "0". When a memory segment is returned, the ERBAS mode searches for the remaining base addresses (marked by a "1" in the corresponding cell in BAS) and causes the corresponding memory segment to be released. The WRITE mode marks base addresses by writing a »1« in the corresponding cell in B / IS.
The arithmetic-logic functional unit 1 executes the corresponding microprograms.
In zwei 1-Bit Direkt-Zugriffs-Speichern, dem Speicherzustandsregister MEM und dem Basisadressenmarkierungsregister BAS, deren Operationsmode (Schreiben/Lesen) durch die vom Steuerwerk CONTR gesetzten Status-Flip-Flops STA T 2 bestimmt wird, sind Informationen über den Zustand der Speicherzellen gespeichert.In two 1-bit direct access memories, the memory status register MEM and the base address marking register BAS, the operation mode (writing / reading) of which is determined by the status flip-flops STA T 2 set by the control unit CONTR, there is information about the status of the memory cells saved.
Das Steuerwerk CONTR kann sowohl durch Ringzähler als auch durch einen Read-Only Mikropro-The control unit CONTR can be used both by means of a ring counter and a read-only micropro-
grammspeicher realisiert werden. Es arbeitet in Wechselwirkung mit dem Status-Flip-Flpps STATi, übei die der Austausch von SteuerinTormation mit dei Zentraleinheit CPU erfolgt und interne Steuerinfor-gram memory can be implemented. It works in interaction with the status flip-flops STATi, through which control information is exchanged with the central processing unit CPU and internal control information
609 642/30£609 642 / £ 30
Z4 1 öZ4 1 ö
mation abgespeichert wird. Demnach sind die Siatus-Flip-Flops 5'7.4Tl gruppiert in eine erste Gruppe, die von der Zentraleinheit CPU gesetzt und von der Speicherverwaltungseinheit MMU abgefragt wird, in eine /weite Gruppe, die von der MMU geset/t und von der CPL abgefragt wird und in eine dritte Gruppe, die von der MMU sowohl gesetzt als auch abgefragt wird.mation is saved. Accordingly, the Siatus flip-flops 5'7.4Tl are grouped into a first group, which is set by the central unit CPU and queried by the memory management unit MMU , in a / wide group, which is set by the MMU and queried by the CPL and in a third group that is both set and queried by the MMU.
Liste aller Status-Flip-Flops STATl und deren
FunktionList of all status flip-flops STATl and their
function
a) Durch die CPL abfragbare S7',4 7'la) S7 ', 4 7'l that can be queried by the CPL
BSY - (Busy): die MMU ist mit der Abwicklung eines Mikroprogramms beschäftigt, das nur durch einen H'R/TE-Mode unterbrochen werden kann. BSY - (Busy): the MMU is busy processing a microprogram that can only be interrupted by an H'R / TE mode.
«70 = (W1VfL' Ready for Data Take Over): die MMU ist in einem Zustand, in dem Daten oder Instruktionen von der CPU angefordert werden.«70 = (W 1 VfL 'Ready for Data Take Over): the MMU is in a state in which data or instructions are being requested from the CPU.
RDB = {MMU Ready to Deliver Base Adrcssl: die MMU ist im Zustand eines beendeten SEARCH-Modes und hat eine Basis-Adresse fiir die CPL1. RDB = {MMU Ready to Deliver Base Adrcssl: the MMU is in the state of a completed SEARCH mode and has a base address for the CPL 1 .
MCS =r' (Memory Cycle Stealing): die MMU benötigt einen Arbeitsspeicherzugriff. MCS = r '(Memory Cycle Stealing): the MMU requires access to the main memory.
SiVF = (String Notot Found): ein Speichersegment der geförderten Länge ist nicht vorhanden. SiVF = (String Notot Found): a memory segment the conveyed length does not exist.
b) Durch die MMU abfragbare .ST.4 7'1b) The MMU queryable .ST.4 7'1
CPL' = Die CPL' hat einen Auftrug Tür die MMU. CPL '= The CPL' has an order door the MMU.
SRH = Das Mikroprogramm SEARCH ist aktiviert. SRH = The SEARCH microprogram is activated.
ERA = Das MP ERASE ist aktiviert. ERA = The MP ERASE is activated.
ERB - Das MP ERBAS ist aktiviert.
WRT = Der Mode WRITE »stiehlt« von der MMU einen Zyklus zum Setzen von BAS. ERB - The MP ERBAS is activated.
WRT = The WRITE mode "steals" a cycle for setting BAS from the MMU.
BLO — (Base Adress Left Over): die Abarbeitung mindestens einer durch Segment-Freigabe übriggebliebenen Basisadresse steht an. BLO - (Base Address Left Over): the processing of at least one base address left over by the segment release is pending.
Von diesen Status-FF werdenFrom these status FF will be
WRT durch die CPL' gesetzt und zurückgesetzt. WRT set and reset by the CPL '.
CPL und SRW durch die CPU gesetzt und durch die MMU zurückgesetzt.CPL and SRW set by the CPU and reset by the MMU.
ERB und BLO durch die MMU gesetzt und zurückgesetzt. ERB and BLO set and reset by the MMU.
ER.4 entweder von der CPL' oder von der MMU gesetzt, aber nur von der MMU zurückgesetzt.ER.4 set either by the CPL 'or by the MMU , but only reset by the MMU.
Über eine zweite Gruppe von Status-FF IST.4T2) setzt das Steuerwerk die für den jeweiligen Mode notwendige Ansteuerung der Speicher MEM und BAS ab, die für die Dauer des Modes aufrechterhalten wird.Via a second group of status FF IST.4T2), the control unit sends the activation of the memories MEM and BAS necessary for the respective mode, which is maintained for the duration of the mode.
Die Funktionen dieser Status-FF sind The functions of this status FF are
MMA = (MEM Access); der Speicher MEM wird MMA = (MEM Access); the memory MEM becomes
adressiert im Lese-Mode.
BSA = (B^AS Access); der Speicher BAS wird addressed in read mode.
BSA = (B ^ AS Access); the memory BAS becomes
adressiert im Lese-Mode.
MMW = (MEM. WRITE); falls MMA gesetzt ist,addressed in read mode.
MMW = (MEM. WRITE); if MMA is set,
wird MEM beschrieben.is described in MEM.
BSW = (BAS WRITE); falls BSA gesetzt ist. wird BAS beschrieben. BSW = (BAS WRITE); if BSA is set. is described in BAS.
Zur Steuerung des Mikroprogrammablaufs übernimmt das Steuerwerk CONTR noch eine Reihe von
Signalen aus der arithmetisch-logischen Einheit 1, die diverse Registerzustande identiliziercn und zur
konditionellen Verzweigung der MP dienen.
Die arithmetisch-logische Funktionseinheit I ist funktionell gegliedert in eine Addierschaltung 2, in
der alle arithmetischen Operationen zur Vorbereitung des Algorithmus zum Suchen von Folgen unbesetzter
Speicherplätze (String-Search-Algorithmus) ausgeführt werden, sowie eine Zeigerschallung 3. die die
Ausführung des String-Scarch-Algorithmus. d. h. insbesondere das block weise Adressieren der Register
MEM und S.4S übernimmt. Schnittstelle für die Addierschaltung und die Zeigerschaltung ist das
Speichcradreß-Register MAR. To control the microprogram sequence , the control unit CONTR also takes over a series of signals from the arithmetic-logic unit 1, which identify various register states and are used for the conditional branching of the MP .
The arithmetic-logic functional unit I is functionally divided into an adder circuit 2, in which all arithmetic operations to prepare the algorithm for searching for sequences of unoccupied memory locations (string search algorithm) are carried out, as well as a pointer sound 3. which enables the execution of the string Scarch algorithm. ie in particular the block-wise addressing of the registers MEM and S.4S takes over. The interface for the adding circuit and the pointer circuit is the memory address register MAR.
Die Addierschaltung 2 besteht aus dem logischen Addierwerk ADD, den allgemeinen Registern RO, Rl. R2. R3, deren Inhalt dem rechten Eingang des Addierwerkes zugeführt wird, dem Addierer-Puffer-Register (Adder Output Latches AOL) sowie dem Adreßregister A7.4R als Akkumulator. Der Inhalt vom ;V/.4R kann dem linken Eingang des Addierwerkes ADD direkt zugeführt werden. Die Register RO. Rl. R2. R3 werden über die Datensammelleitung 4 {DATABUS) entweder vom Puffer-Register BLF oder vom Addierer-Pufferregister AOL beschrieben. The adder circuit 2 consists of the logical adder ADD, the general registers RO, Rl. R2. R3, the content of which is fed to the right input of the adder, the adder buffer register (adder output latches AOL) and the address register A7.4R as an accumulator. The content of; V / .4R can be fed directly to the left input of the adder ADD. The registers RO. Rl. R2. R3 are written to via the data bus 4 (DATABUS) either from the buffer register BLF or from the adder buffer register AOL .
Die Zeigerschaltung 3 erzeugt aus dem Inhalt des Speicher-Adreß-Registers MAR mit Hilfe des in dem
Schieberegister SPR geführten Zeigers die in den Speicherregistern MEM bzw: B.4S wirksam werdenden
Adressen und führt selbsttätig die Abtastung der Datenblöcke aus.
Der Inhalt des Schieberegisters SPR wird überThe pointer circuit 3 uses the content of the memory address register MAR to generate the addresses which become effective in the memory registers MEM or B.4S with the aid of the pointer in the shift register SPR and automatically scans the data blocks.
The content of the shift register SPR is over
die Datensammelleitung PBUS dem Register MAR sowie den logischen Netzwerken EOR. D und COMP simultan zugeführt. Gemäß dem angegebenen String-Search-Algorithmus wird die Zeigerposition SPRk dazu benutzt, im Mode ERBAS das Bit MAR{k) jethe data bus PBUS to the register MAR and the logical networks EOR. D and COMP fed simultaneously. According to the specified string search algorithm, the pointer position SPR k is used in the ERBAS mode, the bit MAR {k) je
4c nach Bedarf auf logisch 1 oder logisch 0 zu setzen; mit der Dont care Logik D die dont care Zustande Dk zu erzeugen, den Zustand D = 0: d. h. die Zeigerposition k = 0 zu identifizieren und dem Steuerwerk CONTR zuzuführen, um die Beendigung einer Seg-4c to be set to logic 1 or logic 0 as required; using the don't care logic D to generate the don't care states D k , the state D = 0: ie to identify the pointer position k = 0 and to supply it to the control unit CONTR in order to terminate a segment
ment-Abfrage zu indizieren; über das logische Netzwerk EOR das Adreß-Bit MAR(k) logisch zu invertieren und gleichzeitig über EOR den Inhalt von MAR mit dem der Zeigerposition koinzidenten Bit auszulesen und dem Steuerwerk CONTR zur Aus-Wertung zu übertragen, und im Vergleicher COMP einen Vergleich der Zeigerposition SPRk mit dem Inhalt des Grenzwertregisters G, in dem das die zwei Segmente Sl und SO von Speicherplätzen trennende Bit g gespeichert ist, vorzunehmen und ein entspre-index ment query; to logically invert the address bit MAR (k) via the logical network EOR and at the same time to read out the content of MAR with the bit coincident with the pointer position via EOR and to transmit it to the control unit CONTR for evaluation, and a comparison of the pointer position in the comparator COMP SPR k with the content of the limit value register G, in which the bit g separating the two segments S1 and SO from memory locations is stored, and a corresponding
chendes Sieuer-Signal an das Steuenverk CONTR abzugeben.Send the appropriate Sieuer signal to the control unit CONTR .
Um im Extremfall den gesamten Adreßraum mit »dont care«-Zuständen überdecken zu können, wie es z. B. am Beginn des Modes ERBAS erforderlich wird, um festzustellen, ob eine übriggebliebene Basis-Adresse existiert) müssen sowohl das Schieberegister SPR als auch die Dalensammelleitung Pß US zwischen SPR und dem logischen Netzwerk D auf w + 1 Bits dimensioniert sein, d.h. SPR(Om) und PBUS(Q:n). In order to be able to cover the entire address space with "dont care" states in extreme cases , as is the case e.g. B. is required at the beginning of the ERBAS mode to determine whether a remaining base address exists) both the shift register SPR and the dale bus line Pß US between SPR and the logical network D must be dimensioned to w + 1 bits, i.e. SPR ( Om) and PBUS (Q: n).
Die Adressierlogik ADRL erzeugt aus von den logischen Netzwerken EOR und D erzeugten Signal-Mustern gemäß Gleichung (1) die den Adreß-Leitungen X und X in den jeweiligen Adreß-DekodierernThe addressing logic ADRL generates the address lines X and X in the respective address decoders from signal patterns generated by the logic networks EOR and D in accordance with equation (1)
der Speicher MEM und IiAS zuzuführenden Signale. Auf den Leitungen All) werden die Adreß-Bits [MARH) ® SPRH) mit den dont care states DH). und auf den Leitungen .Yl/) werden die invertierten Adreß-Bits [MAR[I) - SPRlI) mit DH) ODER-vcrknüpft. signals to be supplied to the memory MEM and IiAS. The address bits [MARH) ® SPRH) with the dont care states DH) are on the lines All). and on the lines n .Yl /) the inverted address bits [MAR [I) - SPRlI) are ORed with DH) .
Falls der.Mode WRITE anliegt ld h. HR/ 1». wird die oben angeführte Adresse blockiert und statt dessen die Datensammelleitung 4 \DAIABLS) auf A und X in der Form Al/)' DA T Alii S Π), ίο .Yd')* DATABUS[Ii durchgeschaltet, wodurch eine um der ("PL' über den / 0-Puffer Bi I ausgegebene Basis-Adresse direkt in dem Speicherregister IiAS markiert werden kann.If the mode WRITE is present ld h. HR / 1 ». the above address is blocked and instead the data bus line 4 \ DAIABLS) to A and X in the form Al /) ' DA T Alii S Π), ίο .Yd') * DATABUS [Ii , whereby one around the (" PL 'can be marked directly in the memory register IiAS via the / 0 buffer Bi I output base address.
Die in Fi g. 3 dargestellte exklusive ODER-Schal- '5 tung EOR bewirkt die für den String-Search-Algorithmus notwendige Invertierung des Bits A des Adreßregisters MAR. das mil der Zeigerposilion A zusammenfällt. Gleichzeitig wird der Inhalt von AMRlA) dem Steuerwerk "(TOΛ 7 R als BRANCH-Bedingung zugeführt, die entscheidet, ob die Position A einen Speicherregisterzugriff erfordert oder ohne Aktion übersprungen wird.The in Fi g. 3 shown exclusive OR circuit EOR causes the necessary for the string search algorithm inversion of the bit A of the address register MAR. which coincides with pointer position A. At the same time, the content of AMRlA) is supplied to the control unit "(TOΛ 7 R as a BRANCH condition, which decides whether position A requires a memory register access or is skipped without any action.
Beide Funktionen werden nach F i g. 3 realisiert durch eine NAND-Gatter-Schaltung für die exklu- ;5 sive ODER-Funktion. die gleichzeitig EOR H) = MARU) θ SPR[i) und "am Ausgang i 1 des ersten NAND-Gaiters (10) ein Signal MARU)- SPR[i) erzeugt: letzteres wird durch einen unmittelbarfolgenden Inverter 12 komplementiert zu MARH) ■ SPR (I). Eine solche Schaltung existiert für jede Binärstelle I.Both functions are shown in FIG. 3 realized by a NAND gate circuit for the exclusive ; 5 sive OR function. which simultaneously EOR H) = MARU) θ SPR [i) and "at the output i 1 of the first NAND gate (10 ) generates a signal MARU) - SPR [i) : the latter is complemented by an immediately following inverter 12 to MARH) ■ SPR (I). Such a circuit exists for every binary digit I.
Steht der Zeiger in Position I = A. dann ist gemäß der Definition des Inhaltes des Schieberegisters SPR der Ausgang EOR (A) - MAR (A). aber Tür alle I == A gilt EORU) = MAR[I). Alle Ausgänge EORHl werden der Adressierlogik ADRL zugeführt.If the pointer is in position I = A. then, according to the definition of the content of the shift register SPR, the output is EOR (A) - MAR (A). but door all I == A applies EORU) = MAR [I). All outputs EORHl are fed to the addressing logic ADRL.
Die Signale MAR'U) ■ SPR H) werden für alle Binärstellen I über eine Schutzdiode 13 auf einer Sammelschiene 14 zusammengeführt und dort logisch summiert zu ,,^1 The signals MAR'U) ■ SPR H) are brought together for all binary digits I via a protective diode 13 on a busbar 14 and there logically summed to ,, ^ 1
^ .YMR(il ■ SPRU). ^ .YMR (il ■ SPRU).
ι = 0 ι = 0
Da nur SPR(A) = 1. liegt auf der Sammelschiene genau das Signal MAR \k) an. das zur Interpretation dem Steuerwerk CONTR zugeführt wird.Since only SPR (A) = 1. is exactly the signal MAR \ k) on the busbar. which is fed to the control unit CONTR for interpretation.
Die in F i g. 4 dargestellte »dont care«-Logik D erzeugt aus der Zeigerstellung A des Schieberegisters SPR die für die Blockadressierung benötigten »dont care« states, die der Adressierlogik ADRL zusammen mit den Ausgängen von EOR zugeführt werden. Gemäß Definition in Gleichung (2) müssen alle D(i) rechts von der Zeigerstellung k ein Signal logisch 1The in F i g. The “don't care” logic D shown in Figure 4 generates the “don't care” states required for block addressing from the pointer position A of the shift register SPR, which are fed to the addressing logic ADRL together with the outputs of EOR. According to the definition in equation (2), all D (i) to the right of the pointer position k must have a logical 1 signal
führen, während I) (A) selbst sowie alle /Ju) links von /.MA) ein Signal logisch 0 führen. Dies wird erreicht durch eine Kaskade von NOR-NAND-Gattern. die die Ausgänge des Schieberegisters SPR (I) mit den Ausgängen der jeweils vorangehenden Kaskadenslulen zusammenführen. Dadurch führen die Ausgänge aller Kaskadenstufen, die der Stufe A folgen, logisch 1. alle davoiliegeiiden Kaskadenstufenausgänge logisch 0. Von den Ausgängen der Kaskadensiufcn können demnach die D(I) direkt abgegriffen werden.lead, while I) (A) itself and all / Ju) to the left of /.MA) carry a logic 0 signal. This is achieved by a cascade of NOR-NAND gates. which merge the outputs of the shift register SPR (I) with the outputs of the respective preceding cascade columns. As a result, the outputs of all cascade levels following level A are logically 1. All of the cascade level outputs are logically 0. The D (I) can therefore be tapped directly from the outputs of the cascade levels.
Der Ausgang des letzten Kaskadcnglicdcs ist logisch 0. falls eine Zeigerposilion SPR(A) = 1 existiert, aber logisch 1. falls der Zeiger nach links (A > ii-l) oder rechts (A < 0) aus .S'PR herauswandert. Der letztere Fall (nur dieser tritt auf bei fehlerfreier Operation der Speichcrvervvaltungseinheil MMU) indiziert das F.nde einer Segmentbearbeitung (vgl. Algorithmus), weshalb der letzte Kaskadenausgang dem Steuerwerk CONTR zugeführt wird.The output of the last Kaskadcnglicdcs is logically 0. if a pointer position SPR (A) = 1 exists, but logically 1. if the pointer wanders out of S'PR to the left (A> ii-1) or right (A <0). The latter case (only this occurs with error-free operation of the memory management unit MMU) indicates the end of segment processing (see algorithm), which is why the last cascade output is fed to the control unit CONTR.
Die aus einer NAND-Logik bestehende Vergleichsschaltung COMP stellt fest, ob die Zeigerstellung SPRk mit dem Inhalt des Registers G übereinstimmt. Zu diesem Zweck werden die EOR-Terme SPRU) Θ CtU) für alle 0 < ί < » - 1 gebildet und auf einer Sammelschine logisch summiert. Da gemäß Definition sowohl SPR als auch G nur genau ein Bit enthalten das logisch 1 ist. wird nur für den Fall SPR(A) = G (A) die Sammelschiene auf logisch 0 gesetzt, in allen anderen Fällen fühn sie logisch 1. Die Position SPR(A) = G(A) bewirkt im Steuerwerk CONTR die Umkehrung der Zeigcrlaufriehtung. The comparison circuit COMP , which consists of a NAND logic, determines whether the pointer position SPR k matches the content of the G register. For this purpose, the EOR terms SPRU) Θ CtU) are formed for all 0 <ί <»- 1 and logically summed up on a bus bar. Since, according to the definition, both SPR and G contain exactly one bit that is logical 1. is just in case SPR (A) = G (A) set the bus to logic 0, in all other cases they fühn logic 1. The position SPR (A) = G (A) results in the control unit CONTR reversing the Zeigcrlaufriehtung.
Die Adressierlogik ADRL nach F i g. 5 verknüpft die in EOR produzierte effektive Adresse I1.,, = M AR © SPR gemäß Gleichung (1) mit den «dom carc<· states D und führt den Adreßleitungen A. A' den jeweiligen Adreßdekodiercr der Speicher MEM und BAS zu. Für den H'R/7'E-Mode ist außerdem die schnell..- Einspeisung einer von der CPL' gelieferten Basis-Adresse in X und X bei gleichzeitiger Blockierung der von EOR und D erzeugten Adresse möglich.The addressing logic ADRL according to FIG. 5 links the effective address I 1. ,, = M AR © SPR produced in EOR according to equation (1) with the dom carc <· states D and supplies the address lines A. A 'with the respective address decoders of the memories MEM and BAS . For the H'R / 7'E mode, it is also possible to ...- feed a base address supplied by the CPL 'into X and X while simultaneously blocking the address generated by EOR and D.
Die Adressierlogik ADLR führt die folgenden logischen Verknüpfungen aus:The ADLR addressing logic performs the following logical operations:
XU) = WRT ■ DATABUSU) XU) = W RT ■ D ATABUSU)
+ WRT (EOR(O + D U)- XU) = WRT DATABUSU) + WR T (EOR (O + D U) - XU) = WRT DA TABUS U)
+ WRT (EORU) + DU). + WRT (EORU) + DU).
d.h. mit WRT (szeliefert durch das entsprechende STATLS-Flip-Flop) wird der DATABUS auf A'. X durchgeschaltet, und mit WRT, d. h. für jeden anderen Mode der Speichervcrwaltungseinheit MMU. wird die Adresse gemäß Gleichung (1) gebildet.ie with WRT (supplied by the corresponding STA TLS flip-flop) the D ATABUS is set to A '. X switched through, and with WRT, i. H. for any other mode of the memory management unit MMU. the address is formed according to equation (1).
Hierzu 4 BIaU Zeichnungen4 BIaU drawings
.!,'Sf&isüfe.!, 'Sf & isüfe
Claims (7)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19742418034 DE2418034C3 (en) | 1974-04-13 | Circuit arrangement for managing memory segments | |
GB14285/75A GB1499184A (en) | 1974-04-13 | 1975-04-08 | Circuit arrangement for monitoring the state of memory segments |
US05/568,129 US4024507A (en) | 1974-04-13 | 1975-04-14 | Arrangement for monitoring the state of memory segments |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19742418034 DE2418034C3 (en) | 1974-04-13 | Circuit arrangement for managing memory segments |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2418034A1 DE2418034A1 (en) | 1975-10-23 |
DE2418034B2 DE2418034B2 (en) | 1976-02-19 |
DE2418034C3 true DE2418034C3 (en) | 1976-10-14 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2630323C3 (en) | Data storage device with a main memory, an auxiliary memory and a look-ahead logic | |
DE2317870C2 (en) | Circuit arrangement for controlling the data transmission between the main memory and at least one I / O device in a digital data processing system | |
DE2459006C2 (en) | Device for forming an absolute address in a data processing system | |
DE2515696C2 (en) | Data processing system | |
DE69738188T2 (en) | METHOD AND APPARATUS FOR INCREASED ACCURACY IN THE BRANCHING FORECAST IN A SUPERSCALAR MICROPROCESSOR | |
DE1499182C3 (en) | Data storage system | |
DE2417795C2 (en) | Data processing system | |
CH650600A5 (en) | CENTRAL PROCESSOR UNIT OF A DATA PROCESSING SYSTEM WITH OPERATION CODE EXTENSION REGISTER. | |
DE2714805A1 (en) | DATA PROCESSING SYSTEM | |
DE3102150A1 (en) | "CIRCUIT ARRANGEMENT WITH A CACHE STORAGE FOR A CENTRAL UNIT OF A DATA PROCESSING SYSTEM | |
DE2725718A1 (en) | PROCESSING SYSTEM WITH MULTIPLE VIRTUAL ADDRESS SPACES | |
DE2054835A1 (en) | Processor for an information processing system and an operating method for this processor | |
DE1928202B2 (en) | Device for the creation of statistical data on the operational sequence of program-controlled data processing systems | |
DE2750721A1 (en) | INPUT / OUTPUT SYSTEM | |
DE2424931A1 (en) | DATA PROCESSING SYSTEM, IN PARTICULAR MICROPROGRAM DATA PROCESSING UNIT WITH PARALLEL COMMAND STREAMS FOR MULTIPLE LEVELS OF SUB COMMAND RESERVES | |
DE2339741A1 (en) | ARRANGEMENT FOR THE FORMATION OF A RELATIVE ADDRESS FOR A MEMORY | |
DE1524102B2 (en) | ELECTRONIC DATA PROCESSING MACHINE CONSTRUCTED FROM COMPONENTS | |
DE2054947A1 (en) | Address preparation device and method and memory access request device for an information processing system | |
DE1285219B (en) | Control unit for the execution of subroutines | |
DE2458096C2 (en) | Device for loading micro-programs in a micro-programmable data processing system | |
DE1499206B2 (en) | COMPUTER SYSTEM | |
DE2418034C3 (en) | Circuit arrangement for managing memory segments | |
DE2425380C2 (en) | Data processing system for the parallel execution of processing operations | |
DE2440390A1 (en) | ELECTRONIC CALCULATOR | |
EP1543411B1 (en) | Processor with explicit information on information to be secured in sub-program branches |