DD297723A5 - Schaltungsanordnung zur programmunterbrechung - Google Patents

Schaltungsanordnung zur programmunterbrechung Download PDF

Info

Publication number
DD297723A5
DD297723A5 DD34416690A DD34416690A DD297723A5 DD 297723 A5 DD297723 A5 DD 297723A5 DD 34416690 A DD34416690 A DD 34416690A DD 34416690 A DD34416690 A DD 34416690A DD 297723 A5 DD297723 A5 DD 297723A5
Authority
DD
German Democratic Republic
Prior art keywords
signal
program
signal processor
input
interrupt
Prior art date
Application number
DD34416690A
Other languages
English (en)
Inventor
Andre Rompe
Ralf Leuschner
Lothar Hausfeld
Rainer Busch
Original Assignee
Adw Der Ddr,Institut Fuer Automatisierung,De
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 Adw Der Ddr,Institut Fuer Automatisierung,De filed Critical Adw Der Ddr,Institut Fuer Automatisierung,De
Priority to DD34416690A priority Critical patent/DD297723A5/de
Publication of DD297723A5 publication Critical patent/DD297723A5/de

Links

Landscapes

  • Microcomputers (AREA)

Abstract

Gegenstand der Erfindung ist eine Schaltungsanordnung zur Unterbrechung des von einem Signalprozessor abgearbeiteten Programms in einem Entwicklungssystem, bestehend aus einem Wirtsrechner und einem Signalprozessor-Entwicklungsmodul, unter Beibehaltung des Prozessorzustandes, verwendbar zur Entwicklung von Geraeten mit einer durch Signalprozessoren gestuetzten Signalverarbeitung. Die erfindungsgemaesze Schaltungsanordnung besteht aus einem Unterbrechungsstatusregister 1, bestehend aus einem UND-Gatter 4 und einem Latch 5, einem ein NAND-Gatter 6 und ein RS-Flipflop 7 enthaltenden Programmstatusdekoder 2 und einer Synchronisatorschaltung 3, welche ein ODER-Gatter 8 und ein UND-Gatter 9 enthaelt. Figur{Entwicklungssystem; Wirtsrechner; Signalprozessor; Programmunterbrechung; Unterbrechungsstatusregister; Programmstatusdekoder; Synchronisatorschaltung}

Description

Anwendungsgebiet der Erfindung
Die Erfindung betrifft eine Schaltungsanordnung zur Programmunterbrechung, insesondere zur Anwendung in Entwicklungssystemen für Signalprozessoren. Entwicklungssysteme für Signal- bzw. Mikroprozessoren werden zur Entwicklung und Erprobung von Mikrorechnerkonfigurationen und deren Software in allen Bereichen der Industrie und Technik eingesetzt. Programmunterbrechungen sind für die Programmtestung zur Suche und Beseitigung von Fehlerursachen von großer Bedeutung.
Charakteristik des bekannten Standes der Technik Ein Signalprozessorentwicklungssystem besteht bekanntermaßen aus einem Wirtsrechner zur Bedienung und Steuerung des Systems und einer über ein Kommunikationsinterface angekoppelten Signalprozessorbaugruppe. Diese wird als Entwicklungsmodul oder Modul bezeichnet. Das Kernstück des Moduls ist der Signalprozessor, dessen Busse mit Programm- und Datenspeichern über Treiberschaltkreise
verbunden sind. Die Kopplung der Signalprozessorbusse mit dem Wirtsrechner erfolgt über ein Schreib-Leseport für den
Da: inbus sowie über einen durch den Wirtsrechner setzbaren Adreßzähler mit entsprechenden Treibern zur Entkopplung zum
getri 'ienen Prozessoradreßbus. Die Kommunikation zwischen Wirtsrechner und Modul erfolgt durch direkten Speicherzugriff.
Über ein Steuerport auf dem Modul kontrolliert der Wirtsrechner die Betriebsart des Moduls und des Signalprozessors. In der prozessorinaktiven Betriebsart kann der Wirtsrechner die RAM-Speicher des Moduls lesen und beschreiben. In der Regel
werden dabei der Programm- und Datenspeicher mit einem abzuarbeitenden Programm bzw. mit Daten geladen. Ebenso wirdgrundsätzlich in einen reservierten Teil des Programmspeichers ein Dienstprogramm eingeschrieben, das notwendig ist, um mit
Hilfe des Signalprozessors selbst die gewünschten Fehlersuchfunktionen durchzuführen. Entscheidende Voraussetzung dafür
ist die Abbildung des vollständigen und unverfälschten Signalprozessorzustandes im Wirtsrechner.
Dazu wird das Dienstprogramm des Signalprozessors benutzt, welches am Ende der prozessoraktiven Betriebsperiode den Prozessorzustand in einen reservierten Teil des Datenspeichers ablegt, auf den der Wirtsrechner nach dem Umschalten der Betriebsart zugreifen kann. Während der prozessoraktiven Betriebsperioda steuert der Signalprozessor die Speicher des Moduls und arbeitet das
vorhandene Programm ab. Zu Beginn der Prozessorarbeit wird grundsätzlich der Prozessorzustand mit Hilfe des
Dienstprogramms mit dem u. U. durch Wirtsrechnerzugriff veränderten Abbild des Prozessorzustandes im Datenspeicher in Einklang gebracht. Für die Programmtestung mittels Schrittbetrieb und Unterbrechungspunkt werden an definierten Stellen im Programm während der prozessorinaktiven Betriebsart unbedingte Sprünge zum Dienstprogramm durch den Wirtsrechner
eingeschrieben, um die Abbildung des Prozessorzustandes zum Zeitpunkt des Sprungs zu gewährleisten.
Die Unterbrechung eines laufenden Programms zu einem vorher nicht definierbaren Zeitpunkt, z. B. durch den Bediener des Wirtsrechners, ist nicht durch das vorherige Einschreiben eines unbedingten Sprungbefehls während der prozessorinaktiven Betriebsart möglich. Diese Funktion der willkürlichen Programmunterbrechung läßt sich auf der Grundlage eines
nichtmaskierbaren Interrupts auf bekannte Art und Weise realisieren.
Bei Prozessoren ohne nichtmaskierbaren Interrupt ergeben sich Probleme bei der Realisierung der Unterbrechungsfunktion. Die Nutzung eines maskierbaren Interrupts ist nicht zulässig, denn sie versagt stets, wenn der Interrupt des Signalprozessors
gesperrt ist.
Ebenso ist die Nutzung des Prozessor-Resets ungeeignet, denn dabei wird der Zustand des Signalprozessors verändert. Ziel der Erfindung
Ziel der Erfindung !st es, eine Schaltungsanordnung zur Programmunterbrechung vorzuschlagen, mit der in einem Entwicklungssystem die Möglichkeit geschaffen wird, den Prozessorzustand nach einer willkürlichen Unterbrechung eines laufenden Programms unverändert und vollständig darzustellen und die Programmbearbeitung wieder fortzusetzen.
Darlegung des Wesens der Erfindung Der Erfindung liegt die Aufgabe zugrunde, eine Schaltungsanordnung zur Programmunterbrechung zu einem willkürlichen Zeitpunkt zu entwickeln, mit der der gesamte Prozessorzustand unverändert im Wirtsrechner dargestellt werden kann, ohne den Prozessorzustand zu verändern. Erfindungsgemäß wird die Aufgabe durch eine Schaltungsanordnung gelöst, in der der Adreßbus ADBUS des Signalprozessors
an den Dateneingang des Unterbrechungsstatusregisters geführt ist.
Ausgewählte Signale des Steuerbusses COBUS des Signalprozessors sind mit dem Steuereingang des Unterbrechungsstatusregisters verbunden, an dessen Datenausgang das Statusausgangssignal des Moduls BREAD als Unterbrechungsprogrammadresse an den Wirtsrechner ausgegeben wird. Die Unterbrechungsprogrammadresse ist so beschaffen, daß der Wert des Programmzählers zum Zeitpunkt der Unterbrechung
daraus ermittelbar ist.
Der Datenausgang des Programmstatusdekoders, der das Zustandssignal PRINT zur Kennzeichnung einer internen Programmabarboiiung durch den Signalprozessor liefert, ist mit dem ersten Steuereingang der Synchronisatorschaltung
verbunden. Ausgewählte Signale des Steuerbusses COBUS des Signalprozessors sind an den Steuereingang des
Programmstatusdekcders geführt. An den zweiten Steuereingang der Synchronisatorschaltung ist das erste Steuereingangssignal des Moduls IBREXT geführt,
welches in der Synchronisatorschaltung mit dem Zustandssignal PRINT so synchronisiert wird, daß ein am Datenausgang der
Synchronisatorschaltung erscheinendes erstes Steuersignal des Signalprozessors, das Unterbrechungssignal IHOLD, das
Signalprozessorprogramms sowohl ausschließlich extern auf das Signal IBREXT als auch unmittelbar durch das am dritten Steuereingang der Synchronisatorschaltung angeschlossene zweite Steuereingangssignal des Moduls IHOLD hin unterbricht.
Erfindungsgemäß besteht das Unterbrechungsstatusregister aus einem UND-Gatter und einem Latch, wobei auf den ersten bzw. zweiten Eingang des UND-Gatters ein zweites bzw. drittes Steuersignal des Signalprozessors, das Unterbrechungsquittungssignal IHOLDA bzw. das Taktsignal CLKOUT 2, geführt ist. Der Dateneingang des Unterbrechungsstatusregisters ist mit dem des Latches identisch. Es besteht eine Verbindung zwischen dem Ausgang des UND-Gatters und dem Steuereingang des Latches, wobei dessen Datenausgang gleichzeitig den Datenausgang des Unterbrechungsstatusregisters und den Statusausgang des Moduls bildet.
Das Latch wird durch das Ausgangssignal des UND-Gatters zu einem Zeitpunkt getriggert, welcher sich infolge der konjunktiven Verknüpfung des Taktsignals CLKOUT 2 und des Unterbrechungsquittungssignals IHOLDA inmitten der Zeitperiode befindet, in der der vor dem Erreichen des prozessorinaktiven Zustands durch den Signalprozessor zuletzt ausgegebene Speicheradreßwert Gültigkeit besitzt.
Der Programmstatusdekoder besteht erfindungsgemäß aus einem NAND-Gatter mit fünf Eingangen, an denen das erste, dritte sowie vierte bis sechste Steuersignal des Signalprozessors, das Taktsignal CLKOUT 2, das Unterbrechungssignal IHOLD und die Zugriffssignale IJS, IDS, IPS angeschlossen sind, und aus einem RS-Flipflop.
Bei Setzeingang des RS-Flipflop ist mit dem Ausgang des NAND-Gatters verbunden, sein Rücksetzeingang mit dem sechsten Steuersignal des Signalprozessors. Der Ausgang des RS-Flipflops bildet den Datenausgang des Programmstatusdekoders und führt damit das Zustandssignal PRINT. Der Programmstatusdekoder zeichnet sich dadurch aus, daß das RS-Fiipflop dann gesetzt wird und damit eine interne Signalprozessorarbeit anzeigt, wenn alle drei Zugriffssignale IJS, IDS, IPS gleichzeitig keinen Zugriff des Signalprozessors auf externe Datenmittel nachweisen und das Taktsignal CLKOUT 2 die Zeitperioden, innerhalb der diese Zugriffssignale Gültigkeit besitzen, auswählt, sowie das Unterbrechungssignal IHOLD noch nicht aktiviert worden ist. Das Rücksetzen des RS-Flipflops erfolgt zum Beginn jedes externen Befehlsr.olezyklusses durch das aktive Zugriffssignal IPS.
Erfindungsgemäß besteht die Synchronisatorschaltung aus einem ODER-Gatter, dessen erster bzw. zweiter Eingang mit dem ersten bzw. zweiten Steuereingang der Synchronisatorschaltung identisch ist, und aus einem UND-Gatter, dessen erster Eingang mit dem Ausgang des ODER-Gatters verbunden ist.
An den zweiten Eingang des UND-Gatters ist der dritte Steuereingang der Synchronisatorschaltung geführt. Das Ausgangssignal des UND-Gatters bildet den Datenausgang der Synchronisatorschaltung.
Die Synchronisatorschaltung ist so beschaffen, daß das Unterbrechungssignal IHOLD sowohl unmittelbar durch das zweite Steuereingangssignal vom Wirtsrechner, IHOLDP, über das UND-Gatter als auch disjunktiv durch das gleichzeitig aktive erste Steuereingangssignal vom Wirtsrechner, IBREXT, und das inaktive Zustandssignal PRINT, welches eine externe Arbeit des Signalprozessors anzeigt, über das ODER-Gatter aktiviert wird.
Die erfindungsgnmäße Schaltungsanordnung sieht also vor, daß dem laufenden Signalprozessorprogramm ein unbedingter Sprung zum Dienstprogramm aufgepi ägt wird, indem ein entsprechender Befehl, anstelle des an der Unterbrechungsstelle zu erwartenden Befehls, vom Prozessor gelesen wird. Die Nutzung eines Sprungbefehls garantiert, im Gegensatz zu einem Unterprogrammaufruf, die Beibehaltung der untersten Ebene des Hardwarestacks. Dies erfordert technische Mittel zur Feststellung der aktuellen Programmadresse, des Programnuählerwertes zum Zeitpunkt der Unterbrechung, da dieser nicht aus einer im Stack abgelegten Unterprogrammrückkehradresse ermittelt werden kann.
Digitale Signalprozessoren besitzen nicht notwendigerweise dem Anwender zugängliche Synchronisationssignale, mit deren Hilfe der Beginn einer Befehlsabarbeitung eindeutig bestimmt werden kann.
Somit besteht keine Möglichkeit, einen unbedingten Sprungbefehl während der Programmabarbeitung zwangsweise auf den Datenbus stets zum richtigen Zeitpunkt zu legen, da erstens zwischen Lesezugriffen auf die einzelnen Programmdatenworte eines Befehls und zweitens zwischen Befeh.'slese- und Datentransportlesezyklen unterschieden werden muß.
Einen Ausweg bietet die Nutzung des vorhandenen Prozessoreingangssignals IHOLD, mit dem der Signalprozessor zwischen dem aktiven und inaktiven Betriebszustand umgeschaltet wird und das ohnehin zur Realisierung des direkten Speicherzugriffs für die Kommunikation zwischen Wirtsrechner und Modul notwendig ist.
Wird der Prozessor durch dieses Signal angehalten, so arbeitet er den gerade laufenden Befehl vollständig ab und quittiert den Stop erst nach einer gewissen befehlsabhängigen Verzögerung mit dem Prozessorausgangssignal IHOLDA. Dies bedeutet, daß damit in der prozessorinaktiven Betriebsart ein befehlssynchroner Zustand besteht, der dazu genutzt werden kann, den unbedingten Sprung zum Dienstprogramm aufzuprägen. Dazu bestehen grundsätzlich zwei Möglichkeiten. Erstens: Der Sprungbefehl wird nach der erneuten Prozesoraktivierung an geeigneter und jetzt bekannter zeitlicher Position zum Neustart während der Programmabarbeitung zwangsweise auf den Datenbus gelegt. Zweitens: Der Sprungbefehl wird vor der erneuten Prozessoraktivierung an geeigneter und jetzt bekannter Adreß-Position zum bei der Unterbrechung durch den Wirtsrechner festgestellten Programmzählerwert in den Programmspeicher geschrieben. Die ursprünglichen, überschriebenen Programmdatenworte sind zwischenzuspeichern, um nach der Desaktivierung des Dienstprogramms den Sprungbefehl im Speicher zu lösen. Die zweite Lösungsmöglichkeit kommt ohne zusätzlichen Schaltungsaufwand für diese Aufgabe, allein unter Nutzung der vorhandenen Kommunikation zwischen Wirtsrechner und Modul aus. Die weitgehende Nutzung des Wirtsrechners zur Durchführung der willkürlichen Programmunterbrechung ergibt sich auch aus der Tatsache, daß infolge des Pipelinings der Prozessorfunktionen, sich das erste Programmdatenwort des nach der Prozessoraktivierung abzuarbeitenden Befehls bereits im Befehlsregister des Signalprozessors befindet, also schon vom Prozessor gelesen wurde und demzufolge dieser nächste Befehl unverändert abgearbeitet werden muß und danach erst der Sprung zum Dienstprogramm erfolgen kann.
Dies macht in jedem Fall eine Interpretation dieses aktuellen Befehls notwendig, die am einfachsten vom Wirtsrechner ausgeführt werden kann.
Ist diese Befehlsinterpretation aufgrund fehlender Informationen über den unbekannten Prozessorzustand unmöglich, was am aktuellen Befehl erkannt wird, vor dem zufällig angehalten wurde, kann durch ein nochmaliges kurzzeitiges Aktivieren des Signalprozessors ein erneuter und mit hoher Wahrscheinlichkeit erfolgreicher Interpretationsversuch durchgeführt werden.
Ein ähnliches Problem besteht, wenn der Prozessor bei der Abarbeitung eines im internen Prozessor-RAM befindlichen Programms angehalten wurde und somit die Einführung des unbedingten Sprungsbefehles unmöglich ist. Dieser Zustand kann a priori vermieden werden durch entsprechende Schaltungstechnik, die das Unterbrechungssignal v/ahlweise erst bei externer Programmabarbeitung aktiviert.
AusfOhrungsbeisplol
Die Erfindung soll nachstehend anhand eines Ausführungsbeispiels sowie einer Figur näher erläutert werden. Die Figur zeigt das Block-Schaltbild der erfindungsgemäßen Lösung zur Programmunterbrechung in einem Entwicklungssystem für den Signalprozessor U 320C20. Die verschiedenen Hauptbestandteile des Signalprozessorentwicklungsmoduls, wie der Signalprozessor, das Daten- und das Programm-RAM, Steuer- und Statusports usw. sind für das Verständnis der Schaltung nicht erforderlich und wurden daher nicht dargestellt.
Entsprechend der Figur werden das Unterbrechungsstatusregister 1, der Programmstatusdekoder 2 und die Synchronisatorschaltung 3 verwendet.
Der Adreßbus des Signalprozessors ADBUS ist dabei mit dem Dateneingang des Unterbrechungsstatusregisters 1 verbunden. Dem ersten Steuereingang des Unterbrechungsstatusregisters 1 wird das Unterbrechungsquittungssignal des Signalprozessors IHOLDA, dem zweiten Steuereingang des Unterbrechungsstatusregisters 1 wird ein Taktsignal des Signalprozessors CLKOUT 2 zugeführt, welches ebenfalls am ersten Steuereingang des Programmstatusdekoders 2 angeschlossen ist. Der zweite Steuereingang des Programmstatusdekoders 2 ist mit dem Unterbrechungssignal für den Signalprozessor IHOLD verbunden, der dritte, vierte bzw. fünfte Steuereingang des Programmstatusdekoders 2 ist mit den I/O-, Daten- bzw. Programmzugriffssignalen des Signalprozessors /IS, IDS, IPS verbunden und der Datenausgang des Programmstatusdekoders 2, welcher mit Hilfe des Zustandssignals PRINT die interne Programmabarbeitung anzeigt, ist an den ersten Steuereingang der Synchronisatorschaltung 3 geführt, deren zweiter und dritter Steuereingang mit dem ersten bzw. zweiten Steuereingangssignal des Moduls IBREXT und IHOLDP gespeist wird. Der Datenausgang der Synchronisatorschaltung 3 bildet das Unterbrechungssignal des Signalprozessors IHOLD.
Das Unterbrechungsstatusregister 1 ist so beschaffen, daß die Unterbrechungsadresse BREAD, welche am Ausgang des Unterbrechungsstatusregisters 1 für den Wirtsrechner zur Vorfügung gestellt wird, aus der vom Signalprozessor auf dem Adreßbus ADBUS vor dem Erreichen des prozessorinaktiven Zustandes zuletzt ausgegebenen Programm-Speicheradresse gewonnen wird, indem inmitten der Zeitperiode, in der dieser Adreßwert auf dem Bus Gültigkeit besitzt, dieser Wert gespeichert wird und während der gesamten anschließenden prozessorinaktiven Betriebsperiode dort unverändert erhalten bleibt. Hierfür besitzt das Unterbrechungsstatusregister 1 erfindungsgemäß ein UND-Gatter 4 und ein Latch 5 mit Adreßwortbreite, wobei der erste und zweite Steuereingang des Unterbrechungsstatusregisters 1 auf den ersten bzw. zweiten Eingang des UND-Gatters 4 geführt ist.
Der Dateneingang des Unterbrechungsstatusregist3rs 1 ist mit dem des Latches 5 identisch. Es besteht eine Verbindung zwischen dem Ausgang des UND-Gatters 4 und dem Steuereingang des Latches 5. Der Datenausgang des Latches 5 bildet gleichzeitig den Datenausgang des Unterbrechungsstatusregisters 1 und den Statusausgang des Moduls. Der Latch 5 wird durch die abfallende Flanke des Ausgangssignals des UND-Gatters 4 getriggert, welche sich infolge der konjunktiven Verknüpfung des Taktsignals des Signalprozossors CLKOUT 2 und des Unterbrechungsquittungssignals des Signalprozessors IHOLDA, dessen niedriger Pegel aktiv ist, inmitten der Zeitperiode befindet, in der der vor dem Erreichen des prozessorinaktiven Zustands durch den Signalprozessor zuletzt ausgegebene Speicheradreßwert Gültigkeit besitzt. Der Programmstatusdekoder 2 besteht aus einem NAND-Gatter 6, das fünf Eingänge besitzt, die dem ersten bis fünften Steuereingang des Programmstatusdekoders 2 entsprechen und einem RS-Flipflop 7, dessen Setzeingang mit dem Ausgang des NAND-Gatters 6 sowie dessen Rücksetzeingang mit dem fünften Steuereingang des Programmstatusdekoders 2 verbunden ist. Der Ausgang des RS-Flipflops 7 bildet den Datenausgang des Programmstatusdekoders 2 und führt damit das Zustandssignal PRINT. Der Programmstatusdekoder 2 zeichnet sich dadurch aus, daß das RS-Flipflop 7 dann gesetzt wird, und damit eine interne Signalprozessorarbeit anzeigt, wenn alle drei Signalprozessorzugriffssignale /IS, IDS und IPS gleichzeitig durch einen hohen Signalpegel keinerlei Zugriff des Signalprozessors auf externe Datennrv.tel, wie I/O-Port, Daten- und Programmspeicher nachweisen und das Taktsignal des Signalprozessors CLKOUT 2 mit einem hohen Signalpegel die Zeitperioden innerhalb der diese Zugriffssignale Gültigkeit besitzen auswählt, sowie das Unterbrechungssignal des Signalprozessors IHOLD noch nicht durch einen niedrigen Pegel aktiviert worden ist. Das Rücksetzen des RS-Flipflop 7 erfolgt beim Beginn eines jeden externen Befehlsholezyklusses durch das aktive Zugriffssignal IPS.
Die Synchronisatorschaltung 3 besteht aus einem ODER-Gatter 8, dessen erster bzw. zweiter Eingang mit dem ersten bzw. zweiten Steuereingang der Synchronisatorschaltung 3 identisch ist und aus einem UND-Gatter 9, dessen erster Eingang mit dem Ausgang des ODER-Gatters 8 verbunden ist, an dessen zweitem Eingang der dritte Steuereingang der Synchronisatorschaltung 3 geführt ist und dessen Ausgangssignal den Datenausgang der Synchronisatorschaltung 3 bildet. Die Synchronisatorschaltung 3 ist so beschaffen, daß das Unterbrechungssignal des Signalprozessors IHOLD sowohl unmittelbar durch einen aktiven niedrigen Pegel des zweiten Steuereingangssignals vom Wirtsrechner IHOLDP über das UND-Gatter 9 als auch disjunktiv durch einen gleichzeitig aktiven niedrigen Pegel des ersten Steuereingangssignals vom Wirtsrechner IBREXT und des Zustandssignals PRINT, welches eine externe Arbeit des Signalprozessors anzeigt, über das ODER-Gatter 8 aktiviert wird.
Somit ist es mit Hilfe der dargestellten Schaltungsanordnung möglich, eine willkürliche Programmunterbrechung ausschließlich während externer Prozessorarbeit durchzuführen, sofern diese existiert, indem das erste Steuereingangssignal des Moduls IBREXT vom Wirtsrechner im ersten Schritt aktiviert wird. Nach erfolgreicher Unterbrechung des externen Programmlaufes kann im zweiten Schritt aus der Unterbrechungsprogrammadresse BREAD die Programmadresse bestimmt werden, auf die der unbedingte Sprung in das Dienstprogramm geschrieben und aus dem der Wert des Programmzähleis gesichert werden kann. Im dritten Schritt wird der Signalprozessor durch den Wirtsrechner reaktiviert und der Sprung in das Dienstprogramm erfolgt. Im vierten Schritt wird der Signalprozessor direkt durch Aktivierung des zweiten Steuereingangssignals des Moduls IHOLDP vom Wirtsrechner, diesmal definiert im Di .nstprogramm, angehalten, und der in das Programm eingeschriebene Sprung wird gelöscht.

Claims (4)

1. Schaltungsanordnung zur Programmunterbrechung, insbesondere für die Anwendung in einem Signalprozessor-Entwicklungssystem, bestehend aus einem Wirtsrechner und einem Signalprozessor-Entwicklungsmodul und unter Verwendung eines Unterbrechungsstatusregisters (1), eines Programmstatusdekoders (2) und einer Synchronisatorschaltung (3), gekennzeichnet dadurch, daß
- der Adreßbus ADBUS des Signalprozessors an den Dateneingang des Unterbrechungsstatusregisters (1) geführt ist und ausgewählte Signale des Steuerbusses COBUS des Signalprozessors mit dem Steuereingang des Unterbrechungsstatusregisters (1) verbunden sind, wobei am Datenausgang des Unterbrechungsstatusregisters (1) das Statusausgangssignal des Moduls BREAD als Unterbrechungsprogrammadresse an den Wirtsrechner ausgegeben wird, welche so beschaffen ist, daß der Wert des Programmzählers zum Zeitpunkt der Unterbrechung daraus ermittelbar ist;
- der Datenausgang des Programmstatusdekoders (2), der das Zustandssignal PRINT zur Kennzeichnung einer internen Programmabarbeitung durch den Signalprozessor liefert, mit dem ersten Steuereingang t Synchronisatorschaltung (3) verbunden ist und ausgewählte Signale des Steuerbusses COBUS des Signalprozessors an den Steuereingang des Programmstatusdekoders (2) geführt sind;
- an den zweiten Steuereingang der Synchronisatorschaltung (3) das erste Steuereingangssignal des Moduls IBREXT geführt ist, welches in der Synchronisatorschaltung (3) mit dem Zustandssignal PRINT synchronisiert wird, daß an den Datenausgang der Synchronisatorschaltung (3) ein erstes Steuersignal des Signalprozesscrs, das Unterbrechungssignal IHOLD geführt ist, das das Signalprozessorprogramm sowohl ausschließlich extern auf das Signal IBREXT hin als auch unmittelbar durch das an den dritten Steuereingang der Synchronisatorschaltung (3) angeschlossene zweite Steuereingangssignal des Moduls IHOLDP hin unterbricht.
2. Schaltungsanordnung zur Programmunterbrechung nach Anspruch 1, gekennzeichnet dadurch, daß
- das Unterbrechungsstatusregister (1) aus einem UND-Gatter (4) und einem Latch (5) besteht, wobei auf den ersten bzw. zweiten Eingang des UND-Gatters (4) ein zweites bzw. drittes Steuersignal des Signalprozessors, das Unterbrechungsquittungssignal IHOLDA bzw. das Taktsignal CLKOUT 2, geführt ist und der Dateneingang des Unterbrechungsstatusregisters (1) mit dem des Latches (5) identisch ist und eine Verbindung zwischen dem Ausgang des UND-Gatters (4) und dem Steuereingang des Latches (5) besteht, wobei der Datenausgang des Latches (5) gleichzeitig den Datenausgang des Unterbrechungsstatusregisters (1) und den Statusausgang des Moduls bildet.
3. Schaltungsanordnung zur Programmunterbrechung nacn Anspruch 1, gekennzeichnet dadurch, daß
- der Programmstatusdekoder (2) aus einem NAND-Gatter (6), das fünf Eingänge besitzt, an denen das erste, dritte sowie ein viertes bis sechstes Steuersignal des Signalprozessors, das Taktsignal CLKOUT 2, das Unterbrechungssignal IHOLD und die Zugriffssignale /IS, IDS sowie IPS angeschlossen sind und einem RS-Flipflop (7) besteht, dessen Setzeingang mit dem Ausgang des NAND-Gatters (6) verbunden ist und dessen Rücksetzeingang mit dem sechsten Steuersignal des Signalprozessors verbunden ist, wobei der Ausgang des RS-Flipflops (7) den Datenausgang des Programmstatusdekoders (2) bildet und damit das Zustandssignal PRINT führt.
4. Schaltungsanordnung zur Programmunterbrechung nach Anspruch 1, gekennzeichnet dadurch, daß
- die Synchronisatorschaltung (3) aus einem ODER-Gatter (8), dessen erster bzw. zweiter Eingang mit dem ersten bzw. zweiten Steuereingang der Synchronisatorschaltung (3) identisch ist und aus einem UND-Gatter (9) besteht, dessen erster Eingang mit dem Ausgang des ODER-Gatters (8) verbunden ist, an dessen zweiten Eingang der dritte Steuereingang der Synchronisatorschaltung (3) geführt ist und dessen Ausgangssignal den Datenausgang der Synchronisatorschaltung (3) bildet.
Hierzu 1 Seite Zeichnung
DD34416690A 1990-09-24 1990-09-24 Schaltungsanordnung zur programmunterbrechung DD297723A5 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DD34416690A DD297723A5 (de) 1990-09-24 1990-09-24 Schaltungsanordnung zur programmunterbrechung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DD34416690A DD297723A5 (de) 1990-09-24 1990-09-24 Schaltungsanordnung zur programmunterbrechung

Publications (1)

Publication Number Publication Date
DD297723A5 true DD297723A5 (de) 1992-01-16

Family

ID=5620517

Family Applications (1)

Application Number Title Priority Date Filing Date
DD34416690A DD297723A5 (de) 1990-09-24 1990-09-24 Schaltungsanordnung zur programmunterbrechung

Country Status (1)

Country Link
DD (1) DD297723A5 (de)

Similar Documents

Publication Publication Date Title
DE19531653C2 (de) Einchip-Mikroprozessor mit eingebauter Selbsttestfunktion
DE2523372C3 (de) Eingabe-/Ausgabe-Anschlußsteuereinrichtung
DE69435090T2 (de) Rechnersystem mit Steuereinheiten und Rechnerelementen
DE69930846T2 (de) Mehrkonfiguration-rückwand
EP0057756B1 (de) Anordnung zum Datenaustausch in parallel arbeitenden Multi-Mikrorechnersystemen
DE2948285C2 (de) Adressensteuereinrichtung für einen Datenprozessor
DE69909467T2 (de) Umschaltsverfahren zwischen mehreren systemprozessoren
DE3914265C2 (de)
DE4311441C2 (de) Verfahren zum Betreiben eines Mikroprozessors mit einem externen Anschluß
WO2006045804A1 (de) Verfahren und vorrichtung zur verzögerung von zugriffen auf daten und/oder befehle eines mehrprozessorsystems
CH654943A5 (de) Pruefeinrichtung fuer mikroprogramme.
DE3942669A1 (de) Virtuelles maschinensystem
DE4233569A1 (de) Informationsverarbeitungsgeraet
DE69726302T2 (de) Busschnittstellensteuerungsschaltung
DE4018481A1 (de) Mikroprozessor hold- und lock-schaltung
DE2461592C3 (de) Anordnung zur Durchführung von Wartungsoperationen bei einem Datenverarbeitungssystem
DE19900251B4 (de) Vorrichtung und Verfahren zum Steuern eines vielseitigen USB-Endpunktkanals
EP0048991B1 (de) Verfahren und Anordnung zur Behandlung von Unterbrechungsbedingungen während des Arbeitsablaufes in Datenverarbeitungsanlagen mit Mikroprogrammsteuerung
DE2350229A1 (de) Datenverarbeitungsanlage, insbesondere als steuereinrichtung fuer fernsprechvermittlungsanlagen
DE2336020B2 (de) Adressen-berechnungsschaltung fuer paritaetsfehler-korrekturprogramme
DE4010109C2 (de) Duplexrechnersystem
DE3911721A1 (de) Schaltung zur verzoegerten freigabe eines schreibvorganges in einen vorratsspeicher fuer ein zweifachbus-mikrocomputersystem
EP1398701A1 (de) Verfahren zur Ereignissynchronisation, insbesondere für Prozessoren fehlertoleranter Systeme
DE60300233T2 (de) Fehlertolerante Vorrichtung zur informationsverarbeitung
DE2918357A1 (de) Datenverarbeitungssystem

Legal Events

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