DD264533A1 - Verfahren zum erzeugen von nichtmaskierbaren interruptsignalen fuer testaufgaben in einem mikrorechner - Google Patents

Verfahren zum erzeugen von nichtmaskierbaren interruptsignalen fuer testaufgaben in einem mikrorechner Download PDF

Info

Publication number
DD264533A1
DD264533A1 DD30701187A DD30701187A DD264533A1 DD 264533 A1 DD264533 A1 DD 264533A1 DD 30701187 A DD30701187 A DD 30701187A DD 30701187 A DD30701187 A DD 30701187A DD 264533 A1 DD264533 A1 DD 264533A1
Authority
DD
German Democratic Republic
Prior art keywords
signal
interrupt
circuit
delay
microcomputer
Prior art date
Application number
DD30701187A
Other languages
English (en)
Inventor
Guenter Halt
Original Assignee
Nachrichten Elektronik Zft
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nachrichten Elektronik Zft filed Critical Nachrichten Elektronik Zft
Priority to DD30701187A priority Critical patent/DD264533A1/de
Publication of DD264533A1 publication Critical patent/DD264533A1/de

Links

Landscapes

  • Microcomputers (AREA)

Abstract

Das Verfahren wird fuer das schrittweise Testen von Mikrorechnerprogrammen verwendet. Mittels eines aus einem Befehl abgeleiteten Aktivierungssignals wird eine durch ein Steuersignal des Mikrorechners getaktete Verzoegerungsschaltung aktiviert. Nach vorbestimmten Verzoegerungszeiten wird durch die Verzoegerungsschaltung ein erstes und ein zweites Signal erzeugt. Durch das erste Signal wird ein von einer Halteschaltung erzeugtes Interruptsignal deaktiviert und mittels des zweiten Signals aktiviert, so dass ueber eine Interruptleitung in der CPU des Mikrorechners eine Programmunterbrechung ausgeloest wird. Der Zustand nach dem Zustandswechsel des Interruptsignals von inaktiv zu aktiv wird mittels der Halteschaltung gespeichert, bis ueber ein erneutes Aktivierungssignal die Verzoegerungsschaltung wiederum aktiviert wird. Figur

Description

Hierzu 1 Seite Zeichnung
Anwendungsgebiet der Erfindung
Die Erfindung betrifft ein Verfahren zum Erzeugen von nichtmaskierbaren Interruptsignalen für Testaufgaben in Mikrorechnern. Das Verfahren wird inbesondero zum schrittweisen Testen von Mikrorechnerprogrammen verwendet, wo es wünschenswert ist, nach jedem Befehl oder nach rnahreren Befehlen die ausgeführten Funktionen zu analysieren.
Charakteristik des bekannten Standes der Technik
Sowohl beim Testen von Mikrorechnerprogrammen als auch bei der Fehlersuche in Mikrorechnerprogrammen besteht der Wunsch, ein Programm schrittweise abzuarbeiten und nach jedem Befehl odar nach mehreren Befehlen die ausgeführten Funktionen zu analysieren. Ereignisse, die zu einer Programmunterbrechung führen, sind neben den privilegierten Befehlen wie beispielsweise HALTund WARTE vor allem Unterbrechungssignale, auch Interruptsignale genannt. Interruptsignale sind binäre Signale mit direktem Zugriff zum Mikroprozessor. Ein Interruptsignal ruft, ausgehend von einer Anforderung eines Prozesses an einen Mikroprozessor, ein bestimmtes Programm auf. Das Programmunterbrechungssignal führt zu einer Unterbrechung das momentan ablaufenden Programms und kann zum Start eines höherrangigen Programms führen. In vielen Mikroprozessorsystomen, wie beispielsweise im Mikroprozessorsystem U880-K1520, ist es üblich, zwei voneinander unabhängige Unterbrechungssysteme zu verwenden. Für Programmtestaufgaben wird in dem einen Unterbrechungssystem zur Programmunterbrechung eine mnskierbaro Programmunterbrechung in Abhängigkeit von einer Anzahl Takte des Mikrorechners ausgelöst. Dazu kann der maskierbare Interrupteingang des Mikrorechners über zwei dem Programmierer zur Verfügung stehenden Befehle, die ein Interruptsystem! ein- und ausschalten, in einzelnen Programmabschnitten aktiviert beziehungsweise ausgeblendet werdon. Nachteilig daran ist, daß nicht alle Programmabschnitte getestet werden können, da der Programmierer nicht alle Befehle zu einer schrittweisen Programmabarbeituiig nutzen kann. Nachteilig ist feiner, daß durch die Taktabhäripigkeit die Mikroprozessorperepherie keine WARTE-Signale erzeugen darf, wenn die gonaue Dauor nicht voi bestimmt ist, da sonst eine Programmunterbrechung für eine Zustandsanalyse an nichtbeabsichtigten Stellen eines Programmablaufes entsteht. Das andere Unterbrechungssystem benutzt zur Programmunterbrechung ein nichtmaskierbares Interruptsignal. Bei Testaufgaben werden die Takte eines Steuersignals des Mikroprozessors gezählt und nach einer vorgegebenen Anzahl wird das nichtmaskierbare Interruptsignal ausgelöst und durch die gleiche Zählschaltung nach einer weiteren oft gleichen Anzahl von Takten wieder deaktiviert. Das nichtmaskierbare Interruptsignal kann vom Programmierer nicht gesperrt werden, es führt in jedem Fall zu einer Unterbrechung des laufenden Prograi ims und zu einem erzwungenem Unterprogrammsprung. Der Befehlszählerstand des alten Programms wird hierbei aut Dmatisch in den Stack eingekellert. Nach Beendigung der nichtmaskierbaren Interrupt-Serviceroutine wird über e'na spezielle Instruktion die Auskellemng des Befehlszählers veranlaßt und die Bearbeitung dos unterbrochenen Programms fortgesetzt. Ein Nachteil besteht darin, daß keine andere Signalquelle während der Behandlung der Interruptroutine ein nichtmaskierbares Interruptsignal auslösen darf, da ein rekursivar Aufruf von Testhilfsprogrammen nicht zulässig ist, wenn der der Zustand des Interrupt-Annahme-Flipflop des Mikroprozessors rekonstruiert werden muß'.
Ziel der Erfindung
\ Ziel der Erfindung ist die Einzelschrittestung sowie eino erwünschte Programmabzweigung in ein Testhilfeprogramm.
' Darlegung des Wesens der Erfindung
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren eingangs genannten Art zu schaffen, bei de ,τι taktunabhängig und ohne Einschränkungen im Befehlsvorrat, insbesondere ohne Einschränkung in der Nutzung aller maskierbaren. Unterbrechungsmöglichkeiten die zu testenden Programme nach jedem Befehl unterbrochen werden können, ohne daß Programmunterbrechungen an für den Test unzulässigen Programmstellen auftreten. Dabei soll von einem Steuersignal des Mikroprozessors ausgegangen werden, das die Anzahl der abgearbeiteten Befehle erkennen läßt.
Diese Aufgabe wird erfindungsgemöß dadurch gelöst, daß mittels eines aus einem Befehl abgeleiteten Aktivierungssignals eine durch ein Steuersignal des Mikrorechners getakteten Verzögerungsschaltung aktiviert wird, so daß nach einer vorbestimmten ei fiten Verzögerung ein erstes Signal und nach einer vorbestimmten zweiten Verzögerung ein zweites Signal erzeugt wird und dnß durch das erste Signal ein von einer Halteschaltung eizeugtes interruptsignai deaktiviert und mit dem zweiten Signal aktiviert wird, so daß über eine Interruptsignalleitung in der CPU dos Mikrorechners eine Programmunterbrechung ausgelöst wird und daß der Zustand, der sich nach dem Zustandswechsel des Interruptsignals von inaktiv zu aktiv einstellt, mittels der Haltsschaltung gespeichert wird, bis übor ein erneutes Aktivierungssignal die Verzögerungsschaltung wiederum aktiviert wird und daß ein von einer externen Signalquelle erzeugter Zustandswechsel eines Interruptsignals von inaktiv zu aktiv auf der Interruptsignalloitung durch die Halteschaltung erkannt wird und der Interrupt-aktiv-Zustand durch die Halteschaltung bis zur erneuten Aktivierung der Verzögerungsschaltung übernommen und gespeichert wird.
Es können für die Verzögerungsschaltungen beispielsweise Zählerschaltungen und Schieberegister und für dio Halteschaltung getaktete Bit- Speicher verwendet worden.
Durch das erfindungsgsmäße Verfahren wird erreicht, daß mit nur geringem zusätzlichen Hardwareaufwand zur Hardware des Mikrorechners ein Schrittest möglich wird, so daß ein Programm nach jedem Befehl unterbrochen werden kann, ohne daß Einschränkungen in der Nutzung aller maskierbaren Unterbrechungsmöglichkeiten vorgenommen werden müssen. Gleichzeitig erlaubt das Verfahren ein beliebiges Aufrufen eines Testhilfeprogrammes auch durch externe nichtmaskierbare Interruptsignale, kurz NMI-Signale genannt. Es wird eine eindeutige Rekonstruierbarkeit des maskierbaren Interrupt-Annahmezustandes der CPU des Mikrorechners erreicht, indem durch das Verfahren weitere NMI-Annahmen verhindert werden.
Ausführungsbeispiel
Anhand eines in der Zeichnung wiedergogebenen Ausführungsbeispiels wird die Erfindung näher erläutert. Die Znichnung enthält die zur Durchführung des Verfahrens notwendige Verzögerungsschaltung VS und Halteschaltung HS. Die Verzögerungsschaltur.g VS besteht aus einem Johnson-Zähler JZ, dessen Freigabeeingang CE mit einem vom Johnson-Zähler JZ getakteten R-S-Flipfiop FF1 beschaltet ist, an dessen Setzeingang S ein Aktivierungssignal AS herangeführt ist. An dem Takteingang der Verzögerungsschaltung VS liegt ein vom Mikroprozessor geliefertes Steuersignal M1 an. Daneben sind ein Rücksetzsignal RS und ein Deaktivierungssignal DS an die Verzögerungsschaltung VS herangeführt, die über AND-Gatter 1 und Negatoren 2 Einfluß auf den Rücksetzeingang R des Johnson-Zählers JZ, auf den vom Johnson-Zähler JZ getakteten R-S-Flipflop FF1 und auf die Halteschaltung HS nehmen. Die I lalteschaltung HS besteht aus einem von seinem Ausgang her getakteten Bit-Speicher FF2, im ausgefühlten Beispiel ein R-S-D-Flipflop, dessen Speicherverhalten einerseits durch die Verzögerungsschaltung VS und andererseits von seinem Ausgang her beeinflußt wird und der mit einem AND-Gatter 1 und mit weiteren Negatoron 2 beschaltet ist. Am Ausgang der Halteschaltung HS, der zugleich Eingang für ein externes nichtmaskiorbares Interrupt-Signal sein kann, liegt eine nichtmaskierbare Interruptsignalleitung an. Das Verfahren, am Beispiel des Mikroprozessor-Systems U880-K1520 dargestellt, gestaltet sich wie folgt. Zur Aktivierung der Verzögerungsschaltung VS wird das Aktivierungssignal AS aus einem Adressdekoder entnommen. Wenn das Aktivierungssignal AS den binäro;) Zustand Low aufweist, wird das R-S-Flipflop FF1 gesetzt und damit der Johnson-Zähler JZ zum Zählen freigegeben. Der Johnson-Zähler JZ wird mit dem Steuersignal M1 des Mikroprozessors getaktet. Nach einer ersten Verzögerung von sechs Takten d6S Steuersignals M1 wird durch die Verzögerungsschaltung VS ein erstes Signal b erzeugt, das an dem Rücksetzeingang R des als R-S-D-Flipflop ausgebildeten Bit-Speichers FF2 als Low-Signal wirksam wird. Am Ausgang Q des Bit-Sp <>':hors FF2 wird ebenfalls ein Low-Signal erzeugt, so daß ein durch die Halteschaltung HS verursachtes NMI-Signal inaktiv wird, indem es auf High gesetzt wird. Nach einem weiteren Takt wird durch die Verzögerungsschaltung VS ein zweites Signal f erzeugt, so daß am Setzeingang S des Bit-Speichers FF2 ein Low-Signal verursacht wird, wodurch das durch die Halteschaltung HS ausgebildete NMI-Signal aktiv wird, indem es auf Low gesetzt wird und mit seiner High-Low-Flanke in der CPU des Mikrorechners eine Programmunterbrechung erzeugt. Nach weiteren drei Takten des Steuersignals M1 am Takteingang des Johnson-Zählers JZ wird das R-S-Flipflop FF1 zurückgesetzt und der Johnson-Zähler JZ wird blockiert. Die Halteschaltung HS verbleibt in ihrem zuvor eingenommenen Zustand bis die Verzögerungsschaltung VS erneut durch das Aktivierungssignal AS aktiviert wird, durch ein Deaktivierungssignai DS deaktiviert oder über ein Rücksetzsignal RS, beispielsweise mit RESET, zurückgesetzt wird.
Zur gleichen Behandlung externer NMI-Signale wird der als R-S-D-Flipflop ausgebildete Bit-Speicher FF2 zur Speicherung des NMI-Zustandes zurückgestellt, wenn eine High-Low-Flanke des von einer externen Signt !quelle herrührenden NMI-Signals
. auftritt. Das R-S-D-Flipflop FF2 dient somit zur Verhinderung weiterer NMI-Programmunterbrechungen nach einer NMI-
(' ; Programmunterbrechung bis zur Freigabe durch den Programmierer oder durch RESET.

Claims (5)

1. Verfahren zum Erzeugen von nichtmaskierbaren Interruptsignalen für Testaufgaben in einem Mikrorechner, unter Verwendung eines Steuersignals des Mikrorechners, dadurch gekennzeichnet, daß mittels eines aus einem Befehl abgeleiteten Aktivierungssignals (AS) eine durch das Steuersignal (M 1) getakteten Verzögerungsschaltung (VS) aktiviert wird, so daß nach einer vorbestimmten ersten Verzögerung ein erstes Signal (b) und nach einer vorbestimmten zweiten Verzögerung ein zweites Signal (f) erzeugt wird und daß durch das erste Signal (b) ein von einer Halteschaltung (HS) erzeugtes interruptsignal (NMI) deaktiviert und mit dem zweiten Signal (f) aktiviert wird, so daß über eine Interruptsignalleitung in der CPU des Mikrorechners eine Programmunterbrechung ausgelöst wird und daß der Zustand, der sich nach dem Zustandswechsel des Interruptsignals von inaktiv zu aktiv einstellt, mittels der Halteschaltung (HS) gespeichert wird, bis über ein erneutes Aktivierungssijjnal (AS) die Verzögerungsschaltung (VS) wiederum aktiviert wird und daß ein von einer externen Signalquelle erzeugter Zustandswechsel eines Interruptsignals
von inaktiv zu aktiv auf der Interruptsignalleitung durch die Halteschaltung (HS) erkannt wird und j
der Interrupt-aktiv-Zustand durch die Halteschaltung (HS) bis zur erneuten Aktivierung der !
Verzögerungtischaltung (VS) übernommen und gespeichert wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß für die Verzögerungsschaltung (VS) I Zählerschaltungen verwendet werden. '
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß für die Verzögerungsschaltung (VS) j Schieberegister verwendet werden. · |
4. Verfahren nach Anspruch 1 bis 3, dadurch gekennzeichnet, daß für die Halteschaltung (HS) J getaktete Bit-Speicher verwendet werden.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß für die Verzögerungsschaltung (VS) ein Johnson-Zähler (JZ) und ein erstes R-S-D-Flipflop (FF 1) verwendet werden und daß für die Halteschaltung (HS) ein zweites R-S-D-Flipflop (FF2) verwendet wird.
DD30701187A 1987-09-17 1987-09-17 Verfahren zum erzeugen von nichtmaskierbaren interruptsignalen fuer testaufgaben in einem mikrorechner DD264533A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DD30701187A DD264533A1 (de) 1987-09-17 1987-09-17 Verfahren zum erzeugen von nichtmaskierbaren interruptsignalen fuer testaufgaben in einem mikrorechner

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DD30701187A DD264533A1 (de) 1987-09-17 1987-09-17 Verfahren zum erzeugen von nichtmaskierbaren interruptsignalen fuer testaufgaben in einem mikrorechner

Publications (1)

Publication Number Publication Date
DD264533A1 true DD264533A1 (de) 1989-02-01

Family

ID=5592323

Family Applications (1)

Application Number Title Priority Date Filing Date
DD30701187A DD264533A1 (de) 1987-09-17 1987-09-17 Verfahren zum erzeugen von nichtmaskierbaren interruptsignalen fuer testaufgaben in einem mikrorechner

Country Status (1)

Country Link
DD (1) DD264533A1 (de)

Similar Documents

Publication Publication Date Title
DE4011745C2 (de)
DE3901457C2 (de)
DE68922034T2 (de) Systematische Wiederherstellung von übermässigen Programmspinschleifen in einer n-teiligen MP-Umgebung.
EP0011685B1 (de) Programmierbare Speicherschutzeinrichtung für Mikroprozessorsysteme und Schaltungsanordnung mit einer derartigen Einrichtung
DE3586651T2 (de) Echtzeit-software-monitor und schreibschutzsteuergeraet.
CH654943A5 (de) Pruefeinrichtung fuer mikroprogramme.
DE19648422A1 (de) Verfahren und Vorrichtung zum Implementieren eines echtzeitfähigen Steuerprogramms in einem nicht-echtzeitfähigen Betriebsprogramm
DE19847677C2 (de) Computer, Verfahren und Gerät zum Verhindern eines unautorisierten Zugriffs auf ein Computerprogramm
DE2414311A1 (de) Speicherschutzeinrichtung
DE69114328T2 (de) Überwachung von Mikroprozessoren.
EP0500973A1 (de) Initialisierungsroutine im EEPROM
DE69128908T2 (de) Verfahren zum Durchführen von erlässlichen Befehlen in einem Rechner
EP1805617A1 (de) Verfahren zur abarbeitung eines computerprogramms auf einem computersystem
EP1262856A2 (de) Programmgesteuerte Einheit
DE4406094C2 (de) Vorrichtung zum Betrieb einer Steuerungsanwendung
EP0048991A1 (de) Verfahren und Anordnung zur Behandlung von Unterbrechungsbedingungen während des Arbeitsablaufes in Datenverarbeitungsanlagen mit Mikroprogrammsteuerung
DE3700800C2 (de) Einrichtung zur Erzeugung eines Unterbrechungspunktes in einem Mikroprozessor
DE60010847T2 (de) Verfahren zur Fehlerbeseitigung in einem Thread-Programm
DD264533A1 (de) Verfahren zum erzeugen von nichtmaskierbaren interruptsignalen fuer testaufgaben in einem mikrorechner
EP1283471B1 (de) Programmgesteuerte Einheit
WO2016206847A1 (de) Verfahren und vorrichtung zum absichern einer programmzählerstruktur eines prozessorsystems und zum überwachen der behandlung einer unterbrechungsanfrage
EP2338111B1 (de) Verfahren und vorrichtung zum testen eines rechnerkerns in einer mindestens zwei rechnerkerne aufweisenden recheneinheit
DE102006004168A1 (de) Überprüfung eines Adressdecoders
EP0991995B1 (de) Unterbrechungsverfahren in einem computersystem mit unterbrechungssteuerung
DE102009000874A1 (de) Verfahren zur Verbesserung der Analysierbarkeit von Softwarefehlern in einem Mikrocontroller

Legal Events

Date Code Title Description
ENJ Ceased due to non-payment of renewal fee