DE60209201T2 - Verfahren zum Speichern von Registereigenschaften in einer Datenstruktur und dazugehörige Datenstruktur - Google Patents

Verfahren zum Speichern von Registereigenschaften in einer Datenstruktur und dazugehörige Datenstruktur Download PDF

Info

Publication number
DE60209201T2
DE60209201T2 DE60209201T DE60209201T DE60209201T2 DE 60209201 T2 DE60209201 T2 DE 60209201T2 DE 60209201 T DE60209201 T DE 60209201T DE 60209201 T DE60209201 T DE 60209201T DE 60209201 T2 DE60209201 T2 DE 60209201T2
Authority
DE
Germany
Prior art keywords
data structure
register
properties
test
hardware device
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 - Lifetime
Application number
DE60209201T
Other languages
English (en)
Other versions
DE60209201D1 (de
Inventor
Dirk George Cyriel Goethals
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel Lucent SAS
Original Assignee
Alcatel CIT SA
Alcatel SA
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 Alcatel CIT SA, Alcatel SA filed Critical Alcatel CIT SA
Publication of DE60209201D1 publication Critical patent/DE60209201D1/de
Application granted granted Critical
Publication of DE60209201T2 publication Critical patent/DE60209201T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/3193Tester hardware, i.e. output processing circuits with comparison between actual response and known fault free response
    • G01R31/31935Storing data, e.g. failure memory
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318516Test of programmable logic devices [PLDs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31908Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Executing Machine-Instructions (AREA)
  • Debugging And Monitoring (AREA)

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Speichern von Registereigenschaften einer Hardware-Vorrichtung, die einen heterogenen Speicher hat, in einer Datenstruktur, wie in der Präambel von Anspruch 1 beschrieben, und eine Datenstruktur zum Speichern von Registereigenschaften einer Hardware-Vorrichtung, die einen heterogenen Speicher hat, wie in der Präambel von Anspruch 2 beschrieben.
  • Ein solches Verfahren und eine solche Datenstruktur sind bereits in der Technik in Testsystemen bekannt, die eine Test-Vorrichtung enthalten, um Zugriffs-Tests auf anwendungsspezifische integrierte Schaltkreise durchzuführen, die im Folgenden als ASICs bezeichnet werden und die auf eine gedruckte Leiterplatte montiert und mit einem Mikroprozessor gekoppelt sind. Ein solches System wird eingebettete Hardware-Anwendung genannt. Diese oben erwähnten Zugriffs-Tests bestehen aus Tests der Verbindungen zwischen einem Host-Mikroprozessor und seinen Peripherieeinrichtungen, wie z.B. ASICs in dieser so genannten eingebetteten Hardware-Anwendung.
  • In solchen eingebetteten Hardware-Anwendungen werden ASICs und RAMs auf einen gegebenen Adressbereich abgebildet, d.h. der Prozessor kann auf sie durch einen Speicherzugriff in einem gegebenen Adressbereich zugreifen. Mit anderen Worten werden sie auf den Speicher abgebildet (memory mapped).
  • Im Gegensatz zur homogenen Speicher-Abbildung von RAM haben ASICs typischerweise eine heterogene Speicher-Abbildung. Bei RAMs werden alle Adressen im gegebenen Bereich auf einen anderen Speicherbereich im RAM abgebildet, jeder Speicherbereich hat dieselbe Menge Bits, auf die zugegriffen werden kann, und alle haben dieselben Eigenschaften (z.B. können alle Bits gelesen/geschrieben werden).
  • Andererseits haben ASICs Adressen in dem gegebenen Bereich, die nicht auf ein Register in dem ASIC abgebildet werden. (Ein Speicherplatz im ASIC wird typischerweise Register genannt). Dies sind die so genannten Speicher-Löcher, wobei ein Zugriff auf diese Löcher typischerweise zu unvorhersehbaren Ergebnissen führt. Weiterhin unterscheiden sich die ASIC-Register oft von einem Speicherplatz zum anderen in der Breite. Der Anfangswert (Wert nach dem Zurücksetzen) von ASIC-Registern kann sich von einer Adresse zur anderen unterscheiden.
  • Schließlich haben ASIC-Register unterschiedliche Eigenschaften. Diese Registereigenschaften werden durch die Eigenschaften jedes Bits im Register definiert. Auf Bitebene sind die folgenden Eigenschaften definiert, ein Register kann aus einer Mischung dieser Bit-Eigenschaften bestehen:
    Schreib- und lesbare Bits, bei denen der Prozessor den Wert einstellen und die Einstellung lesen kann, nur lesbare Bits, bei denen der Prozessor nur die Einstellung lesen und sie nicht ändern kann, und zuletzt das Lese-Reset-Bit, bei dem die Hardware dieses Bit nach jedem Lesezugriff des Prozessors löscht.
  • Um in der Lage zu sein, einen Algorithmus anzuwenden, wie z.B. einen Zugriffs-Test z.B. in einem Testsystem, der eine Abstraktion von den Eigenschaften eines ASICs macht, benötigt man eine Datenstruktur, in der die Eigenschaften des ASIC gespeichert sind. Zurzeit wird dies in einem sehr großen Feld durchgeführt. Für jede Adresse des ASIC-Adressbereichs ist in diesem Feld ein Eintrag vorgesehen. Jeder Eintrag enthält die Eigenschaften des Registers an der gegebenen Adresse.
  • In einem solchen Testsystem wird eine Datenstruktur benutzt, in der jede Adresse im Bereich des ASIC-Speicherbereichs auf einen Eintrag in einem Feld von Registereigenschaften abgebildet wird. Auf diese Weise werden die Bauelemente-Eigenschaften einer Vorrichtung durch das Feld repräsentiert, d.h. durch das Speicherabbild (memory map).
  • Die Bauelemente-Eigenschaften eines zu testenden ASIC werden in einer Memory-Map abgespeichert. Die Speicherung dieser Bauelemente-Eigenschaften in den Feldern der Memory-Map erfordert eine große Speicherkapazität, da alle Daten sequentiell für jede Adresse des zu testenden ASIC gespeichert werden. Darüber hinaus ist diese Memory-Map einer Vorrichtung oft unstrukturiert mit speziellen Registereigenschaften und enthält nebenbei erwähnt unbenutzte Adressen.
  • Daher ist es wegen der Struktur einer solchen Memory-Map unvorteilhaft, dass eine große Speicherkapazität erforderlich ist, um alle Bauelemente-Eigenschaften zu speichern, und darüber hinaus ist es noch unvorteilhafter, weil wegen des Formats und der erforderlichen Verteilung der Bauelemente-Eigenschaften die Abruf-Zeit der Daten sehr groß ist.
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine Datenstruktur des oben erwähnten bekannten Typs bereitzustellen, in der aber die Daten, welche die Bauelemente-Eigenschaften des zu testenden ASIC repräsentieren, auf eine effizientere Weise gespeichert werden.
  • Gemäß der Erfindung wird dieses Ziel durch das Verfahren zur Speicherung von Registereigenschaften, das in Anspruch 1 beschrieben wird, sowie durch die in Anspruch 2 beschriebene Datenstruktur erreicht.
  • In der Tat werden durch Anordnung der Registereigenschaften der Hardware-Vorrichtung, die einen heterogenen Speicher in einer Struktur gemäß der Struktur der Hardware-Vorrichtung hat, worin die Registereigenschaften für jedes Modul oder abhängige Untermodul in einem Feld angeordnet sind, alle wichtigen Daten, d.h. alle Daten, die den Modulen und zugehörigen Untermodulen entsprechen, in der Datenstruktur vereinigt, ohne Platz frei zu lassen. Auf diese Weise werden nur alle relevanten Daten, d.h. die Bauelemente-Eigenschaften, auf eine sehr strukturierte Weise in der Datenbank vereinigt. Es muss darauf hingewiesen werden, dass diese ASIC-Struktur und die entsprechende Datenstruktur eine Baumstruktur haben können. Ein weiterer Vorteil dieser Art der Strukturierung und Speicherung der Daten in dieser Struktur ist, dass sie den einfachen und schnellen Abruf der aktuellen Bauelemente-Eigenschaften erleichtert. Eine solche Hardware-Vorrichtung kann jede beliebige Hardware-Vorrichtung sein, die einen heterogenen Speicher hat, wie z.B. ein ASIC (Application Specific Integrated Circuit, anwendungsspezifischer integrierter Schaltkreis), ein FPGA (Field Programmable Gate Array, vor Ort programmierbare Gatter-Anordnung) oder ein EPLD (Erasable Programmable Logic Device, löschbares, programmierbares Logik-Bauelement).
  • Eine weitere vorteilhafte Eigenschaft der vorliegenden Erfindung wird in Anspruch 3 beschrieben.
  • Jedes der zu einem Modul gehörenden Felder enthält eine Anzeige "Anzahl von Wiederholungen", die so angepasst ist, dass sie die Anzahl anzeigt, wie oft jedes Untermodul des Moduls im Speicherabbild der Vorrichtung erneut auftritt. Die Eigenschaften dieser Register, die in der Hardware-Vorrichtung mehr als einmal auftreten, müssen in die Datenstruktur nur einmal aufgenommen werden. Auf diese Weise wird durch Weglassen der Information, die mehr als einmal enthalten ist, eine weitere beträchtliche Verringerung der erforderlichen Speicherkapazität realisiert.
  • Eine weitere charakteristische Ausführung der vorliegenden Datenstruktur wird in Anspruch 4 beschrieben.
  • Die Bauelemente-Eigenschaften in jedem der Felder können folgendes enthalten: Einen Anfangswert des Registers, bei dem es sich um den Inhalt des Registers nach einem Zurücksetzen der Hardware-Vorrichtung handelt, Schreib-Lese-Bits, wobei es sich um Bits der Register handelt, die gelesen und geschrieben werden können, instabile Schreib-Lese-Bits, d.h. Bits, bei denen keine Garantie besteht, dass man den geschriebenen Wert lesen kann, und Lese-Reset-Bits, bei denen es sich um die Bits der Register handelt, die nach dem Lesen zurückgesetzt werden.
  • Eine weitere charakteristische Ausführung der vorliegenden Datenstruktur wird in Anspruch 5 beschrieben.
  • Die Datenstruktur ist in einer Speicher-Vorrichtung enthalten, wie z.B. in einem Speicher mit wahlfreiem Zugriff.
  • Eine weitere charakteristische Ausführung der vorliegenden Datenstruktur wird in Anspruch 6 beschrieben.
  • Die Datenstruktur kann dazu benutzt werden, allgemeine Bauelemente-Tests durchzuführen, wobei eine allgemeine Testvorrichtung die Information der Datenstruktur als Eingabe für die Ausführung von Zugriffs-Tests auf heterogene Speicher benutzen kann (z.B. auf anwendungsspezifische integrierte Schaltkreise oder vor Ort programmierbare Gatter-Anordnungen).
  • Eine weitere charakteristische Ausführung der vorliegenden Datenstruktur wird in Anspruch 7 beschrieben.
  • Die Zugriffs-Tests können die folgenden Zugriffs-Tests des ASICs sein: Schreiben/Lesen mehrerer Muster in 2 Register, Datenbus-Test, Adressbus-Test, Bauelemente-Reset-Test oder Test der Anfangswerte aller Register.
  • Es muss darauf hingewiesen werden, dass der in den Ansprüchen verwendete Begriff "enthält" nicht als Einschränkung der danach aufgelisteten Mittel interpretiert werden darf. Somit ist der Umfang des Ausdrucks "Eine Einrichtung, die Mittel A und B enthält" nicht auf Einrichtungen begrenzt, die nur aus den Komponenten A und B bestehen. Er bedeutet, dass bezogen auf die vorliegende Erfindung die einzigen relevanten Komponenten der Einrichtung A und B sind.
  • Auf ähnliche Weise muss darauf hingewiesen werden, dass der ebenfalls in den Ansprüchen verwendete Begriff "gekoppelt" nicht auf direkte Verbindungen begrenzt ist. Somit ist der Umfang des Ausdrucks "Eine Einrichtung A, die mit einer Einrichtung B gekoppelt ist" nicht auf Einrichtungen oder Systeme begrenzt, in denen ein Ausgang von Einrichtung A direkt mit einem Eingang von Einrichtung B verbunden ist. Er bedeutet, dass ein Pfad zwischen einem Ausgang von A und einem Eingang von B vorhanden ist, wobei der Pfad andere Einrichtungen oder Mittel enthalten kann.
  • Die obigen und andere Aufgaben und Eigenschaften der Erfindung werden deutlicher und die Erfindung selbst wird am besten verstanden, wenn auf die folgende Beschreibung einer Ausführung in Verbindung mit den begleitenden Zeichnungen Bezug genommen wird, in denen:
  • 1 ein Testsystem zur Durchführung des Zugriffs-Tests zeigt;
  • 2 die funktionelle Struktur von ASIC1 darstellt, wie in 1 gezeigt;
  • 3 das Speicherabbild von ASIC 1 zeigt;
  • 4 das Verfahren zur Strukturierung der Datenstruktur der vorliegenden Erfindung darstellt;
  • 5 eine Datenstruktur von ASIC 1 gemäß der vorliegenden Erfindung zeigt.
  • In den folgenden Abschnitten wird mit Bezug auf die Zeichnungen eine Implementation der vorliegenden Erfindung beschrieben. Im ersten Abschnitt dieser Beschreibung werden die Hauptelemente der Testumgebung beschrieben, wie in 1 dargestellt. Im zweiten Abschnitt werden alle Verbindungen zwischen den oben erwähnten Elementen und beschriebenen Teilen definiert.
  • Anschließend wird nur die Struktur von ASIC 1 beschrieben, da die anderen zu testenden anwendungsspezifischen integrierten Schaltkreise ASIC2, ASIC3 und ASIC 4 eine ähnliche Struktur haben, wie der anwendungsspezifische integrierte Schaltkreis ASIC1.
  • Im nachfolgenden Abschnitt wird die aktuelle Ausführungs-Erzeugung der Datenstruktur gemäß der vorliegenden Erfindung beschrieben.
  • Das wichtigste Element ist eine gedruckte Leiterplatte PCB, die ein Teil eines elektronischen Systems bildet. Diese gedruckte Leiterplatte PCB enthält einen Mikroprozessor μP zur Ausführung der Steuerungsfunktionen des Systems auf der gedruckten Leiterplatte. Weiterhin befindet sich auf der gedruckten Leiterplatte ein Speicher, der das Programm (Befehlssatz) und die Daten (Datensatz) des μP enthält. Dieser Speicher (MEM) ist oft RAM-Speicher (Random Access Memory). Schließlich enthält die gedruckte Leiterplatte anwendungsspezifische integrierte Schaltkreise ASIC1, ASIC2, ASIC3 und ASIC4 zur Durchführung der Anwendungs-Funktionen des Systems.
  • Der Mikroprozessor μP ist über einen Zugriffs-Bus B1 mit dem Speicher MEM gekoppelt und ist mit den anwendungsspezifischen integrierten Schaltkreisen ASIC1, ASIC2, ASIC3 und ASIC4 über die jeweiligen Zugriffs-Busse B2 ... B5 gekoppelt.
  • Zuerst muss erwähnt werden, dass der beschriebene anwendungsspezifische integrierte Schaltkreis ASIC 1 eine fiktive Funktionalität aufweist, da zur Erklärung der Erfindung nur die Struktur des anwendungsspezifischen integrierten Schaltkreises relevant ist. ASIC 1, wie in 1 gezeigt, enthält zwei Haupt-Funktions-Module "TABLE" und "EXTRASTUFF". Das Funktions-Modul "Table" enthält weiterhin sieben Funktions-Untermodule TableEntries (Tabelleneinträge) und ein Register ACTIVE. Jedes der Funktions-Untermodule TABLEENTRY 0...6 enthält die Register FIELD1, FIELD2 und zehn Puffer-Register BUFFER 0...9. Das Funktions-Untermodul EXTRASTUFF enthält ein Register Field3 und fünf Puffer-Register EBUFFER 0...4.
  • Diese Funktions-Module, d.h. die Module, die Kind-Module haben, repräsentieren die interne Struktur (Bausteine) des ASIC, und weitere Untermodule, die keine Kind-Module haben, sind die Register von ASIC 1.
  • Jedes der Module und/oder Untermodule weist folgende Modul-Eigenschaften auf:
    • – Versatz (Offset): (in Anzahl von Bytes) dieses Moduls bezogen auf sein Eltern-Modul
    • – Größe (Size): (in Anzahl von Bytes) dieses Moduls und aller seiner Kind-Module ohne Wiederholung dieses Moduls. Hinweis: Im Fall von Registern stellt die Größe in den meisten Fällen die Breite des Datenbusses dar.
    • – Anzeige der Anzahl der Wiederholungen, die angibt, wie oft dieses Modul oder Register im Speicherabbild wiederholt wird (mindestens 1). Für jedes Modul wird die Anzeige der Anzahl der Wiederholungen dieses Moduls in 2 in Klammern angegeben.
  • Die Register weisen zusätzlich die folgenden Registereigenschaften auf:
    • – Anfangswert: Der voreingestellte Wert des Registers nach einem Hardware- oder Software-Reset.
    • – Lese-/Schreib-Bits, welche die Bits definieren, die zum Lesen/Schreiben zugänglich sind
    • – Instabiles RW-Bit: Diese speziellen RW-Bits können in zwei Typen klassifiziert werden. Die erste Kategorie ist als die RW-Bits definiert, bei denen nicht garantiert wird, dass der gelesene Wert exakt derselbe ist, wie der zuvor geschriebene. Die zweite Kategorie ist als die RW-Bits definiert, welche die Eigenschaften anderer Bits ändern. Als ein Beispiel für die erste Kategorie kann man die RW-Bits erwähnen, bei denen der geschriebene Wert an einem anderen physikalischen Ort im ASIC gespeichert wird als die Stelle, die beim Lesezugriff gelesen wird. Ein weiters Beispiel für die erste Kategorie sind Register, die einen Zähler repräsentieren, und es besteht keine Garantie, dass dieser Zähler zwischen dem Schreib- und dem Lesezugriff nicht seinen Stand ändert. Zwei Beispiele für die zweite Kategorie: Ein RW-Bit zum Schreibschutz eines gesamten Blocks von Registern, oder das RW-Bit, welches ein Zurücksetzen des ASICs bewirkt.
    • – Lese-Reset-Bits: Definieren die Bits, die nach einem Lesezugriff zurückgesetzt werden.
  • Das Speicherabbild dieses ASIC 1 wird in der Tabelle in 3 gezeigt. Der Adressbereich von ASIC 1 beginnt an einer gegebenen Adresse (Basisadresse) und belegt einen gegebenen Adressbereich, d.h. wenn der Mikroprozessor auf diesen Adressbereich zugreift, wird ASIC1 getriggert, um diese Lese/Schreib-Anforderung abzuschließen. Das erste Register FIELD1 beginnt zum Beispiel an der Offset-Adresse X der gegebenen Basisadresse. FIELD2 beginnt an der Offset-Adresse X+8 und so weiter. Der unbenutzte Adressraum wird in der Tabelle angezeigt und darüber hinaus in der Tabelle markiert.
  • Um eine Datenstruktur der vorliegenden Erfindung zu erhalten, die eine Datenstruktur ist, in der die Bauelemente-Eigenschaften von ASIC1 auf eine Weise bereitgehalten werden, dass die Speicherung einer solchen Datenstruktur sehr effizient durchgeführt werden kann, werden die folgenden Schritte ausgeführt:
    Beginne mit dem ganz links liegenden Kind von ASIC 1, welches das Funktions-Modul TABLE ist, und stelle dieses Modul in die neue Datenstruktur. TABLE repräsentiert kein Register, so dass keine Registereigenschaften gespeichert werden. Dann gehe abwärts durch die Struktur von ASIC1 zu Untermodul TABLEENTRY0. Dasselbe gilt für TABLEENTRY0, der kein Register repräsentiert, so dass dieses Modul einfach in die neue Datenstruktur gestellt und die Registereigenschaften offen gelassen werden. Da jedoch sieben Untermodule vorhanden sind, wird die Anzeige der Anzahl von Wiederholungen in den Registereigenschaften auf den Wert 7 gesetzt, was anzeigt, dass alle vom Modul TABLEENTY abhängigen Untermodule tatsächlich siebenmal in ASIC1 verfügbar sind. Dann wird mit dem nächsten folgenden ganz links liegenden Kind von Untermodul TABLEENTRY0 fortgefahren, das aus dem Register FIELD1 besteht. Dieses Register wird zusammen mit den Registereigenschaften dieses Registers in die Struktur gestellt. Da kein ganz links liegendes Kind dieses Registers vorhanden ist, wird der rechte Bruder des Registers FIELD1 berücksichtigt, das Register FIELD2. Das Register Field 2 wird zusammen mit den Registereigenschaften dieses Registers in die Struktur gestellt. Da weiterhin kein ganz links liegendes Kind dieses Registers FIELD2 vorhanden ist, wird der rechte Bruder des Registers FIELD2 berücksichtigt, das Register BUFFER0. Das Register Buffer 0 wird zusammen mit den Registereigenschaften dieses Registers in die Struktur gestellt. Da zehn gleiche Register BUFFER 0...9 vorhanden sind, wird die Anzeige der Wiederholungen PPTNBR in den Registereigenschaften auf den Wert 10 gesetzt. Anschließend ist kein weiterer rechter Bruder dieser Register vorhanden, und es wird mit dem rechten Bruder des Moduls TABLE fortgefahren, der das Modul EXTRASTUFF ist. Stelle das Modul in die neue Datenstruktur. Es ist kein Register vorhanden, so dass keine Registereigenschaften gespeichert werden. Dann werden auf dieselbe Weise, wie oben beschrieben, die Register FIELD3 und Buffer 0...5 zusammen mit den Registereigenschaften in der Datenstruktur gespeichert, wie in 4 gezeigt.
  • Indem man in der oben beschriebenen Reihenfolge die Struktur des ASICs durchläuft, wird der Speicher des ASICs von der kleinsten bis zur größten Speicheradresse durchlaufen.
  • Zusätzlich zu diesen Registereigenschaften werden die Referenz des ganz links liegenden Kindes LCHILD und des ganz rechts liegenden Bruders RBROTH jedes Moduls oder Untermoduls in der Datenstruktur gespeichert, um die Struktur des ASICs zu registrieren, wie in 5 gezeigt. Dies erfolgt, um die Struktur beim Hinzufügen von Daten zur Datenstruktur auf dieselbe Weise zu durchlaufen, wie beim Suchen nach Daten oder beim Lesen von Daten in der Datenstruktur.
  • Es muss darauf hingewiesen werden, dass obwohl in dieser Anwendung ein anwendungsspezifischer integrierter Schaltkreis verwendet wird, jede Hardware-Vorrichtung hätte verwendet werden können, die einen heterogenen Speicher hat, wie z.B. ein FPGA (Field Programmable Gate Array) oder ein EPLD (Erasable Programmable Logic Device).
  • Es muss weiterhin darauf hingewiesen werden, dass die oben beschriebene Datenstruktur in von dem Mikroprozessor ausgeführten Zugriffs-Tests verwendet werden kann. Durch die Datenstruktur machen diese Tests eine Abstraktion der zu testenden Vorrichtung, und sind daher allgemein für alle Vorrichtungen. Das einzige Abbild des Test-Codes erlaubt die Ausführung solcher Zugriffs-Tests auf jeder testbaren Vorrichtung auf der Grundlage von Eingangssignalen, die aus der Datenstruktur abgeleitet werden, die zu der zu testenden Vorrichtung gehört. Ein solcher Zugriffs-Test eines ASICs umfasst entweder das Lesen/Schreiben mehrerer Muster in zwei Register, einen Datenbus-Test, einen Adressbus-Test, einen Bauelemente-Reset-Test oder einen Test der Anfangswerte aller Register, die einmal festgelegt wurden.
  • Neben der Datenstruktur werden die folgenden Dienste definiert, um die Entwicklung dieses allgemeinen Tests zu erleichtern:
    Durchlaufe den Speicherabbild-Baum und führe eine vordefinierte Aktivität auf allen Blättern des Baums durch, d.h. gehe sequentiell durch das Speicherabbild der gegebenen Vorrichtung und führe die vordefinierten Aktivitäten für jedes Register der Vorrichtung aus.
  • Gebe einige Register-Adressen zurück, die sich auf Register mit den meisten RW-Bits beziehen.
  • Gebe Paare von Register-Adressen zurück, deren Adressen sich exakt in 1 Bit unterscheiden und die sich auf Register mit RW-Bits beziehen. Die Menge zurückgegebener Paare basiert auf der Breite des Adressbusses.
  • Gebe die Eigenschaften eines Registers an einem gegebenen Versatz im Adressbereich des ASICs zurück.
  • Eine abschließende Anmerkung ist, dass Ausführungen der vorliegenden Erfindung oben in Form von Funktionsblöcken beschrieben werden. Aus der oben angegebenenen Funktionsbeschreibung dieser Blöcke ist es für einen Fachmann für die Entwicklung elektronischer Geräte offensichtlich, wie Ausführungen dieser Blöcke mit bekannten Elektronik-Bauelementen hergestellt werden können. Eine detaillierte Architektur des Inhaltes der Funktionsblöcke wird daher nicht angegeben.
  • Obwohl die Prinzipien der Erfindung oben in Verbindung mit einer speziellen Vorrichtung beschrieben wurden, muss deutlich verstanden werden, dass diese Beschreibung nur als Beispiel erfolgt und nicht als Einschränkung des Umfangs der Erfindung, wie in den beigefügten Ansprüchen definiert.
    • 1
    • 2
    • 3
      Figure 00130001
    • 4
      Figure 00130002
    • 5
      Figure 00130003

Claims (7)

  1. Verfahren zum Speichern von Registereigenschaften einer Hardware-Vorrichtung (ASIC1, ASIC2, ASIC3, ASIC4), die einen heterogenen Speicher hat, in einer Datenstruktur, wobei die Hardware-Vorrichtung (ASIC1, ASIC2, ASIC3, ASIC4) entsprechend einer Struktur von Modulen und abhängigen Untermodulen aufgebaut ist, wobei die Registereigenschaften Registereigenschaften der Module und der Untermodule entsprechen, DADURCH GEKENNZEICHNET, DASS das Verfahren den Schritt der Speicherung der Registereigenschaften in einer Datenstruktur entsprechend der Struktur der Hardware-Vorrichtung (ASIC1, ASIC2, ASIC3, ASIC4) umfasst, wobei die Registereigenschaften für jedes Modul oder abhängige Untermodul in einem Feld angeordnet sind.
  2. Datenstruktur zur Speicherung von Registereigenschaften einer Hardware-Vorrichtung, die einen heterogenen Speicher hat (ASIC1, ASIC2, ASIC3, ASIC4), wobei die Hardware-Vorrichtung (ASIC1, ASIC2, ASIC3, ASIC4) entsprechend einer Struktur von Modulen und abhängigen Untermodulen aufgebaut ist, wobei die Registereigenschaften Registereigenschaften der Module und der Untermodule entsprechen, DADURCH GEKENNZEICHNET, DASS die Datenstruktur so angepasst ist, die Registereigenschaften in einer Struktur entsprechend der Struktur der Hardware-Vorrichtung (ASIC1, ASIC2, ASIC3, ASIC4) zu speichern, wobei die Registereigenschaften für jedes Modul oder abhängige Untermodul in einem Feld angeordnet sind.
  3. Datenstruktur gemäß Anspruch 2, DADURCH GEKENNZEICHNET, DASS das einem Modul der Hardware-Vorrichtung entsprechende Feld eine Anzeige für die Anzahl von Wiederholungen enthält, die so angepasst ist, dass die die Anzahl von Wiederholungen eines Untermoduls des Moduls anzeigt.
  4. Datenstruktur gemäß Anspruch 2 oder 3, DADURCH GEKENNZEICHNET, DASS die Bauelemente-Eigenschaften in jedem Feld entweder einen Anfangswert eines Registers, die Lese/Schreib-Bits, instabile Lese-/Schreib-Bits, oder Lese-Reset-Bits enthalten.
  5. Speicher-Vorrichtung, DADURCH GEKENNZEICHNET, DASS die Speicher-Vorrichtung eine Datenstruktur gemäß den Ansprüchen 2 bis 4 enthält.
  6. Verfahren zur Durchführung eines Zugriffs-Tests, der von einer allgemeinen Test-Vorrichtung auszuführen ist, DADURCH GEKENNZEICHNET, DASS das Verfahren zur Durchführung des Zugriffs-Tests die Datenstruktur gemäß den Ansprüchen 2 bis 4 benutzt.
  7. Verfahren zur Durchführung eines Zugriffs-Tests gemäß Anspruch 6, DADURCH GEKENNZEICHNET, DASS das Verfahren zur Durchführung eines Zugriffs-Tests der Hardware-Vorrichtung entweder das Lesen/Schreiben mehrerer Muster in zwei Register, einen Datenbus-Test, einen Adressbus-Test, einen Bauelemente-Reset-Test oder einen Test der Anfangswerte aller Register umfasst.
DE60209201T 2002-10-28 2002-10-28 Verfahren zum Speichern von Registereigenschaften in einer Datenstruktur und dazugehörige Datenstruktur Expired - Lifetime DE60209201T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP02292677A EP1416290B1 (de) 2002-10-28 2002-10-28 Verfahren zum Speichern von Registereigenschaften in einer Datenstruktur und dazugehörige Datenstruktur

Publications (2)

Publication Number Publication Date
DE60209201D1 DE60209201D1 (de) 2006-04-20
DE60209201T2 true DE60209201T2 (de) 2006-11-16

Family

ID=32088069

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60209201T Expired - Lifetime DE60209201T2 (de) 2002-10-28 2002-10-28 Verfahren zum Speichern von Registereigenschaften in einer Datenstruktur und dazugehörige Datenstruktur

Country Status (5)

Country Link
US (1) US7346749B2 (de)
EP (1) EP1416290B1 (de)
AT (1) ATE317982T1 (de)
DE (1) DE60209201T2 (de)
ES (1) ES2253503T3 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7827324B2 (en) * 2006-09-20 2010-11-02 Integrated Device Technology Inc. Method of handling flow control in daisy-chain protocols
US10990664B2 (en) * 2017-11-20 2021-04-27 International Business Machines Corporation Eliminating and reporting kernel instruction alteration

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4450560A (en) * 1981-10-09 1984-05-22 Teradyne, Inc. Tester for LSI devices and memory devices
US5243274A (en) * 1992-08-07 1993-09-07 Westinghouse Electric Corp. Asic tester
US5991907A (en) * 1996-02-02 1999-11-23 Lucent Technologies Inc. Method for testing field programmable gate arrays
US5812416A (en) * 1996-07-18 1998-09-22 Lsi Logic Corporation Integrated circuit design decomposition
US6120551A (en) * 1997-09-29 2000-09-19 Xilinx, Inc. Hardwire logic device emulating an FPGA
US6148432A (en) * 1997-11-17 2000-11-14 Micron Technology, Inc. Inserting buffers between modules to limit changes to inter-module signals during ASIC design and synthesis
US6102963A (en) * 1997-12-29 2000-08-15 Vantis Corporation Electrically erasable and reprogrammable, nonvolatile integrated storage device with in-system programming and verification (ISPAV) capabilities for supporting in-system reconfiguring of PLD's
JP3809727B2 (ja) * 1998-06-17 2006-08-16 富士ゼロックス株式会社 情報処理システム、回路情報管理方法および回路情報記憶装置

Also Published As

Publication number Publication date
ATE317982T1 (de) 2006-03-15
DE60209201D1 (de) 2006-04-20
EP1416290A1 (de) 2004-05-06
US7346749B2 (en) 2008-03-18
EP1416290B1 (de) 2006-02-15
ES2253503T3 (es) 2006-06-01
US20040153820A1 (en) 2004-08-05

Similar Documents

Publication Publication Date Title
DE102006037162B4 (de) Verfahren und Vorrichtung und deren Verwendung zur Prüfung des Layouts einer elektronischen Schaltung
DE19530100C2 (de) Integrierte Dram-Schaltung mit Reihenkopierschaltung und Verfahren
DE3338333A1 (de) Logiksimulatorgeraet zur gueltigkeitspruefung einer logikstruktur
DE3607015A1 (de) Verfahren und vorrichtung zur funktionspruefung von direktzugriffsspeichern
DE19510902A1 (de) Emulation eines Mehrtor-Speichers unter Verwendung von Markierregistern
DE19501560A1 (de) Bildverarbeitungsschaltung zum Verarbeiten von Bilddaten für eine Grafik, integrierte Halbleiterschaltungseinrichtung, welche eine derartige Bildverarbeitungsschaltung enthält, Bildverarbeitungssystem, welches eine derartige integrierte Halbleiterschaltungseinrichtung enthält, und Verfahren zum Testen einer derartigen integrierten Halbleiterschaltungseinrichtung
DE3906497A1 (de) Selbstkonfigurierendes speichersystem
DE2328869A1 (de) Verfahren zur pruefung eines digitalen speichersystems sowie zur durchfuehrung dieses verfahrens dienendes selbstpruefendes digitales speichersystem
DE19645745A1 (de) Dynamischer Schreib-/Lesespeicher
DE19647159A1 (de) Verfahren zum Testen eines in Zellenfelder unterteilten Speicherchips im laufenden Betrieb eines Rechners unter Einhaltung von Echtzeitbedingungen
DE4031136A1 (de) Fehlersimulationsverfahren
DE2940653A1 (de) Programmierbare logische anordnung
DE4117672A1 (de) Verfahren und vorrichtung zur steuerung eines zwischen einer zentraleinheit und einem arbeitsspeicher angeordneten cache-speichers
DE102007032273A1 (de) Direktzugriffsspeicher mit Prüfschaltung
DE102006007326A1 (de) Fehlerkorrekturschaltung und -Verfahren
DE10032256C2 (de) Chip-ID-Register-Anordnung
DE4234194A1 (de) System und verfahren zur speichersegmentierung fuer einen mikroprozessor
EP1444700B1 (de) Speichertest
DE60209201T2 (de) Verfahren zum Speichern von Registereigenschaften in einer Datenstruktur und dazugehörige Datenstruktur
DE4302754C1 (de) Monolithisch integrierte Datenspeicheranordnung und Verfahren zu deren Betrieb
DE3410497A1 (de) Rechneranordnung
DE10135966A1 (de) Verfahren zum On-Chip-Testen von Speicherzellen einer integrierten Speicherschaltung
DE10213009A1 (de) Verfahren zum elektronischen Testen von Speichermodulen
DE10127194B4 (de) Verfahren und Vorrichtung zum Ausblenden von nicht funktionstüchtigen Speicherzellen
EP1068580B1 (de) Verfahren zum vergleich elektrischer schaltungen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: ALCATEL LUCENT, PARIS, FR