DE2953432C1 - Vorrichtung zum Testen eines Mikroprogramms - Google Patents
Vorrichtung zum Testen eines MikroprogrammsInfo
- Publication number
- DE2953432C1 DE2953432C1 DE2953432A DE2953432A DE2953432C1 DE 2953432 C1 DE2953432 C1 DE 2953432C1 DE 2953432 A DE2953432 A DE 2953432A DE 2953432 A DE2953432 A DE 2953432A DE 2953432 C1 DE2953432 C1 DE 2953432C1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- data
- microprogram
- control circuit
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
Die Erfindung bezieht sich auf eine Vorrichtung zum Testen eines Mikroprogramms gemäß Oberbegriff des
Anspruchs 1 bzw. des Anspruchs 9.
Bei einem mikroprogrammgesteuerten Rechner ist es im allgemeinen nicht notwendig, den Inhalt des
programm enthaltende Nur-Lese-Speicher (82) aus 35 Mikroprogrammspeichers zu regenerieren. Wenn ein
einem ersten Abschnitt (83) zum Speichern von Mikrobefehlen und einem zweiten Abschnitt (84)
zum Speichern von Daten für die Erfassung eines Fehlers gebildet wird und eine Mikroadressen-
neu entwickeltes Mikroprogramm getestet werden soll, wird üblicherweise das Mikroprogramm direkt in einen
Nur-Lese-Speicher eingeschrieben und dieser Speicher in einen Mikroprogrammspeicherabsehnitt (MROM)H
Steuereinheit (21) eine Adresse an den Mikropro- 40 eingesetzt (vgl. Fig. 1). Ein Mikroadiessen-Steucrabgrammspeicher
(82) liefert, ein Mikrobefehlsregister scnnitt (MAC) , j gibt an den Mikroprogrammspeicherabschnitt
(MROM) 12 eine Adresse, aus der ein Mikrobefehl auszulesen ist. Der ausgelesene Mikrobefehl
wird in einem Mikrobefehlsregister (MIR) 13 Fehlerinden Mikrobefehlen erfaßt, gekennzeichnet 45 festgehalten.
durch: Nachteilig bei dem oben geschilderten Vorgang ist
jedoch, daß jedesmal dann ein Mikroprogramm in einen neuen Speicher eingeschrieben werden muß, wenn der
Inhalt eines zuvor erstellten Mikroprogramms ausge-
zweiten Abschnitt (27) für wenigstens die Daten für 50 bessert werden soll. Dies nimmt beträchtliche Zeit in
Anspruch, und der Nur-Lese-Speicher, in welchem das alte Programm gespeichert ist, wird unbrauchbar und
kann fortgeworfen werden. Hierdurch erhöhen sich die Kosten beim Testen von Mikroprogrammen. Es wurden
55 daher Versuche unternommen, um beispielsweise einen programmierbaren Nur-Lese-Speicher (PROM) einzusetzen,
welcher ein erneutes Einschreiben von Daten ermöglicht. Jedoch hat auch diese Lösung insofern
Nachteile, als zum Schreiben von Daten in einen solchen gespeicherten Mikrobefehlen nach Maßgabe der 60 Speicher relativ viel Zeit benötigt wird und die
Fehlererfassungsdaten erfaßt; Zugriffszeit zum Speicher so groß ist, daß Taktimpulse,
die bei Kombination eines Rechners mit einer Testvorrichtung (im folgenden als System bezeichnet)
verwendet werden, eine niedrige Frequenz haben
(25) einen nach Maßgabe der von der Mikroadressen-Steuereinheit (21) gelieferten Adresse ausgelesenen
Mikrobefehl hält, und ein Fehlerdetektor (85)
einen Schreib/Lese-Speicher (23). der aus einem ersten Abschnitt (26) für Mikrobefehle zum Steuern
des Betriebs des elektronischen Rechners und einem
die Erfassung eines Fehlers in den Mikrobefehlen oder Daten zum Steuern des Anhaltens der
Ausführung der Mikrobefehle gebildet wird und der von der Mikroadressen-Steuereinheit (21) adressierbar
ist;
einen Fehlerdetektor (28), der, wenn Daten für die Erfassung eines Fehlers in dem zweiten Abschnitt
des Speichers (23) gespeichert sind, einen Fehler in den in dem ersten Abschnitt des Speichers (23)
eine Ablaufüberwachungs-Steuerschaltung (29), die, wenn Daten für die Steuerung des Anhaltens der
Ausführung von Mikrobefehlen in dem zweiten
Abschnitt des Speichers (23) gespeichert sind, die 65 müssen. Dies hat den Nachteil, daß der Speicher nicht im
Ausführung von in dem ersten Abschnitt des Echtzeitbetrieb getestet werden kann.
Speichers (23) gespeicherten Mikrobefehlen aus- Um die oben aufgezeigten Probleme zu lösen, wurden
setzt; und
Versuche unternommen, einen Nur-Lese-Speicher
(ROM) durch einen Speicher mit wahlfreiem Zugriff zu ersetzen, der eine relativ kurze Zugriffszeit aufweist und
sowohl Lesen als auch Schreiben ermöglicht. Die Anwendung eines derartigen Speichers macht es in der
Tat möglich, den Inhalt eines Mikroprogramms beliebig neu zu schreiben. Ferner kann bei Verwendung eines
solchen Speichers der Mikroprogrammtest echtzeitgemäß durchgeführt werden. Der RAM jedoch läßt es zu,
daß sein Inhalt beispielsweise durch Rauschen oder Schwankungen der Stromversorgung zerstört wird. ]0
Wenn daher ein in einem solchen Speicher gespeichertes Mikroprogramm getestet wird und eine vorgeschriebene
Steuerung versagt, treten Schwierigkeiten auf beim Beurteilen, ob das Versagen auf Fehler des
Mikroprogramms selbst zurückzuführen ist oder auf die )5
Zerstörung des Inhalts des Speichers. Vorschläge, die zur Lösung der oben angesprochenen Probleme
gemacht wurden, beinhalten ein; datenverarbeitende
Vorrichtung, wie sie beispielswe· -e in der japanischen
Patentschrift 142 939 (1976) niedergelegt ist. Diese Vorrichtung umfaßt einen Steuerspeicher, in dem
Mikrobefehle gespeichert sind, und ein Steuerspeicher-Adreßregister, welches Adreßdaten hält, um einen
Zugriff auf den Steuerspeicher zu haben. Bei dieser Vorrichtung werden aus einer Adreßspeichereinrichtung
sukzessive mehreren Steuercodedaten paarweise zugeordnete Adreßdaten ausgelesen. Es erfolgt ein
Vergleich zwischen den Adreßdaten und den Inhalten des Steuerspeicher-Adreßregisters in einem Vergleichen
Wenn von dem Vergleicher ein Übereinstimmungssignal erzeugt wird, wird auf die Adreßspeichereinrichtung
zugegriffen, um die Steuerdaten auszulesen. Mittels der so ausgelesenen Steuerdaten wird eine
Betriebsart gesteuert.
Jedoch ermangelt es der in der oben erwähnten japanischen Patentschrift 1 42 939(1976) beschriebenen
Vorrichtung, bei der Adreßdaten sukzessive aus der Adreßspeichereinrichtung ausgelesen werden, an einer
Funktion zum Anhalten der Ausführung eines Mikroprogramms an einer wahlfrei festgelegten Adresse, um
den Inhalt eines allgemeinen Registers und des Hauptspeichers auszulesen.
Weiterhin erläutert die japanische Patentschrift 52-2146 (1977) eine Testvorrichtung für einen kleinen
Prozessor. Sie enthält einen als Zwischenspeicher dienenden Speicher, in dem ein zu testendes Mikroprogramm
gespeichert wird, eine an eine Eingabe/Ausgabe-Einheit für die Testvorrichtung angeschlossene
Schnittstellenschaltung, eine Konsole und eine Konsolenschaltung, die einen von der Konsole abgegebenen
Befehl decodiert und einen Befehl an den erwähnten Speicher für die Zwischenspeicherung und die Eingabe/
Ausgabe-Einheit der Testvorrichtung liefert. Diese Testvorrichtung ist jedoch nicht in der Lage, die
Ausführung eines Mikrobefehls echtzeitgemäß anzuhalten.
In der Druckschrift »Siemens, Elektronisches Wählsystem
EWS, Zentralsteuerwerk mit SSP 102 und Bedienungsplatz«, Bestell-Nr. A 30 808-X105-AlOO-1-18,
Dezember 1978, Seiten 11 bis 15, ist eine Anordnung beschrieben, bei der Mikrobefehle, die
jeweils ein Paritätsbit enthalten, behandelt werden. Zum Testen eines Mikroprogramms vor dessen endgültigem
Einsatz in einem elektronischen Rechner eignet sich diese Anordnung jedoch nicht.
In der DE-AS 22 46 863 ist ein Befehls-Anhalteverfahren
für Programme beschrieben. Hierbei wird eine bestimmte Adresse mit den Adressen der laufend
verarbeiteten Befehle verglichen. Bei Übereinstimmung wird der Programmlauf angehalten. Diese an sich
bekannte Methode zum Erzielen von »Momentaufnahmen« erfordert jedoch relativ viel Aufwand, da die
einzelnen Adressen in ihrer Gesamtheit festgelegt werden müssen, um für den erwähnten Vergleich zur
Verfügung zu stehen.
Die DE-AS 20 02 166 offenbart eine Methode des Wiederholens des Schleifendurchlaufs eines Mikrobefehls
zu Testzwecken. Hierzu wird z. B. jedesmal dann, wenn ein Ergebnis vorliegt, die Ausführung eines
Mikroprogramms angehalten. Zum Testen von Mikroprogrammen ist dies aber nicht besonders wirksam;
denn es kann vorkommen, daß bestimmte Programmabschnitte bereits vollständig ausgetestet sind, so daß sich
eine Überprüfung der von solchen Programmabschnitten gelieferten Ergebnissen erübrigt. Wünschenswert ist
es, die Ausführung eines Mikroprogramms zu Testzwekken nur dort anzuhalten, wo es der testenden
Bedienungsperson angebracht erscheint.
In der DE-OS 24 00 010 ist ein mikroprogrammierter Rechner mit Mikroprogramm-Fehlerdiagnoseeinrichtung
beschrieben. Bei der Fehlerdiagnose wird davon ausgegangen, daß möglicherweise einzelne Stellen eines
oder mehrerer Mikrobefehle gestört sind. Um solche Fehler festzustellen, erfolgt in an sich bekannter Weise
eine Paritätsprüfung, und zwar nur unter gewissen Bedingungen, damit diese Prüfung den normalen
Programmablauf nicht stört. Allerdings handelt es sich bei dieser Fehlerdiagnoseeinrichtung nicht um eine
Einrichtung zum Testen eines Mikroprogramms für einen Rechner, bevor das Mikroprogramm endgültig
zur Steuerung des Rechners verwendet wird, sondern die bekannte Einrichtung- geht von einem bereits
getesteten Mikroprogramm aus und hat nur den Zweck, solche Fehler zu erkennen, die nach dem an sich
endgültigen Feststehen des Mikroprogramms auftreten.
Von einer Vorrichtung zum Testen eines bei einem elektronischen, mikroprogrammierten Rechners verwendeten
Mikroprogramms wird jedoch gefordert, daß das für die Steuerung des Rechners entworfene
Mikroprogramm erst durch einige Testläufe überprüft wird, um festzustellen, ob das Programm sämtliche
gewünschten Funktionen in der richtigen Weise ausführt. Bei dem oben geschilderten Stand der Technik
steht jedoch das endgültige Mikroprogramm fest und es werden nur solche Fehler berücksichtigt, die beispielsweise
durch Verfälschungen der in dem Mikroprogrammspeicher des Rechners gespeicherten Information
entstehen.
Der Erfindung liegt die Aufgabe zugrunde, eine Vorrichtung der eingangs genannten Art anzugeben,
mit der die oben geschilderten Nachteile vermieden werden, die sich an einen Rechner anschließen läßt, und
die die Möglichkeit bietet, nach Belieben ein Mikroprogramm zu schreiben, zu testen und auszubessern, bevor
das Mikroprogramm endgültig den Betrieb des Rechners steuert.
Diese Aufgabe wird durch die im Anspruch 1, im Anspruch 6 bzw. im Anspruch 9 angegebenen Merkmale
gelöst.
Der erfindungsgemäß vorgesehene SchreibVLese-Speicher
ist Bestandteil der Testvorrichtung, die zu Testzwecken an den Rechner angeschlossen werden
kann und während der Dauer des Tests mit dem Rechner zusammenarbeitet. Ist der Test abgeschlossen,
d. h. steht die endgültige Version des den Rechner steuernden Mikroprogramms fest, so kann die Testvor-
richtung gegebenenfalls wieder von dem Rechner entfernt werden. In dem ersten Abschnitt des Schreib-/
Lese-Speichers sind Mikrobefehle gespeichert, die den in dem Mikroprogrammspeicher des Rechners gespeicherten
Befehlen entsprechen. In dem zweiten Abschnitt des Schreib-/Lese-Speichers lassen sich zusätzliche
Befehle oder Informationen speichern, um beispielsweise den Ablauf eines zu testenden Mikroprogramms
an einer bestimmten Stelle anzuhalten, eine Paritätsprüfung durchzuführen, und dergleichen. Die erfindungsgemäße
Testvorrichtung ist praktisch unabhängig von der Hardware des Rechners ausgebildet, so daß der
Rechner selbst durch die Testvorrichtung nicht belastet wird.
Ausführungsbeispiele der Erfindung werden nachfolgend anhand der Zeichnung beschrieben.
Fig. 1 ist ein Blockschaltungsdiagramm eines Beispiels eines zum Lesen eines Mikrobefehls dienenden
Steuerabschnitts, der in dem bekannten mikroprogrammgesteuerten elektronischen Rechner enthalten
ist;
F i g. 2 ist ein Blockschaltungsdiagramm einer Mikroprogramm-Testvorrichtung
gemäß einem Ausführungsbeispiel dieser Erfindung und eines mikroprogrammgesteuerten
elektronischen Rechners, der mit der Mikroprogramm-Testvorrichtung ausgestattet ist;
Fig. 3 ist ein Blockschaltungsdiagramm einer Mikroprogramm-Testvorrichtung
gemäß einer weiteren Ausführungsform der Erfindung;
Fig.4 ist ein Blockschaltungsdiagramm einer Mikroprogramm-Testvorrichtung
gemäß einem noch weiteren Ausführungsbeispiel der Erfindung;
F i g. 5 ist ein Blockschaltungsdiagramm einer Mikroprogramm-Testvorrichtung
gemäß einem weiteren Ausführungsbeispiel der Erfindung;
Fig.6 ist ein den Datenfluß zeigendes Blockschaltungsdiagramm
desjenigen Abschnitts der Erfindung, der eine Mikroprogrammadresse spezifiziert;
Fig. 7 ist ein Bloekschaltungsdiagramm einer Mikroprogramm-Testvorrichtung
gemäß einem noch weiteren Ausl'ührungsbeispiel der Erfindung;
Fig.8 zeigt die detaillierte Anordnung einer Schaltung
zum Steuern des Umschaltens der verschiedenen Funktionen der Mikroprogramm-Testvorrichtung der
Erfindung;
Fig. 9 ist ein Bloekschaltungsdiagramm einer konkreten Mikroprogramm-Testvorrichtung gemäß dieser
Erfindung;
Fig. 10 ist ein detailliertes Bloekschaltungsdiagramm
einer Schreibsteuerschaltung;
Fig. 11 ist ein detailliertes Bloekschaltungsdiagramm
einer Mikroprogrammadressen-Steuerschaltung;
Fig. 12 ist ein detailliertes Blockdiagramm einer Lesesteuerschaltung;
Fig. 13A bis 13F sind Impulsübersichten, die die Operationen eines Adreßbusses (A-BUS), eines ersten
Stapel-Freigabesignals (STKEi), eines Ablaufüberwachungsspeichers
(TRACEM), eines zweiten Stapel-Freigabesignals (STKE2), eines Ablaufüberwachungs-Adreßzählers
(RNGC) bzw. eines Taktsignals darstellen: und
Fig. 14 ist ein Flußdiagramm eines Unterbrechungsbehandlungs-Mikroprogramms.
Gemäß Fig.2 ist ein Adreßbus 22 einer Mikroprogrammadressen-Steuereinheit
21 zum Steuern der Adresse eines Mikroprogramms an einen ersten Test-Mikroprogrammspeicher 23, der in einer Testvorrichtung
vorgesehen ist, angeschlossen. Der Ausgangsanschluß des ersten Mikroprogrammspeichers 23 und
der Ausgangsanschluß eines zweiten Mikroprogrammspeichers 24 eines Rechners sind an ein Mikrobefehlsregister
25 angeschlossen. Der erste Mikroprogrammspeieher 23 besitzt eine um ein Wort größere Wortlänge als
der zweite Mikroprogrammspeicher 24, und er weist einen ersten Abschnitt 26 mit derselben Wortlänge wie
der zweite Mikroprogrammspeicher 24 sowie einen zweiten Abschnitt 27 auf, der beim Steuern des
to Rechners nicht beteiligt ist. Der Ausgangsanschluß des
zweiten Abschnitts 27 ist an einen Fehlerdetektor 28 und an eine Ablaufüberwachungs-Steuerschaltung 29,
die beide in der Testvorrichtung vorgesehen sind, angeschlossen. Das System wird von dem ersten und
dem zweiten Mikroprogrammspeicher 23 und 24 sowie einer Funktionsumschalt-Steuerschaltung 30 gesteuert.
In anderen Worten, die Funktionsumschalt-Steuerschaltung 30 ermöglicht, daß der in der Testvorrichtung
vorgesehene erste Mikroprogrammspeicher 23 und der in dem Rechner enthaltene zweite Mikroprogrammspeicher
24 austauschbar zur Anwendung gelangen. Ein Mikroprogramm wird getestet, indem zuerst der Inhalt
des Mikroprogramms in dem ersten Mikroprogrammspeicher 23 gespeichert wird. Wenn es notwendig ist,
einen Fehler in dem Mikroprogramm zu korrigieren oder seine Anordnung auszubessern, werden die Inhalte
derjenigen Adresse des ersten Mikroprogrammspeichers 23 geändert, die nach Ansicht der Bedienungsperson
in Beziehung steht mit dem obengenannten Erfordernis.
In diesem Fall ist es selbstverständlich möglich, wiederholt Daten zu schreiben und zu lesen. Der erste
Mikroprogrammspeicher 23 hat eine Zugriffszeit, die genauso kurz oder kürzer ist als diejenige des zweiten
Mikroprogrammspeichers 24. Die Inhalte einer von der Mikroadressen-Steuereinheit 21 spezifizierten Adresse
werden über einen O-Bus 31 zum Steuern des Rechners in das Mikrobefehlsregister 25 ausgelesen. In diesem
Fall verhindert die Funktionsumschalt-Sleuerschaltung 30, daß eine Ausgangsgröße aus dem zweiten
Mikroprogrammspeicher 24 ausgelesen wird, und sie ermöglicht, daß ein Ausgangssignal von dem ersten
Mikroprogrammspeicher 23 abgegeben wird. Wenn der Test eines in dem ersten Mikroprogiammspeicher 23.
gespeicherten Mikroprogramms zu einem Abschluß gebracht wird, wird das getestete Mikroprogramm
mittels einer ausschließlich zum Schreiben vorgesehenen Vorrichtung in einen Nur-Lese-Speicher ausgelesen.
Der genannte Nur-Lese-Speicher wird als der zweite Mikroprcgrammspeicher 24 in den Rechner
geladen. Die Funktionsumschalt-Steuerschaltung 30 gestattet, daß nach Erhalt eines Freigabesignals
(MROME) 32 aus dem zweiten Mikroprogrammspeicher 24 ein Ausgangssignal ausgelesen wird, und sie
verhindert, daß nach Erhalt eines Freigabesignals (MRAME)33 aus dem ersten Mikroprogrammspeicher
23. ein Ausgangssignal ausgelesen wird. Danach wird ein endgültiger Test durchgeführt, indem das getestete
Mikroprogramm in dem Rechner ausgeführt wird. Nach Abschluß des endgültigen Tests wird die Testvorrichtung
von dem Rechner entfernt. Nun kann ein Ausgangssignal aus dem zweiten Mikroprogrammspeicher
24 ausgelesen werden.
Ein Wort des ersten Mikroprogrammspeichers 23. ist
länger als das des zweiten Mikroprogrammspeichers 24. Der zweite Abschnitt 27 des ersten Mikroprogrammspeichers
23 ist ausgelegt zum Speichern von Daten bei jedem besonderen Datenwort eines zu testenden
Mikroprogramms (im folgenden als »Testdaten« bezeichnet).
Die Testdaten, die erhalten werden, wenn ein Mikrobefehl ausgelesen wird, werden zu dem Fehlerdetektor
28 sowie der Ablaufüberwachungs-Steuerschaltung 29 geleitet. Diese Elemente 28 und 29 steuern die
Weise, in der verschiedene Datenworte eines Mikroprogramms getestet werden. Die beiden Elemente 28 und
29 können abwechselnd zur Anwendung kommen oder zur selben Zeit gesperrt werden. Diese Betriebsart kann
durch die Funktionsumsehalt-Steuerschaltung 30 gesteuert weiden. Die Ausgangssignale der Elemente 28
und 29 werden auf ein ODER-Glied 44 gegeben.
Es wird nun die Beschreibung eines konkreten Falls gegeben, bei dem der zweite Abschnitt 27 des ersten
MikropiOgrammspeichers 23 eine Wortlänge von
einem Bit hat. Beispielsweise kann ein Datenbit des zweiten Abschnitts 27 des ersten MikropiOgrammspeichers
23 das Stoppen der Ausführung eines Mikrobefehls steuern. In anderen W rten. es kann ein
Anhaltepunkt eingerichtet werden. Wenn das genannte eine Bit auf einen logischen Pegel »0« gesetzt ist. wird
ein Mikrobefehl, der unter derselben Adresse des ersten Abschnittes 26 des ersten Mikroprogrammspcichers 23
gespeichert ist wie derjenigen, zu der der zweite Abschnitt des Speichers 23 gehört, in das Mikrobefehlsregister
25 ausgelesen, um den Rechner /u steuern. Folglich wird die gewöhnliche Operation in Vorbereitung
der Ausführung eines Mikrobefehls ausgeführt. Wenn das genannte Bit des zweiten Abschnitts 27 des
ersten MikropiOgrammspeichers 23 auf einen logischen Pegel »I« gesetzt ist, wird die Ablaul'iiberwachungs-Sieueischaltung
29 betätigt, wenn der Mikrobefehl ausgelesen wird, um die Ausführung des Mikrobefehls
anzuhalten, was die testende Person über den Halt informiert. In anderen Worten, wenn die Ablaufüberwachungs-Steuerschaltung
29 den logischen Pegel »I« des Bits erfaßt, wandelt sie den logischen Pegel eines
Taktsteuersigiials (HAU) 34 in »0« um. Demzufolge
wird der logische Pegel eines S\stemtaktsignals 36. das
Vi)Ii einem Taktgeber 35 an die einsprechenden Teile
ties Rechners geliefert wird, in »0« geändert, wodurch
der Betrieb des Rechners angehalten wird. Zum Zeitpunkt des Anhaltens zeigt eine an die Testvorrichtung
angeschlossene Anzeigecuiheit die Adresse an. bei der die Ausführung eines Mikroprogramms endet. 4-,
Das eine Bit des zweiten Abschnitts 27 des ersten Mikroprogrammspeichers 23 kann auch als Paritätsbit
für einen Mikrobefehl verwendet werden. Wenn der RAM als Speicher zum Speichern eines Mikroprogramms
zur Anwendung gelangt, werden die Inhalte des RAM manchmal /erstört, beispielsweise durch Rauschen
oder Schwankungen der Versorgungsspannung. Daher besitzt der RAM eine geringere Zuverlässigkeit
als der ROM. Daher wird einem Mikrobefehl zwecks Erkennung eines ein Bit umfassenden Fehlers ein
Paritätsbit beigefügt. Der Fehlerdetektor 28 erfaßt das Auftreten eines Paritätsfehlers jedesmal, wenn ein
Mikrobefehl während der Ausführung eines Mikroprogramms ausgelesen wird. Wenn kein Paritätsfehlcr
auftritt, gestattet der Fehlerdetektor 28 die Ausführung <,o
eines Mikrobefehls in der gegebenen Weise. Wenn hingegen ein Paritätsfehlcr auftritt, stoppt der Fehlerdetektor
28 die Ausführung eines Mikrobefehls. Zu dieser Zeit zeigt die an die Testvorrichtung angeschlossene
später beschriebene Anzeigeeinheit eine Adresse an, bei b5
der ein Paritätsfehler aufgetreten ist. Die Ausführung eines Mikrobefehls wird in derselben Weise gestoppt,
wie es bei dem zuvor beschriebenen .Anhaltepunkt der Fall war.
Es wird nun ein weiteres Verfahren beschrieben, durch das die Ausführung eines Mikrobefehls gestoppt
wild. Wenn ein Rechner die Unterbrechung eines Mikroprogramms gestattet und die oben erwähnte
Bedingung zum Anhalten eines zu testenden Mikroprogramms vorliegt, dann kann die Ausführung eines
Mikroprogramms dadurch gestoppt werden, daß der Rechner zur Unterbrechung veranlaßt wird und danach
die Daten des Datenwortes angezeigt werden, das zuvor durch die testende Person spezifiziert wurde. Die Daten
des durch die testende Person spezifizierten Datenwortes werden durch ein Unterbrechungsbehandlungs-Mikroprogramm
zur Anzeige gebracht, das in dem ersten Mikroprogrammspeicher 23 zusammen mit einem zu
testenden Mikroprogramm gespeichert ist. Im folgenden wird unter Bezugnahme auf F i g. 3 und Fig. 14 ein
System beschrieben, das die oben erläuterte Funktion aufweist, in F i g. 3 sind die gleichen Teile wie in F i g. 2
mit dem gleichen Bezugszeichen versehen, eine Beschreibung dieser Teile wird fortgelassen. Zuerst
verlangt die Ablaufüberwachungs-Steuerschaltung 29. daß die Ausführung eines Mikrobefehls gestoppt wird.
Als Folge wird an eine Unterbrechungseinheit 163 des Rechners ein Unterbrechungsanforderungssignal (IRP)
37 ausgegeben. Beim Anerkennen eines Grundes für eine angeforderte Unterbrechung übernimmt die
zentrale VerarbciumgseinheitfCPL^SdesMikroadressen-Steuereinheit
21 und das Mikrobefehlsregister 25 enthaltenden Rechners die Inhalte eines Ausgaberegistcis
(OREG)40 über einen Eingabe/Ausgabe-Bus
(I/O-Bus)39 in dem Rechner sowie einen ähnlichen Eingabe/Ausgabe-Bus (I/O-Bus) 39 in der Mikroprogramm-Test
vorrichtung. Daten weiden /u dem Ausgaberegistcr
(ORFG)AO von einer Eingabe/Ausgabe-Bussteuerschaluing
(K)CNT) 41 geliefert. Diese Eingabe/ Ausgabe-BussteuersehalUing (1OCNT)AX liefert an.das
Ausgaberegister (OREG) 40 eine Anforderung. Daten auszulesen aus dem von der testenden Person
spezifizierten allgemeinen Register eines Registersalzes (GR) 160 und diejenige Adresse eines Hauptspeichers
(161) auszulesen, aus der Daten ausgelesen werden sollen. Wenn ihr der Inhalt des Ausgaberegisters
(OREG) 40 zugeführt wird, beurteilt die CP(/38 eine ihr
von der Mikroprogramm-Testvorrichtung gelieferte Anforderung und veranlaßt, daß aus dem allgemeinen
Register oder aus der spezifizierten Adresse Daten auf einen Bus 162 ausgelesen werden. Die so ausgelcsenen
Daten werden über den Eingabe/Ausgabe-Bus 39 einem Eingaberegister (IREG)42 zugeleitet. Die Eingabe/Ausgabe-Bussteuerschaltung
(lOCNT) 41 gibt den Inhalt des Eingaberegisters (IREG) 42 zur anschließenden
Anzeige an eine Lesesteuerschaltung 43 weiter. Der CPU 38 wird der Inhalt des Ausgaberegisters 40
zugeleitet, um die Ursache für die angeforderte Unterbrechung zu beurteilen. Die Lieferung vorgeschriebener
Daten zu dem Eingaberegister 42 wird durch ein Unterbrechungsbehandlungs-Mikroprogramm
durchgeführt, das zuvor in dem ersten Mikroprogrammspeicher 23 gespeichert wurde. Nach
dieser Behandlung stoppt die CPU 38 die Ausführung eines Mikrobefehls und wird demzufolge in einen
Zustand gebracht, in dem sie für den Empfang einer nachfolgenden Unterbrechung bereit ist. Die Inhalte des
zweiten Abschnitts 27 derselben Adresse des ersten Mikroprogrammspeichers 21. welche der erste Abschnitt
26 des Speichers 22 enthält, werden sämtlich auf einen logischen Pegel »0« gesetzt, wodurch verhindert
wird, daß erneut eine Unterbrechungsanforderung gemacht wird, während die genannten Inhalte verarbeitet
werden.
Der zweite Abschnitt 27 des ersten Mikroprogrammspeichers 23 kann auch dazu verwendet werden, das
Protokoll (log) zu untersuchen, gemäß dem ein Mikroprogramm ausgeführt wurde. In anderen Worten,
während ein Mikroprogramm ausgeführt wird, kann eine Ablaufüberwachung bewirkt werden, durch die die
testende Person über sämtliche Adressen solcher Mikrobefehle informiert wird, die mit einem Zeichen
»1« markiert sind, und zwar in der Reihenfolge, in der die mit »I« markierten Mikrobefehle ausgeführt
werden. Die obengenannte Information gestattet der solchen Anordnung ausgestattete System beschrieben.
Eine Funktionsumschalt-Steuerschaltung 30 wählt den ersten Mikroprogrammspeicher 23 nach Erhalt
eines Freigabesignals 33 aus und gibt die Operation der Ablaufüberwachungs-Steuerschaltung 29 nach Erhalt
eines Steuersignals 47 frei. Die testende Person schreibt zuvor ein Mikroprogramm in den ersten Abschnitt des
ersten Mikroprogrammspeichers 23 und setzt dessen zweiten Abschnitt bezüglich derjenigen Adresse auf
ίο einen logischen Pegel »1«, bei der die Beendigung der
Ausführung des Mikroprogramms gewünscht wird, sowie bezüglich derjenigen Adresse, bei der eine
Ablaufüberwachung durchgeführt werden soll. Wenn ein Mikroprogramm ausgeführt wird, überwacht die
testenden Person zu erkennen, entlang welchem Weg ,5 Ablaufüberwachungs-Steuerschaltung 29 die aus dem
ein Mikroprogramm ausgeführt wird.
Unter Bezugnahme auf Fig.4 wird ein System beschrieben, das die oben erwähnte Ablaufüberwachungsfunktion
aufweist. Diejenigen Teile in Fig.4,die
dieselben sind wie in Fig. 2 und 3. sind mit denselben Zahlen bezeichnet, eine Beschreibung dieser Teile wird
fortgelassen. Von dem Inhalt derjenigen Adresse des ersten Mikroprogrammspeichers 23, die von der
Mikroadressen-Steuereinheit (MAC) 21 spezifiziert wird, weiden die in dem zweiten Abschnitt 27 der
Adresse gespeicherten Daten an die Ablaufüberwachungs-Steuerschaltung 29 geliefert. Haben die Daten
einen logischen Pegel »0«, so unternimmt die Ablaufüberwachungs-Steuerschaltung
29 nichts. Haben hingezweiten Abschnitt 27 ausgelesenen Daten. Wenn ein Ablaufüberwachungs-Bit einen logischen Pegel »1«
aufweist, wird die entsprechende Adresse in dem Adressenstapel 46 gehalten. Die Lesesteuerschaltung 43
liest die Inhalte des Adressenstapels 46 aus und bringt die Adresse zur Anzeige, bei der das Ablaufüberwachungs-Bit
einen logischen Pegel »1« hat. Die Ablaufüberwachungs-Steuerschaltung 29 überwacht
ferner den Zustand eines Anhaltepunkt-Bits. Wenn dieses Anhaltepunkt-Bit einen logischen Pegel »I« hai,
wandelt die Ablaufüberwachungs-Steuerschaltung 29 den logischen Pegel eines Taktsteuersignals 34 in »0«
und den logischen Pegel eines Systemtaktsignals 36 in »0« um, wodurch die Ausführung eines Mikrobefehls
gen die Daten einen logischen Pegel »1«, liefert die 30 gestoppt wird. Zu dieser Zeit wird ein Stapel-Steuersi-
Ablaufüberwachungs-Steuerschaltung 29 an einen gnal (STKE) 47 an den Adressenstapel 46 geleitet, um
Adressenstapel (ASTK) 46 ein Steuersignal (STKE) 47, eine auf einen Anhaltepunkt bezogene Adresse zu
um eine Adresse zu halten, die durch die Mikroadressen- halten. Wie bei der Ablaufüberwachung wird die
Steuereinheit 21 spezifiziert wird. Wo während des Anhaltepunkt-Adresse durch die Lesesteuerschaltung
Ablaufs des sukzessive ausgeführten Mikroprogramms 35 43 zur Anzeige gebracht. Die testende Person prüft das
ein Ausgangssignal des zweiten Abschnitts 27 einen logischen Pegel »I« aufweist, werden sämtliche
entsprechenden Adressen wie bei der oben erläuterten
Operation in dem Adressenstapcl (ASTK) 46 gehalten. Die Lesesleuerschaluing (RCNT) 43 veranlaßt, daß in
dem Adressenstapcl 46 gespeicherte Daten, das heißt,
eine Mikrobefehlsiidres.se. zwecks Anzeige für die
testende Person ausgelesen wird. Der Adreßstapel 46 ist ein Speicher mit einer »first-in-first-outw-Struktur. und
Protokoll, gemäß dem der Mikrobefehl ausgeführt wurde, und die Adresse, bei der die Ausführung des
Mikroprogramms abgeschlossen wurde, um dadurch eventuell vorhandene Fehler zu entdecken, die während
des Ablaufs der Steuerung des Mikroprogramms auftreten.
Wenn der zweite Abschnitt 27 des ersten Mikroprogrammspeichers 23 eine Wortlänge von 3 Bits hat, ist es
möglich, zusätzlich zu der obengenannten Einrichtung
er ist in der Lage, eine Mehrzahl von Daten zu halten. 45 des Anhaltspunkts und der Ablaufüberwachungsfunk-Die
zuerst in den Adressenstapel 46 geschriebenen tion die Zählfunktion zu erzielen. Unter Bezugnahme
Daten werden aus diesem als erste wieder ausgelesen, wenn die Lesesteuerschaltung 43 eine Leseanforderung
abgibt. Wenn die Lesesteuerschaltung 43 erneut eine Anforderung zum Lesen abgibt, werden die beim
zweiten Mal in den Adressenstapel 46 eingeschriebenen Daten ausgelesen. Wenn der zweite Abschnitt 27
bezüglich eines Mikrobefehls für die Analyse eines Mikroprogramms durch die oben erläuterte Funktion
auf F i g. 5 wird ein System beschrieben, das mit einer solchen Funktion ausgestattet ist. Diejenigen Teile von
F i g. 5, die die gleichen sind wie in den F i g. 2 bis 4, sind durch die gleichen Zahlen bezeichnet, eine Beschreibung
dieser Teile wird fortgelassen.
Die Funktionsumschalt-Steuerschaltung 30 wählt bei Erhalt eines Freigabesignals 33 den ersten Mikroprogrammspeicher
23 aus und gibt weiterhin den Betrieb
auf einen logischen Pegel »I« gesetzt wird, kann die 55 der Ablaufüberwachungs-Steuerschaltung 29 nach Er
testende Person über das Protokoll informiert werden, gemäß dem das Mikroprogramm ausgeführt wird, und,
falls vorhanden. Fehler erkennen, die während des Testlaufs auftreten.
halt eines Steuersignals 47 frei. Die testende Person veranlaßt, daß der erste Mikroprogrammspeicher 23
bezüglich eines Mikroprogramms oder Mikroprogrammadressen, die sich auf die Ablaufüberwachung
Besitzt der zweite Abschnitt 27 des ersten Mikropro- 60 und den Anhaltepunkt beziehen, auf einen logischen
grammspeichers 23 eine Wortlänge von 2 Bits, können die Einrichtung des zuvor beschriebenen Anhaltepunkts
und die Ablaufüberwachungsfunktion in Kombination vorgenommen werden. Es ist also möglich, ein Bit des
zweiten Abschnitts 27 für die Einrichtung des Anhaltspunkts und das andere Bit für die Ablaufüberwachungsfunktion
zu verwenden.
Unter Bezugnahme auf Fig.4 wird das mit einer Pegel »1« gesetzt wird. Besitzt der zweite Abschnitt 27 eine Wortlänge von 2 Bits, dann wird ein Mikrobefehl in der Weise ausgeführt, daß, wenn die Adresse erreicht ist, bei der das Bit des zweiten Abschnitts 27 einen logischen Pegel »1« aufweist, die Ablaufüberwachungsfunktion oder die Anhaltepunktfunktion durchgeführt wird. Wenn hingegen der zweite Abschnitt 27 eine Wortlänge von 3 Bits hat, wird durch das zusätzliche Bit
Unter Bezugnahme auf Fig.4 wird das mit einer Pegel »1« gesetzt wird. Besitzt der zweite Abschnitt 27 eine Wortlänge von 2 Bits, dann wird ein Mikrobefehl in der Weise ausgeführt, daß, wenn die Adresse erreicht ist, bei der das Bit des zweiten Abschnitts 27 einen logischen Pegel »1« aufweist, die Ablaufüberwachungsfunktion oder die Anhaltepunktfunktion durchgeführt wird. Wenn hingegen der zweite Abschnitt 27 eine Wortlänge von 3 Bits hat, wird durch das zusätzliche Bit
gezählt, wie oft die Ausführung eines Mikroprogramms
bis zum Erreichen der spezifizierten Adresse wiederholt wird. Gibt der Zählerstand einen von der testenden
Person vorgeschriebenen Wert wieder, wird die Ablaufüberwachungsfunktion oder die Anhaltepunktfunktion
zum ersten Mal durchgeführt.
Nun soll eine Kombination der oben erläuterten Ablaufüberwachungsfunktion, Anhaltepunktl'unktion
und Zählfunktion beschrieben weiden. Enthält ein Mikroprogramm einen gewissen Abschnitt, dessen
Ausführung wiederholt werden soll, dann kann der Zustand eines Registers oder Speichers geprüft werden,
nachdem der gewisse Abschnitt einer vorgeschriebenen Zahl entsprechend oft durchgeführt wurde. In diesem
Fall wird das dritte Bit des zweiten Abschnitts 27 auf einen logischen Pegel »1« bezüglich der Adresse
gesetzt, die als Anhaitcpunkt in der schleifenartigen Ausführung eines Mikroprogramms spezifiziert werden
soll. Ferner werden ein dem Anh.^.epunkt entsprechendes
Bit und das dritte Bit bezüglich der Kennzeichnung des Inhalts eines Zählers beide auf einen logischen Pegel
»1« gesetzt. Zur gleichen Zeit veranlaßt die Schreibsteucrschaltung
(WCNT)51, daß eine durch die Testperson spezifizierte Scnlcifenzahl an den Zähler (CNTR) 52
geliefert wird. Wenn die Daten auf einer Zähler-Steuerbiileitung
einen logischen Pegel »0« haben, erfolgt bezüglich des Inhalts des Zählers 52 keine Veränderung.
Wenn hingegen die Daten auf der Zählcr-Steuerbitleituiig
einen logischen Pegel »I« aufweisen, wird der
Inhalt des Zählers 52 um 1 vermindert. Der Inhalt des Zählers 52 wird später sukzessive jedesmal um I
vermindert, wenn ein Mikrobefehl aus der entsprechenden Adresse ausgelesen wird. Ist der Inhalt des Zählers
52 auf Null vermindert, wird an die Ablaulüberwachungs-Sleueischaltung
29 ein Steuersignal (BRW) 53 geliefert. Diese Ablaufüberwachungs-Steuerschaltiing
29 gibt ein Taktsteuersignal (HALT)34 ab, das von einer
logischen Summe der Daten (mit einem logischen Pegel »1«)
Steue
Steue
kann das Taktsteuersignal (HALT) 34 von einem Unter jrechungsanforderungssignal (IHP) 37 ersetzt
werden. Feiner ist es möglich, eine logische Summe der Daten auf der Ablaufüberwachungs-Steuerbitleitung
und dps Steuersignals (BRW) 53 zu verwenden. Der
oben erläuterte alternative Vorgang wird durch das Steuersignal (TRCE) 47 ausgeführt, das von der
Funktionsumschalt-Steuerschaltung geliefert wird. Wenn, wie oben beschrieben wurde, eine logische
Summe der zwei Eingangssignale einen logischen Pegel »1« hat, wird das Steuersignal (STKE) 47 an den
Adresscnstapel 46 geliefert, um die entsprechende Adresse zu erhalten. Zu dieser Zeit bringt die
Lesesteuerschaltung 43 den Inhalt des Adressenstapcls 46 zur Anzeige.
Nun wird unter Bezugnahme auf F i g. 6 ein System beschrieben, bei dem für Testzwecke gebrauchte Daten
frei in den ersten Mikroprogrammspeicher 23 eingeschrieben oder aus diesem ausgelesen werden können.
Gemäß dem Blockschaltiingsdiagramm von F i g. 6 hat der zweite Abschnitt 27 des eisten Mikroprogramm-Speichers
23 eine Wortlänge von einem Bit. Der zweite Abschnitt 27 kann auch eine Wortlänge von mehreren
Bits haben. Die folgenden vier Betriebsarten stehen hinsichtlich des Vorgangs des Einschreibens von Daten
oder des Lesens von Daten in bzw. aus jeder wahlfreien Adresse des ersten Mikroprogrammspeichers 23 zur
Verfügung.
uf der Anhaltepunkt-Stcuerbitlciliing und des
signals (BR W) 53 abgeleitet wird. In diesem Fall Betriebsart 1:
In den ersten Abschnitt (MRAMX) 26 des ersten
Mikroprogrammspeichers 23 werden Daten eingeschrieben.
Betriebsart 2:
In den zweiten Abschnitt (MRAM2) 27 des Speichers 23 werden Daten eingeschrieben.
Betriebsart 3:
In den ersten Abschnitt (MRAM 1) 26 und den zweiten Abschnitt (MRAM2) 27 werden Daten
eingeschrieben.
Betriebsart 4:
Es werden gleichzeitig Daten aus dem ersten Abschnitt (MRAMi) 26 und dem zweiten Abschnitt
(MRAM 2) 27 ausgelesen.
Wenn daher ein in den ersten Mikroprogrammspeicher 23 eingeschriebenes Mikroprogramm ausgeführt
wird, gelangt Betriebsart 4 zur Anwendung. In diesem Fall wird ein Signal, das die von der Mikroadressen-Steuercinhcit
21 spezifizierte Adresse bezeichnet, zur selben Zeit über eine Ausgabcsignalleilung (A-BLIS)22
an den ersten und den /weilen Abschnitt 2b und 27 geliefert. Zu dieser Zeil liefert die l'unkiionsiimschali-Steuerschaltung
30 an den ersten Mikroprogrammspeichcr 23 ein Freigabesignal (MRAMl-')33 zum Auslesen
von Daten aus dem Speicher 23. und sie sendet lerner
ein Signal, das die Ausgabesignalleitung (A-IHIS)22 als
Quelle eines Eingabesignals für einen Selektor (SEI. 2) 61 spezifiziert. Zur selben Zeit wird der Inhalt der
spezifizierten Adresse des ersten Mikroprogrammspeichers 23 nach der Zugriffszeil des Speichers 23 auf einen
Mikroprogrammspeicher-Ausgabebus 62 bis 66 gegeben.
Die Daten auf dem Mikropiogrammspeicher-Ausgabebus 62 bis 65 werden in dem in dem Rechner
enthaltenen Mikrobefehlsregisier 25 gehalten, um die
Steuerung des Rechners zu bewirken. Die Daten auf dem Ausgabebus 66 werden in einer Flipflopschaltung
(EFi) 67. das ein Teil der Ablaufüberwachungs-Steuerschaltung
29 ist, festgehalten. Die Daten auf sämtlichen Busleitungen 62 bis 66 gelangen an eine Paritätsprüfschaltung
69, die Bestandteil des Fehlerdetektor 28 ist. Wenn ein Paritätsl'ehler entdeckt wird, gibt die
Paritätsprüfschaltung 69 ein Ausgangssignal mit einem logischen Pegel »I« ab. das in einer Flipllopschaltung
(EF2) 68 gehalten wird. Eine logische Summe der
Ausgangssignale der Flipflopschaltungen 67 und 68 wird zu dem Taktgeber 35 des Rechners als das Taktsteucrsignal
(HALT)34 geliefert. Der Fall, daß die Ausführung eines Mikroprogramms angehalten und der Inhalt des
ersten Mikroprogrammspeichcrs 23 ausgelesen wird, stellt ebenfalls die Betriebsart 4 dar. Zu dieser Zeit leitei
die Funktionsumschalt-Steuerschaltung (ESC) 30 ein von dem Selektor (SEL 2) 61 empfangenes Eingangssignal
in eine Mikroprogrammadressen-Steuerschaltung (ASC) 71 um, die in der Testvorrichtung enthalten ist.
Ein die von der testenden Person spezifizierte Adresse kennzeichnendes Signal wird von der Mikroprogrammadressen-Steuerschaltung
(ASC) 71 über den Selektor 61 in den ersten Mikroprogrammspeicher 23 geleitel.
Aus dem eisten Mikroprogrammspeicher 23 gelesene Daten werden auf den MikropiOgrammspeicher-Ausgabcbus
62 bis 66 gelegt.
Nun soll die Betriebsart I beschrieben werden. In den
ersten Abschnitt des ersten Mikroprogrammspeichers' 23 einzuschreibende Daten werden zuvor in der
Schreibsteuerschaltung 51 gespeichert. Die Adresse des
ersten Abschnitts 26, in die die Daten eingeschrieben werden, wird außerdem in der Mikroprogrammadressen-Steuerschaltung
(ASC) 71 gespeichert. Die Funktionsumschalt-Steuerschaitung 30 steuert den Selektor
61, so daß dieser einen Ausgang der Mikroprogrammadressen-Steuerschaltung 71 auswählt. Unter dieser
Bedingung sendet zur selben Zeit die Schreibsteuerschaltung 51 die zu schreibenden Daten auf den
Mikroprogramm-Schreibdatenbus 72 bis 75. Wenn ein Schreibsignal (WEi) 78 einen logischen Pegel »0« hat,
wird das Schreiben von Daten zu Ende gebracht. In der Betriebsart 2 werden das Schreiben von Daten und die
Spezifizierung einer Adresse in derselben Weise durchgeführt wie in der Betriebsart 1. Der Selektor 61
befindet sich im selben Zustand wie in der Betriebsart 1. In anderen Worten, die Funktionsumschalt-Steuerschaltung
30 steuert den Selektor (SEL 1) 77, so daß dieser ein Ausgangssignal der Schreibsteuerschaltung 51
auswählt. Unter dieser Bedingung sendet die Schreibsteuerschaltung 51 zu schreibende Daten auf einen
Mikroprogramm-Schreibdatenbus (MDT32) 76. Wenn ein Schreibsignal (WE2) 79 einen logischen Pegel »0«
hat, wird das Einschreiben von Daten zum Abschluß gebracht. Zu dieser Zeit verbleiben die Inhalte
derselben Adresse des ersten Abschnitts 26 des ersten Mikroprogrammspeichers 23. wie die des zweiten
Abschnitts 27 unverändert.
Bei der Betriebsart 3 können als in den zweiten Abschnitt 27 des eisten Mikroprogrammspeichers 23
einzuschreibende Daten solche Daten ausgewählt werden, die auf einem Mikroprogramm-Schreibdatenbus
(MDT32) 76 von der Schreibsteuerschaltung 51
gesendet werden, oder ein Paritätsbit, das von Daten auf dem Mikroprogramm-Schreibdatenbus 72 bis 75 definiert
wird, die ebenfalls von der Schreibsteuerschaltung 51 geliefert werden. Die Auswahl der Daten auf dem
Mikroprogramm-Schreibdatenbus (MDT32) 76 erfolgt durch den gleichzeitigen Betrieb der beiden Betriebsarten
1 und 2. In diesem Fall ist es ratsam. Daten zu dem Mikroprogramm-Schreibdatenbus (MTDOO bis
MTD 32) 72 bis 76 zu liefern und dabei die Schreibsignale (WEi) 78 und (WE2) 79 gleichzeitig auf
einem logischen Pegel »0« zu belassen. Die Auswahl von Daten auf dem Mikroprogramm-Schreibdatenbus 72 bis
75 erfolgt durch das Schreiben der oben erwähnten Fehlererfassungsdaten, nämlich durch das Paritätsbit in
dem zweiten Abschnitt 27. Im letzteren Fall steuert die Funktionsumschalt-Steuerschaltung 30 den Selektor
(SEL 1) 77, so daß dieser ein Ausgangssignal eines Paritätsbit-Generators (PTYGEN) 80 auswählt. Wenn
unter der oben erläuterten Bedingung die Schreibsteuerschaltung 81 zu schreibende Daten auf den Mikroprogramm-Schreibdatenbus
(MTDOO bis MTD3X) 72 bis 75 gibt, gibt der Paritätsdaten-Generator 80 ein
Paritätsbit auf der Grundlage der auf dem genannten Bus anstehenden Daten ab. Das abgegebene Paritätsbit
wird über den Selektor 77 an den zweiten Abschnitt 27 geleitet. Wenn die Schreibsignale (WEi) 78 und (WE2)
einen logischen Pegel »0« aufweisen, wird das Schreiben von Daten beendet.
Die obige Beschreibung bezieht sich auf den Fall, daß Daten in eine einzelne Adresse eingeschrieben werden.
Es können Daten in mehrere benachbarte Adressen, die von der Adressen-Steuerschaltung 71 spezifiziert
werden, geschrieben werden. Die obengenannten vier Betriebsarten gelangen wie folgt zur Anwendung. Wenn
ein Ausgangssignal von dem Paritätsbit-Generator 80 in der Betriebsart 3 an den Selektor 77 geliefert wird, wird
ein Mikroprogramm geschrieben, indem an jeden Mikrobefehl ein Paritätsbit angehängt wird. Gelangen
die Ablaufüberwachungsfunktion und die Paritätserfassungsfunktion nicht zur Anwendung, dann wird die
Betriebsart I verwendet. Werden die Ablaufüberwachungsfunktion und die Anhaltepunktfunktion durchgeführt,
wird ein Ausgangssignal der Schreibsteuerschaltung 51 in den Betriebsarten 2 und 3 zu dem Selektor 77
geleitet. In diesem Fall wird ein zu testendes ίο Mikroprogramm in der Betriebsart 3 zuerst in den
ersten Abschnitt 26 des Mikroprogrammspeichers 23 eingeschrieben. Sämtliche Bitstellen des zweiten Abschnitts
27 des Speichers 23 werden auf einen logischen Pegel »0« eingestellt. Die testende Person liefert der
Mikroprogrammadressen-Steuerschaltung 71 Daten bezüglich derjenigen Adressen, die er als Anhaltepunkt
zu verwenden wünscht, oder bezüglich solcher Adressen, zwischen denen die Ablaufüberwachung eines
Mikroprogramms durchgeführt werden soll. Der zweite Abschnitt 27 der entsprechenden Adresse wird auf
einen logischen Pegel »1« in der Betriebsart 2 eingestellt. In diesem Fall ist es möglich, wahlfrei eine
Anzahl von zu verwendenden Anhaliepunktcn zu definieren und die Adressen auszuwählen, zwischen
denen die Ablaufüberwachung erfolgen soll. Werden die Anhaltepunkte und die Ablaufüberwachung aufgegeben,
so ist es ratsam, die zweiten Abschnitte 27 der entsprechenden Adressen auf einen logischen Pegel »0«
einzustellen. Gelangt die Zählerfunktion zur Anwendung, so ist es ratsam, die zweiten Abschnitte 27 der
entsprechenden Adressen auf einen logischen Pegel »1« einzustellen.
Zusätzlich zu den oben beschriebenen vier Betriebsarten
besteht ferner die Möglichkeit, die Inhalte eines zweiten Mikroprogrammspeichers 24 eines Rechners
auszulesen. Dieses Auslesen erfolgt, wenn der Rechner mit einem programmierbaren Speicher geladen wird, in
den bereits ein Mikroprogramm eingeschrieben ist und der das erneute Einschreiben eines anderen Mikroprogramms
gestattet. Diesmal gibt die Funktionsumsehalt-Steuerschaltung 30 ein Freigabesignal (MROMEJ32 ab,
das es ermöglicht, daß Daten aus dem zweiten Mikroprogrammspeicher 24 ausgelesen werden, und sie
liefert an den ersten Mikroprogrammspeicher 23 der Mikroprogramm-Testvorrichtung ein Signal 33, um zu
verhindern, daß der Speicher 23 ein Ausgangssignal liefert. Diesmal arbeiten ein Ablaufüberwachungs-Steuersignal
(TRCE) 47 und ein Paritätssteuersignal (PTYE)Si zusammen, um den Betrieb der Ablaufüberwachungs-Steuerschaltung
29 und der Paritätsprüfschaltung 69 zu stoppen.
Anhand von F i g. 7 wird nun ein System beschrieben, das, wenn der Rechner mit einer Einrichtung zum
Erfassen eines Fehlers in einem Mikrobefehl ausgestattet ist, den Betrieb oder den Nicht-Betrieb der
Erfassungseinrichtung extern von der Mikroprogramm-Testvorrichtung aus steuern kann. Diejenigen Teile in
F i g. 7, die dieselben sind wie in den F i g. 2 bis 6, sind mit denselben Zahlen bezeichnet.
Zuerst erhält der Rechner als einen zweiten Mikroprogrammspeicher 82 einen Nur-Lese-Speicher,
in dem ein Mikroprogramm gespeichert ist. Ein von der Mikroadressen-Steuereinheit 21 spezifizierter Mikrobefehl
wird aus dem zweiten Mikroprogrammspeicher 82 ausgelesen. Der so ausgelesene Mikrobefehl wird in
dem Mikrobefehlsregister 25 zur Steuerung des Rechners gehalten. Ähnlich wie der erste Mikroprogrammspeicher
23 der Testvorrichtung enthält der
zweite Mikroprogrammspeicher 82 zwei Abschnitte, das heißt, einen ersten Abschnitt 83, in dem ein
Mikrobefehl gespeichert ist, und einen zweiten Abschnitt 84, in dem Fehlerdaten gespeichert sind. Von
dem Inhalt derjenigen Adresse des zweiten Mikroprogrammspeichers 82, die durch die Mikroadressen-Steuereinheit
21 spezifiziert ist, wird der Inhalt des ersten Abschnitts 83 der spezifizierten Adresse
unverändert in dem Mikrobefehlsregister 25 gehalten. Diesmal werden die Inhalte des ersten und zweiten
Abschnitts 83 und 84 an einen Fehlerdetektor 85 geliefert. Dieser Fehlerdetektor 85 beurteilt, ob ein
Bit-Fehler aufgetreten ist oder nicht. Liegt kein Bit-Fehler vor, gestattet der Fehlerdetektor 85 die
Ausführung eines Mikroprogramms in der vorgegebenen Weise. Wird ein Bit-Fehler erfaßt, stoppt der
Fehlerdetektor 85 die Ausführung.
Ist die Mikroprogramm-Testvorrichtung an den Rechner angeschlossen und wird d?r zweite Mikroprogrammspeicher
82 nicht benutzt, ist es notwendig, die sich gegenüberstehenden Ausgangsgrößen von beiden
Mikroprogrammspeichern 23 und 82 zu unterdrücken. Daher sendet die Funktionsumschalt-Steuerschaltung
30 ein Signal (MROME) 32, um zu verhindern, daß die Inhalte des zweiten Mikroprogrammspeichers 82
ausgelesen werden. Somit werden die Inhalte derjenigen Adresse des ersten Mikroprogrammspeichers 23,
die von der Mikroadressen-Steuereinheit 21 spezifiziert wurde, über den Ausgabebus 31 in dem Mikrobefehlsregister
25 gehalten. Diesmal wird der Fehlerdetektor (ERC2)85 nicht mit Daten bezüglich einer Fehlererfassung
gespeist. Daher wird angenommen, daß ein ausgelesener Mikrobefehl einen Bit-Fehler enthält, und
die Ausführung des Befehls wird verhindert. Um ein solches Ereignis zu vermeiden, liefert die Funktionsumschalt-Steuerschaltung
30 an den Fehlerdetektor 35 ein Signal (ERCE) 86 zum Anhalten des Betriebs des
Fehlerdetektors. Als Folge wird der Betrieb des Fehlerdetektors 85 nur dann angehalten, wenn ein Test
eines Mikroprogramms erfolgt, das in den Mikroprogrammspeicher 23 eingeschrieben ist. Wenn ein in den
zweiten Mikroprogrammspeicher 82 eingeschriebenes Mikroprogramm ausgeführt wird, gestattet die Funktionsumschalt-Steuerschaltung
30 dem Fehlerdetektor 85, bei Erhalt eines Steuersignals 86 zu arbeiten. Wenn die Mikroprogramm-Testvorrichtung von dem Rechner
abgetrennt wird, wird der Fehlerdetektor 85 freigegeben.
Nun soll unter Bezugnahme auf F i g. 8 die Arbeitsweise der Funktionsumschalt-Steuerschaltung 30 für
den Fall erläutert werden, daß der zweite Abschnitt (MRAM2) 27 des ersten Mikroprogrammspeichers 23
eine Wortlänge von einem Bit hat. Ein Schalter (SWi) 91 ist eine Einheit zum Entscheiden, welcher bzw.
welche der Fehlerdetektoren (ERCi) 28 und (ERC2) 85 und der Ablaufüberwachungs-Steuerschaltung 29 freigegeben
werden sollen. Ein Schalter (SW2) 92 entscheidet, ob Daten aus dem ersten Mikroprogrammspeicher
(MRAM) 23 oder dem zweiten Mikroprogrammspeicher (MROM) 24 ausgelesen werden sollen,
und ob weiterhin der Fehlerdetektor (ERC2) 85 freigegeben werden soll. Wenn der zweite Abschnitt
(MRAM2) 27 für einen Anhaltepunkt verwendet wird, wird der Schalter (SWX) 91 an einen Anhaltepunkt
(BRAKE) 93 angeschlossen. Der Schalter (SW2) 92 wird an einen Speicher mit wahlfreiem Zugriff (RAM)
94 angeschlossen. Unter dieser Bedingung werden ein Signal (TRCE) 47 zum Freigeben der Ablaufüberwachungs-Steuerschaltung
29 und ein Signal (MRAME)33 zum Ermöglichen des Auslesens von Daten aus dem
ersten Mikroprogrammspeicher (MRAM) 23 beide auf einen logischen Pegel »1« gesetzt. Die anderen Signale
(PTYE)Si, (ERCE)86 und (MROM)32 werden sämtlich
auf einen logischen Pegel »0« gesetzt, wodurch die entsprechenden Schaltungen gesperrt werden. Während
die Funktionsumschalt-Steuerschaltung 30 in der oben beschriebenen Weise aus einer Kombination der
Schalter und Verknüpfungsglieder hergestellt werden kann, kann die Steuerschaltung 30 von einem Mikroprozessor
gesteuert werden, um eine erhöhte Funktionsfähigkeit zu erzielen.
Anhand von F i g. 9 wird nun die Arbeitsweise der von einem Mikroprozessor gesteuerten Funktionsumschalt-Steuerschaltung
30 beschrieben. Der Zentralabschnitt der Funktionsumschalt-Steuerschaltung 30 umfaßt einen
Mikroprozessor (CPU) 101 und einen mit der CPU 101 verwendeten Speicher (CM,) 102. Wenn die testende
Person den Mikroprozessor CPU 101 von einer Tastatur 103 aus mit einem funktionsspezifizierenden
Code speist, decodiert der Mikroprozessor CPU 101 einen gelieferten Code nach Maßgabe eines Tastatur-Eingabeprogramms,
das in dem Speicher (CM) 102 gespeichert ist und veranlaßt, daß ein vorgeschriebener
Wert in ein funktionshaltendes Register (STSREG) 104,
das in der Funktionsumschalt-Steuerschaltung 30 enthalten ist, eingeschrieben wird. Die Auswahl jeder
der von dem funktionshaltenden Register 104 gelieferten Ausgangsgrößen wird von einer Speichersteuerschaltung
(MCL) durchgeführt. Die Inhalte des funktionshaltenden Registers 104 werden beispielsweise in
der Form eines Signals (PTYE) 81 oder (TRCE) 47
abgegeben.
Anhand von Fig. 10 wird nun die Arbeitsweise der Schreibsteuerschaltung (WCNT) 51 beschrieben. In den
ersten Mikroprogrammspeicher (MRAM) 23 einzuschreibende Daten werden von dem in F i g. 9 gezeigten
Mikroprozessor (CPU) 101 über einen internen Bus (IBUS) 106 in die Schreibsteuerschaltung 51 geleitet.
Über den internen Bus (l-BUS) 106 übertragene Daten besitzen eine Wortlänge von 8 Bits. Andererseits ist die
Wortlänge des ersten Mikroprogrammspeichers (MRAM) 23 im allgemeinen größer als die Wortlänge
der über den internen Bus (I-BUS) 106 geleiteten Daten. Im vorhergehenden Ausführungsbeispiel wird die
Wortlänge des ersten Abschnitts (MRAMX) 26 aus 32
Bits gebildet. Daher werden die in den ersten Abschnitt (MRAMX) 26 einzuschreibenden Daten in Form von
vier Unterteilungsabschnitten (32/8 = 4) geliefert. Diese vier Daten-Teilstücke werden über ein Eingaberegister
(INREGX) XXX in datenhaltenden Registern (RAM REG X) 112, (RAMREG 2) 113, (RAMREG 3) 114 bzw.
(RAMREG 4) 115 gehalten.
Die Auswahl jedes dieser datenhaltenden Register wird bewirkt durch den verbundenen Betrieb eines
befehlshaltenden Registers (CMDREG X) 117 und einer Schreibmodus-Auswahlschaltung (SELC) 118. Der Mikroprozessor
(CPU) 101 gibt zuerst über den internen Bus 106 in die datenhaltenden Register (RAMREG X)
112 bis (RAMREG 4) 115 einzuschreibende Befehle an das befehlshaltende Register (CMDREGX) 117 und
sendet danach die dort einzuschreibenden Daten. Der Mikroprozessor (CPU) 101 sendet in den ersten
Abschnitt (MRAM X) 26 einzuschreibende Daten in vier Unterteilungsabschnitten an sämtliche der datenhaltenden
Register (RAMREGX) 112 bis (RAMREG4) 115.
Die anschließende Operation variiert mit der Form der
in den zweiten Abschnitt (MRAM 2) 27 einzuschreibenden Testdaten. Wenn in der Funktionsumschalt-Steuerschaltung
30 eine Paritätsprüfung ausgewählt ist, gibt der Mikroprozessor (CPU) 101 Schreibbefehle von dem
ersten und zweiten Abschnitt über den internen Bus 106 an das befehlshaltende Register (CMDREG) 117, und
dann liefert die Schreibmodus-Auswahlschaltung (SELC) 118 Schreib-Freigabebefehle (WEi) 78 und
(WE2) 79 an den ersten Mikroprogrammspeicher des zweiten Abschnitts (MRAM2) 27 wie der des ersten
Abschnitts (MRAM 1) 26 unverändert. In der Betriebsart 2 liefert der Mikroprozessor (CPU) 101 Testdaten
lediglich an das datenhaltende Register (RAMREG 5) 116, und dann an das befehlshaltende Register
(CMDREG 1) 117 einen Schreibbefehl für den zweiten Abschnitt. Die Schreibmodus-Auswahlschaltung (SELC)
118 gibt ein lediglich für den zweiten Abschnitt (MRAM2) 27 vorgesehenes Schreib-Freigabesignal
(MRAM) 23. Die Inhalte der datenhaltenden Register io (WE2) 79 ab. Der Inhalt des datenhaltenden Registers
(RAMREG \)ii2 bis (RAMREG4) U5 werden so, wie (RAMREG5) 116 wird genau in der gespeicherten
sie gespeichert sind, an den ersten Abschnitt (MRAM 1) Weise an den zweiten Abschnitt (MRAM2) 27 geliefert
26 geliefert, wie man aus F i g. 6 ersieht, und in den und dort unter einer zeitlichen Steuerung eingeschrieersten
Abschnitt 26 unter einer zeitlichen Steuerung ben, die definiert wird durch das Schreib-Freigabesignal
eingeschrieben, die definiert wird durch ein Adressen- 15 (WE2) 79. Diesmal bleiben die Inhalte derselben
Freigabe-Signal (WE 1) 78. Die Inhalte der datenhaltenden Register (RAMREGX) 112 bis (RAMREG4) 115
werden an den Paritätsbit-Generator (PTYGEN) 80 (Fig.6) geleitet. Ein von dem Generator 80 erzeugtes
Paritätsbit wird über den Selektor (SEL 1) 77 in dieselbe Adresse des zweiten Abschnitts (MRAM2) 27 eingeschrieben
wie der des ersten Abschnitts (MRAMi) 26, und zwar unter einer zeitlichen Steuerung, die definiert
wird durch das Schreib-Freigabesignal (WE2) 79.
Nun wird der Fall beschrieben, bei dem in der Funktionsumschalt-Steuerschaltung 30 Ablaufüberwachung
oder Anhaltepunktfunktion ausgewählt wird.
Der Mikroprozessor (CPU) 101 liefert Schreibdaten an die datenhaltenden Register (RAMREG i) 112 bis
(RAMREG 4) 115 und veranlaßt danach, daß in das datenhaltende Register (RAMREG 5) 116 Ablaufüberwachungs-
oder Anhaltepunkt-Daten eingeschrieben werden, die für den zweiten Abschnitt (MRAM2) 27
verwendet werden. Besitzen die Ablaufüberwachungsoder Anhaltepunktdaten einen logischen Pegel »1«, ist·
der in den datenhaltenden Registern (RAMREG 1) 112 bis (RAMREG4) 115 gehaltene Mikrobefehl für die
Anwendung der Ablaufüberwachung oder der Anhaltepunktfunktion vorgesehen. Wenn der Mikroprozessor
(CPU) 101 an das befehlshaltende Register (CMDREG 2) 119 einen Befehl gibt, der das Einschreiben
von Daten in den ersten und den zweiten Abschnitt verlangt, sendet die Schreibmodus-Auswahlschaltung
(SELC) 118 Schreib-Freigabesignale (WE 1) 78 und Adresse des ersten Abschnitts (MRAMi) 26 wie die des
zweiten Abschnitts (MRAM2) 27 unverändert.
Nun wird die Mikroprogrammadressen-Steuerschaltung (ASC) 71 beschrieben, die, wie in F i g. 11 zu sehen
ist, einen ähnlichen Aufbau hat wie die Schreibsteuerschaltung (WCNT)5i. Diese Mikroprogrammadressen-Steuerschaltung
(ASC) 71 veranlaßt, daß eine Mikroprogrammadresse von 12 Bits in adressenhaltenden
Registern (ASCREG 1) 121 und (ASCREG 2) 122 gehalten wird. Das befehlshaltende Register
(CMDREG 2) 119 wird von dem Mikroprozessor (CPU) 101 mit einem Befehl gespeist. Über den Selektor
(SEL^) 123 wird ein Steuersignal abgegeben, um.nach
Maßgabe eines Wertes, der von dem von dem Mikroprozessor (CPU) 101 kommenden, oben erwähnten
Befehl gekennzeichnet wird, zu bestimmen, welches der Adressenregister (ASCREG 1) 121 und
(ASCREG 2) 122 verwendet werden soll.
Unter Bezugnahme auf die Fig. 12 und 13 wird nun
die Arbeitsweise des Adressenstapels (ASTK) 46 und der Lesesteuerschaltung (RCNT) 43 beschrieben. Der
Adressenstapel (ASTK) 46 wird gebildet von einem Ablaufüberwachungsspeicher (TRACEM) 131 zum
Speichern von Mikroprogrammadressen, deren Ablaufüberwachungs-Bit auf einen logischen Pegel »1«
gesetzt ist, und einem Ablaufüberwachungs-Adressenzähler (RNGC) 132 zum Spezifizieren jeder der in dem
Ablaufüberwachungsspeicher (TRACEM) 131 gespeicherten Adressen. Der Mikroprozessor (CPU) 101
(WE2) 79 an den ersten Mikroprogrammspeicher 45 veranlaßt, daß ein Anfangswert in einen Ablaufüberwa-
(MRAM) 23. Die Inhalte der datenhaltenden Register (RAMREGi) 112 bis (RAMREG5) 116 werden, wie
man aus Fig.6 ersieht, an den ersten Abschnitt (MRAM 1) 26 und den zweiten Abschnitt (MRAM2) 27
geleitet und in die Adressen eingeschrieben, die durch die Mikroprogrammadressen-Steuerschaltung (ASC)H
spezifiziert werden. Dies geschieht unter einer zeitlichen Steuerung, die definiert wird durch Adressen-Freigabesignale
(WE 1) 78 und (WE2) 79.
Die oben erläuterten beiden Schreibvorgänge stellen die zuvor beschriebene Betriebsart 3 dar, bei der Daten
in den ersten Mikroprogrammspeicher (MRAM) 23 eingeschrieben und aus diesem ausgelesen werden.
Die weitere Beschreibung erfolgt im Hinblick auf den Betrieb der Schreibsteuerschaltung (WCNT) 51 in den
Betriebsarten 1 und 2. In der Betriebsart 1 veranlaßt der Mikroprozessor (CPU) 101, daß die Inhalte der
datenhaltenden Register (RAMREGi) 112 bis (RAM
REG 4) 115 genau in der gespeicherten Weise an den ersten Abschnitt (MRAM 1) 26 geliefert und dort unter
einer zeitlichen Steuerung eingeschrieben werden, die definiert wird durch das Schreib-Freigabesignal (WEi)
78. Zu dieser Zeit bleiben die Inhalte derselben Adresse chungs-Adressenzähler (RNGC) 132 über den internen'
Bus 106 eingeschrieben wird. Wenn ein zu testendes Mikroprogramm ausgeführt wird und ein Signal mit
einem logischen Pegel »1« aus dem zweiten Abschnitt (MRAM2) 27, wie in Fig. 5 zu sehen ist, ausgelesen
wird, in anderen Worten, wenn ein Ablaufüberwachungsbefehl abgegeben wird, dann sendet die Ablaufüberwachungs-Steuerschaltung
(TRC) 29 ein Stapel-Freigabesignal (STKE) 133 aus. Diesmal sind Daten
bezüglich der Adresse des ersten Mikroprogrammspeichers (MRAM) 23, aus der ein Mikrobefehl ausgelesen
wurde, bereits auf den Adreßbus (ABUS) 22 gegeben. Die Adreßdaten werden in diejenige Adresse des
Ablaufüberwachungsspeichers (TRACEM) 131 eingeschrieben, die durch den Ablaufüberwachungs-Adressenzähler
(RNGC) 132 bezeichnet wird, und zwar unter einer zeitlichen Steuerung, die definiert wird durch ein
Stapel-Freigabesignal (STKE2) 135, das in den Stapel-Freigabesignalen
(STKE) 133 enthalten ist (siehe Fig. 13C und 13D). Nach Abschluß des Schreibvorgangs
veranlaßt ein weiteres Stapel-Freigabesignal (STKEX) 134, das in den Stapel-Freigabesignalen
(STKE) 133 enthalten ist, daß der Inhalt des
Ablaufüberwachungs-Adressenzählers (RNGC) 132 um
1 erhöht wird (siehe Fig. 13B und 13E). Wenn zum zweiten Mal ein Ablaufüberwachungsbefehl abgegeben
wird, wird ebenfalls der oben erläuterte Vorgang durchgeführt. Somit werden Daten bezüglich 'der
Ablaufüberwachungs-Befehlsadressen sukzessive in den Adressen gespeichert, die durch den Ablaufüberwachungs-Adressenzähler
(RNGC) 132 angegeben werden. Wenn in sämtlichen Adressen des Ablaufüberwachungsspeichers
(TRACEM) 131 ein Ablaufüberwachungsbefehl gespeichert ist und später ein weiterer
Ablaufüberwachungsbefehl abgegeben wird, ergibt sich für den Inhalt des Ablaufüberwachungs-Adressenzählers
(RNGC) 132 ein Überlauf, was das Setzen einer Flipflopschaltung (FFV) 143 veranlaßt. Zu dieser Zeit is
wird der Inhalt des Ablaufüberwachungs-Adressenzählers (RNGC) 132 auf Null vermindert, und es wird eine
Überlagerung bei der Adresse Null in dem Ablaufüberwachungsspeicher (TRACEM) 131 gestartet, die die
alten Daten löscht. Wenn der Ablaufüberwachungsspeieher (TRACEM) 131 eine Kapazität von 256 Wörtern
hat, ist es möglich, maximal 256 Ablaufüberwachungsbefehls-Adressendaten
zu speichern, was gezählt wird von derjenigen Mikroprogrammadresse, die den letzten
Ablaufüberwachungsbefehl empfangen hat.
Unter Bc/ugnahme auf Fig. 12 wird nun die Arbeitsweise der Lesesteuerschaltung (RCNT) 43
beschrieben. Es wird Bezug genommen auf den Fall, daß der Inhalt des Ablaufüberwachungsspeichers
(TRACEM) 131 ausgelesen wird. In diesem Fall veranlaßt der Mikroprozessor (CPU) 101, daß das
Auslesen über den internen Bus 106 und Ausgabepuffer (OB 1) 141 und (OB2) 142 durchgeführt wird. Der Inhalt
des Ablaufüberwachungs-Adressenzählers (RNGC) 132 wird aus dem Ausgabepuffer (OB 1) 141 ausgelesen. Den
Zustand einer Flipflopschaltung (FF 3) 143 kennzeichnende Daten werden aus dem Ausgabepuffer (OB 2) 142
ausgelesen. Besitzt ein Ausgangssignal der Flipflopschaltung (FF3) 143 einen logischen Pegel »0«, so zeigt
dies, daß die Daten bezüglich der Mikroprogrammadressen, für die ein Ablaufüberwachungsbefehl abgegeben
wurde, in den Adressen des Ablaufüberwachungsspeichers (TRACEM) 131 gespeichert sind, die sich von der
Adresse Null bis zu derjenigen Adresse erstrecken, deren laufende Stelle gekennzeichnet ist durch eine um
1 verminderte Zahl des letzten Inhalts des Ablaufüberwachungs-Adressenzählers
(RNGC) 132.
Wenn ein Ausgangssignal der Flipflopschaltung (FF3) 143 einen logischen Pegel »1« aufweist, so zeigt
dies, daß Daten bezüglich der Mikroprogrammadressen, für die ein Ablaufüberwachungsbefehl ausgegeben
wurde, in denjenigen Adressen des Ablaufüberwachungsspeichers (TRACEM) 131 gespeichert sind, die
sich von der vom Inhalt des Ablaufüberwachungszählers (RNGC) 132 gekennzeichneten Adresse bis zu der
Adresse erstrecken, deren Position gemäß Reihenfolge gekennzeichnet ist durch eine um 1 verringerte Zahl des
letzten Inhalts des Ablaufüberwachungs-Adressenzählers (RNGC) 132. Wenn Daten in mehr Adressen zu
speichern sind, als es der Kapazität des Ablaufüberwachungsspeichers (TRACEM) 131 entspricht, dann
werden die Daten, die in der überschüssigen Anzahl von Adressen zu speichern sind, in denjenigen Adressen des
Ablaufüberwachungsspeichers (TRACEM) 131 gespeichert, die mit der Adresse Null des Speichers beginnen.
In anderen Worten, die überschüssigen Daten werden teilweise den Daten überlagert, die bereits in der
vorgegebenen Anzahl von Adressen des Ablaufüberwachungsspeichers (TRACEM)i3i gespeichert wurden.
Die neuen Daten werden in den Adressen gespeichert, die sich von der Adresse Null des Ablaufüberwachungsspeichers
(TRACEM) 131 bis zu derjenigen Adresse erstrecken, deren laufende Position gekennzeichnet
ist durch eine um 1 verminderte Zahl des laufenden Inhalts des (RNGC) 132. Abhängig von dem
Zustand der Flipflopschaltung (FF3) 143 veranlaßt der Mikroprozessor (CPU) 101, daß die Inhalte des
Ablaufüberwachungsspeichers (TRACEM) 131 über einen Ausgabemultiplexer 146 und den internen Bus 106
ausgelesen werden. Sämtliche so ausgelesenen Daten werden zu einer Anzeigeeinheit (CRT) 144 oder zu
einem Drucker 145, die in F i g. 9 gezeigt sind, geleitet. Die Lesesteuerschaltung (RCNT) 43 ermöglicht das
Auslesen des Inhalts des ersten Mikroprogrammspeichers (MRAM) 21 Der Mikroprozessor (CPU) 101
veranlaßt, daß über den internen Bus 106 Adreßdaten zu der Adressen-Steuerschaltung (ASC) 71 ausgelesen
werden. Daten der durch die Adressen-Steuerschaltung (ASC) 71 gekennzeichneten Adressen werden über den
Selektor (SEL) 61 an den ersten Mikroprogrammspeicher (MRAM)IZ gegeben. Der Inhalt der entsprechenden
Adresse des ersten Mikroprogrammspcichers (MRAM) 23 wird ausgelesen. Die so ausgelesenen
Daten werden durch den Betrieb eines Ausgabemulliplexers 146 auf den internen Bus 106 in der Einheit von 8
Bits gegeben. Der Mikroprozessor (CPU) 101 nimmt die Inhalte jener Speicherstellen des ersten Mikroprogrammspeichers
(MRAM) 23, die durch die zu der Adressen-Steuerschaltung (ASC) 71 gelieferten Adreßdaten
spezifiziert werden, in Form gleichmäßig unterteilter Anteile auf. Eine Ausgabe des Mikroprozessors
(CPU) 10 wird zu der in Fig.9 gezeigten Anzeigeeinheit (CRT) 44 oder dem Drucker 145
geliefert. Sämtliche oben erläuterten Operationen des Mikroprozessors (CPU) 101 folgen einem bereits in den
Speicher (CM) 102 eingeschriebenen Programm.
Nun wird die Art und Weise beschrieben, in der eine erfindungsgemäße Mikroprogramm-Testvorrichtung
zur Anwendung gelangt.
Zuerst wird Bezug genommen auf den Vorgang, daß die Vorrichtung zur Anwendung gelangt, wenn als
Testdaten ein Paritätsbit in den zweiten Abschnitt (MRAM 2) 27 eingeschrieben wird.
(1) Eine Tastatur 103 wird zum Liefern eines Codes betätigt, um den zweiten Abschnitt (MRAM)27 als
denjenigen Abschnitt zu spezifizieren, in den ein Paritätsbit geschrieben wird. Die Funktionsumschalt-Steuerschaltung
30 sendet ein Steuersignal, das für die Paritätsprüf-Betriebsart benötigt wird.
(2) Ein auf einem Lochstreifen geschriebenes Mikroprogramm wird über einen Lochstreifenleser (PTR)
147 (Fig.9) ausgelesen. Der Mikroprozessor (CPU) 101 veranlaßt, daß die so aufgenommenen
Daten über den internen Bus (I-BUS) 106 an die Schreibsteuerschaltung (WCNT)Si und die Mikroprogrammadressen-Steuerschaltung
(ASC) 71 geliefert werden.
(3) Die von dem Mikroprozessor (CPU) 101 gelieferten Daten werden durch den gemeinsamen Betrieb
der Schreibsteuerschaltung (WCNT) 51 und der Mikroprogrammadressen-Steuerschaltung (ASC)
71 in den ersten Abschnitt (MRAM 1) 26 geschrieben. Zu dieser Zeit wird in den zweiten Abschnitt
(MRAM 2) 27 ein Paritätsbit geschrieben.
(4) Ein in den ersten Abschnitt (MRAMi) 26
geschriebenes Mikroprogramm wird ausgeführt. Wenn zu dieser Zeit ein Paritätsfehler auftritt, wird
die Abgabe von Taktimpulsen durch den Fehlerdetektor (FRCl) 28 gestoppt. Die Ausführung eines
Mikroprogramms wird bei der Adresse unterbro- 5 (7) chen. bei der der Paritätsfehler aufgetreten ist.
Die l.esesteuerschaltung (RCNT)43 nimmt die von der Mikroadressen-Steuereinheit (MAC)2l auf den
Adreßbus (A-BDS) 22 abgegebenen Daten sowie von dem ersten Mikroprogrammspeicher (MRAM) 10 (8)
23 auf den Ausgabebus 31 gelieferten Daten auf. Beide Daten werden auf der Anzeigeeinheit (CRT)
144 /ur Anzeige gebracht. Die in diesem Fall dargestellten Datenworte sind Daten bezüglich der
Adressen, bei denen ein Paritatsl'ehler aufgetreten
ist. sowie ein Mikrobefehl, welcher der genannten
Adresse einspricht.
die Anzeige auf der Anzeigeeinheit (CRT) 144. In
diesem Fall werden eine als ein Anhaltepunkt spezifizierte Adresse sowie ein der Adresse
einsprechender Mikrobefehl angezeigt. Wenn die Ausführung eines Mikroprogramms bei
der so dargestellten Adresse unterbrochen wird, richtet die testende Person den nachfolgenden
Anhaltepunkt mittels einer Prozedur ein. die dieselbe ist wie die oben erläuterte Prozedur (4).
Die Ausführung eines Mikroprogramms wird bei der in der obigen Prozedur (6) angezeigten Adresse
gestartet. Wenn die Funktionsumschalt-Steuerschaltung 30 ein Ablaufüberwachungs-Freigabesignal
(TRCE) 47 an die Ablaufüberwachungs-Steuerschaltung (TRC) 29 gibt, wird die Flipflopschaltung
(FFi) 67 zurückgesetzt, was die Abgabe
eines Taktimpulses veranlaßt.
Nun wird der Vorgang des Schreibens eines Anhaltepunkts als Testdaten in den zweiten Speicher >o
(MRAM2) 27 beschrieben.
(1) Die Tastatur 103 wird zum Liefern eines Codes
betätigt, um den /weiten Abschnitt (MRAM2) 27
als denjenigen zu spezifizieren, der für einen Anhahepuiikt verwendet wird. Die Funklionsumschalt-Steuerschaltung
30 gibt ein für die Anhaltcpunkt-Beiriebsart erforderliches Steuersignal ab.
(2) Fin auf einem Lochstreifen geschriebenes Mikroprogramm wird durch den Lochstreifenleser (PTR)
147 ausgelesen. Der Mikroprozessor (CPU) 101
veranlaßt, daß aufgenommene Daten über den
internen Bus (IHUS) 106 an die Schreibsteuerschaliung
(H(TVXIaI und die Mikroprogramm-Sieuerschaliung(-l.SV/7l
geliefert weitlen.
(J) W)H dem Mikroprozessor (CPU) 101 gelieferte
Daten weitlen durch den gemeinsamen Betrieb der
Schreihsteuerschaltimg (WCNT)Si und tier Mikroprogrammadressen-Steuerschalumg
(ASC) 71 in den eisten Abschnitt (MRAM I) 26 eingeschrieben.
Der /weite Abschnitt (MR AM2) 27 w ird auf einen
logischen Pegel »0« gesetzt.
(4) Die testende Person betätigt die Tastatur 103. um
Daten be/üglich derjenigen Adressen eines /u testenden Mikroprogramms zu liefern, mit der die
Ausführung des Mikroprogramms abschließen sollte. Der Mikroprozessor (CPU) 101 veranlaßt,
daß der /weite Abschnitt (MRAM2) 27 in der
Betriebsart 2 auf einen logischen Pegel »I« gesetzt wird. Wenn gewünscht wird, mehrere Anhaltepunkte
einzurichten, wird der oben erläuterte Vorgang wiederholt.
(>) Fin in dem ersten Abschnitt (MRAM I) 26
geschriebenes Mikroprogramm wird ausgeführt. Wenn in diesem Fall der erste Abschnitt (MRAM I)
als ein Anhaltepunkt spezifiziert wird, stoppt die Ablaufüberw achungs-Steuerschaltung (TRC) 29 die
Abgabe eines Taktimpulses und unterbricht die Ausführung eines Mikroprogramms vor dem
Beginn eines Mikrobefehls, der einer als Anhaltepunkt spezifizierten Adresse entspricht. Zu dieser
Zeit veranlaßt der Adressenstapel (ASTK)46. daß Daten bezüglich der als Anhaltepunkt spezifizierten
Adresse in dem Ablaufiiberwachungsspeicher (TRACEM) 131 gespeichert werden.
(6) Der Mikroprozessor (CPU) 101 zieht über die Lesesteuerschaltung (RCNT)43 den Inhalt aus dem
Ablaufüberwachungsspeicher (TRACEM) 131 für
Nun wird der Vorgang des Sehreibens eines Anhalteptinkt- und Ablaufüberwaehungs-Bits als Testdaten
in den zweiten Abschnitt (MRAM 2) 27 beschrieben.
(1) Die Tastatur 103 wird /um Liefern eines Codes
betätigt, um den zweiten Abschnitt (MRAM 2) als
denjenigen zu spezifizieren, der für einen Anhaltepunkt verwendet wird und in dem ein Ablaufüberwachungs-Bit
eingeschrieben wird. Die Funktionsuiiischalt-Steuerschaltung 30 gibt für die Anhaltepunkt-Bet
riebsan und A blaufüborwachiings-Betriebsart
benötigtes Steuersignal ab.
(2) Fin auf einem Lochstreifen geschriebenes Mikroprogramm wird über den Lochstreifenleser (PTR)
147 gelesen. Der Mikroprozessor (CPL)) 101
veranlaßt, daß die so aufgenommenen Daten zu der Schreibsteuerschaltung (W'CNT)5\ und der Mikroprogrammadressen-Steuerschaltung
(ASC) 71 geliefert werden.
(J) Die von dem Mikroprozessor (CPU) 101 gelieferten
Daten werden durch die gemeinsame Arbeit der Schreibsteuerschaltung (WCNT) 51 und der
Mikroprogrammadressen-Steuersclialtung (ASC)
71 in den ersten Abschnitt (MRAMi) 26 eingeschrieben.
Der zweite Abschnitt (MRAM2)27 wird auf einen logischen Pegel »0« gesetzt.
(4) Die testende Person betätigt die Tastatur 103. um
Daten be/üglich der Adresse zu liefern, bei der die Ausführung eines Mikroprogramms beendet werden
sollte. Die Adressen, die einer Ablaufüberwachung unterzogen werden sollten, weiden durch
einen Mikrobefehl spezifiziert, der ausgeführt wird,
bevor die Adresse erreicht ist. bei der die Ausführung eines Mikroprogramms beendet werden
sollte. Wenn jeder Mikrobefehl zum Durchführen der Ablaufüberwaehungsfunktion spezifiziert
ist. ist es möglich, sämtliche ausgeführten Mikrobefehle wiederzuerkennen. Wenn ein Verzweigungs-Mikrobelchl
allein spezifiziert wird, um die Ablaufüberwaehungsfunktion durchzuführen, ist es
möglich, in einfacher Weise den Weg wieder zu erkennen, entlang dem ein Mikroprogramm ausgeführt
wird, und die Anzahl von Adressen herabzusetzen, deren Ablaufüberwachung zu spezifizieren
ist.
(5) Ein in den ersten Abschnitt (MRAM 1) 26 eingeschriebenes Mikroprogramm wird ausgeführt.
Zu dieser Zeit wird die Adresse, deren Ablaufüberwachung spezifiziert ist. in dem Ablaufüberwa-
chungsspeicher (TRACEM) 131 durch die gemeinsame Arbeit der Ablaufüberwachungs-Steuerschaltung
(TRC) 29 und des Adressenstapels (ASTAK) (6) 46 gespeichert. Wenn die Adresse erreicht ist, die
als ein Anhaltepunkt spezifiziert ist, wird durch den Betrieb der Ablaufüberwachungs-Steuerschaltung
(TRC) 29 die Abgabe eines Taktimpulses eingestellt. Die Ausführung des in den ersten Abschnitt
(MRAMX) 26 eingeschriebenen Mikroprogramms wird unterbrochen, bevor die Ausführung eines
Mikrobefehls beginnt, der der als ein Anhaltepunkt spezifizierten Adresse entspricht. Zu dieser Zeit
veranlaßt der Adressenstapel (ASTAK) 46, daß die
entsprechende Adresse in dem Ablaufüberwachungsspeicher (TRACEM) 131 gespeichert wird.
Der Mikroprozessor (CPU) 101 veranlaßt, daß der gesamte Inhalt des Ablaufüberwachungsspeichers (TRACEM) 131 über die Lesesteuerschaltung (RCNT) 43 ausgelesen wird. Die so ausgelesenen Daten werden auf der Anzeigeeinheit (CRT) 144 dargestellt. In diesem Fall sind die auf der Anzeigeeinheit (CRT) 144 dargestellten Datenwörter die Adressen, deren Ablaufüberwachung spezifiziert ist, die Adresse, die als ein Anhaltepunkt spezifiziert ist sowie der Mikrobefehl, der der als ein Anhaltepunkt spezifizierten Adresse entspricht.
Der Mikroprozessor (CPU) 101 veranlaßt, daß der gesamte Inhalt des Ablaufüberwachungsspeichers (TRACEM) 131 über die Lesesteuerschaltung (RCNT) 43 ausgelesen wird. Die so ausgelesenen Daten werden auf der Anzeigeeinheit (CRT) 144 dargestellt. In diesem Fall sind die auf der Anzeigeeinheit (CRT) 144 dargestellten Datenwörter die Adressen, deren Ablaufüberwachung spezifiziert ist, die Adresse, die als ein Anhaltepunkt spezifiziert ist sowie der Mikrobefehl, der der als ein Anhaltepunkt spezifizierten Adresse entspricht.
Hierzu 12 Blatt Zeichnungen
Claims (10)
1. Vorrichtung zum Testen eines bei einem elektronischen, mikroprogrammierten Rechner verwendeten
Mikroprogramms, gekennzeichnet durch:
einen Schreib-/Lese-Speicher (23), der aus einem ersten Abschnitt (26) für Mikrobefehle zum Steuern
des Betriebs des elektronischen Rechners und aus einem zweiten Abschnitt (27) für wenigstens den
jeweiligen Mikrobefehlen zugeordnete Daten für die Erfassung eines Fehlers in den Mikrobefehlen oder
für Daten zum Steuern des Anhaltens der Ausführung eines Mikrobefehls gebildet wird;
einen Fehlerdetektor (28), der, wenn Daten für die Erfassung eines Fehlers in den zweiten Abschnitt des
Speichers (23) geschrieben sind einen Fehler in den in dem ersten Abschnitt les Speichers (23)
gespeicherten Mikrobefehlen nach Maßgabe der Fehlererfassungsdaten erfaßt;
eine Ablaufüberwachungs-Steuerschaltung (29), die, wenn Daten zum Steuern des Anhaltens der
Ausführung von Mikrobefehlen in dem zweiten Abschnitt ties Speichers (23) gespeichert sind, die 2>
Ausführung von in dem ersten Abschnitt des Speichers (23) gespeicherten Mikrobefehlen nach
Maßgabe der Daten anhält; und
eine Funktionsumschalt-Steuerschaltung (30) /um Entscheiden der selektiven Verwendung des Speichers (23) und eines mit einem Mikroprogramm geladenen Nur-Lese-Speichers (24) des Rechneis, und ferner der selektiven Verwendung des Fehlerdetektors (28) und der Ablaufüberwachungs-Steuerschaltung(29). r>
eine Funktionsumschalt-Steuerschaltung (30) /um Entscheiden der selektiven Verwendung des Speichers (23) und eines mit einem Mikroprogramm geladenen Nur-Lese-Speichers (24) des Rechneis, und ferner der selektiven Verwendung des Fehlerdetektors (28) und der Ablaufüberwachungs-Steuerschaltung(29). r>
2. Vorrichtung nach Anspruch 1. in der die
Ablaufüberwachungs-Steuerschaltiing (29) eine Funktion zum Anfordern einer Unterbrechung
aufweist, gekennzeichnet durch:
eine Eingabe/Ausgabe-Steuerschaltung (41), die die 4« Adresse desjenigen allgemeinen Registers und des
Hauptspeicherbereichs des elektronischen Rechners, aus denen Daten auszulesen sind, in ein
Ausgaberegister (40) einschreibt,
ein Eingaberegister (42). in das die Inhalte desjenigen allgemeinen Registers oder des Hauptspeicherbereichs
nach Maßgabe der in dem Ausgaberegister (40) gespeicherten Inhalte geschrieben werden; und
eine Lesesteuerschaltung (43) zum Aufnehmen der Inhalte des Eingaberegisters (42) und zum Veranlassen,
daß die Inhalte auf einer Anzeigeeinheit dargestellt werden.
3. Vorrichtung nach Anspruch 1, gekennzeichnet durch einen Adressenstapel (46), der bei Empfang
von Steuersignalen von der Ablaufüberwachungs-Steuerschaltung(29) die Mikrobefehlsadressen speichert,
die von der Mikroadressen-Steucreinhcit (21) des elektronischen Rechners geliefert werden.
4. Vorrichtung nach einem der Ansprüche 1 bis 3, t>o
dadurch gekennzeichnet, daß ein Zähler (52) vorgesehen ist, und daß eine Schreibsteuerschaltung
(51) einen Zählwert an den Zähler (52) gibt, so daß der Zähler (52) Daten zum Steuern des Anhaltens
der Ausführung eines Mikrobefehls zählt, wobei ein b5 Freigabesignal von der Funktionsumschalt-Steuerschaltung
(30) an die Ablaufüberwaehungs-Steuerschaltung (29) und die Lesesteuerschaltung (43)
geliefert wird, um die Ausführung der Ablaufüberwachung und des Mikrobefehls zu gestatten.
5. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß der Adressenstapel (46) einen Ablaufüberwachungs-Adressenzähler
(132) zum Zählen einer Anzahl von überwachten Adressen enthält; und
einen Ablaufüberwachungsspeicher (131) zum Spei chern von Adressen, in die von dem Speicher (23)
ausgegebene Mikrobefehle nach Maßgabe der durch die Inhalte des Ablaufüberwachungs-Adressenzählers
(132) gegebenen Adressen geschrieben sind.
6. Vorrichtung zum Testen eines bei einem elektronischen, mikroprogrammierten Rechner verwendeten
Mikroprogramms, gekennzeichnet durch einen Schreib-/Lesc-Speicher (23), der aus einem
ersten Abschnitt (26) für Mikrobefehle zum Steuern des Betriebs des elektronischen Rechners und aus
einem zweiten Abschnitt (27) für wenigstens den jeweiligen Mikrobefehlen zugeordnete Daten für die
Erfassung eines Fehlers in den Mikrobefehlen oder für Daten zum Steuern des Anhaltens der Ausführung
eines Mikrobefehls gebildet wird.
eine Schreibsteuerschaltung (51) /um Schreiben von Mikrobefehlen in den ersten Abschnitt des Speichers
(23) und Daten für die Erfassung eines Fehlers in den Mikrobefehlen oder Daten zum Steuern des
Anhaltens der Ausführung der Mikrobefehle in den zweiten Abschnitt des Speichers (23);
einen Paritätsbit-Generator (80) zum Abgeben eines Paritätsbits bei Erhalt von Schreibdaten von der Schreibsteuerschaltung (51);
einen Paritätsbit-Generator (80) zum Abgeben eines Paritätsbits bei Erhalt von Schreibdaten von der Schreibsteuerschaltung (51);
einen ersten, dem zweiten Abschnitt des Speichers (23) vorgeschalteten Selektor (77) /um Auswählen
von aus der Schreibsteuerschaltung auszulesenden Daten und von von dem Paritäts-Generator·
Pariiäisbit-Generator kommenden Ausgangsdaten;
eine Mikroprogrammadressen-Steuerschaltung (71), um an den Speicher (23) Adressen zu liefern, in die
Daten einzuschreiben sind, oder von denen Daten zu holen sind;
einen /weiten Selektor (61), um entweder die Ausgangsdaten der Mikroprogrammadressen-Steuerschaltung
(71) oder die Daten von einem Adressenbus (22) des Rechners auszuwählen:
ein erstes Flipflop (67) zum Speichern eines Ausgangssignals des zweiten Abschnitts des Speichers (23);
ein erstes Flipflop (67) zum Speichern eines Ausgangssignals des zweiten Abschnitts des Speichers (23);
eine Paritätsprüfschaltung (69). um nach Maßgabe der Ausgangsdaten von dem ersten Abschnitt des
Speichers (23) und dem /weiten Abschnitt des Speichers (23) eine Paritätsprüfung durchzuführen;
ein zweites Flipflop (68) zum Speichern der Ausgangsdaten der Paritätsprüfschaltung (69). und
eine Funktionsumschalt-Steuerschaltung (30), die den Betrieb des ersten und des /weiten Selektors (77,61) und des ersten und des zweiten Flipflops (67, 68) steuert.
ein zweites Flipflop (68) zum Speichern der Ausgangsdaten der Paritätsprüfschaltung (69). und
eine Funktionsumschalt-Steuerschaltung (30), die den Betrieb des ersten und des /weiten Selektors (77,61) und des ersten und des zweiten Flipflops (67, 68) steuert.
7. Vorrichtung nach einem der Ansprüche 4 bis 6. dadurch gekennzeichnet, daß die Schreibsteuerschaltung
(51)
ein Eingaberegister (111) zum Halten der von einem
Eingabegerät gelieferten Daten enthält sowie
mehrere Register (112, 113, 114, 115, 116) für Daten, die aus dem Eingaberegister (111) ausgelesen sind,
ein Befehlsregister (117) /um Halten eines Befehls. der das Einschreiben von Daten in den ersten und
mehrere Register (112, 113, 114, 115, 116) für Daten, die aus dem Eingaberegister (111) ausgelesen sind,
ein Befehlsregister (117) /um Halten eines Befehls. der das Einschreiben von Daten in den ersten und
Abschnitt
des Speichers (23) vor-
den zweiten
schreibt, und
einen Selektor (118) zum Auswählen eines der datenhaltenden Register (112 bis 116) und zum
Abgeben eines Schreib-Freigabesignals an den ersten und zweiten Abschnitt des Speichers (23).
8. Vorrichtung nach einem der Ansprüche 2,6 und
7, dadurch gekennzeichnet, daß ein Adressenstapel (46) vorgesehen ist mit einem Ablaufüberwachungs-Adressenzähler
(132) zum Zählen einer Anzahl von überwachten Adressen und einem Ablaufüberwachungsspeicher
(131) zum Speichern von Adressen, in die von dem Speicher (23) ausgegebene Mikrobefehle nach Maßgabe der durch die Inhalte
des Ablaufüberwachungs-Adressenzählers spezifizierte Mikrobefehlsadressen eingeschrieben werden,
und daß eine Lesesteuerschaltung (43) vorgesehen ist mit einer ersten Puffereinrichtung (141) zum
Halten von von dem Ablaufüberwachungs-Adressenzähler
(132) gelieferten Daten, einer Flipflopschaltung (143) zum Kennzeichnen von in dem
Adressenstapel (46) gespeicherten Daten, einer zweiten Puffereinrichtung (142) zum Halten einer
Ausgabe der Flipflopschaltung (143), einem Multiplexer (146), der selektiv die Inhalte des Ablaufüberwachungsspeichers
(131) und Ausgangsdaten des ersten und des zweiten Abschnitts des Speichers (23)
sendet, und einem Selektor (147) zum Auswählen von Ausgangsdaten der ersten und der /weiten
Puffereinrichtung (141, 142) und des Multiplexers (146).
9. Vorrichtung zum Testen eines bei einem elektronischen, mikroprogrammierten Rechner verwendeten
Mikroprogrammes, wobei der das Mikroeine Funktionsumschalt-Steuerschaltung (30) zum
Aussetzen des Betriebs des Mikroprogrammspeichers (82) des elektronischen Rechners und des
Fehlerdetektors (85) und zum Senden eines Steuersignals, um eine Kollision der Ausgangsgrößen des
Speichers (23) mit denen des Mikroprogrammspeichers (82) zu verhindern.
10. Vorrichtung nach Anspruch 9, dadurch gekennzeichnet, daß die Funktionsumschalt-Steuerschaltung(30)
einen ersten Schalter (91) zum Entscheiden, ob der Fehlerdetektor (28) oder die Ablaufüberwachungs-Steuerschaltung
(29) freigegeben werden soll, enthält, sowie
einen zweiten Schalter (92) zum Entscheiden, ob dem Mikroprogrammspeicher (82) des elektronischen
Rechners oder dem Speicher (23) der Mikroprogramm-Testvorrichtung gestattet werden
soll, eine Ausgangsgröße abzugeben: und eine Gruppe von Verknüpfungsschaltungen, die ein
vorgeschriebenes Signal abgeben, wenn ihnen ein Ausgangssignal des ersten oder zweiten Schalters
oder Ausgangssignale von beiden Schaltern zugeführt werden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15619978A JPS5582359A (en) | 1978-12-18 | 1978-12-18 | Microprogram test unit |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2953432C1 true DE2953432C1 (de) | 1983-12-22 |
Family
ID=15622525
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE792953432T Pending DE2953432A1 (de) | 1978-12-18 | 1979-10-19 | Testing device for microprogram |
DE2953432A Expired DE2953432C1 (de) | 1978-12-18 | 1979-10-19 | Vorrichtung zum Testen eines Mikroprogramms |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE792953432T Pending DE2953432A1 (de) | 1978-12-18 | 1979-10-19 | Testing device for microprogram |
Country Status (7)
Country | Link |
---|---|
US (1) | US4429368A (de) |
JP (1) | JPS5582359A (de) |
CH (1) | CH654943A5 (de) |
DE (2) | DE2953432A1 (de) |
GB (1) | GB2047929B (de) |
SE (1) | SE446671B (de) |
WO (1) | WO1980001323A1 (de) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57169860A (en) * | 1981-04-10 | 1982-10-19 | Yokogawa Hokushin Electric Corp | Address testing equipment |
US4563762A (en) * | 1981-06-15 | 1986-01-07 | General Signal Corp. | Vital communication system for transmitting multiple messages |
JPS58205214A (ja) * | 1982-05-26 | 1983-11-30 | Omron Tateisi Electronics Co | プログラマブル・コントロ−ラのモニタ表示方式 |
FR2528597A1 (fr) * | 1982-06-11 | 1983-12-16 | Thomson Csf Mat Tel | Dispositif de test des programmes d'un microprocesseur dans son environnement reel |
US4520440A (en) * | 1982-12-15 | 1985-05-28 | International Business Machines Corporation | Test verification of processor architecture having a partial instruction set |
JPS59133610A (ja) * | 1983-01-19 | 1984-08-01 | Omron Tateisi Electronics Co | プログラマブルコントロ−ラ |
DE3501569C2 (de) * | 1984-01-20 | 1996-07-18 | Canon Kk | Datenverarbeitungseinrichtung |
US4841434A (en) * | 1984-05-11 | 1989-06-20 | Raytheon Company | Control sequencer with dual microprogram counters for microdiagnostics |
JPS60243795A (ja) * | 1984-05-17 | 1985-12-03 | シャープ株式会社 | 電子レジスタの変更プログラム設定装置 |
US5115502A (en) * | 1984-11-02 | 1992-05-19 | Tektronix, Inc. | Method and apparatus for determining internal status of a processor using simulation guided by acquired data |
JPS61188626A (ja) * | 1985-02-18 | 1986-08-22 | Fujitsu Ltd | マイクロプロセツサ |
JPH0756636B2 (ja) * | 1985-12-11 | 1995-06-14 | 株式会社日立製作所 | データ処理方法 |
JPS62257543A (ja) * | 1986-04-30 | 1987-11-10 | Toshiba Corp | マイクロプログラム活性化状態検査回路 |
US4802165A (en) * | 1986-10-08 | 1989-01-31 | Enteleki, Inc. | Method and apparatus of debugging computer programs |
US4760329A (en) * | 1987-04-23 | 1988-07-26 | Grumman Aerospace Corporation | Programmable tester with bubble memory |
US5179696A (en) * | 1987-07-24 | 1993-01-12 | Nec Corporation | Generator detecting internal and external ready signals for generating a bus cycle end signal for microprocessor debugging operation |
US5535331A (en) * | 1987-09-04 | 1996-07-09 | Texas Instruments Incorporated | Processor condition sensing circuits, systems and methods |
JPH01140249A (ja) * | 1987-11-26 | 1989-06-01 | Nec Corp | 情報処理装置 |
US5287483A (en) * | 1988-07-06 | 1994-02-15 | Kabushiki Kaisha Toshiba | Prefetched operand storing system for an information processor |
US5134701A (en) * | 1989-02-10 | 1992-07-28 | Hewlett-Packard Co. | Test apparatus performing runtime replacement of program instructions with breakpoint instructions for processor having multiple instruction fetch capabilities |
US5206948A (en) * | 1989-12-22 | 1993-04-27 | Bull Hn Information Systems Inc. | Bus monitor with means for selectively capturing trigger conditions |
US5124989A (en) * | 1990-01-08 | 1992-06-23 | Microsoft Corporation | Method of debugging a computer program |
US5355469A (en) * | 1990-07-30 | 1994-10-11 | Delphi Data, A Division Of Sparks Industries, Inc. | Method for detecting program errors |
JP2505950B2 (ja) * | 1991-05-13 | 1996-06-12 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ハ―ドウェア支援ブレ―クポイント・システム |
US5359608A (en) * | 1992-11-24 | 1994-10-25 | Amdahl Corporation | Apparatus for activation and deactivation of instruction tracing through use of conditional trace field in branch instructions |
JP2630271B2 (ja) * | 1994-09-14 | 1997-07-16 | 日本電気株式会社 | 情報処理装置 |
US5754839A (en) * | 1995-08-28 | 1998-05-19 | Motorola, Inc. | Apparatus and method for implementing watchpoints and breakpoints in a data processing system |
US6142683A (en) * | 1997-04-08 | 2000-11-07 | Advanced Micro Devices, Inc. | Debug interface including data steering between a processor, an input/output port, and a trace logic |
US6148381A (en) * | 1997-04-08 | 2000-11-14 | Advanced Micro Devices, Inc. | Single-port trace buffer architecture with overflow reduction |
US6154856A (en) * | 1997-04-08 | 2000-11-28 | Advanced Micro Devices, Inc. | Debug interface including state machines for timing synchronization and communication |
US6094729A (en) * | 1997-04-08 | 2000-07-25 | Advanced Micro Devices, Inc. | Debug interface including a compact trace record storage |
US6314530B1 (en) * | 1997-04-08 | 2001-11-06 | Advanced Micro Devices, Inc. | Processor having a trace access instruction to access on-chip trace memory |
US6041406A (en) * | 1997-04-08 | 2000-03-21 | Advanced Micro Devices, Inc. | Parallel and serial debug port on a processor |
US6189140B1 (en) | 1997-04-08 | 2001-02-13 | Advanced Micro Devices, Inc. | Debug interface including logic generating handshake signals between a processor, an input/output port, and a trace logic |
US6016555A (en) * | 1997-11-19 | 2000-01-18 | Texas Instruments Incorporated | Non-intrusive software breakpoints in a processor instruction execution pipeline |
US6175914B1 (en) | 1997-12-17 | 2001-01-16 | Advanced Micro Devices, Inc. | Processor including a combined parallel debug and trace port and a serial port |
US6145100A (en) * | 1998-03-04 | 2000-11-07 | Advanced Micro Devices, Inc. | Debug interface including timing synchronization logic |
US6145122A (en) * | 1998-04-27 | 2000-11-07 | Motorola, Inc. | Development interface for a data processor |
US6145123A (en) * | 1998-07-01 | 2000-11-07 | Advanced Micro Devices, Inc. | Trace on/off with breakpoint register |
JP2002073348A (ja) * | 2000-08-31 | 2002-03-12 | Mitsubishi Electric Corp | シナリオ解析型制御システム装置 |
JP5670117B2 (ja) * | 2010-08-04 | 2015-02-18 | ルネサスエレクトロニクス株式会社 | 表示制御装置 |
US9495158B2 (en) * | 2014-06-20 | 2016-11-15 | Netronome Systems, Inc. | Multi-processor system having tripwire data merging and collision detection |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2002166B2 (de) * | 1970-01-19 | 1972-02-17 | Verfahren und einrichtung zur pruefung des programmablaufes in einer programmgesteuerten datenverarbeitungsanlagew | |
DE2400010A1 (de) * | 1973-01-02 | 1974-07-04 | Honeywell Inf Systems | Mikroprogrammierte verarbeitungsanordnung und mikro-fehlerdiagnoseanordnung fuer ein datenverarbeitungssystem |
DE2246863B2 (de) * | 1972-09-23 | 1978-05-11 | Ibm Deutschland Gmbh, 7000 Stuttgart | Einrichtung zur Protokollierung des Programmablaufs in einer Datenverarbeitungsanlage |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5074950A (de) * | 1973-11-02 | 1975-06-19 | ||
JPS5223208B2 (de) * | 1974-12-21 | 1977-06-22 | ||
JPS5361940A (en) * | 1976-11-16 | 1978-06-02 | Nippon Telegr & Teleph Corp <Ntt> | Debug system for microprogram |
JPS5391546A (en) * | 1976-12-29 | 1978-08-11 | Fujitsu Ltd | Program debugging system |
-
1978
- 1978-12-18 JP JP15619978A patent/JPS5582359A/ja active Pending
-
1979
- 1979-10-19 US US06/201,486 patent/US4429368A/en not_active Expired - Lifetime
- 1979-10-19 DE DE792953432T patent/DE2953432A1/de active Pending
- 1979-10-19 DE DE2953432A patent/DE2953432C1/de not_active Expired
- 1979-10-19 WO PCT/JP1979/000265 patent/WO1980001323A1/ja unknown
- 1979-10-19 GB GB8025319A patent/GB2047929B/en not_active Expired
- 1979-10-19 CH CH6265/80A patent/CH654943A5/de not_active IP Right Cessation
-
1980
- 1980-08-15 SE SE8005750A patent/SE446671B/sv not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2002166B2 (de) * | 1970-01-19 | 1972-02-17 | Verfahren und einrichtung zur pruefung des programmablaufes in einer programmgesteuerten datenverarbeitungsanlagew | |
DE2246863B2 (de) * | 1972-09-23 | 1978-05-11 | Ibm Deutschland Gmbh, 7000 Stuttgart | Einrichtung zur Protokollierung des Programmablaufs in einer Datenverarbeitungsanlage |
DE2400010A1 (de) * | 1973-01-02 | 1974-07-04 | Honeywell Inf Systems | Mikroprogrammierte verarbeitungsanordnung und mikro-fehlerdiagnoseanordnung fuer ein datenverarbeitungssystem |
Non-Patent Citations (1)
Title |
---|
Siemens, Elektronisches Wählsystem EWS, Zentralsteuerwerk mit SSP 102 und Bedie- nungsplatz, Dez. 1978, S.11-15 * |
Also Published As
Publication number | Publication date |
---|---|
WO1980001323A1 (en) | 1980-06-26 |
SE8005750L (sv) | 1980-08-15 |
US4429368A (en) | 1984-01-31 |
GB2047929B (en) | 1983-08-10 |
JPS5582359A (en) | 1980-06-21 |
CH654943A5 (de) | 1986-03-14 |
GB2047929A (en) | 1980-12-03 |
SE446671B (sv) | 1986-09-29 |
DE2953432A1 (de) | 1980-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2953432C1 (de) | Vorrichtung zum Testen eines Mikroprogramms | |
DE4313594C2 (de) | Mikroprozessor | |
DE2657848C2 (de) | ||
DE3110378C2 (de) | ||
DE3629178C2 (de) | ||
DE19834191C2 (de) | Integrierte Schaltungsvorrichtung und ihr Steuerverfahren | |
DE2735397C2 (de) | Überwachungseinrichtung für eine programmgesteuerte Maschine | |
DE60002908T2 (de) | Vorrichtung und verfahren zur verbesserten fehlerortung und diagnose in rechnern | |
CH522921A (de) | Rechneranlage | |
DE2163162A1 (de) | Schaltungsanordnung zur Kanalfehlerkorrektur | |
DE3116100A1 (de) | Sprungabschaetz-zentraleinheit | |
DE2842548A1 (de) | Programmierbare speicherschutzlogik fuer mikroprozessorsysteme | |
DE102009019961A1 (de) | Vorrichtung, Systeme und Verfahren zum effizienten Verwenden von Hardware-Ressourcen für einen Softwaretest | |
DE2747633A1 (de) | Dv-system mit einer unterbrechungseinrichtung | |
DE2658864A1 (de) | Pruefsystem fuer eine mikroprogrammierte verarbeitungseinheit | |
EP2962205B1 (de) | Mehrkern-prozessorsystem mit fehleranalysefunktion | |
DE2145709B2 (de) | ||
DE2461592C3 (de) | Anordnung zur Durchführung von Wartungsoperationen bei einem Datenverarbeitungssystem | |
EP0048991B1 (de) | Verfahren und Anordnung zur Behandlung von Unterbrechungsbedingungen während des Arbeitsablaufes in Datenverarbeitungsanlagen mit Mikroprogrammsteuerung | |
DE2336020B2 (de) | Adressen-berechnungsschaltung fuer paritaetsfehler-korrekturprogramme | |
DE2364323C2 (de) | Verfahren zur Behandlung von Unterbrechungsbedingungen in einer Datenverarbeitungsanlage | |
DE2657897A1 (de) | Externes geraet, das die ureingabe fest gespeichert enthaelt, fuer elektronische datenverarbeitungsanlagen mit einem zentralen speicher | |
DE19901879A1 (de) | Verfahren zum Tracen von Daten | |
DE2622140C3 (de) | Einrichtung zur Steuerung manueller Operationen | |
DE102004051966A1 (de) | Verfahren, Betriebssystem und Rechengerät zum Abarbeiten eines Computerprogramms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8100 | Publication of the examined application without publication of unexamined application | ||
D1 | Grant (no unexamined application published) patent law 81 | ||
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: KABUSHIKI KAISHA TOSHIBA, KAWASAKI, KANAGAWA, JP |
|
8339 | Ceased/non-payment of the annual fee |