DE2145709C3 - Datenverarbeitungsanlage, in welcher Verzweigungsbefehle eine Unterbrechung laufender Programme zur Folge haben können - Google Patents
Datenverarbeitungsanlage, in welcher Verzweigungsbefehle eine Unterbrechung laufender Programme zur Folge haben könnenInfo
- Publication number
- DE2145709C3 DE2145709C3 DE2145709A DE2145709A DE2145709C3 DE 2145709 C3 DE2145709 C3 DE 2145709C3 DE 2145709 A DE2145709 A DE 2145709A DE 2145709 A DE2145709 A DE 2145709A DE 2145709 C3 DE2145709 C3 DE 2145709C3
- Authority
- DE
- Germany
- Prior art keywords
- branch
- memory
- program
- address
- counter
- 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/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/348—Circuit details, i.e. tracer hardware
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Executing Machine-Instructions (AREA)
Description
Die Erfindung betrifft eine Datenverarbeitungsanlage, in welcher Verzweigungsbefehle eine Unterbrechung laufender Programme und die Durchführung
von Verzweigungen zur Folge haben können, mit einem Programmzähler zur Erzeugung von Speicheradressen für einen Speicher und mi! ci~em Befehlsre-
Bekaniitc Datenverarbeitungsanlagen enthalten einen Programmzähler zur Erzeugung von Speicheradressen für einen Befehlsspeicher, aus dem nachein-
ander eine Folge von Befehlen in ein Befehlsregister übertragen wird. Ferner enthalten sie ein Unterbre
chungssystem, durch das ein soeben ausgeführtes Pm gramm aus einem von vielen Gründen unterbrochen
werden kann. Beispielsweise können in ein?m Pro
as gramm während seiner Ausführung Befehle auftreten
die bestimmte Vergleiche durchführen und bedingt ein Unterbrechungskennzeichen innerhalb des Unterbrechungssystems setzen. Der Setzzustand eines
solchen Kennzeichens führt später zu einer Unterbre -
chung des Programms und kann den Rechner veran
lassen, ein Fehlersuchprogramm zu beginnen.
Aufgabe der Erfindung ist, eine Datenverarbeitungsanlage anzugeben, in der die bei der Durchführung der Programme vorgenommenen Verzweigun-
gen mit geringem Aufwand so registriert werden können, daß beispielsweise bei einem Programmierungsfehler dieser durch Zurückverfolgung der Programmwege leicht auffindbar ist.
Verarbeitungsanlage der eingangs genannten Art da
durch, daß in einen Verzweigungsadreßzähler, dessen Inhalt für einen zur Speicherung der Adressen einer
v. l^lbaren Anzahl von Verzweigungsbefehlen bestimmten Bereich dieses Speichers die Speicheradres-
sen definiert, durch einen im Programm enthaltenen Steuerbefehl eine Anfangsspeicheradresse eingegeben wird, und daß durch eine Torschaltungsanordnung in Abhängigkeit von einem von dem Steuerbefehl gesetzten Flip-Flop bei Vorhandensein eines
Verzweigungsbefehls im Befehlsregister und im Falle einer durchzuführenden Verzweigung der Inhalt des
Programmzählers zu der von der Adresse im Verzweigungsadreßzähler bestimmten Stellen im Speicher
übertragen und anschließend der Inhalt des Verzwei
gungsadreßzählers zur Vorbereitung der Speicherung
der Adresse eines folgenden Verzweigungsbefehls erhöht wird.
Die Erfindung hat den Vorteil, daß die Adressen der jeweiligen Verzweigungsbefehle registriert wer
den können, denen zufolge ein Verzweigungsweg im
Programm eingeschlagen worden war. Eine aus diesen registrierten Adressen angefertigte Liste ermöglicht
es, die ausgeführten Befehle des Programms zurückzuverfolgen, um den Ort zu finden, wo ein Fehler auf-
trat. Es besteht auch die Möglichkeit, die registrierten Adressen zusammen und periodisch durch ein Fehlersuchprogramm auszudrücken (als Liste für die Verfolgung der ausgeführten Verzweigungen). Diese Mög-
lichkeiten stellen eine sehr nützliche Ergänzung eines
Universalrechners dar, ohne die zum Ausführen eines
Bcfehlsprogramms erforderliche Zeit wesenilich zu erhöhen. Die gewonnene zusätzliche Funktion und die
damit verbundenen Vorteile werden lediglich durch eine geringfügige Ergänzung des Hardware-Teils des
Rechners erkauft (nämlich durch ein zusätzliches Flip-Flop, einen zusätzlichen Zähler und eine mäßige
Anzahl von Verknüpfungsgliedern).
In Weiterbildung der Erfindung kann es zweckmäßig ifcin, daß eine Schaltung vorgesehen ist, die über
weitere Torglieder ein nur aus Bits vom Wert »1« bestehendes, als Markierung zum Auffinden der letzten
registrierten Verzvtcigungsbefehlsadresse im Speicher
dienendes Wort in die vom Inhalt des Verzweigungsadrcßzählers
bestimmte Speicherstelle schreibt, wenn ein auszuführender Verzweigungsbefehl im Befehlsregister
erscheint und nachdem der Verzweigungsadreßzähler erhöht worden ist. Diese als Anzeige für
die Speicherstelle, die zu/etzt zum Speichern der
Adresse eines Verzweigungsbefehls gedient hatte, verwendete Markierung kann erhalten bleiben, bis sie
dadurch überschrieben wird, daß die nächstfolgende Übertragung des Programmzählerinhalts in die lauter
»Einsen« enthaltende Speicherstelle stattfindet.
In Verbindung mit den Zeichnungen wird nachfolgend ein Ausführungsbeispiel der Erfindung näher erläutert.
Es zeigt
F i g. 1 das Schaftschema eines Teiles einer Datenverarbeitungsanlage
mit einer Anordnung mm Registrieren der Adressen von Sprungbefehlen, und
Fig. 2 einen Ablaufplan zur Erläuterung der Betriebsweise
der Datenverarbeitungsanlage.
In Fi g. 1 ist ein Teil eines konventionellen Universalrechners dargestellt, an dem die Erfindung erläutert
werden wird. Er enthält einen Schnellspeicher HSM mit einem Speicheradreßregister MAR und einem
Speicherdatenregister MDR. Ein Programmzähler PC erzeugt der Reihe nach Speicheradressen. Die
Adressen in dieser Folge werden dem Speicheradreßregister MAR zugeführt, damit der Reihe nach im
Speicher HSM gespeicherte Befehle in das Speicherdatenregister AfDR eingegeben werden. Jeder Befehl
innerhalb der sich ergebenden, im Speicherdalenregister MDR erzeugte.« Befehlsfoige wird zu einem Befehlsregister
IR übertragen. Das Befehlsregister IR hat einen Operationskodeteil OP und einen Adreßteil
ADDR. Der Inhalt des Operationsteils des Befehlsregisters
IR wird einem Dekodserer D zugeführt, der
eine Vielzahl individueller Ausgänge hat. Jeder dieser
Ausgänge kann beispielsweise einem Befehls entsprechen. Einer der Ausgänge des Dekodierers D", nämlich
der Ausgang 10 wird erregt, wenn der Befehl im Befehlsregister IR ein Sprungbefehl isi.
Der konventionelle Universalrechner enthält fernei
eine Vergleichsstufe C, die über den Ausgang IC des Dekodierers aktiviert v.ird. Über Eingänge Hund
13 empfängt die Vergleichsstufe C Bedingungsvergleichsinformationen von (nicht dargestellten) Vcrknüpfungsschaltungen.
Sie hat einen »Nein«-Ausgang N und einen »Ja«-Ausgang Y. Eine Verknüpfungseinheit
16 enthält Verknüpfungsglieder zum Ausführen eines Sprungbefehls. Weiterhin enthält der
Rechner ein konventionelles Unterbrechungssystem 20. Das System 20 enthält ein Kennzeichenregister
(in der Zeichnung nicht näher bezeichnet), dessen Bits beim Auftreten eines Fehlers oder von einem von vielen
anderen Gründen zum Unterbrechen des in der Ausführung begriffenen Programms gesetzt werden
können. Das Unterbrechungssystem, das beispielsweise von der in der USA.-Patentschrift 3 290 65b" beschriebenen
Art sein kann, enthält ferner ein Maskenregister, das zur Steuerung der Prioritäten verschiedener
Unterbrechungsgründe gesetzt werden kann. Eine Unterbrechung kann verlangt werden von (a) einem
Fehlersignal auf der Leitung 22 oder (b) von einem Ausgangssignal auf der Leitung 24 von einem Maximalzählwertanzeiger
26. Der konventionelle Rechner weist ferner eine Quelle 28 für ein Maschinenwort
auf, das lauter Einsen enthält.
Zusätzlich zu den oben beschriebenen konventionellen Bestandteilen enthält die Datenverarbeitungsanlage
gemäß der Erfindung ein Verzweigungsregistrier-FIip-FIop
(oder Verzweigungssatz-Flip-Flop) BR und einen Verzweigungsadreßzähler BAC. Das
Flip BR ist mit einem Setzeingang S mit einem Ausgang 29 des Dekodierers D gekoppelt und hat einen
ao »1 «-Ausgang und einen invertierten oder »O«-Ausgang.
Mit dem »1 «-Ausgang des Flip-Flops ist ein Eingang eines UND-Gliedes 30 verbunden, dessen
zweiter Eingang mit dem Ausgang V der Vergleichsstufe C verbunden ist.
Fingänge eines UND-Gliedes 32 sind mit dem »(!«-Ausgang des Flip-Flops BR und mit dem Ausgang
Yder Vergleichsstufe C gekoppelt. Ein weiteres
UND-Glied 34 hat einen mit dem Ausgang des UND-Gliedes 30 verbundenen Eingang, während sein
Ausgang an den Erhöhungseingang des Verzweigungsadreßzahlers
BAC angeschlossen ist. Ein UND-Glied 36 hat einen mit dem Ausgang des Gliedes
30 gekoppelten Eingang, während sein Ausgang mit der Verknüpfungseinheit 16gekoppelt ist, die zum
Ausführen von Verzweigungs- oder Sprungbefehlen dient.
Eingänge eines UND-Gliedes 38, dessen Ausgangssignal dem Zähler BAC zugeführt ist, sind mit
dem Ausgang 29 des Dekodierers D bzw. mit dem Adreßteil ADDR des Befehlsregisters IR verbunden.
Bei dem Glied 38 kann es sich in Wirklichkeit um einen ganzen Satz von Torschaltungen handeln, deren
Anzahl gleich der Anzahl der Bits im Adreßteil des Befehlsregisters IR ist. Diese Torglieder 38 erlauben
daher die Übertragung des gesamten Inhalts des Adreßteils des Befehlsregisters zum Verzweigungsadreßzähler
BAC, wenn die Torglieder durch ein Signal vom Ausgang 29 des Dekodierers D aufgetastet
werden.
Ein weiterer Satz von Torgliedern 40 (von denen nur eines dargestellt ist) sind so geschaltet, daß sie
zur Übertragung des Inhalts des Verzweigungsadreßzahlers BAC über Leitungen 42 zum Speicheradreßregister
MAR vom Ausgangssignal des Torgliedes 30
aufgetastet werden. Ein Satz von UND-Gliedern 44 wird zu einer späteren Zeit zum übertragen des Inhalts
des Zählers BAC über Leitungen 46 zum Speicheradreßregister MAR aufgetastet. Das UND-Glied
44 bringt auch den Inhalt des Zählers BAC über Leitungen 47 zum Maximalzählwertanzeiger 26. Ein Satz
von UND-Gliedern 48 überträgt das nur aus Einsen bestehende Wort von der Quelle 28 über Leitungen
49 zum Speicherdatenregister MDR, wenn sie vom Ausgangssignal des Gliedes 30 aufgetastet werden.
Ein Satz von UND-Gliedern 50 überträgt unter Steuerung des Ausgangssignals des Gliedes 30 den Inhalt
des Programmzählers PC über Leitungen 51 zum Süeicherdatenrepister MDR.
5 J 6
tcnverarbeitungsanlage wird nun an Hand des Ab- Adressen die Adressen von anschließend auftrcten-
laufpianes gemäß Fi g. 2 erläutert. Es sei angenom- den Sprungbefehlen, die eine Verzweigung zur Folge
men, daß das Flip-Flop BR rückgesetzt ist und der haben.
Rechner Operationen ausgeführt hat, ohne die s Wie aus der bisherigen Beschreibung hervorgeht,
Adressen der Sprungbefehle zu registrieren. Wenn bilden der Ausgang des Dekodierers D und die Torunter diesen Umständen ein Sprungbefehl im Pro- glieder 38 eine Anordnung, die vom Programm gcgramm auftritt (wie bei 60 in F i g. 2), wird vom Deko- steuert wird und dazu dient, das Flip-Flop BR zu setdierer D der Operationskodeteil des Befehles deko- zen und die Anfangsspcicheradresse in den Verzweidiert. Der Dek<-=dierer D führt über die Leitung 10 *= gungsadreßzähler BAC einzugeben,
der Vergleichsstute C ein Ausgangssignal zu. Zuf Zeit Nachdem der Bedingungsbefehl in der beschriebe-In vergleicht die Vergleichsstufe C (bei 62 in Fi g. 2) ncn Weise ausgeführt worden ist, fährt die Anlage mit
die an ihren Eingängen 12 und 13 erscheinenden Si- der Ausführung von Befehlen fort. Der dem Bcdingnale entsprechend dem Befehl und erzeugt entweder gungsbcfchi nächstfolgende Befehl wird also vom
ein »Nein«-Sigiis! am Ausgang N oder ein »Ja«-Si- »5 Programmzähler PC geholt, und auch die im Prognal am Ausgang Y. Im »Nein«-Fall, d.h. wenn die gramm folgenden Befehle werden ausgeführt.
Verzweigung nicht vorgenommen werden soll, wird Nunsei angenommen, daß das Flip-Flop BR gesetzt
mit dem Signal über die Leitung 54 der Programm- und der Ver/weigungsadreßzähler BAC in der oben
zähler PC erhöht (in Fig. 2 bei 64). Der Programm- beschriebenen Weise geladen worden ist. Wenn ein
zähler holt dann den numerisch nächstfolgenden Be- a° Sprungbefehl auftritt (wie bei 60 in Ft g. 2), und wenn
fehl im Programm, und der Rechner fährt mit der die Vergleichsslufe C" einen Vergleich durchführt (bei
Ausführung des nächsten Progrp.mmbefehles fort, 62), dessen Ergebnis besagt, daß die Verzweigung
ohne den Verzweigungsweg einzuschlagen. nicht vorgenommen werden soll, erfolgt in der schon
der Verzweigungsweg eingeschlagen werden soll, wird Der Programmzähler holt dann den niichslfolgendieses Signal den Eingängen der UND-Glieder 30 und den Befehl und fährt mit dem Programm fort, was
32 zugeführt. Diese UND-Glieder 30 und 32 führen bedeutci, daß der Ver/weigungsweg nicht eingeschlaeinen Vergleich durch (bei 66 in Fig. 2), um zu be- gen wird und unter diesen Umständen keine den Verstimmen, ob sich das Flip-Flop BR in seinem Setz- 30 zwcigungsadrcßzähler BAC benutzenden Operitio
oder Rückstcllzustand befindet. Hi-r sei angenom- nen stattfinden.
men, daß das Flip-Flop zurückgestellt ist, so daß seine Wenn statt dessen der Vergleich inMer Vergleichs
ren und das T^iglied 32 auftasten. Zur Zeit I1 veian- gnal führt, der Verzweigungsweg also eingeschlps'
iaß. daher das6AusgangssignaI des Ϊ orglicdes 32 die 35 werden soll, wird das Signal vom Ausgang Y den Ein
gramm bis zur.» Punkt fortgeschritten ist, wo ein spe- 40 während sein »1 «Ausgang das Torglied 30 auftastet
ziellei, bedingender Befehl auftri't Dieser spezielle Das Torglied 30, das Eingangssignale von der Ver
das Programm aufgenommen, danach den Rechner nötigt zur Auftastung ferner ein Zeitgebersignal, des
zu veranlassen, die Adressen ailer Sprungbefehle zu sen Dauer vom Zeitpunkt I1 bis zum Zeitpunkt u
registrieren, die eine Verzweigung zur Folge haben. 45 währt. Das Torglied 30 liefert also auf die Ausgangs
cher HSM entnommen und vom Speicherdatenregi- dauer I, bis I5 vorhanden ist.
ster MDR dem Befehlsregister IR zugeführt worden. Zum Zeitpunkt I2 werden die Torglicder 40 von
fehles zum Dekodierer D gelangt, ruft er ein Signal 50 Verzwcigungsadreßzählers BAC über Leitungen 42
am Ausgang 29 des Dekodicrers hervor und setzt zum Speicheradreßregister MAR zu übertragen Zur
folglich das Verzweigungsregistrier-Flip-Flop BR. Zu gleichen Zeit I2 lassen die Torglieder 50, die ebenfalls
beachten ist, daß das Flip-Flop Bi? durch alle folgen- von der Sammelleitung 31 aufgetastet worden sind,
den Operationen hindurch und so lange in seinem den Inhalt des Programmzählers PC über Leitungen
dadurch angezeigt werden kann, daß wieder ein Be- Adresse des Sprungbefehls vom Programmzähler PC
fehl (vom Speicher HSM) erscheint, der nach der De- zur Anfangsstelle im Speicher HSAf übertragen, wel-
kodierung das Flip-Flop zurückstellt und somit die ehe vom Anfangszählwert im Verzweigungsadreßzäh-
bricht. Zum Zeitpunkt I3 wird das Torglied 34 von der
Der erregte Dekodiererausgang 29 tastet auch die Sammelleitung 31 aufgetastet, um bei 70 in Fig. 2
Torglieder 38 auf, die im geöffneten Zustand eine An- den Zähler BAC zu erhöhen. Der Zähler BAC enthält
fangsspeicheradresse vom Adreßteil ADDR des Be- dann die nächsfolgende Adresse im zum Speichern
fehles zum Verzweigungsadreßzähler BAC übertra- 65 von Sprungbefehladressen reservierten Speicherbegen. Der Zähler BAC enthält daher nun die reich.
Anfangsadresse eines Bereiches irr Speicher HSM,
Zum Zeitpunkt I4 übertragen die Torglieder 44 die
der für die Summierung der Adressen reserviert ist. erhöhte Adresse im Zähler BAC über Leitungen 46
zum Speicheradreßregister MAR. Zur gleichen Zeil
/4 übertragen die Torglieder 48 das nur aus Einsen
bestehende Wort von der Quelle 28 über Leitungen 49 zum Speichcrdalenrcgister MI)R. Wie in Fig. 2
bei 72 gezeigt ist, werden daher im Speicher an der Stelle, die von der erhöhten Adresse im Zähler BAC
spezifiziert worden ist, lauter Einsen gespeichert. Dieser Nur-1-Inhalt dieser Spcicherslelle dient als Markierung,
welche für die Verwendung durch ein Fehlersuchprogramm den Ort der letzten registrierten
Sprungbefehladressc identifiziert.
Zum Zeitpunkt tA wird auch der erhöhte Inhalt des
Zählers IiAC über die Torglieder 44 und Leitungen 47dem Maximalzählwertanzeiger 26zugeführt. Wenn
dieser feststellt, daß die Kapazität des reservierten Bereiches im Speicher erschöpft ist, setzt er über die
Leitung 24 ein entsprechendes Unterbrechungskennzeichen im Unterbrechungssystcm 20, wie in Fig. 2
bei 74 gezeigt ist. Das Unterbrechungssystem kann dann ein Programm einleiten, durch das der Inhalt
des reservierten Speicherbereiches in einen größeren Speicher übertragen wird, worauf er ausgedruckt und
analysiert werden kann.
Zum Zeitpunkt 7'5 ist der Adressenregislricrvorgang
beendet, und das Torglied 36 veranlaßt die Verknüpfungseinheil 16, gemäß 68 in Fi g. 2 den Sprungbcfehl
auszuführen und die Vom Sprungbefehl spezifizierte Befehlsadresse über Leitungen 17 dem
Programmzähler PC zuzuführen.
Der Rechner fährt dann mit der Ausführung folgender Befehle in der normalen Weise fort, bis ein
so weiterer Sprungbefehl auftritt, der wieder so behandelt wird, wie oben beschrieben wurde. Der reservierte
Speicherbereich wird also nacheinander mit den Adressen von Sprungbefehlen gefüllt, die entsprechende
Verzweigungen zur Folge haben. Wenn zu irgend einer Zeit während des Betriebes der Anlage
ein Programmfehler festgestellt wird, der ein entsprechendes Programmfehlersuchkennzeichen im Unterbrechungssystcm
20 setzt, kann das darauf folgende Fehlersuchprogramm den Inhalt des reservierten
Speicherbereiches analysieren und somit die im Verlaufe des Programms eingeschlagenen Wege verfolgen
und den Ort des Programmierungsfehlers auffinden.
Hierzu 1 Blatt Zeichnungen
Claims (4)
1. Datenverarbeitungsanlage, in welcher Verzweigungsbefehle eine Unterbrechung laufender
Programme und die Durchführung von Verzweigungen zur Folge haben können, mit einem Programmzähler zur Erzeugung von Speicheradressen für einen Speicher und mit einem Befehlsregister, in das aus dem Speicher nacheinander eine
Folge von Befehlen übertragen wird, dadurch gekennzeichnet, daß in einen Verzweigungsadreßzähler (BAC), dessen Inhalt für einen
zur Speicherung der Adressen einer wählbaren Anzahl von Verzweigungsbefehlen bestimmte;!
Bereich dieses Speichers (HSM) die Speicheradressen definiert, durch einen im Programm enthaltenen Steuerbefehl eine Anfangsspeicheradresse eingegeben wird, und daß durch eine
Torschaltungsanordnung in Abhängigkeit von einem von dem Steuerbefehl gesetzten Flip-Flop
(BR) bei Vorhandensein eines Verzweigungsbefehls im Befehlsregister (IR) und im Falle einer
durchzuführenden Verzweigung der Inhalt des Programmzählers (PC) zu der von der Adresse
im Verzweigungsadreßzähler (BAC) bestimmten Stellen im Speicher (HSM) übertragen und anschließend der Inhalt des Verzweigungsadreßzählers (BAC) zur Vorbereitung der Speicherung der
Adresse eines folgenden Verzweigungsbefehls erhöht wird.
2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß eine Schaltung (28)
vorgesehen ist, die über we'tere Torglieder (48) ein nur aus Bits vom Wert »1« bestehendes, als
Markierung zum Auffinden der letzten registrierten Verzweigungsbefehlsadresse im Speicher
(HSM) dienendes Wort in die vom Inhaii des Verzweigungsadreßzählers (BAC) bestimmte Speicherstelle schreibt, wenn ein auszuführender
Verzweigungsbefehl im Befehlsregister (IR) erscheint und nachdem der Verzweigungsadreßzähler (BAC) erhöht worden ist.
3. Datenverarbeitungsanlage nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß ein Maximalzählwertanzeiger (26) vorgesehen ist, der bei
Feststellung eines maximal zulässigen Zählwertes im Verzweigungsadreßzähler (BAC) ein Aus
gangssignal erzeugt, das einem Programmunterbrechungssystem (20, die Auffüllung des für die
Speicherung der Adressen bestimmten Bereiches des Speichers (HSM) anzeigt.
4. Datenverarbeitungsanlage nach Anspruch 3, dadurch gekennzeichnet, daß das Programmuntorbrechungssystem (20) bei Empfang des Ausgangssignals des Maximalwertanzeigers (26) ein
Fehlersuchprogramm einleitet.
Rister, in das aus dem Speicher nacheinander eine Folge von Befehlen übertragen wird.
Ein Programm ist bekanntlich eine Liste von Befehlen, welche normalerweise aus entsprechenden
Stellen eines Speichers abgegriffen und der Reihe nach ausgeführt werden. Viele dieser Befehle sind
Sprung- oder Verzweigungsbefehle, die danach verlangen, (a) gewisse Bedingungen zu prüfen und (b)
entweder zu dem in der Reihenfolge nächsten Befehl
ίο überzugehen oder zu einem Befehl außerhalb der
Reihenfolge abzuzweigen. Wenn ein Programm daraufhin untersucht wird, wo Fehler aufgetreten waren
ist es zweckmäßig und in einigen Fällen zur Fehler analyse auch notwendig, die bei der Ausführung des
J5 Programms tatsächlich eingeschlagenen Wege zu ken
nen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US7145570A | 1970-09-11 | 1970-09-11 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2145709A1 DE2145709A1 (de) | 1972-03-16 |
DE2145709B2 DE2145709B2 (de) | 1973-10-11 |
DE2145709C3 true DE2145709C3 (de) | 1974-05-16 |
Family
ID=22101435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2145709A Expired DE2145709C3 (de) | 1970-09-11 | 1971-09-13 | Datenverarbeitungsanlage, in welcher Verzweigungsbefehle eine Unterbrechung laufender Programme zur Folge haben können |
Country Status (8)
Country | Link |
---|---|
US (1) | US3673573A (de) |
JP (1) | JPS523702B1 (de) |
AU (1) | AU451985B2 (de) |
CA (1) | CA948783A (de) |
DE (1) | DE2145709C3 (de) |
FR (1) | FR2107553A5 (de) |
GB (1) | GB1356997A (de) |
NL (1) | NL7112494A (de) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3937938A (en) * | 1974-06-19 | 1976-02-10 | Action Communication Systems, Inc. | Method and apparatus for assisting in debugging of a digital computer program |
US4205370A (en) * | 1975-04-16 | 1980-05-27 | Honeywell Information Systems Inc. | Trace method and apparatus for use in a data processing system |
US4195339A (en) * | 1977-08-04 | 1980-03-25 | Ncr Corporation | Sequential control system |
JPS61264447A (ja) * | 1985-05-20 | 1986-11-22 | Hitachi Ltd | 命令実行事象記録装置 |
US4821178A (en) * | 1986-08-15 | 1989-04-11 | International Business Machines Corporation | Internal performance monitoring by event sampling |
US5535331A (en) * | 1987-09-04 | 1996-07-09 | Texas Instruments Incorporated | Processor condition sensing circuits, systems and methods |
US5274811A (en) * | 1989-06-19 | 1993-12-28 | Digital Equipment Corporation | Method for quickly acquiring and using very long traces of mixed system and user memory references |
JPH03148732A (ja) * | 1989-07-31 | 1991-06-25 | Texas Instr Inc <Ti> | 状態監視器を備えたデータ処理装置 |
JP2762829B2 (ja) * | 1992-02-06 | 1998-06-04 | 日本電気株式会社 | 電子計算機 |
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 |
GB2273184B (en) * | 1992-12-05 | 1996-11-20 | Motorola Inc | A cache processor and a method for observing program flow in a cache processor |
US5473754A (en) * | 1993-11-23 | 1995-12-05 | Rockwell International Corporation | Branch decision encoding scheme |
US5724566A (en) * | 1994-01-11 | 1998-03-03 | Texas Instruments Incorporated | Pipelined data processing including interrupts |
US5564028A (en) * | 1994-01-11 | 1996-10-08 | Texas Instruments Incorporated | Pipelined data processing including instruction trace |
US5922070A (en) * | 1994-01-11 | 1999-07-13 | Texas Instruments Incorporated | Pipelined data processing including program counter recycling |
GB9626367D0 (en) * | 1996-12-19 | 1997-02-05 | Sgs Thomson Microelectronics | Providing an instruction trace |
GB2366879B (en) | 2000-09-16 | 2005-02-16 | Ibm | Tracing the execution path of a computer program |
US6834365B2 (en) | 2001-07-17 | 2004-12-21 | International Business Machines Corporation | Integrated real-time data tracing with low pin count output |
US7464874B2 (en) * | 2005-02-24 | 2008-12-16 | Robert William Donner | Method and system for transparent and secure vote tabulation |
US7685467B2 (en) * | 2006-04-27 | 2010-03-23 | Texas Instruments Incorporated | Data system simulated event and matrix debug of pipelined processor |
JP6478562B2 (ja) | 2013-11-07 | 2019-03-06 | 株式会社半導体エネルギー研究所 | 半導体装置 |
JP6393590B2 (ja) * | 2013-11-22 | 2018-09-19 | 株式会社半導体エネルギー研究所 | 半導体装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL267514A (de) * | 1960-07-25 | |||
US3570006A (en) * | 1968-01-02 | 1971-03-09 | Honeywell Inc | Multiple branch technique |
US3551895A (en) * | 1968-01-15 | 1970-12-29 | Ibm | Look-ahead branch detection system |
US3573853A (en) * | 1968-12-04 | 1971-04-06 | Texas Instruments Inc | Look-ahead control for operation of program loops |
US3573854A (en) * | 1968-12-04 | 1971-04-06 | Texas Instruments Inc | Look-ahead control for operation of program loops |
US3551659A (en) * | 1969-05-05 | 1970-12-29 | Charles O Forsythe | Method for debugging computer programs |
-
1970
- 1970-09-11 US US71455A patent/US3673573A/en not_active Expired - Lifetime
-
1971
- 1971-08-25 AU AU32706/71A patent/AU451985B2/en not_active Expired
- 1971-09-01 CA CA121,939A patent/CA948783A/en not_active Expired
- 1971-09-08 GB GB4179571A patent/GB1356997A/en not_active Expired
- 1971-09-10 NL NL7112494A patent/NL7112494A/xx unknown
- 1971-09-10 FR FR7132797A patent/FR2107553A5/fr not_active Expired
- 1971-09-10 JP JP7170288A patent/JPS523702B1/ja active Pending
- 1971-09-13 DE DE2145709A patent/DE2145709C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
NL7112494A (de) | 1972-03-14 |
DE2145709B2 (de) | 1973-10-11 |
AU451985B2 (en) | 1974-08-22 |
GB1356997A (en) | 1974-06-19 |
FR2107553A5 (de) | 1972-05-05 |
DE2145709A1 (de) | 1972-03-16 |
US3673573A (en) | 1972-06-27 |
CA948783A (en) | 1974-06-04 |
AU3270671A (en) | 1973-03-01 |
JPS523702B1 (de) | 1977-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2145709C3 (de) | Datenverarbeitungsanlage, in welcher Verzweigungsbefehle eine Unterbrechung laufender Programme zur Folge haben können | |
DE2555963C2 (de) | Einrichtung zur Funktionsmodifizierung | |
DE1499722C2 (de) | Einrichtung zur Modifizierung von Informationswörtern | |
DE2719253C3 (de) | Schnittstellenschaltung für Datenverarbeitungsanlagen | |
DE2953432C1 (de) | Vorrichtung zum Testen eines Mikroprogramms | |
DE3513834C2 (de) | ||
DE2533403A1 (de) | Datenverarbeitungssystem | |
DE2318069C2 (de) | Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix | |
DE2721319A1 (de) | Einrichtung zur selbsttaetigen aenderung der prozessor/speicher-konfiguration | |
DE1499203B1 (de) | Schaltungsanordnung zum Speicherschutz bei Datenverarbeitungsanlagen mit Simultanbetrieb | |
DE2754890C2 (de) | Einrichtung zur Programmunterbrechung | |
DE1901036A1 (de) | Anordnung fuer die wiederholte Ausfuehrung fehlerhaft ausgefuehrter Funktionen | |
DE2935906A1 (de) | Mikrokomputer | |
DE2332971C2 (de) | Mikroprogrammsteuereinrichtung | |
DE2336020B2 (de) | Adressen-berechnungsschaltung fuer paritaetsfehler-korrekturprogramme | |
DE2417578A1 (de) | Verfahren und vorrichtung zum beruecksichtigen der dynamischen aenderungen eines programms | |
DE2817073A1 (de) | Adressenberechnungsanordnung | |
DE2811318A1 (de) | Einrichtung zur uebertragung und speicherung eines teilwortes | |
DE1185404B (de) | Fehlerermittlungsanlage | |
DE2657897A1 (de) | Externes geraet, das die ureingabe fest gespeichert enthaelt, fuer elektronische datenverarbeitungsanlagen mit einem zentralen speicher | |
DE2227761B2 (de) | Speichersystem | |
DE2245284A1 (de) | Datenverarbeitungsanlage | |
DE2720842A1 (de) | Daten-uebertragungssystem | |
DE1774421B1 (de) | Mehrprogramm datenverarbeitungsanlage | |
DE1948508A1 (de) | System zur fruehzeitigen Anzeige von Fehlern in Datenverarbeitungs-anlage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 | ||
EHJ | Ceased/non-payment of the annual fee |