DE3639395A1 - Verfahren und vorrichtung zum uebertragen von daten in einem datenverarbeitungssystem mit einer vielzahl von prozessoren - Google Patents
Verfahren und vorrichtung zum uebertragen von daten in einem datenverarbeitungssystem mit einer vielzahl von prozessorenInfo
- Publication number
- DE3639395A1 DE3639395A1 DE19863639395 DE3639395A DE3639395A1 DE 3639395 A1 DE3639395 A1 DE 3639395A1 DE 19863639395 DE19863639395 DE 19863639395 DE 3639395 A DE3639395 A DE 3639395A DE 3639395 A1 DE3639395 A1 DE 3639395A1
- Authority
- DE
- Germany
- Prior art keywords
- program
- processors
- memory
- signal
- address
- 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; 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/22—Microcontrol or microprogram arrangements
- G06F9/24—Loading of the microprogram
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)
- Image Processing (AREA)
Description
Die vorliegende Erfindung bezieht sich auf ein Verfahren und
eine Vorrichtung zum Übertragen von Daten in einem Daten
verarbeitungssystem mit einer Vielzahl von Prozessoren.
Bisher bekannte Informationsverarbeitungs-Vorrichtungen,
beispielsweise Video-Bildverarbeitungssysteme, sind (wie z.
B. in "Treatises of Institute of Electronics and Communica
tion Engineers of Japan 85/4, Vol. J 68-D No. 4" und in der
japanischen Offenlegungsschrift Nr. 58-215813 offenbart) mit
einer Vielzahl von Prozessoren versehen, und die Mikropro
gramme als die Inhalte der Mikroprogrammspeicher darin müs
sen ggf. umgespeichert werden, wenn der Verarbeitungsumfang
groß wird. In einem solchen Fall werden die Mikroprogramme
von einem Programmversorgungsabschnitt zugeführt, der im
allgemeinen als ein Host-Computer für alle der Prozessoren
ausgebildet ist und beispielweise dazu bestimmt ist, eine
Umspeicherung oder einen Austausch von Mikroprogrammen auf
Abruf nach Betätigung eines dafür vorgesehenen Schalters
durch einen Benutzer des Systems zu steuern.
Wenn beispielsweise eine Vielzahl von kurzen Programmen
sequentiell durch einen Prozessor abgearbeitet werden muß,
ist es allgemein üblich, daß die Programme eines nach dem
anderen jedesmal dann zu dem Prozessor übertragen werden,
wenn ein Programm abgearbeitet worden ist.
Wenn das System eine Vielzahl von Prozessoren enthält und
unterschiedliche Programme zu der Vielzahl von Prozessoren
zu übertragen sind, ist es allgemein üblich, daß derjenige
Prozessor, zu dem ein Programm zu übertragen ist, jeweils
für jedes ihm zu übertragende Programm gezielt angesteuert
oder ausgewählt wird.
Wenn in einem derartigen bekannten System eine Vielzahl von
kurzen Programmen sequentiell zu einem Prozessor zu deren
Abarbeitung zu übertragen ist, müssen die Übertragungsvor
gänge sooft wiederholt werden, wie es der Anzahl der zu
übertragenden Programme entspricht, was einen großen Anteil
der Verarbeitungszeit nur für die Programmübertragungsvor
gänge benötigt, so daß die Verarbeitungsgeschwindigkeit
nachteiligerweise insgesamt herabgesetzt wird.
Außerdem ist es, wenn in einem derartigen System eine Viel
zahl von unterschiedlichen Programmen zu einer Vielzahl von
Prozessoren zu übertragen ist und dazu die Prozessoren je
weils für jedes Programm gezielt angesteuert oder ausgewählt
werden müssen, erforderlich, eine Anordnung vorzusehen, die
die Auswahl der Prozessoren steuert. Eine derartige Anord
nung macht jedoch die notwendigen Schaltungsanordnungen
kompliziert und umfangreich, was die Wirtschaftlichkeit und
die Störsicherheit beeinträchtigt.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, eine
Datenübertragungs-Vorrichtung für eine Informationsverar
beitungs-Vorrichtung der eingangs genannten Art zu schaffen,
die eine verbesserte Datenübertragungstechnik für den ge
nannten Zweck ermöglicht.
Zur Lösung dieser Aufgabe wird eine Informationsverarbei
tungs-Vorrichtung vorgeschlagen, die durch einen Programm
versorgungsabschnitt, Schreibsignalerzeugungsmittel und
einen Datenprozessor mit einer Mikroprogrammsteuereinrich
tung, einem Mikroprogrammspeicher, einer arithmetischen Ein
heit und Auswahlmitteln zum abwechselnden Auswählen einer
Adresse aus der Mikroprogrammsteuereinrichtung und einer
Adresse aus dem Programmversorgungsabschnitt und Übertragen
derselben zu dem Mikroprogrammspeicher, in dem sie derart
adaptiert wird, daß in einer ersten Betriebsart die Adresse
aus der Mikroprogrammsteuereinrichtung durch die Auswahl
mittel an den Mikroprogrammspeicher übergeben wird und da
durch ein Programm ausgeführt wird, in einer zweiten Be
triebsart, während die Adresse aus der Mikroprogrammsteu
ereinrichtung durch die Auswahlmittel dem Mikroprogramm
speicher übergeben wird, die Mikroprogrammsteuereinrichtung
mit einem Signal versorgt wird, wodurch dieselbe veranlaßt
wird, fortlaufend Programmstartadressen zu erzeugen, und in
einer dritten Betriebsart die Adresse aus dem Programmver
sorgungsabschnitt durch die Auswahlmittel dem Mikropro
grammspeicher entsprechend einem Schreibsignal aus den
Schreibsignalerzeugungsmitteln übergeben wird, wobei das
Programm aus dem Programmversorgungsabschnitt in den Mikro
programmspeicher eingeschrieben wird, gekennzeichnet ist.
Weitere vorteilhafte Ausführungsformen der Erfindung werden
aus der im folgenden anhand mehrerer Figuren gegebenen Be
schreibung ersichtlich, wobei die Figuren jeweils bevorzugte
Ausführungsbeispiele für die vorliegende Erfindung betreffen.
Fig. 1 zeigt ein prinzipielles Blockschaltbild einer Bildver
arbeitungs-Vorrichtung in ihrer Gesamtheit, auf die
die Datenübertragungs-Vorrichtung gemäß der vorlie
genden Erfindung angewendet ist.
Fig. 2 zeigt ein Blockschaltbild eines Ausführungsbeispiels
für den hauptsächlichen Teil der Bildverarbeitungs-
Vorrichtung gemäß Fig. 1.
Fig. 3 zeigt ein Prinzipschaltbild eines Ausführungsbei
spiels für einen Teil der Anordnung gemäß Fig. 2.
Fig. 4 zeigt ein Flußdiagramm für eine Betriebsartsteue
rung.
Fig. 5 u. Fig. 6 zeigen jeweils Blockschaltbilder von Aus
führungsbeispielen für den hauptsächlichen Teil der
Bildverarbeitungs-Vorrichtung gemäß Fig. 1.
Fig. 7 zeigt ein Blockschaltbild eines weiteren Ausfüh
rungsbeispiels für den hauptsächlichen Teil der
Bildverarbeitungs-Vorrichtung gemäß Fig. 1.
Fig. 8 zeigt zeigt ein Impuls/Zeit-Diagramm, das die Ar
beitsweise der in Fig. 7 gezeigten Anordnung ver
deutlicht.
Fig. 9 zeigt ein Flußdiagramm, das die Funktionsabläufe in
einer Diagnoseschaltung, wie sie in Fig. 6 angegeben
ist, darstellt.
Fig. 10 zeigt ein Blockschaltbild eines weiteren Ausfüh
rungsbeispiels für den hauptsächlichen Teil der
Bildverarbeitungs-Vorrichtung gemäß Fig. 1.
Fig. 11 zeigt eine Tabelle, die die Inhalte eines in Fig. 10
dargestellten Speichers angibt.
Fig. 12 u. Fig. 13 zeigen Blockschaltbilder weiterer Aus
führungsbeispiele für den hauptsächlichen Teil der
Bildverarbeitungs-Vorrichtung gemäß Fig. 1.
Fig. 14 zeigt eine schematische Darstellung eines Beispiels
für ein durch die Anordnung gemäß Fig. 13 zu über
tragendes Programm.
Fig. 15 u. Fig. 16 zeigen Blockschaltbilder weiterer Aus
führungsbeispiele für den hauptsächlichen Teil der
Bildverarbeitungs-Vorrichtung gemäß Fig. 1.
Im folgenden wird ein Ausführungsbeispiel für die vorlie
gende Erfindung anhand der Figuren beschrieben, das auf ein
Video-Bildverarbeitungssystem angewendet ist.
Das in Fig. 1 gezeigte Beispiel für eine Video-Bildverar
beitungs-Vorrichtung ist für das Durchführen einer Hochge
schwindigkeits-Datenverarbeitung vorgesehen und enthält
einen Eingabe/Ausgabe-Teil 1 (im folgenden mit IOC bezeich
net), einen Speicherteil 2 (im folgenden mit VIM bezeich
net), der aus einem Eingabe-Bildspeicher 2 A (im folgenden
mit VIMIN bezeichnet) und einem Ausgabe-Bildspeicher (im
folgenden mit VIMOUT bezeichnet) besteht, einen Datenverar
beitungsteil 3, der aus einem Stationärpositions-Prozessor
system 3 A (im folgenden mit PIP bezeichnet) in der Haupt
sache zum Berechnen von Bildelementwerten und einem Vari
anzpositions-Prozessorsystem 3 B (im folgenden mit PVP be
zeichnet) zum Steuern von Datenflüssen, z. B. beim Bestimmen
von Adressen, und für Justierungsvorgänge, um Zeitlagen in
Einklang zu bringen, besteht, sowie einen Prozessor 4 (im
folgenden mit TC bezeichnet) als eine Gesamtsteuereinrich
tung zum Steuern der Ausführung und des Stoppens von Pro
zessen und zum Umspeichern von Programmen. Dem TC 4 ist ein
Host-Computer 5 (im folgenden mit HC bezeichnet) zum Steuern
der gesamten Video-Bildverarbeitungs-Vorrichtung zugeordnet.
Der IOC 1 führt eine A/D-Umwandlung von Videosignalen, die
beispielsweise von einer Videokamera VTR kommen, durch, um
digitale Bilddaten zu erzeugen, schreibt diese in den VIMIN
2 A ein, liest außerdem verarbeitete Bilddaten aus dem VIMOUT
2 B aus und führt eine D/A-Umwandlung derselben durch, um
wieder analoge Videosignale zu gewinnen, so daß diese bei
spielsweise mittels eines Videomagnetbandrecorders VTR 7
gespeichert werden können oder einem Monitorempfänger 8 zum
Ermöglichen einer Kontrolle des Video-Bildes, das zu erzeu
gen ist, zugeführt werden können.
Im vorliegenden Fall sind die Signale, die ein- und ausge
geben werden können, Videosignale gemäß dem NTSC-System oder
gemäß dem R-G-B-System, wobei jedes dieser Systeme durch den
TC 4 spezifiziert ist. Ein Bildelement wird beispielsweise
als ein 8-Bit-Wort angeboten.
Das Einschreiben und Auslesen von Bilddaten in den bzw. aus
dem VIM 2 wird jeweils für einen Block, ein Halbbild oder
ein Vollbild durchgeführt. Daher enthält sowohl der VIMIN 2 A
als auch der VIMOUT 2 B eine Vielzahl von Speichersegmenten,
wovon jedes eine Kapazität für Bilddaten eines Halbbildes
oder Vollbildes hat, beispielsweise 12 Segmente für je 768 ×
512 Bytes im Falle eines Vollbildspeichersegments. Im Falle
des vorliegenden Ausführungsbeispiels ist die Verwendung von
12 Speichersegmenten oder Vollbildspeichern nicht notwendi
gerweise vorbestimmt, jedoch aus Gründen der Flexibilität
sowohl für den VIMIN 2 A als auch den VIMOUT 2 B entsprechend
dem Zweck der Verarbeitung der Bilddaten als Gegenstand des
Verarbeitungsvorgangs gewählt worden. Der Speicher ist der
art organisiert, daß zwei Segmente als ein Segmentsatz be
nutzt werden können, d. h. daß dann, wenn eines der Segmente
zum Einschreiben freigegeben wird, das betreffende andere
der zwei Segmente zum Auslesen freigegeben wird, wodurch
ermöglicht wird, daß eine Verarbeitung außerhalb des VIM 2
durch den IOC 1 und eine Verarbeitung innerhalb des VIM 2
durch das PIP 3 A und das PVP 3 B parallel durchgeführt wer
den. Im vorliegenden Fall wird ein Steuerbetriebsartsignal,
das bestimmt, ob die Vielzahl von Speichersegmenten der
Vollbildspeicher des VIM 2 von dem IOC 1 her oder von dem
PVP 3 B her gesteuert werden sollen, von dem IOC 1 ausgegeben
und an den VIM 2 abgegeben.
Der Datenverarbeitungsteil enthält einen Prozessor, liest
Bilddaten, die in dem VIMIN 2 A gespeichert sind, entspre
chend seinem Programm aus, verarbeitet die Daten auf ver
schiedene Weise und schreibt die verarbeiteten Daten in den
VIMOUT 2 B ein.
Der Datenverarbeitungsteil 3 ist aus getrennten Systemen,
nämlich dem PIP 3 A und dem PVP 3 B, aufgebaut, und vermöge
dieser getrennten Anordnung wird die Verarbeitungszeit, die
in dem Datenverarbeitungsteil verbraucht wird, nur durch
denjenigen Zeitverbrauch bestimmt, der der größere von denen
ist, die durch die beiden Systeme gefordert werden, während
der Zeitverbrauch durch die Summe der Verarbeitungszeiten in
einem Datenverarbeitungsteil für den genannten Zweck nach
dem Stand der Technik bestimmt ist. Daher wird in dem Fall
des vorliegenden Beispiels eine Verarbeitung mit einer der
art hohen Geschwindigkeit erreicht, daß die Verarbeitung von
Videodaten auf der Grundlage eines Echtzeitbetriebs durch
geführt werden kann.
Der Prozessor des Datenverarbeitungsteils 3 ist als eine
einzige Prozessoreinheit oder als eine Vielzahl von Prozes
soreinheiten aufgebaut, und die erforderlichen Mikropro
gramme als die Inhalte der Mikroprogrammspeicher sind dazu
bestimmt, umgespeichert zu werden, wenn der Verarbeitungs
umfang dies erforderlich macht.
Die Programmumspeicherung oder der Programmaustausch wird
auf folgende Weise vorgenommen:
Die Mikroprogramme werden von dem HC 5 vorab zu dem TC 4
übertragen und beispielsweise in einem RAM, der darin vor
gesehen ist, gespeichert. Danach übergibt, wenn der Benutzer
eine Anforderung zum Umspeichern einiger Programme (durch
Betätigen eines Schalters) einleitet, der TC 4 beispiels
weise die Programme jedem der Prozessoren.
Das PIP 3 A und das PVP 3 B weisen grundsätzlich gleiche Ar
chitekturen auf und bestehen jeweils aus einem unabhängigen
Prozessor, der eine Steuereinheit, eine arithmetische Ein
heit, eine Speichereinheit sowie einen Eingabe/Ausgabe-
Baustein enthält. Jedes der Systeme ist in einer Multipro
zessor-Struktur mit einer Vielzahl von Prozessoreinheiten
angeordnet und derart ausgelegt, daß eine hohe Verarbei
tungsgeschwindigkeit, hauptsächlich durch Verwendung eines
Parallelverarbeitungsprinzips, erreicht wird.
Das PIP 3 A enthält beispielsweise 60 PIP-Prozessoreinheiten
und einige Hilfsprozessoreinheiten und verarbeitet Bildda
ten, die von dem VIM 2 kommen, oder erzeugt Bilddaten inner
halb des PIP 3 A selbst.
Das PVP 3 B enthält beispielsweise 30 Prozessoreinheiten oder
um diese Anzahl herum und steuert die Flüsse der Bilddaten
in dem VIM 2 in Form einer Verteilung oder Zuweisung der
Bildelementdaten zu dem PIP 3 A oder deren Sammeln.
Das PVP 3 B erzeugt Adreßdaten und Steuersignale für den VIM
2 und liefert diese an den VIM 2 und erzeugt außerdem Ein
gabe/Ausgabe-Steuersignale und weitere Steuersignale für das
PIP 3 A und liefert diese an das PIP 3 A.
Die Bilddatenverarbeitung wird nicht immer in der Weise
durchgeführt, daß die Daten aus einem Segment des VIMIN 2 A
verarbeitet werden und die verarbeiteten Daten in den VIMOUT
2 B eingeschrieben werden, sondern es werden hin und wieder
Daten, die aus einer Vielzahl von Segmenten des Speichers
kommen und die Kapazität der Segmente übersteigen, verar
beitet.
Die Anzahl von Ziffern für das arithmetische Verarbeiten in
dem PIP 3 A und dem PVP 3 B beträgt 16 bit als Standard, und
auf diese Weise ist eine Verarbeitungsgeschwindigkeit bei
der arithmetischen Verarbeitung von Bilddaten, die Bilddaten
eines Halbbildes oder Vollbildes innerhalb einer Halbbild
oder Vollbildperiode verarbeitet, erreichbar, was eine eine
Echtzeitverarbeitung gestattet. Selbstverständlich fallen
auch Prozesse an, die eine längere Verarbeitungszeit, als es
einer Halbbild- oder Vollbildperiode entspricht, benötigen.
Im vorliegenden Fall wird die Bilddatenverarbeitung durch
das PIP 3 A und das PVP 3 B in Synchronismus mit der Bildpe
riode durchgeführt. Dazu wird ein Prozeßbeginnzeit-Signal
PS, das in Synchronismus mit der Bildperiode erzeugt wird,
von dem IOC 1 an das PVP 3 B übergeben. Das Signal PS weist
normalerweise einen hohen Pegel auf und wird bei Prozeß
beginn auf einen niedrigen Pegel gebracht. Andererseits wird
ein Signal OK, das anzeigt, daß ein Prozeß beendet worden
ist, von dem PVP 3 B an den IOC 1 übergeben. Dieses Signal OK
wird von einem Prozessor im Kern des PVP 3 B ausgegeben,
welcher Prozessor die Zeitsteuerung der Prozessoren des
Verarbeitungssystems des PVP 3 B durchführt, wenn ein Prozeß
beendet worden ist. Das Prozeßbeginnzeit-Signal PS wird in
dem IOC 1 auf der Grundlage eines Bildperiodenbeginn-Si
gnals, das die erste Zeile jedes Bildes kennzeichnet, und
des Prozeßende-Signals OK erzeugt.
Wenn die Verarbeitung auf einer Echtzeitbasis durchgeführt
wird, wird da das Signal OK stets am Ende einer Bildperiode
gewonnen wird, das Signal PS das gleiche wie das Bildperio
denbeginn-Signal FL.
Andererseits tritt, wenn die Verarbeitungszeit länger als
eine Bildperiode ist, das Signal PS nicht mit der Bildperi
ode auf, sondern wird am Beginn einer Bildperiode, nachdem
ein Signal OK ausgegeben worden ist, gewonnen.
Wenn durch den Prozessor im Kern des PVP 3 B abhängig von
einem Programm der Umstand erfaßt wird, daß das Prozeßbe
ginnzeit-Signal PS aus dem IOC 1 auf einen niedrigen Pegel
gesetzt worden ist, beginnt dieser Prozessor zu arbeiten und
gibt entsprechend dem Programm Zeitsteuersignale an weitere
Prozessoren (inklusive diejenigen des PIP 3 A) aus, überträgt
Adressen an den VIM 2, liest die Bilddaten aus dem VIM 2 aus
und gestattet, daß dieselben in dem PIP 3 A verarbeitet wer
den. Dieser Prozessor gibt dann, wenn die Verarbeitung be
endet worden ist, das Signal OK aus, beendet seine Arbeit
und wartet auf die Ausgabe des nächsten Prozeßbeginnzeit-
Signals PS.
In diesem Fall wird nur der Bildsignalteil ohne das Syn
chronsignal oder Burst-Kennsignal verarbeitet, und die Da
ten, die aus dem VIM 2 ausgelesen werden, enthalten das
Synchronsignal bzw. das Burst-Kennsignal nicht. Dazu ist der
IOC 1 mit einem ROM ausgestattet, der das Synchronsignal,
das Burst-Kennsignal und das Vertikalaustastsignal erzeugt,
und in dem Fall, in dem ein NTSC-Signal vorliegt, werden die
Daten aus dem VIMOUT 2 B (nachdem sie umgeordnet sind, falls
dies erforderlich ist) zu dem D/A-Wandler zusammen mit dem
Synchronsignal, dem Burst-Kennsignal und dem Vertikalaus
tastsignal übertragen.
Außerdem wird in dem Fall eines Drei-Primärfarben-Signals
ein äußeres Synchronsignal notwendig. Dieses Signal wird
ebenfalls in dem IOC 1 erzeugt und dem Monitor oder anderen
Einrichtungen übergeben.
In dem zuvor beschriebenen Parallelverarbeitungssystem, das
eine Parallelverarbeitung durch Verwendung einer Multipro
zessoranordnung gestattet, führt der TC 4 eine sog. synthe
tische Steuerung entsprechend den weiter unten zu beschrei
benden drei Betriebsarten durch. Dadurch wird die Durchfüh
rung von Prozessen, das Anhalten des Systems und eine Pro
grammübertragung (Umspeicherung) im Einklang miteinander
vorgenommen, und es werden außerdem die Übertragung und die
Durchführung wirksam durch Verwendung eines langsamen Taktes
und eines schnellen Taktes zu den Zeitpunkten der Programm
übertragung bzw. der Programmdurchführung wirksam geführt.
Fig. 2 zeigt, wie bereits erläutert, ein Blockschaltbild mit
den erforderlichen Verbindungen zwischen der Steuereinheit
eines aus der Vielzahl von Prozessoren, die das PIP 3 A oder
das PVP 3 B bilden, und dem TC 4. Die gezeigte Struktur ist
allen Prozessoren, von denen Programme ausgetauscht oder
umgespeichert werden, gemeinsam.
Der Teil der Figur, der andere Einrichtungen als den TC 4
zeigt, betrifft ein Ausführungsbeispiel für die Struktur der
Steuereinheit des Prozessors. Eine hierin vorgesehene Mi
kroprogrammsteuereinrichtung 10 erzeugt Adressen von Mikro
programmspeichern 11 . . . 14, die aus RAM′s gebildet sind.
Der Mikroprogrammspeicher 11 stellt ein Befehlsbit, bei
spielsweise aus einer Gruppe mit vier Bits, zum Auswählen
eines aus einer Vielzahl von Befehlen in der Mikropro
grammsteuereinheit 10 zur Verfügung, und dieses Befehlsbit
wird an eine Befehlseingang I der Mikroprogrammsteuereinheit
10 über ein Register 15 gelegt.
In dem vorliegenden Fall hat die Mikroprogrammsteuereinheit
10 ein Volumen für 16 Arten von Befehlen.
Eine Auswahleinrichtung 16 wird mit einer Vielzahl von er
forderlichen Ein-Bit-Befehlen versorgt, und einer davon wird
entsprechend einer Information, die aus dem Mikroprogramm
speicher 12 ausgelesen wird, ausgewählt. Der Ein-Bit-Befehl
aus der Auswahleinrichtung 16 wird einem Eingang CC der Mi
kroprogrammsteuereinrichtung 10 als ein Zustandscode zuge
führt, der mit dem Befehlsbit kombiniert wird und als In
formation zum Freigeben einer nächsten Adresse dient, die
auf der Grundlage der vorangegangenen Adresse durch Inkre
mentieren oder durch die Adresse, die an einen Direktein
gabeeingang D gelegt wird, oder auf der Grundlage einer an
deren Adresse bestimmt wird.
Der Mikroprogrammspeicher 13 stellt beispielsweise eine
Information über die Adresse des Zielpunkts einer "GO TO-
Anweisung", die Anzahl von Wiederholungen einer "DO-Schlei
fe" oder dergl. bereit, und diese Information wird durch ein
Register 17 a gehalten.
Der Mikroprogrammspeicher 14 stellt eine Information über
die Mikrobefehle bereit, und diese Information wird der
arithmetischen Einheit dieses Prozessors durch ein Register
18 zugeführt.
Außerdem ist ein Generator 25 für einen vorbestimmten Code
zum Ausgeben dieses vorbestimmten Code vorgesehen, welcher
Code durch den Entwickler nach den Erfordernissen erstellt
worden ist. Dieser vorbestimmte Code aus dem Generator 25
wird durch ein Register 26 der arithmetischen Einheit über
einen Bus zugeführt, der gemeinsam für die Mikrobefehle aus
dem Mikroprogrammspeicher 14 vorgesehen ist.
Die Mikroprogrammsteuereinrichtung 10 ist dazu bestimmt,
eines von drei Freigabesignalen, nämlich PL, VECT und MAP
gemäß dem Befehlsbit freizugeben. Demzufolge wird eines der
Register 17 a . . . 17 c entsprechend dem Befehlsbit freigege
ben, und die Adresse, die durch das Register gehalten worden
ist, wird das direkte Eingangssignal. Das Signal PL wird
durch die meisten der Befehle freigegeben, während die Si
gnale VECT und MAP nur durch spezielle Befehle freigegeben
werden. Der Zustand des Befehlsbit, der aussagt, ob das
direkte Eingangssignal ausgewählt ist oder nicht, ist von
dem Zustandscode aus der Auswahleinrichtung 16 abhängig.
Die Mikroprogrammsteuereinrichtung 10 ist derart einge
richtet, daß wenn der 4-Bit-Befehl aus dem Register 15 das
Bitmuster (00000 hat, was einen Befehl "JUMP ZERO" reprä
sentiert, stets die Adresse Null als die Startadresse von
der Mikroprogrammsteuereinrichtung 10 ohne Rücksicht auf den
Zustandscode ausgegeben wird.
Der TC 4 enthält einen RAM 41, in dem die Programme, die den
Mikroprogrammspeichern 11 . . . 14 zuzuführen sind, gespei
chert sind, und einen Adressengenerator 42 für denselben.
Außerdem sind sowohl ein Betriebsartsignalgenerator 43 zum
Erzeugen von 2-Bit-Betriebsartsignalen MA und MB zum Aus
wählen einer aus drei Betriebsarten, nämlich einer Ausfüh
rungs-Betriebsart, einer Rücksetz (Stop) - Betriebsart und
einer Programmaustausch-Betriebsart als auch ein Schreibsi
gnalgenerator 44 zum Erzeugen eines Programmschreibsignals
für die Mikroprogrammspeicher 11 . . . 14 in der Programm
austausch-Betriebsart vorgesehen.
Der Betriebsartsignalgenerator 43 ist beispielsweise wie in
Fig. 3 gezeigt aufgebaut.
Für diesen Betriebsartsignalgenerator sind Schalter SWA u.
SWB vorgesehen, die durch den Benutzer des Systems zu betä
tigen sind. Eine Klemme A jedes dieser Schalter ist mit ei
ner positiven Klemme einer Gleichstromquelle verbunden, und
eine andere Klemme B jedes dieser Schalter ist geerdet. An
der beweglichen Feder des Schalters SWA wird ein Signal a
gewonnen, das einer Eingangsklemme eines ODER-Glieds 45
zugeführt wird. An der beweglichen Feder des Schalters SWB
wird ein Signal b gewonnen, das einerseits als das Be
triebsartsignal MB herausgeführt wird und andererseits an
eine weitere Eingangsklemme des ODER-Glieds 45 gelegt wird.
Das Betriebsartsignal MA wird von dem Ausgang des ODER-
Glieds 45 her aus dem Betriebsartsignalgenerator heraus
geführt.
Im vorliegenden Fall werden die Betriebsarten wie im fol
genden gezeigt durch die 2-Bit-Betriebsartsignale MA u. MB
eingestellt:
Wenn der Schalter SWB auf die Seite der Klemme A gelegt ist,
wird die Ausführungs-Betriebsart ohne Rücksicht auf die
Schaltstellung des Schalters SWA eingestellt. Wenn der
Schalter SWA auf die Seite der Klemme A und der Schalter SWB
auf die Seite der Klemme B gelegt wird, wird die Rücksetz-
Betriebsart eingestellt. Wenn der Schalter SWB auf die Seite
der Klemme B und der Schalter SWA ebenfalls auf die Seite
der Klemme B gelegt wird, wird die Programmübertragungs-Be
triebsart eingestellt.
Wie aus der oben angegebenen Tabelle ersichtlich, wird die
Ausführung eines Programms gestoppt, wenn das Betriebsart
signal MB auf "0" gesetzt, und das Programm kann ausgeführt
werden, wenn das Signal auf "1" gesetzt wird. Aus diesen
Gründen kann das Betriebsartsignal MB als ein Rücksetz
(Stop)-Signal aufgefaßt werden.
Wenn das Betriebsartsignal MA auf "0" gesetzt wird, wird das
Austauschen oder Umspeichern eines Programms ermöglicht.
Daher kann dieses Betriebsartsignal als ein Programmaus
tauschsignal betrachtet werden.
Durch diese beiden Betriebsartsignale MA u. MB kann jede der
betreffenden Betriebsarten wie im folgenden beschrieben
eingestellt werden:
Eine Auswahleinrichtung 20 wählt die betreffende Adresse der
Mikroprogrammspeicher 11 . . . 14 aus den Adressen in der Mi
kroprogrammsteuereinrichtung 10 und den Adressen aus dem TC
4 aus. Als ein Auswahlsignal dafür wird das Betriebsartsi
gnal MA zugeführt, und die Adresse aus der Mikroprogramm
steuereinrichtung 10 wird ausgewählt, wenn das Betriebs
artsignal MA den Signalzustand "1" hat. Die Adresse aus dem
TC 4 wird ausgewählt, wenn das Betriebsartsignal MA den Si
gnalzustand "0" hat.
Eine Gatterschaltung 21 läßt ein Schreibsignal WR passieren,
wenn das Betriebsartsignal MA als Gattersignal wirkt. Die
Gatterschaltung ist geöffnet, wenn das Gattersignal MA den
Signalzustand "0" hat, und das Schreibsignal WR wird an je
den von Schreibfreigabeeingängen der Mikroprogrammspei
cher 11. . . 14 gelegt.
Die Mikroprogrammspeicher 11 . . . 14 werden in einen
Schreibfreigabezustand versetzt, wenn an deren jeweiligen
Schreibfreigabeeingang ein Signal mit dem Signalzustand
"0" gelegt wird.
Desweiteren wird das Betriebsartsignal MB an den Rücksetz
eingang eines Registers 15 gelegt, und wenn das Betriebs
artsignal MB den Signalzustand "0" hat, wird das Register 15
rückgesetzt.
Der TC 4 ist sowohl mit einem Taktgenerator 46 zum Erzeugen
eines schnellen Takts CKF mit einer Taktfrequenz von 7.16
MHz (zweimal so hoch wie die Farbhilfsträgerfrequenz des
NTSC-Farbsignals) als auch mit einem Taktgenerator 47 zum
Erzeugen eines langsamen Takts CKS mit einer Taktfrequenz
von 2 MHz ausgestattet.
Der schnelle Takt CKF wird der Mikroprogrammsteuereinrich
tung 10 und den Registern 15 u. 18 sowie desweiteren den
Takteingängen des Registers 17 a und eines Registers 17 b zu
geführt.
Der Takt CKF wird außerdem dem Takteingang eines weiteren
Registers 19 durch einen Pufferspeicher 22 zugeführt.
Der langsame Takt CKS, der zum Zeitpunkt einer Programm
übertragung benutzt wird, wird sowohl als Takt für eine
Ladesteuereinheit 48 dieser Einheit innerhalb des TC 4 als
auch dem Adressengenerator 42 und weiteren Einrichtungen
zugeführt, und er wird darüber hinaus auch dem Takteingang
des Registers 19 über einen Pufferspeicher 23 zugeführt.
Das Betriebsartsignal MA wird als solches einem Ausgabe
freigabeeingang des Pufferspeichers 23 und ebenfalls über
einen Inverter 24 dem Ausgabefreigabeeingang des Puffer
speichers 22 zugeführt, wodurch - wie dies später zu er
läutern sein wird - der Ausgang des Pufferspeichers 22 zu
dem Zeitpunkt der Ausführung eines Programms wirksam gemacht
wird und der schnelle Takt CKF dem Register 19 zugeführt
wird, während der Ausgang des Pufferspeichers 23 zum Zeit
punkt der Übertragung eines Programms wirksam gemacht wird
und der langsame Takt CKS dem Register 19 zugeführt wird.
Die Ladesteuereinheit 48 innerhalb des TC 4 überwacht die
Signalzustände der Betriebsartsignale MA u. MB und steuert
die Verabeitung in dem TC 4 entsprechend jeder betreffenden
Betriebsart.
In der Programmausführungs-Betriebsart hat das Betriebs
artsignal MA den Signalzustand "1", und daher sieht die
Auswahleinrichtung 20 eine Adressenänderung mit dem schnel
len Takt CKF aus der Mikroprogrammsteuereinrichtung 10 vor,
und die betreffenden Adressen werden jedem der Mikropro
grammspeicher 11 . . . 14 durch das Register 19 mit einer
Zeitsteuerung, die um einen Takt verzögert ist, zugeführt.
Zu diesem Zeitpunkt ist, da das Betriebsartsignal MA den
Signalzustand "1" hat, der Pufferspeicher 22 wirksam, und
der Takt für das Register 19 ist der schnelle Takt CKF.
Da das Betriebsartsignal MA den Signalzustand "1" hat, wird
das Ausgangssignal des ODER-Glieds in Form der Gatterschal
tung 21 auf dem logischen Pegel "1" gehalten, und die Mi
kroprogrammspeicher 1 . . . 14 werden nicht zum Einschreiben
freigegeben.
Desweiteren wird, da das Betriebsartsignal MB den Signal
zustand "1" hat, das Register 15 nicht rückgesetzt, und auf
diese Weise werden die Daten, die aus dem Mikroprogramm
speicher 11 ausgelesen wurden, um einen Takt des schnellen
Takts CKF in diesem Register 15 verzögert und dann dem Be
fehlseingang der Mikroprogrammsteuereinrichtung 10 zuge
führt, wodurch das betreffende Programm ausgeführt wird.
Zu diesem Zeitpunkt wird, da das Betriebsartsignal MA den
Signalzustand "1" hat, das Register 18, dem das Betriebs
artsignal MA durch einen Inverter 27 zugeführt wird, für
eine Ausgabe freigegeben, während das Register 26 gesperrt
wird, und auf diese Weise wird der Mikrobefehl, der aus dem
Mikroprogrammspeicher 14 ausgelesen wird, um einen Takt des
schnellen Takts CKF in dem Register 18 verzögert und dann
der arithmetischen Einheit zugeführt.
Im vorliegenden Fall sind in der Ausführungs-Betriebsart,
während das Programm mit dem schnellen Takt CKF ausgeführt
wird, sowohl sog. Pipeline-Register, nämlich das Register
19, zwischen der Mikroprogrammsteuereinrichtung 10 und den
Mikroprogrammspeichern 11 . . . 14 als auch die Register 15 u.
17 a sowie ein weiteres Register (nicht gezeigt) an dem Ein
gang der Auswahleinrichtung 16 zwischen den jeweiligen Aus
gabeseiten der Mikroprogrammspeicher 11, 13 u. 12 und der
Mikroprogrammsteuereinrichtung 10 vorgesehen. Dadurch kann
der Taktzyklus gekürzt werden.
Daraus ergibt sich, daß in der Verarbeitungs-Vorrichtung
gemäß dem vorliegenden Ausführungsbeispiel ein Parallel
verabeitungssystem benutzt wird, jedoch wird außerdem ein
so. Pipeline-Verarbeitungssystem in einem Teil der Vorrich
tung benutzt, wie dies zuvor erläutert wurde, um eine höhere
Verarbeitungsgeschwindigkeit zu erzielen.
In der Programmübertragungs-Betriebsart hat das Betriebs
artsignal MB den Signalzustand "0". Daher ist das Register
15 rückgesetzt, und es wird das Bitmuster "0000" an den
Befehlseingang der Mikroprogrammsteuereinrichtung 10 gelegt.
Demzufolge gibt die Mikroprogrammsteuereinrichtung 10 fort
laufend die Nulladresse aus und ist dabei angehalten. Das
bedeutet, daß die Programmadressen für alle der Verarbei
tungssystem-Prozessoren, das PIP 3 A und das PVP 3 B "0" sind
und sich diese Einrichtungen in dem Zustand "Programm ge
stoppt" befinden.
Da das Betriebsartsignal MA ebenfalls den Signalzustand "0"
hat, ist die Auswahleinrichtung 20 in einen Zustand ver
setzt, in dem sie eine Adresse aus dem Adressengenerator 42
des TC 4 auswählt, und da der Ausgang des Pufferspeichers 22
unwirksam gemacht ist und derjenige des Pufferspeichers 23
wirksam gemacht ist, wird der Takt des Registers 19 zu dem
langsamen Takt CKS.
In dieser Programmübertragungs-Betriebsart werden sämtliche
Mikroprogrammspeicher aller der Prozessoren vollständig
durch den TC 4 gesteuert, und demzufolge wird der Takt für
diese Einrichtungen zu dem langsamen Takt CKS.
Da das Betriebsartsignal MA den Signalzustand "0" hat, ist
das Register 26 freigegeben, und das Register 18 ist ge
sperrt. Dadurch wird der vorbestimmte Code aus dem Generator
25 zum Erzeugen eines vorbestimmten Code an die arithmeti
sche Einheit ausgegeben.
Im vorliegenden Fall ist es auch sinnvoll, eine Anordnung
dahingehend zu treffen, daß das Betriebsartsignal MA an den
Ausgabefreigabeeingang OE der Mikroprogrammsteuereinrichtung
10 gelegt wird und der Ausgabepufferspeicher der Mikropro
grammsteuereinrichtung 10 dadurch ausgeschaltet wird.
In dieser Programmübertragungs-Betriebsart werden Adressen
aus dem Adressengenerator 42 an den RAM 41 unter dem be
treffenden Befehl aus der Ladesteuereinheit 48 in Überein
stimmung mit dem Programm für die Programmübertragung des TC
4 übergeben, und die Programmdaten, die zu den Mikropro
grammspeichern 11 . . . 14 zu senden sind, werden aus dem RAM
41 bei der Rate des langsamen Takts CKS ausgelesen. Gleich
zeitig nimmt das Schreibsignal WR aus dem Schreibsignalge
nerator 45 den Signalzustand "0" ein, und da das Betriebs
artsignal MA den Signalzustand "0" hat, wird das Ausgangs
signal des ODER-Gatters in Form der Gatterschaltung 21
ebenfalls zu "0". Daher werden die Mikroprogrammspeicher
11 . . . 14 in einen Schreibfreigabezustand versetzt.
Daher werden entsprechend den Adressen aus dem Adressen
generator 42 die Programmdaten aus dem RAM 41 sequentiell in
die Mikroprogrammspeicher 11 . . . 14 eingeschrieben, und die
Programmübertragung wird ausgeführt.
In dem vorliegenden Ausführungsbeispiel wird die Programm
übertragung zu jedem aus der Vielzahl von Prozessoren ein
zeln ausgeführt.
Dazu ist vorgesehen, daß der TC 4 mit einem ROM 49 ausge
stattet ist, in dem ein Prozessorauswahlsignal gespeichert
ist. Zu dem Zeitpunkt einer Programmübertragung wird das
Prozessorauswahlsignal aus dem ROM 49 unter einem Befehl aus
der Ladesteuereinheit 48 ausgelesen. Das Prozessorauswahl
signal wird in einem Decoder 50 decodiert, wodurch nur ein
Auswahlsignal SEL für einen ausgewählten Prozessor zu "0"
wird und die anderen den Signalzustand "1" einnehmen. Dieses
Auswahlsignal SEL wird der als ODER-Glied fungierenden Gat
terschaltung 21 zugeführt, und nur die Mikroprogrammspeicher
11 . . . 14 des Prozessors, für den das Auswahlsignal den Wert
"0" hat, werden zum Einschreiben freigegeben, wodurch das
Programm in diesen umgeschrieben werden kann.
Wenn das Umschreiben in den Mikroprogrammspeichern des einen
Prozessors beendet ist, gibt der ROM 49 das Prozessoraus
wahlsignal des nächsten Prozessors aus, wodurch das Aus
wahlsignal SEL für diesen Prozessor den Signalzustand "0"
annimmt, und es wird dann die Programmübertragung zu diesem
Prozessor in gleicher Weise wie zuvor beschrieben ausge
führt. Wenn die Programme für alle der Prozessoren auszu
tauschen sind, wird die zuvor beschriebene Prozedur sooft
wiederholt, wie dies der Anzahl von Prozessoren entspricht.
Es ist nun möglich, eine Anordnung derart zu treffen, daß
spezifische Daten, die keine Prozessorauswahlsignale sind,
jeweils unter einer spezifischen Adresse in dem ROM 49 ge
speichert sind, und in dem Fall, in dem das Programm nicht
zu allen der Prozessoren, sondern nur zu wenigen derselben
zu übertragen ist, werden die spezifischen Daten unter der
jeweiligen spezifischen Adresse gemäß einem Befehl aus der
Ladesteuereinheit 48 ausgelesen, der zu erteilen ist, wenn
die Übertragung zu den wenigen Prozessoren beendet worden
ist, d. h. wenn die Programmübertragung zu den nacheinander
gekennzeichneten Prozessoren, zu denen das Programm zu
übertragen war, beendet worden ist. Dieses Ausgangssignal
des ROM 49 kann einer Erfassungsschaltung 52 zum Erfassen
der spezifischen Daten zugeführt werden. Auf diese Weise
kann erreicht werden, daß wenn die spezifischen Daten aus
dem ROM 49 ausgelesen werden, diese durch die Erfassungs
schaltung 52 erfaßt werden und ein Erfassungssignal an die
Ladesteuereinheit 48 übergeben wird, um die Programmladung
anzuhalten.
Als die spezifischen Daten können solche Daten aus den Pro
zessorauswahlsignalen, von denen alle Bits den Signalzu
stand "1" haben, benutzt werden, in welchem Fall die Er
fassungsschaltung 52 als ein UND-Glied ausgebildet sein
kann.
Es kann auch sinnvoll sein, Signale, die nicht notwendiger
weise zu jedem der Prozessoren zu senden sind, wie bei
spielsweise Programminhalte, Adressen davon und verschiedene
Parameter für jeden der Prozessoren, als spezifische Daten
vorzusehen und diese spezifischen Daten zu verwenden.
Wenn zu den Prozessoren mehr als ein Programm zu übertragen
ist und wenn diese Programme voneinander unterschiedlich
sind, können diese Programme zusammen als ein Programm be
trachtet werden und in jeden Prozessor eingeschrieben wer
den. Eine Kennzeichnung des Programms, das als nächstes
durch jeden der Prozessoren auszuführen ist, kann durch
Versorgen jedes der Prozesoren mit der relevanten Ausfüh
rungsstartadresse gegeben werden.
Die Ausführungsstartadressen werden von dem RAM 51 an ein
Register 17 c jedes der Prozessoren ausgegeben. Als ein Hal
tesignal für dieses Register 17 c wird diesem das zuvor er
wähnte Auswahlsignal SEL zugeführt, und zu dem Zeitpunkt, zu
dem das Auswahlsignal SEL von dem Signalzustand "0" in den
Signalzustand "1" gebracht wird, wird die dann auftretende
Ausführungsstartadresse gehalten.
Das Register 17 c wird durch ein Freigabesignal MAP aus der
Mikroprogrammsteuereinrichtung 10 freigegeben, und dadurch
werden die gehaltenen Daten an den Direkteingabeeingang D
gelegt. Wenn das Programm in der zuvor beschriebenen Aus
führungs-Betriebsart gestartet wird, ist dafür Sorge getra
gen, daß die Adresse in dem Register 17 c von der Mikropro
grammsteuereinrichtung 10 übernommen wird, und daraus wird
die Adresse von der Mikroprogrammsteuereinrichtung 10 er
zeugt.
Auf die beschriebene Art und Weise werden das Programm und
die Ausführungsstartadresse desselben in Aufeinanderfolge zu
jedem der Prozessoren gesendet.
Beiläufig bemerkt werden die Ausführungsstartadressen für
jeden der Prozessoren in dem RAM 51 zuvor zu diesem von dem
Host-Computer 5 übertragen.
In dieser Programmübertragungs-Betriebsart setzt, wie eben
falls zuvor beschrieben, die Mikroprogrammsteuereinrichtung
10 das Ausgeben von Nulladressen fort und befindet sich in
einem angehaltenen Zustand.
Es ist nun nicht bekannt, welcher Mikrobefehl in dem Regi
ster 18 gespeichert ist. Indessen wird, da das Register 18
gesperrt ist, wie dies zuvor beschrieben wurde, der Mikro
befehl nicht an die arithmetische Einheit ausgegeben, son
dern es wird ein vorbestimmter Code aus dem Generator 25 zum
Erzeugen des vorbestimmten Code durch das Register 26 als
ein Mikrobefehl an die arithmetische Einheit übertragen.
In dem vorliegenden Fall ist der vorbestimmte Code derart
beschaffen, wie es zuvor durch den Hardware-Entwickler
festgelegt wurde. Falls der vorbestimmte Code als ein zu dem
Zeitpunkt der Programmübertragung passender Code festgelegt
ist, beispielsweise derart, daß ein Einschreiben in den RAM
in der verarbeitenden arithmetischen Einheit unterbunden
ist, können die Inhalte in dem RAM niemals während einer
Programmübertragung zerstört werden.
Falls als der vorbestimmte Code ein Befehl derart festgelegt
ist, daß dem Anfangswert einer Berechnungsschaltung oder
Akkumulierschaltung für die "Summe von Produkten" gestattet
wird, den Signalzustand "0" anzunehmen, wird es möglich,
wenn die Programmübertragung beendet ist und das nächste
Programm auszuführen ist, die Ausführung augenblicklich ohne
einen Schritt zur Initialisierung der Bildung der "Summe von
Produkten" der der Akkumulierungsberechnung zu starten.
In der Rücksetz (Stop) - Betriebsart ist das Betriebsart
signal MA = 1 und das Betriebsartsignal MB = 0, und daher
wird die Adresse aus der Mikroprogrammsteuereinrichtung 10
für jeden der Prozessoren durch die Auswahleinrichtung 20
ausgewählt. Der Takt CKF wird dabei als der Takt des Regi
sters 19 ausgewählt. Da jedoch das Register 15 durch das
Betriebsartsignal MB in den Rücksetzzustand versetzt ist,
wird fortlaufend die Nulladresse von der Mikroprogramm
steuereinrichtung 10 ausgegeben, und alle der Prozessoren
werden in einen Programmausführungsstoppzustand versetzt.
Da das Betriebsartsignal MA den Signalzustand "1" einnimmt,
wird jedwedes Schreibsignal, das zu "0" wird, nicht an die
Mikroprogrammspeicher 11 . . . 14 übergeben.
In dieser Rücksetz-Betriebsart wird die Startadresse des
spezifischen Programms, das als nächstes aus der Vielzahl
von Programmen ausgeführt werden soll, die zuvor in den
Mikroprogrammspeicher jedes der Prozessoren eingeschrieben
wurden, neu spezifiziert.
Das bedeutet, daß in gleicher Weise wie bei der Programm
übertragungs-Betriebsart, während die Prozessorauswahlsi
gnale in Aufeinanderfolge von dem ROM 49 ausgegeben werden,
die Ausführungsstartadressen von dem RAM 50 für jeden der
Prozessoren in Aufeinanderfolge ausgegeben werden und die
Ausführungsstartadressen in Aufeinanderfolge durch das Aus
wahlsignal SEL in dem Register 17 c jedes der Prozessoren
gehalten werden.
Daher wird, wenn die Ausführungs-Betriebsart in die nächste
Phase gebracht wird, die Ausführung in jedem der Prozessoren
mit dem Programm gestartet, für das die Ausführungsstart
adresse spezifiziert worden ist. Auf diese Weise können un
terschiedliche Programms durch jeden der Prozessoren ausge
führt werden, ohne daß diesen dazu neue Programme übermit
telt werden müßten.
Die zuvor beschriebenen drei Betriebsarten werden durch das
Programm des Prozessors in dem TC 4 gesteuert.
Fig. 4 zeigt, wie bereits erläutert, ein Flußdiagramm, das
sich auf die Prozedur in dem TC 4 bezieht.
Gemäß diesem Flußdiagramm wird zunächst in einem ersten
Schritt (101) der Zustand des Rücksetz-Betriebsartsignals MB
erfaßt. Falls MB = 1 ist, wenn das Betiebsartsignal MA = 1
ist, wird, wie dies aus Fig. 3 ersichtlich ist, die Aus
führungs-Betriebsart ausgewählt, und der TC 4 führt das
Programm fortlaufend zu diesem Schritt (101) zurück.
Falls das Betriebsartsignal MB zu MB = 0 wird, setzt sich
das Programm von dem Schritt (101) zu einem Schritt (102)
fort, in dem der Zustand des Betriebsartsignals MA erfaßt
wird.
Falls MA = 1 ist, ist die Betriebsart die Rücksetz-Be
triebsart, die Mikroprogrammsteuereinrichtungen 10 aller
Prozessoren geben, wie zuvor beschrieben, fortlaufend die
Nulladresse aus, und die Programmausführung wird gestoppt.
Dann setzt sich das Programm zu einem Schritt (103) fort, in
dem die Startadresse in Aufeinanderfolge an jeden der Pro
zessoren abgegeben wird, und kehrt daran anschließend zu dem
Schritt (101) zurück.
In dem Schritt (102) wird, falls das Signal MA = 0 ist, da
das Signal MB = 0 ist, die Betriebsart als die Programm
übertragungs-Betriebsart festgelegt. Das Programm setzt sich
dann zu einem Schritt (104) fort, in dem in den ROM 49 des
TC 4 ein Signal "0" eingegeben wird, wodurch der erste Pro
zessor spezifiziert wird, und in einem Schritt (105) wird
das Programm zu diesem Prozessor übertragen. In einem näch
sten Schritt (106) wird die Adresse in dem ROM 49 um ein
Inkrement erhöht. In einem nächsten Schritt (107) wird ent
schieden, ob das Programm zu allen Prozessoren übertragen
worden ist oder zu allen Prozessoren, zu denen das Programm
übertragen werden sollte, übertragen worden ist, und falls
die Übertragung noch nicht beendet worden ist, kehrt das
Programm zu dem Schritt (105) zurück, und das Programm wird
in dem nächsten Schritt (106) zu dem nächsten Prozessor
übertragen.
Die Schritte (105) bis (107) werden sooft wiederholt, wie es
der Gesamtanzahl der betreffenden Prozessoren entspricht.
Falls in dem Schritt (107) entschieden wird, daß die Über
tragung des Programms beendet worden ist, setzt sich das
Programm zu einem Schritt (109) fort, in dem der Zustand des
Betriebsartsignals MA erfaßt wird. Falls MA = 0 ist, wird
dieser Schritt (109) wiederholt ausgeführt, und die Pro
grammübertragungs-Betriebsart bleibt aufrechterhalten. Wenn
MA = 1 wird, wird das Programm beendet und kehrt zu dem
Schritt (101) zurück. Die Programmübertragungs-Betriebsart
ist damit aufgehoben.
In dem Fall, in dem durch Erfassen einiger spezifischer
Daten entschieden wird, daß die Programmübertragungs-Be
triebsart aufzuheben ist, wird die Adresse in dem ROM 49,
obwohl sie um ein Inkrement erhöht worden ist, in eine
Adresse geändert, unter der die spezifischen Daten in dem
Schritt (106) eingeschrieben werden, und diese Adresse wird
ausgelesen.
In dem nächsten Schritt (107) wird eine Entscheidung dar
über, ob das aus dem ROM 49 ausgelesene Signal spezifische
Daten darstellt oder nicht darstellt, in der Erfassungs
schaltung 52 zum Erfassen spezifischer Daten getroffen.
Falls das aus dem ROM 49 ausgelesene Signal die spezifischen
Daten bildet, wird in einem Schritt (108) ein Programmstopp
durch die Ladesteuereinheit 48 bewirkt.
Falls das aus dem ROM 49 ausgelesene Signal nicht die spe
zifischen Daten bildet, kehrt das Programm zu dem Schritt
(105) zurück, und die Programmübertragung für den nächsten
Prozessor wird durchgeführt.
Wenn die Programmübertragung in dem Schritt (108) gestoppt
wird, wird der Zustand des Betriebsartsignals MA in dem
folgenden Schritt (109) erfaßt.
Obgleich die zvor gegebene Beschreibung auf ein Multipro
zessorsystem als ein Beispiel bezogen ist, ist es selbst
verständlich, daß die vorliegende Erfindung auch auf die
Betriebsartsteuerung eines einzigen Prozessors anwendbar
ist.
In dem Fall des zuvor beschriebenen Beispiels ist vorge
sehen, daß eine Vielzahl von Prozessoren, die eine Paral
lelverarbeitungs-Vorrichtung bilden, vollständig in drei
Betriebsarten durch den TC 4 gesteuert werden, und daher
kann jeder Prozessor ohne Konflikte mit jedem der anderen
Prozessoren gesteuert werden. Wenn hingegen eine Vielzahl
von Prozessoren individuell gesteuert wird, können einige
davon ein Programm ausführen, einige ein Programm umspei
chern, und einige können rückgesetzt werden, auf welche
Weise die Möglichkeit gegeben ist, daß fehlerhafte Vorgänge
durchgeführt werden könnten. Gemäß dem zuvor beschriebenen
Beispiel können derartige Fehler vermieden werden.
In dem Fall des vorliegenden Beispiels ist es möglich, von
der Programmübertragungs-Betriebsart oder der Ausführungs-
Betriebsart augenblicklich durch Einstellen der Schalter SWB
u. SWA zu der Rücksetz-Betriebsart überzugehen. Daher kann
mitten in einer Programmausführung oder in einem Zustand, in
dem eine Programmübertragung für alle Prozessoren noch nicht
beendet worden ist, die Betriebsart bei Bedarf in die Rück
setz-Betriebsart geändert werden.
Gemäß der vorliegenden Erfindung können ein Programmausfüh
rungsstopp und eine Programmübertragung eindeutig und im
Einklang mit allen Erfordernissen dazu vermöge der voll
ständigen gemeinsamen Steuerung der Datenprozessoren in den
drei Betriebsarten gesteuert werden.
Gemäß der vorliegenden Erfindung können sowohl die Pro
grammausführung als auch die Programmübertragung wirksam
ohne Verminderung der Verarbeitungsgeschwindigkeit oder ohne
Erhöhung des Hardware-Aufwands vermöge der optimalen Ver
wendung von verschiedenen Takten durchgeführt werden, und
zwar gleichgültig, ob die Betriebsart die Programmübertra
gungs-Betriebsart oder die Programmausführungs-Betriebsart
ist.
Gemäß der vorliegenden Erfindung ist während einer Pro
grammübertragung das Zuführen irgendeines Befehls aus dem
Mikroprogrammspeicher zu der arithmetischen Einheit ausge
schlossen, und stattdessen wird ein am besten geeigneter
vorbestimmter Code zum Zeitpunkt einer Programmübertragung
als ein Befehl zu der arithmetischen Einheit übertragen.
Daher kann eine Unsicherheit dahingehend, daß nicht bekannt
ist, welcher Befehl gerade an die arithmetische Einheit ab
gegeben wird, beseitigt werden, und es werden beispielsweise
die Inhalte des Speichers in der arithmetischen Einheit ge
schützt.
Gemäß der vorliegenden Erfindung kann, da vorgesehen ist,
daß wenn ein Signal, das zu einem Prozessor gesendet werden
soll, zu dem ein Programm zu übertragen ist, ein spezifi
sches Signal wird, dieser Umstand erfaßt wird und die Pro
grammübertragung dadurch gestoppt wird, die Programmüber
tragung leicht zu irgendeinem anderen Zeitpunkt beendet
werden kann. Auf diese Weise kann die gesamte Ladezeit für
die Programmübertragung verringert werden.
Fig. 5 zeigt, wie bereits erläutert, ein Blockschaltbild für
die konkrete Struktur des PIP-Systems 3 A. Obwohl das PIP-
System 3 A in Wirklichkeit eine große Anzahl (beispielsweise
60) von Prozessoren hat, die zueinander parallel angeordnet
sind, sind nur zwei dieser Einheiten in der Figur gezeigt.
In dieser gezeigten Anordnung werden digitale Daten von dem
VIM-System 2 Eingaberegistern 31-1 . . . 31-n (im folgenden
mit FRA bezeichnet), die für jeden der Prozessoren 3-1 . . .
3-n vorgesehen sind, zugeführt, und diese Register werden
durch das PVP-System 3 B in Übereinstimmung mit der Adresse
gesteuert, die aus dem VIM-System 2 ausgelesen wird und mit
einem vorbestimmten Betrag von Daten, der für jeden Prozes
sor notwendig ist, gespeichert wird.
Die Daten, die in diese Eingaberegister 31-1 . . . 31-n ein
geschrieben sind, werden jeweils arithmetischen Einheiten
32-1, 33-1 . . . 32-n . . . 33-n zugeführt. Jede der arithme
tischen Einheiten ist mit einem Addierer/Subtrahierer, einem
Multiplizierer, einem Koeffizientenspeicher, einem Daten
speicher usw. versehen und führt lineare und nichtlineare
Datenumsetzungsberechnungen gemäß einem Steuersignal aus
Steuereinheiten 34-1 . . . 34-n durch. Ergebnisse der Berech
nungen werden in den arithmetischen Einheiten 33-1 . . . 33-n
gewonnen, und desweiteren werden die arithmetischen Einhei
ten 33-1 . . . 33-n durch das PVP-System 3 B entsprechend den
Schreibadressen des VIM-Systems 2 gesteuert, wodurch die
Ergebnisse der Berechnungen in erforderliche Abschnitte des
VIM-Systems 2 eingeschrieben werden.
Im vorliegenden Fall werden die Steuersignale aus den Steu
ereinheiten 34-1 . . . 34-n gemäß dem Mikroprogramm gebildet,
das in die Mikroprogrammspeicher (MPM), die in Fig. 2 mit 11
. . . 14 bezeichnet sind (repräsentativ mit 35-1 . . . 35-n in
Fig. 5 bezeichnet) eingeschrieben ist. Das Mikroprogramm
wird von außen durch Programmaustauschsteuereinheiten 36-1
. . . 36-n eingeschrieben.
Indessen ist in dem zuvor beschriebenen Fall dann, wenn das
zuvor erwähnte Mikroprogramm durch den bestehenden Host-
Computer (HC) 5 usw. gebildet wird, die Übertragungsrate von
dem HC 5 zu jedem der MPM 35-1 . . . 35-n durch die Übertra
gungskapazität der betreffenden Leitung begrenzt, und daher
ist es nur möglich, das Programm bei einer Rate von bei
spielsweise 500 Kbyte/s oder einem diesem Wert benachbarten
Wert zu übertragen. Daher wird viel Zeit zum Umschreiben in
allen der MPM′s 35-1 . . . 35-n benötigt. Aufgrund der Tatsa
che, daß eine Verarbeitung in dem PIP-System 3 A usw. während
dieser Zeit unmöglich wird, wurden zahlreiche Schwierigkei
ten festgestellt. Außerdem mußte, da die Übertragung nicht
durchgeführt werden konnte, bis die Verarbeitung in dem
PIP-Sysem 3 A usw. beendet war, die HC-Seite warten, bis
diese Verarbeitung beendet war, und daher bestand eine
Schwierigkeit dahingehend, daß die Effektivität der Benut
zung des HC beträchtlich herabgesetzt war.
Gemäß Fig. 6 wird das Mikroprogramm, das in einer 16-bit-
Struktur von dem Host-Computer (HC) 5 übertragen wird, dem
zuvor beschriebenen 64-KByte-Speicher 41 in dem TC 4 zuge
führt. Desweiteren wird ein Schreibsteuersignal aus dem HC 5
der Ladesteuereinheit 48 zugeführt, und ein entsprechendes
Signal aus der Ladesteuereinheit 48 wird dem RAM 41 und ei
ner Speicheradressengeneratorschaltung 42 a in dem Adressen
generator 42 zugeführt. Die erzeugte Adresse wird an den RAM
41 geführt, wodurch das Mikroprogramm in den RAM 41 unter
einer danach bestimmten Adresse eingeschrieben wird. Zu
diesem Zeitpunkt wird ein Zustandssignal, das angibt, daß
der RAM 41 zum Einschreiben freigegeben ist, von der Lade
steuereinheit 48 zu dem HC 5 gesendet.
Desweiteren wird ein Zustandssignal, das angibt, daß die
Mikroprogrammspeicher zum Umschreiben freigegeben sind, von
dem PIP-System 3 A zu der Ladesteuereinheit 48 gesendet. Da
durch wird ein Signal aus der Ladesteuereinheit 48 an die
Speicheradressengeneratorschaltung 42 a und eine MPM-Adres
sengeneratorschaltung 42 b übergeben. Während die Adressen
zum sequentillen Auslesen des RAM 41 durch die Speicher
adressengeneratorschaltung 42 a erzeugt werden, werden ein
Chip-Auswahlsignal zum Einschreiben des ausgelesenen Mikro
programms in den spezifizierten MPM und Adressen für das
Einschreiben des Programms in Aufeinanderfolge in den MPM
durch die Adressengeneratorschaltung 42 b erzeugt.
Auf diese Weise werden, während das Mikroprogramm, das aus
dem RAM 41 mit beispielsweise einer 16-bit-Struktur ausge
lesen wird, dem PIP-System 3 A durch einen Multiplexer (MUX)
53 zugeführt wird, die Adressen usw. aus der Adressengene
ratorschaltung 42 b dem PIP-System 3 A zugeleitet. Desweiteren
wird das Schreibsteuersignal aus der Ladesteuereinheit 48
dem PIP-Sysstem 3 A übergeben.
Gemäß der zuvor beschriebenen Anordnung können der RAM 41
und das PIP-System 3 A über eine diesen ausschließlich zuge
ordnete Leitung verbunden werden, und desweiteren kann eine
Multibitstruktur-Übertragung, beispielsweise mit einer 16-
bit-Struktur, durchgeführt werden. Dazu kann, wenn angenommen
wird, daß die Übertragungsrate beispielsweise 8 Mbyte/s be
trägt, die Übertragung bei einer Rate durchgeführt werden,
die den Faktor 16 gegenüber dem Fall einer herkömmlichen
Direktübertragung von dem HC, beispielsweise bei 500
Kbyte/s, aufweist.
Desweiteren kann in dem Fall, in dem dasselbe Mikroprogramm
zu einer Vielzahl von Prozessoren in dem PIP-System 3 A zu
übertragen ist, das Programm zu diesen gleichzeitig durch
Bereitstelleung einer Vielzahl von Chip-Auswahlsignalen, die
durch die MPM-Adressengeneratorschaltung 42 b zu erzeugen
sind, übertragen werden. Dadurch kann das Programm bei
spielsweise innerhalb der Austastlücke des Videosignals
übertragen werden, und auf diese Weise kann eine Echtzeit
verarbeitung ohne Erzeugung von Störungen in dem Bild
durchgeführt werden.
Der beschriebene Übertragungsprozeß wurde durch eine be
stimmte Gliederung der Ladesteuereinheit 48 usw. mittels
eines sog. Mikroprozessors ermöglicht.
Beiläufig bemerkt kann die zuvor beschriebene Programmüber
tragungstechnik nicht nur auf das PIP-System 3 A, wie zuvor
beschrieben, angewendet werden, sondern auch auf das IOC-
System 1, das PVP-System 3 B usw.
Sogar in solchen Fällen ist indessen die Übertragungszeit
für eine herkömmliche Übertragung zwischen dem HC 5 und dem
Speicher die gleiche wie zuvor ausgeführt, und der HC 5 und
die Leitung sind während der Übertragungszeit belegt und
dergl., und daher besteht die Möglichkeit einer Herabsetzung
der Effektivität bei der Benutzung des HC 5 und der
Leitung.
In dem zuvor beschriebenen Ausführungsbeispiel wurde für den
Fall, daß ein Programm in das Innere des TC 4 zu übertragen
ist, dafür Sorge getragen, daß das Programm nur zu diesem
gesendet wird und die Adresse des RAM 41 innerhalb des TC 4
erzeugt wird. In dem nächsten zu beschreibenden Ausfüh
rungsbeispiel wird auch die Adresse in dem RAM 41 zusammen
mit dem Programm von dem HC 5 aus übertragen.
Fig. 7 zeigt, wie bereits erläutert, ein Blockschaltbild
einer Anordnung, in der Daten, die beispielsweise in einer
16-bit-Struktur von dem Host-Computer (HC) 5 übertragen
werden, Registern 9 a, 9 b, 9 c u. 9 d zugeführt, wovon jedes
eine 16-bit-Struktur hat, ein Steuersignal aus dem HC 5 wird
einer Steuereinheit 48 a zugeleitet, und das erzeugte
Schreibsignal wird an die Register 9 a . . . 9 d übergeben.
In diesem Ausführungsbeispiel wird wie die Daten aus dem HC
5, wie dies beispielsweise in Fig. 8A gezeigt ist, eine
Datenidentifizierungsinformation (ID) in Synchronismus mit
einem Steuersignal (dem Startsignal, vergl. Fig. 8B) über
tragen, das den Start der Übertragung von dem HC 5 aus an
zeigt, und danach werden Daten (D) in Intervallen eines
vorbestimmten Takts (vergl. Fig. 8C) übertragen. Dann wird
die zuvor erläuterte Datenidentifizierungsinformation (ID)
aus der Steuereinheit 48 a in das Register 9 a, beispielsweise
mittels des Schreibsignals, das an das Register 9 a zum
Zeitpunkt des zuvor erwähnten Startsignals ausgegeben wird,
eingeschrieben, und die entsprechende Information wird dann
in der Steuereinheit 48 a erfaßt. Dann werden die Daten (D)
in Aufeinanderfolge in das Register 9 b mittels des Schreib
signals, das von dem Register 9 b zum Zeitpunkt des Auftre
tens des Taktsignals erzeugt wird, eingeschrieben. Die Daten
(D) werden durch ein Register 9 e dem IOC-System 2 usw.
zugeführt. In den Daten (D) sind beispielsweise die Art des
Verarbeitungssystems (NTSC, RGB usw.) und eine Information
für die Betriebsarteinstellung ("Echtzeit", "Warten auf Ende
der Verarbeitung", "Standbild" usw.) enthalten.
Wenn das zuvor erwähnte Mikroprogramm umzuschreiben ist,
wird eine Information (L), die die Länge des zu übertragen
den Programms angibt, folgend auf die Datenidentifizie
rungsinformation (ID) von dem HC 5 aus im Anschluß an letz
tere übertragen, wie dies in Fig. 8D gezeigt ist. Danach
werden später zu erläuternde Adressen (A) des Speichers,
nämlich des RAM 41, und Daten, die das Programm (PD) bilden,
abwechselnd übertragen. Währenddessen wird von der Steuer
einheit 48 a, wie dies in Fig. 8E gezeigt ist, wiederum ein
Schreibsignal zu dem Register 9 a zum Zeitpunkt des nächsten
Takts ausgegeben, so daß für das Startsignal in Reaktion
darauf die Datenidentifizierungsinformation (ID), die an
zeigt, daß das Programm in das Register 9 a eingeschrieben
worden ist, und dadurch die Information (L) über die Länge
in das Register 9 a eingeschrieben wird. Dann werden, wie in
Fig. 8F u. Fig. 8G gezeigt, Schreibsignale zu den Registern
9 c u. 9 d abwechselnd mit jedem jeweils folgenden Takt aus
gegeben, wodurch die Adresse A in das Register 9 c einge
schrieben wird und die Programmdaten (PD) getrennt davon in
das Regsiter 9 d eingeschrieben werden.
Die Adresse A aus dem Register 9 c wird durch einen Multi
plexer (MUX) 53 a an den RAM 41 geführt, und die Programm
daten (PD) aus dem Register 9 d werden unter dieser Adresse
eingeschrieben. Währenddessen wird ein Schreibsignal von der
Steuereinheit 48 a an den RAM 41 übergeben. Das Einschreiben
wird bis zu dem Ausmaß forgesetzt, wie es durch die Infor
mation (L) über die Länge spezifiziert ist.
Wenn das Einschreiben beendet ist, wird der MUX 53 a durch
ein Signal aus der Steuereinheit 48 a umgeschaltet, und es
wird ein Signal aus einer zweiten Steuereinheit 48 der
Speicheradressengeneratorschaltung 42 a und der MPM-Adres
sengeneratorschaltung 42 b zugeführt. Während Adressen, die
in dem RAM 41 auszulesen sind, von der Speicheradressen
generatorschaltung 42 a ausgegeben werden, werden Chip-Aus
wahlsignale zum Einschreiben der ausgelesenen Mikro-pro
gramme in einen spezifischen MPM und Adressen zum sequen
tiellen Einschreiben derselben in den MPM von der MPM-
Adressengeneratorschaltung 42 b ausgegeben.
Auf diese Weise werden die Mikroprogramme, die aus dem RAM
41 ausgelesen werden, durch den Multiplexer (MUX) 53 zu dem
PIP-System 3 A, dem PVP-System 3 B usw. übertragen, und die
Adressen usw. aus der MPM-Adressengeneratorschaltung 42 b
werden dem PIP-System 3 A und weiteren Einrichtungen überge
ben.
In der zuvor beschriebenen Vorrichtung ist es, da sie dafür
eingerichtet ist, daß die Programmdaten (PD) und die Adres
sendaten (A) voneinander getrennt sind und das Einschreiben
in den Speicher, nämlich den RAM 41, entsprechend diesen
Adressen durchgeführt wird, möglich geworden, einen Teil des
Programms zu ändern, während der gesamte Rest des Programms
unverändert belassen wird. Das bedeutet beispielsweise, daß
bei einem Filterprozeß neue Filterbedingungen mit dem Pro
gramm für die arithmetische Verarbeitung festgelegt werden
können, ohne daß dazu dieses Programm vollständig geändert
werden muß. Es müssen lediglich Koeffizientendaten darin
geändert werden. In einem derartigen Fall wird mit der zuvor
beschriebenen Vorrichtung zunächst das gesamte arithmetische
Programm übertragen, und dann werden entsprechend dem Bedarf
lediglich die betreffenden Koeffizientendaten geändert, wo
durch unterschiedliche Prozesse abgewickelt werden können.
Mit der zuvor beschriebenen Vorrichtung ergibt sich ein
Zeitbedarf für das Übertragen des ersten Programms, der
zweimal so groß wie der einer herkömmlichen Vorrichtung ist,
jedoch machen die Daten zum Ändern von Koeffizientendaten
usw. in dem Filterprozeß 1% oder weniger aller Daten aus.
Daher wird unter der Annahme, daß fünfmal Änderungen durch
geführt werden, wenn der gesamte Anteil durch den Wert 1
ausgedrückt ist, der Zeitbedarf für die vorliegende Vor
richtung zu
1 × 2 + 0.01 × 2 × 5 = 2.1, 1
was weniger als die Hälfte des Wertes in dem herkömmlichen
Fall ist, d. h.
1 × 5 = 5.0.
Desweiteren wird es mit der zuvor beschriebenen Vorrichtung
unnötig, eine Schaltung zum Erzeugen der Schreibadressen
innerhalb der Vorrichtung vorzusehen.
Gemäß der vorliegenden Erfindung ist es, da den Daten, die
das Mikroprogramm bilden, welches von dem Host-Computer
übertragen wird, Adressen zugeordnet sind und das Ein
schreiben entsprechend diesen Adressen vorgenommen wird,
möglich, einen beliebigen Teil des Programms durch Spezi
fizieren der Adresse für diesen Teil umzuschreiben, nachdem
das Programm erst einmal in den Speicher eingeschrieben
worden ist. Auf diese Weise ist es in einem solchen Fall, in
dem nur ein Teil eines langen Programms umzuschreiben ist,
nur erforderlich, nur diesen Teil zu übertragen, und daher
wird es möglich, das Umschreiben in einer sehr kurzen Zeit
zu beenden.
Zuweilen tritt der Fall ein, daß das Ergebnis einer Verar
beitung, die entsprechend einem übertragenen Mikroprogramm
durchgeführt wurde, als fehlerhaft erkannt wird. Es sind
dazu verschiedene Ursachen für das Auftreten eines solchen
fehlerhaften Ergebnisses in Betracht zu ziehen, beispiels
weise eine Fehlfunktion des betreffenden Prozessors oder
dergl. innerhalb der Verarbeitungsvorrichtung, Fehler der
Leitung zwischen dem HC und der Verarbeitungsvorrichtung u.
a. m. Darüber hinaus treten Probleme dahingehend auf, daß
die Ursache nur unter Schwierigkeiten zu bestimmen ist.
Dazu hat sich in der Praxis eine Methode ergeben, bei der
die Prozessoren einer nach dem anderen mit einem Prüfmittel
geprüft wird, wozu jeder der Prozessoren mit einem Prüfan
schluß versehen ist, bzw. bei der die Leitung geprüft wird,
wozu der HC anzuhalten ist. Indessen bedingt diese Methode
in dem Fall, in dem die Vorrichtung eine große Anzahl von
Prozessoren enthält, wie dies bei der zuvor beschriebenen
Vorrichtung gegeben ist, einen großen Zeit- und Arbeits
aufwand lediglich zum Prüfen der betreffenden Prozessoren
einen nach dem anderen. Da sinnvollerweise als erstes die
Leitung geprüft wird, weil ein Fehler im allgemeinen der
Leitung zuschreibbar ist, muß der HC häufig angehalten
werden, und daraus hat sich ein Problem dahingehend ergeben,
daß die Effektivität des Betriebes, nämlich der Benutzung
des HC, herabgesetzt wird.
Daher ist der TC 4, wie dies in Fig. 6 gezeigt ist, mit
einem ROM 54 versehen, in den ein Diagnoseprogramm ein
geschrieben ist. In diesem Programm für Diagnosezwecke zum
Prüfen eines derartigen Systems ist vorgesehen, daß arith
metische Operationen mit allen Funktionen, die der Prozessor
benutzt, ausgeführt werden und die Ergebnisse mit zuvor be
rechneten richtigen Ergebnissen verglichen werden. Deswei
teren ist es durch geeignete Auslegung des Programms mög
lich, von jedem Register aus, das in dem Prozessor enthalten
ist, abzufragen, ob der Prozessor fehlerfrei oder fehlerhaft
ist.
Während die Adresse aus der Speicheradressengeneratorschal
tung 42 a dem ROM 54 übergeben wird und das Programm aus dem
ROM 54 an den MUX 53 übertragen wird, wird ein Steuersignal
aus der Steuereinheit 48 an den MUX 53 gelegt, und dadurch
wird das Programm aus dem RAM 41 dem PIP-System 3 A überge
ben. Desweiteren werden die Adressen usw. aus der MPM-
Adressengeneratorschaltung 42 b dem PIP-System 3 A zugeführt,
und das Schreibsteuersignal aus der Steuereinheit 48 wird an
das PIP-System 3 A übertragen.
Dazu wird in der zuvor beschriebenen Anordnung durch Zufüh
ren eines Befehlssignals von außen zu der Steuereinheit 48,
wenn ein fehlerhaftes Ergebnis der Verarbeitung oder dergl.
gefunden wurde, das Programm, das in den ROM 54 einge
schrieben ist, zu dem PIP-System 3 A übertragen, und die
Prozessoren usw. des PIP-Systems 3 A werden einer Diagnose
unterzogen. Wenn nichts Fehlerhaftes in dem Ergebnis der
Diagnose gefunden wird, wird angenommen, daß keiner der
Prozessoren fehlerhaft ist, und es wird dann die Leitung
zwischen dem HC und der Vorrichtung untersucht. Wenn sich
jedoch herausstellt, daß das Ergebnis der Diagnose auf einen
Fehlerschließen läßt, wird der betreffende Prozessor einer
eingehenderen Prüfung unterzogen.
Fig. 9 zeigt ein Flußdiagramm für die Abläufe bei der
genannten Diagnose. In einem ersten Schritt (201) wird der
MUX 53 auf die Seite des ROM 54 geschaltet. In einem
nächsten Schritt (202) werden die Adressengeneratorschal
tungen 42 a u. 42 b getrieben, und der ROM 54 wird ausgelesen,
wodurch das Programm für die Diagnose zu dem PIP-System 3 A
übertragen wird. Desweiteren werden in einem Schritt (203)
arithmetische Operationen durch den betreffenden Prozessor
entsprechend dem Programm für die Diagnose ausgeführt.
In einem Schritt (204) wird eine Entscheidung (Diagnose)
aufgrund des Ergebnisses der Operationen vorgenommen, und
falls sich herausstellt, daß ein fehlerhaftes Ergebnis
vorliegt (NG), wird in einem Schritt (205) eine weiterge
hende Prüfung durchgeführt, deren Ergebnis in einem Schritt
(206) beispielsweise auf einem Monitor-Bildschirm angezeigt
wird. Wenn das Operationsergebnis gemäß dem Schritt (204)
korrekt ist (OK), wird in einem Schritt (207) die Leitung
zwischen dem HC der Vorrichtung untersucht, und das Ergebnis
dieser Untersuchung wird in einem Schritt (208) angezeigt.
Wenn die Anzeige in dem Schritt (206) oder dem Schritt (208)
erfolgt ist, wird der MUX 53 auf die Seite des RAM 41 zu
rückgesetzt, und die Diagnoseoperation wird beendet.
Gemäß der zuvor beschriebenen Vorrichtung, in der die Dia
gnoseoperation in der beschriebenen Weise durchgeführt wird,
ist der ROM 54 mit dem in diesen eingeschriebenen Programm
für die Diagnose in die Übertragungsanordnung miteinbezogen,
und auf diese Weise wird die Übertragung des Programms nicht
durch die Leitung, gleichgültig, ob diese fehlerfrei oder
fehlerhaft ist, beeinflußt, wodurch eine einwandfreie Dia
gnose sichergestellt ist. Daher kann mittels des Ergebnisses
der Diagnose auch entschieden werden, ob die Leitung feh
lerfrei ist oder ggf. fehlerhaft ist.
Desweiteren kann, da das Programm für die Diagnose in einer
kürzeren Zeit als in dem Fall, in dem das Programm von dem
HC übertragen werden könnte, übertragen werden kann, die
Diagnose schnell und außerdem ohne Störung der Arbeit des HC
beendet werden, wodurch der Zuverlässigkeitsgrad der gesam
ten Vorrichtung erhöht werden kann.
Die Verarbeitungsvorgänge zum Diagnostizieren des Prozessors
mittels eines "eingebauten" ROM ist durch Schaffung der
Steuereinheit 48 usw. auf der Grundlage der sog. Mikropro
zessoren ermöglicht worden.
Die Technik der Diagnose des Prozessors ist nicht nur auf
das PIP-System 3 A, wie zuvor beschrieben, anwendbar, sondern
auch auf das IOC-System 1, das PVP-System 3 B usw.
Der zuvor beschriebene ROM 54 kann außer mit dem Programm
für die Diagnose auch mit Programmen usw. geladen werden,
die wiederholt für das gewöhnliche Verarbeiten von Infor
mationsdaten benutzt werden.
Gemäß der vorliegenden Erfindung kann, da der ROM mit dem
Programm für die Diagnose, das in diesen eingeschrieben ist,
innerhalb der Vorrichtung angeordnet ist und dazu bestimmt
ist, dieses Programm bei Bedarf zu jedem der Mikroprogramm
speicher zu übertragen, so daß der jeweils betreffende Pro
zessor diagnostiziert werden kann, derjenige Prozessor, der
fehlerhaft ist, leicht diagnostiziert werden, während die
Arbeit des Host-Computers während der Diagnose davon unbe
einflußt bleibt.
In dem TC 4 des Ausführungsbeispiels gemäß Fig. 2 ist es
erforderlich, zahlreiche Speichereinheiten und periphere
Schaltungen, wie beispielsweise den RAM 41 zum Speichern
eines Programms, den Adressengenerator 42 zum Erzeugen von
Adressen, den ROM 49 zum Speichern des Auswahlsignals für
jeden der Prozessoren und einen RAM 51 zum Speichern der
Ausführungsstartadressen für jeden der Prozessoren, vorzu
sehen. Es ist jedoch möglich, diese verschiedenen Einrich
tungen in einem einzigen großen Speicher - realisiert in der
sog. Large Scale-Integrationstechnik oder dergl. - vorzuse
hen.
Das bedeutet, daß die Ladesteuereinheit 48 und ein Speicher
41′ wie in Fig. 10 gezeigt, angeordnet werden können, wobei
der Speicher 41′ mit den Ausführungsstartadressen und der
gleichen Parametern, Prozessorauswahlsignalen, Adressen,
Programminhalten und Schreibsignalen unter dessen fortlau
fenden Adressen geladen ist.
Diese Signale, die den Prozessoren zuzuführen sind, werden
sequentiell aus dem Speicher 41′ entsprechend den Adressen
aus der Ladesteuereinheit 48 ausgelesen, wodurch die Pro
zessoren, die durch die Prozessorauswahlsignale ausgewählt
werden, mit den Parametern versorgt werden und in die Mi
kroprogrammspeicher dieser Prozessoren die Programminhalte
eingeschrieben werden.
Gemäß einer Tabelle, wie sie beispielhaft in Fig. 11 gezeigt
ist, werden, wenn Adressen 0 . . . 7 des Speichers 41′ ausge
lesen werden, die darunter gespeicherten Programminhalte in
den Mikroprogrammspeicher des Prozessors Nr. 10 unter dessen
Adressen 0 . . . 7 eingeschrieben, und wenn im Anschluß daran
die Adressen 8 . . . 23 des Speichers 41′ ausgelesen werden,
werden die entsprechenden Programminhalte in den Mikropro
grammspeicher des Prozessors Nr. 25 unter dessen Adressen 0
. . . 15 eingeschrieben.
Aus den Signalen, die zu den Prozessoren, wie in Fig. 11
gezeigt, zu senden sind, werden nur eine Art des Prozes
sorauswahlsignals und die Parameter an einen Prozessor
übergeben, d. h. dieselben Signale werden wiederholt für
jede der Adressen aus dem Speicher 41′ an einen Prozessor
ausgegeben.
Andererseits müssen sowohl die Programminhalte und deren
Speicheradressen als auch die Schreibsignale für jede
Adresse unterschiedlich, jedoch nicht für jeden der Pro
zessoren unterschiedlich, ausgegeben werden.
In dem Fall, in dem diese Daten aus einem Speicher 41′ aus
gelesen und zu jedem der Prozessoren wie in Fig. 10 gezeigt
übertragen werden, ist es erforderlich, daß wie in Fig. 11
gezeigt nicht nur die für jede der Adressen des Speichers
41′ notwendigen Daten sondern auch die Daten, die unverän
dert für jeden der Prozessoren bleiben, in Aufeinanderfolge
unter den Adressen gespeichert werden, und daher wird die
Effektivität des Betriebs des Speichers in starkem Maße
herabgesetzt.
In einem weiteren Ausführungsbeipiel für die vorliegende
Erfindung, das in Fig. 12 gezeigt ist, ist der TC 4 mit der
Ladesteuereinheit 48 und einem Speicher zum Speichern der
Signale, die den Mikroprogrammspeichern 11 . . . 14 zuzuführen
sind, ausgestattet. Als der Speicher ist in dem vorliegenden
Fall ein jeweils den Prozessoren zugeordneter Speicher 41′a
und ein jeweils der Adresse zugeordneter Speicher 41′b vor
gesehen.
In dem den Prozessoren zugeordneten Speicher 41′a ist eine
Art von Daten für jeden der Prozessoren gespeichert, d. h.
sowohl die Parameter und Prozessorauswahlsignale als auch
ein Programmidentifizierungssignal IDP.
In den den Adressen zugeordneten Speicher 41′b sind sowohl
die Programminhalte und die Adreßdaten derselben als auch
die Schreibsignale WR für jede der Adressen eingeschrieben.
Als Programmidentifizierungssignal IDP wird in dem vorlie
genden Ausführungsbeispiel die Adresse am Anfang des den
Adressen zugeordneten Speichers 41′b für das zu jedem der
Prozessoren zu sendende Programm benutzt. Beispielsweise
werden gemäß der in Fig. 11 gezeigten Tabelle, wenn der
Prozessor Nr. 10 ausgewählt ist, die Adresse am Anfang "0"
für dessen Programm bzw. wenn der Prozessor Nr. 25 ausge
wählt ist, die Adresse am Anfang "8" für dessen Programm als
die Programmidentifizierungssignale benutzt.
Das Bezugszeichen 42′ in Fig. 12 bezeichnet einen Zähler zum
Erzeugen der Adresse für den den Adressen zugeordneten
Speicher 41′b. Das Programmidentifizierungssignal IDP aus
dem Speicher 41′a wird durch ein Voreinstellsignal in Syn
chronismus mit der Auswahl jedes der Prozessoren von der
Ladesteuereinheit 48 voreingestellt, und dessen Wert wird
sequentiell von dem voreingestellten Wert aus hochgezählt.
Das Bezugszeichen 44′ bezeichnet eine Komparatorschaltung
zum Erfassen eines Endes der Programmübertragung zu einem
Prozessor durch Vergleich eines den Prozessoren zugeordneten
Programmendeadresse-Ausgangssignals END aus dem den Prozes
soren zugeordneten Speicher 41′a mit der Adresse für den
Speicher 41′b aus dem Zähler 42′. Das Vergleichsausgangs
signal wird der Ladesteuereinheit 48 zugeführt.
In der Programmübertragungs-Betriebsart für das vorliegende
Ausführungsbeipiel wird die Programmübertragung zu jedem der
Prozessoren gemäß dem Programmübertragungs-Programm aus dem
TC 4 und unter einem Befehl aus der Ladesteuereinheit 48 auf
die im folgenden beschriebene Weise ausgeführt.
Zunächst wird die erste Adresse von der Ladesteuereinheit 48
an den den Prozessoren zugeordneten Speicher 41′a ausgege
ben. Dann werden das Auswahlsignal zum Auswählen des Pro
zessors, zu dem die Übertragung zuerst erfolgen soll, der
Parameter für den Prozessor, die Anfangsadresse als das
Programmidentifizierungssignal IDP des Programms für den
Prozessor und die Endadresse END für das Programm aus dem
Speicher 41′a ausgelesen.
Das Prozessorauswahlsignal, das aus dem Speicher 41′a aus
gelesen ist, wird durch den Decoder 50 decodiert, wodurch
nur das Auswahlsignal SEL für den Prozessor, der auszuwählen
ist, den Signalzustand "0", alle anderen dagegen den Si
gnalzustand "1" annehmen. Das Auswahlsignal SEL wird der als
ODER-Glied fungierenden Gatterschaltung 21 zugeführt. Da das
Betriebsartsignal MA zu diesem Zeitpunkt den Signalzustand
"0" aufweist, reagiert dieses ODER-Glied derart, daß die
Mikroprogrammspeicher 11 . . . 14 des Prozessors, für den das
Auswahlsignal SEL den Signalzustand "0" aufweist, zum Ein
schreiben freigegeben werden, wenn das Schreibsignal WR den
Signalzustand "0" annimmt, womit das betreffende Programm
umschreibbar wird.
Andererseits wird die Anfangsadresse als das Programmiden
tifizierungssignal IDP in dem Zähler 42′ durch das Vorein
stellsignal aus der Ladesteuereinheit 48 voreingestellt, und
dem Zähler 42′ wird gestattet, von dem voreingestellten Wert
der Anfangsadresse aus hochzuzählen.
Wie zuvor beschrieben, wird wenn der ausgewählte Prozessor
der Prozessor Nr. 10 ist, wie dies in Fig. 11 gezeigt ist,
demselben gestattet, von der Adresse 0 an hochzuzählen, und
entsprechend der Adresse aus dem Zähler 42′ werden die Pro
gramminhalte, die Adressen dafür und das Schreibsignal, das
den Signalzustand "0" einnimmt, sequentiell aus dem den
Adressen zugeordneten Speicher 41′b ausgelesen.
Daher werden in die Mikroprogrammspeicher 11 . . . 14 des
ausgewählten Prozessors in Aufeinanderfolge die Programm
inhalte unter den Adressen, die von dem den Adressen zuge
ordneten Speicher 41′b gesendet wurden, eingeschrieben.
Wenn das Endadressensignal END (beispielsweise die Adresse
Nr. 7 für den Prozessor Nr. 10) auftritt, wird eine Über
einstimmung zwischen dem von dem Zähler 42′ ausgegebenen
Adreßwert und dem Wert des Endadressensignals END in der
Komparatorschaltung 44′ erfaßt, und in Reaktion auf das
Erfassungssignal gibt die Ladesteuereinheit 48 die nächste
Adresse, die durch ein Inkrement erhöht wurde, an den den
Prozessoren zugeordneten Speicher 41′a aus.
Dann wird das Prozessorauswahlsignal für den nächsten Pro
zessor durch den den Prozessoren zugeordneten Speicher 41′a
erzeugt, das Auswahlsignal SEL, das den Prozessor auswählt,
nimmt den Signalzustand "0" ein, und demzufolge wird die
Programmübertragung zu diesem Prozessor ausgeführt. Wenn die
Programme aller der Prozessoren ausgetauscht oder umge
schrieben worden sind, werden gleiche Operationen sooft
wiederholt, wie es der Anzahl der Prozessoren entspricht.
In dem vorliegenden Beispiel wird, falls mehrere Programme
zu jedem der Prozessoren zu senden sind oder mehrere Pro
gramme, die voneinander verschieden sind, zu diesen Prozes
soren zu senden sind, die Vielzahl von Programmen als nur
ein Programm betrachtet, und dieses als einziges betrach
tetes Programm ist derart beschaffen, daß es in jeden der
Prozessoren eingeschrieben werden kann. Ferner ist vorge
sehen, daß die Programme, die von jedem der Prozessoren
benötigt werden, durch Versehen jedes der Prozessoren mit
einer Ausführungsstartadresse als der Parameter spezifiziert
werden können.
Die Ausführungsstartadressen werden aus dem Speicher 41′a
wie zuvor beschrieben gewonnen und dem Register 17 c jedes
der Prozeesoren übergeben. Das Auswahlsignal SEL wird dem
Register 17 c als ein Haltesignal für diesen zugeführt, und
zu dem Zeitpunkt, zu dem das Auswahlsignal SEL von dem Si
gnalzustand "0" in den Signalzustand "1" übergeht, wird die
dann auftretende Ausführungsadresse gehalten.
Beiläufig bemerkt sind die Inhalte der Speicher 41′a und
41′b vorab von dem Host-Computer HC 5 übergeben worden.
In der Rücksetz-Betriebsart wird die Startadresse des Pro
gramms, das als nächstes aus der Vielzahl von Programmen
ausgeführt werden soll, die zuvor in den Mikroprogrammspei
cher jedes der Prozessoren eingeschrieben wurden, neu spe
zifiziert. Das bedeutet, daß in derselben Weise wie in dem
Fall der Programmübertragung die Prozessorauswahlsignale und
die Ausführungsstartadressen sequentiell aus dem Speicher
41′a für jeden der Prozessoren ausgegeben werden, wodurch
die Ausführungsstartadressen sequentiell in den Registern
17 c jedes der Prozessoren durch das Signal SEL gehalten
werden.
Da das Betriebsartsignal zu diesem Zeitpunkt MA = 1 ist,
wird das Ausgangssignal der als ODER-Glied fungierenden
Gatterschaltung 21 nicht zu "0", und daher wird das Programm
nicht umgeschrieben.
Das Flußdiagramm für die Verarbeitungsvorgänge in dem TC 4
ist ähnlich dem des in Fig. 4 gezeigten, jedoch wird in dem
Schritt (104) die Adresse "0" von der Ladesteuereinheit 48
des TC 4 ausgegeben, um dadurch den ersten Prozessor zu
spezifizieren, und in dem Schritt (105) wird das Programm zu
dem Prozessor übertragen. In dem nächsten Schritt (106) wird
die Adresse für den Speicher 41′a um ein Inkrement 25225 00070 552 001000280000000200012000285912511400040 0002003639395 00004 25106 erhöht.
In dem nächsten Schritt (107) wird entschieden, ob die Pro
gramme zu allen der Prozessoren übertragen worden sind oder
zu denjenigen Prozessoren übertragen worden sind, zu denen
die Programme zu übertragen waren, und falls festgestellt
wird, daß die Prozedur noch nicht abgeschlossen ist, kehrt
das Programm zu dem Schritt (105) zurück, und es wird die
Programmübertragung zu dem nächsten Prozessor in dem Schritt
(106) durchgeführt.
Gemäß der vorliegenden Erfindung ist die Vorrichtung mit
zwei Speichern, d. h. dem Speicher, der die den Prozessoren
zugeordnete Information speichert, und dem Speicher, der die
den Adressen zugeordnete Information des zu übertragenden
Programms speichert, ausgestattet, und dadurch kann der
Programmversorgungabschnitt hierarchisch aufgebaut sein.
Daher kann verglichen mit dem Fall, in dem Information für
jeden der Prozessoren unter jeder der Adressen für das zu
übertragende Programm gespeichert ist, der entsprechende
Speicherbereich eingespart werden, und es kann eine effek
tive Ausnutzung des Speichers erreicht werden.
Fig. 13 zeigt zur Verdeutlichung ein Blockschaltbild eines
Ausführungsbeispiels für eine Schaltung gemäß der vorlie
genden Erfindung, welche Schaltung ein Programmübertra
gungssystem bildet, und zwar für einen Anwendungsfall, bei
dem eine Vielzahl von Programmen zu einer Vielzahl von Pro
zessoren zu übertragen ist.
Der vorliegende Programmversorgungsabschnitt, der aus dem TC
4 gebildet ist, enthält einen Programmspeicher in Form eines
RAM oder ROM 41, der die Vielzahl von Programmen speichert,
die zu übertragen sind, einen Adressenspeicher in Form eines
RAM oder ROM 51, der die Ausführungsstartadressen für jeden
der Prozessoren speichert, einen Adressenzähler 42 für den
Programm-RAM 41 und einen Schreibsignalgenerator, der aus
einem Komparator 44 gebildet ist, und gibt die Programme an
n Prozessoreinheiten 3-1, 3-2 . . . 3-n aus.
Im vorliegenden Fall ist vorgesehen, daß nur eine bestimmte
Vielzahl von Programmen, die zu senden sind, aus einer
Vielzahl von Programmen, die in dem Programm-RAM 41 gespei
chert sind, gesendet werden kann.
Dazu ist die Ladesteuereinheit 48 mit einem Beginnwertge
nerator 48 a zum Erzeugen der Startadresse des Programms mit
den am niedrigsten numerierten Adressen der Vielzahl von
Programmen, die aus der Vielzahl von Programmen, die in dem
Programm-RAM 41 gespeichert sind, auszusenden sind, und
einem Endewertgenerator 48 b zum Erzeugen der Endadresse des
Programms mit den am höchsten numerierten Adressen der
Vielzahl von Programmen, die aus der Vielzahl von Programmen
auszusenden sind, welche in dem Programm-RAM 41 gespeichert
sind, versehen. In dem Fall, in dem beispielsweise die In
halte des ersten und des dritten Programms in dem Pro
gramm-RAM 41 unter den Adressen "0" bis "28" gespeichert
sind, wie dies in Fig. 14 gezeigt ist, und das erste und das
dritte Programm zu den Prozessoren 3-1 bis 3-n zu übertragen
sind, erzeugt der Beginnwertgenerator 48 a die Daten für den
Adreßwert "0", und der Endewertgenerator 48 b erzeugt die
Daten für den Adreßwert "28".
Der Beginnwert aus dem Beginnwertgenerator 48 a wird dem
Adressenzähler 42 zugeführt, und der Adressenzähler 42
beginnt das Zählen von diesem Beginnwert aus. Das Ausgangs
signal, das dem abgezählten Wert entspricht, wird dem Pro
gramm-RAM 41 und außerdem den Mikroprogrammspeichern jedes
der Prozessoren 3-1 . . . 3-n als Schreibadressen ADRS zuge
führt. Die Programmdaten DATA, die aus dem RAM 41 ausgelesen
werden, werden ebenfalls zu den Mikroprogrammspeichern jedes
der Prozessoren 3-1 . . . 3-n übertragen.
In diesem Fall sind die Mikroprogrammspeicher jedes der
Prozessoren faktisch mit einer Kapazität versehen, die
gleich derjenigen des Programm-RAM 41 ist.
Die Adreßdaten DATA aus dem Adressenzähler 42 werden außer
dem einem Komparator 44 zugeführt und darin mit dem Endewert
aus dem Endewertgenerator 48 b verglichen. Von dem Komparator
44 wird ein Schreibsignal WR ausgegeben, das beispielsweise
auf dem Wert "0" gehalten wird, bis die Adreßdaten DATA, die
sich von dem Beginnwert aus sequentiell ändern, den Endewert
erreichen. Das Schreibsignal wird an die Schreibfreigabe
eingänge der Mikroprogrammspeicher jedes der Prozessoren 3-1
. . . 3-n gelegt, und das Einschreiben des Programms in die
Speicher wird freigegeben, während das Schreibsignal auf dem
Wert "0" gehalten wird.
In der beschriebenen Art und Weise wird das Schreibsignal WR
auf dem Wert "0" gehalten, während die Adreßdaten DATA aus
dem Adressenzähler 42 von "0" zu "28" werden, und während
dieses Zeitabschnitts werden das erste und das dritte Pro
gramm, die in den Programm-RAM 41 eingeschrieben sind, se
quentiell aus dem RAM 41 ausgelesen und in die Mikropro
grammspeicher unter den Adressen entsprechend den Adreßdaten
ADRS eingeschrieben.
Während die Programme zu jedem der Prozessoren 3-1 . . . 3-n
übertragen werden, werden Ausführungsstartadressen CS 1 . . .
CSn, d. h. die Startadressen der Programme aus dem ersten
und dem dritten Programm, die als nächste durch jeden der
Prozessoren auszuführen sind, aus dem Adressen-RAM 51 indi
viduell jedem davon zugeführt und durch die Register in
jedem der Prozessoren 3-1 . . . 3-n gehalten. Falls das in
Fig. 14 gezeigte Beispiel zutreffend sein sollte, lautet die
Ausführungsstartadresse des ersten Programms "0", die Aus
führungsstartadresse des zweiten Programms lautet "6", und
die Ausführungsstartadresse des dritten Programms lautet
"19".
In dem Fall, in dem die Programmausführung, die durch jeden
der Prozessoren zu starten ist, durchgeführt werden soll,
nachdem die Übertragung beendet worden ist, wird das Programm
unter der Ausführungsstartadresse gestartet, und auf diese
Weise können die gewünschten Programme ausgeführt werden.
Falls die Programme, die als nächste auszuführen sind, in
der Vielzahl von Programmen enthalten sind, die bereits
übertragen worden sind, werden nur die Ausführungsadressen
erneut übertragen, und dadurch werden unterschiedliche Pro
gramme zur Ausführung durch jeden der Prozessoren freigege
ben.
Nebenbei bemerkt ist es möglich, eine Vielzahl von Program
men geschlossen zu jedem Prozessor zu übertragen, jedoch
kann die Übertragung früher und gleichzeitig beendet werden,
falls die Programme gleichzeitig in der in Fig. 13 aufge
zeigten Weise übertragen werden.
Gemäß der vorliegenden Erfindung, wie sie zuvor beschrieben
wurde, wird eine Vielzahl von Programmen als ein einziges
Programm betrachtet und gleichzeitig übertragen, und die
Ausführungsstartsignale jedes der Programme werden getrennt
voneinander gesendet. Daher können die Programme, die an
sonsten ein Vielfaches an Zeit zu ihrer Übertragung benöti
gen würden, gleichzeitig übertragen werden, und die Über
tragungszeit kann somit verringert werden.
Da eine Vielzahl von unterschiedlichen Programmen zu einer
Vielzahl von Prozessoren ohne das Erfordernis einer Aus
wahlanordnung übertragen werden kann, kann die Schaltungs
anordnung für die Übertragung mit geringerem Aufwand an Ma
terial und Platz realisiert werden.
Indessen wird in dem Fall, in dem eine Vielzahl von Prozes
soren mit unterschiedlichen Programmen versorgt wird, die
Anzahl von geschlossen zu sendenden Programmen die gleiche
wie diejenige der Gesamtanzahl der Prozessoren, und die
Übertragungszeit wird dementsprechend länger. In einigen
Fällen, in denen eine große Anzahl von Prozessoren gegeben
ist, kann die Übertragungszeit insgesamt verringert werden,
wenn dafür Sorge getragen ist, daß die Programme in gleicher
Anzahl wie die Anzahl der Prozessoren, zu denen die Pro
gramme zu übertragen sind, in Gruppen zusammengefaßt werden
und diese Gruppen von Programmen individuell zu jedem der in
Frage kommenden Prozessoren übertragen werden.
Fig. 15 zeigt ein weiteres Ausführungsbeispiel für die Vor
richtung gemäß der vorliegenden Erfindung. Diese erfin
dungsgemäße Vorrichtung ist durch einen Teil gekennzeichnet,
der Auswahlsignale an eine Vielzahl von Prozessoren ausgibt.
Die Vielzahl von Prozessoren ist in mehrere Gruppen unter
teilt, beispielsweise in der Art, daß solche Prozessoren,
die möglicherweise die gleiche Art von Aufgaben zu erfüllen
haben, jeweils in einer Gruppe zusammengefaßt sind. Im vor
liegenden Fall sind die Prozessoren in k Gruppen unterteilt,
und jede davon ist aus i Prozessoren gebildet, d. h. die
erste Gruppe enthält Prozessoren 3-11, 3-12 . . . 3-1 i, die
zweite Gruppe enthält Prozessoren 3-21, 3-22 . . . 3-2 i, . . . ,
und die k-te Gruppe enthält Prozessoren 3-kl, 3-k 2 . . . 3-ki.
Der Übertragungs-Prozessor 4 ist mit Decodern 55-1, 55-2 . . .
55-k zum Versorgen jedes der Prozessoren jeder der Gruppen
mit einem Auswahlsignal versehen. Diese Decoder 55-1, 55-2
. . . 55-k sind ähnlich wie der Decoder 50 in Fig. 2 derart
beschaffen, daß nur eines der Auswahlsignale, die von ihnen
ausgegeben werden, den Signalzustand "0" und alle anderen
Auswahlsignale den Signalzustand "1" entprechend dem einge
gebenen Bitmuster einnehmen, und als Eingangsdaten werden
diesen Decodern die unteren 1-bit-Teile eines m-bit-Aus
wahlsignals zugeführt. Der höhere (m-1)-bit-Teil des m-bit-
Auswahlsignals wird einem Decoder 56 eingegeben. Dieser De
coder 56 erzeugt Auswahlsignale S 1, S 2 . . . Sk zum Auswählen
eines aus den Decodern 55-1, 55-2 . . . 55-k für jede der
Gruppen, und jedes der Auswahlsignale S 1, S 2 . . . Sk wird an
Freigabeeingänge EN der Decoder 55-1, 55-2 . . . 55-k gelegt.
Im vorliegenden Fall sind die Größen m, 1, k u. i so ausge
wählt, daß sie der Beziehung 2 1 ≧ i, 2 m-1 ≧ k genügen.
Das Auswahlsignal ist mit einem Extra-Bit versehen, so daß
eome gruppenweise Auswahl ermöglicht ist. Das 1-bit-Signal
GS wird einer der Eingangsklemmen jedes von ODER-Gliedern
57-1, 57-2 . . . 57 k zugeführt. Die andere Eingangsklemme des
ODER-Glieds 57-1 wird mit dem Auswahlsignal S 1 belegt, die
andere Eingangsklemme des ODER-Glieds 57-2 wird mit dem
Auswahlsignal S 2 belegt, . . . , und die andere Eingangsklemme
des ODER-Glieds 57-k wird mit dem Auswahlsignal Sk belegt.
Von jedem der Decoder 55-1, 55-2 . . . 55-k werden i Teile von
Prozessorauswahlsignalen durch jeweils jedes von i Teilen
von UND-Gliedern 58-11 bis 58-1 i, 58-21 bis 58-21, . . . ,
58-k 1 bis 58-ki an jeweils jede Gruppe von Prozessoren 3-11
bis 3-1 i, 3-21 bis 3-2 i, . . . , 3-k 1 bis 3-ki übergeben. Das
Ausgangssignal des ODER-Glieds 57-1 wird jeweils gemeinsam
an die erste Gruppe von UND-Gliedern 58-11 bis 58-1 i ge
führt, das Ausgangssignal des ODER-Glieds 57-2 wird jeweils
gemeinsam an die zweite Gruppe von UND-Gliedern 58-21 bis
58-2 i geführt, . . . , und das Ausgangssignal des ODER-Glieds
57-k wird jeweils gemeinsam an die k-te Gruppe von UND-
Gliedern 58-k 1 bis 58-k 1 geführt.
Mit der zuvor beschriebenen Struktur wird eine sequentielle
Ubertragung unterschiedlicher Programme zu jedem der Pro
zessoren, nämlich einem nach dem anderen, und das Ein
schreiben der Programme in deren jeweilige Speicher - wie
bisher praktiziert - in der im folgenden beschriebenen Art
und Weise durchgeführt:
Als erstes wird das Signal GS in den Signalzustand "1" ge
bracht. Demzufolge nehmen alle Ausgänge der ODER-Glieder
57-1 bis 57-k den Signalzustand "1" an, und die UND-Glieder
58-11 bis 58-ki werden in einen Zustand versetzt, in dem sie
die Ausgangssignale der Decoder 55-1 bis 55-k unverändert
durchschalten.
Unter diesen Bedingungen wird das eingegebene Auswahlsignal
sequentiell jedesmal, wenn eine Übertragung erfolgt, um ein
Inkrement erhöht.
Im vorliegenden Fall wird das Eingangssignal, das dem Deco
der 56 zugeführt wird, in einem unveränderten Zustand ge
halten, bis die Programmübertragung zu einem Prozessor be
endet worden ist, d. h. es wird in einem Zustand gehalten,
der den Decoder einer Gruppe auswählt.
Entsprechend dem eingegebenen Auswahlsignal nimmt nur das
Auswahlsignal S 1 den Signalzustand "0" an, wodurch der De
coder 55-1 als Decoder wirksam gemacht wird, während die
Prozessorauswahlsignale, die von allen anderen Decodern
ausgegeben werden, ohne Rücksicht auf die letzteren zuge
führten Eingangssignale unwirksam bleiben.
Auf diese Weise wird die erste Gruppe ausgewählt, und das
Programm wird sequentiell über einen Bus in die Speicher der
Prozessoren 3-11 bis 3-1 i der ersten Gruppe in Überein
stimmung mit dem 1-bit-Auswahlsignal des Decoders 55-1 ein
geschrieben.
Wenn die Programmübertragungen zu den Prozessoren 3-11 bis
3-1 i der ersten Gruppe i-mal beendet worden sind, wird das
niedrigste Bit des höheren (m-1)-bit-Eingabeauswahlsignals
invertiert, wodurch nur das Auswahlsignal S 2 des Ausgangs
des Decoders 56 den Signalzustand "0" annimmt, um den Deco
der 55-2 als Decoder wirksam zu machen, und die Ausgänge
aller anderen Decoder 55-1, 55-3 bis 55-k werden unwirksam.
Auf diese Weise wird das Programm sequentiell zu den Pro
zessoren der zweiten Gruppe entsprechend dem unteren 1-bit-
Auswahlsignal übertragen.
Danach wird jeweils einer der Decoder 55-1 bis 55-k in
gleicher Weise entsprechend dem Auswahlsignal, das von dem
Decoder 56 ausgegeben wird, als Decoder wirksam geschaltet,
und die Programmübertragungen werden i-mal zu i Teilen von
Prozessoren der Gruppe desjenigen Decoders, der wirksam ist,
durchgeführt, wodurch die Programmübertragungen im Endeffekt
zu allen der Prozessoren in Aufeinanderfolge durchgeführt
werden.
Als nächstes wird zum Zeitpunkt einer gruppenweisen Pro
grammübertragung das Signal GS in den Signalzustand "0"
versetzt. Dann werden die Ausgangssignale der ODER-Glieder,
denen die Auswahlsignale mit dem Signalzustand "0" aus den
Auswahlsignalen S 1 bis Sk zugeführt werden, welche von dem
Decoder 56 ausgegeben werden, zu "0". Wenn beispielsweise
das Signal S 1 "0" ist, wird das Ausgangssignal des ODER-
Glieds 57-1 zu "0", wodurch die Ausgangssignale aller i
UND-Glieder 58-11 bis 58-1 i dieser Gruppe zu "0" werden, und
zwar ohne Rücksicht auf die Auswahlsignale, die von dem
Decoder 55-1 ausgegeben werden. Auf diese Weise werden die
Speicher der Prozessoren 3-11 bis 3-1 i der ersten Gruppe zum
Einschreiben freigegeben, und daher wird dasselbe Programm
in die Prozessoren 3-11 bis 3-1 i der ersten Gruppe gleich
zeitig mit einem einzigen Übertragungsvorgang eingeschrie
ben.
Dann wird in gleicher Weise ein identisches Programm
gleichzeitig in i Prozessoren derjenigen Gruppe einge
schrieben, die durch eines der Auswahlsignale S 1 bis Sk aus
dem Decoder 56 ausgewählt ist, und zwar mit einem einzigen
Übertragungsvorgang.
Daher kann in dem vorliegenden Fall eine Programmübertragung
zu allen k × i Prozessoren durch i Übertragungsvorgänge
durchgeführt werden, und die Übertragungszeit kann dadurch
verringert werden.
Beiläufig bemerkt ist es anstelle einer Übertragung von
Programmen zu allen Prozessoren in Aufeinanderfolge selbst
verständlich möglich, das Programm zu jedem beliebigen Pro
zessor oder zu jeder beliebigen Gruppe von Prozessoren zu
einer beliebigen Zeit durch Gestalten der Eingabeauswahl
signale derart, daß sie zu Daten werden, die den gewünschten
Prozessor oder die gewünschte Gruppe von Prozessoren aus
wählen, zu übertragen.
Beim Aufteilen der Prozessoren in einige Gruppen ist es
nicht notwendig, daß jede der Gruppen aus der gleichen
Anzahl von Prozessoren gebildet ist. Die Gruppen können
vielmehr aus einer beliebigen Anzahl von Prozessoren, die
jeweils dasselbe Programm verwenden, gebildet sein. In einem
solchen Fall kann durch Speichern der Anzahl von Prozesso
ren, die jeweils zu einer Gruppe gehören, in einem Speicher
der Zeitverlust, der entsteht, wenn die Übertragung sequen
tiell zu jeder der Gruppen durchgeführt wird, eliminiert
werden.
Fig. 16 zeigt ein weiteres Ausführungsbeispiel für die Vor
richtung gemäß der vorliegenden Erfindung, welches Ausfüh
rungsbeispiel eine Verbesserung gegenüber dem in Fig. 15
gezeigten Ausführungsbeispiel verkörpert. Teile oder Ele
mente, die mit Teilen oder Elementen in dem Ausführungs
beispiel gemäß Fig. 15 korrespondieren, sind in Fig. 16 mit
gleichen Bezugszeichen versehen.
In diesem Ausführungsbeispiel sind n Prozessoren in eine
erste Gruppe, die i Prozessoren enthält, und eine zweite
Gruppe, die (n-i) Prozessoren enthält, aufgeteilt.
Im Falle dieses Ausführungsbeispiels werden n Auswahlsignale
von einem Decoder 55 zum Auswählen der n Prozessoren jeweils
durch UND-Glieder 58-1 bis 58-n zu den Prozessoren 3-1 bis
3-n geführt.
Außerdem ist eine Gruppenauswahlschaltung 59 vorgesehen, der
2-bit-Auswahlsignale zugeführt werden.
Ein erstes Gruppenauswahlsignal GS 1 wird den UND-Gliedern
58-1 bis 58-j zugeführt, denen außerdem Auswahlsignale aus
dem Decoder 55 zum Auswählen der Prozessoren 3-1 bis 3-j der
ersten Gruppe über weitere Eingangsklemmen zugeführt werden.
Ein zweites Gruppenauswahlsignal GS 2 wird den UND-Gliedern
58-j+1 bis 58-n zugeführt, denen außerdem Auswahlsignale aus
dem Decoder 55 zum Auswählen der Prozessoren 3-j+1 bis 3-n
der zweiten Gruppe über weitere Eingangsklemmen zugeführt
werden.
In dem Fall, in dem unterschiedliche Programme sequentiell
zu jedem der Prozessoren, nämlich einem nach dem anderen,
übertragen werden, wie dies bisher praktiziert wurde, wird
erfindungsgemäß die Gruppenauswahlschaltung 59 mit Signalen
versorgt, die veranlassen, daß sowohl das Signal GS 1 als
auch das Signal GS 2 den Signalzustand "1" annimmt. Demzu
folge werden die UND-Glieder 58-1 bis 58-n in den Zustand
versetzt, in dem sie die Ausgangssignale des Decoders 55
unverändert durchschalten, und danach werden die Übertra
gungsvorgänge für alle der Prozessoren auf genau die gleiche
Weise wie zuvor beschrieben durchgeführt.
Als nächstes werden, wenn die Gruppenauswahlschaltung 59 mit
solchen Signalen versorgt wird, die nur das Signal GS 1 zu
"0" werden lassen, alle Ausgangssignale der UND-Glieder 58-1
bis 58-j zu "0", und zwar ohne Rücksicht auf die von dem
Decoder 55 ausgegebenen Auswahlsignale, und dadurch wird
dasselbe Programm gleichzeitig in die Prozessoren nur der
ersten Gruppe während nur eines einzigen
Übertragungsvorgangs eingeschrieben.
In dem Fall, in dem nur das Signal GS 2 zu "0" gemacht wird,
werden die Ausgangssignale der UND-Glieder 58-j + 1 bis 58-n
zu "0", und zwar ohne Rücksicht auf die von dem Decoder 55
ausgegebenen Auswahlsignale, wodurch ein identisches Pro
gramm gleichzeitig nur in die Prozessoren der zweiten Gruppe
während nur eines einzigen Übertragungsvorgangs einge
schrieben wird.
Wenn beide der Signale GS 1 u. GS 2 zu "0" gemacht werden,
werden die Ausgangssignale aller UND-Glieder 58-1 bis 58-n
zu "0", in welchem Fall ein identisches Programm gleichzei
tig zu allen der Prozessoren 3-1 bis 3-n übertragen werden
kann.
Gemäß der vorliegenden Erfindung kann, wenn eine Übertragung
zu einer Vielzahl von Prozessoren durchgeführt werden soll,
die Übertragung von Information nicht nur individuell zu
jedem der Prozessoren, sondern auch mit einem einzigen
Übertragungsvorgang zu einer Vielzahl von Prozessoren, die
dieselbe Information verwenden, durchgeführt werden, und auf
diese Weise kann eine Verminderung der Übertragungszeit er
reicht werden.
Obgleich der Fall, in dem die Vorrichtung gemäß der vorlie
genden Erfindung auf die Videosignalverarbeitung angewendet
ist, zuvor beschrieben worden ist, ist es für den Fachmann
ersichtlich, daß die vorliegende Erfindung auch auf die
Verarbeitung anderer als der Videosignale, beispielsweise
auf die Verarbeitung von Audiosignalen, anwendbar ist, da
ein Teil eines derartigen Signals für die Dauer einer Zeit
einheit in einem Speicher zwischengespeichert werden kann
und das Signal dann sequentiell für jeden dieser Zeitein
heitabschnitte verarbeitet werden kann.
Während die vorliegende Erfindung anhand eines Multiprozes
sorsystems als ein Beispiel beschrieben worden ist, ist sie
selbstverständlich auch auf Fälle anwendbar, in denen nur
ein einziger Prozessor betriebsartgesteuert werden soll.
Desweiteren ist das zuvor beschriebene Anwendungsbeispiel
auf den Fall der Übertragung von Mikroprogrammen bezogen,
jedoch ist die Erfindung selbstvertändlich nicht auf das
Übertragen von Mikroprogrammen beschränkt.
Claims (10)
1. Informationsverarbeitungs-Vorrichtung, gekenn
zeichnet durch
- - einen Programmversorgungsabschnitt (11 . . . 16),
- - ein Schreibsignalerzeugungsmittel (44),
- - einen Datenprozessor mit einer Mikroprogrammsteuer
einrichtung (10), einem Mikroprogrammspeicher, einer
arithmetischen Einheit und Auswahlmitteln zum abwechselnden
Auswählen einer Adresse aus der Mikroprogrammsteuereinrich
tung (10) und einer Adresse aus dem Programmversorgungsab
schnitt (11 . . . 16) und Übertragen derselben zu dem Mikro
programmspeicher, in dem sie derart adaptiert wird, daß
in einer ersten Betriebsart die Adresse aus der Mikro programmsteuereinrichtung (10) durch die Auswahlmittel an den Mikroprogrammspeicher übergeben wird und dadurch ein Programm ausgeführt wird,
in einer zweiten Betriebsart, während die Adresse aus der Mikroprogrammsteuereinrichtung (10) durch die Auswahl mittel dem Mikroprogrammspeicher übergeben wird, die Mikro programmsteuereinrichtung (10) mit einem Signal versorgt wird, wodurch dieselbe veranlaßt wird, fortlaufend Pro grammstartadressen zu erzeugen, und
in einer dritten Betriebsart die Adresse aus dem Pro grammversorgungsabschnitt (11 . . . 16) durch die Auswahlmit tel dem Mikroprogrammspeicher entsprechend einem Schreibsi gnal aus dem Schreibsignalerzeugungsmittel (44) übergeben wird, wobei das Programm aus dem Programmversorgungsab schnitt (11 . . . 16) in den Mikroprogrammspeicher einge schrieben wird.
2. Vorrichtung, die in der Lage ist, Inhalte eines Pro
gramms in einem Programmspeicher eines Datenprozessors aus
zuwechseln, gekennzeichnet durch
- - Mittel zum Übertragen eines Programms zu dem Pro grammspeicher,
- - Mittel zum Erzeugen eines vorbestimmten Code und
- - Mittel zum Übergeben von Befehlsdaten aus dem Pro grammspeicher an eine verarbeitende arithmetische Einheit zum Zeitpunkt einer Programmdurchführung und zum Blockieren des Befehls aus dem Programmspeicher und Übergeben des vor bestimmten Code als ein Befehl an die verarbeitende arith metische Einheit zum Zeitpunkt der Programmübertragung.
3. Vorrichtung, die in der Lage ist, Inhalte eines Pro
gramms in einem Programmspeicher eines Datenprozessors aus
zutauschen, gekennzeichnet durch
- - eine Schaltung zum Erzeugen von Betriebsartsignalen für das Auswählen einer Programmübertragungsbetriebsart und einer Programmausführungsbetriebsart,
- - eine erste Taktgeneratorschaltung (46) zum Erzeugen eines ersten Takts (CKF) mit einer schnellen Taktrate zur Verwendung zu dem Zeitpunkt der Programmausführung und
- - eine zweite Taktgeneratorschaltung (47) zum Erzeugen eines zweiten Takts (CKS), der langsamer als der erste Takt (CKF) ist, zur Verwendung zu dem Zeitpunkt einer Programm übertragung, wobei vorgesehen ist, daß
- - Daten und Adressen für den Programmspeicher abhängig davon gesteuert werden, ob die Betriebsart die Programm übertragungsbetriebsart oder die Programmausführungsbe triebsart in Übereinstimmung mit Betriebsartsignalen und entweder der erste Takt (CKF) oder der zweite Takt (CKS) entprechend den Betriebsartsignalen ausgewählt ist.
4. Vorrichtung zum sequentiellen Übertragen von Programmen
von einem Programmversorgungsabschnitt zu einer Vielzahl von
Prozessoren, die nach den Programmen arbeiten, ge
kennzeichnet durch
- - eine Ladesteuereinheit (48),
- - einen Speicher (41) zum Speichern der Daten, die zu dem Zeitpunkt einer Programmübertragung an die Prozessoren senden sind, und
- - Mittel zum Erfassen spezifischer Daten, wobei die spezifischen Daten, die andere Daten als die an jeden der Prozessoren zu sendenden Daten sind, unter einer spezi fischen Adresse des Speichers gespeichert sind, wobei vor gesehen ist, daß die spezifischen Daten entsprechend der Adressierung von der Ladesteuereinheit (48) her ausgelesen werden, wenn die Programmübertragung zu beenden ist, und wobei die ausgelesenen spezifischen Daten durch die Mittel zum Erfassen erfaßt werden, das Erfassungssignal der La desteuereinheit (48) zugeführt wird und dadurch die Übertra gung gestoppt wird.
5. Programmübertragungs-Vorrichtung, die mit einem System
versehen ist, das aus einer großen Anzahl von Prozessoren
aufgebaut ist, die durch deren jeweiligen Mikroprogramme zu
betreiben sind, welche Mikroprogramme in RAM′s enthalten
sind, gekennzeichnet durch
- - einen Speicher mit einer Speicherkapazität, die mit der Summe der Kapazitäten der RAM′s, in denen die Mikropro gramme enthalten sind, korrespondiert, wobei Programme von einem Host-Computer (5) in diesen Speicher eingeschrieben werden und wobei vorgesehen ist, daß
- - das Programm, das in den Speicher eingeschrieben ist, nach Bedarf zu den RAM′s übertragen wird und ein Steuersi gnal, das das Einschreiben des Programms in den RAM frei steuern kann, ausgegeben wird.
6. Vorrichtung mit einem System, das aus einer großen An
zahl von Prozessoren aufgebaut ist, die durch deren jewei
lige Mikroprogramme zu betreiben sind, wobei die Mikropro
gramme in RAM′s enthalten sind, zum Übertragen der Mikro
programme von einem Host-Computer zu den RAM′s, ge
kennzeichnet durch
- - einen Speicher, in dem die Mikroprogramme gespeichert sind, und wobei vorgesehen ist, daß
- - ein Mikroprogramm, das von dem Host-Computer (5) zu geführt wird, aus Teilen eines Datensatzes gebildet ist, wovon jeder Teil unter einer Adresse, die ihm zugeteilt ist, abgelegt ist,
- - der Teil des Datensatzes und die Adresse in dem Mi kroprogramm, das zugeführt wird, voneinander getrennt sind,
- - die Daten in den Speicher entsprechend den getrennten Adressen eingeschrieben sind und
- - der Speicher ausgelesen wird und die Daten zu den RAM′s nach Bedarf übertragen werden.
7. Vorrichtung mit einem System, das aus einer großen An
zahl von Prozessoren aufgebaut ist, die durch deren jewei
lige Mikroprogramme zu betreiben sind, welche Mikroprogramme
in RAM′s enthalten sind, zum Übertragen der Mikroprogramme
von einem Host-Computer zu den RAM′s, gekenn
zeichnet durch
- - einen ROM, der in sich ein Programm zum Diagnostizie ren der Prozessoren enthält, und wobei vorgesehen ist, daß
- - das Diagnoseprogramm bei Bedarf von dem ROM zu dem RAM übertragen wird.
8. Programmübertragungs-Vorrichtung, die in der Lage ist,
irgendeines von Programmen in jeden aus einer Vielzahl von
Prozessoren zu laden, gekennzeichnet durch
- - eine Ladesteuereinheit (48) sowie
- - ersten und zweiten Speichern, wobei der erste Speicher ein Signal zum Auswählen eines Prozessors und ein Identifi kationssignal (IDP) eines Programms, das zu dem Prozessor zu senden ist, enthält und der zweite Speicher Adreßdaten für jedes Programm und die Inhalte des Programms enthält und wobei vorgesehen ist, daß
- - das Prozessor-Auswahlsignal aus dem ersten Speicher entsprechend einer Adresse ausgelesen wird, die aus der Ladesteuereinheit (48) zugeführt wird, wodurch der Prozes sor, zu dem hin eine Programmübertragung durchzuführen ist, spezifiziert wird, wozu das Identifikationssignal ausgelesen wird, eine Adressierung des zweiten Speichers entsprechend dem Identifikationssignal vorgenommen wird, die Adreßdaten und die Programminhalte aus dem zweiten Speicher ausgelesen werden und entsprechend der ausgelesenen Adresse die Pro gramminhalte in den Programmspeicher des spezifizierten Prozessors eingeschrieben werden.
9. Verfahren für eine Programmübertragung beim Versorgen
von Prozessoren, die mit unterschiedlichen Programmen be
trieben werden, mit diesen unterschiedlichen Programmen von
einem Programmversorgungsabschnitt aus, gekenn
zeichnet durch
- - Schritte zum Zuführen der Vielzahl von unterschiedli chen Programmen, welche als Ganzes als nur ein Programm behandelt werden, zu einem Zeitpunkt, zu dem eine Übertra gung zu den Prozessoren stattfinden soll, und Übertragen einer Ausführungsstartadresse für ein Programm aus der Vielzahl von unterschiedlichen Programmen zu jedem der Pro zessoren.
10. Informationsübertragungs-Vorrichtung, bei der vorgesehen
ist, daß Information zu einer Vielzahl von Prozessoren über
einen gemeinsamen Bus übertragen wird, jedoch ein Einschrei
ben der Information in Speicher, die für die Vielzahl von
Prozessoren vorgesehen sind, nur für ausgewählte aus der
Vielzahl von Prozessoren freigegeben wird, gekenn
zeichnet durch
- - erste Auswahlmittel, die in der Lage sind, jeden aus der Vielzahl von Prozessoren individuell auszuwählen, und
- - zweite Auswahlmittel, die in der Lage sind, dann wenn die Vielzahl von Prozessoren auf eine Anzahl von Gruppen aufgeteilt ist, die Prozessoren jeder der Gruppen ohne Rücksicht auf die Ausgangssignalzustände der ersten Aus wahlmittel gemeinsam auszuwählen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60259543A JPH06103460B2 (ja) | 1985-11-19 | 1985-11-19 | プログラム転送方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3639395A1 true DE3639395A1 (de) | 1987-05-27 |
DE3639395C2 DE3639395C2 (de) | 1999-02-18 |
Family
ID=17335566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3639395A Expired - Fee Related DE3639395C2 (de) | 1985-11-19 | 1986-11-18 | Informationsverarbeitungs-Vorrichtung |
Country Status (7)
Country | Link |
---|---|
US (1) | US4920482A (de) |
JP (1) | JPH06103460B2 (de) |
CA (1) | CA1278098C (de) |
DE (1) | DE3639395C2 (de) |
FR (1) | FR2590385B1 (de) |
GB (1) | GB2183375B (de) |
NL (1) | NL8602940A (de) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2504156B2 (ja) * | 1989-01-25 | 1996-06-05 | 日本電気株式会社 | 情報処理装置 |
EP0446721B1 (de) * | 1990-03-16 | 2000-12-20 | Texas Instruments Incorporated | Verteilter Verarbeitungsspeicher |
WO1991019244A1 (en) * | 1990-06-04 | 1991-12-12 | 3Com Corporation | Method for optimizing software for any one of a plurality of variant architectures |
JP3194193B2 (ja) * | 1990-10-31 | 2001-07-30 | カシオ計算機株式会社 | 信号処理装置 |
EP0522513A2 (de) * | 1991-07-09 | 1993-01-13 | Hughes Aircraft Company | Hochgeschwindigkeitsparallelmicrokodeprogrammsteuerung |
JP3172214B2 (ja) * | 1991-09-30 | 2001-06-04 | 富士通株式会社 | 状態モード設定方式 |
JPH07104996A (ja) * | 1993-10-05 | 1995-04-21 | Kofu Nippon Denki Kk | マイクロプログラム制御装置 |
US6163836A (en) | 1997-08-01 | 2000-12-19 | Micron Technology, Inc. | Processor with programmable addressing modes |
US7100028B2 (en) * | 2000-08-09 | 2006-08-29 | Advanced Micro Devices, Inc. | Multiple entry points for system call instructions |
US6968446B1 (en) | 2001-08-09 | 2005-11-22 | Advanced Micro Devices, Inc. | Flags handling for system call instructions |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58215813A (ja) * | 1982-06-09 | 1983-12-15 | Sony Corp | デイジタル信号処理装置 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3478322A (en) * | 1967-05-23 | 1969-11-11 | Ibm | Data processor employing electronically changeable control storage |
US4021651A (en) * | 1972-06-20 | 1977-05-03 | Kawasaki Jukogyo Kabushiki Kaisha | Programmed manipulator |
DE2350371C3 (de) * | 1973-10-08 | 1981-03-26 | IBM Deutschland GmbH, 70569 Stuttgart | Verfahren und Einrichtung zur Prüfung und Wartung von Datenverarbeitungsanlagen mittels räumlich entfernter Wartungsstationen |
US4037092A (en) * | 1973-11-26 | 1977-07-19 | Hewlett-Packard Company | Calculator having preprogrammed user-definable functions |
FR2259397B1 (de) * | 1974-01-25 | 1977-09-30 | Honeywell Bull Soc Ind | |
US3972025A (en) * | 1974-09-04 | 1976-07-27 | Burroughs Corporation | Expanded memory paging for a programmable microprocessor |
US4001788A (en) * | 1975-03-26 | 1977-01-04 | Honeywell Information Systems, Inc. | Pathfinder microprogram control system |
IT1059493B (it) * | 1976-04-22 | 1982-05-31 | Olivetti & Co Spa | Dispositivo per cambiare l ambiente di lavoro di un calcolatore |
CA1081855A (en) * | 1976-04-29 | 1980-07-15 | David B. Schuck | Initializing means for a bus-oriented data processing system employing firmware-configured modules |
DE2622140C3 (de) * | 1976-05-19 | 1981-11-26 | Ibm Deutschland Gmbh, 7000 Stuttgart | Einrichtung zur Steuerung manueller Operationen |
US4204252A (en) * | 1978-03-03 | 1980-05-20 | Digital Equipment Corporation | Writeable control store for use in a data processing system |
US4167779A (en) * | 1978-03-10 | 1979-09-11 | Digital Equipment Corporation | Diagnostic apparatus in a data processing system |
JPS5591029A (en) * | 1978-12-29 | 1980-07-10 | Fujitsu Ltd | Microprogram control system |
US4376982A (en) * | 1980-06-30 | 1983-03-15 | International Business Machines Corporation | Protocol for inter-processor dialog over a communication network |
JPS57197653A (en) * | 1981-05-29 | 1982-12-03 | Mitsubishi Electric Corp | Control device of microprogram |
US4422144A (en) * | 1981-06-01 | 1983-12-20 | International Business Machines Corp. | Microinstruction substitution mechanism in a control store |
US4439839A (en) * | 1981-08-24 | 1984-03-27 | International Telephone And Telegraph Corporation | Dynamically programmable processing element |
US4654783A (en) * | 1982-07-26 | 1987-03-31 | Data General Corporation | Unique process for loading a microcode control store in a data processing system |
DE3374964D1 (en) * | 1982-09-29 | 1988-01-28 | Toshiba Kk | Decentralized information processing system and initial program loading method therefor |
US4626634A (en) * | 1982-09-30 | 1986-12-02 | At&T Bell Laboratories | Multiprocessor computing system featuring shared global control |
US4720812A (en) * | 1984-05-30 | 1988-01-19 | Racal-Milgo, Inc. | High speed program store with bootstrap |
JPS6180338A (ja) * | 1984-09-27 | 1986-04-23 | Fanuc Ltd | システムプログラムロ−デイング方法 |
US4641238A (en) * | 1984-12-10 | 1987-02-03 | Itt Corporation | Multiprocessor system employing dynamically programmable processing elements controlled by a master processor |
JPS6265298A (ja) * | 1985-09-17 | 1987-03-24 | Fujitsu Ltd | Epromの書き込み方式 |
-
1985
- 1985-11-19 JP JP60259543A patent/JPH06103460B2/ja not_active Expired - Lifetime
-
1986
- 1986-11-13 GB GB8627177A patent/GB2183375B/en not_active Expired - Lifetime
- 1986-11-18 DE DE3639395A patent/DE3639395C2/de not_active Expired - Fee Related
- 1986-11-18 CA CA000523213A patent/CA1278098C/en not_active Expired - Lifetime
- 1986-11-19 US US06/932,277 patent/US4920482A/en not_active Expired - Lifetime
- 1986-11-19 NL NL8602940A patent/NL8602940A/nl active Search and Examination
- 1986-11-19 FR FR868616097A patent/FR2590385B1/fr not_active Expired - Lifetime
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58215813A (ja) * | 1982-06-09 | 1983-12-15 | Sony Corp | デイジタル信号処理装置 |
Non-Patent Citations (4)
Title |
---|
DE-Buch: "Mikroprozessor Interface Techniken", Austin Lesea, Rodney Zaks, Micro Shop Bodensee, 1979, S. 77-82 * |
Treatises of Institute of Electronics and Communication Engineers of Japan 85/4, Vol. S 68-D, No. 4 * |
US Firmenschrift der Advanced Micro Devices "The Am 2900 Family Data Book" 1978, S. 2-88 bis 2-100 * |
US- IBM TDB, Vol. 26, Nr. 5, Oktober 1983, S. 2238-2240 * |
Also Published As
Publication number | Publication date |
---|---|
FR2590385B1 (fr) | 1992-09-04 |
DE3639395C2 (de) | 1999-02-18 |
US4920482A (en) | 1990-04-24 |
NL8602940A (nl) | 1987-06-16 |
GB2183375B (en) | 1990-05-30 |
JPS62118440A (ja) | 1987-05-29 |
CA1278098C (en) | 1990-12-18 |
FR2590385A1 (fr) | 1987-05-22 |
GB8627177D0 (en) | 1986-12-10 |
JPH06103460B2 (ja) | 1994-12-14 |
GB2183375A (en) | 1987-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1097460B1 (de) | Integrierte schaltung mit einer selbsttesteinrichtung zur durchführung eines selbsttests der integrierten schaltung | |
EP0010194B1 (de) | Wartungsschnittstelleneinrichtung für eine datenverarbeitende Anlage mit einer zentralen Verarbeitungseinheit und mit einem Dienstprozessor und Verfahren zu ihrem Betrieb | |
DE3300260C2 (de) | ||
DE3631333C2 (de) | ||
DE68925466T2 (de) | Zeitgeberschaltung | |
DE69022709T2 (de) | Synchronisationsbefehl für Mehrprozessornetz. | |
DE2244402A1 (de) | Datenverarbeitungsanlage | |
DE3752280T2 (de) | Mustergenerator | |
DE3116100A1 (de) | Sprungabschaetz-zentraleinheit | |
DE2722099A1 (de) | Abfangeinrichtung fuer ein dv-system | |
DE2723523A1 (de) | Kompression und dekompression von gespeicherten digitaldaten | |
DE69121937T2 (de) | Verfahren und Gerät zum teilweisen Lauf eines Sequenzprogramms zwecks Fehlersuche | |
DE3627638A1 (de) | Verfahren zum pruefen von traegern mit mehreren digital arbeitenden integrationsschaltungen, mit derartigen schaltungen versehener traeger, geeignete integrationsschaltung zum anbringen auf einem derartigen traeger und pruefanordnung zur pruefung derartiger traeger | |
DE2714805A1 (de) | Datenverarbeitungssystem | |
CH654943A5 (de) | Pruefeinrichtung fuer mikroprogramme. | |
DE2355993A1 (de) | Datenverarbeitungseinheit einschliesslich mikroprogramm-steuereinrichtung | |
DE2648229A1 (de) | Einschaltkreis als urlader fuer digitalrechner | |
DE2735397A1 (de) | Programmierbarer maschinen-funktionsregler | |
DE3900248C2 (de) | Verfahren zur schnellen Ablaufsteuerung digitaler Testmuster und Vorrichtung zur Durchführung des Verfahrens | |
DE2722124A1 (de) | Anordnung zum feststellen des prioritaetsranges in einem dv-system | |
DE68921227T2 (de) | Selbstprüfung von Informationsprozessoren. | |
DE4430387A1 (de) | Fehlererkennungssystem | |
DE69031992T2 (de) | Steuerungssystem für die Ausführung von Befehlen | |
DE2723714A1 (de) | Digital-ueberwachungseinrichtung | |
DE3639395C2 (de) | Informationsverarbeitungs-Vorrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8125 | Change of the main classification |
Ipc: G06F 9/24 |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |