DE2251876B2 - ELECTRONIC DATA PROCESSING SYSTEM - Google Patents
ELECTRONIC DATA PROCESSING SYSTEMInfo
- Publication number
- DE2251876B2 DE2251876B2 DE19722251876 DE2251876A DE2251876B2 DE 2251876 B2 DE2251876 B2 DE 2251876B2 DE 19722251876 DE19722251876 DE 19722251876 DE 2251876 A DE2251876 A DE 2251876A DE 2251876 B2 DE2251876 B2 DE 2251876B2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- external data
- instruction
- register
- level
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
- G06F13/26—Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
- G06F9/462—Saving or restoring of program or task context with multiple register sets
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4818—Priority circuits therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Bus Control (AREA)
Description
Die Erfindung betrifft eine elektronische Datenverarbeitungsanlage mit extern angeschlossenen Datenquellen nach dem OberbegriiT des Anspruchs 1.The invention relates to an electronic data processing system with externally connected data sources according to the preamble of claim 1.
Die digitale Datenverarbeitungstechnologie hat sich so entwickelt, daß relativ ökonomische und schnelle Datenverarbeitungsschritte mit einem hohen Grad der Flexibilität durchgeführt werden können. Bei den meisten Datenverarbeitungssystemen können die Ein-/Ausgabegeräte, die dem Prozessor zugeordnet sind, für einen Datenaustausch verwendet werden, der eine Pufferung, Warteschlangenbildung und andere Techniken zuläßt, da von solchen Geräten im allgemeinen schnelle Reaktionen nicht gefordert werden. Die Datenaquisition und Prozeßsteuerung erfordert jedoch in typischer Weise sehr schnelle Reaktionen und die Zugrundelegung von Steuerfunktionen der zentralen Verarbeitungseinheit, so daß solche Aufgaben in bestimmten Anwendungsfällen berücksichtigt werden können. So betrifft beispielsweise die rechnergesteuerte Prozeßsteuerung im allgemeinen die Aquisition von analogen und digitalen Daten von einem industriellen oder ähnlichen Prozeß, die Errechnung der Steuerkorrekturen, um das einwandfreie Funktionieren des Prozesses sicherzustellen und die Anwendung geeigneter Steuersignale auf die Steuerelemente des Prozesses auf eineDigital computing technology has evolved to be relatively economical and fast data processing steps can be carried out with a high degree of flexibility. Most data processing systems can use the input / output devices associated with the processor are used for data exchange involving buffering, queuing and allows other techniques, since such devices generally do not require rapid reactions will. However, data acquisition and process control typically require very fast Responses and the assumption of control functions of the central processing unit, so that such tasks can be taken into account in certain applications. For example, concerns the computer-controlled process control in general the acquisition of analog and digital Data from an industrial or similar process, the calculation of the tax corrections to the ensure proper functioning of the process and the application of suitable control signals on the controls of the process on a
ίο schnelle und zeitgerechte Weise. Um hierbei effektiv zu sein, muß die Aquisition, die Errechnung und Steuerfunktionserzeugung im Realzeitbetneb gerührt werden. Das heißt, die Verzögerung zwischen der Datenaquisition von einer Vielzahl von Quellen und die Steuerung der Funktionen oder Prozesse, die beteiligt sind, muß so sein, daß die Effektivität der Steuerung nicht verlorengeht. Für viele Anwendungen bedeutet dies, daß die Verzögerung nur einen Bruchteil einer Sekunde betragen, darf, obwohl andere Anwendungen, die von dem gleichen System behandelt werden können, Verzögerungen von Stunden zulassen. Die Zeit zwischen einem »Stimulus«, beispielsweise von analogen oder digitalen Quellen und der Reaktion oder Antwort des Systems, wird häufig als Unterbrechungsantwortzeit bezeichnet, und sie ist die wichtigste Größe bei Realzeit-Rechnersystemen. Die Erfahrung hat gezeigt, daß solche Stimuli, die die kürzesten Unterbrechungsantwortzeiten in einem System erfordern, häufig durch eine kurze einfache Codierung charakterisiert sind, die eine Verwendung von konventionellen Ein-/Ausgabehilfsquellen (Resourcen) nicht erfordern und oft auch nicht zulassen.ίο quick and timely manner. To do this effectively to be, the acquisition, the calculation and the generation of control functions must be stirred in real-time operation will. That is, the delay between data acquisition from a variety of sources and controlling the functions or processes that are involved must be such that the effectiveness of the control is not lost. For many uses this means that the delay may only be a fraction of a second, although others Applications that can be handled by the same system have delays of hours allow. The time between a “stimulus”, for example from analog or digital sources and the response or response of the system, is often referred to as the interrupt response time, and it is the most important variable in real-time computer systems. Experience has shown that such Stimuli that require the shortest interrupt response times in a system, often by a short simple coding are characterized by a use of conventional input / output auxiliary sources (Resources) do not require and often do not allow.
Die bekannten Systeme für Datenaquisition und Prozeßsteuerung haben immer zwischen der Antwortzeit unterschieden, die von einem Komplex von Ein-./Ausgabegeräten benötigt wird, indem Unterbrechungsprioritätsstufen für diese Geräte vorgesehen werden. Daher kann eine Unterbrechung, die von einem Ein-/Ausgabegerät einer niedrigen Priorität ausgeht, von einem steuernden Prozessor bearbeitet werden, diese Bearbeitung kann aber selbst wieder von einer Unterbrechung unterbrochen werden, die von einem höheren Prioritätsrang herrührt, der später für ein anderes Ein-/Ausgabegerät auftritt. Hierfür benutzen die bekannten Datenverarbeitungssysteme feste Prioritätsstufenanordnungen für jedes Ein-/Ausgabegerät, so daß dieses stets um die Aufmerksamkeit des Prozessors in dieser Stufe kämpfte, was dazu führte, daß für eine Veränderung seines Prioritätsrangs eine Neuverdrahtung des Gerätes erforderlich wurde. Selbst dann, wenn eine Unterbrechung auftrat mit einer höheren Stufenpriorität, erforderten die bekannten Prozessoren eine Folge von speziellen Bedingungsroutinen für den Zweck, Daten, die dem Status des unterbrochenen Prozesses entsprachen, in den Speicher einzugeben, so daß diese später wieder aufgesucht und in die Sieuerschaltungen des Prozessors geladen werden konnten, nachdem die Unterbrechung mit der höheren Prioritätsstufe befriedigt wurde. Ein solches Verfahren erforderte ein Inkaufnehmen von Verzögerungszeiten, die durch diese Speicherprozedur verursacht wurden, wobei auch zusätzliche Verzögerungen noch hinzukamen, die davon herrührten, daß die gespeicherten Daten zu einer späteren Zeit erst wieder aufgesucht werden mußten. Zusätzliche Verzögerungen werden von den bekannten Systemen ferner nochThe known systems for data acquisition and process control always have between the response time differentiated, which is required by a complex of input / output devices, by setting interrupt priority levels for these devices. Therefore, an interruption from an input / output device of low priority may occur is processed by a controlling processor, but this processing can itself again interrupted by an interruption resulting from a higher priority rank, the later occurs for another input / output device. For this purpose, the known data processing systems use fixed priority level arrangements for each Input / output device, so that it always fought for the attention of the processor at this stage, which resulted in the need to rewire the device to change its priority level became. Even if an interruption occurred with a higher level priority, the known processors required a sequence of special condition routines for the purpose To input data corresponding to the status of the interrupted process into memory so that these could be visited again later and loaded into the control circuits of the processor, after the interruption has been satisfied with the higher priority level. Such a procedure made it necessary to accept the delay times caused by this storage procedure were added, with additional delays resulting from the stored Data had to be looked up again at a later time. Additional delays are also used by the known systems
gefordert, um die Unterbrechungsquelle zu identifizieren und um den Status identifizierende Signale zu gewinnen, bevor mit der Bedienung der Anforderung fortgefahren wird. Darüber hinaus wurde auch die Wiederaufnahme des unterbrochenen Programms durch Programmfehler oftmals gestört. Weiterhin erforderte der Prozessor Einrichtungen für die Bestimmung der geeigneten Dienst-Subroutine, bevor die Unterbrechung behandelt werden konnte.required to identify the source of the interruption and to gain status identifying signals before servicing the request is continued. In addition, the interrupted program was also resumed often disturbed by program errors. The processor also required facilities for the determination the appropriate service subroutine before the interrupt could be handled.
Viele Voraussetzungen für die Datenaquisition und/oder Prozeßsteuerung befassen sich mit dem Datenaustausch und mit Steuerfunktionen, die in ihren Anforderungen bezüglich der Zeitgerechtheit der Systemantwort von Zeit zu Zeit variieren. Beispielsweise können einige Anwendungen relativ langsame Antworten für einen bestimmten Datenaustausch oder eine bestimmte Steuerfunktion über relativ lange Zeitperioden zulassen, für andere Zeitzuwachse fordern sie jedoch im wesentlichen augenblickliche Antworten und Steuerungen. aoMany requirements for data acquisition and / or process control deal with the Data exchange and with control functions that meet their requirements in terms of timeliness the system response will vary from time to time. For example, some applications can be relatively slow responses for a specific data exchange or a specific control function allow relatively long time periods, but for other time increments they require essentially instantaneous ones Answers and controls. ao
Das Problem der Auswahl eines mit höchster Dringlichkeit ausgestalteten Programms, das andere Programme oder Programmteile zu seinen Gunsten zu unterbrechen gestattet, ist an sich ebenfalls bekannt und wird beispielsweise in der DT-AS »5 14 99 200 beschrieben. Die hier vorgeschlagene Lösung macht von Programmsteuerwörtern Gebrauch, die bereitstehende Programme oder Unterprogramme und auch bereits unterbrochene Programme oder Unterprogramme beschreiben. Zur Steuerung der vorranggesteuerten Programmunterbrechung ist eine Steuerschaltung vorgesehen, die zur an sich bekannten Einleitung je eines Unterprogramms unterschiedlicher Priorität Steuervorrichtungen erregt, die in bekannter Weise je einem Unterprogramm zugeordnet sind. Sie ergänzen ferner bei Erregung das aktive Programmstatuswort und speichern es in dem dem betreffenden Unterprogramm zugeordneten inaktiven Programmstatus-Wortregister und übertragen ferner das diesem Unterprogramm zugeordnete Programmstatuswort in das aktive Programmstatus-Wortregister. The problem of choosing a program designed with the highest urgency is the other Allowing programs or parts of programs to be interrupted in their favor is also known per se and is described in DT-AS »5 14 99 200, for example. The solution suggested here makes use of program control words, which are available programs or subroutines and also describe programs or subroutines that have already been interrupted. To control the Priority-controlled program interruption, a control circuit is provided which is known per se Initiation of a subroutine of different priority each energizes control devices that are in are each assigned to a subroutine in a known manner. They also complement the active when aroused Program status word and store it in the inactive assigned to the relevant sub-program Program status word register and also transmit the program status word assigned to this subroutine into the active program status word register.
Die vorstehend genannten Verfahren und Anordnungen sind aber für die Realzeitverarbeitung bei der Datenaquisition und Prozeßsteuerung zu langsam.However, the above-mentioned methods and arrangements are for real-time processing in the Data acquisition and process control too slow.
Es ist daher die Aufgabe der Erfindung, eine elektronische Datenverarbeitungsanlage, die sich auch auf die Datenverarbeitung im Realzeitbetrieb erstreckt, anzugeben, bei der die Realzeitantworten wesentlich schneller erzeugt werden. Außerdem sollen die Prozessoren, Ein-/Ausgabegeräte und/oder der Schnittstellenbetrieb zwischen diesen genannten Einheiten für die Datenaquisition und Prozeßsteuerung bezüglich ihrer gewählten Konfiguration auf relativ rasche Reaktionen des Systems Rücksicht nehmen können. Deshalb soll eine virtuelle Prozessororganisation angegeben werden, die insbesondere für die genannten Aufgaben der Datenaquisition und Prozeßstemerung besonders geeignet ist. In dieser Aufgabe ist auch die Teilaufgabe enthalten, Möglichkeiten vorzusehen, die eine flexible Prioritätszuteilung ermöglichen. It is therefore the object of the invention to provide an electronic data processing system that is also extends to the data processing in real-time operation, specify in which the real-time responses can be generated much faster. In addition, the processors, input / output devices and / or the interface operation between these named units for data acquisition and process control take into account the system's relatively quick reactions with regard to their selected configuration can take. Therefore, a virtual processor organization should be specified, which in particular is particularly suitable for the named tasks of data acquisition and process control. In this The task also includes the subtask of providing options that enable flexible priority allocation.
Gelöst werden diese Aufgaben durch die im kennzeichnenden Teil des Anspruchs 1 angegebenen Merkmale.These tasks are achieved by those specified in the characterizing part of claim 1 Characteristics.
Die Unteransprüche beziehen sich auf vorteilhafte Ausgestaltungen und Weiterbildungen des Gegenstands der Erfindung.The subclaims relate to advantageous configurations and developments of the subject matter the invention.
Die Vorteile der Erfindung liegen nun darin, daß dem Datenverarbeitungssystem die nachstehenden, insbesondere für die Durchführung von Datenaquisitions- und Prozeßs»eueraufgaben günstigen Eigenschaften gegeben wurden. Diese Eigenschaften und somit die Vorteile der Erfindung ergeben sich daraus, daß der Prozessor mehrere Steuerkomponenten besitzt, die so organisiert sind, daß verschiedene Aufgaben auf der Basis von Prioritätsunterbrechungsstufen mit einem Minimum an Zeitverlust durch die Umschaltung zwischen diesen Stufen durchgeführt werden können.The advantages of the invention are that the data processing system has the following, particularly favorable for the implementation of data acquisition and process tasks Properties were given. These properties and thus the advantages of the invention result from the fact that the processor has several control components which are organized so that different Tasks based on priority interruption levels with a minimum of wasted time by the Switching between these stages can be carried out.
Zu den Vorteilen zählt ferner die Tatsache, daß Ein-/Ausgabemodule vorgesehen sind, die dynamisch zuteilbare Unterbrechungsprioritätsstufen aufweisen. Sie sind ferner in der Lage, Adresseninformation dynamisch zu speichern, die den in einem Steuerprozessor gespeicherten Dienstsubroutinen zugeordnet sind. Ferner können die Ein-/Ausgabemodul» von dem Hauptverarbeitungssystem individuell maskiert werden.The advantages also include the fact that input / output modules are provided that are dynamic have assignable interrupt priority levels. You are also able to get address information dynamically store associated with the service subroutines stored in a control processor are. Furthermore, the input / output modules can be masked individually by the main processing system will.
Außerdem können die Ein-/Ausgabemodule ihren eigenen Zustand überwachen und ein Signal an einen Steuerprozessor übertragen, das angibt, ob eine Veränderung des Zustandes erforderlich ist oder nicht.In addition, the input / output modules can monitor their own status and send a signal to a Control processor transmitted, which indicates whether a change in the state is required or not.
Ein weiterer Vorteil der Erfindung besteht darin, daß Realzeitreaktionen des Systems auf dynamisch extern veränderbare Anforderungen eingestellt werden können, während wesentliche zusätzliche Programmverarbeitung im Steuerprozessor durchgeführt wird.Another advantage of the invention is that real-time responses of the system to dynamic externally changeable requirements can be set while substantial additional program processing is carried out is carried out in the control processor.
Schließlich kann mit Hilfe der Erfindung ein polymorphes Datenverarbeitungssystem aufgebaut werden, das in der Lage ist, sich auf variierende Ein-/ Ausgangsanforderungen auf dynamischer Basis einzustellen. Finally, with the help of the invention, a polymorphic Data processing system that is able to respond to varying inputs / Adjust output requirements on a dynamic basis.
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und werden anschließend näher beschrieben. Es zeigtEmbodiments of the invention are shown in the drawings and will be described below described in more detail. It shows
F i g. 1 in einem Systemblockdiagramm die allgemeine Umgebung verschiedener Systemkomponenten und anderer Prozessoren, zu denen die vorliegende Erfindung in Beziehung steht,F i g. 1 is a system block diagram showing the general Environment of various system components and other processors to which the present Invention is related,
Fig. 2 die Beziehung einiger Merkmale der vorliegenden Erfindung insbesondere zur Zuordnung, Behandlung und Einheitenmaskierung von Unterbrechungsbedienungsanforderungen unter Benutzung von Prioritätszuordnungen,Figure 2 shows the relationship of some features of the present Invention particularly for the assignment, handling and unit masking of interrupt service requests using priority assignments,
Fig. 3 einige der auf Prioritätsebene bezogenen Multiprozessor-Steuerkomponenten, die einem Prozessor nach dem Erfindungsgedanken gestatten, als virtuelle Maschine zu arbeiten,Fig. 3 some of those related to the priority level Multiprocessor control components that allow a processor according to the inventive concept, as virtual machine to work,
F i g. 4 das allgemeine Format einiger Instruktionen. F i g. 4 the general format of some instructions.
F i g. 5 eine typische Anordnung eines Teiles des Prozessorspeichers, der zur Wiedergewinnung von Unterroutinen adressiert werden kann, um Bedienungsansprachen auf verschiedene, von einer Unterbrechung stammende Steuersignale zu liefern.F i g. Fig. 5 shows a typical arrangement of a portion of the processor memory used for the recovery of Subroutines can be addressed to operator calls on different ones, from an interrupt to deliver originating control signals.
Fig. 6 einige wichtige Komponenten für die Schnittstellenschaltungen zwischen einem Prozessor, einer direkten Kanalsteuerung und einigen an den Kanal angeschlossenen Ε/Λ-Geräten,6 shows some important components for the interface circuits between a processor, a direct channel control and some Ε / Λ devices connected to the channel,
F i g. 7 einige Komponenten in einem typischen E/A-Gerät und deren gegenseitige Beziehung zu der in F i g. 6 gezeigten Schnittstellen-Multiplexschaltung undF i g. 7 shows some of the components in a typical I / O device and how they relate to that of FIG. 6 interface multiplexing circuit and
F i g. 8 eine Anordnung einer weiteren, in Ver-F i g. 8 an arrangement of a further, in
bM„„e mU der verwenden ErSndung bM "" em U of the use of the invention
Instruktion.Instruction.
Genaue Beschreibung der AusführungsbeispieleDetailed description of the exemplary embodiments
I — Einführung Die in dem ^führungsbe^^eben.I - Introduction The in the ^ leadership ^^ even.
Geräte und der Pr°zessV ^ "Ed teuerunß Anwendungen der Datenerf« Jnf ^"fDevices and the Pr ° ^ V process "Ed teuerunß applications Datenerf" J n f ^ "f
vorgesehen «»d ™.^*^™ "„Αβΐηα verwirklicht Zahlreiche ^™u^me«m jedoch auch in einem System vorteilnatt, wei Echtzeitverarbeitung fordertprovided «» d ™. ^ * ^ ™ "" Αβΐηα realizes numerous ^ ™ u ^ me «m but also in a system that requires real-time processing
routinen auszuführen und mit
die auslösenden VorßW*™
zwischen einem aus lose nden
auf erwarteten Antwort wid oft
Antwort-Unterbreuchun|zelt running routines and using
the triggering VorßW * ™
between one out of loosely
on expected answer wid often
Answer interrup u chun | ze lt
SäSStSat
dar- oder dar- or
x5 x 5
. ao . ao
von Unterbrechungspnonta
nach Wunsch des Programms ^^
oder dynamisch neu ^^^usgerS und
Prozessor ist mit Register« ^ bene so
sieht Bedingungen ^r jede Unterbrecnungsof interruption pnonta
as requested by the program ^^ or dynamically new ^^^ usgerS and processor is with register «^ level so sees conditions ^ r every interruption
vor, daß das Konzept ^"^"^^J bei Maschinenausrustung ν rw ™ w^™ Unterbrechung einen sehr sc^.n ^Sn, alsbefore that the concept ^ "^" ^^ J with machine equipment ν rw ™ w ^ ™ interruption a very sc ^. n ^ S n , as
ermöglicht. Die UmschaS|nXn^mS die Not-Teil der Untcrbrechung^handtang umgd>t_*e ^_ wendigkeit von Pf?grammrettimgs rungsoperattonen. Der Prozegor aer genables. The Umscha S | n X n ^ mS the emergency part of the interruption ^ handtang umgd> t_ * e ^ _ agility of Pf ?grammrettimgs rungsoperattonen. The process was aroused
Erfindung kann entweder als fern emes^unaDn gInvention can be either as a remote emes ^ anaDn g
g»£dÄg »£ d Ä
erfassung und -Steuer™8 "^ 'Jr^Sistungsvariablen Bereich der gesamten SystemieAcquisition and control ™ 8 "^ 'J r ^ Sistungsvariablen Area of the entire system
forderungen wichtig. F/^l-Geräten durchrequirements important. F / ^ l devices by
Der Prozessor ist von semen E/A traten einen anderweitig beschneben« Kanal gejrenm. Elemente der Kanalfunktjonen,die sich^a Unterbrechungssteuerung ^»ehen^erae^ ^p^ beschrieben. Der Kanri ^" Moduln an die be- ^ebaUt sTdttstelle angeschlossen werden können. Jed"? EM-Modul soll weiter in d" ^^ ^ ;u 64 Geräte zu umfassen Kan stufige Unterbrechungsverarbeitung, die bisher nur durch programmierung möglich war,The processor has entered a different channel from its I / O. Elements of the channel functions which are described as an interrupt controller. The Kanri ^ " modules can be connected to the built-in sTdttstelle. Jed"? EM module should continue to include 64 devices in d "^^ ^; u K a n stage interrupt processing , which was previously only possible through programming,
2. die extrem kurze Statusumscha'tzeit auf Grund der aut —n^ -fc-JB^ «2. the extremely short status changeover time due to the aut -n ^ -fc-JB ^ «
nung (mit Status) der Unterbrechungsquelle,information (with status) of the source of the interruption,
3. d· Wahl eines Instruktionssatzes, der in bezug auf schnelle, einfache, von der Unterbrechung veranlaßte Unterroutinen optimiert ist 3 . d · Choosing a set of instructions that is optimized for fast, simple, interrupt-induced subroutines
^ ^ zusammenfassende schnelle, offenendige^^ summary quick, open ended
.Behandlungsmöglichkeit, 5 Verbindungsmöglichkeit zu einem anderen Pro^ Beeinflussung von Prioritätsunter-. Treatment possibility, 5 connection possibility to another pro ^ influencing priority sub-
brichungen und Klassenunterbrechungen und ? die Vorsehung extrem deskriptiver, eindeutiger Statusbezeichnungen, die eine leichte Programmwiederholung bei Maschinen- und Programm-breaks and class breaks and ? the provision of extremely descriptive, unambiguous status designations that allow easy program repetition for machine and program
^LU höht werden und enthält eine Instruktionsadresse Das Operationsregister (OP) ist ebenfalls 16 Bits groß, wird jedoch vom Speicher geladen und enthält |as erste Wort aller Instruktionen. Das Speicherdatenreeister (SDR) kann 16 Bits und ein Pantätsbyte aufnehmen. Es wird vom Speicher, aer Datensammelleitung oder von Datenschaltern geladen. Es treibt wahlweise den direkten Steuerkanal <o DCC, den Speicher oder die Y-Sammelleitung. Das 'heradre'ßregister {SAR) ist 16 Bits groß wd ^ ^γ Datcnsammelleitung oder dem IAR geladen die ^^ Speicheradresse. ^ ^γ y.Sammelleitung leiten Operanden ^ LU and contains an instruction address. The operation register (OP) is also 16 bits in size, but is loaded from memory and contains | the first word of all instructions. The memory data register (SDR) can hold 16 bits and one pantätsbyte. It is loaded from the memory, the data bus or from data switches. It optionally drives the direct control channel <o DCC, the memory or the Y-collecting line. The ' heradre ' register {SAR) is 16 bits in size if the ^ ^ γ data bus or the IAR loaded the ^^ memory address. ^ ^ γ y . Collective lines for operands
^Lt/ ist eine 16 Bits große parallele Kombmationsschaltung für zwei Operanden. Ein Operand wird durch die /ILU-Sammelleitung, der andere durch das y.Register und/oder die Zwangsleitung angeliefert. g kann addierenj subtrahieren und die^ Lt / is a 16-bit parallel combination circuit for two operands. One operand is delivered through the / ILU collective line, the other through the yth register and / or the forced line. g can add j and subtract the
Operationen UND, ODER sowie XODER Sj wird außerdem zur AdreßberechnungOperations AND, OR and XOR Sj are also used to calculate the address
benutzt.used.
ArbeitsspeichergruppeMemory group
Um eine schnelle Zustandsumschaltung zu ermög- ^n ^ ^ pro und von Bedin- In order to enable fast status switching ^ n ^ ^ per and from condi-
rrrtemrrrtem
Gerät Dazu gehören der
kationssteueradapter /ICC/I,Device This includes the
cation control adapter / ICC / I,
adapter und zwei Intcrvallzeitgeber. _adapter and two interval timers. _
Sge neue Aspekte der erläuterten Datemerar l sindSge new aspects of the explained datemerar l are
rX^^P^u^st^ DTe Umschaltung zwischen Registerbanken zu, ^ der cntsprcchenden Stufe ,st eine auto- rX ^^ P ^ u ^ st ^ D Te switching between register banks to, ^ the cntsprcche nden stage, st an auto-
itihc Maschinenteilfunktion. Die zu einer be- ^^ gehörcnden Register werden nur be.i tihc machine part function. The registers belonging to one of these are only used .
609 512/25;609 512/25;
9 * 109 * 10
nutzt, wenn der Prozessor in dieser Stufe arbeitet. Überlaufanzeieer
Diese mehrstufige redundante Registerkonfigurationis used when the processor is working at this stage. Overflow indicator
This multi-level redundant register configuration
ist in F i g. 3 gezeigt. Die Stufen sind hier eine Sobald das Ergebnis einer Additions- oder SubHierarchie
aus für die Unterbrechungsbehandlung iraktionsoperation die Kapazität des Systems überzugeordneten
Prioritäten. In diesem Beispiel wird 5 schreitet, d. h. ein Ergebnis erzeugt, welches entweder
die Stufe 0 als höchste Stufe und die Stufe 3 als größer als 215—1 oder kleiner als — 215 ist, tritt eine
niedrigste angenommen. Überlaufbedingung ein. Der Prozessor erkennt eine
Die vier Akkumulatoren ACCO bis ACC3 Überlaufbedingung durch Beobachtung der Über-(F
i g. 3) sind für jeweils eine Stufe vorgesehen und träge in die und aus der werthohen Bitposition (Vorhaben
je 16 Bits. Außerdem sind vier //1Ä-Rück- io Zeichenposition). Wenn die Überträge nicht übereingriffregister
IARBO bis IARB 4 vorgesehen (1 pro stimmen, liegt eine Überlaufbedingung vor, sonsl
Stufe). Jedes hat 16 Bits. Ihre Funktion besteht in nicht. Es gibt vier Möglichkeiten:
der Unterstützung des IAR bei einem Stufe-zu-Stufe- , Kejn üb hindn und kdn üb hinaus
Übergang und dadurch wird die Notwendigkeit ver- (übertrage stimmen überein - kein Überlauf.)
mieden das IAR durch Programmierung zu retten. »5 2 übertrag hinein und übertrag hinaus. (über-Jedes
der Indexregister (XRl b.s *i?7) w,rd vier- trg st^men überejn _ kein 5berlauf) is in Fig. 3 shown. As soon as the result of an addition or sub-hierarchy from the capacity of the system for the interrupt handling operation, the levels are a priority. In this example 5 steps are taken, ie a result is generated which is either level 0 as the highest level and level 3 as greater than 2 15 -1 or less than - 2 15 , a lowest occurs. Overflow condition on. The processor recognizes that the four accumulators ACCO to ACC3 overflow condition by observing the overflow (Fig. 3) are each provided for one level and sluggish into and out of the high-value bit position (project 16 bits each. In addition, four // 1Ä -Back- io character position). If the transfers are not intended for overlapping registers IARBO to IARB 4 (1 per vote, there is an overflow condition, sonsl level). Each has 16 bits. Their function is not. There are four options:
the support of the IAR in a stage-to-stage, Kejn über hindn and kdn über transition and this eliminates the need to save the IAR through programming. » 5 2 carry in and carry out. (over-each of the index registers (XRl bs * i? 7) w, rd four- trg st ^ men überjn _ no 5 overflow)
Tr i?rT H P ti hlreP m" 3· Übertrag hinein' aber kei» Übertrag hinaus.Tr i? RT HP ti hl reP m " 3 · Carry in ' but no carry out.
faßt 16 Bits und em Pantatsbyte (Überträge stimmen nicht überein - überlauf.)contains 16 bits and a pantat byte (transfers do not match - overflow.)
Wie in Fig. 3 zu sehen ist, wird die Arbeits- 4 Übertrag aus, aber kein übertrag ein. (übcnräee
Speichergruppe (Indexregister) von der Datensamme 1- *o stimmeif nich't überem _ überla 8 uf.)
leitung geladen und ihr Inhalt in die Y-Sammel- '
leitung geleitet. Paritätsprüfung ist in der Gruppe Der Überlauf anzeiger wird nur zurückgestellt, wenn
vorgesehen. er entweder von dei bedingten Sprung- oder der beHauptspeicher dingten Verzweigungsinstruklion geprüft und dasAs can be seen in Fig. 3, the working 4 is carried out, but no carry is on. (Over storage group (index register) of the data collection 1- * o agree not over _ overflow 8 uf .)
line loaded and its contents in the Y-collective- '
headed. Parity check is in the group. The overflow indicator is only reset if provided. he either checked by the conditional jump or the conditional branch instruction and that
35 Überlaufrettungszeichen (Bit 8) gleich Null ist und35 overflow escape character (bit 8) is zero and
Der verwendete Speicher ist vorzugsweise ein das Bit 15 in der Bedingungsmaske gleich Eins,The memory used is preferably a bit 15 in the condition mask is equal to one,
monolithischer Speicher und in Schritten von Übertrag und Überlauf enthalten den Bedingungs-monolithic memory and in steps of carry and overflow contain the condition
2 K Wörtern mal 18 Bits mit Paritätsbyte bis zu code, der einer P/O-Instruktion folgt. Übertrag "ist2 K words by 18 bits with parity byte up to code that follows a P / O instruction. Carry over "is
einem Maximum von 16 K Wörtern organisiert. Der das Bit 0 des Bedingungscodes und Überlauf dasorganized a maximum of 16K words. Bit 0 of the condition code and overflow
monolithische Speicher paßt zum Magnetspeicher 30 Bit 1. Mit dem Übertrae wird auch das summarischemonolithic memory matches magnetic memory 30 bit 1. With the transfer, the summary also becomes
und ist leistungsflüchtig. Die bipolare monolithische Statusbit (S-Bit) bei Unterbrechungen festgehalten.and is volatile. The bipolar monolithic status bit (S-bit) is held in the event of interruptions.
Speichereinheit paßt auch zu den logischen Signalen Weiterhin sind noch Null-, Gleich-, Plus- undMemory unit also matches the logical signals. There are also zero, equal, plus and
des Prozessors. Die Gruppenmoduln und Unterstüt- Minus-Anzeiger vorhanden. Diese Anzeiger werdenof the processor. The group modules and support minus indicators are available. These scoreboards will be
zungsmoduln befinden sich auf der Speicherkarte, ebenfalls als^Ergebnis einer logischen oder Rechen-modules are located on the memory card, also as ^ the result of a logical or arithmetic
die 2048 Wörter mal 2 Bits enthält. Zugriffs- und 35 operation gesetzt.
Zykluszeit, gemessen an der Speicherkarte, betragenwhich contains 2048 words by 2 bits. Access and operation set.
Cycle time, measured on the memory card
125 Nanosekunden bzw. 400 Nanosekunden. Das IV—Zahlendarstellung
Speichermodul umfaßt 4 Chips oder 512 Bits und ist Alle Operanden werden als ganze Zahlen mit Vorein
gestapeltes Modul mit zwei Substraten, die je zeichen behandelt, wobei das Vorzeichenbit als das
zwei Chips tragen. 40 äußerste linke Bit betrachtet wird. Positive Zahlen ΙΠ — Rechenanzeieer werden in echter binärer Notierung dargestellt, wobei
Übertragsanzeiger das y°™ichenbit auf 0 gesetzt ist. Negative Zahlen125 nanoseconds or 400 nanoseconds. The IV — number representation
The memory module comprises 4 chips or 512 bits and is All operands are preceded by integers. A stacked module with two substrates that each handle characters, with the sign bit as the two chips. 40 leftmost bit is considered. Positive numbers ΙΠ - arithmetic indicators are shown in real binary notation, with the y ° ™ ichenbit being set to 0 for the carry indicator. Negative numbers
werden in ihrem Zweierkomplement dargestellt, undare shown in their two's complement, and
Der Übertragsanzeiger wird gesetzt, wenn eine das Vorzeichenbit wird auf 1 gesetzt. Das Zweier-Operation ein Ergebnis erzeugt hat, welches die 45 komplement einer Zahl erhält man durch Umkehrung physikalische Kapazität des Akkumulators über- eines jeden Bits der Zahl und Addition einer 1 in dei steigt. Der Übertragsanzeiger wird durch folgende wertniedersten Bitposition.The carry indicator is set when the sign bit is set to 1. The two-way operation has produced a result which is the complement of 45 of a number is obtained by reversing it physical capacity of the accumulator over each bit of the number and adding a 1 in dei increases. The carry-over indicator has the following lowest-value bit position.
drei Bedingungen gesetzt: Diese Art der Zahlendarstellung kann als der wertniedere Teil einer unbegrenzt langen Darstellung dei Three conditions are set: This type of number representation can be used as the lower-value part of an unlimited length of representation
1. bei einer nicht zirkulären Linksschiebeoperation, 50 Zahl betrachtet werden. Wenn die Zahl positiv ist wenn das letzte aus der Vorzeichenposition 0 sind alle Bits links vom höchsten Bit darstellender ausgehobene Bit ein Einerbit war; Bit der Zahl einschließlich des Vorzeichenbits Null1. For a non-circular left shift operation, 50 number should be considered. When the number is positive if the last of the sign position is 0, all bits to the left of the highest bit are representative excavated bit was a one bit; Bit of the number including the sign bit zero
2. bei einer Recheninstruktion, wenn ein Übertrag Wenn ein Operand daher mit werthohen Bits erweiaus dem Bit 0 (Vorzeichenbit) erfolgt. Das kann tert werden muß, erhält man diese Erweiterung durcl ungeachtet e'er Polarität der betroffenen Operan- 55 Vorsetzen eines Feldes, in welchem jedes Bit so geden erfolgen. Wenn eine große negative Zahl zu setzt wird, wie das werthohe Bit des Operanden steht einer kleineren positiven Zahl od. dgl. addiert Die Notierung im Zweierkomplement schließt nich wird, wird eine größere Zahl von einer kleineren die negative Null ein. Die höchste positive Zahl be Zahl subtrahiert, und der Übertragsanzeiger teilt steht aus einem ganzzahligen Feld aus lauter Einser dem Programm die Polarität des Ergebnisses 60 mit einem Vorzeichenbit 0, wogegen die größte negamit. Sobald kein Übertrag stattfindet, ist das tive Zahl aus einem ganzzahligen Feld mit laute) Ergebnis negativ und sollte erneut komplemen- Nullen mit einem Einerbit in der Vorzeichenbitposi tiert werden; tion besteht.2. In the case of an arithmetic instruction, if a carry If an operand is therefore made with high-value bits from bit 0 (sign bit). This can be done if this extension is obtained regardless of the polarity of the operand concerned. If a large negative number is added, as the significant bit of the operand stands for a smaller positive number or the like added. The highest positive number is subtracted from the number, and the carry indicator divides the polarity of the result 60 with a sign bit 0, while the largest is negative, is available to the program from an integer field made up of all ones. As soon as no carry takes place, the tive number from an integer field with loud) result is negative and should be positioned again with complementary zeros with a one bit in the sign bit; tion exists.
3. bei einer Subtraktionsoperation, wenn ein Bor- ., T 3. in a subtraction operation when a boron., T
gen über BitO hinaus auftritt. Vor jeder Addi- 65 V—Instruktionskiassengen occurs beyond BitO. Before each Addi- 65 V instruction class
tion, Subtraktion und nicht zirkulären Links- Der in einem Prozessor nach dem Ausführungstion, subtraction and non-circular links- der in a processor after execution
Schiebeoperation werden die Ubertragungsanzei- beispiel benutzte Instruktionssatz liefert bei minimaShift operation, the instruction set used for transmission display provides at minima
ger automatisch zurückgestellt. len Kosten ausreichende Fähigkeiten zur Ausfuhrunjger automatically reset. len costs sufficient skills to exportunj
einfacher Rechen- und logischer Funktionen und zur Steuerung der Einheiten und ihrer Schnittstellen mit einem anderen Prozessorsystem. Der Instruktionssalz ist in Klassen eingeteilt. Allgemein geben die Klassen die Art der auszuführenden Operation an.simple arithmetic and logic functions and for controlling the units and their interfaces with another processor system. The instruction salt is divided into classes. Generally give the classes the type of operation to be performed.
Laden und Speichern — Diese Instruktionen übertragen Operanden zwischen dem Hauptspeicher und dem Prozessor. Sie sind: Laden und Null, Laden Akkumulator, Speichern Akkumulator, Direkt Laden, Index Speichern und Langen Index Laden.Load and Save - These instructions transfer operands between main memory and the processor. They are: Load and Zero, Load Accumulator, Save Accumulator, Direct Load, Save index and load long index.
Arithmetik -— Diese Instruktion führen arithmetische Operationen zwischen Operandenhauptspeicher und/oder im Prozessor durch. Sie sind: Addition, Komplementregister, Addition Register und Subtraktion Register.Arithmetic - These instructions perform arithmetic Operations between operand main memory and / or in the processor. They are: addition, Complement registers, addition registers and subtraction registers.
Logisch — Diese Instruktionen führen logische Operationen zwischen Operanden im Hauptspeicher und/oder im Prozessor durch. Sie sind: Logisch UND, Logisch Antivalent, Logisch ODER, UND-Register, Antivalent-Register und ODER-Register.Logical - These instructions perform logical operations between operands in main memory and / or in the processor. They are: logical AND, logical complementary, logical OR, AND register, Antivalent register and OR register.
Verschiebung—Diese Instruktionen führen Linksoder Rechtsverschiebung eines Indexregisters oder des Akkumulators durch. Sie s:nd: Linksverschiebung Logisch, Rechtsverschiebung Logisch, Rechtsverschiebung Arithmetisch und Linksverschiebung Umlauf. Shift — These instructions shift an index register or the accumulator left or right. Sie s : nd: Left shift Logical, Right shift Logical, Right shift Arithmetic and Left shift Circulation.
Verzweigung — Hierzu gehören Addition zum Speicher und Sprung, bedingter Sprung, Verzweigung und Verknüpfung, bedingte Verzweigung, Verzweigung um' Verzweigung und lange Verknüpfung.Branch - This includes addition to memory and jump, conditional jump, branch and link, conditional branch, branch around 'branch and long link.
Eingabe/Ausgabe — Die Instruktion steuert das Setzen von Unterbrechungen und die Kommunikation mit E/A-Einheiten. Sie lautet: Eingabe/Ausgabe Ausführen.Input / Output - The instruction controls the setting of interrupts and communication with I / O units. It reads: Execute input / output.
Registe.-zu-Register — Diese Instruktionen bewegen
Daten zwischen den Steuerregistern, den Indexregistern, dem IAR und dem Akkumulator. Sie sind:
Laden vom Register, Speichern in Register, Abfrage Stufe und Maske, Inspektion IAR Rückgriff register,
Laden Prozessorstatus, Austauschregister, UND nach Maske sowie ODER nach Maske.
Zustandssteuerung — Diese Instruktionen ändern den Zustand des Prozessors. Sie sind: Stufe Ausgang und
Stopp.Register-to-Register - These instructions move data between the control registers, index registers, IAR and accumulator. They are: loading from register, saving in register, query level and mask, inspection IAR access register, loading processor status, exchange register, AND according to mask and OR according to mask.
State Control - These instructions change the state of the processor. They are: Exit and Stop stage.
VI — InstruktionsformatVI - instruction format
Zwei Instruktionsformate sind vorgesehen. Das Kurzinstruktionsformat ist 16 Bits lang nach Darstellung in Fig. 4A und das Langinstruktionsformat nach Darstellung in Fig. 4B 32 Bits lang. Jedes der beiden Formate ist in verschiedene Felder unterteilt, die die Operation und die Art ihrer Ausführung angeben. Obwohl die meisten Felder dieselbe Bedeutung von einer Instruktion zur nächsten haben, haben doch auch einige von ihnen besondere instruktionsabhängige Bedeutungen. Das OP-Codefeld ist 5 Bits lang und gibt die auszuführende Instruktionsoperation an. Das Ä-Feld ist 3 Bits lang und steuert die Benutzung von Index, Akkumulator und Instruktionsadreßrcgistem. Das Verschiebungsfeld DlSP ist S Bits lang und steuert die Instruktionsausführung und/oder Erzeugung der effektiven Adresse, abhängig von den Angaben im OP-Code und im Ä-Feld. Das Adreßfeld ist 16 Bits lang. Im Langinstruktionsformat wird es für die effektive Adreßerzeugung benutzt, mit Ausnahme der ΡΙΟ-Instruktion, wo es als Teil des E/A -Kommandos gebraucht wird. Die meisten Instruktionen beziehen sich auf eine Stelle im HauptSpeicher, die den Instruktionsoperanden enthält. Die Adresse dieser Stelle wird die effektive Adresse (EA) genannt. Zur Erzeugung der effektiven Adresse gibt es zwei Verfahren: eines für das Kurzinstruktionsformat und eines für das Langinstruktionsformat.Two instruction formats are provided. The short instruction format is 16 bits long as shown in Fig. 4A and the long instruction format is 32 bits long as shown in Fig. 4B. Each of the two formats is divided into different fields that indicate the operation and how it is performed. Although most fields have the same meaning from one instruction to the next, some of them also have special instruction-dependent meanings. The OP code field is 5 bits long and indicates the instruction operation to be carried out. The field is 3 bits long and controls the use of the index, accumulator and instruction address register. The displacement field DISP is S bits long and controls the execution of instructions and / or generation of the effective address, depending on the information in the OP code and in the field. The address field is 16 bits long. In the long instruction format it is used for effective address generation, with the exception of the ΡΙΟ instruction, where it is used as part of the I / O command. Most instructions refer to a location in main memory that contains the instruction operand. The address of this point is called the effective address (EA) . There are two methods of generating the effective address: one for the short instruction format and one for the long instruction format.
In dem in Fig. 4A gezeigten Kurzinstruktionsformat werden das Ä-Feld und das Verschiebungsfeld DlSP dazu benutzt, gemeinsam die effektive Adresse zu erzeugen. Das i?-Feld gibt das Instruktionsadreßregister (IAR), den Akkumulator (A) oder ein Indexregister (XR) an. Für die effektive Adreßerzeugung wird für einen der Operanden der Akkumulator jedoch nicht herangezogen.In the brief instruction format shown in FIG. 4A, the λ field and the displacement field DISP are used together to generate the effective address. The i? Field indicates the instruction address register (IAR), the accumulator (A) or an index register (XR) . However, the accumulator is not used for one of the operands for effective address generation.
R = 000 Instruktionsadreßregister oder Akkumulator R = 000 instruction address register or accumulator
R = 001 Indexregister 1
R = 010 Indexregister 2
R = 011 Indexregisters R = 001 index register 1
R = 010 index register 2
R = 011 index register
R = 100 Indexregister 4
R = 101 Indexregister 5
R = 110 Indexregister 6
R = 11 i Indexregister 7 R = 100 index register 4
R = 101 index register 5
R = 110 index register 6
R = 11 i index register 7
Die Verschiebung (DISP) ist eine 8 Bit große Zahl, deren werthohes Bit das Vorzeichenbit ist. Negative Verschiebungen stehen in Zweierkomplementform. Wenn sie zur Erzeugung einer effektiven Adresse benutzt werden, wird das Vorzeichenbit durch die werthohen Positionen fortgeschrieben. Die effektive Adresse wird folgendermaßen erzeugt:The displacement (DISP) is an 8-bit number, the high-order bit of which is the sign bit. Negative shifts are in two's complement form. If they are used to generate an effective address, the sign bit is updated through the high-value positions. The effective address is generated as follows:
EA = [IAR] + DISP für R = 000
EA = [XR] + DISP für R = 000 EA = [IAR] + DISP for R = 000
EA = [XR] + DISP for R = 000
(Ausgenommen kurze bedingte Verzweigung, wo die effektive Adresse der Inhalt des /?-Registers ist).(Except short conditional branch, where the effective address is the contents of the /? Register is).
Im langen Format ist die Verschiebung der Bits 8 bis 15 das direkte Feld. Bei allen langen Instruktioner ist auszunehmen Load Index Long (PLXL), EA = Adreßfeld.In the long format, the shift of bits 8-15 is the direct field. An exception to this for all long instructors is Load Index Long (PLXL), EA = address field.
VII — InstruktionsbeschreibungVII - instruction description
Akkumulator Laden — PL: Der Inhalt der durch die effektive Adresse angegebenen Hauptspeichersteile ersetzt den Inhalt des Akkumulators. Der Inhalt des Hauptspeichers bleibt unverändert. Über trags- und Überlaufanzeiger bleiben unverändert Abhängig von dem im Akkumulator gespeicherter Operanden werden mit dieser Instruktion die anderer Anzeiger verändert. Der neue Wert bleibt bestehet und kann geprüft werden, bis eine andere Instruktioi die Anzeige ändert. Wenn das Λ-Feld gleich 0 ist, is die effektive Adresse relativ zu IAR. Load accumulator - PL: The content of the main memory parts specified by the effective address replaces the content of the accumulator. The content of the main memory remains unchanged. Overflow and overflow indicators remain unchanged. Depending on the operands stored in the accumulator, the other indicators are changed with this instruction. The new value is retained and can be checked until another instruction changes the display. If the Λ field is 0, the effective address is relative to IAR.
Laden und Null — PLZ: Diese Instruktion bewirk dasselbe wie Laden Akkumulator Kurz, hat jedocl die zusätzliche Funktion, daß die durch die effektivi Adresse angegebene Hauptspeicherstelle auf Null ge setzt wird. Durch diese Instruktion werden die ande ren Anzeiger abhängig von dem im Akkumulator ge speicherten Operanden verändert. Der neue Wer bleibt bestehen und kann geprüft werden, bis eini andere Instruktion die Anzeige ändert. Übertrags und Überlaufanzeiger bleiben unverändert.Load and zero - zip code: This instruction has the same effect as load accumulator short, but has the additional function that the main memory location specified by the effective address is set to zero. This instruction changes the other indicators depending on the operand stored in the accumulator. The new who remains and can be checked until another instruction changes the display. Carry over and overflow indicators remain unchanged.
Laden Direkt — PLI: Der Akkumulator oder eii Indexregister werden mit dem angegebenen OperanLoad direct - PLI: The accumulator or an index register are loaded with the specified operan
den geladen. Das zu ladende Register wird durch das i?-Feid der Instruktion angegeben: Ein Ä-Feld von 0 bezeichnet den Akkumulator. Das Verschiebungsfeld der Instruktion bildet den direkt zu ladenden Operanden. Der 8 Bits große Operand wird auf einen 16 Bits großen Operanden ausgedehnt durch Fortschreibung des Vorzeichenbitwertes durch die werthohen Bitpositionen. Übertrags- und Überlaufanzeiger bleiben unverändert. Mit dieser Instruktion werden die anderen Anzeiger abhängig von dem in das R-Register geladenen Operanden verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeige ändert.the loaded. The register to be loaded is indicated by the i? -Feid of the instruction: A field of 0 denotes the accumulator. The shift field of the instruction forms the operand to be loaded directly. The 8-bit operand is expanded to a 16-bit operand by updating of the sign bit value through the high-value bit positions. Carry over and overflow indicators remain unchanged. With this instruction the other indicators become dependent on the one in the R register loaded operands changed. The new value remains and can be checked until a another instruction changes the display.
Laden Index Lang — PLXL: Diese Instruktion folgt im wesentlichen dem in Fig. 4B gezeigten Format mit Ausnahme der Bits 5 bis 7, die das R 1-Feld bilden, während die Bits 8 bis 10 das R 2-Feld bilden. Die Bits 11 bis 15 müssen Null sein. Die effektive Adresse ist:Load Index Long - PLXL: This instruction essentially follows the format shown in Figure 4B, with the exception of bits 5 to 7 which form the R 1 field, while bits 8 to 10 form the R 2 field. Bits 11 to 15 must be zero. The effective address is:
EA = Inhalt (R 2) + Adresse R 2 φ 000 ao EA = Adresse R2 = 000 EA = content (R 2) + address R 2 φ 000 ao EA = address R2 = 000
Der Inhalt der effektiven Adresse bildet den 16 Bit großen Operanden, der in das vom R 1-Feld angegebene Register geladen wird. asThe content of the effective address forms the 16-bit operand that is loaded into the register specified by the R 1 field. as
Al = 000 -ACC Al = 000 -ACC
Rl = 000 — keine Indexierung Rl = 000 - no indexing
ÄloderK2 = 001 -XRl ÄlorK2 = 001 -XRl
RIoAnRl = QlQ-XRlRIoAnRl = QlQ-XRl
KloderK2 = 011 - XR3 KloderK2 = 011 - XR3
RloderRl = 100-ÄTÄ4 RloderRl = 100-ÄTÄ4
Al oder Rl = 101 -XRS Al or Rl = 101 -XRS
Rlodcr Rl= UO-XR6 RloderRl = 111 - XRl Rlodcr Rl = UO-XR6 RloderRl = 111 - XRl
Die Übertrags- und Überlaufanzeiger bleiben unverändert. Mit dieser Instruktion werden die anderen Anzeiger abhängig von dem das R 1-Register geladenen Operanden verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeige ändert.The carry-over and overflow indicators remain unchanged. With this instruction the other indicators are changed depending on the operand loaded in the R 1 register. The new value is retained and can be checked until another instruction changes the display.
Speichern Akkumulator — PST: Das Kurzformat in Fig. 4A wird befolgt wie bei den meisten hier beschriebenen Instruktionen, bei denen nichts anderes angegeben ist. Der Inhalt des Akkumulators ersetzt den Inhalt der durch die effektive Adresse angegebenen Hauptspeicherstelle. Ein Ä-Feld mit dem Wert 0 bezeichnet das IAR: Ein von Null verschiedenes Feld bezeichnet ein Indexregister. D^r Inhalt des Akkumulators sowie Übertrags- und Überlaufanzeiger bleiben unverändert. Mit dieser Instruktion werden die anderen Anzeiger abhängig von dem an der effektiven Adresse gespeicherten Operanden verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeige ändert.Store Accumulator - PST: The short format in Figure 4A is followed as with most of the instructions described herein unless otherwise noted. The content of the accumulator replaces the content of the main memory location specified by the effective address. A field with the value 0 denotes the IAR: a field other than zero denotes an index register. The contents of the accumulator as well as the carry and overflow indicators remain unchanged. With this instruction the other indicators are changed depending on the operand stored at the effective address. The new value is retained and can be checked until another instruction changes the display.
Index Speichern — PSTX: Die effektive Adresse wird gebildet durch die Summe des Inhalts der IAR und der Verschiebung. Der Inhalt eines Indexregisters oder Null ersetzen den Inhalt der durch die effektive Adresse angegebenen Hauptspeicherstelle. Das zu speichernde Register wird durch das R-FeId angegeben, worin eine aus 3 Bits bestehende Binärzahl das Register bezeichnet (z. B. R = 001 bezeichnet das Register XRl, während R = 111 das Register XR7 angibt). Wenn R — 000 ist, wird in der effektiven Adresse eine Null gespeichert.Store index - PSTX: The effective address is formed by the sum of the contents of the IAR and the shift. The content of an index register or zero replace the content of the main memory location specified by the effective address. The register to be stored is indicated by the R field, in which a 3-bit binary number denotes the register (e.g. R = 001 denotes the register XR1, while R = 111 denotes the register XR 7). When R - 000, a zero is stored in the effective address.
Der Inhalt des angegebenen Registers sowie Übertrags- und Überlaufanzeiger bleiben unverändert. Mit dieser Instruktion werden die anderen Anzeiger abhängig von dem an der effektiven Adresse gespeicherten Operanden verändert. Der neue Wen bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeige ändertThe content of the specified register as well as the carry and overflow indicators remain unchanged. With this instruction the other indicators become dependent on the one at the effective address stored operands changed. The new wen remains and can be checked until a another instruction changes the display
Addition — PA: Der Inhalt der durch die effektive Adresse angegebenen Hauptspeicherstelle wird zurr Inhalt des Akkumulators addiert Das Ergebnis ersetzt den Inhalt des Akkumulators. Der Inhalt de; Hauptspeichers bleibt unverändert Mit dieser Instruktion weiden die Anzeiger abhängig von dem ir den Akkumulator geladenen Ergebnis verändert. Dei neue Wert bleibt erhalten und kann geprüft werden bis eine andere Instruktion die Anzeige ändert. Eir Ä-Feld von Null bezeichnet das IAR. Addition - PA: The content of the main memory location specified by the effective address is added to the content of the accumulator. The result replaces the content of the accumulator. The content de; Main memory remains unchanged With this instruction, the indicators are changed depending on the result loaded into the accumulator. The new value is retained and can be checked until another instruction changes the display. A zero field denotes the IAR.
Subtrahieren — PS: Der Inhalt der durch die effektive Adresse angegebenen Hauptspeicherstelle wird vom Inhalt des Akkumulators subtrahiert, und die Differenz ersetzt den Inhalt des Akkumulators, Der Inhalt des Hauptspeichers bleibt unverändert Mit dieser Instruktion werden die Anzeiger abhängig von dem in den Akkumulator geladenen Ergebnis verändert. Der neue Wert bleibt bestehen und kanu geprüft werden, bis eine andere Instruktion die Anzeige ändert. Ein K-FeId von Null bezeichnet da; IAR.Subtract - PS: The content of the main memory location specified by the effective address is subtracted from the content of the accumulator, and the difference replaces the content of the accumulator.The content of the main memory remains unchanged.This instruction changes the indicators depending on the result loaded into the accumulator . The new value is retained and can be checked until another instruction changes the display. A K field of zero denotes da; IAR.
Logisch UND — PN: Der Inhalt der durch die effektive Adresse angegebenen Hauptspeicherstelle wird bitweise mit dem Inhalt des Akkumulator: UND-verknüpft. Das Ergebnis ersetzt den Inhalt de; Akkumulators. Der Inhalt des Hauptspeichers sowie Übertrags- und Überlaufanzeiger bleiben unverän dert. Mit dieser Instruktion werden die anderen An zeiger abhängig von dem in den Akkumulator gela denen Ergebnis verändert. Der neue Wert bleibt be stehen und kann geprüft werden, bis eine andere Instruktion die Anzeige ändert. Ein Ä-Feld von NuI bezeichnet das IAR. Logical AND - PN: The content of the main memory location specified by the effective address is AND-linked bit by bit with the content of the accumulator. The result replaces the content de; Accumulator. The content of the main memory as well as the carryover and overflow indicators remain unchanged. With this instruction, the other indicators are changed depending on the result loaded into the accumulator. The new value is retained and can be checked until another instruction changes the display. A field of NuI denotes the IAR.
Logisch ODER — PO: Der Inhalt der durch di< effektive Adresse angegebenen Hauptspeicherstelli wird bitweise mit dem Inhalt des Akkumulator; ODER-verknüpft. Das Ergebnis ersetzt den Inhal des Akkumulators. Der Inhalt des Hauptspeiche;: sowie Übertrags- und Überlaufanzeiger bleiben un verändert. Mit dieser Instruktion werden die anderer Anzeiger abhängig von dem in den Akkumulator ge ladenen Ergebnis verändert. Der neue Wert bleib bestehen und kann geprüft werden, bis eine ändert Instruktion die Anzeige ändert. Ein A-FeId von NuI bezeichnet das IA R. Logical OR - PO: The content of the main memory location specified by di <effective address is bit-by-bit with the content of the accumulator; OR linked. The result replaces the content of the accumulator. The content of the main memory ;: as well as the carryover and overflow indicators remain unchanged. This instruction changes the other indicators depending on the result loaded into the accumulator. The new value persists and can be checked until a change instruction changes the display. An A field of NuI denotes the IA R.
Logisch Antivalent — PX: Der Inhalt der durcl die effektive Adresse angegebenen Hauptspeicher stelle wird bitweise antivalent mit dem Inhalt de Akkumulators verknüpft. Das Ergebnis ersetzt det Inhalt des Akkumulators. Der Inhalt des Haupt Speichers sowie Übertrags- und Überlaufanzeige bleiben unverändert. Mit dieser Instruktion werdet die anderen Anzeiger abhängig von dem in dci Akkumulator geladenen Ergebnis verändert. Der new Wert bleibt bestehen und kann geprüft werden, bi eine andere Instruktion die Anzeige ändert. Eil R-FeId von Null bezeichnet das IAR. Logically complementary - PX: The content of the main memory location specified by the effective address is linked bit-by-bit complementarily with the content of the accumulator. The result replaces the contents of the accumulator. The content of the main memory as well as the carry and overflow display remain unchanged. With this instruction the other indicators are changed depending on the result loaded in the dci accumulator. The new value remains and can be checked until another instruction changes the display. Eil R field of zero denotes the IAR.
Register — Akkumulatorinstruktionen: PAR, PSR PNR, POR, PXR, PSTR, PLR, PCR, PSLM, PIR PIPS, PUB. Register - Accumulator Instructions: PAR, PSR PNR, POR, PXR, PSTR, PLR, PCR, PSLM, PIR PIPS, PUB.
Eine arithmetische oder logische Operation, diAn arithmetic or logical operation, i
lurch das M-FeId Bits 12 bis 15 in Fig. 4A) vorgeschrieben wild, wird zwischen dem Inhalt eines Registers und dem Inhalt des Akkumulators ausgeführt. Diese Operationen sind:Prescribed by the M field bits 12 to 15 in Fig. 4A) wild, is executed between the contents of a register and the contents of the accumulator. These operations are:
M=I Addition [PAR) M = I addition [PAR)
M = I Subtraktion (PSR) M = I subtraction (PSR)
M = 3 UND-Verknüpfung (PNR) M = 3 AND link (PNR)
M = 4 ODER-Verknüpfung (POR) und M = 4 OR link (POR) and
M = 5 antivalente Verknüpfung (PXR) M = 5 complementary link (PXR)
Das Ergebnis wird in den Akkumulator gesetzt. Bei der Subtraktionsoperation (PSR) wird das Indexregister vom Akkumulator subtrahiert. Anzeiger werden wie für die entsprechenden Speicher-Akkumulatorinstruktionen (PA, PS, PN, PO, PX) beeinflußt. Ein R-FeId von Null bezeichnet den Akkumulator, ein von Null verschiedenes R-FeId ein Indexregister.The result is placed in the accumulator. The subtraction operation (PSR) subtracts the index register from the accumulator. Indicators are affected as for the corresponding store accumulator instructions (PA, PS, PN, PO, PX). An R field of zero denotes the accumulator, an R field other than zero denotes an index register.
Außerdem bedeutetAlso means
M == 6 Speicher zum Register (PSTR), während M =■= 7 Laden vom Register (PLR) angibt.M == 6 memory to register (PSTR), while M = ■ = 7 indicates loading from register (PLR).
Der Akkumulatorinhalt wird in ein durch das R-FeId (PSTR) oder den Inhalt des durch das K-FeId angegebenen Registers gespeichert, oder der Inhalt des durch das R-FeId angegebenen Registers wird in den Akkumulator geladen (PLR). Übertrags- und Überlauf anzeiger werden nicht verändert. Mit. diesen Instruktionen werden andere Anzeiger abhängig von dem betroffenen Operanden verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis andere Instruktionen die Anzeiger ändern. Das Quellenregister wird in PLR nicht verändert. Ein R-FeId von Null bezeichnet das IAR, ein von Null verschiedenes Feld ein Indexregister.The accumulator content is stored in a register indicated by the R field (PSTR) or the content of the register indicated by the K field, or the content of the register indicated by the R field is loaded into the accumulator (PLR). Carry over and overflow indicators are not changed. With. These instructions change other indicators depending on the operand involved. The new value remains and can be checked until other instructions change the indicators. The source register is not changed in PLR. An R field of zero denotes the IAR, a field other than zero denotes an index register.
M = 8 wählt das Komplementregister (PCR). Das durch das R-FeId angegebene Register wird zweierkomplernentiert. Das Ergebnis wkd in das Λ-Register gesetzt. Ein R-FeId von Null bezeichnet den. Akkumulator, ein von Null verschiedenes R-FeId ein Indexregister. Der Übertragungsanzeiger wird nicht verändert: Wenn die zu komplementierende Zahl die höchste im Akkumulator darstellbare negative Zahl ist, wird der Überlaufanzeiger gesetzt. Mit dieser Instruktion werden die anderen Anzeiger abhängig vom Ergebnis im R-Register verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeiger ändert.M = 8 selects the complement register (PCR). The register indicated by the R field is complemented in two ways. The result is placed in the Λ register. An R field of zero denotes the. Accumulator, a non-zero R field, an index register. The transfer indicator is not changed: If the number to be complemented is the highest negative number that can be displayed in the accumulator, the overflow indicator is set. With this instruction the other indicators are changed depending on the result in the R register. The new value remains and can be checked until another instruction changes the indicators.
M = 9 entspricht der Instruktion Stufe und Maske Abfi'hlen (PSLM). Die momentan aktive Stufe wird in binär codiertem Format in die Bitposiüonen 14 und 15 des durch das R-FeId angegebenen Registers gesetzt. Der Inhalt des Maskenregisters wird in die Bitpositionen 0 bis 3 gesetzt. Die Bitpositionui 4 bis 13 werden auf Null gesetzt, und die Maske wird nicht verändert. Die Übertrags- und Uberlaufanzeiger werden nicht beeinflußt. Mit dieser Instruktion werden die anderen Anzeiger abhängig von dem in das R-Register geladenen Operanden verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeiger ändert. Ein R-FeId von Null bezeichnet den Akkumulator, ein von Null verschiedenes R-FeId ein Indexregister. Wenn Bit 11 in der Instruktion auf 1 steht, wird die Maske ausgeleitet, aber nicht verändert. Es kann keine Unterbrechung auftreten. Dieser Zustand dauert an, bis eine PNM- oder POVf-Instruktion aasgeführt wird. Das liefert eine summarische Maskenfunktion.M = 9 corresponds to the instruction level and mask sensing (PSLM). The currently active level is set in binary coded format in bit positions 14 and 15 of the register indicated by the R field. The content of the mask register is set in bit positions 0 to 3. The bit positions ui 4 to 13 are set to zero and the mask is not changed. The carry-over and overflow indicators are not affected. This instruction changes the other indicators depending on the operand loaded into the R register. The new value remains and can be checked until another instruction changes the indicators. An R field of zero denotes the accumulator, an R field other than zero denotes an index register. If bit 11 in the instruction is set to 1, the mask is diverted but not changed. No interruption can occur. This state continues until a PNM or PO Vf instruction is executed. This provides a summary mask function.
M = A wählt ein Austauschregister (PIR). Der Akkumulatennhalt wird in das durch das R-FeId angegebene Register gespeichert und der Inhalt des durch das R-FeId angegebenen Registers in den Akkumulator geladen. Wenn das R-FeId gleich Null ist, findet keine Operation auf Grund dieser Instruktion statt. Übertrags- und Überlaufanzeiger werden nicht verändert. Mit dieser Instruktion werden die anderen Anzeiger abhängig von dem aus dem R-Register in den Akkumulator gesetzten Operanden verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeiger ändert. M = A selects an exchange register (PIR). The accumulator content is stored in the register indicated by the R field and the content of the register indicated by the R field is loaded into the accumulator. If the R field is equal to zero, no operation takes place on the basis of this instruction. Carry over and overflow indicators are not changed. With this instruction, the other indicators are changed depending on the operand set in the accumulator from the R register. The new value remains and can be checked until another instruction changes the indicators.
M = B entspricht der Instruktion Prozessorstatus Laden (PLPS). Der Prozessorstatus wird in die Bitpositionen O bis 9 des R-Registers geladen. R = 000 bezeichnet den Akkumulator. Übertrags- und Überlaufanzeiger werden nicht betroffen. Mit dieser Instruktion werden die anderen Anzeiger abhängig M = B corresponds to the instruction Load Processor Status (PLPS). The processor status is loaded into bit positions 0 to 9 of the R register. R = 000 denotes the accumulator. Carryover and overflow indicators are not affected. With this instruction the other indicators become dependent
»ο von dem in das R-Register geladenen Operanden verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeiger ändert.»Ο from the operand loaded into the R register changes. The new value is retained and can be checked until another instruction clears the indicator changes.
M = C bezeichnet die Instruktion /.4Rß-Register Prüfen (PUB). Der Inhalt des //IRß-Registers für die gewählte Stufe ersetzt den Inhalt des durch das R-FeId angegebenen Registers. R = OGO bezeichnet den Akkumulator. Wenn die angegebene Stufe Null ist, resultiert die Ausführung dieser Instruktion im Laden von Nullen in das durch das R-FeId angegebene Register. Das //IRß-Register bleibt unverändert. Die Stufe wird durch den binär codierten Wert in den Bitpositionen 10 und 11 dieser Instruktion gewählt. Wenn die gewählte Stufe aktiv oder in der Verarbeitung ist und gerade auf Grund eines Abrufs von einer höheren Ebene läuft, wird der Übertragsanzeiger eingeschaltet und die Stufe zurückgestellt. Wenn die gewählte Stufe nicht aktiv ist oder gerade läuft, wird der Übertragsanzeiger ausgeschaltet. Wenn die gewählte Stufe daher gerade läuft, wird sie abgebrochen, d. h., sie wird nicht automatisch zur laufenden Stufe, wenn alle höheren Stufen erregt sind. Auch wenn die laufende Stufe gewählt ist, wird sie erregt. Der Überlaufanzeiger wird nicht betroffen. M = C denotes the instruction /.4Rß-Rß-RegisterCheck (PUB). The content of the // IRß register for the selected level replaces the content of the register specified by the R field. R = OGO denotes the accumulator. If the indicated level is zero, the execution of this instruction results in the loading of zeros into the register indicated by the R field. The // IRß register remains unchanged. The level is selected by the binary coded value in bit positions 10 and 11 of this instruction. If the selected level is active or in processing and is currently running due to a request from a higher level, the carry indicator is turned on and the level is reset. If the selected level is not active or is currently running, the carry-over indicator is switched off. Therefore, if the selected level is currently running, it will be canceled, ie it will not automatically become the current level when all higher levels are energized. Even if the current level is selected, it will be energized. The overflow indicator is not affected.
Mit dieser Instruktion werden die anderen Anzeiger abhängig von dem in das R-Registcr geladenen Operanden verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis andere Instruktionen die Anzeiger ändern.With this instruction the other indicators are loaded depending on the one loaded into the R register Operands changed. The new value is retained and can be checked until other instructions are given change the indicator.
Die Werte D bis F im M-FeId sind ungültig und führen zu einer Programmprüfungsunterbrechung.The values D to F in the M field are invalid and lead to an interruption of the program test.
Bedingter Sprung — PSKC: Das R-FeId muß Null sein. Bit 8 ist das Überlaufrettungskcnnzeichen, und die Bits 9 bis 15 werden zum Bedingungsfcld, in welchem darstellen:Conditional jump - PSKC: The R field must be zero. Bit 8 is the overflow rescue indicator, and bits 9 to 15 become the condition field in which:
Bit 9 — Bedingungscode Null (d. h. ÜbertragBit 9 - condition code zero (i.e. carry
und Überlauf ausgeschaltet)
Bit 10 = Ergebnis Nulland overflow switched off)
Bit 10 = result zero
Bit 11 = Ergebnis negativ (werthohes Bit = 1) Bit 12 = Ergebnis positiv und nicht Null
Bit 13 = Ergebnis gleich (wertniederes Bit = 0) Bit 14 = Übertragsanzeiger aus
Bit 15 = Uberlaufanzeiger ausBit 11 = result negative (high-value bit = 1) Bit 12 = result positive and not zero
Bit 13 = result equal (lower value bit = 0) Bit 14 = carry-over indicator off
Bit 15 = overflow indicator off
6o6o
Das die sieben Bits 9 bis 15 umfassende Feld wird als Bedingungsmaske benutzt. Die zu prüfenden Bc-The field comprising the seven bits 9 to 15 is used as a condition mask. The Bc-
609 512/257609 512/257
1919th
17 Das die 7 Bits 9 bis 15 umfassende Feld wird als 17 The field comprising 7 bits 9 to 15 is called
dingungen werden durch ein Bit in der Maske an- Bedingungsmaske benutzt. Die zu prüfenden Bedin-conditions are used by a bit in the mask on condition sma ske. The conditions to be checked
nvnphpn Wr>nn pinp Her angegebenen Bedingungen ,,,,,,^n Hnrch die Bits in der Maske anos. nvnphpn Wr> nn pinp Her specified conditions ,,,,,, ^ n Hnrch the bits in the mask anos.
zutrifft, wird das Instruktionsadreßregister um tins & ^ ^^ keine d angegebenen Bedingungen erhöht, bevor die nächste Instruktion Seholt..w'^e 5 zutrifft oder keine Bedingungen angegeben sind, wird Dadurch springt das Programm über das nacnsic ^ Instruktionsadreßregister mit dem Inhalt des Wort in der normalen Programmfolge. Wenn Keine Adreßfeldes (# = 000) oder dem Inhalt eines Index-Bedingungen angegeben sind oder kerne der ange- .^ (R φ QOO) geladen. Wenn eine der angegebenen Bedingungen zutrifft, erfolgt kein sprung. ?enen Bedingungen zutrifft, erfolgt keine Vemvei-Wenn der Überlauf anzeiger gesetzt ist (Bit 15 in aer g ^ ^ nächstfolgende Instruktion wird ausBedingung muß auf 1 stehen), wird er ausgescuaiiei, e ^ Wenn der Überlaufanzeiger geprüft wird Überlaufrettungskennzeichen (Bit 8) gieicn s ^ ^ dßr Bedjngung muß gleich 1 sein), wird er e anderen Anzeiger werden nicht betronen. ^hltet falls das Überlauf rettungskennzeichenapplies, the instruction address register is increased by tins & ^ ^^ no specified conditions before the next instruction S eholt .. w '^ e 5 applies or no conditions are specified, the program then jumps to the next instruction address register the content of the word in the normal program sequence. If no address field (# = 000) or the content of an index condition are specified or the cores of the attached. ^ (R φ QOO) are loaded. If one of the specified conditions applies, there is no jump. ? applies enes conditions, no Vemvei-When the overflow is set indicator (bit 15 in aer g ^ ^ next follow d e instruction is stipulation must be set to 1), it is ausgescuaiiei, e ^ If the overflow indicator is checked overflow rescue indicator (bit 8) if s ^ ^ the condition must be equal to 1), he will not be affected by any other indicator. ^ holds if the overflow rescue mark
wenn dasif that
Das Überlauf rettungskennzeichen hat keine Auswar |ö ^ ^ steht AJ]e anderen Anzeiger werdenRescue mark the overflow does not Auswar | ö ^ ^ is AJ] e other indicators are
kungen, wenn der Bedingungscode 0 (Bit9) geprui ν betfoflen Das Überlauf rettungskennzeichen hat wird (d. h. Übertrags- und Überlaufkennzeichen wer- s ^ Auswirkung, wenn der Bedingungscode 0has, if the condition code 0 (Bit9) geprui ν betfoflen rescue mark fluctuations The overflow (ie carry and overflow mark's advertising ^ effect if the condition code 0
den durch diese Prüfung nicht verändert;, wie ich NuJI jst Das überlaufreitungskenn- the unchanged by this test ;, as I NuJI jst The überlaufreitungskenn-
anderen Anzeiger werden durch diese Instruktion zdche^ kann geprüft werden (d.h. Übertrag undother indicators are by this instruction zdche ^ can be checked (ie, transfer and
nicht betroffen. Überlauf werden durch diese Prüfung nicht beein-not affected. Overflow are not affected by this check.
Verzweigung und Verknüpfung — PBAL: ve D_e In;.truktion nat keine Auswirkung auf dieBranching and linking - PBAL: ve D _ e In; . truktion nat has no effect on the
Inhalt des Instruktionsadreßregisters (die Lage der '^ Anzeiger. Contents of the instruction address register (the position of the '^ indicators.
nächstfolgenden Instruktion) wird in dem durch das * Verschiebung _ PSLL, PSRA, PSRL, "SLC: Es R-FeId angegebenen Register gespeichert. Das in- ^.^ ^ Format der ρi g. 4 A benutzt mit Ausnahme struktionsadreßregister wird dann auf die durcn aie ^ M.odiäiierfeld bildenden Bits 8 bis 10 und Summe von IAR plus Verschiebung gebildete etteK- ^ Schiebezahl darstellenden Bits 11 bis IS. Das tive Adresse gesetzt, die die Lage der nächsten aus- R ister R wird um dje Anzahl der in der Schiebegeführten Instruktion wird. Ein jR-Feld von Null oe- ^ angegebenen Bitpositionen verschoben. Die zeichnet den Akkumulator, ein von Null verscnie- Schiebezahl kann jeden Wert im Bereich von U bis 16 denes Ä-Feld ein Indexregister. Übertrags- una nchmen Schiebezahlen mit einem höheren Wert Überlaufanzeiger sowie die anderen Anzeiger werden ^ ^ ^ ungültig und führen zu einer Programmdurch diese Instruktion nicht beeinflußt. .,.. prüfunterbrechung im Prozessor. Ein Ä-Feid vonThe next instruction) is stored in the register specified by the * Shift _ P SLL, PSRA, PSRL, "SLC: Es R-Field. The in ^. ^ ^ format of the ρi g. 4 A used with the exception of the instruction address register is then on the durcn aie ^ M.odiäiierfeld bits forming ^ shift number representing bits to iS. the tive address set 8 to 10 and the sum of IAR plus shift etteK- formed 11, which is the position of the next Removing R ister R d to j number e A jR field is shifted from zero oe ^ specified bit positions. This records the accumulator, a zero shift number can hold any value in the range from U to 16 and the field is an index register. una nchmen shift digit numbers with a higher value overflow indicator and other indicators ^ ^ ^ are invalid and lead to program this instruction does not affect.. .. pr üfunterbrechung in the processor. a Ä Feid of
Verzweigung und Lange \'erknüpfung — ΡυΑί-':- L· » bezeichnet den Akkumulator, ein von Null ver-Branching and Long \ 'erknüpfung - Ρ υΑί -': - length "beze i c HNET the accumulator comparable from zero
Das Format der Fig. 4B wird benutzt, die Bits» ms hiedenes ^.peid ein Indexregister. Die Bus 8 bisThe format of FIG. 4B is used, the bits »ms here ^ .peid an index register. The bus 8 bis
15 müssen aber Null sein. Der Inhalt des Instruk- ^^ Modifizierer für die Schiebeinstruk-But 15 must be zero. The content of the Instruk- ^^ modifier for the sliding instruc-
tionsadreßregisters wird in dem durch das K-FeId " mtion address register is stored in the "m
angegebenen Register gespeichert. Ein R-FM von 35 · _ Linksumlaufschiebung (PSLC). Das Regi-specified register. An R-FM of 35 · _ Link Circular Shift (PSLC). The Regi-
NuIl bezeichnet den Akkumulator, ein von Nu11J"" R ird logisch nach links um die Anzahl vonNuIl denotes the accumulator, one of Nu 11 J "" R is logical to the left by the number of
schiedenes R-FeId ein Indexregister. Das Adreßield s t itioncn gedreht, die in der Schiebe/ahl ani>c-separate R field an index register. The address field s t itioncn rotated, which is in the sliding / ahl ani> c-
wird in das Instruktionsadreßregister geladen und F übertrags- und Überlaufanzeiccr werdenis loaded into the Instruktionsadreßregister and F übert ra g s and Überlaufanzeiccr be
wird zur Adresse der als nächste auszuführenden geben si _ b ^^ lnslTukUQn ;erden die will give the address of the next to be executed si _ b ^^ lnslTukUQn ; earth the
40 mem ν40 mem ν
wird zur Adresse der als nächste auszuführenden geben si _ b ^^ will give the address of the next to be executed si _ b ^^
Instruktion. Übertrags- und überlaufanzeiger sowie 40 mem ν ^ d£m E Instruction. Carry over and overflow indicators as well as 40 mem ν ^ d £ m E
die anderen Anzeiger werden von d.eser Instrukt.on ^^Γ3ΐ>η verändertthe other indicators are changed by this instruction on ^^ Γ3ΐ > η
g ^^Γ3ΐη verändert Der neue Wert bleibt er-g ^^ Γ3ΐη changed The new value remains
nicht beeinflußt. ... , , halten und kann geprüft werden, bis eine andereunaffected. ..., hold and can be tested until another
Verzweigung - PB: Die effektive Adresse ersetz Ja ten ^ P^Branch - PB: Replace the effective address Ja ten ^ P ^
den Inhalt des Instruktionsadreßreg.sters und bildet Instrukto Lt„ksschicbung (PSLL). Das Re-the content of the Instruktionsadreßreg.ster and forms Instrukto L t " k sschicbung (PSLL). The Re-
die Adresse der als nächste auszuführenden Instruk- 45 UUl g ^ ^ ß. nen nach the address of the next instruction to be executed 45 UUl g ^ ^ ß . after
tion. Em R-FeId von Null bezeichnet das MA1 en, ger;erschobe die in der Schiebezahl angegebention. Em R field of zero denotes the MA 1 en, g er ; overtook the number given in the slide
von Null verschiedenes R-FeId ein Indexregister. geleerten wertniederen Positionen werdenNon-zero R field an index register. emptied of lower value positions
Alle Anzeiger ble.ben unverändert ■ ^ Der überlaufanzeiger bleibt unver-All indicators remain unchanged ■ ^ The running indicator remains unchanged
Bedingte Verzweigung - PBC: Das Format der , Bitposition Null des /^-RegistersConditional Branch - PBC: The format of the , bit position zero of the / ^ register
Fig. 4B wird benutzt nut Ausnahme des Bits 8 5o ander u ^ ρ ^ übe ^Fig. 4B is used with the exception of bit 8 50 other u ^ ρ ^ over ^
welches das überlaufrcttungskennzeichcn .s und de gsges Übertragsanzeiger, eine Nullwhich the overflow direction identifier .s and de gsges carry indicator, a zero
Bus 9 bis 15, die das Bedmgungsfeld darstellen, m tine ^ ^^ m^ ^^ Instruktion werdcn ^Bus 9 to 15, which represent the conditions, m tine ^ ^^ m ^ ^^ instruction will be ^
welchem bedeuten: anderen Anzeiger abhängig vom Ergebnis derwhich mean: other scoreboards depending on the result of the
Bit 9 = Bedingungscode Null (d. h. Überlauf 55 Schiebeoperation verändert. Der neue Wert bleibtBit 9 = condition code zero (ie overflow 55 shift operation changed. The new value remains
und übertrag beide aus) .'alten und kann öeprüft werden, bis eine andereand transfer both of) .'alten and can be eprüft ö until another
Bit 10 - Ergebnis Null Instruktion die Anzeiger ändertBit 10 - Result zero instruction changes the indicator
Bit 11 - Eraebnis negativ (werthohes Bi. - 1) 010 - logische Rcchtsvcr^h.eh.np (/'.SR/ . HasBit 11 - Result negative (high value Bi. - 1) 010 - Logical right of right ^ h.eh.np (/'.SR/. Has
S S: 3SS K=,. 0>. S=JSSS1SSSSS: 3SS K = ,. 0 >. S = JSSS 1 SSS
Bit 14 = Übertragsanzeiger aus M£ dieser Instruk[ion w^rdcn die anderen Anzeiger
Bit 15 -= Überlaufanzeiger aus abhängig vom Ergebnis der Schiebe. Mcration verWenn
das Λ-Feld gleich Null ist, ist die Instruk- ändert: Der neue Wert bleibt bestehen und kann getion
lang und die Verzweigungsadresse der Inhalt des 65 prüft werden, bis eine andere Instrukt.on die Anzeige
Adreßfeldes Wenn das R-FeId von Null verschieden ändert. Die geleerten werlhohen Bitpositionen des
ist, ist die Instruktion kurz und die Verzweigungs- Registers R werden auf Null gesetzt
adresse der Inhalt des Indexregisters R. 011 — Arithmetische Rechtsverschiebung (PSRA). Bit 14 = carry-over indicator from M £ of this instruction w ^ r dcn the other indicators Bit 15 - = overflow indicator off depending on the result of the shift. Mcration verIf the Λ-field is equal to zero, the instruc- changes: The new value remains and can getion long and the branch address the contents of 65 are checked until another Instrukt.on the display address field If the R-field of Changes zero differently. The cleared high bit positions are, the instruction is short and the branch registers R are set to zero
address the contents of the index register R. 011 - Arithmetic right shift (PSRA).
Register R wird um die durch die Schiebezahl angegebene Anzahl von Bitpositionen nach rechts verschoben. Der Wert des Vorzeichens (das werthohe Bit) wird in die geleerten werthunen Bitpositionen des Registers R eingegeben. Übertrags- und Überlaufanzeiger bleiben unverändert. Mit dieser Instruktion werden die anderen Anzeiger abhängig vom Ergebnis der Schiebeoperation verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeiger ändert.Register R is shifted to the right by the number of bit positions indicated by the shift number. The value of the sign (the significant bit) is entered into the cleared valued bit positions of the R register. Carry over and overflow indicators remain unchanged. This instruction changes the other indicators depending on the result of the shift operation. The new value remains and can be checked until another instruction changes the indicators.
Addiere Direkt — (PAI): Es wird das in Fi g. 4 A gezeigte Feld verwendet, dabei wird jedoch das Operandenfeld auf 16 Bits durch Vorzeichenfortschreibung auf die acht werthohen Bits 8 bis 15 erweitert. Dann wird es zum Inhalt des durch das Ä-Feld angegebenen Registers addiert. Das Ergebnis wird in das Ä-Register gesetzt. Ein R-FeId von Null bezeichnet den Akkumulator, ein von Null verschiedenes R-FeId ein Indexregister. Übertrags- und Uberlaufanzeiger werden wie bei der Additionsinstruktion (PA) beeinflußt. Mit dieser Instruktion werden die anderen Anzeiger abhängig von dem in das R-Register geladenen Ergebnis verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeiger wieder findert.Add Directly - (PAI): It will be shown in Fig. 4 A is used, but the operand field is expanded to 16 bits by updating the sign to the eight high-value bits 8 to 15. Then it is added to the contents of the register indicated by the field. The result is placed in the Ä register. An R field of zero denotes the accumulator, an R field other than zero denotes an index register. Carry over and overflow indicators are influenced as with the addition instruction (PA) . This instruction changes the other indicators depending on the result loaded into the R register. The new value is retained and can be checked until another instruction finds the indicator again.
Addition zum Speicher und Sprung — (PASY. Die durch die effektive Adresse angegebene Speicherstelle wird um Eins erhöht. Übertrags- und Überlaufanzeiger sind nicht betroffen. Mit dieser Instruktion werden die anderen Anzeiger abhängig von dem in die effektive Adresse gespeicherten Wert verändert. Der neue Wert bleibt bestehen und kann geprüft werden, bis eine andere Instruktion die Anzeiger ändert. Wenn das Ergebnis Null ist, wird das JAR um Eins erhöht, bevor die nächste Instruktion geholt wird. Ein .R-Feld mit dem Wert Null bezeichnet das IAR, ein von Null verschiedenes R-FeId ein Indexregister.Addition to memory and jump - (PASY. The memory location specified by the effective address is increased by one. Carry and overflow indicators are not affected. With this instruction, the other indicators are changed depending on the value stored in the effective address. The new value persists and can be checked until another instruction changes the indicators. If the result is zero, the JAR is incremented by one before the next instruction is fetched. A .R field with the value zero denotes the IAR, one of Zero different R field an index register.
UND und ODER zur Maske — (PNM und POM): Es gilt das Format der Fig. 4 A mit Ausnahme der Bits 8 bis 14, die auf Null stehen, und dem Bit 15, welches das »C«-Bit ist. Der Inhalt de. Bits 0 bis 3 des durch das Ä-Feld angegebenen Registers wird mit dem Inhalt des Unterbrechunesmaskenregisters UND-verknüpft (C = 0, PNM) Öder ODER-verknüpft (C — I, POM) und das Ergebnis in das Maskenregister gesetzt. Ein R-FeId mit dem Wert Null bezeichnet den Akkumulator, ein von Null verschiedenes R-FeId ein Indexregister. Das Quellenregister wird nicht verändert. Übertrags- und Uberlaufanzeiger werden nicht betroffen, diese Instruktion ändert die anderen Anzeiger nicht. Ein Einerbit in der Maske gestattet eine Unterbrechung.AND and OR to the mask - (PNM and POM): The format of FIG. 4 A applies with the exception of bits 8 to 14, which are set to zero, and bit 15, which is the "C" bit. The content of the. Bits 0 to 3 of the register indicated by the field are ANDed (C = 0, PNM) or ORed (C - I, POM) with the content of the interrupt mask register and the result is placed in the mask register. An R field with the value zero denotes the accumulator, an R field other than zero denotes an index register. The source register is not changed. Carry over and overflow indicators are not affected, this instruction does not change the other indicators. A one bit in the mask allows an interruption.
Ausführen E/A — (PIIO): Diese Instruktion folgt dem in F i g. 8 gezeigten Format, worin die Bits 11 bis 15 Null sein müssen. Die Operation dieser Instruktion und die Bitfclddefinitionen werden später beschrieben. Allgemein wird der Bedingungscode jedoch in den Übertrags- und Überlaufanzeigern gesetzt. Übertrag ist Bit 0 und Überlauf ist Bit 1. Die anderen Anzeiger werden durch eine P/.O-Direkt-Schreiben-Instruktion nicht betrolfen. Die An7ciger werden jedoch verändert, um die Daten zu markieren. die in das angegebene Register durch die Γ/,Ό-Direkt-Lesen-Instruktion geladen werden.Execute I / O - (PIIO): This instruction follows that in FIG. 8, in which bits 11 to 15 must be zero. The operation of this instruction and the bitfcld definitions are described later. In general, however, the condition code is set in the carry and overflow indicators. Carry is bit 0 and overflow is bit 1. The other indicators are not affected by a P / .O direct write instruction. However, the indicators are changed to mark the data. which are loaded into the specified register by the Γ /, Ό direct read instruction.
Stufenausgang — (PLEX): Die Bits 0 bis 4 definieren denOP-Code. die Bits 5 bis 15 sind aber Nail.Step output - (PLEX): Bits 0 to 4 define the OP code. bits 5 to 15 are nail.
Wenn diese Instruktion ausgeführt wird, läuft der Prozessor aus der laufenden Stufe hinaus: Wenn k<iine anderen Unterbrechungen ausstehen, geht der Prozessor in den ... Zustand. Übertrags- und überlaufanzeiger werden nicht verändert. Diese Instruktion beeinflußt die anderen Anzeiger nicht.When this instruction is executed, the processor will run out of the current stage: if If there are no other interruptions pending, the Processor in the ... state. Carry over and overflow indicators are not changed. This instruction does not affect the other indicators.
Stopp — (PSTP): Diese Instruktion umfaßt 16 Bits, worin die Bits 0 bis 4 der eindeutige OP-Code sind, die Bits 5 bis 15 aber Null seinStop - (PSTP): This instruction comprises 16 bits, where bits 0 to 4 are the unique OP code, but bits 5 to 15 are zero
ίο müssen. Diese Instruktion wird nur ausgeführt, wenn das System von außen so vorbereitet wird, als ob ein Konsolenschalter auf Einschalten steht. Sonst löst diese Instruktion keine Operation aus. Wenn die Instruktion ausgeführt wird, läuft der Prozessor in den Stoppzustand am Ende dieser Instruktion. Von dieser Instruktion sind keine Anzeiger betroffen.ίο have to. This instruction is only carried out if the system is prepared from the outside as if a console switch is on. Otherwise solves this instruction does not exclude an operation. When the instruction is executed, the processor runs in the stop state at the end of this instruction. No indicators are affected by this instruction.
VIII — E/A -OperationenVIII - I / O operations
so Das Format für E/A -Instruktionen des Prozessors ist in F i g. 8 gezeigt. Die verschiedenen Felder haben folgende Bedeutung:so The format for I / O instructions of the processor is shown in FIG. 8 shown. The different fields have the following meanings:
Bits G bis 4 — Diese Bits stellen das Codefeld für den Operationscode des Prozessors dar. Der WertBits G through 4 - These bits represent the code field for the processor opcode. The value
■15 00001 entspricht PIIO. Das R-VeXa wird zur Bezeichnung des Registers im Prozessor benutzt, welches von dieser E/A -Instruktion betroffen ist. Ein Λ-Feld mil dem Wert Null bezeichnet den Akkumulator. ■ 15 00001 corresponds to PIIO. The R-VeXa is used to designate the register in the processor that is affected by this I / O instruction. A Λ-field with the value zero denotes the accumulator.
Bei direkten Lese/Schreibkommandos gibt das .R-FeId das Register an, welches als Quellen Zielfeld für die zu übertragenden Daten dient. Bei der Vorbereitung E/A gibt das R-FeId das Register an, welches die Quelle für die Vorbereitungsinformation ist und an die Unterbrechungsquelle übertragen wird. Bei Stopp E/A wird das R-FeId nicht benutzt. Bei Unterbrechung Setzen gibt das Ä-Feld das Register an, welches den Unterbrechungsdatensatz enthält, der an den direkten Steuerkanal übertragen wird.In the case of direct read / write commands, the .R field specifies the register which is used as the source target field for the data to be transmitted. When preparing I / O , the R field specifies the register which is the source for the preparation information and which is transferred to the interrupt source. The R field is not used when I / O is stopped. If the interrupt is set, the Ä field specifies the register which contains the interrupt data record which is transmitted to the direct control channel.
FUN — Das Funktionsfeld gibt die Art des auszuführenden E/A -Kommandos an. Dieses Kommando kann sein Direkt Schreiben, Direkt Lesen, E/A Vorbereiten, Stopp E/A oder Unterbrechung Setzen. Ungültige Funktionen resultieren in einer Programmprüfungsunterbrechung im Prozessor. FUN - The function field indicates the type of I / O command to be executed. This command can be direct write, direct read, prepare I / O , stop I / O or set interrupt. Invalid functions result in a program test interruption in the processor.
MOD — Das Modifizierfeld wird nur bei den Kommandos Direkt Lesen oder Direkt Schreiben benutzt. Es wird von der adressierten Einheit dazu benutzt, die auszuführende Operation zu bestimmen. MOD - The modification field is only used with the direct read or direct write commands. It is used by the addressed unit to determine the operation to be carried out.
Das Einheitenadreßfeld (Geräte Adr) enthält in 6 Bits binär codierte Adreßinformaiion. Es bezeichnen einen Punkt, eine Gruppe oder eine Einheit innerhalb eines Moduls. Das Moduladreßfeld ist ein binär codiertes, 6 Bits großes Bild, mit welchem das durch die P/O-Instruktion adressierte Modul gewählt wird. Der Bedingungscode zeigt dem Programm an. ob die «lurch die P/O-Instruktion angegebene E, A-Operation erfolgreich durchgeführt wurde oder nicht und im Verncinungsfalle den Grund für das Versagen.The unit address field (device addr) contains 6 bits of binary coded address information. It denotes a point, a group or a unit within a module. The module address field is a binary-coded, 6-bit image with which the module addressed by the P / O instruction is selected. The condition code indicates to the program. whether the E, A operation indicated by the P / O instruction was carried out successfully or not and, if this is not the case, the reason for the failure.
Bedingungscodes werden bei einer E/A -Operation in folgender Reihenfolge erzeugt:Condition codes are generated in the following order for an I / O operation:
1. Bedingungscode 3 — nicht angeschlossen,1. Condition code 3 - not connected,
2. Bedingungscode 2 ·— Belegung oder Unter2. Condition code 2 · - Occupancy or sub
brechung ausstehend,break pending,
3. Bedingungscode 1 — Fehler und3. Condition Code 1 - Errors and
4. Bediiißungscode 0 — erfolgreich.4. Condition code 0 - successful.
Direktes Schreiben — Dieses Kommando liefert die notwendigen Parameter zur Übertragung von 16 Datenbits aus dem angegebenen Register im Prozessor zur adressierten Einheit. Das Modifizierfeld gibt die an der Einheit auszuführende Operation an. Wenn die Operation erfolgreich durchgeführt oder eingeleitet wurde, wird der Bedingungscode 0 gesetzt. Wenn ein Fehler festgestellt wird, wird der Bedingungscode 1 gesetzt und der Zustand im Einheitenstatuswort (DSW) gespeichert. Wenn die Einheit belegt ist. oder in einem laufenden Unterbrechungszustand steht, wird der Bedingungscode 2 gesetzt. Wenn die Einheit nicht angeschlossen ist, wird der Bedingungscode 3 gesetzt.Direct writing - This command provides the parameters required to transfer 16 data bits from the specified register in the processor to the addressed unit. The modify field indicates the operation to be performed on the unit. If the operation was successfully completed or initiated, condition code 0 is set. If an error is detected, condition code 1 is set and the status is stored in the unit status word (DSW). When the unit is occupied. or is in an ongoing interruption state, condition code 2 is set. When the unit is not connected, condition code 3 is set.
Direktes Lesen — Das Kommando liefert die notwendigen Parameter zuv Übertragung von 16 Datenbits aus der adressierten Einheit in das angegebene Prozessorregister. Das Modifizierfeld gibt die in der Einheit auszuführende Operation an. Bedingungscodes werden grundsätzlich genauso gesetzt wie bei dem oben beschriebenen Kommando Direktes Schreiben.Direct reading - The command supplies the necessary parameters for the transmission of 16 data bits from the addressed unit into the specified processor register. The modifier field specifies the Unit to perform. Condition codes are set in the same way as for the direct writing command described above.
E/A -Vorbereitung (Fig. 4 c) — Das Kommando wird genauso ausgeführt wie das oben beschriebene Schreibkommando. Die an die Einheit von dem Kommando gegebenen Parameter werden von dieser für die Feststellung benutzt, ob eine Unterbrechung gestattet ist und auf welcher Stufe und mit welcher Verschieuung. Die durch dieses Kommando übernommene Funktion gestattet eine schnelle dynamische Zuordnung und Modifizierung der Unterbrechungsprioritäten sowie des Codes, zu dem sie gehören. Die E/A-Vorbereitung gestattet diese Zuordnungsfunktion durch Programme auszuführen, auch während andere Programme laufen. Bisher wurde diese Funktion in Maschinenteile eingebaut, und zu ihrer Änderung sind technische Schritte notwendig. Der Betrieb des Systems muß gestoppt werden, während die Änderung durchgeführt wird. E/A -Vorbereitung ist eine zusätzliche Möglichkeit, die den Unterbrechungsmechanismus der vorliegenden Erfindung, wie er im IBM-System 7 verwirklicht ist, weiter verbessert. Das Modifizierfeld ist Null und das 16 Bits große Datenbyte, welches übertragen wird, hat folgende Bedeutung: I / O preparation (Fig. 4 c) - The command is executed in exactly the same way as the write command described above. The parameters given to the unit by the command are used by it to determine whether an interruption is permitted and at what level and with what divergence. The function taken over by this command allows a quick dynamic assignment and modification of the interrupt priorities as well as the code to which they belong. I / O preparation allows programs to perform this assignment function while other programs are running. Previously, this function was built into machine parts, and technical steps are required to change it. The operation of the system must be stopped while the change is being made. I / O preparation is an additional facility that further enhances the interrupt mechanism of the present invention as embodied in the IBM System 7. The modification field is zero and the 16-bit data byte that is transmitted has the following meaning:
LYL — Vier Bits (Bits 0 bis 3), welche die Prioritätsunterbrechungsstufe angeben, die der Unterbrechungsquelle zugeordnet ist. Da angenommen wird, daß der hier beschriebene Prozessor nur vier Prioritätsstufen (0 bis 3) unterstützt, werden nur die Bitpositionen 2 und 3 dieses Feldes benutzt, d. h. der direkte Steuerkanal ignoriert die Bits 0 und 1, die Null sein müssen. LYL - Four bits (bits 0-3) indicating the priority interrupt level assigned to the interrupt source. Since it is assumed that the processor described here only supports four priority levels (0 to 3), only bit positions 2 and 3 of this field are used, ie the direct control channel ignores bits 0 and 1, which must be zero.
DlSP — Vier Bits (Bits 4 bis 7), die eine von 16 eindeutigen Verschiebungen für jede Unterbrechungsstufe angeben. Der Prozessor benutzt dieses Feld zur Lokalisierung der zugehörigen Verzweigungsadresse, um zur vorgespeicherten Bedienungsroutine Bezug zu nehmen. Die Bits 8 bis 14 sind Null. DISP - Four bits (bits 4 through 7) indicating one of 16 unique shifts for each interrupt level. The processor uses this field to locate the associated branch address in order to refer to the pre-stored service routine. Bits 8-14 are zero.
/ — Das /-Bit (Bit 15) übernimmt die Unterbrechungssteuerung über die Unterbrechungsebene (d. h. eine Pro-Einheiten-Maske). Ein Einerbit gestattet eine Unterbrechung. Eine durch die E/A -Vorbereitungsfunktion gesteuerte Untcrbrechungsquellc darf keine Unterbrechung anfordern, wenn ihr /-Bit auf Null steht. Wenn ein eine Unterbrechung verursachendes Kommando an eine Unterbrechungsquelle geleitet wird, deren /-Bit auf NuI! steht, wird der Bedingungscode 1 gesetzt und eine Kommandorückweisung im DSW gespeichert (oder im CSW, wenn sich das Gerät im Steuermodul befindet). Das Kommando wird nicht ausgeführt./ - The / bit (bit 15) takes over the interrupt control via the interrupt level (ie a per unit mask). A one bit allows an interruption. An interrupt source controlled by the I / O preparation function must not request an interrupt if its / bit is at zero. If a command causing an interruption is sent to an interrupt source whose / bit is set to NuI! condition code 1 is set and a command rejection is stored in the DSW (or in the CSW, if the device is in the control module). The command is not executed.
Wenn die E/A -Vorbereitungsoperation erfolgreich ausgeführt wird, wird der Bedingungscode 0 gesetzt. Wenn ein Fehler festgestellt wird, wird der Bedingungscode 1 gesetzt und der Status im DSW (oder CSW) gespeichert. Wenn die adressierte Unterbrechungsquelle belegt ist oder ein Unterbrechungszustand aussteht, wird der Bedingungscode 2 gesetzt. Wenn das adressierte Modul nicht angeschlossen ist, wird der Bedingungscode 3 gesetzt. Die an einer Unterbrechungsquelle gespeicherte Vorbereitungsinformation wird nur bei der Systemrückstellung zurückgestellt.If the preparation I / O operation is successful, condition code 0 is set. If an error is detected, condition code 1 is set and the status is stored in the DSW (or CSW). If the addressed interrupt source is busy or an interrupt status is pending, condition code 2 is set. If the addressed module is not connected, condition code 3 is set. The preparation information stored in an interruption source is only reset when the system is reset.
Stopp E/A — Dieses Kommando setzt das adressierte E/A -Modul zurück. Das Kommando Stopp E/A mit einer Moduladresje 0 löst eine Programmprü-Stop I / O - This command resets the addressed I / O module. The stop I / O command with a module address of 0 triggers a program check
ao fungsunterbrechung im Prozessor aus. Auf Fühlern basierende Ausgabepunkte und Vorbereitungsfelder werden nicht zurückgestellt. Andere Steuerungen, der Status und laufende Unterbrechungen werden zurückgestellt. Wenn das Modul vorhanden ist, wird es zurückgestellt und der Bedingungscode 0 wird gesetzt. Wenn das Modul nicht angeschlossen ist, wird der Bedingungscode 3 gesetzt. Es tritt kein anderer Bedingungscode auf. Wenn eine Einheit eine Unterbrechung im Prozessor-Unterbrechungspuffer ausstehen hat, wird diese Unterbrechung durch das Kommando Stopp E/A nicht zurückgestellt. Daher kann eine Unterbrechung von einer Quelle, die zurückgestellt wurde, tatsächlich dem Prozessor präsentiert werden.ao interruption in the processor. Probe-based output points and preparation fields are not reset. Other controls, the status and ongoing interruptions are postponed. If the module is present, it is deferred and condition code 0 is set. If the module is not connected, condition code 3 is set. No other condition code occurs. If a unit has an interrupt pending in the processor interrupt buffer, the stop I / O command does not reset that interrupt. Hence, an interrupt from a source that has been deferred can actually be presented to the processor.
Unterbrechung Setzen — Dieses Kommando wird vom Prozessor abgegeben und liefert die Information, die zum Setzen einer Prioritätsunterbrechung am Prozessor oder einer Achtungsunterbrechung an einer anderen CPU notwendig ist. Das Modul Adreßfeld muß das Steuermodul angeben. Wenn das Modul Adreßfeld von Null verschieden ist, wird eine Programmunterbrechungsprüfung erzeugt. Das angegebene Register muß Daten in einem Format enthalten, in welchem die Bits 0 bis 3 die Stufe angeben und Bit 15 ein ».4 «-Bit ist. Das /1-Bit leitet die Unterbrechung an den Prozessor oder die andere CPU. Die Bits 4 bis 14 sind reserviert und müssen Null sein.Set Interrupt - This command is issued by the processor and provides the information required to set a priority interrupt on the processor or an attention interrupt on another CPU. The module address field must indicate the control module. If the module address field is nonzero, an interrupt check is generated. The specified register must contain data in a format in which bits 0 to 3 indicate the level and bit 15 is a ".4" bit. The / 1 bit directs the interrupt to the processor or the other CPU. Bits 4 to 14 are reserved and must be zero.
Wenn das A -Bit gleich Null ist, hat das LKL-FeIdIf the A bit is equal to zero, the LKL field
5" dieselbe Bedeutung wie im E/A -Vorbereitungskommando, und die Unterbrechung wird an den Prozessor geleitet. Das LFL-FeId wird an den direkten Steuerkanal gesendet. Wenn der direkte Steuerkanal diese Unterbrechung erfolgreich in den Unterbrechungspuffermechanismus eingibt, wird der Bedingungscode 2 gesetzt. Wenn die geforderte Stufe bereits ein Programm gesetzt hat, wird der Bedingungscode 2 gesetzt. Die Bedingungscodes 1 und 3 werden in diesem Fall nicht benutzt. Diese Form des Unteren brechungssetzkommandos wird für die Programmverteilung im Prozessor benutzt.5 "has the same meaning as in the I / O prepare command, and the interrupt is passed to the processor. The LFL field is sent to the direct control channel. If the direct control channel successfully enters this interrupt into the interrupt buffer mechanism, condition code 2 is set. If the required level has already set a program, condition code 2 is set, condition codes 1 and 3 are not used in this case.This form of the lower interrupt setting command is used for program distribution in the processor.
Wenn das /1-Bit gleich Eins ist, wird die Unterbrechung an die andere CPU geleitet. In diesem Fall wird mit dem Unterbrechungssetzkommando die Bcdienung von einem anderen Prozessor angefordert. Der fremde Anschluß erzeugt eine Unterbrechung für die fremde Einheit, und das entsprechende Anschlußstatusbit wird auf Achtung gesetzt. Wenn dasWhen the / 1 bit is equal to one, the break is routed to the other CPU. In this case service is requested from another processor with the interrupt setting command. The foreign connection generates an interrupt for the foreign unit and the corresponding connection status bit is set to attention. If that
Achtungsbit erfolgreich aktiviert wird, wird der Bedingungscode 0 gesetzt. Wenn das Achtungsbit bereits gesetzt ist, wird der Bedingungscode 2 gesetzt. Wenn die Fremdeinheit nicht verfügbar oder gar nicht in der Syiitemkonfiguration vorhanden ist, wird der Bedingungscode 3 gesetzt. In diesem Fall des Unterbrechungssetzkommandos wird der Bedingungscode 1 nicht gesetzt. Attention bit is activated successfully, becomes the condition code 0 set. If the attention bit is already set, condition code 2 is set. if the foreign unit is not available or does not exist in the syiitem configuration, the condition code 3 set. In this case of the interrupt setting command, condition code 1 is not set.
IX — Prioritätsunterbrechungen ! IX - Priority Interrupts !
Wie in der Einleitung bereits erwähnt wurde, ist das Verfahren, durch welches das Echtzeilsystem die Prioritätsunterbrechungen behandelt, von entscheidender Bedeutung für seinen schließlichen Erfolg. Für den Prioritätsunterbrechungsmechanismus der beschriebenen Datenverarbeitungsanlage gibt es viele Punkte, die anschließend aufgeführt sind:As already mentioned in the introduction, the process by which the real-line system generates the Handles priority interrupts, which are vital to its eventual success. There are many for the priority interrupt mechanism of the data processing system described Points listed below:
A. E/A -Vorbereitung: Die Operation dieses Kommandos wurde bereits im Abschnitt VIII beschrieben, so Sein Beitrag zum Unterbrechungsmechanismus besteht in der Erstellung der dynamischen Zuordnung und Modifikation von Stufen und Unterstufen für Unterbrechungsquellen und darin, daß die Manipulation reiner Einheitenmasken ermöglicht wird.A. I / O preparation: The operation of this command has already been described in Section VIII, so its contribution to the interrupt mechanism consists in the creation of the dynamic assignment and modification of levels and sub-levels for interrupt sources and in that the manipulation of pure unit masks is made possible.
B. Das ebenfalls im Abschnitt VIII beschriebene Unterbrechungssetzkommando gestattet die Programmsteuerung der Aufgabenverteilung oder Unterroutinen an vorgeschriebenen Stufen. Somit stehen dieselben Prioritätsanordnungen für extern erzeugte Unterbrechungen und das Programm selbst zur Verfügung. Dadurch wird ein hoher Grad von Flexibilität in der Verteilung neuer Aufgaben gewährleistet.B. The interrupt set command also described in Section VIII allows program control the distribution of tasks or subroutines at prescribed levels. So stand the same priority arrangements for externally generated interrupts and the program itself are available. This ensures a high degree of flexibility in the distribution of new tasks.
C. Das Ausführungsbeispiel umfaßt ein mehrstufiges vorgreifendes Prioritätsunterbrechungssystem. Die für diese Beschreibung angenommenen Stufen sind mit 0, 1, 2 und 3 numeriert. Je kleiner die Stufenzahl, desto höher die Priorität. Wenn der Prozessor nicht auf einer dieser Stufen arbeitet, befindet er sich im Wartezustand. Ein Unterbrechungsmaskenregister IMR (siehe Fig. 3) ist im System vorgesehen mit einer Bitpoüition für jede der vier Unterbrechungsstufen (siehe Beschreibung von PNN, POM, PSLM im Abschnitt VII). Der Inhalt dieses Maskenregisters kann durch Programme manipuliert werden. Ein Einerbit in einer gegebenen Stufenposition im Maskenregister gestattet eine Unterbrechung auf dieser Stufe. Ein Nullbit verhindert die Unterbrechung. Somit hat das Programm die Möglichkeit, Unterbrechungen auf einer Stufenbasis zu steuern. Außerdem ist ein summarisches Maskenbit im IMR vorgesehen, welches auch durch das Programm manipuliert werden kann und bei Nullstellung alle Unterbrechungen verhindert. Ein Einerbit in dieser summarischen Maskenbitstellung gestattet die Unterbrechungen, die wiederum durch das Maskenregister eingeschaltet werden. Der für die Bestimmung der Priorität verwendete Algorithmus gestattet die Unterbrechung auf der laufenden Stufe durch eine Stufe, die eine höhere Priorität hat, vorausgesetzt, daß diese neue Stufe durch das summarische Maskenbit und das Maskenregisler eingeschaltet wird. Wenn also z. B. die Stufe 2 arbeitet, kann sie durch die Stufe 1 oder die Stufe 0 unterbrochen werden, jedoch nicht durch die Stufe 3 oder eine neue Unterbrechung auf der Stufe 2. Die auf einer gegebenen Stufe laufende Routine wird abgeschlossen, wenn sie nicht durch höhere Unterbrechungsstufen abgebrochen wird. Eine Routine ist abgeschlossen, wenn der Programmierer die Stufenausgangsinstruktion (siehe Abschnitt VII) abgibt.Wenn diese Instruktion auftritt, stellt der Prozessor fest, ob niedrigere Stufen bereits ausstehen, und wenn das nicht der Fall ist, geht er in den Wartezusland und wartet auf neue Unterbrechungen. Wenn eine Routine einer niedrigeren Stufe ausgeführt und durch eine Routine einer höheren Stufe abgebrochen wird, wird ihr Status im System festgehalten, und wenn die Ausführung der Routine der höheren Stufe abgeschlossen ist, kehrt das System zur niedrigeren Stufe am Unterbrechungspunkt zurück und läuft dann auf der niedrigeren Stufe weiter bis zur Vollendung, wenn keine neuen Unterbrechungen auftreten.C. The embodiment includes a multi-level anticipatory priority interruption system. The stages assumed for this description are numbered 0, 1, 2 and 3. The smaller the number of levels, the higher the priority. If the processor is not working at one of these levels, it is in a wait state. An interrupt mask register IMR (see Fig. 3) is provided in the system with a bit position for each of the four interrupt levels (see description of PNN, POM, PSLM in Section VII). The content of this mask register can be manipulated by programs. A ones bit in a given stage position in the mask register allows an interrupt at that stage. A zero bit prevents the interruption. Thus the program has the ability to control interruptions on a level basis. In addition, a summary mask bit is provided in the IMR, which can also be manipulated by the program and prevents all interruptions when set to zero. A one-bit in this summary mask bit position permits the interruptions, which in turn are activated by the mask register. The algorithm used to determine the priority allows the current stage to be interrupted by a stage which has a higher priority, provided that this new stage is switched on by the summary mask bit and the mask register. So if z. For example, if level 2 is operating, it can be interrupted by level 1 or level 0, but not by level 3 or a new interruption at level 2. The routine running at a given level is terminated if not by higher ones Interruption levels is canceled. A routine is completed when the programmer issues the level exit instruction (see Section VII). When this instruction occurs, the processor determines if lower levels are pending, and if not, it goes to the wait country and waits for new ones Interruptions. When a lower level routine is executed and aborted by a higher level routine, its status is recorded in the system, and when the higher level routine is completed the system returns to the lower level at the breakpoint and then runs on the lower level to completion if no new interruptions occur.
D. Für jede der vier Stufen sind 16 Unterstufen bezeichnet. Diese sind mit Null bis F numeriert. Zwischen den Unterstufen einer gegebenen Stufe bestehen keine zwangsläufigen relativen Prioritätsunterschiede. Mit der Unterstufeninformation wird die Ur.terbrechungsquelle für die Maschinenteile bezeichnet, um die richtige maschinengestützte Verbindung zur Bedienungsroutine herstellen zu können (siehe hierzu den nachfolgenden Abschnitt über Automatische Unterstufenverzweigung).D. 16 sub-levels are designated for each of the four levels. These are numbered from zero to F. There are no relative priority inevitable differences between the sub-stages a r given stage. The sub-level information is used to designate the original source of interruption for the machine parts in order to be able to establish the correct machine-supported connection to the operating routine (see the following section on automatic sub-level branching).
E. Unterbrechungspräsentation: Der direkte Steuerkanal (siehe besonders F i g. 1 und 6) enthält den Unterbrechungspräsentationsmechanismus. Für jede der vier Stufen ist hier ein Unterbrechungspufferregister und eine Unterbrechungsanforderungsverriegelung vorgesehen. Alle Prioritätsunterbrechungen müssen durch diesen Puffer laufen. Wenn eine Unterbrechungsquelle, wie z. B. die in Fig. 7 gezeigte Einheit, eine Unterbrechungsanforderung abzugeben wünscht, nimmt sie mit dem direkten Stcuerkanal entweder direkt oder über die interne Schnittstelle der F i g. 7 Verbindung auf und teilt dem Kanal ihre Unterbrechungsstufe mit. Wenn der dieser Stufe entsprechende Puffer bereits voll ist, akzeptiert der Kanal die Stufeninformation und fordert zusätzliche Information von der Einheit an, welche dann in den Puffer gesetzt wird. Zu dieser Zeit wird der Puffer voll, und die diesem Puffer entsprechende Unterbrechungsanforderungsverriegelung wird gesetzt. Die im Puffer gehaltene Information besteht aus dei Unterstufe, der Einheitenadresse, der Moduladresse und einem summarischen Statusbit, welches spätei beschrieben wird.E. Interrupt Presentation: The direct control channel (see particularly Figs. 1 and 6) contains the Interrupt presentation mechanism. There is an interrupt buffer register for each of the four stages and an interrupt request lock is provided. All priority breaks have to run through this buffer. When a source of interruption such as B. the unit shown in Fig. 7, wishes to issue an interrupt request, takes it with the direct control channel either directly or via the internal interface of FIG. 7 connection and shares theirs with the channel Interruption level with. If the buffer corresponding to this level is already full, the accepts Channel the level information and request additional information from the unit, which will then be included in the Buffer is set. At this time the buffer becomes full and the interrupt request latch corresponding to that buffer becomes full is set. The information held in the buffer consists of the sub-level, the unit address and the module address and a summary status bit, which is described later.
Wenn zum Zeitpunkt einer Anforderung dei Puffer für die jeweilige Stufe bereits voll ist, wird die Anforderung gestapelt. Der unterbrechenden Quelle wird durch Setzen ihrer Stapelverriegelung (siehe F i g. 7) mitgeteilt, daß sie ihre Unterbrechungsbedingung aufrechterhalten muß, bis sie Instruktioner erhält, diese wieder über die direkte Kanalsteuerunj zu präsentieren. Das eine Erneuerung der Präsenta tion der gestapelten Unterbrechungsanforderunger für eine gegebene Stufe begleitende Signal wird auto matisch durch den direkten Steuerkanal abgegeben wenn der Puffer für die betreffende Stufe während dei Annahme der jeweiligen Unterbrechung durch der Prozessor leer wird. Die vier Unterbrechungsanforde· rungsriegel (in F i g. 6 dargestellt), die zu den viei Puffern gehören, bilden eine Gruppe von den dre Riegelgruppen, die den Prioritätsunterbrechungsme chanismus im System steuern. Vom Programm ge setzte Unterbrechungen und von einem anderen Pro zessor ankommende Unterbrechungen werden in ahn licher Weise behandelt. Für vom Programm gesetzt!If the buffer for the respective stage is already full at the time of a request, the Requirement stacked. The interrupting source is locked by setting its stack lock (see F i g. 7) advised that she must maintain her interruption condition until she is instructor receives to present this again via the direct Kanalsteuerunj. The one renewal of the present tion of the stacked interrupt request for a given level accompanying signal becomes auto automatically delivered through the direct control channel if the buffer for the relevant stage during dei Acceptance of the respective interruption by the processor becomes empty. The four interruption requests Locking bars (shown in Fig. 6) belonging to the four buffers form a group of the three Bolt groups, which the priority interruption me control the mechanism in the system. Interruptions set by the program and another pro Incoming interrupts from the processor are handled in a similar way. For put on by the program!
609 512/25609 512/25
Unterbrechungen ist jedoch ein in F i g. 6 gezeigter Unterbrechungssatz-Vorpuffer für den Fall vorgesehen, daß der Puffer für die gewählte Stufe bereits voll ist. Dadurch wird sichergestellt, daß zumindestens eine vom Programm gesetzte Unterbrechung auf der vorgeschriebenen Stufe auftritt nach der Abgabe eines Unterbrechungssetzkommandos. Der Prozessor prüft die vier Unterbrechungsanforderungsriegel, die von dem direkten Steuerkanal gesendet werden vor dem Ende einer jeden Instruktion und im Wartezustand kontinuierlich. Der laufende Unterbrechungszustand des Prozessors wird in einer zweiten Gruppe von vier Riegeln festgehalten, die in F i g. 6 als die laufenden Stufenriegel gezeigt sind. Nur einer dieserHowever, interruption is one shown in FIG. 6 provided interrupt block pre-buffer for the case that the buffer for the selected level is already full. This ensures that at least an interruption set by the program occurs at the prescribed level after the delivery an interruption setting command. The processor examines the four interrupt request bars that are sent from the direct control channel before the end of each instruction and while waiting continually. The current interrupt state of the processor is in a second group held in place by four bars, which are shown in FIG. 6 are shown as the running step bars. Just one of these
Riegel für die Stufe X und der laufende Stufenriegel gesetzt.Bolt for level X and the current step bolt set.
F. Statusrettung. Bestimmte Teile eines Zentralprozessors können von dem Programm erkannt werden, welches in diesem Prozessor arbeitet. DieseTeile werden als programmadressierbare Teile bezeichnet. Typischerweise bestehen sie aus den Registern, die das Programm manipulieren oder benutzen kann, und Bedingungen, die das Programm erstellen oder prüfen kann. Eines der wichtigsten Register zählt die Instruktionen, durch welche das Programm bereits gelaufen ist, und wird allgemein Instruktionsadreßregister genannt. Andere Teile des Prozessors können nicht vom Pogramm adressiert werden und enthaltenF. Status rescue. Certain parts of a central processor can be recognized by the program, which works in this processor. These parts are called the program addressable parts. Typically consist of the registers that the program can manipulate or use, and conditions, that the program can create or check. One of the most important registers is the instructions through which the program has already run, and generally becomes the instruction address register called. Other parts of the processor cannot be addressed by the program and contain
Rieeel kann zu einem "gegebenen Zeitpunkt gesetzt 15 Spezi al arbeitsregister, die von Maschinenelementen sein Wenn keiner der Riegel gesetzt ist, befindet sich zwar benutzt werden, zu denen das Programm jedochAt a given point in time, Rieeel can set 15 special work registers from machine elements If none of the latches is set, the program is, however, to be used
- -■ - - · "· ' keinen Zugriff hat. Solche Register stehen der Rechen-- - ■ - - · "· 'has no access. Such registers are available to the computing
und Logikeinheit zur Verfügung und einer großen An-and logic unit available and a large number of
g gg gg gg g
zahl von Steuer- und Takt einrichtungen. Wenn einenumber of control and clock devices. When a
bi d W dbi d W d
das System im Wartezustand. Die laufenden Stufenriegel zeigen nicht an, welche Stufe des Prozessorsthe system is waiting. The running level bars do not indicate which level of the processor
tatsächlich zu einem gegebenen Zeitpunkt arbeitet. _,,.,_-■„, a actually works at any given point in time. _ ,,., _- ■ ", a
Hereinkommende Unterbrechungsanforderungen wer- 20 Unterbrechung auftritt, wurde bisher der Wer* desIncoming interruption requests were previously the person
den durch den Prozessor mit dem summarischen Instruktionsadreßregisters durch Maschinenteile ge-which is generated by the processor with the summary instruction address register through machine parts
Maskenbit mit der einzelnen Stufenmaske im Mas- speichert. Das Programm muß dann den Inhalt allerMask bit with the individual level mask in the mask. The program must then contain the content of all
kcnrcgister und mit dem Wert des laufenden Stufen- von ihm adressierbaren Register und Bedingungenkcnrcgister and with the value of the current level - it can address registers and conditions
riegels verglichen. Wenn die Unterbrechung durch speichern. Es muß dann seine eigenen Werte ladenbars compared. When the interruption is due to save. It then has to load its own values
die Maskierungseinrichtungen eingeschaltet ist und 25 und zum Ende weiterlaufen, wo dann die unterbroche-the masking devices is switched on and 25 and continue to the end, where the interrupted
sie eine höhere Priorität ha als die laufende Stufe, nen Werte zurückgespeichert werden müssen. Diesethey have a higher priority than the current level, where values have to be restored. These
dann bewirkt die Prioritätsstufensteuerlogik eine Stu- Rettung und Rückspeicherung des vom Programmthen the priority level control logic causes a study and restoring of the program
fenumschaltung auf die neue Stufe am Ende der lau- adressierbaren Abschnittes der Zentraleinheit stelltswitch to the new level at the end of the addressable section of the central unit
fenden Instruktion oder unmittelbar wenn sich das einen beträchtlichen Zeitausfall dar, der einer derat the end of the instruction or immediately if there is a considerable loss of time, which is one of the
System im Wartezustand befindet. Die dritte erwähnte 30 Komponenten in einer gesamten Unterbrechung ist,System is waiting. The third mentioned 30 components in a total interruption is
Gruppe aus vier Riegeln besteht aus den in F i g. 6 durch die vorliegende Erfindung aber vermiedenThe group of four bars consists of those shown in FIG. 6 avoided by the present invention
gezeigten Prozeß-Ein-Riegeln. Sie zeigen die Stufen wird.process-locking-in process shown. They will show the stages.
an, auf denen der Prozessor entweder gegenwärtig ar- Die Lösung dieses Problems durch die vorliegende beitet oder die auf Grund der Ausführung einer Un- Erfindung besteht darin, die vom Programm adresterbrechung mit höherer Priorität abgebrochen wur- 35 sierbaren Teile der Zentraleinheit in Maschineneleden. Um z. B. zu verhindern, daß die Stufe 2 die menten zu duplizieren; daher sind für jede Unterbre-Stufe 2 unterbricht, wird keine neue Anforderung für chungsstufe ein Akkumulator, sieben Indexregister, die Stufe angenommen, für welche der Prozeß-Ein- ein Instruktionsadreßregister und ein Anzeigersatz Riegel bereits gesetzt ist. vorgesehen. Die Statusumschaltung bei einer UnterWenn durch den Prozessor eine neue Unterbre- 40 brechung besteht dann in einer einfachen Umschalchung auf der Stufe X akzeptiert wird, wird die lau- tung auf die entsprechende Bank von durch das Profende AT-Stufenverriegelung eingeschaltet und die Pro- gramm adressierbaren Daten. Dadurch ist eine sehr zeß-Ein-Verriegelung für die .Y-Stufe ausgeschaltet. schnelle Statusumschaltung auf dem System möglich Zu diesem Zeitpunkt wird der Anforderungsriegel im und ein hohes Maß von Integrität insofern, als die direkten Steuerkanal für die Z-Stufe zurückgestellt 45 Statusinformation gerettet und durch Maschinenteile und der Puffer geleert. Diese Bedingung wird allen wieder zurückgespeichert wird und ein Programm Unterbrechungsquell°n mitgeteilt, die auf der ΛΓ-Stufe nicht vom anderen abhängig ist, um seinen eigenen gestapelt sind, und dann die erste Unterbrechungs- Status zurückzuspeichern und zu retten, quelle akzeptiert, die den Unterbrechungspuffer be- Während des Empfangs einer Unterbrechung leitet legen kann. Diese Operation ist in der gleichzeitig lau- 50 das System nicht nur den Status und lädt ihn, sonfenden Anmeldung mit der Überschrift »Interface dem führt auch den neuen Status ein, der sich auf die Multiplexer« von Patrick und Rick ar d be- laufende Unterbrechung bezieht. Dieser Status wird schrieben. Andere Anforderungen auf derselben Stufe automaisch den Routinen zur Verfügung gestellt, ar bilden wieder einen Stapel. Wenn der auf der Stufe X welchen eine Unterbrechung vorgenommen wird, und arbeitende Prozessor durch eine höhere Prioritäts- 55 spart die zeitaufwendige Anforderung des Status von stufe unterbrochen wird, dann wird die Prozeß-Ein- den E/A -Einheiten. Die Einheitenadresse und die Verriegelung eingeschaltet gelassen, die laufende Stufe Moduladresse der Unterstufe werden in den Akkuschaltet jedoch um und gibt die Ausführung auf der mulator der Hauptstufe geladen, welcher die Unterneuen höheren Stufe wieder. Wenn diese Ausführung brechung zugestanden wurde, und das S-Bit wird ir beendet ist, tastet der Prozessor die Prozeß-Ein-Riegel 60 den Ubertragungsanzeiger geladen. Das S-Bit ist eir ab und stellt fest, daß der Prozeß-Ein-Riegel der aus einem Bit bestehender summarischer Statusaa Stufe X gesetzt ist und damit anzeigt, daß die Stufe X zeiger, der in der in F i g. 7 gezeigten Einheit durcl bereits abgebrochen wurde, die Ausführung jedoch Überwachung aller Einheitenstatusanzeiger entwickel schon begonnen hat. Wenn weitere Unterbrechungen wird, die im Statusregister gespeichert sind. Wenn dai mit höherer Priorität fehlen, nimmt der Prozessor die 65 S-Bit auf Null steht, ist die Unterbrechung auf eini Arbeit auf der Stufe X an dem Punkt wieder auf, an normale Endbedinung an der Unterbrechungseinhei dem sie abgebrochen wurde, und führt sie zur Voll- zurückzuführen. Keine weitere Statusinformation is endune. An diesem Punkt werden der Prozeß-Ein- dann erforderlich und die Einheit steht direkt für ein.on which the processor is either currently working. The solution to this problem by the present invention or which is based on the execution of an invention consists in the parts of the central processing unit which can be aborted by the program adrest break with higher priority in machine items. To z. B. to prevent stage 2 from duplicating the ments; therefore for each interrupt level 2 are interrupted, no new request is accepted for an accumulator, seven index registers, the level for which the process input, an instruction address register and an indicator set latch are already set. intended. If the processor accepts a new interruption in the form of a simple changeover to level X , the volume on the corresponding bank of AT level locks is switched on by the Profende and the program addressable Data. As a result, a very zeß-on locking for the .Y stage is switched off. Fast status changeover on the system possible At this point in time, the request bar is in the and a high degree of integrity insofar as the direct control channel for the Z level is deferred 45 status information is saved and emptied by machine parts and the buffer. This condition is restored to all and a program is notified of interrupt sources that are not dependent on the other at the ΛΓ level to stack its own, and then to restore and save the first interrupt status, which accepts the source Interrupt buffer can be placed while an interrupt is being received. At the same time, this operation is not only the status and the system loads it, but the login with the heading "Interface also introduces the new status that affects the multiplexers" from Patrick and Rick ard running interruption relates. This status is written. Other requests at the same level are automatically made available to the routines, ar again forming a stack. If the processor operating at level X which is interrupted and working with a higher priority 55 saves the time-consuming request for the status of level, then the process ons becomes the I / O units. The unit address and the lock are left on, but the current level module address of the lower level is switched to the battery and the execution is loaded on the mulator of the main level, which reproduces the sub-new higher level. When this execution break has been allowed and the S bit is terminated, the processor scans the process-on-bar 60 to load the transfer indicator. The S bit is off and determines that the process-on-latch of the one-bit summary status stage X is set and thus indicates that the stage X pointer, which is shown in the in FIG. 7 has already been canceled, but the execution of monitoring of all device status indicators has already started. If there are more interruptions that are stored in the status register. If dai missing with higher priority, the processor takes the 65 S-bit is at zero, the interruption on eini work at the level X at the point is returned to, where it was broken off at normal Endbedinung at the Unterbrechungseinhei, and supplies it to the Fully traced back. No further status information is endune. At this point the process inputs are required and the unit directly stands for a.
neue Instruktion zur Verfügung. Wenn das 5-Bit auf Eins stand, dann ist eine Fehler- oder Ausnahmebedingung aufgetreten und das Programm muß dann eine genaue Statusbeschreibung erhalten, indem es eine Statuspräsentation von der Einheit fordert. Das 5-Bit kann durch eine 400 Nanosekunden dauernde Instruktion geprüft werden und trägt zur schnellen Ansprache des Systems bei, indem es die Möglichkeit im allgemeinen Fall schafft, die Anforderung des Status und seine nachfolgende Analyse durch diese eine Instruktion zu ersetzen, um festzustellen, daß eine normale Endbedingung aufgetreten ist.new instruction available. If the 5-bit was at one, then there is an error or exception condition occurred and the program must then get a precise status description by adding requests a status presentation from the unit. The 5-bit can last through 400 nanoseconds Instruction are checked and contributes to the rapid response of the system by giving the possibility in the general case creates the requirement of the status and its subsequent analysis by this one Replace instruction to determine that a normal end condition has occurred.
G. Automatische Unterstufenverzweigung. Die gesamten, mit der Unterbrechungsumschaltung verbundenen organisatorischen Vorgänge lassen sich durch eine automatische Verzweigung auf der Unterstufe weiter reduzieren. Aus dem in F i g. 5 gezeigten Diagramm der Prozessorspeicherzuordnung läßt sich entnehmen., daß die Stelle OS-OB hexadezimal Tabellenhinweise für die Startinstruktionsadreßtabellen (SIA-Tabellen) für jede der vier Stufen enthalten. Der Inhalt einer jeden dieser festen Adressen zeigt auf eine Tabelle mit Startinstruktionsadressen für die verschiedenen UntCTVtufenwerte innerhalb de· Stufe. Die Unterstufe kann daher als ein Verschiebungswert angesehen werden, der zu der Basis addiert wird, die durch den Inhalt der festen Steile geliefert wird. Wenn eine Unterbrechung auf der Stufe X Unterstufe Y auftritt, adressiert der Prozessor bei der Behandlung dieser Unterbrechung eine der vier festen Stellen, die der Stufe X entspre< cn. Er addiert den Wert Y zu dieser Adresse und adressiert die entsprechende Kombination aus Stufe und Unterstufe in der zugehörigen SIA-Liste der Stufentabelle. Die aus diesem Speicherzugriff gewonnenen Daten werden in das Instruktionsadreßregistcr gdadcn und bilden die Adresse der ersten Instruktion derBcdicnungsrouiiric für dieStufeA' Unterstufe Y. Hier nimmt wieder eine Maschinenfunktion die Stelle (!er J'rograrnmanalyse ein und sorgt für eine schnelle Abwicklung der Unterbrechung, wodurch die Ansprache des Systems weiter verbessert wird. Die Abkürzung OlA in Fig. 5 bedeutet Alte Instruktionsadressc.G. Automatic sub-stage branching. The entire organizational processes associated with the interrupt switchover can be further reduced by automatic branching on the lower level. From the in F i g. 5 shows the processor memory allocation diagram, that the OS-OB hexadecimal point contains table references for the start instruction address tables (SIA tables) for each of the four levels. The content of each of these fixed addresses points to a table with start instruction addresses for the various sub-CT level values within the level. The sub-level can therefore be viewed as an offset value added to the base provided by the contents of the fixed part. If an interrupt occurs at level X, lower level Y , the processor addresses one of the four fixed locations which correspond to level X when handling this interrupt. It adds the value Y to this address and addresses the corresponding combination of level and sub-level in the associated SIA list in the level table. The data obtained from this memory access are stored in the instruction address register and form the address of the first instruction in the instruction routine for level A 'sub-level Y. Here again, a machine function takes the place (! Er J'rograrnmanalyse and ensures that the interruption is processed quickly, which means that the The abbreviation OlA in Fig. 5 means old instruction addressc.
Die Kombination mehrerer Register pro Unterbrechungsstufe, die vorgesehene Bezeichnung der Unterbrechungsqucllc, des summarischen Status und die automatische Unterstufenverzweigung gestatten eine Statusumschaltung innerhalb von 800 Nanosekunden zwischen dem Ende der Unterbrechung von der Instruktion und em Anfang der Unterbrechung zur Instruktion. Die definierte Lage im Speicher für Unterbrechungszwecke ist weiter unten genauer beschrieben. The combination of several registers per interrupt level, the intended designation of the interrupt qucllc, of the summary status and the automatic sub-level branching allow a Status change within 800 nanoseconds between the end of the interruption of the instruction and at the beginning of the interruption for instruction. The defined position in the memory for interruption purposes is described in more detail below.
Wie bereits erwähnt wurde, wird auf die Speicheradressen in hexadezimaler Notierung Bezug genommen. Die Adressen 2 bis 7 sind in dem in Fi g. 5 gezeigten Beispiel nicht zugeordnet, die Stellen 0 und 1 sind aber für die ncucStartinstruktion reserviert. Eine erzwungene Verzweigung erfolgt zu dieser Adresse, nachdem act Maschinenteil des Anfangsladeprogramms IPL abgelaufen i-.t. Die Stellen OS, O9, OA und OB enthalten die Hinweise für die Startinstruktionsadresse auf die Stufen 0 bis 3. Diese Hinweise sind die Basisadressen der Stufcnvcrschiebungstabellen. Das erste Wort einer jeden Stufenverschiebungstabelle ist die Programmprüfung der alten Instruktionsadressc für diese Stufe PROGΟΙΑ. Die übrigen 16 Wörter sind die Startinstniktionsadressen für die Stufe X Verschiebung O bis Stufe X Verschiebung F. Die Tabelle braucht nur so lang zu sein, wie sie von cct Zuordnung der Verschiebungen gefordert wird. Die Speicherstellen OD bis OF enthalten entsprechend die Programmprüfung der Startinstruktionsadresse PROGSIA. die Leistung Thermo-Warnung-Startinstruktionsadresse PWKF1SY/! und die Maschinenprüfungs - Startinstruktionsadresse MCKSIA. Diese Adressen werden Klassenvektoren genannt und ίο sind die Adressen der ersten Instruktion in der entsprechenden Routine. Die Stellen 10 und 11 sind die alte Leistung/Thermo-Warnungs-Instruktionsadresse PWRFIOA und die alte Maschinenprüfungs-Instruktionsadresse MCKlOA. As already mentioned, the memory addresses are referred to in hexadecimal notation. The addresses 2 to 7 are in the in Fi g. 5 not assigned, but positions 0 and 1 are reserved for the ncuc start instruction. A forced branch is taken to this address after act machine part of the initial program load IPL expired i-.t. The positions OS, O9, OA and OB contain the notes for the start instruction address on levels 0 to 3. These notes are the base addresses of the level shift tables. The first word of every stage shift table is the program check of the old instruction address for this stage PROGΟΙΑ. The remaining 16 words are the start installation addresses for level X shift O to level X shift F. The table only needs to be as long as required by the cct assignment of shifts. The storage locations OD to OF accordingly contain the program check of the start instruction address PROGSIA. the power thermal warning start instruction address PWKF 1 SY /! and the machine test start instruction address MCKSIA. These addresses are called class vectors and ίο are the addresses of the first instruction in the corresponding routine. Positions 10 and 11 are the old power / thermal warning instruction address PWRFIOA and the old machine test instruction address MCKlOA.
X — KlassenunterbrechungenX - class breaks
Außer den vier Prioritätsunterbrechungsstufen sind im Prozessor drei Khssenunterbrechungen vorgesehen. Diese sind: Programmprüfung, Maschinen-In addition to the four priority interrupt levels, there are three required interrupts in the processor. These are: program check, machine
ao prüfung und Leistung/Thermo-Warnung. Diese Unterbrechungen können nicht ausgeschaltet werden. In jeder Unterbrechungsstufe ist eine Speicherstelle zum Speichern des IAR für den Fall einer Programmunterbrechunesprüfung vorgesehen. Daher können Programmprüfungsunterbrechungen auf jeder Stufe auftreten und bedient werden. Da die Maschinenprüfung und die Leistung Thermo-Warnungsunterbrechungen Bedinugungen sind, die in der ganzen Maschine auftreten können, werden aufeinanderfolgende Unterbrechungen in einer dieser beiden Klassen rekursiv behandelt. Extra test and performance / thermal warning. These interruptions cannot be turned off. A memory location is provided in each interrupt stage for storing the IAR in the event of a program interrupt check. Therefore, program test interruptions can occur and be serviced at any stage. Since machine testing and performance thermal warning interrupts are conditions that can occur throughout the machine, successive interrupts in either of these two classes are treated recursively.
Wenn eine Klassenunterbrechung vorgenommer wird, werden alle Prioritätsstufen durch die Maschine automatisch abgeschaltet und müssen auf Wunsch des Programms erneut eingeschaltet werden. Die Unterbrechungsmaske wird nicht verändert und die Prioritätsstufen durch das die POM- oder P.VM-Instruktion abgebende Programm neu eingeschaltet. Wenr eine Klassenunterbrechung auftritt, ist die Rettung von Registern mit Ausnahme des IAR Sache de; Programms. Bei Programmprüfungsunterbrechunger wird die Instruktion nicht ausgeführt und keines dei vom Programm adressierbaren internen Register de; Prozessors verändert.If a class break is made, all priority levels are automatically switched off by the machine and must be switched on again at the request of the program. The interrupt mask is not changed and the priority levels are reactivated by the program issuing the POM or P.VM instruction. If a class interruption occurs, the rescue of registers with the exception of the IAR is a matter of de; Program. If the program test is interrupted, the instruction is not executed and none of the internal registers addressable by the program de; Processor changed.
Durch eine Programmprüfungsunterbrechung wire die Adresse der Instruktion, die den Fehler verursachte, in der alten Instruktionsadresse für Programmprüfung dieser Stufe (z. B. in PROG IOA Stufe 0) gespeichert und die Programmprüfung-Startinstruktioiisadresse in das IAR geladen und die Ausführung begonnen. Eine Programmpriifung wird vorgenommen bei ungültigen ÖP-Codefunktionen unc Modifizierwerten, ungültigen Schiebezahlwerten unc wenn die passende Speichergröße durch Instruktions-As a result of a program test interruption, the address of the instruction which caused the error is stored in the old instruction address for program test of this level (e.g. in PROG IOA level 0) and the program test start instruction address is loaded into the IAR and execution commenced. A program check is carried out in the event of invalid PP code functions unc modification values, invalid shift number values unc if the appropriate memory size is
abruf oder Operandenzugriff überschritten wird.call or operand access is exceeded.
Wenn eine Maschinenprüfungsunterbrechung auftritt, ist die gerettete Instruktionsadresse die Adresse der Instruktion, die gerade ausgeführt wurde, als die Unterbrechung auftrat. Eine Maschinenprüfung triti bei Register- oder Speicherparitätsfehlern auf und be; Maschinenfehlern in den Steuerungen des Prozessors dem Kanal oder der Schnittstelle.When a machine test interrupt occurs, the instruction address saved is the address the instruction that was being executed when the interruption occurred. A machine test triti in case of register or memory parity errors on and be; Machine errors in the processor's controls the channel or the interface.
Bei einer LeistungThermo-Warnungsunterbrechung ist die gerettete Instruktionsadresse die Adresse der nächsten Instruktion. Leistung/Thermo-Warnungsunterbrechungen sind nur zwischen Instruktionen zulässig. Die Bedingung tritt auf, wenn die primäre Stromleistung anfängt auszufallen oder wennIn the event of a power thermal warning interruption, the saved instruction address is the address the next instruction. Performance / thermal alarm interrupts are only allowed between instructions. The condition occurs when or when the primary electrical power begins to fail
eine Überhitzungsbediügung im System auftritt. Eine ausreichende Voranzeige dieser Bedingungen ist vorgesehen, damiv das System abgeschaltet werden kann.an overheating condition occurs in the system. Sufficient advance notice of these conditions is provided, so that the system can be switched off.
XI — Arbeitsweise ; XI - working method ;
Die in F i g. 1 gezeigte allgemeinen Systemkonfiguration eines Datenerfassungs- und Prozeßsteuersystems nach dem Erfindungsgedanken soll mit einem minimalen Zeitausfall auf Anforderungen reagieren, die von den Benutzereinheiten gestellt werden, welche an die E/A -Moduln angeschlossen sind. Diese ElA-Moduln sind über eine gemeinsame Schnittstelle an einen direkten Steuerkanal angeschlossen zwecks Datenaustausch zwischen Prozessor und Speicher. Der Speicher im Prozessormodul kann entweder adressiert werden durch einen Austausch zwischen diesem Speicher und dem Speicher eines anderen Prozessors über einen Fremdanschluß, oder er kann in Verbindung treten mit anderen Datenverarbeitungsanlagen über einen Kommunikationsadapter {ACCA), über welchen der Austausch dann ähnlich wie bei den E/A -Moduln auf Unterbrechungsbasis abgewickelt wird. Intervallzeitgeber sind separat im Prozessormodul enthalten, um ihre Zeitgeberfunktionen unabhängig ausführen und den Prozessor von der Programmlast für diese Funktion befreien zu können. Die vorgesehene Bedienungsstation (Operatorstation) gestattet dem Benutzer mit dem Prozessormodul über Tastatur, Lochstreifen od. dgl, in Verbindung zu treten.The in F i g. 1 shown general system configuration of a data acquisition and process control system according to the inventive idea is to react with a minimum loss of time to requests made by the user units which are connected to the I / O modules. These ElA modules are connected to a direct control channel via a common interface for the purpose of exchanging data between the processor and the memory. The memory in the processor module can either be addressed by an exchange between this memory and the memory of another processor via a third-party connection, or it can be connected to other data processing systems via a communication adapter {ACCA), via which the exchange is then similar to the E / A modules are handled on an interrupt basis. Interval timers are contained separately in the processor module in order to be able to perform their timer functions independently and to be able to free the processor of the program load for this function. The intended operating station (operator station) allows the user to connect to the processor module via keyboard, punched tape or the like.
Der Speicher des Prozessormoduls wird durch Austausch entweder mit einem anderen Prozessor oder mit der Bedienungsstation initialisiert, indem ein die durchzuführenden Aufgaben definierendes Überwachungsprogramm und die verschiedenen Speicherzuordnungen für Stufen- und Unterstufenverarbeitung nach Darstellung in F i g. 5 in den Speicher gesetzt werden. Das Prozessormodul ist dann bereit, Einleitung und Steuerung mehrerer durch die Benutzereinheiten auszuführender Aufgaben zu beginnen. Diese Aufgaben können verschiedene Kombinationen digitaler und analoger Dateneingabe und -ausgabe umfassen, wobei allerdings bei den analogen Funktionen die Umwandlung der analogen in digitale 45 Signalpegel für die Verarbeitung durch den Prozessor erforderlich ist, bevor diese Signale an die interne Schnittstelle gegeben werden können.The memory of the processor module is either exchanged with another processor or initialized with the operator station by a monitoring program defining the tasks to be performed and the various memory allocations for stage and sub-stage processing as shown in FIG. 5 can be placed in memory. The processor module is then ready to initiate and begin controlling multiple tasks to be performed by the user units. These tasks can have various combinations of digital and analog data input and output include, although with the analog functions the conversion of the analog to digital 45 Signal level required for processing by the processor before sending these signals to the internal Interface can be given.
Der Prozessor kann dann die Initialisierung der verschiedenen E/A -Moduln beginnen, indem er die 50 jeweiligen E/A -Einheiten gemäß der Darstellung in den Fig. 2 und 7 adressiert und eine £7/l-Vorbereitungsinstrukticn überträgt, die die Einheit dazu veranlaßt, verschiedene, ihre Fähigkeit der Unterbrechungsabgabe an den Prozessor betreffende Informa- 55 tion zu speichern. Dazu gehört ein Feld, welches die Unterbrechungsstufe definiert, die in dem in den F i g. 2 und 7 gezeigten INT LEFEX-Register gespeichert ist. Die der Adresse der jeweiligen Frozessorunterroutine entsprechende Verschiebung, die die 60 durch die jeweilige Einheit erzeugte Unterbrechung bedienen würde, ist in dem Unterstufen register gespeichert. Außerdem ist darin auch eine Bitimaske an der Einheit enthalten, die das Auftreten von Unterbrechungen gestattet oder nicht. Es handelt sich um 65 das /-Bit, welches im /-Bitriegel gespeichert ist.The processor can then begin the initialization of the various I / O modules by addressing the 50 respective I / O units as shown in FIGS causes various information relating to its ability to deliver interrupts to the processor to be stored. This includes a field which defines the interruption level that is to be used in the in FIGS. 2 and 7 is stored in the INT LEFEX register. The offset corresponding to the address of the respective processor subroutine, which the interrupt generated by the respective unit would service, is stored in the substage register. It also includes a bit mask on the unit that will or may not allow interrupts to occur. It is about 65 the / -bit, which is stored in the / -bit bar.
Beim Auftreten einer eine Unterbrechung fordernden Bedingung an der E/A -Einheit setzt diese ihreWhen a condition requiring an interruption occurs on the I / O unit, it sets its
Unterbrechungsanforderungsverriegelung nach Dai stellung in den Fig. 2 und 7, die der Einheit gesta tet, sich am SchnittstellenmultipJexer um eine I_W· brechungsverarbeitung zu bemühen unter der an'ee nommenen Voraussetzung, daß das /-Bit vorher a der Einheit gesetzt wurde und der Stapelriegel ee löscht ist. Dieser Schnittstellenmultiplexer kann s gebaut sein, wie er in der gleichzeitig angemeldete! Patentschrift mit dem Titel »Schnittstellenmuitiple xer« von Patrick und Rickard beschrieben ist Dieses Gerät weist insofern Vorteile auf, als ein« schnelle Reaktion auf Unterbrechungen vorgeseher ist, während eine bestimmte Einheit daran gehinden wird, die Schnittstelle zu beherrschen. Der direkte Steuerkanal erkennt, ob das Unterbrechungspufferregister, welches zu der Stufe gehört, die der Bedienung anfordernden Einheit zugeordnet ist, leer ;st Wenn das der Fall ist, werden die Adreßunte'rstufe und der summarische Status, die zu der Einheit cegören, in ihrer Unterbrechungspuffer-Registerstufe gespeichert und die zu dem Puffer gehörende Unterbrechungsanforderungsverriegelung gesetzt. Die Ein heit bewirbt sich dann effektiv auf der Prozessorstufe um Bedienung als Funktion ihrer Prioritätsstufe Wenn das der Stufe der anfordernden Einheit ent sprechende Unterbrechungspuflerregister bereits gefüllt ist, dann wird umgekehrt die Einheit vom Schnittstellenmultiplexer angewiesen, ihren Stapelriegel zu setzen, ihren Unterbrechungsanforderunesriegel zurückzustellen und die Schnittstelle freizugeben. Sobald das zu der betreffenden Stufe gehörende Unterbrechungspufferregister vom Prozessor gelöscht ist, teilt der Schnittstellenmultiplexer das allen Einheiten mit, deren Stapelriegel gesetzt ist, damit diese dann ihren Un'erbrechungsanforderungsriegel wieder setzen und sich um die Bedienung bewerben können Im Prozessor reagiert die Prioritätsstufensteuerlogik auf das Laden des Unterbrechungspufferregisters und Setzen der zugehörigen Unterbrechungsanforderungsriegel nur, wenn die angeforderte Stufe eingeschaltet ist und gegenwärtig eine Unterbrechung auf derselben oder einer höheren Prioritätsstufe verarbeitet wird. Die Riegel der laufenden Stufe und der in Verarbeitung befindlichen Unterbrechungen zeilen die Prioritätsstufensteuerlogik sowohl die gerade bearbeitete Unterbrechungsstufe als auch die Stufen an die vorher unterbrochen wurden, und fordern eine Ruckkehr zur ultimativen Bedienung zum Abschluß Wie aus Fig. 6 zu ersehen ist, reagiert die Prioritatssteuerlogik auf die abgegebene Unterbrechunesanforderung mit der höchsten Stufe und betätigt Register und setzt zu dieser Stufe gehörende Bedingungen, um die anderen Stufen auszuschließen Im cegebenen Beispiel bedeutet das, daß die zu den Stufen 1, 2 und 3 gehörenden Bedingungsschaltungen effektiv von der logischen und Recheneinheit und den CP[/-Steuerungen gretrennt werden, während nur die Stufe 0 verbunden bleibt, wenn eine Unterbrechunesanforderung der Stufe 0 abgegeben wird. Fig 3 zeigt im besonderen die zu den Registern und den Bedingungsschaltungen einer jeden Stufe gehörenden Komponenten. Wenn eine Unterbrechungsanordnune der Stufe 0 vorliegt, werden der /ICCO, alle ^Λ-Register und IAR der Stufe 0 betätigt, während alle anderen zu niedrigeren Stufen gehörenden Register vorübergehend suspendiert werden. Die ALU und die Speicneradressierung funktionieren grundsätzlich so ähnlich wie bei konventionellen Zentraleinheit™ „c ;cInterrupt request interlock as shown in FIGS. 2 and 7, which enables the unit to attempt an I_W break processing at the interface multiplexer under the assumption that the / bit has previously been set for the unit and the stack bar ee clears. This interface multiplexer can be built as it is in the simultaneously registered! I Patent xer entitled "Schnittstellenmuitiple" by Patrick and Rickard described s t This device has advantages, is provided rather than a "quick response to interruptions during a particular unit is gehinden fact dominate the interface. The direct control channel detects whether the interrupt buffer register belonging to the stage assigned to the service requesting unit is empty ; If this is the case, the lower address level and the summary status associated with the unit are stored in its interrupt buffer register level and the interrupt request interlock associated with the buffer is set. The unit then competes effectively at the processor level for service as a function of its priority level.If the interrupt buffer register corresponding to the level of the requesting unit is already filled, then conversely the unit is instructed by the interface multiplexer to set its stack bar, reset its interrupt request bar and reset the interface to release. As soon as the interrupt buffer register belonging to the level in question is cleared by the processor, the interface multiplexer informs all units whose stacking bar is set so that they can then set their break request bar again and apply for service.In the processor, the priority level control logic reacts to the loading of the interrupt buffer register and setting the associated interrupt request bars only if the requested level is switched on and an interrupt at the same or a higher priority level is currently being processed. The bars of the current level and interrupts in progress line the priority level control logic of both the interrupt level being processed and the levels previously interrupted and request a return to the ultimate service for completion. As seen in Figure 6, the priority control logic is responsive to the issued interruption request with the highest level and actuates registers and sets conditions belonging to this level in order to exclude the other levels CP [/ controls are disconnected while only level 0 remains connected when a level 0 interrupt request is issued. In particular, FIG. 3 shows the components associated with the registers and condition circuits of each stage. When there is a level 0 interrupt, the / ICCO, all ^ Λ registers and level 0 IAR are operated while all other lower level registers are temporarily suspended. The ALU and the Speicner addressing function basically in a similar way to the conventional central unit ™ "c; c
■Ti■ Ti
jedoch ein Spezialmaskenregister IMR in die Zentraleinheit eingeschlossen worden, mit der die Maskierung einzelner Unterbrechungsstufen oder aller Unterbrechungsstufen möglich ist. Das bedeutet, daß das erfindungsgemäße System effektiv sechs verschiedene Kriterien hat, mit denen Unterbrechungen insofern maskiert werden können, Unterbrechungen von bestimmten Stufen durch das IMR, und daß alle Unterbrechungen maskiert werden können. Weiterhin können diese Maskierungsfunktionen dynamisch durch Programmanipulation verändert werden, die daher einen sehr hohen Grad der Flexibilität für dieses System liefert und eine Reaktion auf wechselnde Bedingungen ermöglicht. Wenn z.B. ein bestimmtes E/A -Gerät während kurzer Zeitabschnitte an einem jS gegebenen Tag kritisch ist, zu anderen Zeiten jedoch ignoriert werden kann, kann mit Hilfe der E/A -Vorbereitungsinstruktion dieser Einheit am Tagesanfang eine Unterbrechungsstufe0 zuteilenden /-Bitriegel jedoch gelöscht lassen. Für diese Bedingungen kann die Einheit jede Unterbrechungsanforderung präsentieren. Der Programmierer kann dann eine Vorberei- lungs-E/A -Instruktion am Anfang der kritischen Zeitperiode für diese Einheit erzeugen, um nur den /-Bitriegel zu setzen, woraufhin die Einheit dann auf ihrer Unterbrechungsprioritätsstufe 0 arbeitet. Dieser /-Bitriegel kann am Ende der kritischen Zeitperiode gelöscht und damit die Operation dieser Einheit effektiv suspendiert werden. Andererseits kann die EIA -Vorbereitungsinstruktion am Anfang mit einer relativ niedrigen Unterbrechungsstufe erzeugt werden, die dann für die kritische Zeit einfach auf die Unterbrechungsstufe 0 geändert wird.However, a special mask register IMR has been included in the central unit, with which the masking of individual interrupt stages or all interrupt stages is possible. This means that the system of the invention effectively has six different criteria by which interrupts can be masked insofar as interrupts of certain levels by the IMR, and that all interrupts can be masked. Furthermore, these masking functions can be changed dynamically by program manipulation, which therefore provides a very high degree of flexibility for this system and enables a reaction to changing conditions. For example, if a particular I / O IPMENT is critical during short periods of time at a j S given day, at other times can be ignored, however, but can use the I / O -Vorbereitungsinstruktion this unit on the day start a Unterbrechungsstufe0 distributive / -Bitriegel deleted permit. For these conditions, the unit can present any interrupt request. The programmer can then generate a prep I / O instruction at the beginning of the critical time period for that unit to only set the / bar, whereupon the unit will operate at its 0 interrupt priority. This / -bit bar can be deleted at the end of the critical time period, effectively suspending the operation of this unit. On the other hand, the EIA preparation instruction can initially be generated with a relatively low interrupt level, which is then simply changed to interrupt level 0 for the critical time.
Die Arbeitsgeschwindigkeit wird weiter dadurch erhöht, daß verschiedene obligatorische Summlungen und Analysen des Einheitenstatus vermieden werden. Diese Operationen überläßt man der Einheit durch ihren summarischen Siatusgenerator selbst. Die Verwendung des 5-Bits, welches zusammenfaßt, ob eine Statusanforderung und Analyse erforderlich ist, gestattet dem Prozessor, diese zeitliche Belastung zu umgehen, wenn sie nicht notwendig ist, indem das S-Bit einfach der Datenübertragung durch die Puffer auf der Unterbrechungsanforderung hinzugefügt wird.The operating speed is further increased by the fact that various obligatory summations and unit status analyzes are avoided. These operations are left to the unit their summary siatus generator itself. The use of the 5-bit, which summarizes whether a Status request and analysis required allows the processor to handle this time load work around it when it is not necessary by simply using the S bit of data transfer through the buffer is added to the interrupt request.
Die Speicherung der Unterstufenindcxposition an der Einheit, die dann an den Prozessor übertragen wird, befreit den Prozessor von einer weiteren Zeitbelastung, da die Verarbeitung der Unterbrechung dem Prozeß gestattet, direkt zu der jeweiligen Unterroutine Zugriff zu nehmen, die die Bedienungsanforderung der abgegebenen Einheit behandelt.The storage of the sub-level exposure on the unit, which is then transferred to the processor frees the processor from another time load since processing the interrupt allows the process to directly access the particular subroutine that the service request of the delivered unit.
Im Prozessor ist der Arbeitsbereich in dem gezeigten Beispiel eine 16 Bits große Logikschaliung, dieIn the example shown, the work area in the processor is a 16-bit logic circuit, the
einen Eingang an die ALU-Sammelleiiung liefert Daten werden in den Arbeitsbereich aus einer voi| vier Quellen eingegeben. Dazu gehört einer der di logischen und Rechenoperationen speichernden AkI kumulatoren, während langer Indexladeoperationei| ein Indexregister, während der Operationen ODER nach-Maske oder UND-nach-Maske das Masken register und während der Stufenabfühl- und Masken operationen das Maskenregister und die binäi co dierte laufende Stufe. Der Arbeitsbereich A RB-BEf] (Fig. 3) wird ebenfalls betätigt durch ein Unterbre chungsstufen-Anzeigesignal von den Unterbrechungs stufen- und Prioritätssteuerschaltungen. Die Paritä kann an jeder gewünschten Stelle erzeugt (PG) ode geprüft (PC) werden, obwohl die in F i g. 3 gezeigteil Stellen für diesen Vorgang bevorzugt werden. Di(| spezifischen Datensammelleitungen für die Daten übertragung zwischen dem Prozessor und den Ein heiten wurde nicht genauer dargestellt, da ihre Ar beitsweise durch den Schnittstellenmultiplexer allgemein bekannt ist. Nur die zur Unterbrechungsverar beitung und dem Abfühlen der Einheit und der Ansprache zur Vorbereitung von E/A -Instruktion ge hörenden Teile wurden in Fig. 7 besonders gezeigtan input to the ALU-Sammelleiiung supplies data are in the work area from a voi | four sources entered. This includes one of the accumulators that store logical and arithmetic operations, during long index loading operations an index register, the mask register during the OR-to-mask or AND-to-mask operations, and the mask register and the binary-coded current level during the level sensing and masking operations. The work area A RB-BEf] (Fig. 3) is also actuated by an interrupt level indication signal from the interrupt level and priority control circuits. The parity can be generated (PG) or checked (PC) at any desired point, although the in FIG. 3 positions shown are preferred for this process. Di (| specific data buses for data transmission between the processor and the A units has not been shown in detail since their Ar is Functioning generally known by the interface multiplexer Only the processing to Unterbrechungsverar and the sensing unit and the address for the preparation of E /. Parts belonging to A instruction were shown in FIG. 7 in particular
Der Prozessor kann verschiedene Hintergrund Programmfunktionen übernehmen, indem er den Un terbreclvungsvorpuffer der F i g. 6 so setzt, daß seil Hintergrund effektiv um eine Unterbrechungsstuf(| mit den anderen Einheiten konkurriert. Diese Hinter gasverarbeitung hat natürlich eine niedrigere Pri oritätscbene. die Programmierung kann jedoch vor sehen, daß unter bestimmten kritischen Umständei nur die Hinteigrundverarbeitung ausgeführt wird. Di<| ursprünglichen Einheiten, Zeitgeber, Bedienungssta tion und Kommunikationsadapter (ACCA) könner ebenfalls dynamisch entsprechend der £7/f-Vorbe reitungsoperation der Einheiten gesetzt werden.The processor can take on various background program functions by using the interruption pre-buffer of FIG. 6 sets so that the background effectively competes with the other units for an interruption level (|. This background gas processing naturally has a lower priority level. However, the programming can provide that only the background processing is carried out under certain critical circumstances. Di <| Original units, timers, operator station and communication adapter (ACCA) can also be set dynamically according to the units' £ 7 / f preparation operation.
Nach der Darstellung in Fig. 3 kann nur da: /ΛΛ-Register um Eins erhöht werden. Um eint Duplizierung oder Umschaltung von Schaltungen zi vermeiden, die normalerweise von der Adreßregister operation betroffen sind, kann die Wahl einer Priori tätsstufe zur Bedienung begleitet sein von einer über tragung des Inhaltes eines entsprechenden Rückgriff adreßregisters IARB in das IAR. Obwohl im allge meinen ein Rückgriffregister für die Stufe 0 (IARBO nicht gebraucht wird, da die Stufe 0 durch eine an dere Stufe nicht unterbrochen werden kann, kann e dazu benutzt werden, den Inhalt des IAR de Stufe 0 bei einer Klassenunterbrechung festzuhalten! Eine andere Benutzungsmöglichkeit für das IARBC\ wäre die Festhaltung der Instruktionsadresse, die ge rade ausgeführt wird.According to the representation in FIG. 3, only the: / ΛΛ register can be increased by one. In order to avoid duplication or switching of circuits zi, which are normally affected by the address register operation, the choice of a priority level for operation can be accompanied by a transfer of the content of a corresponding recourse address register IARB into the IAR. Although a fallback register is generally not needed for level 0 (IARBO, since level 0 cannot be interrupted by another level, it can be used to record the content of the IAR de level 0 in the event of a class interruption! Another The IARBC \ could be used to record the instruction address that is currently being executed.
Hierzu 6 Blatt ZeichnungenIn addition 6 sheets of drawings
Claims (9)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US19407571A | 1971-10-27 | 1971-10-27 | |
| US461337A US3905025A (en) | 1971-10-27 | 1974-04-16 | Data acquisition and control system including dynamic interrupt capability |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| DE2251876A1 DE2251876A1 (en) | 1973-05-10 |
| DE2251876B2 true DE2251876B2 (en) | 1976-03-18 |
| DE2251876C3 DE2251876C3 (en) | 1978-04-20 |
Family
ID=26889676
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE2251876A Expired DE2251876C3 (en) | 1971-10-27 | 1972-10-23 | Electronic data processing system |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US3905025A (en) |
| AU (1) | AU469899B2 (en) |
| CA (1) | CA980910A (en) |
| DE (1) | DE2251876C3 (en) |
| GB (1) | GB1397438A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE2718051A1 (en) * | 1976-04-30 | 1977-11-10 | Ibm | DATA PROCESSING SYSTEM WITH DEVICES FOR ALTERNATING PROCESSING OF SEVERAL TASKS |
Families Citing this family (91)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB1432335A (en) * | 1972-05-04 | 1976-04-14 | Schlumberger Ltd | Well logging data processing techniques |
| US4130865A (en) * | 1974-06-05 | 1978-12-19 | Bolt Beranek And Newman Inc. | Multiprocessor computer apparatus employing distributed communications paths and a passive task register |
| GB1529581A (en) * | 1974-10-29 | 1978-10-25 | Xerox Corp | Data processing apparatus |
| US4263650B1 (en) * | 1974-10-30 | 1994-11-29 | Motorola Inc | Digital data processing system with interface adaptor having programmable monitorable control register therein |
| US4010448A (en) * | 1974-10-30 | 1977-03-01 | Motorola, Inc. | Interrupt circuitry for microprocessor chip |
| GB1505535A (en) * | 1974-10-30 | 1978-03-30 | Motorola Inc | Microprocessor system |
| US4001783A (en) * | 1975-03-26 | 1977-01-04 | Honeywell Information Systems, Inc. | Priority interrupt mechanism |
| US4006466A (en) * | 1975-03-26 | 1977-02-01 | Honeywell Information Systems, Inc. | Programmable interface apparatus and method |
| US4028664A (en) * | 1975-03-26 | 1977-06-07 | Honeywell Information Systems, Inc. | Apparatus for dispatching data of the highest priority process having the highest priority channel to a processor |
| US4193113A (en) * | 1975-05-30 | 1980-03-11 | Burroughs Corporation | Keyboard interrupt method and apparatus |
| US4012722A (en) * | 1975-09-20 | 1977-03-15 | Burroughs Corporation | High speed modular mask generator |
| US4124889A (en) * | 1975-12-24 | 1978-11-07 | Computer Automation, Inc. | Distributed input/output controller system |
| US4225917A (en) * | 1976-02-05 | 1980-09-30 | Motorola, Inc. | Error driven interrupt for polled MPU systems |
| US4159516A (en) * | 1976-03-23 | 1979-06-26 | Texas Instruments Incorporated | Input/output controller having selectable timing and maskable interrupt generation |
| US4056847A (en) * | 1976-08-04 | 1977-11-01 | Rca Corporation | Priority vector interrupt system |
| US4090238A (en) * | 1976-10-04 | 1978-05-16 | Rca Corporation | Priority vectored interrupt using direct memory access |
| US4084232A (en) * | 1977-02-24 | 1978-04-11 | Honeywell Information Systems Inc. | Power confidence system |
| US4168532A (en) * | 1977-02-24 | 1979-09-18 | The United States Of America As Represented By The Secretary Of The Air Force | Multimode data distribution and control apparatus |
| DE2754890C2 (en) * | 1977-12-09 | 1982-10-28 | Ibm Deutschland Gmbh, 7000 Stuttgart | Device for program interruption |
| US4315314A (en) * | 1977-12-30 | 1982-02-09 | Rca Corporation | Priority vectored interrupt having means to supply branch address directly |
| US4320502A (en) * | 1978-02-22 | 1982-03-16 | International Business Machines Corp. | Distributed priority resolution system |
| JPS5515007A (en) * | 1978-07-19 | 1980-02-01 | Hitachi Ltd | Display control method |
| JPS5530730A (en) * | 1978-08-22 | 1980-03-04 | Nec Corp | Data processor |
| JPS5584858A (en) * | 1978-12-18 | 1980-06-26 | Nippon Denso Co Ltd | Engine control |
| US4268906A (en) * | 1978-12-22 | 1981-05-19 | International Business Machines Corporation | Data processor input/output controller |
| JPS55134721A (en) * | 1979-04-06 | 1980-10-20 | Hitachi Ltd | Electronic engine controlling method |
| DE3072043D1 (en) * | 1979-04-06 | 1987-11-19 | Hitachi Ltd | Electronic type engine control method and apparatus |
| JPS55137358A (en) * | 1979-04-16 | 1980-10-27 | Nissan Motor Co Ltd | Controller for automobile |
| US4287560A (en) * | 1979-06-27 | 1981-09-01 | Burroughs Corporation | Dual mode microprocessor system |
| FR2464008A1 (en) * | 1979-08-17 | 1981-02-27 | Thomson Brandt | Luminous gas discharge tube supply - measures discharge tube current to generate error signal which varies duty cycle of primary voltage of step up transformer |
| JPS5638542A (en) * | 1979-09-05 | 1981-04-13 | Hitachi Ltd | Controlling method for engine |
| USRE33629E (en) * | 1980-02-13 | 1991-07-02 | Intel Corporation | Numeric data processor |
| US4338675A (en) * | 1980-02-13 | 1982-07-06 | Intel Corporation | Numeric data processor |
| US4434461A (en) | 1980-09-15 | 1984-02-28 | Motorola, Inc. | Microprocessor with duplicate registers for processing interrupts |
| US4423480A (en) * | 1981-03-06 | 1983-12-27 | International Business Machines Corporation | Buffered peripheral system with priority queue and preparation for signal transfer in overlapped operations |
| US4382284A (en) * | 1981-04-15 | 1983-05-03 | Honeywell Inc. | Command and residual priority control of loads |
| DE3138961C2 (en) * | 1981-09-30 | 1985-12-12 | Siemens AG, 1000 Berlin und 8000 München | Circuit arrangement for the rapid execution of interruptions after recognition of an interrupt request |
| IT1145730B (en) * | 1981-11-13 | 1986-11-05 | Olivetti & Co Spa | DATA PROCESSING SYSTEM WITH PROGRAM INTERRUPTION CONTROL DEVICE |
| US4709349A (en) * | 1982-01-05 | 1987-11-24 | Sharp Kabushiki Kaisha | Method for maintaining display/print mode in display printer |
| US4672543A (en) * | 1982-08-31 | 1987-06-09 | Sharp Kabushiki Kaisha | Data transmission control apparatus in local network systems |
| DE3241357A1 (en) * | 1982-11-09 | 1984-05-10 | Siemens AG, 1000 Berlin und 8000 München | DEVICE FOR PROVIDING MICRO COMMANDS FOR AT LEAST TWO INDEPENDENTLY WORKING FUNCTIONAL UNITS IN AN INTEGRATED, MICROPROGRAMMED ELECTRONIC MODULE AND METHOD FOR THEIR OPERATION |
| JPS5999521A (en) * | 1982-11-29 | 1984-06-08 | Toshiba Corp | Interface circuit |
| US4807117A (en) * | 1983-07-19 | 1989-02-21 | Nec Corporation | Interruption control apparatus |
| JPS60121127A (en) * | 1983-12-06 | 1985-06-28 | Nissan Motor Co Ltd | Method of controlling power train |
| JPH0650071B2 (en) * | 1983-12-14 | 1994-06-29 | 日産自動車株式会社 | Vehicle driving force control device |
| JPS60128055A (en) * | 1983-12-14 | 1985-07-08 | Nissan Motor Co Ltd | Control method of preventing slip of power train |
| JPS60128031A (en) * | 1983-12-14 | 1985-07-08 | Nissan Motor Co Ltd | Controlling method of power train |
| US4636944A (en) * | 1984-01-17 | 1987-01-13 | Concurrent Computer Corporation | Multi-level priority micro-interrupt controller |
| JPS619748A (en) * | 1984-06-25 | 1986-01-17 | Nec Corp | Input and output controller |
| JPS61107456A (en) * | 1984-10-30 | 1986-05-26 | Toshiba Corp | Interrupt control system |
| US4718004A (en) * | 1985-02-25 | 1988-01-05 | Honeywell Inc. | Sample data acquisition system using microprocessor controlled sequence having FIFO buffer, DAM controller |
| US4748573A (en) * | 1985-06-28 | 1988-05-31 | Honeywell Inc. | Test management system to acquire, process and display test data |
| US4779195A (en) * | 1985-06-28 | 1988-10-18 | Hewlett-Packard Company | Interrupt system using masking register in processor for selectively establishing device eligibility to interrupt a particular processor |
| JPH0792782B2 (en) * | 1985-09-30 | 1995-10-09 | 富士通株式会社 | Processing execution system |
| US4972312A (en) * | 1985-11-04 | 1990-11-20 | U.S. Philips Corporation | Multiprocess computer and method for operating same having context switching in response to a peripheral interrupt |
| US4761732A (en) * | 1985-11-29 | 1988-08-02 | American Telephone And Telegraph Company, At&T Bell Laboratories | Interrupt controller arrangement for mutually exclusive interrupt signals in data processing systems |
| US4788640A (en) * | 1986-01-17 | 1988-11-29 | Intel Corporation | Priority logic system |
| US4809164A (en) * | 1986-03-26 | 1989-02-28 | Tandem Computers Incorporated | Processor controlled modifying of tabled input/output priority |
| JPS63238630A (en) * | 1987-03-26 | 1988-10-04 | Toshiba Corp | Interruption controller for microprocessor |
| JPS63245529A (en) * | 1987-03-31 | 1988-10-12 | Toshiba Corp | Register saving and restoring device |
| US5222241A (en) * | 1987-06-05 | 1993-06-22 | Mitsubishi Denki Kabushiki Kaisha | Digital signal processor having duplex working registers for switching to standby state during interrupt processing |
| US4914580A (en) * | 1987-10-26 | 1990-04-03 | American Telephone And Telegraph Company | Communication system having interrupts with dynamically adjusted priority levels |
| JPH01126751A (en) * | 1987-11-11 | 1989-05-18 | Fujitsu Ltd | Grouping device |
| FR2629230B1 (en) * | 1988-03-22 | 1990-12-28 | Texas Instruments France | HIGH SPEED DATA CONTROL AND ACQUISITION DEVICE |
| US5289583A (en) * | 1990-10-19 | 1994-02-22 | International Business Machines Corporation | Bus master with antilockup and no idle bus cycles |
| JPH0776951B2 (en) * | 1990-10-30 | 1995-08-16 | インターナショナル・ビジネス・マシーンズ・コーポレイション | Computer system, system for sharing address space by multiple I/O adapters, and method for managing communications between multiple I/O devices and computer processors |
| JPH04188303A (en) * | 1990-11-22 | 1992-07-06 | Minolta Camera Co Ltd | Controller |
| US5613128A (en) * | 1990-12-21 | 1997-03-18 | Intel Corporation | Programmable multi-processor interrupt controller system with a processor integrated local interrupt controller |
| US5555420A (en) * | 1990-12-21 | 1996-09-10 | Intel Corporation | Multiprocessor programmable interrupt controller system with separate interrupt bus and bus retry management |
| US5412782A (en) | 1992-07-02 | 1995-05-02 | 3Com Corporation | Programmed I/O ethernet adapter with early interrupts for accelerating data transfer |
| US5404536A (en) * | 1992-09-15 | 1995-04-04 | Digital Equipment Corp. | Scheduling mechanism for network adapter to minimize latency and guarantee background processing time |
| US5659759A (en) * | 1992-09-21 | 1997-08-19 | Kabushiki Kaisha Toshiba | Data processing device having improved interrupt controller to process interrupts of different priority levels |
| US5471618A (en) * | 1992-11-30 | 1995-11-28 | 3Com Corporation | System for classifying input/output events for processes servicing the events |
| US5530874A (en) * | 1993-02-02 | 1996-06-25 | 3Com Corporation | Network adapter with an indication signal mask and an interrupt signal mask |
| JPH0713772A (en) * | 1993-06-29 | 1995-01-17 | Mitsubishi Electric Corp | Data processing device |
| US5894577A (en) * | 1993-09-22 | 1999-04-13 | Advanced Micro Devices, Inc. | Interrupt controller with external in-service indication for power management within a computer system |
| CA2137507A1 (en) * | 1993-12-09 | 1995-06-10 | Young W. Lee | Interrupt controller for an integrated circuit |
| GB2298503B (en) * | 1993-12-16 | 1998-08-12 | Intel Corp | Multiple programmable interrupt controllers in a computer system |
| US5727221A (en) * | 1994-12-22 | 1998-03-10 | Texas Instruments Incorporated | Computer system power management interconnection circuitry and systems |
| EP0732658B1 (en) * | 1995-03-13 | 2000-09-27 | Sun Microsystems, Inc. | Virtual input/output processor |
| US5627745A (en) * | 1995-05-03 | 1997-05-06 | Allen-Bradley Company, Inc. | Parallel processing in a multitasking industrial controller |
| GB9509626D0 (en) * | 1995-05-12 | 1995-07-05 | Sgs Thomson Microelectronics | Processor interrupt control |
| US5852746A (en) * | 1995-06-26 | 1998-12-22 | Canon Kabushiki Kaisha | System for transmitting a message using status button to system administrator by using a signal comprising predetermined number of changes effected over a period |
| DE19535546B4 (en) * | 1995-09-25 | 2004-04-08 | Siemens Ag | Method for operating a real-time computer system controlled by a real-time operating system |
| US6065089A (en) * | 1998-06-25 | 2000-05-16 | Lsi Logic Corporation | Method and apparatus for coalescing I/O interrupts that efficiently balances performance and latency |
| FI982262A0 (en) * | 1998-10-19 | 1998-10-19 | Valmet Automation Inc | Procedures and devices for monitoring an industrial process in business |
| JP3241332B2 (en) * | 1998-10-27 | 2001-12-25 | 日本電気株式会社 | Noise reduction method for wireless portable terminal |
| JP3600095B2 (en) * | 1999-12-07 | 2004-12-08 | 松下電器産業株式会社 | Interrupt management device and interrupt management method |
| DE10047574C2 (en) * | 2000-09-22 | 2003-07-17 | Systemonic Ag | Processor bus arrangement |
| CN102495816B (en) * | 2011-11-16 | 2014-12-24 | 武汉日电光通信工业有限公司 | A fast interrupt hierarchical processing device and method |
| WO2017099793A1 (en) | 2015-12-11 | 2017-06-15 | Hewlett Packard Enterprise Development Lp | Subscription to a subset of switching events |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3573852A (en) * | 1968-08-30 | 1971-04-06 | Texas Instruments Inc | Variable time slot assignment of virtual processors |
| US3611307A (en) * | 1969-04-03 | 1971-10-05 | Ibm | Execution unit shared by plurality of arrays of virtual processors |
| US3713109A (en) * | 1970-12-30 | 1973-01-23 | Ibm | Diminished matrix method of i/o control |
| US3781810A (en) * | 1972-04-26 | 1973-12-25 | Bell Telephone Labor Inc | Scheme for saving and restoring register contents in a data processor |
| US3825902A (en) * | 1973-04-30 | 1974-07-23 | Ibm | Interlevel communication in multilevel priority interrupt system |
-
1972
- 1972-10-02 GB GB4530372A patent/GB1397438A/en not_active Expired
- 1972-10-05 AU AU47464/72A patent/AU469899B2/en not_active Expired
- 1972-10-23 DE DE2251876A patent/DE2251876C3/en not_active Expired
- 1972-10-26 CA CA154,872A patent/CA980910A/en not_active Expired
-
1974
- 1974-04-16 US US461337A patent/US3905025A/en not_active Expired - Lifetime
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE2718051A1 (en) * | 1976-04-30 | 1977-11-10 | Ibm | DATA PROCESSING SYSTEM WITH DEVICES FOR ALTERNATING PROCESSING OF SEVERAL TASKS |
Also Published As
| Publication number | Publication date |
|---|---|
| AU4746472A (en) | 1974-04-11 |
| US3905025A (en) | 1975-09-09 |
| GB1397438A (en) | 1975-06-11 |
| CA980910A (en) | 1975-12-30 |
| AU469899B2 (en) | 1976-02-26 |
| DE2251876C3 (en) | 1978-04-20 |
| DE2251876A1 (en) | 1973-05-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE2251876B2 (en) | ELECTRONIC DATA PROCESSING SYSTEM | |
| DE2411963C3 (en) | Electronic data processing system with a priority control circuit with changeable control blocks | |
| DE2722099C2 (en) | ||
| DE2718051C3 (en) | Data processing system with facilities for the alternating processing of several tasks | |
| DE3607889C2 (en) | ||
| DE2714805C2 (en) | ||
| DE3587622T2 (en) | Emulation device in a data processing system. | |
| DE2659662C3 (en) | Priority level controlled interrupt device | |
| EP0010198A2 (en) | Device for page replacement control in a data processing system with a virtual memory | |
| DE2657848A1 (en) | CONTROL UNIT FOR A DATA PROCESSING SYSTEM | |
| DE2030812A1 (en) | Modular data computer systems | |
| EP0048767A1 (en) | Priority stage controlled interruption device | |
| DE2431379A1 (en) | DATA PROCESSING DEVICE | |
| DE102007025397A1 (en) | Multi-processor system and method of operation | |
| DE2626703A1 (en) | INTERNALLY PROGRAMMABLE DATA PROCESSING SYSTEM | |
| CH629010A5 (en) | CONNECTION CIRCUIT FOR AN INPUT / OUTPUT INTERFACE IN A DATA PROCESSING SYSTEM. | |
| DE2054830B2 (en) | INFORMATION PROCESSING SYSTEM WITH MEANS OF ACCESS TO MEMORY DATA FIELDS OF VARIABLE LENGTH | |
| DE2617127A1 (en) | MULTIPLE PROGRAM DATA PROCESSING SYSTEM | |
| DE3650158T2 (en) | Special purpose processor for taking over many operating system functions in a large data processing system. | |
| DE2932394A1 (en) | INTELLIGENT, PROGRAMMABLE PROCESS CONTROL ARRANGEMENT | |
| DE2507405C2 (en) | Arrangement for synchronizing tasks to be carried out simultaneously for peripheral devices of a data processing system | |
| DE3344340A1 (en) | DATA PROCESSOR WITH A CONTROL PART CONTAINING AN ADDRESS GENERATOR FOR GENERATING ADDRESSES COMPOSED FROM CHARACTERISTIC ADDRESS PARTS | |
| DE2850447A1 (en) | FAST COUPLER FOR TRANSMISSION LINES OR PERIPHERAL DEVICES OF A COMPUTER WITH A SPECIAL MICROINSTRUCTION STRUCTURE | |
| DE102007015507B4 (en) | Processor with first and second modes of operation and method of operation | |
| DE2629311C2 (en) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C3 | Grant after two publication steps (3rd publication) | ||
| 8339 | Ceased/non-payment of the annual fee |