DE3416436C2 - - Google Patents

Info

Publication number
DE3416436C2
DE3416436C2 DE19843416436 DE3416436A DE3416436C2 DE 3416436 C2 DE3416436 C2 DE 3416436C2 DE 19843416436 DE19843416436 DE 19843416436 DE 3416436 A DE3416436 A DE 3416436A DE 3416436 C2 DE3416436 C2 DE 3416436C2
Authority
DE
Germany
Prior art keywords
address
memory
program
status
word
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
Application number
DE19843416436
Other languages
German (de)
Other versions
DE3416436A1 (en
Inventor
Wolfgang 6432 Heringen De Hopf
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.)
Siemens AG
Original Assignee
Siemens 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 Siemens AG filed Critical Siemens AG
Priority to DE19843416436 priority Critical patent/DE3416436A1/en
Publication of DE3416436A1 publication Critical patent/DE3416436A1/en
Application granted granted Critical
Publication of DE3416436C2 publication Critical patent/DE3416436C2/de
Granted 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address

Description

Die Erfindung bezieht sich auf eine Schaltungsanordnung zum Adressieren von Programmteilen in einem Mikrorech­ ner mit einem Mikroprozessor, einem Programmspeicher und einem Arbeitsspeicher entsprechend dem Oberbegriff des Patentanspruches 1.The invention relates to a circuit arrangement for addressing program parts in a micro-computer ner with a microprocessor, a program memory and a working memory according to the generic term of claim 1.

Aus IBM Technical Disclosure Bulletin, Vol. 17, No. 3, Seiten 735-755, August 1974 ist eine Schaltungsanordnung zur Mehr­ fachverzweigung in derartigen mikroprogrammierten Computern be­ kannt, bei der für die Mehrfachverzweigung jeweils ein Binär­ zeichen aus einer vorgegebenen Anzahl von Binärzeichen in einem einen Steuerspeicher adressierenden Adressenregister komplemen­ tiert wird. Eine Anzahl von Binärzeichen in einem Zustandsregi­ ster gibt an, welches Binärzeichen aus der vorgegebenen Anzahl von Binärzeichen in dem Adressenregister komplementiert wird. Eine Berücksichtigung sowohl eines Zustands als auch eines Er­ eignisses im Sinne der vorliegenden Erfindung findet bei dieser bekannten Schaltungsanordnung nicht statt. Insbesondere ist bei der bekannten Schaltungsanordnung keine Sprungverteiltabelle vorgesehen, an der einem Zustand des jeweils zuletzt bearbeite­ ten Programmteils zugeordnetes Zustandswort und ein einem be­ stimmten Ereignis zugeordnetes Adressenwort anliegt.From IBM Technical Disclosure Bulletin, Vol. 17, No. 3 pages 735-755, August 1974 is a circuit arrangement for more Branch in such micro-programmed computers be knows, in which one binary for the multiple branching characters from a given number of binary characters in one complete an address register addressing control memory is tiert. A number of binary characters in a state register ster specifies which binary character from the specified number is complemented by binary characters in the address register. A consideration of both a state and an Er event in the sense of the present invention takes place in this known circuit arrangement does not take place. In particular, at the known circuit arrangement no jump distribution table provided on the one state of the last edited Status part assigned to the program part and a be address event assigned to a certain event.

Es ist bereits bekannt, bei der Bearbeitung eines Vor­ gangs unter Verwendung eines Mikrorechners Einsprung­ adressen für Programmteile beim Auftreten von entspre­ chenden Ereignissen, wie beispielsweise Unterbrechungs­ meldungen, Tastenbetätigungen, oder Endemeldungen unter Verwendung des Betriebssystems zu errechnen. Die Ein­ sprungadresse hängt dabei nicht nur von der Art des Ereignisses ab, sondern auch von dem Zustand (Status) in dem sich der Mikrorechner gerade befindet. Die Ein­ sprungadresse wird somit in Abhängigkeit von einem Er­ eignis und von dem gerade vorhandenen Zustand ermittelt.It is already known when editing a front entry using a microcomputer addresses for program parts when correspondence occurs relevant events, such as interruption messages, key presses or end messages under Calculate use of the operating system. The one jump address depends not only on the type of Event, but also from the state (status) in which the microcomputer is currently located. The one Jump address is thus dependent on an Er event and determined from the current state.

Falls für die Verarbeitung der Daten im Mikrorechner nur eine verhältnismäßig geringe Zeitdauer zur Verfügung steht, steht häufig die für die Ermittlung der Adresse eines Programmteils unter Verwendung des Betriebssystems erforderliche Zeitdauer nicht zur Verfügung.If for processing the data in the microcomputer only a relatively short period of time is available is often used to determine the address a program part using the operating system required time is not available.

Der Erfin­ dung liegt daher die Aufgabe zugrunde, eine Schaltungs­ anordnung anzugeben, unter deren Verwendung bei dem Ein­ treten eines bestimmten Ereignisses, während sich der Mikrorechner in einem bestimmten Zustand befindet, mög­ lichst schnell die Adresse des zugehörigen Programm­ teils zu ermitteln. The inventor Therefore, the task is based on a circuit to specify the arrangement, using it at the occurrence of a particular event while the Microcomputer is in a certain state, possible the address of the associated program as quickly as possible partly to be determined.  

Erfindungsgemäß wird die Aufgabe bei der Schaltungsan­ ordnung der eingangs genannten Art durch die im kenn­ zeichenden Teil des Patentanspruchs 1 angegebenen Merk­ male gelöst.According to the invention the task in the circuit order of the type mentioned by the in the kenn drawing part of claim 1 specified note times solved.

Die Schaltungsanordnung gemäß der Erfindung hat den Vor­ teil, daß sie einen sehr geringen Aufwand erfordert und wesentlich zur Erhöhung der Verarbeitungsgeschwindigkeit in dem Mikrorechner beiträgt.The circuit arrangement according to the invention has the front partly that it requires very little effort and essential to increase the processing speed in which microcomputer contributes.

Zweckmäßiger Weise enthält die Steuereinheit ein Zu­ standsregister, in das vor dem zuletzt bearbeiteten Pro­ gramm ein neues Zustandswort eingeschrieben wird. Das Zustandsregister ist ausgangsseitig mit dem Eingang einer Sprungverteilertabelle verbunden, an der eingangs­ seitig zusätzlich ein dem jeweiligen Ereignis zugeordne­ tes Adressenwort anliegt und das an seinem Ausgang die Adresse des zugeordneten Programmteils an den Programm­ speicher abgibt. Die Sprungverteiltabelle ist als Fest­ wertspeicher und zweckmäßigerweise als elektrisch pro­ grammierbarer Festwertspeicher ausgebildet.The control unit expediently contains a closure status register, in the before the last edited pro a new status word is written. The Status register is on the output side with the input connected to a jump distribution table, at the beginning on the one hand additionally assigned to the respective event tes address word and that at its output the Address of the assigned program part to the program emits memory. The jump distribution table is fixed value memory and expediently as electrical pro programmable read-only memory.

Bei der Verwendung der Schaltungsanordnung in Zusammen­ hang mit einem Mikroprozessor, der die niederwertigen Binärzeichen der Adressen über seinen Daten-Bus und die höherwertigen Binärzeichen der Adressen über einen Adreß- Bus abgibt, ist es vorteilhaft, wenn das Zustandsregi­ ster eingangsseitig mit dem Daten-Bus verbunden ist, die Sprungverteiltabelle eingangsseitig mit dem Adres­ sen-Bus und mit dem Ausgang des Zustandsregisters ver­ bunden ist und wenn der Ausgang der Sprungverteiltabel­ le am Daten-Bus angeschlossen ist.When using the circuit arrangement in together hang with a microprocessor that the low-order Binary characters of the addresses on its data bus and the higher-order binary characters of the addresses via an address From the bus, it is advantageous if the status register is connected on the input side to the data bus, the jump distribution table on the input side with the address sen bus and ver with the output of the status register is bound and if the output of the jump distribution table le is connected to the data bus.

Eine bevorzugte Ausführungsform der Schaltungsanordnung wird im folgenden anhand von Zeichnungen näher erläutert. Es zeigtA preferred embodiment of the circuit arrangement is explained in more detail below with reference to drawings.  It shows

Fig. 1 ein Blockschaltbild eines Mikrorechners, Fig. 1 is a block diagram of a microcomputer,

Fig. 2 ein Blockschaltbild einer Steuereinheit, Fig. 2 is a block diagram of a control unit,

Fig. 3 ein Adressierungsschema und Fig. 3 is an addressing scheme and

Fig. 4 eine schematische Darstellung eines Ausschnitts aus der Sprungverteiltabelle. Fig. 4 is a schematic representation of a section of the jump distribution table.

Der in Fig. 1 dargestellte Mikrorechner enthält einen Mikroprozessor MP, einen Programmspeicher PS und einen Arbeitsspeicher AS, die miteinander jeweils über einen Steuer-Bus SB, einen Adressen-Bus AB und einen Daten- Bus DB verbunden sind. Für eine Ein- und Ausgabe von Daten sind an dem Arbeitsspeicher AS zusätzlich Ein- und Ausgabeschnittstellen E bzw. A vorgesehen, um bei­ spielsweise bestimmte Ereignisse in einem Gerät fest­ stellen zu können und Steuerfunktionen in dem Gerät durchführen zu können.The microcomputer shown in FIG. 1 contains a microprocessor MP , a program memory PS and a working memory AS , each of which is connected to one another via a control bus SB , an address bus AB and a data bus DB . For the input and output of data, additional input and output interfaces E or A are provided on the working memory AS in order, for example, to be able to determine certain events in a device and to be able to carry out control functions in the device.

Der Mikroprozessor MP kann als handelsüblicher Mikro­ prozessor ausgebildet sein. Beispielsweise kann er als Mikroprozessor ausgebildet sein, der im Handel unter der Bezeichnung 8085 erhältlich ist. Bei diesem Mikroprozes­ sor werden nur die höherwertigen Binärzeichen einer Adresse über den Adreß-Bus abgegeben, während die nie­ derwertigen Binärzeichen der Adresse über den Daten-Bus abgegeben werden.The microprocessor MP can be designed as a commercially available micro processor. For example, it can be designed as a microprocessor, which is commercially available under the designation 8085. With this microprocessor, only the higher-order binary characters of an address are output via the address bus, while the lower-order binary characters of the address are delivered via the data bus.

Zwischen dem Mikroprozessor MP und dem Programmspeicher PS ist eine Steuereinheit ST vorgesehen, die in Abhän­ gigkeit von Zuständen des Mikrorechners und von auf den Mikrorechner einwirkenden Ereignissen fest vorgegebene Programmteile im Programmspeicher PS adressiert.Between the microprocessor MP and the program memory PS , a control unit ST is provided which, depending on the states of the microcomputer and of events acting on the microcomputer, addresses predetermined program parts in the program memory PS .

Wie in Fig. 2 dargestellt ist, enthält diese Steuerein­ heit ST beispielsweise ein Zustandsregister ZR, das eingangsseitig am Daten-Bus DB angeschlossen ist und in dem Zustände durch ein entsprechendes Datenwort zwischen­ gespeichert werden. Ausgangsseitig ist das Zustandsre­ gister ZR mit Adreßeingängen eines Speichers SP ver­ bunden, der zweckmäßigerweise als Festwertspeicher und insbesondere als elektrisch löschbarer Festwertspeicher ausgebildet ist. Weitere Adreßeingänge des Speichers SP sind am Adreß-Bus AB angeschlossen. Das dort anliegende Adressenwort ist jeweils einem bestimmten Ereignis zuge­ orndet. An seinem Ausgang gibt der Speicher SP ein Adres­ senwort ab, mit dem in Abhängigkeit von dem jeweiligen Zustand und dem jeweiligen Ereignis ein bestimmter Pro­ grammteil im Programmspeicher PS aufgerufen wird. Beim vorliegenden Ausführungsbeispiel ist der Ausgang des Speichers SP am Daten-Bus DB angeschlossen, der, wie bereits erwähnt, jeweils die niederwertigen Binärzei­ chen der Adresse angibt.As shown in FIG. 2, this control unit ST contains, for example, a status register ZR , which is connected on the input side to the data bus DB and in which states are temporarily stored by a corresponding data word. On the output side, the status register ZR is connected to address inputs of a memory SP , which is expediently designed as a read-only memory and in particular as an electrically erasable read-only memory. Additional address inputs of the memory SP are connected to the address bus AB . The address word there is assigned to a specific event. At its output, the memory SP emits an address word with which a specific program part in the program memory PS is called up as a function of the respective state and the respective event. In the present embodiment, the output of the memory SP is connected to the data bus DB , which, as already mentioned, indicates the lower-order binary characters of the address.

Bei dem in Fig. 3 dargestellten Adressierungsschema wird angenommen, daß der Programmspeicher PS ein Spei­ chervolumen von 32 KByte aufweist. Falls in dem Zustands­ register ZR 256 verschiedene Zustände zwischengespeichert werden sollen, sind 8 Binärzeichen für die Speicherung dieser Zustände erforderlich. Für jeden Zustand stehen dann 128 Byte zur Verfügung. Falls der Mikrorechner in bekannter Weise unterbrechungsgesteuert (interrupt ge­ steuert) ist, liefert die zugehörige Unterbrechungs­ steuereinheit Adressen im Adressierungsabstand von 4 Byte. Bei Verwendung einer derartigen Unterbrechungssteuerein­ heit sind bei den angenommenen Zahlenwerten 128 Byte/4 Byte = 32 Ereignisse möglich. Somit sind 5 Binärzeichen des dem Speicher SP zugeführten Adreßworts für die Darstel­ lung der Ereignisse erforderlich. Es ist auch möglich, den Speicherinhalt durch Sprungbefehle zu adressieren. In diesem Fall benötigt jeder Sprungbefehl 3 Byte. In diesem Fal ist es möglich, 128 Byte/3 Byte = 42 Ereig­ nisse im Adreßwort unterzubringen. Es ist auch möglich, eine Mischung der Adressierung der Sprungverteiltabelle über die Unterbrechungssteuerung und unter Verwendung von Sprungbefehlen durchzuführen. In jedem Fall wird eine wesentliche Einsparung an Verarbeitungszeit er­ reicht, da die Adressen nicht mehr mit Hilfe des Betriebs­ systems, sondern mit Hilfe der Steuereinheit ST ermit­ telt werden.In the addressing scheme shown in Fig. 3, it is assumed that the program memory PS has a storage volume of 32 KB. If 256 different states are to be temporarily stored in the state register ZR , 8 binary characters are required for storing these states. 128 bytes are then available for each state. If the microcomputer is interrupt-controlled in a known manner, the associated interrupt control unit supplies addresses with an addressing interval of 4 bytes. When using such an interruption control unit, 128 bytes / 4 bytes = 32 events are possible with the assumed numerical values. Thus 5 binary characters of the address word supplied to the memory SP are required for the presentation of the events. It is also possible to address the memory content using jump commands. In this case, each jump instruction requires 3 bytes. In this case, it is possible to accommodate 128 bytes / 3 bytes = 42 events in the address word. It is also possible to mix the addressing of the jump distribution table via the interrupt control and using jump commands. In any case, a significant saving in processing time is achieved because the addresses are no longer determined with the help of the operating system, but with the help of the control unit ST .

Bei der Darstellung in Fig. 4 ist der Inhalt der Sprung­ verteiltabelle schematisch dargestellt. Wenn beispiels­ weise das Ereignis 1 auftritt, während sich der Mikro­ rechner im Zustand 1 befindet wird aus dem Speicher SP die Adresse PR 11 ausgelesen, um den entsprechenden Pro­ grammteil aufzurufen. In entsprechender Weise wird wäh­ rend desselben Zustands, wenn das Ereignis 2 auftritt die Adresse PR 12 abgegeben, um den zugehörigen Programm­ teil aufzurufen. Ähnliches gilt für das Auftreten des Ereignisses 3 während des Zustands 2. In diesem Fall wird die Adresse PR 23 ausgegeben.In the illustration in Fig. 4 the contents of the jump distribution table shown schematically. If, for example, event 1 occurs while the microcomputer is in state 1, the address PR 11 is read from the memory SP in order to call the corresponding program part. In a corresponding manner, the address PR 12 is emitted during the same state when the event 2 occurs in order to call the associated program part. The same applies to the occurrence of event 3 during state 2. In this case, address PR 23 is output.

Claims (4)

1. Schaltungsanordnung zum Adressieren von Programmteilen in einem Mikrorechner, bei dem ein Mikroprozessor, ein Programmspeicher und ein Arbeitsspeicher vorgesehen sind, die über einen Adreß­ bus und einen Datenbus miteinander verbunden sind, ge­ kennzeichnet durch eine Steuereinheit (ST) mit einem Zustandsregister (ZR), in dem ein den jeweili­ gen Zustand eines zuletzt bearbeiteten Programmteils darstel­ lendes Zustandswort zwischenspeicherbar ist und mit einer Sprungverteiltabelle (SP), an deren Eingängen ein einem be­ stimmten Ereignis zugeordnetes Adressenwort und das zwischenge­ speicherte Zustandswort anliegen und das an den Programmspei­ cher (PS) das den entsprechenden Programmteil adressierende Adressenwort abgibt. 1. Circuit arrangement for addressing program parts in a microcomputer, in which a microprocessor, a program memory and a working memory are provided, which are connected to one another via an address bus and a data bus, characterized by a control unit (ST) with a status register (ZR) , in which a status word representing the respective status of a program section last processed can be temporarily stored and with a jump distribution table (SP) , at the inputs of which an address word assigned to a specific event and the temporarily stored status word are present and which are sent to the program memory (PS) emits the address word addressing the corresponding program part. 2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Sprungverteiltabelle (SP) als Speicher ausgebildet ist, an dessen Adreßeingängen das dem Ereignis zugeordnete Adressenwort und das dem Zustand zugeordnete Zustands­ wort anliegen und der an seinem Ausgang das den entspre­ chenden Programmteil adressierende Adressenwort abgibt.2. Circuit arrangement according to claim 1, characterized in that the jump distribution table (SP) is designed as a memory, at whose address inputs the address word assigned to the event and the status word assigned to the state are present and which outputs the address word corresponding to the program part at its output . 3. Schaltungsanordnung nach Anspruch 2, dadurch gekennzeichnet, daß die Sprungverteilta­ belle (SP) als Festwertspeicher ausgebildet ist. 3. Circuit arrangement according to claim 2, characterized in that the Sprungverteilta belle (SP) is designed as a read-only memory. 4. Schaltungsanordnung nach einem der Ansprüche 1-3, bei der ein Mikroprozessor vorgesehen ist, der die nie­ derwertigen Binärzeichen der Adressen über den Daten- Bus und die höherwertigen Binärzeichen der Adressen über den Adreß-Bus abgibt, dadurch gekenn­ zeichnet, daß das Zustandsregister (ZR) ein­ gangsseitig mit dem Daten-Bus (DB) verbunden ist, daß die Sprungverteiltabelle eingangsseitig mit dem Adreß- Bus (AB) und mit dem Ausgang des Zustandsregisters (ZR) und ausgangsseitig mit dem Adresseneingang des Programm­ speichers (PS) verbunden ist.4. Circuit arrangement according to one of claims 1-3, in which a microprocessor is provided, the never derwertigen binary characters of the addresses on the data bus and the higher order binary characters of the addresses on the address bus, characterized in that the status register (ZR) is connected on the input side to the data bus (DB) , that the jump distribution table is connected on the input side to the address bus (AB) and to the output of the status register (ZR) and on the output side to the address input of the program memory (PS) .
DE19843416436 1984-05-04 1984-05-04 Circuit arrangement for addressing program sections in a microcomputer Granted DE3416436A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19843416436 DE3416436A1 (en) 1984-05-04 1984-05-04 Circuit arrangement for addressing program sections in a microcomputer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19843416436 DE3416436A1 (en) 1984-05-04 1984-05-04 Circuit arrangement for addressing program sections in a microcomputer

Publications (2)

Publication Number Publication Date
DE3416436A1 DE3416436A1 (en) 1985-11-07
DE3416436C2 true DE3416436C2 (en) 1988-08-04

Family

ID=6234911

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19843416436 Granted DE3416436A1 (en) 1984-05-04 1984-05-04 Circuit arrangement for addressing program sections in a microcomputer

Country Status (1)

Country Link
DE (1) DE3416436A1 (en)

Also Published As

Publication number Publication date
DE3416436A1 (en) 1985-11-07

Similar Documents

Publication Publication Date Title
DE2318069C2 (en) Micro-programmed computer system with expansion of control functions by means of a hard-wired logic matrix
DE2411963A1 (en) DATA PROCESSING SYSTEM
DE4215063A1 (en) Page changing system for non-volatile flash memory - contains programmable page register for page selection and address signal reception and modification devices
DE3732808A1 (en) METHOD AND DEVICE FOR GENERATING AND EDITING INTERRUPT POINTS IN A MONITOR PROGRAM
DE2302074A1 (en) MEMORY PROTECTION ARRANGEMENT IN A MULTIPROCESSOR SYSTEM
DE1275800B (en) Control unit for data processing machines
EP0010185A1 (en) Virtual-addressing device for a computer
DE3116385C2 (en) Microprogram control
DE2134816A1 (en) FACILITY FOR ADDRESS TRANSLATION
DE2846054A1 (en) METHOD AND CIRCUIT ARRANGEMENT FOR EXTENDING THE ADDRESSING VOLUME OF A CENTRAL UNIT, IN PARTICULAR A MICROPROCESSOR
DE3323824A1 (en) PROGRAMMABLE CONTROL
DE3416436C2 (en)
DE1799012B1 (en) Register device for facilitating the change of partial programs and partial program sections in an electronic computer
DE3101270C2 (en) Computer arrangement for word processing with a device for expanding functions
DE2343501B2 (en) Control circuit for at least one computer system with several registers intended for the implementation of EuWAusgabe programs
DE3009121C2 (en) Microprogram controller
DE2719199A1 (en) DATA PROCESSING SYSTEM
DE10107102B4 (en) Method and arrangement for instruction word generation in the control of functional units in a processor
DE2642251A1 (en) Control device for computer controlled-machine tool - has number of program blocks with registers in which all data are recorded in case of interruption
EP0170876A2 (en) Circuit for controlling the bidirectional data transmission between a computer and transmission lines connected via input/output units
DE3016952C2 (en) Circuit arrangement for expanding the address range of a computer-controlled switching system
DE2528164A1 (en) ADDRESSING ARRANGEMENT FOR A DATA PROCESSING SYSTEM WITH PROGRAM MEMORY
DE3427026C2 (en)
DE2122659A1 (en)
DE3829514A1 (en) Data processing device

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee