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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/322—Address 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)
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) |
-
1984
- 1984-05-04 DE DE19843416436 patent/DE3416436A1/en active Granted
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 |