DE1524198A1 - Prioritaetsschaltung fuer eine Datenverarbeitungsanlage,z.B. Rechenmaschine zu allgemeinen Zwecken - Google Patents
Prioritaetsschaltung fuer eine Datenverarbeitungsanlage,z.B. Rechenmaschine zu allgemeinen ZweckenInfo
- Publication number
- DE1524198A1 DE1524198A1 DE19661524198 DE1524198A DE1524198A1 DE 1524198 A1 DE1524198 A1 DE 1524198A1 DE 19661524198 DE19661524198 DE 19661524198 DE 1524198 A DE1524198 A DE 1524198A DE 1524198 A1 DE1524198 A1 DE 1524198A1
- Authority
- DE
- Germany
- Prior art keywords
- program
- group
- register
- signal
- programs
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/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)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
Description
"Prioritätsschaltung für eine Datenverarbeitungsanlage, z.B.
Rechenmaschine zu allgemeinen Zwecken"
Prioritätsschaltung für eine mit einem Speicher versehene Datenverarbeitungsanlage, z.B. eine Rechenmaschine für
allgemeine Zwecke, deren Steuerkreis ein "Befehl-aus-geführt-Signal11
und ein "Bnde-des-Programmes-Signal" liefert. Das
Bedürfnis nach einer solchen Schaltung entsteht, wenn die Rechenmaschine imstande sein muß, einen ablaufenden Prozeß
zugunsten eines Prozesses mit größerer Dringlichkeit oder, wie dies in der Fernmeldetechnik meistens ausgedrückt wird, zugunsten
eines Prozesses, der vor einem in der Ausführung begriffenen Prozeß Priorität hat, zu unterbrechen» Diese Situation tritt
u.a. auf, wenn die Rechenmaschine als eine signalverarbeitende Zentralstelle mit mehreren Anschlüssen benutzt wird. In einem
verhältnismäßig einfachen Fall hat die Rechenmaschine die
Aufgabe, empfangene ......
009827/U50
Telegram»© in den gewünschten Richtungen »reiterzuleiten. Die Hechenaasehine führt diese Aufgabe dadurch aus, das· sie eine über eine
Singangsleitung empfangene Kodegruppe (die »it eines Buchstaben,
eines Satzzeichen, einer Ziffer oder einen anderen Sjrabol identifiziert sein kann) in eine !»estimate Zelle ies Speichers überträgt
und dann aus dieser Speicherzelle zur gewünschten Ausgangsleitung
(oder zu den gewünschten Ausgangsleitungen} weiterleitet* Der
Signal transport über die Eingangs- und Ausgangsieltungen erfolgt
■eistens sequentiell (d.h. Koleeleraent nach Kodeelesent), während
der Signal transport innerhalb der Rechenmaschine seiist in sieultaner oder paralleler Pore stattfindet (d.h. jeweils saatlicne Kodeelemente einer Kodegruppe zugleich, aber im Uhrigen Koiegruppe nach
Kodegruppe). Di* Eingangs- und Ausgangsleitungen sind deshalb über
Eingangs- und Ausgangsleitungeübertrager ait der Bechensaaehine
verbunden. In diesen Leitungsüberträgern, die ron bekannter Bauart
sein können, erfolgt die Umwandlung aus der sequentiellen in die
parallele For« oder umgekehrt. Auch wird in diesen Leitungsubertragern das Signal in die für die Weiterbeförderung erforderliche
Form gebracht, die im alIgemeinen innerhalb der Rechenaaschine eine
andere ist als für die Leitungen.
Uk eine Aufgabe von der in vorstehenden skizzierten
Art erfüllen zu können, »ues die Rechenmaschine mehrere spezielle,
■eistens verh<nismSeeig kurze Programme ausführen Können und
ausserdera in der Befehlsiiste einige spezielle, aus verhXltnismäseig
kurzen Mikroprogrammen bestehende Befehle enthalten. Diese Programme ι
können auf bekannte Heise zuvor i« Speicher der Rechenmaschine gespeichert worden. Ein derartiges Programm wird durch das Lesen derjenigen Speicherzelle, in ä*r der erste Befehl des Taetrmtt»nd»n
BAD ORiGlNAL 009827/U50
Programmes gespeichert ist, gestartet, aus welche« Grunde diese
Speicherzelle al· die Start eel Ie des betreffenden Programs beieichnet wird· Vird eine Speicherzelle gelesen, in der ein Befehl
des Prograanes gespeichert ist, se sorgt der Steuerfreie der
Rechenmaschine dafür, dass nach Ausführung dieses Befehls selbsttätig diejenige Speicherzelle gelesen vird, in der der nächste
Befehl des Program»« gespeichert ist. Durch das Lesen dee letzten Befehle oder Stoppbefehls des Programmes wird ein Signal erzeugt,
aus den der Steuerkreis der Rechenmaschine erfahrt, dass das
betreffende Program vollständig ausgeführt worden ist.
Beispiele von Programmen der erwähnten Art Bind;
t. das liebertragen einer in einen Eingangeleitungsüber-
trager bereitstehenden Kodegruppe in eine bezeichnete Speicherseile;
2. das Uebertragen einer in ein - -,peicherzelle gespeicherten Kodegruppe auf einen bezeichneten AusgangsIeitungüoertrager;
3· das Analysieren einer am Anfang eines Telegraaaea
vorkommenden Adresse}
4« ,das Analysieren bestirnter Die netkode gruppe η (vie
"Anfang Itolegraaa", "Ende Telegram", "Harten", usv.)|
5· das Belegen einer Gruppe von Speicherzellen (die als
Sie Natur dieser Frcgramme hangt selbstverständlich
von der besonderen Punktion, die die Rechenmaschine erfüllen muse,
und von der Art und Veise, vie sie diese Funktion erfüllt, ab· FQr
die Erfindung sind die weiteren Einzelheiten dieser Program»© jedoch
009827/USO
ohne Belang, vaahalb auf aia hier nicht näher eingegangen wird.
Yon Belang i»t aber die Tatsache, daaa die Ausführung
einiger dieaer Prograaae eine grSaaere Dringlichkeit hat ale dia
Ausführung anderer Prograaae· So hat s.B« daa aua eine« einaigen Befehl beatehende Prograaa sub Transportieren einer in ein·» Sin·
gangaleitungübertrager bereitatehenden Kodegruppe tu einer Speiohercell· eine grösaere Dringlichkeit al· ein Prograun sub Analysieren
einer Adreaae. Oibt aan des erwähnten Transportprograma nlalich
keine Prioritit Tor allen anderen Prograeeen, ao besteht die Gefahr,
dass eine in einea Eingangaleitungatibertrager bereit stehende Kodegruppe noch nicht in den Speioher fibertragen ist aua Zeitpunkt, au
den die nächste Kodegruppe bereite an der Reihe ist, transportiert su werden, oder sogar einzutreffen beginnt, wodurch fiber die su
transportierende Kodegruppe eine später eintreffend· Kodegruppe geschrieben «erden wurde* für «in Programs eua Transport einer
Kodegruppe aue einer Speicherselle tu einen Auegangsleitungsübertrager gilt aus ähnliehen Gründen eine entsprechende Bemerkung* Die
erwähnten Transportprograaae haben aoait eine grosser· Dringlichkeit al β die anderen Programs«, ait anderen Horten, di· Heohenaaschine au»β so ausgelegt sein, daaa diese Transportprograaee Tor
allen anderen Prograaaen Priorität haben·
Heiter kann ea erwünscht aein, die Hechelmaschine so
aussubilden, daes die verschiedenen Prograaae in Gruppen eingeteilt
aind, wobei die Prograaae einer ersten Gruppe säatliohs Priorität
Tor den Prograaaen aller übrigen Gruppen haben, die Prograaae einer
«weiten Gruppe säatlieh Priorität Tor den Prograaaen aller übrigen
Gruppen mit Auenahae der Prograaae der ersten Gruppe haben, usw.
Die Programme müssen dann in Gruppen ait abnehmender Priorität
009827/UBO '
- 5 - PBI.654
angeordnet werden. Die Programm« ein und derselben Gruppe können
entweder sämtlich die gleiche Priorität haben oder selbst ebenfalls in einer Reihe mit abnehmender Priorität geordnet sein.
Die Priorität, die ein Programm vor einem anderen Programm hat, kann von zweierlei Art sein und wird in Analog!· sum
in der Variationsrechnung gemachten Unterschied in starke und schwache Kriterien für einen Extremwert als starke und schwach·
Priorität unterschieden.
Ein Programm χ hat eine starke Priorität vor einem Programm v_, wenn ein in der Durchführung begriffenes Programm £
zugunsten eines Programmes x_ unterbrochen und durch das Programm x
ersetzt wird, sobald eine Nachfrage nach dem Programm χ eintrifft.
Hierbei wird jedoch immer ein gerade in der Durchführung begriffener Befehl zuvor vollständig erledigt. Bei einer gleichzeitigen Naohfrage nach einem Programm χ und einem Programm £ wird da· Programm χ
gestartet.
Ein Programm χ hat ein· schwache Priorität Tor einem Programm £, wenn bei gleichzeitiger Nachfrage nach einem Programm χ
und einem Programm £ das Programm χ gestartet wird, ohne dass jedoch
jemals ein gerade in der Durchführung begriffenes Programm £ zugunsten eines Programmes χ unterbrochen wird.
Wenn mehrere Programme x, J> £» u, ... die gleioh*
Priorität haben, können gleichfalls zwei Fälle auftreten, namliohi
1. wenn ein Programm aus der Gruppe beendigt ist, kommt
das ihm in zyklischer Folge folgende Programm an die Reihe. Wenn
z.B. das Programm £ in der Ausführung begriffen ist und es treffen
inzwischen Nachfragen nach den Programmen x und u ein, so wird,
sobald das Programm χ_ beendigt ist, das Programm u und erst, nachdem
009827/UBO
- 6 - PHM.654
dieaee Programm ebenfalle vollständig ausgeführt worden ist, la·
Programm χ in Gang gesetzt. Diese Folge wird eingehalten, gleichgültig ob dag Programm je früher oder später al« das Programm u angefordert worden ist)
2. wenn ein Programm der Gruppe ausgeführt worden ist,
kommt das Programm an die Reihe, das zuerst gefragt worden ist· In
diesem PalIe muss die Schaltungsanordnung somit einem Speicher
beei tzen, in dem die Reihenfolge des Smpfanges der Nachfragen behalten wird, was zu einer etwas verwickelter Schaltung führt als
im 1. Fall.
Der Teil der Rechenmaschine, der nach der Erledigung
jedes Befehles feststellt, welche· Programm gestartet oder wieder aufgenommen werden muss, wird als die Prioritäteschaltung der
Rechenmaschine bezeichnet, und es iet namentlich dieser Teil, auf
den eich die Erfindung bezieht·
dass die Prioritätsschaltung mindestens zwei Nachfragenregister, ein Gruppenregieter und einen Adressengenorator enthält;
daea jedes Nachfragenregister für den Empfang mehrerer
Nachfragesignale für diesem Nachfragenregister einzeln zugeordnete
Programme für den Empfang eines vom Gruppenregister weitergeleiteten
"Ende-des-Programmes-Signales", für den Empfang eines vom Gruppenregister gelieferten "Erledige-Programm-Signales", für die Lieferung
an das Gruppenregister eines "Enthaite~unabge wickeltes-Programm-Signalee" und tür die Lieferung eines Impulses an den Adressengenerator, wodurch die Adresse einer individuell einem Programm der betreffenden Gruppe zugeordneten Speichorzelle oder die Adresse einer
sämtlichen Programmen dieser Gruppe gemeinsamen Speicherstilen
009827/U60 \iAÜ ÜK,CINA1.
- 7 - PHI.6M
erseugt vlrd, eingerichtet iat|
daaa da· Gruppeareglatar für dan Eapfang d·· tob
Steuerkreia dar lechenaaechlne gelieferten "Befehl-auagef11hrt-8ignale a"
und "Inda^aa-Progra—aa-Slgnalee**! für dan Bapfang dar τοη dan
AnMldungaregietern gal la far ta η "finthelU-^inabgeirickeltee-Prograa«-
81gnaleN, IUr dia Lieferung ain· a Iapuleea an dan AdreaecngeneratoiY
*odaroh dia Adreeee alnar anderen, eaatlichen Prograaa*n alnar Oruppa
geaelaeaaen ^»alekarsalla araauft wird, für dia Haltarlaitunf aa
aln RaohfrAeaaraciatar alnaa Nftida«daa-Pro(ra«aaa-81fnalaaN und für
dia Liafarung aiaaa Ntrladlfa>ProfraMi-aiffnal«aH für ainaa dar lachfrafanraeiatar aingarlohtat latf
daaa ain laokfraeanraffiatar für Jad·· Prograaa dar
bairaffaadan druppa ain al a Raohfraeanraeiatriarearlt baaaiohnataa
■valvartigaa Spalobaral«a«ntt da« la Zuaiaad 1 let, vann für daa
PrQfTMa «iaa noch nicht erledigte Vachfraga lluft, aowia aln ale
Zuataadareglatrierfarlt baaaichmt·· «^«iwertif«« Spaicharaleaant
anthllt« daa la Zuataad 1 let, wann dia betreffende Oruppa aln
bare 1 ta gea tar ta tea aber noch nicht erledigt· a Prograaai enthalt {
daaa daa Qruppanragiatar für jedeβ laohfragenragiatar
aln »la Uebervaohungaragiatriergerit beaelehnetea sweiwartigee
Speicherelement anthllt, daa Xm Zuatand 1 iat, wann ein Prograaa
dar betreffenden druppa in der Abwicklung begriffen ietf
daaa aln Iaohfraganragietar daduroh auf den lapfang
elnaa "Etode-dee-Prograeeea-eignalee" aneprioht, daaa ea daa betreffende Anaeldungaragiatriergertt und daa Zuatandregiatriergarlt
in den Zuatand O surOokatellt, und auf den Empfang ein·· "Brladlge-Progra«B>-SlgaalaaN daduroh anaprioht, 4a·· ea da· Adreaaangenerator
einen Iapula suführt, wodurch dia Adreaae der Speicherten·, die
009827/U50
dem jetzt an der Beihe seienden Programm zugeordnet ist, oder die
Adresse der sämtlichen Programmen der betreffenden Gruppe gemeinsamen Speicherzelle erzeugt wird, je nachdem das Zu«tandregiβtriergerät im Zustand 0 oder im Zustand 1 war, während das Zustande·
registriergerät in ersten Falle in den Zustand 1 gebracht wird;
dass das Gruppenregie ter dadurch auf den Empfang
eines "Enie-des-Prograames-Signales" anspricht, dass es dieses
Signal an das betreffende Anme längsregister weiterleitet, und auf
den Empfang eines "Befehl-ausgefUhrt-Signalea" dadurch anspricht,
dass es entweder dem jetzt an der Reihe seienden Nachfragenregister
ein "Erledige-Programm-Signal" zuführt oder den Adressengencrator
einen Impuls zuführt, wodurch die Adresse der zweiten, sämtlichen Programmen der jetzt an der Peihe seienden Gruppe gemeinsamen
Speicherzelle erzeugt wird, je nach dem gleichzeitig β ir. "En de-de β-Programmes-Signal" empfangen ist oder nicht·
An Hand der Zeichnung wird ein Beispiel der Erfindung nachstehend näher erläutert.
Fig. 1 ist ein Diagramm zur Erläuterung der Natur
der Prioritäten.
FIf. 2 ist das Entscheidungsdiagramm der erfindungegeciässen Schaltungsanordnung.
Fig. 3 ist ein allgemeir.ee Blockschaltbild einer
erfindungegemäesen Schaltungsanordnung.
Fig. 4 iet ein Schaltbild einer Ausführungsform eines Anaeldungsregietere·
Fig· 5 gibt eine Uebersicht der drei Hauptteile, aus
denen das Gruppenregister aufgebaut werden kann.
009827/HSO
Die Fig. 6, 7 und θ Beigen mögliche Aueführungeformen
der drei Hauptteile des Oruppenregisters.
Fig. 1 ist ein Zeitdiagramm nun Verdeutlichen der
Natur der Funktionen} die die Prioritäteschaltung erfüllen nuss.
In dieser Figur ist angenommen, dass es vier Gruppen von je vier Programmen gibt. Die Programme der Gruppe Λ haben eine starke
Priorität vor den Programmen der Gruppen B, C und D. Die Programme der Gruppe 8 haben eine starke Priorität vor den Programmen der
Gruppen C und D. Die Programme der Gruppe C haben eine starke
Priorität vor den Programmen der Gruppe D.
schwache Priorität vor den Programmen Ap, A. und A., das Programm
A? eine schwache Priorität vor den Programmen A. und A., und das
Programm A. eine schwache Priorität vor den Programm A..
Innerhalb der Gruppe B, C und D hat keines der Programme Priorität vor den anderen. Sie werden in zyklischer
Folge abgefertigt, d.h. unabhängig von der Folge, in der die betreffenden Nachfragen eingetroffen sind. Es ist selbstverständlich auch möglich, innerhalb der gleichen Gruppe die Programme in
der Folge abzufertigen, in der die betreffenden Nachfragen eingetroffen sind. Dies erfordert jedoch einen etwas grSaseren Aufwand
an Geräten, weil diese Folge dabei behalten werden muss.
Ee sei angenommen, dass anfange kein einzigeβ Programm
in der Durchführung begriffen ist und dass zu den Zeitpunkten tQ,
t., t„, t,, t., te» t^, t_ und tg Nachfragen nach den Programmen
D-, C-, A., A., A.t Cp, D., C. bzw. B, eintreffen. Zum Zeitpunkt
tQ wird dann das Programm D. gestartet. Diese« Programm wird jedoch
zum Zeitpunkt t. unterbrochen, weil su dieses Zeitpunkt «in· Naoh-
00 98 27/ UBO
frage nach dem Programm C. eintrifft und die Prograne der Gruppe C
sämtlich eine starke Priorität vor den Programmen der Gruppe D haben· Zum Zeitpunkt t. wird eooit das Programm D. gestoppt und
das Programm C, gestartet. Dieses Programm wird jedoch seinerseits zum Zeitpunkt t» unterbrochen, weil zu diesem Zeitpunkt
eine Kachfrage nach dem Programm A. eintrifft und die Programme
der Gruppe A sämtlich eine starke Priorität vor den Programmen der Gruppen C haben. Zum Zeitpunkt t? wird somit das Programm C.
abgebrochen und das Programm A. gestartet, das, weil es zur Gruppe mit der höchsten Priorität gehört, nicht unterbrochen
werden kann. Bevor das Programm A, zum Zeitpunkt t,- völlig abgewickelt worden ist, sind Nachfragen nach dan Progr%maen M. (sum
Zeitpunkt t,) und A. (zum Zeitpunkt t,) eingetroffen, so dass, nachdem das Programm A. erledigt ist, das Programm A. gestartet
wird (weil innerhalb der Gruppe A das Programm A Priorität vor
dem Programm A. hat) und, nachdem das Programm A. abgewickelt worden ist, das Programm A. gestartet wird.
Bevor das Programm A, völlig abgewickelt worden ist, ist jedoch zum Zeitpunkt t- eine Nachfrage nach dem Programm C^,
zum Zeitpunkt tg eine Kachfrage nach dem Programm D und sub
Zeitpunkt t„ eine Kachfrage nach dem Programm C. eingetroffen·
Zum Zeitpunkt, au dem das Programm A. abgewickelt ist, kommen mithin die folgenden Programme für eine Abwicklung in Frages
1. die unerledigten Programme Cj und D.j
2. die noch nicht gestarteten Programme C t C1 und D..
Von diesen Programmen werden jetzt aber zunächst die
der Gruppe C in Angriff genommen, weil diese Gruppe vor der Gruppe D
Priorität hat. Weil weiter keines der Programme der Gruppe C eine
009827/1450
- 11 - PHH.654
Priorität vor ein·» anderen Programs der gleichen Gruppe und um
eo viel «ehr keine starke Priorität hat, wird zunächst das unterbrochene Programm C, wieder aufgenommen und abgefertigt. Sobald
das Programs C roll8tandig abgewickelt worden ist, wird das
Programm C* gestartet, weil es zyklisch auf das Programm C. folgt·
Dies somit trotz der Tatsache, dass die nachfrage nach den Programm
C? früher als die nach dem Program» C, empfangen ist. Sobald auch
das Programs C, vollständig abgewickelt ist, wird das Programm C.
gestartet.
Zum Zeitpunkt, zu den dae Programm C~ vollständig
abgewickelt ist, kommen das noch unerledigte Programm D, und eine
Nachfrage nach den Programm D1 für eine Erledigung in Frage. Weil
auch in der Gruppe D keines der Programme Priorität vor einem anderen hat, wird somit dae Programm D, wieder aufgenomoen. Dieses
Programs wird jedoch zum Zeitpunkt t« erneut unterbrochen, weil
zu diesem Zeitpunkt eine Nachfrage nach den Programn B-, eintrifft
und die Qruppe B Priorität vor der Qruppe D hat. Zun Zeitpunkt tg
wird das Programm D. Mithin zum zweiten Mal abgebrochen und wird
da« Programm B, gestartet. Sobald dieses Programs vollständig abgewickelt let, wird das Programm D, wieder aufgenomoen und jetzt
auch abgewickelt. Sobald das Programm D. vollständig abgewickelt
ist, wird das Programm D. gestartet.
sowohl von den peripheren Geräten (Eingangs- und Ausgangsleitungsübertrager, Trommelspeicher, Bandspeicher, Leser, Schreiber usw.)
als auch von Steuerkreis der Rechenmaschine herkommen. Die Prioritätsschaltung empfangt diese Daten in Form von Nachfragesignale. Die Art und Weise, wie diese Nachfrageeignale entstehen,
- 12 - PHN.654
ist für die Erfindung belanglos und wird hier denn auch nicht
'beschrieben*
Ee ist praktisch, ein Programm, wenn es unterbrochen
werden muss, nicht im Verlauf eines Befehle, sondern am Ende eines völlig ausgeführten Befehles zu unterbrechen. FUr kurze,
nur einen oder zwei Impulszyklen der Rechenmaschine beanspruchende
Befehle ist etwas anderes kaum denkbar· Aber auch für längere, drei oder mehr Impulszyklen beanspruchende Befehle ist diese
Massnahme praktisch und zwar weil, wenn ein Programm im Verlauf
eines Befehles abgebrochen wird, das (aus einem einzigen Befehl bestehende) Programm zum zeitweiligen Speichern sämtlicher für
die Wiederaufnahme des Programmes erforderlichen Daten zwangsläufig komplizierter und folglich länger wird, so dass der etwaige Zeitgewinn minimal ist und den Nachteil der großseren
Komplikation, welche die Verwirklichung dieser Möglichkeit mit sich bringen würde, nicht aufwiegt·
Die Entscheidung, aus welchem Programm ein Befehl
zunächst ausgeführt werden muss, wird somit nach Ablauf jedes Befehles getroffen. Es leuchtet ein, dass zu diesem Zweck z.B.
das nachstehende dichotcmische Entscheidungsechema dienen kann
(siehe auch Pig. 2)»
■es liegen keine neuen oder unabgewickelten Anmeldungen vor)
es liegen neue oder unabgewickelte Anmeldungen vor;
,der gerade ausgeführte Befehl ist der letzte eines
der gerade ausgeführte Befehl ist nicht der letzte eines
BAD ORIGINAL 009827/U50
- 13 - PHH.654
das in der Abwicklung gegriffene Programm muss nicht unterbrochen werden?
das in der Abwicklung gegriffene Programm muss unter-■broohen
werden *
Die !Entscheidungen müssen immer zu einem Zeitpunkt
getroffen werden, zu dem gerade ein Befehl vollständig ausgeführt ist. Das Signal, das mit dieser Information identifiziert ist, wird
vom Steuerkreis der Rechenmaschine geliefert.
Um eine Entscheidung auf dem Niveau I treffen zu können, muss die Prioritätsschaltung eine Buchhaltung der eintreffenden
Anmeldungen führen und aus dieser die abgewickelten Nachfragen abbuchen. Letzteres erfolgt auf Grund einer Entscheidung
auf dem Niveau II.
Die Entscheidung auf dem Niveau II erfolgt an praktischsten auf Grund eines vom Steuerfreie der Rechenmaschine
gelieferten Signales, das angibt, ob der eben ausgeführte Befehl der letzte eines Programmes ist oder nicht. Zwar könnte die
PrioritStsschaltung diese Angabe auch selbst aus ihr vorher zur
Verfügung gestellten Angaben über die Längen der verschiedenen Programme und der erwähnten Buchhaltung ableiten, aber dies würde
einen verhältnismässig grossen zusetzlichen Materialaufwand
erfordern, während diese Angabe ohne jede Schwierigkeit und ohne nennenswerten Zeitverlust dem Programm selbst entnommen werden
.kann. Ausserdem würde die. erwähnte andere Lösung auf Komplikationen
stossen, wenn ein Programm durch ein anderes, z.B. kürzeres, Programm ersetzt wird.
Die Entscheidung auf den Niveau III kann auf Grund von
Angaben getroffen warden, die der von der Prioritätsschaltung
VQ09827/U50
BAD OHiQfNAL
geführten Buchhaltung entnommen werden·
Fig. 3 zeigt das Blockschaltbild einer Prioritäteschal
tung, die die im vorstehenden geschilderte Punktion erfüllen
kann. Diese Schaltung besteht aus vier Nachfr&genregistern A, B,
C und D, einem Gruppenregister Gr und einem Adressengenerator
AdrGen.
Die Anmeldungsregister A7 B, C und D empfangen die
Nachfragesignale, und zwar das Register A alle Nachfragen der
Gruppe A, das Register B alle Nachfragen der Gruppe B, usw. In
jedem dieser Naehfragenregiater wird eine Buchhaltung sämtlicher
eintreffenden Nachfragen geführt, die auch registriert, ob die
Anmeldungen noch in Angriff genommen werden müssen oder bereits
teilweise verarbeitet, aber noch nicht erledigt sind. Eine völlig
erledigte Anmeldung verschwindet aus dieser Buchhaltung.
Wenn innerhalb ein und derselben Gruppe keines der
Programme eine starke Priorität vor einem anderen Programm dieser
Gruppe hat - was im vorstehenden bereits angenommen wurde, für
die Erfindung jedoch nicht von Belang ist - kann in jeder Gruppe
höchstens ein unterbrochenes Programm vorkommen. Dies hat den Vorteil, dass in diesen Falle jedem Nachfragenregister mehrere
diesem Register fest auge ordne te Speicherzellen zugeteilt werden
können, um die für eine spätere Wiederaufnahme eines unterbrochenen
Programmes erforderlichen Daten zeitweilig zu speichern. Diese Speicherzellen werden nachstehend zusammen als der dem betreffenden
Nachfragenregister zugeordneten Aufbewahrungsraum bezeichnet. Der
Aufbewahrungsraum eines Nachfragenregisters braucht somit nicht
mehr Speicherzellen zu enthalten, als· zum zeitweiligen Speichern
der Daten für die Wiederaufnahme eines einzigen Programmes er-
009827/1450
-15 - PHH.654
forderlich sind. Sin unterbrochenes Programs kanu dann dadurch
wieder aufgenommen werden, dasa die erete Speicherzelle (die Startzelle) des Aufbewahrungsraumes für die betreffende Gruppe gelesen
wird« während weiter auch das Speicherprogramm sehr einfach sein
kann» Das Gänse muse «omit bo eingerichtet sein, daee, wenn in
einer bestimmten Gruppe ein Programm gestartet oder wieder aufgenommen werden ausβ (wozu das betreffende Kachfragenregie te r einen
Befehl in Form eine β Impulses vom Gruppenregister empfängt), das
Nachfragenregie te r dem Adre Beenge nerator AdrGen einen Impuls
zuführt, wodurch dieser die Adresse tier Start ze He des betreffenden
Programaee (wenn ein neues Programm'gestartet werden mues) oder
aber die Adresse der Startzelle des diesem Nachfragenregister zugeordneten Aufbewahrungeraumes (wenn ein zuvor unterbrochenes
Programm wieder aufgenommen werden muss) erzeugt.
Im Gruppenregister Gr wird eine Buchhaltung der-Gruppen
geführt, in denen Nachfragen nach neuen Programmen oder unterbrochenen Programmen (die zusammen ale unabgewickelte Programme bezeichnet
werden) vorkommen.Das Gruppenregieter empfangt die Baten für
diese Buchhaltung von den Nachfragenregistern und vom Steuerkreie
der Rechenmaschine.
Es wird angenommen, dass der Steuerkreis der Rechenmaschine ein "Befehl-auegefuhrt-Signal" in Fora eines Impulses a,
liefert, wenn gerade ein Befehl völlig ausgeführt worden ist, und
ein "Ende-deB-Programme8-Signal" in Form eines Impulses b_ liefert,
wenn der gerade ausgeführte Befehl der letzte eines Programmes ist. Der Impuls b_ kann auf bekannte Weise von einem am Ende des Programme β auftretenden Stoppbefehl abgeleitet werden, er kann jedoch
bei aus wenigen Befehlen bestehenden Programmen, (wie z.B. Aufbe-
G09827/U50
Wahrungsprogrammen) auch unmittelbar im Steuerkreis seihst er-Beugt
werden·
Das Gruppenregister enthält eine logische Schaltung,
die nach Empfang eines Impulses ji (ein Befehl ist rolle tändig
ausgeführt) festeteilt, ob«
1. das laufende Programm fortgesetzt werden muss)
2. ein neues Program* gestartet oder aber ein unterbrochenes Programm wieder aufgenommen werden muss, wobei, wenn
dies der Fall ist, ebenfalls festgestellt werden muss, zu welcher Gruppe dieses Programm gehört;
3· ein laufendes Programm unterbrochen werden muss, zu
welchem Zweck ein Aufbewahrungsprogranra gestartet werden muss·
Jedes Nachfragenregister enthält eine logische Schaltung, die im Auftrag eines "Brledige-Programm-Signales" in
Form eines Impulses, der vom Oruppenregieter geliefert wird, dafür
sorgt, dass ein neues Programm der betreffenden Gruppe gestartet
oder feber ein vorher unterbrochenes Programm dieser Gruppe wieder
aufgenommen wird· In beiden Fallen stellt die logische Schaltung fest, welches Programm der betreffenden Gruppe gestartet bzw.
wieder aufgenommen werden muss. Das Gruppenregißter sorgt dafür,
dass niemals ein Nachfragenregister, das keine unerledigte Nachfragen
enthält, ein "Erledige-Programia-Signal" empfängt.
. Fig. 4 zeigt das Schaltbild einer möglichen Ausführungsform
des Nachfragenregieters B. Die übrigen Naehfragenregister
können gemass den gleichen Prinzip gebaut sein. Die dargestellte
Schaltung enthält vier Flip-Flope FF., FF-, FF. und FF.,
in denen das Vorhandensein oder Fehlern einer Nachfrage registriert
wird und die deshalb im nachstehenden als Nachfragenregietrierglleder
009827/1450 "
. - 17 - - PHN.654
bezeichnet werden, ein Flip-Flop FP ", in dem registriert wird, ob
die Gruppe B ein bereits gestartetes jedoch noch nicht völlig abgewickeltes Programnenthält oder nicht, und der deshalb im nachstehenden
als Zustandsregistrierglied bezeichnet wird, eine ZShI^-
schaltung TC-mit acht Ausgängen I1, 1% 2», 2", 3», 3H, 41 und 4",
an denen im Arbeitszustand in zyklischer Folge je ein Impuls entsteht,
zwei ÖDER-Gatter V1 und Vg und sechs UND-Gatter W1, W2,-W,,
W4, P1 und P2.
Als Eingangssignale empfängt das Nächfragenregister
in erster Linie die Nachfragesignale AvB1, AvB2, AvB, und AvB,
in Form einmalig auftretender Impulse, wenn eine Anmeldung vorliegt.
Vom Gruppenregister Gr empfängt das Nachfragenregiöter B das
"Erledige-Programm-Signal" in Form eines Impulses Tn, wenn ein
Programm der Gruppe B gestartet oder wieder aufgenommen werden
mues, und das "Ende-des-Programmes-Signal" in Form eines Impulses
Z_, wenn gerade ein Programm der Gruppe B völlig abgewickelt worden
ist und somit als Nachfrage abgebucht werden muss. Es wird angenommen,
dass das Gruppenregister Gr so eingerichtet ist, dass, wenn gerade
ein Programm völlig abgewickelt worden ist und ein neues Programm gestartet oder ein zuvor unterbrochenes Programm wieder aufgenommen
werden muss, zunächst dem betreffenden Nachfragenregister das
"Ende-des-Programmes-Signal" und erst dann dem entsprechenden Nachfragenregister
das "Erledige-Programm-Signal" zugeführt wird<
Biese beiden Nachfragenregister können das gleiche Register sein*
Das Nachfragenregister B liefert dem Gruppenregister
Gr ein dauerndes oder stetiges "Enthalte-unabgewickeltes-Programm-Signal"
Xw, das angibt, ob die Gruppe B eine Nachfrage nach einem
noch nicht angefangenen Programm oder einem bereits gestarteten aber
Ϊ09827/Τ450
- 18 - PHK.654
noch nicht abgewickelten oder unterbrochenen Programm enthält
(Signalwert 1 ■ hohe Spannung) oder ob dies nicht der Fall ist
(Signalwert 0 « niedrige Spannung). Ferner kann das Nachfragen-
- register dem Adressengenerator AdrGen einen Impus PrB1, PrBp,
PrB. oder PrH liefern« Dieser Impuls hat zur Folge, dass die
Adresse der Startzelle des Programmes B., B-, B, bzw. B. oder des
Aufbewahrungsraumes des Nachfr.agenregisters B erzeugt wird.
Das Flip-Flop FF. (i.-■ 1, 2, 3, 4.) wird in den Zustand 1 gebracht, wenn eine Nachfrage nach dem Programm B. eintrifft,
und in den Zustand 0 zurückgebracht, wenn das Programm B. völlig
abgewickelt ist, was aus dem Empfang des "Ende-deβ-Prοgrammeβ-Signales"
Ζ_ hervorgeht. Dieses Signal beinhaltet nämlich die
Information, dass ein Programm der Gruppe B abgewickelt worden
ist, aber auf Grund der vorstehend erwähnten Voraussetzungen über
die Natur der Prioritäten kann dieses Programm kein anderes als
das zuletzt gestartete Programm der Gruppe B sein.
Das Flip-Flop FF wird jeweils, wenn ein Programm
der Gruppe B gestartet wird, in "den Zustand 1 gebracht und, wenn
das "Ende-des-*rogrammes-SignalM Z_ empfangen wird, in den Zustand
zurückgebracht.
Die Wirkungsweise der Schaltung lässt sich am
leichtesten verfolgen, in dem man sich fragt, wie das Nachfragen«
register auf die verschiedenen von Gruppenregister Gr gelieferten _
Signale ansprechen muss· Dies ist nachstehend tabellarisch zusammengefasst:
1. Es wird ein "Ende-des-Progranuses-Signal" Z empfangen.
Das Flip-Flop 'fP und dasjenige der Flip-Flops FF. (i - 1, 2, 3 oder
4) das dem gerade beendigten Projpruut entspricht, müssen in den
009827/1450
- 19 - PHN.654
handelt, geht aus dem Zustand hervor, in den die Zeitschaltung !FC
stillgesetzt ist.
2» Bs wird ein "Befehl-wiegeführt-Signal" Y5 empfangen.
2a. Bas Flip-Flop FP ist im Zustand 0 (kein unter-
brochenee Programa). Die Schaltung nuss in zyklischer Folge
ausfindig machen» welches Programm, nach dem eine Anfrage
läuft1 an der Reihe ist, zu welchem Zweck die ZRhIschaltung
TC vorgesehen ist. Stellt es sich heraus, dass dies das
Programa B. ist, so ause das Flip-Flop FF in den Zustand 1
gebracht und das Signal PrB. dem Adressengenerator AdrGen
zugeführt werden»
2b. Das Flip-Flop FF ist im Zustand 1 (es gibt ein unter-
brochenoβ Programm). Die Schaltung muss des Adressengenerator
AdrGen das Signal PrH zuführen.
Ss lässt sich leicht erkennen, dass die Schaltung
diese Funktionen tatsächlich erfüllt.
Ee sei zunächst angenommen, dass zu einem bestimmten
Zeitpunkt die Flip-Flops PF« und FF. im Zustand 1 sind (Nachfragen
nach den Programmen 3. und B.) und dass das Flip-Flop PP in
Zustand C ist (kein unterbrochenes Programm), während die Zählschaltung TC la Stand 2 gestoppt ist (das zuletzt abgewickelte
Programm der Gruppe Bist das Programm B2). Das Signal Xg hat in
diesem Falle den Signalwert 1 (die Gruppe B enthält noch nicht
gestartete Programme).
Wird jetzt ein Impuls T_ empfangen, so erreicht dieser
Impuls übe.r das UND-Gatter P1 die Zählschaltung TS. Diese wird
infolgedessen in Betrieb gesetzt und liefert nacheinander je einen
009827/HSO '
- 20 - · PHN.654
Impuls an den Ausgängen 31, 3", 41, von denen die ersten zwei
keine Wirkung haben (weil FF- im Zustand 0 ist), aber der letzte
durch das UND-Tor H. hindurchgeht (weil PP. im Zustand 1 ist).
Der Adreesengenerator AdrGen empfängt somit einen Impuls PrB,
und erzeugt infolgedessen die Adresse der Startzelle des Programmes
B.ι das infolgedessen zu laufen anfängt.
Der vom UND-Gatter M, hindurchgelaseene Impuls geht
auch durch das ODSR-Gatter V2 hindurch, wodurch das Flip-Plop PP2
in den Zustand .1 gebracht wird (die Gruppe B enthält ein in Angriff genommenes Programm) und die Zählschaltung TS im Stand 4'
stillgesetzt vird.
Ee »ei nunmehr angenommen, dass der Impuls Y« zu einem
Zeitpunkt empfangen wird, zu dem die Flip-Flope FP., FF,, FF .
sämtlich im Zustand 1 sind (es liegen Nachfragen nach den Programmen B. und B, vor, während eines dieser beiden Programme bereite zuvor
in Angriff genommen wurde) und dass die Zählschaltung TS im Stand 4* gestoppt ist (das unterbrochene Programm ist das Programm B,).
Der Impuls T_ geht jetzt durch das UND-Gatter P2 hindurch, wodurch
der Adressengenerator AdrGen das Signal PrH empfängt. Infolgedessen
wird die Adresse der Startzelle des dem Nachfragenregieter B zugeordneten Aufbewahrungsraumes erzeugt, was zur Folge hat, dass
das unterbrochene Programm, im vorliegenden Falle das Programm B.,
wieder aufgenommen wird.
Der Empfang eines Impulses Zß hat zur Folge, dass das
Flip-Flop FF in den Zustand 0 gebracht wird und dass die Zählschaltung TS gerade einen Schritt tut. Wenn die Zählschaltung z.B.
im Stand 4' angehalten worden war (aus der Gruppe B war das Programm B, in der Abwicklung begriffen), so springt sie jetzt in den
0 0.9827/14-5 0
- 21 - PHH.654
Zustand 4M. Der hierdurch am Ausgang 4" erzeugte Impuls stellt
das Flip-Flop FF^. in den Zustand 0 zurück.
Aus dem vorstehenden geht hervor, dass, wenn ein Programm gestartet wird, die Zählschaltung in einem der Stände
1', 21, 3f oder 41 stehen bleibt. Sobald das betreffende Programm
abgewickelt ist, (der Impuls Z- wird empfangen) springt die Zählßchaltung
in den Stand 1M, 2M, 3" oder 4H.
Im vorstehenden wurde angenomaen, dass die Zählschaltung
im Arbeitszustand zyklisch ringsum zählt, wobei sie
beim Stand anfängt, in dem sie vorher angehalten war. Die Zählschaltung
kann selbstverständlich auch so ausgebildet werden» daee
sie nach ihrer Inbetriebsetzung etets vom Stand 1' aus zu zählen
beginnt. Dadurch erteilt man dem Programm B. jedoch eine schwache Priorität vor den Programmen B?, B, und B., dem Programm B2 vor
den Programmen B^ und B , dem Programm B, vor dem Programm B*.
Fig. 5 zeigt die drei Hauptteile, aus denen eich das
Gruppenregister Gr aufbauen lässt, nämlich einen Prioritätebe-3timmer
Prior, ein Laufendes-Programm-Register Lprog und eine
logische Schaltung LogS.
Der Prioritätsbestimmer Prior empfängt ale Eingangssignal
θ die von dem Nachfragenregistera gelieferten Signale X·, Xg,
X„ und X-. und liefert alc Ausgangssignale die Signale ^, j^ k, 1_.
In diesem Beispiel ist angenommen, dass diese Signale sämtlich Dauercignale sind, z.B. eine hohe oder niedrige Spannung. Wenn in
z.B. den Gruppen B, C und D Nachfragen oder unterbrocheneProgramme
vorkommen, ist X. eine niedrige Spannung und sind Xx,, X„ und Xn
A DOl/
hohe Spannungen. Von den AusgangssigÄalen ist in diesem Falle nur
ciaa Signal j. eine hohe Spannung, d.h. die Gruppe B wird als die eit
X 009827/1450
- 22 - PHK.654
der höchsten Friorität angewiesen.
Da3 Laufendee-Prograxim-Register LProg ist in Wirklichkeit
nichts anderes als ein Speicher. Ee empfängt ale Eingangßsignale
die von der logischen Schaltung gelieferten einmaligen Signale (Impulse) Y.. Yx,, Y-, und Y_ und liefert als Auegangeeignaie
die Dauersignale jn, 11, £ und j>. Wenn zu einen bestimmten Zeitpunkt
das Signal Y^ empfangen wird, bedeutet dies die Information, daes
ein Programm der Gruppe B gestartet oder wieder aufgenommen wird. Von den Auagangasignalen ist dann n_ eine hohe Spannung und müsden
ja, £ und £ niedrige Spannungen sein.
Die logische Schaltung empfängt vom Steuerkreis der
Rechenmaschine die einmaligen Signale ji und £. Wenn der fteuerkreie
jedoch beim nächsten Impulszyklus noch keinen Auftrag erhalten hat,
einen neuen Befehl ausführen zu lassen, werden die Impulse a. und
b_ wiederholt. Die logische Schaltung empfangt weiter vom Prioritätsbe
Stimmer die Dauersignale i_t J^1 je und 1_ und von Laufendes-Programm-Register
LFrog die Dauersignale γε, in, o_ und p_. In der Figur iet angenommen,
dass die Signale Jb, jn, n_, o_ und £ je über zwei Drahte
empfangen werden, d.h. sowohl in der bejahenden al3 der verneinenden Form, aber dies ist natürlich nicht wesentlich, weil die Negation
eines Signales über einen Invertor oder Negator aus ier Affirmation abgeleitet werden kann. Als Ausgangssignale liefert die logische
Schaltung die einmaligen Signale C„, 0-, und CL. (deren jedes ein
Aufbewahrungsprogramm für ein Programm in der Gruppe B, C bzw. D
startetjin der Gruppe A wird nie ein Programm unterbrochen, so dass
kein Bedürfnis nach einem Signal 0. besteht) und weiter die einmaligen Signale Υχ, Yfi, Yc, Υβ, Z^ Zß, ZQ und Z^.
^Au OfiKäiNAL
00 9 8 27/U50
Die geeignetste Bauart jedes dieser drei Teile hängt stark von der Bauart der übrigen Teile der Rechenmaschine und
insbesondere von der erforderlichen Geschwindigkeit ab. *
Fig. 6 zeigt eine mögliche Ausführurigsform eines
Priori tätsbestimaiers, der nach einem anderen Prinzip als ein
Frioritätsbeetiraeer mit einer Zählschaltung, wie er an Eand der
Fig. 4 beschrieben worden ist, arbeitet und erhetlich schneller ist. In dieser 7igur sind Q., Q2 und Q^ drei UND-Gatter. Als Eingangesignale empfängt die Schaltung die Signale X., X., X-, X_,
X_, X-, und X1, die den Flip-Flops. FF. (Fig. 4) der Nachfragenregister entnommen werden können.
2ε sei jetzt angenomiren, dass die Gruppen B und C
eine Fachfrage nach einem noch nicht gestarteten Programm oder einem unterbrochenen Programm enthalten. In diesem Falle sind
X., X11 und X„ eine hohe Spannung und X1. X_., Xn und X1. eine
Al?" Lr A' tit/ U
niedrige Spannung. Es lässt sich nunmehr leicht einsehen, dass in diesem Falle nur das Signal j_ eine hohe Spannung ist.
Laufendee-Programn-Registers LProg. Dieses empfängt als Eingangssignale die von der logischen Schaltung LogS gelieferten einmaligen
Signale Y., Yfl, Y„ und Y_ und liefert ale Ausgangeaignele die
Dauersignale cd, n_, o^ und %.· Jedem Eingangssignal, somit auch
jedem Ausgangesignal und jeder Gruppe von Programmen entspricht ein Flip-Flop* dea Eingangssignal Y das Flip-Flop T^, dem Eingangssignal Y- dae Flip-Flop Tfi, usw. Kenn jetzt z.B. ein Impuls Yfi
empfangen wird, was die Information bedeutet, dass in der Gruppe B
ein Programm gestartet oder wieder aufgenommen .wird, wird das
Flip-Floj. T- in den Zustand 1 und die Flip-Flops T , T- und T-. in
009827/USO "
den Zuetand O getrieben, gleichgültig in welchem Zuständen diese
Flip-Flops vorher waren. Infolgedessen wird nur das der Gruppe
von Programmen 5 entsprechende stetige Ausgangs signal ti eine hohe
Spannung· Die Dioden dienen dazu) die Eingänge auf bekannte Weiee
zu entkoppeln.
Fig· & zeigt eine mögliche Ausführungsform des Teiles
der logischen Schaltung LogS, der sich insbesondere auf die Gruppe A bezieht} die sich auf die übrigen Gruppen beziehenden Teile der
logischen Sohaliung können gemüse dem gleichen Prinzip aufgebaut
sein·
In dieser Figur sind R., R_t P., P., ... P _ UND-Gatter,
während D ein Verzögerungsglied ist.
Der betreffende Teil der logischen Schaltung spricht
nur auf die Signale a_, t>, i_ und π an, wobei das einmalige Signal j»
und das stetige Signal i^ in der affirmativen Form, dae einmalige
Signal b_ sowohl in der affirmativen als auch in der negierenden
Form und das stetige Signal ja nur in der negierenden Form empfangen
werden. Wichtig sind selbstverständlich nur die Fälle, dass ein Impuls ja und eine hohe- Spannung i_ empfangen werden (a_ ■ i^ - 1).
Die UND-Gatter R. und R_ liefern die einmaligen Signale a i i ■ und
ab h
1. ^"'»k'^i'^iS'^iiii"^^^!'^1
Dieser Fall tritt ein, wenn ein Programm der Gruppe A gerade abgewickelt werden ist, wobei zwei Möglichkeiten auftreten können«
1a. Die Gruppe A enthält weitere Nachfragen. In diesem Falle
muss das abgewickelte Programm abgebucht und dass dann an die Reihe kommende Programm der Gruppe A gestartet werden. Das
009 827/U50 **AÜ ORIGINAL
UND-Gatter R. liefert jetzt keinen Impuls, das UND-Gatter R2
aber liefert einen Impuls. Dor letztere Impuls geht durch das UND-Gatter Pg hindurch, wqdurch das Nachfragenregister A das
Signal Ζ, empfängt (das abgewickelte Programm wird abgebucht).
Das Signal X., und infolgedessen auch das Signal i_, bleibt
jedoch eine hohe Spannung (die Gruppe A enthält weitere Nachfragen). Der vom Verzögerungsglied D verzögerte Impuls geht
3omit durch das UND-Gatter P1n hindurch, wodurch das Nachfragenregister
A auch den Impuls Y. empfängt (das Programm, dae jetzt an der Reihe ist, wird gestartet)·
1b. Die Gruppe A enthält keine weiteren Nachfragen. In
diesem Falle muss das abgewickelte Programm abgebucht und das
an der Reihe seiende Programm mit der höchsten niedrigeren Priorität gestartet werden. Das UND-Gatter R1 liefert jetzt
keinen Impuls, das UND-Gatter R? aber liefert einen Impuls.
Dieser letztere Impula geht durch das UND-Qatter Pg hindurch,
wodurch das Nachfragenregister A das Signal Z, empfangt (dae
abgewickelte Programm wird abgebucht). Hierdurch ändert sich
das Signal X. und infolgedessen das Signal i^ in eine niedrige
Spannung. Der vom Verzögerungsglied. D verzögert hindurchgelassene
Impuls wird jetzt somit Tom UND-Gatter P10 gesperrt,
so dass das Nachfragenregister A keinen Impuls Y, empfängt. Während des nächsten Impulszyklus werden die Impulse ja und b_
wiederholt, während eich der Teil der logischen Schaltung, der aich auf das jetzt an der Reihe seiende Nachfragenregister
bezieht, in einem dem Fall 2. entsprechenden Zustand befindet»
2, a»1,^-1,i.«1,|«05a|i>B«0)aii,»1.
Dieser Fall tritt ein, wenn ein Programm einer Gruppe mit niedrigerer
' 0 09827/HSO
- 26 - PH*.654
Priorität gerade abgewickelt worden ist. Für die sich auf die
Nachfragenregister B, C und D beziehenden Teile der logischen Schaltung kann dieser Fall auch auftreten, wenn sich ein auf eine
Gruppe mit höherer Priorität beziehender Teil der logischen Schaltung im Fall Ta befunden hat. Das UND-Gatter R1 liefert
jetzt keinen Impuls, das UND-Gatter R^ aber liefert einen Impuls»
Der von R0 gelieferte Impuls geht durch da& UND-Gatter P-, P, oder
Pq hindurchi wodurch das betreffende Nachfragenregister einen
Impuls Z empfängt, und das eben abgewickelte Programm wird abgebucht.
Gehört dieses Programm z.B. zur Gruppe C, so war £ eine
hohe Spannung, und das UND-Gatter P,. lässt einen Impuls hindurch, so dass das Nachfragenregieter C einen Impuls Z empfang*. Der vom
ITerzögerungeglied D verzögert hindurchgelassene Impuls geht jetzt
durch das Gatter P1-. hindurch, so daas dag Nachfra£enre£iater A
einen Impula T. empfängt, wodurch das jetzt an der Reihe seiende
Programm der Gruppe A abgestartet wird·
Dieser Fall tritt ein, wenn ein Befehl eines bereits in Angriff genommenen Programmes der Gruppe A völlig ausgeführt iat, ohne
dase das Programm dadurch abgewickelt ist. Das Programm muss in diesem Falle ungestört weiter abgewickelt werden, d.h. die Schaltung
darf jetzt keinen einzigen Impuls ale Ausgangesignal liefern. Ee
wird auch tatsächlich ein Ausgangsimpuls geliefert, weil jetzt
weder das UND-Gatter R1 noch das UND-Gatter R2 einen Impuls liefert.
4» a_»1,b_«0, ^»ijjB-Oja^b^^jBeij^ab^i^eO.
Dieser Fall tritt ein, vnn ein Befehl ein» bereits in Angriff
genommenen Programmes einer Gruppe irit niedrigerer Priorität völlig
ausgeführt ist, ohne dass diese«; Programm dadurch abgewickelt ist·
009827/UBO
- 27 - PHH.654
Tiesea Prograoc rcues mithin zugunsten eines Programmes der Gruppe
A unterbrochen werden. Das UND-Gatter H. liefert jetzt einen Impuls,
aber das UND-Gatter Ep liefert keinen Impuls. Der vom UND-Gatter
E. gelieferte Impuls geht durch dae Gatter P-, P. odei· P^ hindurch,
wodurch der Adreeeengenerator einen Impuls 0_, 0_ oder 0_ empfängt.
Dieser Impuls startet das Aufbewahrungsprogremn für das betreffende
Programm in der Gruppe E, C oder D. Sobald das Aufbevahrunfisprogranim
(ein einsiger Befehl) abgewickelt ist, empfangt die Schaltung die
Iicpula £ und jb, wahrend noch immer i_ - 1 und £ * 0 ist. Die Schaltung gelangt dann eocit in den Zustand 2.
009 8.2 7/U50
Claims (1)
- PATENTANSPRUCH; ,Prioritätsschaltung für eine mit einem Speicher versehene Datenverarbeitungsanlage, z.B. Rechenmaschine für allgemeine Zwecke, deren Steuerkreis ein "Befehl-ausgeführt-Signal" und ein "Ende-des-Programmes-Signal" liefert, dadurch gekennzeichnet,daß die Prioritätsschaltung mindestens zwei" Nachfragenregister, ein Gruppenregister und einen Adressengenerator enthält;daß jedes Nachfragenregister für den Empfang mehrerer Nachfragesignale für diesem Nachfragenregister einzeln zugeordnete Programme für den Empfang eines vom Gruppenregister weitergeleiteten "Ende-des-Programines-Signales" , für den Empfang eines vom Gruppenregister gelieferten "Erledige-Programm-Signales", für die Lieferung an das Gruppenregister eines "^Enthalteunabgewickeltes-Programm-Signales" und für die Lieferung eines Impulses an den Adressengene-rator, wodurch die Adresse einer individuell einem Programm der betreffenden Gruppe zugeordneten Speicherzelle oder die Adresse einer sämtlichen Programmen dieser Gruppe gemeinsamen Speieherzelle erzeugt wird, eingerichtet ist;daß das Gruppenregister für den Empfang des vom Steuerkreis der Rechenmaschine gelieferten "Befehl-ausgeführt-Signalea" und "Ende-des-Programmes-Signales", für den Empfang der von den Anmeldungsregistern gelieferten "Enthalteunabgewickeltes-Programm-Signale", für die Lieferung eines Impulses an den Adressengenerator, wodurch die Adresse einer anderen, sämtlichen Programmen einer Gruppe gemeinsamen Speicherzelle erzeugt wird, für die Weiterleitung an ein Nachfragenregister eines "Ende-des-Programmes-Signales" und für die Lieferung eines "Erledige-Programm-Signales" für eines der Nachfragenregister eingerichtet ist; <0 0 9827/ U SOdass einNachfragenregiater für jedes Programm der betreffenden Gruppe ein als NachfragenregistriergerUt bezeichnetes zweiwertiges Speicherelement, das im Zustand 1 ist, wenn für das Programm eine ncch nicht erledigte Nachfrage läuft, sowie ein als Zustandsregistriergerät bezeichnetes zweiwertiges Speicherelement enthält, das im Zustand 1 ist, wenn die betreffende Gruppe ein bereits gestartetes aber noch nicht erledigtes Programm enthält|dasβ das Gruppenregister für jedes Nachfragenregister ein als Ueberwachungsregisteuergerät bezeichnetes zweiwertiges Speicherelement enthält, das im Zustand I left, wenn ein Programm der betreffenden Gruppe in der Abwicklung begriffen iat|dass ein Nachfragenregister dadurch auf den Empfang eines "Ende-des-Programmes-Signales" anspricht, dass es das betreffende Anmeldungsregistriergerät und das Zustandsregistriergerä^t in den Zustand 0 zurückstellt, und auf den Empfang eines "Erledige— Programm-Signales" dadurch anspricht, dass es dem Adreasengenerator einen Impuls zuführt, wodurch die Adresse_ der Speicherzelle, die dem jetzt an der Reihe seienden Programm zugeordnet ist, oder die Adresse der sämtlichen Programmen der betreffender. Gruppe gemeinsamen Speicherzelle erzeugt wird, je nachdem das Zustandsregistriergerflt im Zuatand U oder im Zustand 1 war, während das Zustandsregistriereerät im ersten Falle in den Zustand 1 gebracht wirdf. iaea das Gruipeni'egister dadurch auf den Smpi'ang · ainos "finde-deB-Programmea-Signales" anspricht, dass es diese» iiignal an das betreffende Anmeldungsregister weiterleitet, und auf den Empfang eine« "Befehl-auögeführt-Signales" dadurch anspricht, •lass »'s entweder dem jetzt an der Reihe seienden Naohfragenregistei1 ein "rirledige-Programm-Signal" zuführt^oder dem AdreseengeneTator0 0 9 8 2 7 / U 6 0 ßAD 0R/QiiS/AL•in«η Iapuls zuführt, wodurch die Adresse der zweiten, «tätlichen Programmen der jetzt an der Reihe seienden Gruppe gemeinsamen Speicherzelle erzeugt wird, je nach dem gleichzeitig ein "Ehdedes-Programmes-Signal" empfangen ist oder nicht·l!0098 27/1 ASO BAD
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL6500562A NL6500562A (de) | 1965-01-16 | 1965-01-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE1524198A1 true DE1524198A1 (de) | 1970-07-02 |
Family
ID=19792129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19661524198 Pending DE1524198A1 (de) | 1965-01-16 | 1966-01-12 | Prioritaetsschaltung fuer eine Datenverarbeitungsanlage,z.B. Rechenmaschine zu allgemeinen Zwecken |
Country Status (9)
Country | Link |
---|---|
US (1) | US3491339A (de) |
AT (1) | AT260580B (de) |
BE (1) | BE675164A (de) |
CH (1) | CH451566A (de) |
DE (1) | DE1524198A1 (de) |
DK (1) | DK114868B (de) |
GB (1) | GB1135554A (de) |
NL (1) | NL6500562A (de) |
SE (1) | SE318431B (de) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3648253A (en) * | 1969-12-10 | 1972-03-07 | Ibm | Program scheduler for processing systems |
US3774163A (en) * | 1972-04-05 | 1973-11-20 | Co Int Pour L Inf | Hierarchized priority task chaining apparatus in information processing systems |
US4044333A (en) * | 1972-07-26 | 1977-08-23 | Siemens Aktiengesellschaft | Data processing switching system |
US4564901A (en) * | 1983-07-21 | 1986-01-14 | Burroughs Corporation | Method of performing a sequence of related activities via multiple asynchronously intercoupled digital processors |
GB2167583B (en) * | 1984-11-23 | 1988-11-02 | Nat Res Dev | Apparatus and methods for processing an array of items of data |
GB2302743B (en) * | 1995-06-26 | 2000-02-16 | Sony Uk Ltd | Processing apparatus |
US5794306A (en) * | 1996-06-03 | 1998-08-18 | Mid Products, Inc. | Yard care machine vacuum head |
US11922161B2 (en) | 2022-03-07 | 2024-03-05 | Bank Of America Corporation | Scheduling a pausable automated process in a computer network |
US11792135B2 (en) | 2022-03-07 | 2023-10-17 | Bank Of America Corporation | Automated process scheduling in a computer network |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL136146C (de) * | 1957-12-09 | |||
NL229160A (de) * | 1958-06-30 | |||
US3029414A (en) * | 1958-08-11 | 1962-04-10 | Honeywell Regulator Co | Information handling apparatus |
NL248274A (de) * | 1959-02-16 | |||
GB986103A (en) * | 1960-06-30 | 1965-03-17 | Nat Res Dev | Improvements in or relating to electronic digital computing machines |
US3239819A (en) * | 1960-11-07 | 1966-03-08 | Gen Electric | Data processing system including priority feature for plural peripheral devices |
US3221309A (en) * | 1961-08-10 | 1965-11-30 | Scam Instr Corp | Priority interrupt monitoring system |
BE634161A (de) * | 1962-07-03 | |||
US3309672A (en) * | 1963-01-04 | 1967-03-14 | Sylvania Electric Prod | Electronic computer interrupt system |
US3331055A (en) * | 1964-06-01 | 1967-07-11 | Sperry Rand Corp | Data communication system with matrix selection of line terminals |
-
1965
- 1965-01-16 NL NL6500562A patent/NL6500562A/xx unknown
-
1966
- 1966-01-12 DE DE19661524198 patent/DE1524198A1/de active Pending
- 1966-01-13 SE SE464/66A patent/SE318431B/xx unknown
- 1966-01-13 AT AT30266A patent/AT260580B/de active
- 1966-01-13 GB GB1655/66A patent/GB1135554A/en not_active Expired
- 1966-01-13 CH CH41466A patent/CH451566A/de unknown
- 1966-01-13 DK DK18366AA patent/DK114868B/da unknown
- 1966-01-14 BE BE675164D patent/BE675164A/xx unknown
- 1966-01-17 US US520971A patent/US3491339A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US3491339A (en) | 1970-01-20 |
NL6500562A (de) | 1966-07-18 |
AT260580B (de) | 1968-03-11 |
DK114868B (da) | 1969-08-11 |
CH451566A (de) | 1968-05-15 |
SE318431B (de) | 1969-12-08 |
BE675164A (de) | 1966-07-14 |
GB1135554A (en) | 1968-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3511023C2 (de) | Analog/Digital-Wandler | |
DE1956604A1 (de) | Datenverarbeitungsanlage mit einem Speichersystem | |
DE2364254A1 (de) | Schaltungsanordnung fuer datenverarbeitende geraete | |
DE1774052B1 (de) | Rechner | |
DE1524111C3 (de) | Elektronische Datenverarbeitungsanlage | |
DE1524198A1 (de) | Prioritaetsschaltung fuer eine Datenverarbeitungsanlage,z.B. Rechenmaschine zu allgemeinen Zwecken | |
DE1190706B (de) | In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine | |
DE2720842A1 (de) | Daten-uebertragungssystem | |
DE1774421B1 (de) | Mehrprogramm datenverarbeitungsanlage | |
DE2404887C2 (de) | Schaltungsanordnung für den Informationsaustausch mit einem Rechner | |
DE2853138B1 (de) | Verfahren und Schaltungsanordnung zur UEbermittlung von Signalen in speicherprogrammierten Vermittlungsanlagen | |
DE2610428A1 (de) | Anordnung zur steuerung der zwischenspeicherung von zwischen zwei funktionseinheiten zu uebertragenden daten in einem pufferspeicher | |
AT392866B (de) | Und mit ihnen zusammenarbeitenden arbeitsspeichern | |
DE2028345B2 (de) | Verfahren zur Verteilung von Ablaufanforderungen in einer programmgesteuerten Datenvermittlungsanlage | |
DE1152837B (de) | Elektronische Maschine zur Informationsverarbeitung | |
DE3036923C2 (de) | Mit Eingabeeinrichtungen wahlweise bestückbare Station für Signalübertragungseinrichtungen | |
EP0155370B1 (de) | Schaltung zur Adressierung eines Speichers | |
DE1774533C (de) | Einrichtung zur Aufgabenwahl in einem Vielfachrechner | |
DE3540774C2 (de) | ||
DE1524179B2 (de) | Einrichtung zur wahlfreien zusammenstellung und verteilung von datenbytes | |
DE1905659A1 (de) | Verfahren und Schaltungsanordnung zum UEberwachen von Verbindungen in speicherprogrammierten Fernmeldevermittlungs-anlagen fuer binaere,codierte Nachrichten | |
DE2007401C (de) | Pufferspeicher zum Verzogern der Adressierung bei einer programmgesteuer ten Fernmeldeanlage | |
AT240922B (de) | System zur Durchführung von Vermittlungsaufgaben, insbesondere für Fernsprechzwecke | |
DE1914578A1 (de) | Pogrammgesteuerte Datenverarbeitungsanlage,insbesondere fuer die Abwicklung von Vermittlungsvorgaengen in einer Fernsprechvermittlung | |
DE2551745C3 (de) | Indirekt gesteuerte Vermittlungsanlage, insbesondere Fernsprechvermittlungsanlage, und Verfahren zu deren Betrieb |