DE10004198C2 - System und Verfahren für eine intelligente Analysesonde - Google Patents
System und Verfahren für eine intelligente AnalysesondeInfo
- Publication number
- DE10004198C2 DE10004198C2 DE10004198A DE10004198A DE10004198C2 DE 10004198 C2 DE10004198 C2 DE 10004198C2 DE 10004198 A DE10004198 A DE 10004198A DE 10004198 A DE10004198 A DE 10004198A DE 10004198 C2 DE10004198 C2 DE 10004198C2
- Authority
- DE
- Germany
- Prior art keywords
- data
- signal
- computer system
- logic
- analysis
- 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 - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3177—Testing of logic operation, e.g. by logic analysers
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
Description
Die vorliegende Erfindung bezieht sich allgemein auf ein
System und ein Verfahren zum Bereitstellen von Intelligenz
für eine Analysesonde, die von Logikanalysatoren verwendet
wird. Insbesondere liefern die Vorrichtung und das Verfahren der
vorliegenden Erfindung das Neuerzeugen von Datensignalen für
eine Analyse von Datenleitungen, die von einem Computersystem
für andere Zwecke verwendet werden, durch einen
Logikanalysator.
Wie es in der Computertechnik und Softwaretechnik bekannt
ist, wird, wenn ein neues Computerhardware- und -software
system entwickelt wird, das System Fehler aufweisen. Folg
lich verwenden Entwickler von Hardware- und Software-Syste
men viele Techniken, die vorgesehen sind, um die Korrektheit
der Hardware und Software zu überprüfen und diese Fehler zu
diagnostizieren.
Eines der Geräte, die Entwickler häufig verwenden werden, um
eine Elektronik von Fehlern zu befreien (debug), ist ein Lo
gikanalysator. Die Verwendung von Logikanalysatoren ist nie
mals einfach gewesen. Eine der schwierigsten Aufgaben bei
der Verwendung eines Logikanalysators ist das Abtasten des
zu testenden Gerätes. Viele Logikanalysatorenhändler sind
diesem Problem begegnet, indem dieselben ein Zubehör bereit
stellen, das die Aufgabe des Verbindens des Logikanalysators
mit dem zu testenden Gerät (häufig einem Mikroprozessor)
vereinfacht. Diese Vorrichtung wird üblicherweise als "Ana
lysesonde" bezeichnet.
Analysesonden sind üblicherweise mit der zu testenden Vor
richtung oder dem zu testenden System mit einer Verbindung
verbunden, die alle gewünschten Signale auf einmal abtastet.
Der Benutzer verbindet dann mehrere Logikanalysatoradapter
kabel mit dem Logikanalysator und nicht zahlreiche einzelne
Sonden. Die Verwendung einer Analysesonde versieht den Be
nutzer ferner mit einer inversen Assemblierungsfunktionali
tät. Die inverse Assemblierungsfunktionalität besteht aus
dem Überwachen der Signale an dem Prozessor, um den Prozes
sorbefehlsfluß zu bestimmen. Dieser Prozessorbefehlsfluß
gibt exakt an, welche Befehle an dem Prozessor zu einem ge
gebenen Zeitpunkt verarbeitet werden. Die Prozessorbefehle
umfassen ferner Informationen darüber, auf welche Register
und Speicheradressen zugegriffen wird. Um die inverse Assem
blierungsfunktionalität zu erlangen, erfordern bestimmte Da
tensignale das Abtasten durch den Logikanalysator.
Da Mikroprozessorchipentwickler damit fortfahren, Periphe
rien in die Mikroprozessoren selbst zu integrieren, werden
Signale, die für eine inverse Assemblierungsfunktionalität
notwendig sind, weder zu Stiften des Gehäuses geführt, noch
mit anderen Signalen gemultiplext. Das Nichtherausführen der
Signale macht es für den Logikanalysator schwierig, die Sig
nale, die für eine inverse Assemblierung notwendig sind, in
eine Zerlegungsmnemotechnik umzuwandeln. Die Zerlegungsmne
motechnik besteht aus dem Aufbauen des Befehlssymbols, das
die Prozessorbefehle und -operationen, wie z. B. das "Addie
ren" (für eine Addition) und das "Subtrahieren" (für eine
Subtraktion), darstellen kann.
Ein üblicher Beispielfall, bei dem dies auftritt, ist das
Ersetzen einer oberen Adreßleitung durch eine Schreibfrei
gabe (d. h. Chipauswahl), wenn die Chipauswahl verwendet
wird. Der Logikanalysator benötigt alle Adreßleitungen, um
zu bestimmen, wo der Prozessor einen Code ausführt oder
Speicher liest oder schreibt. Falls der Mikroprozessor ein
Schreibfreigabe- (d. h. Chipauswahl-) Signal anstelle einer
oberen Adreßleitung aufweist, ist die inverse Assemblerfunk
tionalität nicht in der Lage, die Adressen zu bearbeiten,
die der Logikanalysator benötigt, um die inverse Assemblie
rung zu erzeugen. Zusätzlich ist der Benutzer nicht in der
Lage, bei dem Inversassembler die korrekte Adresse nachzu
schauen. Falls ein Benutzer wünscht, die korrekte Adresse
nachzuschauen, kann derselbe nicht die Schreibfreigabe-
(d. h. Chipauswahl-) Signale verwenden. Die Benutzer emp
finden dies als extrem unangenehm, da die Schreibfreigabe-
(d. h. Chipauswahl-) Signale direkt an das Hardwaresystem
gebunden sind.
Bisher mangelte es Softwareentwicklern an einem System und
einem Verfahren zum Neuerzeugen von Datensignalen für eine
Analyse durch einen Logikanalysator von Datenleitungen, die
von einem Zielsystemprozessor für andere Zwecke verwendet
werden.
Die DE 198 14 415 A1 beschreibt ein Logikanalyse-Untersystem
in einem Zeitscheibenemulator, das Signale rekonstruiert,
welche vorher von einem Compiler reduziert wurden, und wel
ches es einem Verwender ermöglicht, Zwischenstopps und
Trigger unter Verwendung dieser und anderer Signale des
emulierten Schaltkreises zu setzen. Das System besteht aus
einem Compiler und einer Hardware. Der Compiler compiliert
die zu emulierende Gestaltung und erzeugt Steueranweisungen
für die Hardware. Die Hardware empfängt von dem Emulator
während der Emulation erzeugte Signale. Das System rekon
struiert auf diese Weise vorher reduzierte, von dem Emulator
empfangene Signale, die vom Verwender zum Setzen der
Zwischenstopps und Trigger verwendet werden können.
Die Aufgabe der vorliegenden Erfindung besteht darin, ein
Verfahren zum Neuaufbauen von internen Datensignalen an
einem Computersystem für eine Analyse durch einen Logik
analysator und eine Neuaufbauvorrichtung
zum Erzeugen von internen Datensignalen für
ein Computersystem für eine Analyse durch einen Logikana
lysator zu schaffen, so daß die Untersuchung einer zu
testenden Vorrichtung für einen Entwickler unaufwendiger
wird.
Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1 und
eine Vorrichtung gemäß Anspruch 6 gelöst.
Die vorliegende Erfindung bezieht sich allgemein auf ein Sy
stem und ein Verfahren zum Neuerzeugen von internen Daten
signalen von externen Datenleitungen, die von einem Ziel
systemprozessor für andere Funktionen verwendet werden. Dies
ermöglicht, daß ein Logikanalysator Datensignale anzeigt,
die durch einen Zielprozessor eigentlich intern verwendet
werden. Der Datensignalneuaufbau verwendet die Chipauswahl-,
Adreß- und Datenleitungen des Zielprozessors, um die ge
wünschten internen Datensignale neu zu erzeugen. Dieser
Neuaufbau wird durchgeführt, so daß die gewünschten Daten
signale durch einen Logikanalysator berücksichtigt werden
können, falls der Zielprozessor die gewünschten Datensig
nalleitungen für andere Aufgaben als die gewünschte Datensignalübertragung
verwendet.
Die vorliegende Erfindung verwendet ferner ein System und
ein Verfahren, bei dem ein Emulationsmodul ermöglicht, daß
ein Benutzer die Analysesonde konfiguriert, um einen Daten
neuaufbau für eine Vielzahl von unterschiedlichen Ziel
systemprozessorkonfigurationen zu ermöglichen.
Andere Merkmale und Vorteile der vorliegenden Erfindung wer
den sich für einen Fachmann auf dem Gebiet aus der Unter
suchung der folgenden Zeichnungen und detaillierten Be
schreibung ergeben.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung
werden nachfolgend bezugnehmend auf die beiliegenden Zeich
nungen näher erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm des Logikanalysesystems, das den
Logikanalysator zeigt, der mit der Analysesonde
verbunden ist, die wiederum mit dem Zielsystem und
dem Emulationsmodul der vorliegenden Erfindung ver
bunden ist;
Fig. 2 ein Blockdiagramm des Logikanalysesystems, das
den Datenfluß zwischen dem Logikanalysator, der
Analysesonde, dem Zielsystem und dem Emulations
modul gemäß der vorliegenden Erfindung zeigt;
Fig. 3 ein Blockdiagramm des Logikanalysesystems der vor
liegenden Erfindung, das die Elemente der Analyse
sonde zusammen mit Datenleitungsverbindungen dar
stellt;
Fig. 4 ein Flußdiagramm des Verfahrens zum Durchführen des
Analyseprozesses für das Logikanalysesystem, wie es
in Fig. 1, 2 und 3 gezeigt ist;
Fig. 5 ein Flußdiagramm des Prozesses, der die Analyseson
de mit dem Zielsystem verbindet, wie es in Fig. 4
gezeigt ist;
Fig. 6 ein Flußdiagramm des Prozesses, der den Prozessor
typ des Zielsystems bestimmt, wie es in Fig. 5 ge
zeigt ist;
Fig. 7 ein Flußdiagramm des Prozesses, der das Emulations
modulkonfigurationsregister lädt, wie es in Fig. 4
gezeigt ist;
Fig. 8 ein Flußdiagramm des Prozesses, der die Zielprozes
sorkonfigurationsdaten zu der Analysesonde herun
terlädt, wie es in Fig. 4 und 7 gezeigt ist;
Fig. 9 ein Flußdiagramm des Prozesses, der die Datenneu
aufbaudatenabbildung in der Analysesonde erzeugt,
um einen Datenneuaufbau zu ermöglichen, wie es in
Fig. 4 gezeigt ist;
Fig. 10 ein Flußdiagramm des Prozesses, der den Teilsatz
der Emulationsmodulregister in die Analysesonde
lädt, wie es in Fig. 9 gezeigt ist.
Die Erfindung wird nun bezugnehmend auf die Zeichnungen be
schrieben, bei denen bei allen mehreren Ansichten gleiche
Bezugszeichen entsprechende Bauteile anzeigen. Obwohl die
Erfindung in Verbindung mit diesen Zeichnungen beschrieben
wird, ist es nicht beabsichtigt, die Erfindung auf das Aus
führungsbeispiel oder die Ausführungsbeispiele, die in den
selben offenbart sind, zu begrenzen. Im Gegenteil ist es be
absichtigt, alle Alternativen, Modifikationen und Äquivalen
te zu umfassen, die in dem Schutzbereich der Erfindung um
faßt sind, der durch die anhängigen Patentansprüche defi
niert ist.
In Fig. 1 ist das Logikanalysesystem 10 der vorliegenden
Erfindung dargestellt. Ein herkömmlicher Logikanalysator 11
und ein herkömmliches Zielsystem 14 weisen allgemein einen
Prozessor (nicht gezeigt) und einen Speicher (nicht gezeigt)
auf, der entweder ein üblicher Typ oder eine Kombination der
üblichen Typen von Speichern, wie beispielsweise ein lösch
barer programmierbarer Nurlesespeicher (EPROM), ein elektro
nisch löschbarer programmierbarer Nurlesespeicher (EEPROM),
ein Flash-Speicher, ein programmierbarer Nurlesespeicher
(PROM), ein Direktzugriffspeicher (RAM), ein Nurlesespeicher
(ROM), ein Flash-Speicher, ein dynamischer Direktzugriff
speicher (DRAM), ein statischer Direktzugriffspeicher
(SRAM), ein Systemspeicher oder ein nicht-flüchtiger
Speicher, wie z. B. Festplatten, Bandlaufwerke, CD-Nurlese
speicher- (CD-ROM-) Laufwerke, Magnetbänder oder Kassetten,
usw., mit einem Betriebssystem (nicht gezeigt) sein kann,
ist aber nicht auf dieselben begrenzt. Der Prozessor emp
fängt einen Programmcode (nicht gezeigt) und Daten (nicht
gezeigt) von dem Speicher über eine lokale Schnittstelle,
d. h. einen oder mehrere Busse (nicht gezeigt). Die Richtung
von dem Benutzer kann unter Verwendung einer oder mehrerer
Eingabevorrichtungen, wie z. B. einer Maus (nicht gezeigt)
und einer Tastatur (nicht gezeigt), signalisiert werden. Die
eingegebenen Aktionen und ausgegebenen Ergebnisse werden auf
dem Anzeigegerät (nicht gezeigt) angezeigt.
Ein herkömmliches Emulationsmodul 12 weist einen Prozessor
(nicht gezeigt) und einen Speicher (nicht gezeigt) auf, der
entweder einer der üblichen Typen von Speicher oder eine
Kombination derselben sein kann, wie z. B. ein löschbarer
programmierbarer Nurlesespeicher (EPROM), ein elektronisch
löschbarer programmierbarer Nurlesespeicher (EEPROM), ein
Flash-Speicher, ein programmierbarer Nurlesespeicher (PROM),
ein Direktzugriffspeicher (RAM), ein Nurlesespeicher (ROM),
ein Flash-Speicher, ein dynamischer Direktzugriffspeicher
(DRAM), ein statischer Direktzugriffspeicher (SRAM), ein
Systemspeicher oder ein nicht-flüchtiger Speicher, usw., mit
einem Betriebssystem (nicht gezeigt), ist aber nicht auf
dieselben begrenzt. Der Prozessor empfängt einen Programm
code (nicht gezeigt) und Daten von dem Speicher über eine
lokale Schnittstelle, d. h. einen Bus (nicht gezeigt).
Das Emulationsmodul 12 ist mit der Analysesonde 13 verbun
den. Das Emulationsmodul 12 läßt einen Benutzer die einge
bauten Hintergrundfehlerbeseitigungsmerkmale des Prozessors
des Zielsystems 14 einschließlich der Ablaufsteuerung und
des Zugriffs auf die Register und den Speicher verwenden.
Ein Quellendebugger auf hoher Ebene bzw. eine Quellenfeh
lerbeseitigungseinrichtung auf hoher Ebene kann das Emula
tionsmodul 12 verwenden, um Fehler des Codes, der in dem
Zielsystem 14 läuft, zu beseitigen. Das Emulationsmodul 12
kann mit der Analysesonde 13 direkt verbunden sein, oder
kann mit einem Fehlerbeseitigungstor (nicht gezeigt) an dem
Zielsystem 14 verbunden sein.
Die Analysesonde 13 verbindet den Logikanalysator 11 und das
Zielsystem 14, um Daten für eine Status- und Zeiteintei
lungs-Analyse zu liefern, wie es im Stand der Technik be
kannt ist. Die Analysesonde 13 kann in Verbindung mit dem
Emulationsmodul 12 oder als eine Stand-Alone-Komponente
(losgelöste Komponente), die den Logikanalysator 11 und das
Zielsystem 14 verbindet, verwendet werden. Das Zielsystem 14
kann jeglicher Typ von Computersystem sein, das eine Verar
beitungs-, Steuerungs- oder Logik-Vorrichtung enthält. Bei
spiele sind ein Mikroprozessor, eine Zentralverarbeitungs
einheit (CPU), ein programmierbares Gate-Array, eine pro
grammierbare Logik, usw.
In Fig. 1 ist ferner gezeigt, daß die Verbindungen zwischen
dem Logikanalysator 11, dem Emulationsmodul 12, der Analyse
sonde 13 und dem Zielsystem 14 bidirektionale Leitungsver
bindungen sind. Diese Verbindungen können von jeglichem Ver
bindungstyp sein, beispielsweise serielle, parallele, op
tische oder andere geeignete Verbindungen, sind aber nicht
auf dieselben begrenzt.
Die Kombination der Analysesonde 13, des Emulationsmoduls 12
und des Logikanalysators 11 ermöglicht es, daß der Benutzer
die Prozessoraktivität auf einem Zielsystem 14 sowohl steu
ern als auch nachverfolgen kann. Die Analysesonde 13 führt
dem Logikanalysator 11 Signale von dem Zielprozessor (nicht
gezeigt) zu. Es sind Konfigurationsdateien vorhanden, die in
dem Logikanalysator 11 aufgebaut werden, um diese Ziel
systemprozessorsignale korrekt zu interpretieren.
Das Emulationsmodul 12 ermöglicht es, daß der Benutzer einen
Debugger oder eine Emulationssteuerungsfunktionalität ver
wendet, um das Zielsystem 14 für ein Herunterladen des Pro
grammcodes zu konfigurieren und zu steuern. Das Emulations
modul 12 liefert ferner eine Datenneukonfigurierung der Ana
lysesonde 13 unter Verwendung der Konfigurierungsmerkmale
des Emulationsmodules 12. Die Konfigurierung kann in einer
Vielzahl von unterschiedlichen Verfahren durchgeführt wer
den. Bei einem Ausführungsbeispiel ermöglicht das Neukon
figurieren der Analysesonde das Verwenden eines Systemde
buggers. Ein weiteres Ausführungsbeispiel, um die Analyse
sonde 13 zu konfigurieren, um mit der Konfiguration des
Zielsystems 14 übereinzustimmen, verwendet eine manuelle
Eingabe der Konfigurationsdaten des Zielsystems 14 in das
Emulationsmodul 12.
In Fig. 2 ist das Logikanalysesystem 10 der vorliegenden Er
findung und insbesondere die neukonfigurierbare Programm
logik 30 des bevorzugten Ausführungsbeispiels dargestellt.
Die neukonfigurierbare Programmlogik 30 innerhalb der Prüf
sonde 13 liefert die Fähigkeit für die Analysesonde 13, die
Datensignale, die von dem Zielsystem 14 erhalten werden, für
eine Übertragung zu dem Logikanalysator 11 neuaufzubauen
oder neu zu konfigurieren. Die neukonfigurierbare Programm
logik 30 der vorliegenden Erfindung wird hierin detailliert
bezugnehmend auf Fig. 3 bis 9 erklärt.
In Fig. 2 sind ferner die Konfigurationsdateien 21 gezeigt,
die in dem Logikanalysator 11 untergebracht sind. Diese Konfigurationsdateien
ermöglichen es dem Logikanalysator 11,
jeglichen Typ von Signalen, die über die Analysesonde 13 von
dem Prozessor an dem Zielsystem 14 empfangen werden, zu ent
schlüsseln.
In Fig. 3 sind ein Blockdiagramm des Logikanalysatorsystems
10 und insbesondere die Komponenten der Logikanalysesonde 13
der vorliegenden Erfindung dargestellt. Das Zielsystem 14
ist mit der Analysesonde 13 verbunden. Diese Verbindung er
möglicht es, daß die Analysesonde 13 eine Vielzahl von un
terschiedlichen Datensignalen von dem Zielsystem 14 erhält.
Diese Datensignale sind im allgemeinen in parallelen Daten
leitungen mit 1- bis X-Bit-Leitungen ausgeführt. Mit dem
Zielsystem 14 sind ferner die Adreßleitungen 42 verbunden.
Das Zielsystem ist außerdem mit einer Taktleitung 43, Sta
tusleitungen 44 und Chipauswahlleitungen 45 verbunden. Die
Datenleitungen 41 bis 45 sind ferner durch die Analysesonde
13 direkt mit dem Logikanalysator 11 verbunden. Die Lei
tungen 41 bis 45 können von jedem beliebigen Typ von Verbin
dungen mit beispielsweise 1, 2, 4, 8, 16, 32, 64, 128, 256,
512 oder jeder anderen Anzahl von Datenleitungen sein, sind
aber nicht auf dieselben begrenzt. Diese Datenleitungen 41
bis 45 können außerdem von jedem beliebigen Verbindungstyp
sein, beispielsweise serielle, parallele, optische oder
andere geeignete Verbindungen, sein, sind aber nicht auf
dieselben begrenzt.
Die Analysesonde 13, die die programmierbare Logik 32 ver
wendet, ist ferner mit dem Zielsystem 14 über die Ablauf
steuerungsleitungen 46 verbunden. Diese Ablaufsteuerungslei
tungen können von jedem beliebigen Verbindungstyp mit bei
spielsweise 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 oder jeder
anderen Anzahl von Ablaufsteuerungsleitungen sein, sind aber
nicht auf dieselben begrenzt. Diese Steuerungsleitungen 46
können ferner von jedem beliebigen Verbindungstyp, bei
spielsweise seriell, parallel, optisch, usw., sein, sind
aber nicht auf dieselben begrenzt. Diese Ablaufsteuerungs
leitungen 46 senden Befehle an den Prozessor des Zielsystems
14, um den Betrieb des Zielsystems 14 zu steuern. Diese Ab
laufsteuerungsleitungen 46 senden ferner Daten zu dem Ziel
system 14 und empfangen Daten von demselben.
Die programmierbare Logik 32 ist über Datenleitungen 48 fer
ner mit dem Emulationsmodul 12 verbunden. Die Datenleitungen
48 können von jedem beliebigen Verbindungstyp mit beispiels
weise 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 oder jeder ande
ren Anzahl von Datenleitungen sein, sind aber nicht auf die
selben begrenzt. Diese Datenleitungen 48 können von jedem
beliebigen Verbindungstyp, beispielsweise serielle, paralle
le, optische oder andere geeignete Verbindungen, sein, sind
aber nicht auf dieselben begrenzt. Diese Ablaufdatenleitun
gen 48 ermöglichen es, daß die programmierbare Logik 32 Da
ten zu dem Emulationsmodul 12 und Befehle und Daten von dem
selben empfangen kann.
Das Emulationsmodul 12 sendet Steuerungsbefehlsanforderungen
über die Datenleitung 48 zu der programmierbaren Logik 32
aus. Die programmierbare Logik 32 wirkt als eine Schnitt
stelle zwischen dem Emulationsmodul 12 und dem Zielsystem
14. Von dem Erfinder ist ferner vorgesehen, anstatt der pro
grammierbaren Logik 32 eine nicht-programmierbare Logik
schaltungsanordnung zu verwenden.
Die programmierbare Logik 32 überträgt die Steuerungsbefehl
anforderungen über eine Leitungssteuerungsleitung 46 zu den
Zielsystemprozessorkonfigurationsregistern 24 neu. Die Ziel
systemprozessorkonfigurationsregister 24 können beispiels
weise die Systemintegrationsmodul- (SIM; SIM = System Inte
gration Modul) Register in der CPU und den Power-PC-Sy
stemen sein, die von Motorola Corp., USA, hergestellt werden
und verfügbar sind. Zielsystemprozessoren eines anderen
Typs, die mit dem Logikanalysesystem betreibbar sind, sind
beispielsweise Prozessoren, die von IBM Corp., USA, und
Intel Corp., USA, hergestellt werden und handelsüblich ver
fügbar sind, sind aber nicht auf dieselben begrenzt.
Die programmierbare Logik 32 liest die Zielsystemprozessor
konfigurationsregister 24 in die programmierbare Logik 32
der Analysesonde 13. Die Werte der Konfigurationsregister 24
werden zu dem Emulationsmodul 12 gesendet, um zu bestimmen,
welcher Satz von Teilsatzkonfigurationsregistern zu einer
Speicherspeicherungsvorrichtung 31 gesendet wird. Die Funk
tionalität des Emulationsmoduls 12 wird hierin bezugnehmend
auf Fig. 4 definiert. Die programmierbare Logik 32 erzeugt
dementsprechend Taktsignale und andere Datensignale 49 und
überträgt diese Signale zu dem Logikanalysator 11.
Das Emulationsmodul 12 ist ferner über Datenleitungen 47 mit
einer Speicherspeicherungsvorrichtung 31 der Analysesonde 13
verbunden. Die Datenleitungen 47 ermöglichen es, daß Daten
zu der Analysesonde 13 und dem Zielsystem 14 und von densel
ben gesendet werden können. Die Datenleitungen 47 können je
de beliebige Anzahl von Datenleitungen aufweisen, beispiels
weise 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 oder jede andere
geeignete Anzahl von Datenleitungen, sind aber nicht auf
diese Anzahlen begrenzt. Diese Datenleitungen 47 können von
jedem beliebigen Typ, beispielsweise serielle, parallele,
optische oder ein anderer Typ von Verbindungen, sein, sind
aber nicht auf dieselben begrenzt.
Bei einem Ausführungsbeispiel ist die Speicherspeicherungs
vorrichtung 31 eine Speichervorrichtung des EEPROM-Typs. Es
wird jedoch darauf hingewiesen, daß andere nicht-flüchtige
Speichervorrichtungstypen, wie z. B. ein nicht-flüchtiger
ROM, RAM, EPROM, Blasenspeicher, Flash-Speicher oder der
gleichen, verwendet werden könnten.
Falls das Emulationsmodul 12 mit der Analysesonde 13 ver
bunden ist, bestimmt das Emulationsmodul 12 auf das Ein
schalten hin die geeigneten Zielsystemprozessorkonfigura
tionsregister 24, wie es hierin detaillierter bezugnehmend
auf Fig. 6 definiert werden wird. Das Emulationsmodul 12
kopiert einen Teilsatz der Konfigurationsregister 24 in dem
Prozessor des Zielsystems von einer Konfigurationsregistertabelle
23 des Emulationsmoduls 12 in die Speicherspeiche
rungsvorrichtung 31. Diese Konfigurationsregister sollen von
der Analysesonde 13 verwendet werden, um die programmierbare
Logik 30 für einen Datenneuaufbau zu konfigurieren.
Die Speicherspeicherungsvorrichtung 31 ist ferner über eine
Verbindungsleitung 57 mit einem Mikroprozessor 33 verbunden.
Der Mikroprozessor 33 ist über Leitungen 58 ferner mit der
programmierbaren Logik 30 verbunden. Der Mikroprozessor 32
empfängt über die Datenleitungen 57 einen Teilsatz der Kon
figurationsregisterdaten von der Speicherspeicherungsvor
richtung 31. Die Datenleitungen 57 können von jedem beliebi
gen Verbindungstyp mit beispielsweise 1, 2, 4, 8, 16, 32,
64, 128, 256, 512 oder jeder anderen Anzahl von Datenlei
tungen sein, sind aber nicht auf dieselben begrenzt. Diese
Datenleitungen 57 können von jedem beliebigen Verbindungs
typ, beispielsweise serielle, parallele, optische oder
andere geeignete Datenleitungsverbindungen, sein, sind aber
nicht auf dieselbe begrenzt.
Der Mikroprozessor 33 erfaßt Kopien der Prozessorkonfigu
rationsregister 24 des Zielsystems 14 von der Speicher
speicherungsvorrichtung 31 und leitet eine Bitmusterab
bildung her, die verwendet wird, um die programmierbare
Logik 30 zu konfigurieren. Der Mikroprozessor 33 führt den
Algorithmus aus, der in einem Mikroprogramm implementiert
ist, um das Bitmuster zu bestimmen, das verwendet worden
ist. Die Datenmuster sind eine Datenabbildung, die dar
stellt, daß eine spezielle Dateneingabe eine vorbestimmte
Datenausgabe ergeben wird, für einen Datenneuaufbau durch
die Analysesonde 13.
Diese Datenabbildung, die durch den Mikroprozessor 33 er
zeugt wird, wird daraufhin über die Datenleitung 58 in die
programmierbare Logik 30 geladen. Die Datenleitungen 58
können von jedem beliebigen Verbindungstyp mit beispiels
weise 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 oder jeder an
deren Anzahl von Datenleitungen sein, sind aber nicht auf
dieselben begrenzt. Diese Datenleitungen 58 können von jedem
beliebigen Verbindungstyp, beispielsweise serielle, paralle
le, optische oder ähnliche Verbindungen, sein, sind aber
nicht auf dieselben begrenzt.
Bei dem Beispiel des Falls einer Datenneuerzeugung einer
oberen Adreßleitung empfängt die programmierbare Logik 30
ein Eingangssignal eines Bitmusters auf den Chipauswahl
leitungen 54 und den Adreßleitungen 53. Die programmierbare
Logik 30 liefert das Datenmustereingangssignal, das bei dem
Abbildungsprozeß verwendet wird, um das resultierende Daten
ausgangssignal auf den Erzeugte-Adresse-Leitungen 51 zu er
zeugen. In dem Fall, daß der Prozessor des Zielsystems 14
nicht erfordert, daß die oberen Adreßleitungen neuerzeugt
werden, gibt die programmierbare Logik 30 das gleiche Daten
eingangssignal von der Adreßleitung 42 auf den Adreßleitun
gen 51 aus. Die Adreßleitungen 51 können von jedem beliebi
gen Verbindungstyp mit 1, 2, 4, 8, 16, 32, 64, 128, 256, 512
oder jede beliebigen anderen Anzahl von Datenleitungen sein.
Diese Adreßleitungen 51 können von jedem beliebigen Verbin
dungstyp, beispielsweise serielle, parallele, optische oder
ähnliche Verbindungen, sein, sind aber nicht auf dieselben
begrenzt.
Die programmierbare Logik 30 enthält eine Logik, um den
Adreßneuaufbau der vorliegenden Erfindung zu liefern. Die
programmierbare Logik 30 kann entweder ein feldprogram
mierbares Gate-Array (FPGA), eine komplexe programmierbare
Logikvorrichtung (CPLD), ein EEPROM, ein RAM oder ein der
artiger schneller Speicher, sein. Die programmierbare Logik
ist vorgesehen, um den Adreßneuaufbau der vorliegenden Er
findung durchzuführen. Bei dem Beispiel des Neuaufbaus der
oberen Adressen verwendet die programmierbare Logik 30 die
Chipauswahl- und die Adreß-Leitungen, um die oberen Adreß
leitungsbits neu zu erzeugen, um von dem Logikanalysator 11
berücksichtigt zu werden.
Die programmierbare Logik 30 enthält eine Vorgabekonfiguration,
bei der alle Datenleitungen 41-45 (Fig. 3) freigege
ben sind. In dieser Konfiguration kann der Logikanalysator
11 anzeigen, was immer auf den Datenleitungen 41-45 (Fig.
3) abgetastet wird. Bei dem Beispiel des Neuaufbaus von obe
ren Adressen lädt ein Benutzer eine neue Konfiguration he
runter, die die oberen Adreßleitungen für andere Signale als
für obere Adressen verwendet, wobei die Neukonfigurierungs
daten in der programmierbaren Logik 30 enthalten sind, und
durch dieselben verarbeitet werden.
In Fig. 4 ist ein Flußdiagramm eines Beispiels einer mög
lichen Implementierung des Adreßneuaufbauverfahrens der
vorliegenden Erfindung dargestellt. Zuerst wird das Logik
analysesystem 10 bei Schritt 61 initialisiert. Das Logik
analysesystem 10 führt die Installierung der Analysesonde 13
bei Schritt 62 durch. Die Installierung der Analysesonde 13
wird hierin detaillierter bezugnehmend auf Fig. 5 definiert.
Das Logikanalysesystem 10 überprüft bei Schritt 63, ob ein
Datenneuaufbau erforderlich ist. Falls kein Datenneuaufbau
erforderlich ist, fährt das Logikanalysesystem 10 mit
Schritt 69 fort und führt den normalen Analysebetrieb unter
Verwendung der Analysesonde 13 aus.
Falls ein Datenneuaufbau erforderlich ist, fordert das Emu
lationsmodul 12 bei Schritt 64 die Verbindung des Emula
tionsmoduls 12 mit der Analysesonde 13 an. Das Logikana
lysesystem 10 führt bei Schritt 65 den Prozeß 90 des Ein
stellens der Emulationsmodulkonfigurationsregister aus. Der
Prozeß 90 des Einstellens der Emulationsmodulkonfigurations
register wird hierin detaillierter bezugnehmend auf Fig. 7
definiert. Das Logikanalysesystem 10 führt bei Schritt 66
als nächstes den Prozeß 110 des Ladens der Datenabbildung in
die Analysesonde durch. Der Prozeß 110 des Ladens der Daten
abbildung in die Analysesonde wird hierin detaillierter be
zugnehmend auf Fig. 9 definiert. Das Logikanalysesystem 10
fährt mit Schritt 69 fort und führt den Analysebetrieb aus,
wobei das Datenneuaufbaumerkmal die Analysesonde 13 verwen
det.
In Fig. 5 ist ein Flußdiagramm eines Beispiels einer mög
lichen Implementierung eines Sondeninstallierungsprozesses
70 zum Installieren der Analysesondenparameter (Schritt 62
von Fig. 4) dargestellt. Zuerst fordert der Analysesonden
prozeß 70 bei Schritt 71 eine Verbindung der Analysesonde 13
mit dem Zielsystem 14 an. Das Logikanalysesystem 10 fordert
daraufhin bei Schritt 72 eine Verbindung der Analysesonde 13
mit dem Logikanalysator 11 an. Sobald die Analysesonde 13
mit dem Zielsystem 14 und dem Logikanalysator 11 verbunden
ist, fordert das Analysesystem 10 bei Schritt 73 das Laden
der Analysesonde-Analysatorsoftware an. Die Analysesonde 13
bestimmt daraufhin bei Schritt 74 den Prozessortyp des Ziel
systems 14. Der Prozeß der Bestimmung des Prozessortyps des
Zielsystems 80 wird hierin detaillierter bezugnehmend auf
Fig. 6 definiert. Der Verbindungsprozeß der Analysesonde 13
wird dann bei Schritt 79 verlassen.
In Fig. 6 ist ein Flußdiagramm einer möglichen Implementie
rung eines Bestimmungsprozesses, der durch das Bezugszeichen
80 angezeigt ist, zum Bestimmen des Zielsystemprozessortyps
dargestellt. Der Prozeß 80 zur Bestimmung des Zielsystempro
zessortyps wird bei Schritt 81 zuerst initialisiert.
Als nächstes bestimmt das Emulationsmodul 12, ob die Ein
stellungen der Analysesonde 13 verwendet werden sollen, um
zu bestimmen, welchen Prozessortyp das Zielsystem 14 auf
weist, wobei dieser Schritt bei Schritt 82 durchgeführt
wird. Falls die Einstellungen der Analysesonde 13 nicht
verwendet werden sollen, fordert das Emulationsmodul 12 den
Benutzer bei Schritt 87 dazu auf, den Prozessortyp des
Zielsystems 14 in dem Speicher des Emulationsmoduls 12 ma
nuell einzustellen. Die Einstellung des Prozessortyps des
Zielsystems 14 durch das Emulationsmodul 12 wird unter Ver
wendung einer Eingabe von einer Eingabe/Ausgabe-Vorrichtung,
wie z. B. einer Tastatur, einem Berührbildschirm, einer Maus,
einem Netzwerk oder einer derartigen Verbindung mit dem Emu
lationsmodul 12, bestimmt.
Falls die Einstellungen der Analysesonde 13 verwendet werden
sollen, um den Prozessortyp des Zielsystems 14 zu bestimmen,
weist das Emulationsmodul 12 die Analysesonde 13 bei Schritt
83 an, die Zielprozessorverbinderproduktidentifikation der
Analysesonde 13 auszulesen. Das Emulationsmodul 12 weist die
Analysesonde 13 bei Schritt 84 ferner an, die ausgelesene
Zielprozessorverbinderproduktidentifikation der Analysesonde
13 zu dem Emulationsmodul 12 zu senden. Das Emulationsmodul
12 korreliert daraufhin bei Schritt 85 die Zielprozessorver
binderproduktidentifikation der Analysesonde 13 mit dem Pro
zessortyp des Zielsystems 14 unter Verwendung einer Prozes
sortypidentifikationstabelle 21.
Das Emulationsmodul 12 validiert daraufhin bei Schritt 86
die Zielprozessorverbinderproduktidentifikation der Analyse
sonde 13. Das Emulationsmodul 12 bestimmt, ob die Zielpro
zessorverbinderproduktidentifikation der Analysesonde 13 in
der Prozessortypidentifikationstabelle 21 auffindbar ist.
Falls die Zielprozessorverbinderproduktidentifikation der
Analysesonde 13 aufgefunden wird, behält das Emulationsmodul
12 die Prozessortypidentifikation des Zielsystems 14 bei.
Falls die Produktidentifikation der Analysesonde 13 bei
Schritt 86 nicht aufgefunden wird, erzeugt das Emulationsmo
dul 12 einen Prozessortypidentifikation-nicht-gefundenen-
Fehler und kehrt zu der Vorgabeprozessortypidentifikation
zurück. Nach dem Validierungsschritt endet der Bestimmungs
prozeß 80, und derselbe kehrt zu dem Schritt 74 von Fig. 5
zurück.
In Fig. 7 ist ein Flußdiagramm eines Beispiels einer mög
lichen Implementierung des Prozesses 90 zum Einstellen der
Konfigurationsregister für das Emulationsmodul 12 darge
stellt. Zuerst wird der Prozeß 90 zum Einstellen der Kon
figurationsregister für das Emulationsmodul 12 bei Schritt
91 initialisiert. Der Prozeß 90 zum Einstellen der Konfi
gurationsregister für das Emulationsmodul 12 bestimmt als
nächstes, ob der Prozeß 90 des Herunterladens der Konfigurationsregister
automatisch läuft, d. h. daß die Daten von
den Konfigurationsregistern 24 des Zielsystems 14 herunter
geladen werden sollen. Falls der Herunterladungsprozeß auto
matisch ist, sendet das Emulationsmodul 12 eine Anforderung
an das Zielsystem 14, die Konfigurationsregister 24 des
Zielsystems 14 zu den Konfigurationsregistern 22 des Emula
tionsmoduls 12 herunterzuladen, d. h. zu kopieren. Dieses
Herunterladen der Konfigurationsregister 24 des Zielsystems
14 zu den Konfigurationsregistern 22 des Emulationsmoduls 12
wird hierin detaillierter bezugnehmend auf Fig. 8 definiert.
Falls der Prozeß 90 des Einstellens der Konfigurationsre
gister nicht automatisch läuft, fordert das Emulationsmodul
12 den Benutzer auf, die Konfigurationsregister 22 des Emu
lationsmoduls 12 bei Schritt 94 manuell einzustellen. Die
Konfigurationsregister 22 des Emulationsmoduls 12 werden
durch Kommunizieren einer Eingabe von einer Eingabe/Ausgabe-
(I/O-) Vorrichtung, wie z. B. einer Tastatur, einem Berühr
bildschirm, einer Maus, einem Netzwerk oder dergleichen, zu
dem Emulationsmodul 12 eingestellt.
Nachdem der Konfigurationsregisterherunterladungsprozeß 90
abgeschlossen ist, endet der Prozeß zum Einstellen der Kon
figurationsregister 90 für das Emulationsmodul 12 bei
Schritt 99 und kehrt zu Schritt 65 von Fig. 4 zurück.
In Fig. 8 ist ein Flußdiagramm eines Beispiels einer mög
lichen Implementierung des Prozesses 100 des Herunterladens
von Konfigurationsregistern des Zielprozessors dargestellt.
Zuerst wird der Prozeß 100 zum Herunterladen von Konfigura
tionsregistern des Zielprozessors bei Schritt 101 initiali
siert. Das Emulationsmodul 12 gibt als nächstes die Ziel
prozessorregistertabelle 23 des Emulationsmoduls 12 bei
Schritt 102 frei.
Das Emulationsmodul 12 überträgt bei Schritt 103 als näch
stes Befehle zu dem Prozessor des Zielsystems 14 über Ver
bindungen der Analysesonde 13, um die Konfigurationsregister
24 des Zielsystems 14 herunterzuladen. Dies wird durchge
führt, indem das Emulationsmodul 12 die Steuerungsbefehlan
forderungen über die Datenleitung 48 zu der programmierbaren
Logik 32 überträgt. Die programmierbare Logik 32 wirkt bei
Schritt 103 als Schnittstelle zwischen dem Emulationsmodul
12 und dem Zielsystem 14. Die programmierbare Logik 32 neu
überträgt bei Schritt 103 die Steuerungsbefehlanforderungen
über die Leitungssteuerungsleitung 46 zu den Konfigurations
registern 24 des Zielsystems 14.
Das Emulationsmodul 12 befragt das Zielsystem 14 bei Schritt
104, um zu bestimmen, ob in dem Zielsystem 14 Konfigura
tionsregister 24 zum Herunterladen verfügbar sind. Falls die
Konfigurationsregister 24 des Zielsystems 14 nicht verfügbar
sind, erzeugt das Emulationsmodul 12 einen Nicht-Gefunden-
Fehler, der anzeigt, daß keine Prozessorkonfigurationsre
gisterdaten für das Zielsystem 14 gefunden wurden. Diese
Fehlernachricht wird bei Schritt 106 auf einer beliebigen
Anzeigevorrichtung angezeigt werden, die mit dem Emulations
modul 12 verbunden ist.
Falls bei Schritt 104 die Konfigurationsdatenregister 24 für
das Zielsystem 24 zum Herunterladen verfügbar sind, über
trägt das Zielsystem 14 die Daten des Konfigurationsre
gisters 24 des Zielsystems 14 bei Schritt 105 zu den Konfi
gurationsregistern 22 des Emulationsmoduls 12. Dies wird
durchgeführt, indem die programmierbare Logik 32 die Konfi
gurationsregister 24 des Zielsystems 14 in die programmier
bare Logik der Analysesonde 13 liest. Die Werte der Konfigu
rationsregister 24 des Zielsystems 14 werden als nächstes
über die Datenleitungen 48 zu den Konfigurationsregistern 22
des Emulationsmoduls 12 gesendet. Der Zielprozessorkonfi
gurationherunterladungsprozeß endet daraufhin bei Schritt
109.
In Fig. 9 ist ein Flußdiagramm eines Beispiels einer mög
lichen Implementierung des Prozesses 110 zur Erzeugung einer
Datenabbildung für den Datenneuaufbau dargestellt, um den
Datenneuaufbau zu ermöglichen. Zuerst wird der Datenabbil
dungserzeugungsprozeß 110 bei Schritt 111 initialisiert.
Das Emulationsmodul 12 bestimmt bei Schritt 112, ob die
Konfigurationsregister 22 des Emulationsmoduls 12 gültig
sind. Falls die Konfigurationsregister 22 des Emulations
moduls 12 nicht gültig sind, erzeugt das Emulationsmodul 12
einen Nicht-Gefunden-Fehler, der anzeigt, daß keine Daten
des Konfigurationsregisters 22 des Emulationsmoduls 12 ge
funden wurden. Diese Fehlernachricht wird bei Schritt 117
auf einer beliebigen Anzeigevorrichtung angezeigt werden,
die mit dem Emulationsmodul 12 verbunden ist.
Falls die Konfigurationsregister 22 des Emulationsmoduls 12
gültig sind, korreliert das Emulationsmodul 12 die Werte der
Konfigurationsregister 24 des Zielsystems 14 in den Konfi
gurationsregistern 22 des Emulationsmoduls 12 bei Schritt
113 unter Verwendung einer Zielprozessorregistertabelle 23
des Emulationsmoduls 12 mit einem Teilsatz der Datenneuauf
baukonfigurationsregister. Das Emulationsmodul 12 lädt bei
Schritt 113 basierend auf dem Prozessortyp des Zielsystems
14 den geeigneten Teilsatz der Register des Emulationsmoduls
12 in die Analysesonde 13. Dieses Laden eines Teilsatzes von
Konfigurationsregistern basierend auf dem Prozessortyp des
Zielsystems 14 wird hierin detaillierter bezugnehmend auf
Fig. 10 definiert werden.
Sobald der Teilsatz von Registern des Emulationsmoduls 12 in
die Analysesonde 13 geladen ist, erzeugt die Analysesonde 13
bei Schritt 114 eine Datenneuaufbaudatenabbildung. Dies ist
abgeschlossen, wenn das Emulationsmodul 12 dem Mikroprozes
sor 33 der Analysesonde 13 signalisiert, daß ein neuer Kon
figurationsregisterteilsatz des Prozessors des Zielsystems
14 heruntergeladen worden ist. Das Emulationsmodul 12 leitet
daraufhin die Ausführung des Algorithmus des Mikroprozessors
33 ein, um die Datenabbildung zu erzeugen.
Sobald die Konfigurationsregisterteilsatzdaten durch den Algorithmus
auf dem Mikroprozessor 33 verarbeitet worden sind,
wird die erzeugte Bit-Abbildung bei Schritt 115 in die pro
grammierbare Logik 30 geladen. Dies versetzt die Analyse
sonde 13 in die Lage, während der Analyse der Daten von dem
Zielsystem 14 Datenneuaufbauoperationen zu liefern. Bei ei
nem Ausführungsbeispiel teilen die Konfigurationsregister
teilsatzdaten dem Mikroprozessor 33 der Analysesonde 13 mit,
ob die oberen Adreßleitungen 53 als Adreßleitungen verwendet
werden sollen, oder ob dieselben für etwas anderes verwendet
werden sollen. Die Konfigurationsregisterteilsatzdaten tei
len dem Mikroprozessor 33 der Analysesonde 13 ferner mit, ob
die Chipauswahlleitungen 45 verwendet werden sollen, welche
verwendet werden und wann die Chipauswahlleitungen 45 ver
wendet werden. Die Konfigurationsregister teilen ferner mit,
welche die wirksamen Bits sind, die erforderlich sind, um
die Daten neu zu erzeugen, und welcher Bereich von Adressen
durch diese Chipauswahlsignale erzeugt wird. Durch das Ver
wenden der Konfigurationsregister ist die programmierbare
Logik 30 in der Lage, aus den Chipauswahlsignalen die obere
Adreßleitungen 53 neu zu erzeugen. Es wird ferner darauf
hingewiesen, daß die Konfigurationsregister einen Benutzer
in die Lage versetzen können, jegliche Daten auf dem Chip
neu aufzubauen und dieselben für eine Analyse auszulesen.
Der Prozeß 110 zur Erzeugung einer Datenabbildung für einen
Datenneuaufbau wird daraufhin bei Schritt 119 beendet und
kehrt zu Schritt 68 in Fig. 4 zurück.
In Fig. 10 ist ein Flußdiagramm eines Beispiels einer mög
lichen Implementierung des Konfigurationsteilsatzherunter
ladungsprozesses 120 für die Analysesonde 13 dargestellt.
Der Konfigurationsteilsatzherunterladungsprozeß 120 für die
Analysesonde 13 ist vorgesehen, um in die Speicherspeiche
rungsvorrichtung 31 der Analysesonde 13 den Teilsatz von
Konfigurationsregistern zu laden. Zuerst wird der Konfigu
rationsteilsatzherunterladungsprozeß 120 für die Analyse
sonde 13 bei Schritt 121 initialisiert. Daraufhin greift die
Zielprozessorregistertabelle 23 des Emulationsmoduls 12 bei
Schritt 122 auf die Speicherspeicherungsvorrichtung 31 der
Analysesonde 13 zu. Das Emulationsmodul 12 lädt bei Schritt
123 den Konfigurationsregisterteilsatz für den Zielprozes
sortyp zu der Speicherspeicherungsvorrichtung 31 der Ana
lysesonde 13 herunter. Der korrekte Konfigurationsregister
teilsatz wird bei Schritt 113 bestimmt. Der Konfigurations
teilsatzherunterladungsprozeß für die Analysesonde 13 wird
daraufhin bei Schritt 129 beendet.
Der Neuaufbau von Daten für das Analysesondeprogramm umfaßt
ein geordnetes Auflisten von ausführbaren Befehlen zum Imp
lementieren von Logikfunktionen und kann in einem beliebigen
computerlesbaren Medium für eine Verwendung durch oder in
Verbindung mit einem Befehlsausführungssystem, einer Be
fehlsausführungsvorrichtung oder einem Befehlsausführungsge
rät, wie z. B. einem computerbasierten System, einem prozes
sorenthaltenden System oder einem anderen System, das die
Befehle von dem Befehlsausführungssystem, der Befehlsaus
führungsvorrichtung oder dem Befehlsausführungsgerät holen
und die Befehle ausführen kann, aufgeführt sein. In dem
Zusammenhang dieses Dokuments kann ein "computerlesbares
Medium" jegliche Einrichtung sein, die das Programm für eine
Verwendung durch oder in Verbindung mit dem Befehlsausfüh
rungssystem, der Befehlsausführungsvorrichtung oder dem Be
fehlsausführungsgerät enthalten, speichern, kommunizieren,
ausbreiten oder übertragen kann.
Das computerlesbare Medium kann beispielsweise ein elektro
nisches System, ein magnetisches System, ein optisches
System, ein elektromagnetisches System, ein Infrarotsystem
oder ein Halbleiter-System, -vorrichtung, -gerät oder ein
Ausbreitungsmedium sein, ist aber nicht auf dieselben be
grenzt. Spezifischere Beispiele (eine nicht vollständige
Liste) des computerlesbaren Mediums würden die folgenden
Merkmale umfassen: eine elektrische Verbindung (Elektronik)
mit einem oder mehreren Drähten, eine tragbare Computerdis
kette (magnetisch), einen Direktzugriffspeicher (RAM) (ma
gnetisch), ein Nurlesespeicher (ROM) (magnetisch), einen
löschbaren programmierbaren Nurlesespeicher (EPROM oder
Flash-Speicher) (magnetisch), eine optische Faser (optisch)
und einen tragbaren CD-Nurlesespeicher (CD-ROM) (optisch).
Es wird darauf hingewiesen, daß das computerlesbare Medium
sogar Papier oder ein anderes geeignetes Medium sein könnte,
auf dem das Programm gedruckt ist, da das Programm bei
spielsweise über ein optisches Abtasten des Papieres oder
des anderen Mediums elektronisch erfaßt werden kann, darauf
hin falls notwendig auf eine geeignete Weise kompiliert, in
terpretiert oder auf eine andere Weise verarbeitet und da
raufhin in einem Computerspeicher gespeichert werden kann.
Claims (15)
1. Verfahren zum Neuaufbauen von internen Datensignalen an
einem Computersystem (14) für eine Analyse durch einen
Logikanalysator (11), wobei das Computersystem (14) mit
einer Signalsonde (13) verbunden ist, und wobei die Si
gnalsonde (13) mit dem Logikanalysator (11) verbunden
ist, wobei das Verfahren folgende Schritte aufweist:
Laden (110) von Signalneuaufbaudaten von einer Emulati onslogik (12) zu der Signalsonde (13);
Empfangen (69) einer Mehrzahl von Datensignalen (41-45) von dem Computersystem (14) mit der Signalsonde (13);
Herleiten (69) eines Computersystem-internen Signals aus zumindest einem der Mehrzahl von Datensignalen (41-45) und den Signalneuaufbaudaten;
Übertragen (69) des hergeleiteten internen Signals (51) zu dem Logikanalysator, (11) für eine Analyse.
Laden (110) von Signalneuaufbaudaten von einer Emulati onslogik (12) zu der Signalsonde (13);
Empfangen (69) einer Mehrzahl von Datensignalen (41-45) von dem Computersystem (14) mit der Signalsonde (13);
Herleiten (69) eines Computersystem-internen Signals aus zumindest einem der Mehrzahl von Datensignalen (41-45) und den Signalneuaufbaudaten;
Übertragen (69) des hergeleiteten internen Signals (51) zu dem Logikanalysator, (11) für eine Analyse.
2. Verfahren gemäß Anspruch 1, bei dem der Schritt des La
dens (110) von Signalneuaufbaudaten ferner folgenden
Schritt aufweist:
Laden (96) von Computersystemregisterdaten.
Laden (96) von Computersystemregisterdaten.
3. Verfahren gemäß einem der Ansprüche 1 oder 2, bei dem
der Schritt des Ladens (110) von Signalneuaufbaudaten
ferner folgenden Schritt aufweist:
Erzeugen (114) einer Datenabbildung aus den Signalneu aufbaudaten, um die Übersetzung von zumindest einem der Mehrzahl von Datensignalen (41-45) zu ermöglichen.
Erzeugen (114) einer Datenabbildung aus den Signalneu aufbaudaten, um die Übersetzung von zumindest einem der Mehrzahl von Datensignalen (41-45) zu ermöglichen.
4. Verfahren gemäß Anspruch 3, bei dem der Schritt des Er
zeugens (114) einer Datenabbildung ferner folgenden
Schritt aufweist:
Laden (115) der Datenabbildung in eine Signalneuaufbau logik (30), wobei die Signalneuaufbaulogik (30) mit der Mehrzahl von Datensignalen (41-45) verbunden ist.
Laden (115) der Datenabbildung in eine Signalneuaufbau logik (30), wobei die Signalneuaufbaulogik (30) mit der Mehrzahl von Datensignalen (41-45) verbunden ist.
5. Verfahren gemäß einem der vorhergehenden Ansprüche, das
ferner folgende Schritte aufweist:
Erfassen (80) von Computersystemprozessortypdaten;
Bestimmen (113) der Signalneuaufbaudaten aus den Compu tersystemprozessortypdaten;
Berechnen (114) einer Datenabbildung aus den Signalneu aufbaudaten, wobei die Datenabbildung vorgesehen ist, um aus dem zumindest einen der Mehrzahl von Datensignalen (41-45) das Computersystem-interne Signal zu erzeugen.
Erfassen (80) von Computersystemprozessortypdaten;
Bestimmen (113) der Signalneuaufbaudaten aus den Compu tersystemprozessortypdaten;
Berechnen (114) einer Datenabbildung aus den Signalneu aufbaudaten, wobei die Datenabbildung vorgesehen ist, um aus dem zumindest einen der Mehrzahl von Datensignalen (41-45) das Computersystem-interne Signal zu erzeugen.
6. Vorrichtung zum Neuaufbauen von internen Datensignalen
für ein Computersystem (14) für eine Analyse durch einen
Logikanalysator (11), wobei die Neuaufbauvorrichtung
folgende Merkmale aufweist:
eine Einrichtung (31) zum Empfangen von Signalneuaufbau daten von einer Emulationslogik (12);
eine Einrichtung (30) zum Empfangen einer Mehrzahl von Datensignalen von dem Computersystem (14);
eine Einrichtung zum Herleiten eines internen Computer systemsignals aus zumindest einem der Mehrzahl von Da tensignalen (41-45) und aus den Signalneuaufbaudaten; und
eine Einrichtung (51) zum Übertragen des hergeleiteten internen Signals zu dem Logikanalysator (11) für eine Analyse.
eine Einrichtung (31) zum Empfangen von Signalneuaufbau daten von einer Emulationslogik (12);
eine Einrichtung (30) zum Empfangen einer Mehrzahl von Datensignalen von dem Computersystem (14);
eine Einrichtung zum Herleiten eines internen Computer systemsignals aus zumindest einem der Mehrzahl von Da tensignalen (41-45) und aus den Signalneuaufbaudaten; und
eine Einrichtung (51) zum Übertragen des hergeleiteten internen Signals zu dem Logikanalysator (11) für eine Analyse.
7. Vorrichtung gemäß Anspruch 6, die ferner folgendes Merk
mal aufweist:
eine Einrichtung (32) zum Bestimmen eines Prozessortyps des Computersystems (14).
eine Einrichtung (32) zum Bestimmen eines Prozessortyps des Computersystems (14).
8. Vorrichtung gemäß Anspruch 6 oder 7, die ferner folgen
des Merkmal aufweist:
eine Einrichtung (46) zum Übertragen von Steuerungsdaten zu dem Computersystem.
eine Einrichtung (46) zum Übertragen von Steuerungsdaten zu dem Computersystem.
9. Vorrichtung gemäß einem der Ansprüche 6 bis 8, die fer
ner folgendes Merkmal aufweist:
eine Einrichtung zum Empfangen von Steuerungsdaten von der Emulationslogik (12).
eine Einrichtung zum Empfangen von Steuerungsdaten von der Emulationslogik (12).
10. Vorrichtung gemäß einem der Ansprüche 6 bis 9, bei der
die Einrichtung (32) zum Bestimmen des Prozessortyps
ferner folgendes Merkmal aufweist:
eine Einrichtung zum Bestimmen einer Sondenproduktiden tifikation von der Datensignalempfangseinrichtung (30).
eine Einrichtung zum Bestimmen einer Sondenproduktiden tifikation von der Datensignalempfangseinrichtung (30).
11. Vorrichtung gemäß einem der Ansprüche 6 bis 10, die fer
ner folgendes Merkmal aufweist:
eine erste programmierbare Logik (32) zum Bereitstellen einer Schnittstelle zwischen der Emulationslogik (12) und dem Computersystem (19).
eine erste programmierbare Logik (32) zum Bereitstellen einer Schnittstelle zwischen der Emulationslogik (12) und dem Computersystem (19).
12. Vorrichtung gemäß einem der Ansprüche 6 bis 11, bei der
die Einrichtung (31) zum Empfangen von Signalneuaufbau
daten einen Speicher (31) aufweist.
13. Vorrichtung gemäß einem der Ansprüche 6 bis 12, die fer
ner einen Prozessor (33) zum Erzeugen einer Datenabbil
dung aus den Signalneuaufbaudaten aufweist, und bei der
die Einrichtung zum Herleiten eine zweite programmier
bare Logik (30) umfaßt, die durch die von dem Prozessor
(33) erzeugte Datenabbildung konfiguriert wird.
14. Vorrichtung gemäß einem der Ansprüche 6 bis 13, wobei
die Vorrichtung eine Signalsonde (13) ist.
15. Vorrichtung gemäß einem der Ansprüche 6 bis 14, bei dem
die Signalneuaufbaudaten ferner folgendes Merkmal auf
weisen:
einen mit einem vorbestimmten, zu erzeugenden internen Computersystemsignal korrelierten Teilsatz von Computer systemdaten.
einen mit einem vorbestimmten, zu erzeugenden internen Computersystemsignal korrelierten Teilsatz von Computer systemdaten.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/252,393 US6442725B1 (en) | 1999-02-18 | 1999-02-18 | System and method for intelligent analysis probe |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10004198A1 DE10004198A1 (de) | 2000-08-31 |
DE10004198C2 true DE10004198C2 (de) | 2002-06-20 |
Family
ID=22955828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10004198A Expired - Fee Related DE10004198C2 (de) | 1999-02-18 | 2000-02-01 | System und Verfahren für eine intelligente Analysesonde |
Country Status (3)
Country | Link |
---|---|
US (1) | US6442725B1 (de) |
JP (1) | JP2000241460A (de) |
DE (1) | DE10004198C2 (de) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6775793B2 (en) * | 1999-12-21 | 2004-08-10 | Texas Instruments Incorporated | Data exchange system and method for processors |
DE50013558D1 (de) * | 2000-02-23 | 2006-11-16 | Tektronix Berlin Gmbh & Co Kg | Vorrichtung zum Aufbau eines Protokoll-Stacks und zugehöriges Verfahren |
US6804077B1 (en) * | 2000-07-25 | 2004-10-12 | Certance Llc | Method and apparatus for reinitializing a tape drive after a power loss |
US6823224B2 (en) * | 2001-02-21 | 2004-11-23 | Freescale Semiconductor, Inc. | Data processing system having an on-chip background debug system and method therefor |
US6760898B1 (en) * | 2002-02-22 | 2004-07-06 | Xilinx, Inc. | Method and system for inserting probe points in FPGA-based system-on-chip (SoC) |
US7321359B2 (en) * | 2003-07-30 | 2008-01-22 | Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. | Method and device for optical navigation |
US7116427B2 (en) * | 2003-10-30 | 2006-10-03 | Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. | Low power consumption, broad navigability optical mouse |
US20040227954A1 (en) * | 2003-05-16 | 2004-11-18 | Tong Xie | Interferometer based navigation device |
US6934037B2 (en) * | 2003-10-06 | 2005-08-23 | Agilent Technologies, Inc. | System and method for optical navigation using a projected fringe technique |
US7383547B1 (en) * | 2004-12-03 | 2008-06-03 | Lecroy Corporation | Apparatus and technique for device emulation |
US7399954B2 (en) * | 2005-08-16 | 2008-07-15 | Avago Technologies Ecbu Ip Pte Ltd | System and method for an optical navigation device configured to generate navigation information through an optically transparent layer and to have skating functionality |
US20080231600A1 (en) | 2007-03-23 | 2008-09-25 | Smith George E | Near-Normal Incidence Optical Mouse Illumination System with Prism |
US7933166B2 (en) * | 2007-04-09 | 2011-04-26 | Schlumberger Technology Corporation | Autonomous depth control for wellbore equipment |
US10496461B2 (en) * | 2011-06-15 | 2019-12-03 | Arm Finance Overseas Limited | Apparatus and method for hardware initiation of emulated instructions |
US10305755B2 (en) * | 2016-06-09 | 2019-05-28 | Zeroplus Technology Co., Ltd. | Reliability and performance analysis system |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19814415A1 (de) * | 1997-03-31 | 1998-11-12 | Quickturn Design Systems Inc A | Logikanalyse-Untersystem in einem Zeitscheibenemulator |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3754098A (en) * | 1971-10-08 | 1973-08-21 | Adaptive Tech | Asynchronous sampling and reconstruction for asynchronous sample data communication system |
US5375228A (en) * | 1991-02-04 | 1994-12-20 | Analog Devices, Inc. | Real-time signal analysis apparatus and method for digital signal processor emulation |
US5680583A (en) * | 1994-02-16 | 1997-10-21 | Arkos Design, Inc. | Method and apparatus for a trace buffer in an emulation system |
US5896552A (en) * | 1995-06-07 | 1999-04-20 | National Instruments Corporation | Bus analyzer for capturing bus signals at a predetermined rate and upon assertion of a data valid signal |
US5754827A (en) * | 1995-10-13 | 1998-05-19 | Mentor Graphics Corporation | Method and apparatus for performing fully visible tracing of an emulation |
US6052748A (en) * | 1997-03-18 | 2000-04-18 | Edwin A. Suominen | Analog reconstruction of asynchronously sampled signals from a digital signal processor |
US6119254A (en) * | 1997-12-23 | 2000-09-12 | Stmicroelectronics, N.V. | Hardware tracing/logging for highly integrated embedded controller device |
US6061511A (en) * | 1998-06-12 | 2000-05-09 | Ikos Systems, Inc. | Reconstruction engine for a hardware circuit emulator |
-
1999
- 1999-02-18 US US09/252,393 patent/US6442725B1/en not_active Expired - Fee Related
-
2000
- 2000-02-01 DE DE10004198A patent/DE10004198C2/de not_active Expired - Fee Related
- 2000-02-18 JP JP2000040937A patent/JP2000241460A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19814415A1 (de) * | 1997-03-31 | 1998-11-12 | Quickturn Design Systems Inc A | Logikanalyse-Untersystem in einem Zeitscheibenemulator |
Also Published As
Publication number | Publication date |
---|---|
US6442725B1 (en) | 2002-08-27 |
DE10004198A1 (de) | 2000-08-31 |
JP2000241460A (ja) | 2000-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10004198C2 (de) | System und Verfahren für eine intelligente Analysesonde | |
DE69106507T2 (de) | In-circuit-emulator. | |
DE69713856T2 (de) | Integrierte Halbleiterspeicheranordnung und Kommunikationsverfahren dafür | |
DE112020000469T5 (de) | Automatisierte testeinrichtung, die ein auf-chip-system-teststeuergerät verwendet | |
DE602004011320T2 (de) | Verfahren und struktur zur entwicklung eines testprogramms für integrierte halbleiterschaltungen | |
DE60113780T2 (de) | Verfahren und Vorrichtung zum Verfolgen von Hardwarezustanden mit dynamischen rekonfigurierbaren Testschaltungen | |
DE69705813T2 (de) | Diagnosesystem und Verfahren bei einer integrierten Halbleiterschaltung | |
DE602004007498T2 (de) | Testemulationseinrichtung | |
DE69415600T2 (de) | Mikrokontroller mit hardwaremässiger Fehlerbeseitigungsunterstützung nach dem Boundary-Scanverfahren | |
DE60010420T2 (de) | Automatisches Regressionstesten von Arbeitsplatz-Software | |
DE60212271T2 (de) | Eingebauter Selbsttest mit eingebautem Speicher und Prozessor in einer ASIC Vorrichtung | |
DE69706271T2 (de) | Integrierter Rechner mit Befehlsverfolgung | |
DE60108851T2 (de) | Mehrkanal, mehrdienstfehlerbeseitigung in pipeline-cpu-architektur | |
DE10196310B4 (de) | Vorrichtung und Verfahren zum Verifizieren eines Chip-Designs und zum Testen eines Chips | |
DE60008088T2 (de) | Mehrprozessorsystem Prüfungsschaltung | |
DE69033360T2 (de) | Simulation von ausgewählten Logik-Schaltungsentwürfen | |
DE69817725T2 (de) | Mikroprozessor Testsystem | |
DE10010043C2 (de) | Halbleitervorrichtung-Simulationseinrichtung und zugehörige Halbleitertestprogramm-Debugging-Einrichtung | |
DE4418892C2 (de) | Mikrocomputer | |
DE3901579C2 (de) | ||
DE69612075T2 (de) | Vorrichtung zur Fehlerbeseitigung und Verfahren zur Fehlerbeseitigung in einem Spielprogramm in einem ROM-Speichermodul | |
DE3903835A1 (de) | Verfahren und vorrichtung zum pruefen von mikroprozessorsystemen unter verwendung von speicheremulationstechniken | |
DE4313594A1 (de) | Mikroprozessor | |
DE112012005320T5 (de) | Multicore-Prozessor mit intern integriertem entscheidungsbasierten Selbsttest | |
DE69802977T2 (de) | Steuervorrichtung einer Auslösesignalreihenfolge |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |