DE2702556A1 - Schaltungsanordnung zur steuerung des speicherzugriffs - Google Patents

Schaltungsanordnung zur steuerung des speicherzugriffs

Info

Publication number
DE2702556A1
DE2702556A1 DE19772702556 DE2702556A DE2702556A1 DE 2702556 A1 DE2702556 A1 DE 2702556A1 DE 19772702556 DE19772702556 DE 19772702556 DE 2702556 A DE2702556 A DE 2702556A DE 2702556 A1 DE2702556 A1 DE 2702556A1
Authority
DE
Germany
Prior art keywords
macro
command
fifo register
memory
microprocessor
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.)
Ceased
Application number
DE19772702556
Other languages
English (en)
Other versions
DE2702556B2 (de
Inventor
Clausjuergen Dipl Ing Becherer
Hermann-Josef Dipl Ing Golbach
Dietrich Dr Ing Illi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel Lucent Deutschland AG
Original Assignee
Standard Elektrik Lorenz AG
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 Standard Elektrik Lorenz AG filed Critical Standard Elektrik Lorenz AG
Priority to DE19772702556 priority Critical patent/DE2702556B2/de
Priority to AU31639/77A priority patent/AU3163977A/en
Priority to FR7801068A priority patent/FR2378312A1/fr
Priority to BE2056623A priority patent/BE863098A/xx
Publication of DE2702556A1 publication Critical patent/DE2702556A1/de
Publication of DE2702556B2 publication Critical patent/DE2702556B2/de
Ceased legal-status Critical Current

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Description

STANDARD ELEKTRIK LORENZ
AKTIENGESELLSCHAFT
Stuttgart 2/02556
C.Becherer-H.-J.Golbach-D.Illi 1-2-10
Schaltungsanordnung zur Steuerung des Speicherzugriffs
Die Erfindung betrifft eine Schaltungsanordnung für einen Mikroprozessor, bei der zur Verringerung der Speicherzugriffszeit während der Abarbeitung eines Befehls schon der nächste Befehl bereitgestellt wird.
Aus der amerikanischen Patentschrift 3 162 8^1 ist es bekannt, die Steuerung des Speicherzugriffs mit zwei Befehlszählern und einem zweistufigen Befehlsregister so auszuführen, daß während der Abarbeitung eines Befehls, der in der zweiten Stufe des Befehlsregisters steht, schon der nächste Befehl in der ersten Stufe bereitgestellt wird, wodurch die Zeit, die zum Bereitstellen der Befehle notwendig ist, nicht mehr in die Verarbeitungszeit einfließt.
Nachteilig bei der bekannten Steuerung des Speicherzugriffs ist, daß aufgrund einer aus anderen Gründen notwendigen Splittung der Adresse zwei getrennte Busleitungen erforderlich sind, um Befehle adressieren zu können. Dadurch entsteht eine unübersichtliche und aufwendige Rechnerhardware.
12.1.1977
Sa/Mr
809830/024? ORIGINAL INSPECTED
Die Aufgabe der Schaltungsanordnung nach der Erfindung, den Speicherzugriff für einen Mikroprozessor zu steuern, wird dadurch gelöst, daß ein Markobefehlszähler extern vom Mikroprozessor vorgesehen ist, der das Auslesen eines Makrobefehls aus einem Programmspeicher in eine Stufe eines m-stufigen FIFO-Registers steuert, wobei der Mikroprozessor den Befehl abarbeitet, der als erster in das m-stufige FIFO-Register geladen wurde, daß die Anzahl von m Stufen abhängig vom Verhältnis der maximalen Makrozyklenzeit geteilt durch die Speicherzykluszeit gewählt ist, daß der Mikroprozessor nach der Abarbeitung eines jeden Befehls den Stand eines Programmzählers erhöht, daß der Stand des Makrobefehlszählers immer dann erhöht wird, wenn ein Makrobefehl aus dem FIFO-Register ausgelesen wird, und daß ein vom Programmspeicher getrennter Datenspeicher vorgesehen ist.
Der extern vom Mikroprozessor vorgesehene Makrobefehlszähler ist dem Programmspeicher fest zugeordnet, so daß das Auslesen aus dem Programmspeicher ohne Zeitverzug durch Zuordnen erfolgt. Diese Lösung ist übersichtlich und einfach.
Die Schaltungsanordnung ermöglicht, daß bei Aktivierung des Prozessors das FIFO-Register vollgeladen wird. Der Mikroprozessor arbeitet dann das volle FIFO-Register durchgehend ab, so daß Leerzyklen (NOP) vermieden werden. Während des Abarbeitens wird das FIFO-Register ständig nachgeladen, wodurch eine asynchrone Arbeitsweise zwischen Programmspeicher und FIFO-Register entsteht.
Θ09830/0242 OWG4NAL INSPECTED
Der vom Programmspeicher getrennte Datenspeicher und das Bereitstellen des Befehls im FIFO-Register ermöglichen, daß der Mikroprozessor gleichzeitig zu den Daten und zu dem Befehl Zugriff hat.
In Weiterbildung der erfindungsgemäßen Schaltungsanordnung ist zwischen dem Programmspeicher und dem m-stufigen FIFO-Register ein Zwischenregister vorgesehen. Dadurch kann die Zykluszeit zwischen zwei Progranunspeicherzugriffen kurz gehalten werden, wenn dieses Register möglichst nahe bei den Speichern untergebracht wird und bei Verwendung dynamischer Speicher kann dadurch der Leistungsbedarf gesenkt werden.
Nachfolgend wird die Erfindung anhand eines im Blockschaltbild dargestellten Ausführungsbeispiels näher beschrieben.
Die Schaltungsanordnung zur Steuerung des Speicherzugriffs ist Teil eines Rechners. Es wird im folgenden davon ausgegangen, daß der Rechner in Betrieb genommen wird.
Die Zählerstände eines Programmzählers PZ und eines Makrobefehlszählers MZ stehen auf Null. Damit bietet der Makrobefehlszähler MZ einem Programmspeicher PS, dem er fest zugeordnet ist, die Anfangsadresse an und ruft einen unter dieser Adresse abgelegten ersten Makrobefehl auf, der von einem Zwischenregister ZR aufgenommen wird.
Mit Hilfe des Zwischenregisters ZR kann die Zeitspanne zwischen Beginn eines ersten und dem Beginn des folgenden Zyklus, d.h. die Zykluszeit, so kurz wie möglich gehalten werden. Da im hiesigen Ausführungsbeispiel dynamische Speicher verwendet werden, sinkt auch der Leistungsbedarf.
809830/0242
Das Zwischenregister ZR ist mit einem m-stufigen FIFO-Register BS verbunden und gibt seinen Inhalt an dieses FIFO-Register BS weiter, falls noch freie Plätze im FIFO-Register BS vorhanden sind. Bei jedem Ladevorgang wird der Makrobefehlszähler MZ erhöht. Der Mikroprozessor /UP arbeitet die Befehle in der Reihenfolge ab, in der das FIFO-Register BS geladen wird. Der Ausgang des FIFO-Registers BS wird mit dem Befehlseingang des Mikroprozessors ,uP verbunden. Alternativlösungen zur Realisierung des FIFO-Registers BS sind Schieberegister oder Tri-state-Speicher.
Sobald der Mikroprozessor ii? bei der Abarbeitung eines Befehls - im beschriebenen Beispiel ist dies der erste Befehl - den letzten Mikrozyklus des Befehls antritt, wird der Programmzähler PZ, der bis dahin auf Null stand, über Leitung sP um eins erhöht. Der Makrobefehlszähler MZ, der inzwischen η (η£m) Stufen des FIFO-Registers BS geladen hat, steht auf n. Wird ein Makrobefehl aus dem FIFO-Register BS ausgelesen, so wird der Makrobefehlszähler MZ um 1 erhöhtem den Stand n+1 aufzuweisen. Der Makrobefehlszähler MZ bietet dem Programmspeicher PS diese Adresse an, die in der beschriebenen Weise den nächsten Makrobefehl aufruft. Die Speicherzugriffszeit läßt sich somit auf die Befehlslaufzeit FIFO-Register BS-Mikroprozessor ,uP reduzieren, die von der Leitungslänge bestimmt wird.
Daten, die der Mikroprozessor -uP bei der Abarbeitung von Befehlen benötigt, werden aus einem Datenspeicher DS bezogen, indem der Mikroprozessor ^P über Adreßleitung aD die gewünschte Speicherstelle anspricht. Die Adressierung
809830/02*2
geschieht ohne Zeitverzug; die sonst übliche Wartezeit, die dadurch bedingt ist, daß abwechselnd ein Programm und ein Datenspeicherzugriff ausgeführt wird, entfällt, da der Programmspeicherzugriff schon vorher erfolgt ist und der dabei aufgerufene Befehl schon im FIFO-Register BS bereitsgestellt wurde. Der Mikroprozessor ,uP hat
somit gleichzeitig zum Programm und zu den Daten Zugriff.
Bei der Ausführung einer Programmunterbrechung oder
eines Programmsprunges müssen Makrobefehls- und Programmzähler MZ und PZ gleichzeitig mit einer neuen Programmadresse über Leitung aP geladen werden. Ebenso wie bei
der Inbetriebnahme ist auch in diesen Fällen keine Verkürzung der Speicherzugriffszeit möglich, da das FIFO-Register BS erst geladen werden muß.
Im beschriebenen Ausführungsbeispiel ist das FIFO-Register BS zweistufig ausgeführt, wodurch der vom Makrobefehlszähler MZ gesteuerte Programmspeicherzugriff asynchron
zur Abarbeitung der Befehle erfolgen kann. Der größte auftretende Schlupf beträgt zwei Zyklen, der sich in der
Differenz der Zählerstände ausdrückt.
809830/0242

Claims (2)

27Ü2556 C.Becherer et al 1-2-10 Patentansprüche
1. Schaltungsanordnung für einen Mikroprozessor, bei der zur Verringerung der Speicherzugriffszeit während der Abarbeitung eines Befehls schon der nächste Befehl bereitgestellt wird, dadurch gekennzeichnet, daß ein Makrobefehlszähler (MZ) extern vom Mikroprozessor (λιΡ) vorgesehen ist, der das Auslesen eines Makrobefehls aus einem Programmspeicher (PS) in eine Stufe eines m-8tufigen FIFO-Registers (BS) steuert, wobei der Mikroprozessor den Befehl abarbeitet, der als erster in das m-stufige FIFO-Register geladen wurde, daß die Anzahl von m Stufen abhängig vom Verhältnis der maximalen Makrozykluszeit geteilt durch die Speicherzykluszeit gewählt ist, daß der Makroprozessor nach der Abarbeitung eines jeden Befehls den Stand eines Programmzählers (PZ) erhöht, daß der Stand des Makrobefehlszählers immer dann erhöht wird, wenn ein Makrobefehl aus dem FIFO-Register ausgelesen wird und daß ein vom Programmspeicher getrennter Datenspeicher (DS) vorgesehen ist.
2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß zwischen dem Programmspeicher (PS) und dem FIFO-Register (BS) ein Zwischenregister (ZR) vorgesehen ist.
809830/0242 ORIGINAL INSPECTED
DE19772702556 1977-01-22 1977-01-22 Mikroprozessor-Schaltungsanordnung Ceased DE2702556B2 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE19772702556 DE2702556B2 (de) 1977-01-22 1977-01-22 Mikroprozessor-Schaltungsanordnung
AU31639/77A AU3163977A (en) 1977-01-22 1977-12-15 Processor access control 0
FR7801068A FR2378312A1 (fr) 1977-01-22 1978-01-16 Dispositif de commande d'acces en memoire pour microprocesseur
BE2056623A BE863098A (fr) 1977-01-22 1978-01-20 Dispositif de commande d'acces en memoire pour microprocesseur

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19772702556 DE2702556B2 (de) 1977-01-22 1977-01-22 Mikroprozessor-Schaltungsanordnung

Publications (2)

Publication Number Publication Date
DE2702556A1 true DE2702556A1 (de) 1978-07-27
DE2702556B2 DE2702556B2 (de) 1979-04-19

Family

ID=5999265

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772702556 Ceased DE2702556B2 (de) 1977-01-22 1977-01-22 Mikroprozessor-Schaltungsanordnung

Country Status (4)

Country Link
AU (1) AU3163977A (de)
BE (1) BE863098A (de)
DE (1) DE2702556B2 (de)
FR (1) FR2378312A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3121174C2 (de) * 1981-05-27 1985-11-07 Siemens AG, 1000 Berlin und 8000 München Schaltungsanordnung in einem Prozessor

Also Published As

Publication number Publication date
BE863098A (fr) 1978-07-20
FR2378312A1 (fr) 1978-08-18
DE2702556B2 (de) 1979-04-19
FR2378312B3 (de) 1980-09-05
AU3163977A (en) 1979-06-21

Similar Documents

Publication Publication Date Title
DE3587277T2 (de) System fuer die umgehungssteuerung beim pipelinebetrieb eines computers.
EP0268285B1 (de) Verfahren und Schaltungsanordnung zum Urladen eines Zweitrechners
DE3401995C2 (de)
DE2322674C3 (de) Mikroprogramm-Steuereinrichtung
DE69228360T2 (de) Registerlesekontrolle
DE2735814A1 (de) Datenverarbeitungseinrichtung
DE2145120A1 (de) Digitales Datenverarbeitungsgerat
DE2117936A1 (de) Mikroprogrammgesteuerte Zentraleinheit eines elektronischen Datenverarbeitungssystems
DE3114921C2 (de) Mikroprogramm-Speicheranordnung
DE2718551C3 (de) Adressenumsetzer
DE19526008A1 (de) Vertikal partitionierter, primärer Befehls-Cache-Speicher
DE1953364A1 (de) Wahlausfuehrungsschaltung fuer programmgesteuerte Datenverarbeiter
DE2418921C2 (de) Vorrichtung zum Speichern von Mikroprogrammen in einer Datenverarbeitungsanlage
DE2617485A1 (de) Verfahren und schaltungsanordnung zur abarbeitung von mikrobefehlsfolgen in datenverarbeitungsanlagen
DE19628039B4 (de) Speicheradressen-Steuerschaltung
DE2245284A1 (de) Datenverarbeitungsanlage
DE1180171B (de) Zahlenrechner
DE2702556A1 (de) Schaltungsanordnung zur steuerung des speicherzugriffs
DE2029467A1 (de) Verfahren zur Steuerung von Sprüngen in verschiedene Programme in einem in Echtzeit arbeitenden Rechner
DE69502133T2 (de) Datenprozessor mit gemeinsamen Anschluss zur Überwachung von internen und externen Speicherereignissen
DE3633898C2 (de)
DE2230727B2 (de) Schaltungsanordnung zur dynamischen zuteilung von speicherzyklen mit vorrangssteuerung
DE69521089T2 (de) Vektordatenumgehungsmechanismus für einen Vektorrechner
DE2150292C2 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit überlagerter Ausführung und Entnahme von Befehlen
DE2836873C2 (de) Speichersystem mit wahlfreiem Zugriff

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
8235 Patent refused