-
Die
vorliegende Erfindung bezieht sich auf eine Prüfvorrichtung, ein Programm
und ein Prüfverfahren.
Insbesondere bezieht sich die vorliegende Erfindung auf eine Prüfvorrichtung,
ein Programm und ein Prüfverfahren
zum Steuern einer zu einem geprüften
Speicher zu liefernden Adresse.
-
Bei
der gegenwärtigen
Speichervorrichtung sind eine Speichereingangsadresse, die zum Bezeichnen
einer Speicherzelle von außerhalb
eingegeben wird, und eine physikalische Adresse, die die Anordnung
von Speicherzellen innerhalb der Speichervorrichtung zeigt, verschieden
voneinander. Das heißt,
die Speichervorrichtung übersetzt
eine Speichereingangsadresse, die von außerhalb bezeichnet wird, in
einer Datenleseanforderung und gibt dann den Inhalt einer durch
die physikalische Adresse bezeichneten Speicherzelle aus. Auf diese
Weise ist es möglich,
obgleich ein kontinu ierlicher Speicherbereich von außerhalb
bezeichnet ist, eine Zugriffsgeschwindigkeit durch abwechselndes
Zugreifen zu mehreren Speicherbänken
zu verbessern und zu einer vorläufigen
Speicherzelle anstelle einer Speicherzelle, die sich nach der Herstellung
als fehlerhaft erwiesen hat, zuzugreifen.
-
Eine
physikalische Position jeder Speicherzelle kann sich auf Fehler
der Speichervorrichtung beziehen. Wenn beispielsweise eine Speichervorrichtung
einen Verdrahtungsfehler hat, können
in eine bestimmte Speicherzelle geschriebene Daten in eine andere
Speicherzelle benachbart der Speicherzelle geschrieben werden. Um
einen derartigen Fehler zu erfassen, ist es erforderlich, dass eine
Prüfvorrichtung
Daten in eine bestimmte Speicherzelle schreibt und Daten aus einer
anderen Speicherzelle benachbart der Speicherzelle liest. Aus diesem Grund
ist es wünschenswert,
dass die Prüfvorrichtung
zu jeder Speicherzelle mittels einer physikalischen Adresse zugreifen
kann.
-
Um
dies zu realisieren, hat eine herkömmliche Prüfvorrichtung einen Übersetzungsspeicher, der
eine Übersetzungstabelle
zum Übersetzen
einer physikalischen Adresse in eine Speichereingangsadresse speichert.
Dieser Übersetzungsspeicher
speichert eine Speichereingangsadresse an einer durch eine physikalische
Adresse bezeichneten Adresse. Eine herkömmliche Prüfvorrichtung übersetzt
eine erzeugte physikalische Adresse in eine Speichereingangsadresse
mittels dieses Übersetzungsspeichers und
liefert die übersetzte
Adresse zu einer geprüften Vorrichtung.
Wenn jedoch die Busbreite einer Adresse einer Speichervorrichtung
mit hohem Leistungsvermögen
der Speichervorrichtung zunimmt, vergrößert sich die erforderliche
Kapazität
des Übersetzungsspeichers
und so mit steigen die Wartungs- und Verwaltungskosten für die Prüfvorrichtung.
-
Es
ist daher eine Aufgabe der vorliegenden Erfindung, eine Prüfvorrichtung,
ein Programm und ein Prüfverfahren
vorzusehen, die die vorgenannten Probleme lösen können. Die vorstehenden und
andere Aufgaben können
gelöst
werden durch in den unabhängigen
Ansprüchen
beschriebene Kombinationen. Die abhängigen Ansprüche definieren
weitere vorteilhafte und beispielhafte Kombinationen der vorliegenden
Erfindung.
-
Um
dieses Problem zu lösen,
ist gemäß dem ersten
Aspekt der vorliegenden Erfindung eine Prüfvorrichtung vorgesehen, die
einen geprüften
Speicher prüft.
Die Prüfvorrichtung
enthält:
Eine Adressenerzeugungsschaltung, die eine zu einem Speicherblock
innerhalb des geprüften
Speichers zu liefernde physikalische Adresse erzeugt; mehrere Maskenregister,
die entsprechend jedem von mehreren Speichereingangsbits, die zumindest
einen Teil einer zu dem geprüften
Speicher zu liefernden Speichereingangsadresse bilden, vorgesehen
sind, wobei die mehreren Maskenregister einstellen, ob mehrere physikalische
Bits, die zumindest einen Teil der physikalischen Adresse bilden,
für jedes
physikalische Bit maskiert sind; mehrere arithmetische Maskenschaltungen,
die entsprechend jedem der mehreren Speichereingangsbits vorgesehen
sind, wobei die mehreren arithmetischen Maskenschaltungen jeweils
in Übereinstimmung
mit einem Wert des Maskenregisters entsprechend diesem Speichereingangsbit
maskieren; mehrere logische Operationsschaltungen, die entsprechend
jedem der mehreren Speichereingangsbits vorgesehen sind, wobei die mehrere
logischen Operationsschaltungen jeweils Bitdaten ausgeben, die erhalten
wurden durch Durchführung
einer vorbestimmten logi schen Operation bei einem Maskierergebnis
durch die arithmetische Maskenschaltung als das Speichereingangsbit; und
eine Adressenzuführungsschaltung,
die die Speichereingangsadresse enthaltend die von den mehreren
logischen Operationsschaltungen ausgegebenen mehreren Speichereingangsbits
zu dem geprüften
Speicher liefert.
-
Darüber hinaus
kann jeder der logischen Operationsschaltungen eine Exklusiv-Oder-Verknüpfung der
maskierten mehreren physikalischen Bits, die von den mehreren arithmetischen
Maskierschaltungen ausgegeben wurden, berechnen und die Bitdaten
auf der Grundlage der berechneten Exklusiv-Oder-Verknüpfung als
das Speichereingangsbit ausgeben. Weiterhin kann die Prüfvorrichtung
ein Umkehrungssteuerregister enthalten, das entsprechend jedem der
mehreren Speichereingangsbits vorgesehen ist, wobei das Umkehrsteuerregister
einstellt, ob ein logischer Wert des von der logischen Operationsschaltung
berechnet Exklusiv-Oder-Verknüpfung
umgekehrt und als das Speichereingangsbit ausgegeben wird. Weiterhin
kann die Prüfvorrichtung
enthalten: Einen Übersetzungsspeicher,
der eine übersetzte
Adresse, die aus Bits von zumindest einem Teil der physikalischen
Adresse besteht, aufnimmt und mit dieser übersetzten Adresse assoziierte
Daten als eine Bestimmungsadresse ausgibt; und eine Auswahlschaltung,
die auswählt,
welche von einer Adresse enthaltend die Bestimmungsadresse in Bits
von zumindest einem Teil hiervon und einer Adresse enthaltend die
mehreren Speichereingangsbits, die von den mehreren logischen Operationsschaltung
ausgegeben wurde, als die Speichereingangsadresse ausgegeben wird,
und die Adressenzuführungsschaltung
kann die von der Auswahlschaltung ausgegebene Speichereingangsadresse zu
den geprüften
Speicher liefern.
-
Darüber hinaus
kann die Prüfvorrichtung weiterhin
enthalten: Eine Erwerbsschaltung, die eine Entsprechung zwischen
der physikalischen Adresse und der Speichereingangsadresse erwirbt;
eine Entscheidungsschaltung, die entscheidet, ob eine durch die
von der Erwerbsschaltung erworbene Entsprechung bezeichnete Adressenübersetzung
in der Lage ist, mittels einer logischen Operation durch die mehreren
arithmetischen Maskenschaltungen und die mehreren logischen Operationsschaltungen durchgeführt zu werden;
eine Einstellschaltung, die die mehreren Maskenregister einstellt,
wenn beurteilt wurde, dass die Adressenübersetzung in der Lage ist,
mittels der logischen Operation durchgeführt zu werden, und den Inhalt
des Übersetzungsspeichers einstellt,
wenn beurteilt wurde, dass die Adressenübersetzung nicht in der Lage
ist, mittels der logischen Operation durchgeführt zu werden; und eine Steuerschaltung,
die die Auswahlschaltung so einstellt, dass die Adresse enthaltend
die mehreren Speichereingangsbits, die von den mehreren logischen
Operationsschaltungen ausgegeben wurden, als die Speichereingangsadresse
ausgegeben wird, wenn beurteilt wurde, dass die Adressenübersetzung
in der Lage ist, mittels der logischen Operation durchgeführt zu werden,
und die Auswahlschaltung so einstellt, dass die Adresse enthaltend
die Bestimmungsadresse in Bits von zumindest einem Teil hiervon
als die Speichereingangsadresse ausgegeben wird, wenn beurteilt
wurde, dass die Adressenübersetzung nicht
in der Lage ist, mittels der logischen Operation durchgeführt zu werden.
-
Gemäß dem zweiten
Aspekt der vorliegenden Erfindung ist für eine Steuervorrichtung zum Steuern
einer Prüfvorrichtung,
die einen geprüften Speicher
prüft, vorgesehen.
Die Prüfvorrichtung
enthält:
Eine Adressenerzeugungsschaltung, die eine zu einem Speicherblock
innerhalb des geprüften
Speichers zu liefernde physikalische Adresse erzeugte; mehrere Maskenregister,
die entsprechend jedem von mehreren Speichereingangsbits, die zumindest einen
Teil einer zu dem geprüften
Speicher zu liefernden Speichereingangsadresse bilden, vorgesehen sind,
wobei mehreren Maskenregister einstellen, ob mehrere physikalische
Bits, die zumindest einen Teil der physikalischen Adresse bilden,
für jedes
der physikalischen Bits maskiert sind; mehrere arithmetische Maskenschaltungen,
die entsprechend jedem der mehreren Speichereingangsbits vorgesehen
sind, wobei die mehreren arithmetischen Maskenschaltungen jeweils
die physikalische Adresse in Übereinstimmung
mit einem Wert des Maskenregisters entsprechende diesem Speichereingangsbit
maskieren; mehrere logische Operationsschaltungen, die entsprechend
jedem der mehreren Speichereingangsbits vorgesehen sind, wobei die
mehreren logischen Operationsschaltungen jeweils Bitdaten ausgeben, die
erhalten wurden durch Durchführung
einer vorbestimmten logischen Operation bei einem Maskenergebnis
durch die arithmetische Maskenschaltung, als das Speichereingangsbit;
einen Übersetzungsspeicher,
der eine übersetzte
Adresse, die aus Bits von zumindest einem Teil der physikalischen
Adresse bestehen, aufnimmt und mit dieser übersetzten Adresse assoziierte
Daten als eine Bestimmungsadresse ausgibt; eine Auswahlschaltung,
die auswählt,
welche von einer Adresse enthaltend die Bestimmungsadresse in Bits
von zumindest einem Teil hiervon und eine Adresse enthaltend die
mehreren Speichereingangsbits, die von den mehreren logischen Operationsschaltungen
ausgegeben wurden, als die Speichereingangsadresse ausgegeben wird;
und eine Adressenzuführungsschaltung,
die die von der Auswahl schaltung ausgegebene Speichereingangsadresse
zu dem geprüften
Speicher liefert, und das Programm bewirkt, dass die Steuervorrichtung
wirksam ist als: Eine Erwerbsschaltung, die eine Entsprechung zwischen
der physikalischen Adresse und der Speichereingangsadresse erwirbt;
eine Bestimmungsschaltung, die bestimmt, ob die durch die von der
Erwerbsschaltung erworbene Entsprechung in der Lage ist, mittels
einer logischen Operation durch die mehreren arithmetischen Maskenschaltungen und
die mehreren logischen Operationsschaltungen durchgeführt zu werden;
eine Einstellschaltung, die die mehreren Maskenregister einstellt,
wenn beurteilt wurde, dass die Adressenübersetzung in der Lage ist,
mittels der logischen Operation durchgeführt zu werden, und den Inhalt
des Übersetzungsspeichers einstellt,
wenn beurteilt wurde, dass die Adressenübersetzung nicht in der Lage
ist, mittels der logischen Operation durchgeführt zu werden; und eine Steuerschaltung,
die die Auswahlschaltung so einstellt, dass die Adresse enthaltend
die mehreren Speichereingangsbits, die von den mehreren logischen
Operationsschaltungen ausgegeben wurden, als die Speichereingangsadresse
ausgegeben wird, wenn beurteilt wurde, dass die Adressenübersetzung
in der Lage ist, mittels der logischen Operation durchgeführt zu werden,
und die Auswahlschaltung so einstellt, dass die Adresse enthaltend
die Bestimmungsadresse in Bits von zumindest einem Teil hiervon
als die Speichereingangsadresse ausgegeben wird, wenn beurteilt
wurde, dass die Adressenübersetzung nicht
in der Lage ist, mittels der logischen Operation durchgeführt zu werden.
-
Gemäß dem dritten
Aspekt der vorliegenden Erfindung ist ein Prüfverfahren zum Prüfen eines
geprüften
Speichers mittels einer Prüfvorrichtung
vorgesehen.
-
Das
Prüfverfahren
enthält:
Erzeugen einer zu einem Speicherblock innerhalb des geprüften Speichers
zu liefernden physikalischen Adresse; Maskieren entsprechend jedem
von mehreren Speichereingangsbits, die zumindest einen Teil einer
zu dem geprüften
Speicher zu liefernden Speichereingangsadresse bilden, von jedem
von mehreren physikalischen Bits, die zumindest einen Teil der physikalischen
Adresse bilden, in Übereinstimmung
mit einem Wert des Maskenregisters entsprechend diesem Speichereingangsbit;
jeweiliges Ausgeben von Bitdaten, die durch Durchführen einer
vorbestimmten logischen Operation bei einem Maskierergebnis durch
die Maskierung als das Speichereingangsbit erhalten wurden, entsprechend
jedem der mehreren Speichereingangsbits; und Liefern der Speichereingangsadresse
enthaltend die mehreren bei dem Ausgeben ausgegebenen Speichereingangsbits
zu dem geprüften
Speicher.
-
Die
Zusammenfassung der Erfindung beschreibt nicht notwendiger Weise
alle erforderlichen Merkmale der vorliegenden Erfindung. Die vorliegende
Erfindung kann auch eine Unterkombination der vorbeschriebenen Merkmale
sein.
-
Durch
die vorliegende Erfindung ist es möglich, auf die physikalische
Anordnung von Speicherzellen in einer Speichervorrichtung bezogene
Fehler wirksamer als vorher zu erfassen.
-
Die
Erfindung wird im Folgenden anhand von in den Figuren dargestellten
Ausführungsbeispielen näher erläutert. Es
zeigen:
-
1 die
Gesamtkonfiguration einer Prüfvorrichtung 10,
-
2 eine
funktionelle Konfiguration eines Mustergenerators 120,
-
3 eine
funktionelle Konfiguration eines Adressenübersetzungsmoduls 220,
-
4 eine
funktionelle Konfiguration eines Operationsmoduls 310,
-
5 ein
spezifisches Beispiel für
die Übersetzung
einer physikalischen Adresse in eine Speichereingangsadresse mittels
eines Adressenübersetzungsmoduls 220,
-
6 eine
funktionelle Konfiguration einer Steuervorrichtung 150,
-
7 ein
Flussdiagramm eines Vorgangs zum Einstellen einer Adressenübersetzungsregel von
einer physikalischen Adresse in eine Speichereingangsadresse, und
-
8 ein
Flussdiagramm eines Vorgangs zum Prüfen eines geprüften Speichers 100.
-
1 zeigt
die Gesamtkonfiguration einer Prüfvorrichtung 10.
Die Prüfvorrichtung 10 enthält einen
Taktgenerator 110, einen Mustergenerator 120, eine
Wellenform-Formungsvorrichtung 130. einen logischen Komparator 140 und
eine Steuervorrichtung 150 und prüft einen geprüften Speicher 100,
der eine Halbleiterspeichervorrichtung oder dergleichen ist. Der
Taktgenerator 110 erzeugt einen Bezugstakt wie einen Zyklustakt,
um den Bezugstakt zu dem Mustergenerator 120 zu liefern.
Der Mustergenerator 120 erzeugt Prüf musterdaten, die in den geprüften Speicher 100 einzugeben
sind, eine Speichereingangsadresse, die in den geprüften Speicher 100 einzugeben
ist, und einen Steuerbefehl, der in den geprüften Speicher 100 einzugeben
ist, auf der Grundlage des Zyklustakts. Dann gibt der Mustergenerator 120 diese
Daten, eine Speichereingangsadresse und einen Steuerbefehl zu der
Wellenform-Formungsvorrichtung 130 aus. Darüber hinaus
gibt der Mustergenerator 120 Prüfmusterdaten zu dem logischen
Komparator 140 als Erwartungsdaten aus.
-
Die
Wellenform-Formungsvorrichtung 130 formt das Eingangsprüfmuster,
die Speichereingangsadresse und den Steuerbefehl in eine Signalwellenform,
die in der Lage ist, in den geprüften
Speicher 100 eingegeben zu werden, und liefert die Signalwellenform
zu den geprüften
Speicher 100. Der logische Komparator 140 liest
in dem geprüften
Speicher 100 gespeicherte Daten und vergleicht die gelesenen
Daten mit den von dem Mustergenerator 120 eingegebenen
Erwartungsdaten. Wenn die gelesenen Daten gleich den Erwartungsdaten
sind, gibt der logische Komparator 140 ein Prüfergebnis
aus, das zeigt, dass der geprüfte
Speicher 100 eine fehlerfreie Einheit ist. Die Steuervorrichtung 150 führt verschiedene
Typen von Einstellungen bei dem Mustergenerator 120 durch.
Insbesondere führt
die Steuervorrichtung 150 eine Einstellung zum Übersetzen
einer physikalischen Adresse, die die physikalische Anordnung von
in dem geprüften
Speicher 100 enthaltenen Speicherzellen zeigt, in eine
Speichereingangsadresse, die von außerhalb des geprüften Speichers 100 eingegeben
werden sollte, um zu dem geprüften Speicher 100 zuzugreifen,
durch.
-
2 zeigt
eine funktionelle Konfiguration des Mustergenerators 120.
Der Mustergenerator 120 hat einen Befehlsspeicher 200,
eine Folgesteuerschaltung 210, ein Adressenübersetzungsmodul 220,
ein Steuersignal-Erzeugungsmodul 230 und
ein Datenerzeugungsmodul 240. Der Befehlsspeicher 200 speichert
ein Programm auf der Grundlage eines Algorithmus zum Steuern einer
Prüfung.
Dieses Programm enthält
Informationen zum Erzeugen von Prüfdaten, physikalischen Adressen
und in jedem Prozessschritt für
eine Prüfung
zu dem geprüften Speicher 100 zu
liefernde Steuerbefehle zusätzlich zu
befehlen, die von der Folgesteuerschaltung 210 ausgeführt werden,
um einen Steuerfluss zu ändern.
-
Die
Folgesteuerschaltung 210 spielt eine Rolle als eine Adressenerzeugungsschaltung
gemäß der vorliegenden
Erfindung. Insbesondere führt
die Folgesteuerschaltung 210 die indem in dem Befehlsspeicher 200 gespeicherten
Programm enthaltenen Befehle zum Erzeugen von Prüfdaten, physikalischen Adressen
und Steuerbefehlen aus. Hier ist eine physikalische Adresse keine
Adresse, die von außerhalb
des geprüften
Speichers 100 zugeführt werden
sollte, sondern sie ist eine zu einem Speicherblock innerhalb des
geprüften
Speichers 100 zu liefernde physikalische Adresse. Das heißt, eine
physikalische Adresse zeigt die Anordnung von Speicherzellen innerhalb
eines Speicherblocks. Ein Ausführungsergebnis
jedes Befehls wird in den Befehlsspeicher 200 eingegeben,
und dann wird ein als nächster
auszuführender
Befehl aus dem Befehlsspeicher 200 gelesen und in die Folgesteuerschaltung 210 eingegeben.
-
Das
Adressenübersetzungsmodul 220 übersetzt
die von dem Befehlsspeicher 200 ausgegebene physikalische
Adresse in eine Speichereingangsadresse gemäß einem von der Folgesteuerschaltung 210 durchgeführten Prozess und
gibt die Speichereingangsadresse zu der Wellenform-Formungsschaltung 130 und
dem logischen Komparator 140 aus. Das Adressenübersetzungsmodul 220 kann eine
Einstellung für
eine Übersetzungsregel
einer Adresse von der Steuervorrichtung 150 empfangen. Das
Steuersignal-Erzeugungsmodul 230 gibt einen von dem Befehlsspeicher 200 ausgegebenen
Steuerbefehl gemäß einem
durch die Folgesteuerschaltung 210 durchgeführten Prozess
zu der Wellenform-Formungsvorrichtung 130 aus. Das Datenerzeugungsmodul 240 gibt
von dem Befehlsspeicher 200 ausgegebene Prüfdaten zu
der Wellenform-Formungsvorrichtung 130 und dem logischen
Komparator 140 gemäß einem
von der Folgesteuerschaltung 210 durchgeführten Prozess
aus.
-
3 zeigt
eine funktionelle Konfiguration des Adressenübersetzungsmoduls 220.
Das Adressenübersetzungsmodul 220 hat
eine Auswahlschaltung 300, zwei Operationsmodule 310,
zwei Übersetzungsspeicher 320,
eine Auswahlschaltung 340, eine Auswahlschaltung 350 und
eine Adressenzuführungsschaltung 360.
Das Adressenübersetzungsmodul 220 empfängt die
physikalische Adresse von dem Befehlsspeicher 200. Es wird
angenommen, dass eine Adressenbreite dieser physikalischen Adresse 48 Bits
beträgt.
Die Auswahlschaltung 300 wählt 16 Bits aus mehreren physikalischen
Bits, die die physikalische Adresse bilden, aus und gibt die ausgewählten Bits
zu einem der Übersetzungsspeicher 320 aus. Darüber hinaus
wählt der
Auswahlabschnitt 300 andere 16 Bits aus den mehreren physikalischen
Bits, die die physikalische Adresse bilden, aus und gibt die ausgewählten anderen
Bits zu dem anderen der Übersetzungsspeicher 320 aus.
Die Auswahlschaltung 300 kann auswählen, welche Gruppe der physikalischen
Bits zu einem der Übersetzungsspeicher 320 ausgegeben
wird, auf der Grundlage der von der Steuervorrichtung 150 empfangenen
Einstellung.
-
Jeder
der Übersetzungsspeicher 320 nimmt eine übersetzte
Adresse, die aus Bits von zumindest einem Teil der physikalischen
Adresse besteht, auf und gibt mit der übersetzten Adresse assoziierte
Daten als eine Bestimmungsadresse aus. Beispielsweise übersetzt
jeder der Übersetzungsspeicher 320 16 Bits
aus den die physikalische Adresse bildenden physikalischen Bits
in 16 Bits aus den die Speichereingangsadresse bildenden Speichereingangsbits und
gibt die übersetzten
Bits zu der Auswahlschaltung 340 aus. Die verbleibenden
physikalischen Bits, die von den zwei Übersetzungsspeichern 320 nicht umgewandelt
wurden, werden ohne Modifikation als das Speichereingangsbit zu
der Auswahlschaltung 340 ausgegeben. Die Auswahlschaltung 340 ordnet die
Speichereingangsbits neu anhand der von jedem der Übersetzungsspeicher 320 ausgegebenen
16 Bits und der von der Auswahlschaltung 300 ausgegebenen
verbliebenen physikalischen Bits und gibt die neu angeordneten Bits
zu der Auswahlschaltung 350 aus. Das heißt, eine
zu der Auswahlschaltung 350 ausgegebene Adresse enthält eine
durch den Übersetzungsspeicher 320 in
zumindest einem Teil hiervon übersetzte
Bestimmungsadresse.
-
Jedes
der Operationsmodule 310 empfängt 24 Bits aus die physikalische
Adresse bildenden physikalischen Bits. Jedes der Operationsmodule 310 erzeugt
Bitdaten, die durch Durchführen
einer logischen Operation bei 24 physikalischen Bits erhalten wurden,
als 24 Bit-Speichereingangsbits, die die Speichereingangsdaten bilden,
und gibt die Bitdaten zu der Auswahlschaltung 350 aus.
Die Auswahlschaltung 350 wählt aus, ob die von der Auswahlschaltung 340 ausgegebene
Speichereingangsadresse oder die die mehreren Spei chereingangsbits enthaltende
Adresse, die von den mehreren Operationsmodulen 310 ausgegeben
wurde, als die Speichereingangsadresse ausgegeben wird. Diese Auswahl
kann durchgeführt
werden auf der Grundlage der Einstellung durch die Steuervorrichtung 150.
die Adressenzuführungsschaltung 360 liefert
die von der Auswahlschaltung 350 ausgegebene Speichereingangsadresse über die
Wellenform-Formungsvorrichtung 130 zu dem geprüften Speicher 100.
-
Wie
vorstehend beschrieben ist, ist gemäß einer in 3 gezeigten
Konfiguration ein Übersetzungsspeicher
für die
Adressenübersetzung
nicht erforderlich und somit kann Zunahme der Größe der Prüfvorrichtung 10 selbst
dann verhindert werden, wenn eine Speichervorrichtung ein hohes
Leistungsvermögen
hat. Weiterhin kann die Prüfvorrichtung 10 eine
Austauschbarkeit mit einer herkömmlichen
Prüfvorrichtung
aufrechterhalten durch Verwendung eines Übersetzungsspeichers zusammen
mit einer engen Adressenbusbreite. Beispielsweise kann, obgleich
ein Benutzer eine herkömmliche
Software zum Erzeugen von Daten des Übersetzungsspeichers hat, die
Prüfvorrichtung 10 gemäß dem vorliegenden Ausführungsbeispiel
ohne Modifikation verwendet werden.
-
4 zeigt
eine funktionelle Konfiguration des Operationsmoduls 310.
In 4 ist eines der beiden Operationsmodule 310 als
repräsentativ
beschrieben. Da das andere Operationsmodul 310 im wesentlichen
dieselbe Konfiguration wie die dieses Operationsmoduls 310 hat,
wird deren Beschreibung weggelassen. Das Operationsmodul 310 hat
mehrere arithmetische Bitschaltungen 400 und mehrere Register 410.
Jede der mehreren arithmetischen Bitschaltungen 400 ist
entsprechend jedem der mehreren Speichereingangsbits, die zumindest
einen Teil der Speichereingangsadresse bilden, vorgesehen, um zu
dem geprüften
Speicher 100 geliefert zu werden. Jede der mehreren arithmetischen
Bitschaltungen 400 in einem Beispiel nach 4 ist
entsprechend allen Speichereingangsbits, die die Speichereingangsadresse
bilden, vorgesehen. Darüber
hinaus ist jedes der mehreren Register 410 entsprechend
jedem der mehreren Speichereingangsbits vorgesehen.
-
Jedes
der Register 410 wirkt als jeweils ein Maskenregister und
ein Umkehrsteuerregister gemäß der vorliegenden
Erfindung. Das Register 410 speichert 25 Bit-Maskendaten
in einem Beispiel nach 4. In dem Fall einer logischen
Operation zu Erzeugen einer Speichereingangsadresse aus einer physikalischen
Adresse mittels Maskendaten von 24 Bits niedrigerer Ordnung stellt
das Register 410 ein, ob mehrere physikalische Bits, die
zumindest einen Teil einer physikalischen Adresse bilden, für jedes physikalische
Bit maskiert sind. Darüber
hinaus stellt das Register 410 ein, ob ein logischer Wert
einer Exklusiv-ODER-Verknüpfung, der
durch die logische Operationsschaltung 440 berechnet ist,
umgekehrt ist mittels Ein-Bit-Maskendaten
höherer
Ordnung, um als ein Speichereingangsbit ausgegeben zu werden.
-
Jede
der arithmetischen Bit-Schaltungen 400 hat eine arithmetische
Maskenschaltung 420 und eine logische Operationsschaltung 440.
Jede der arithmetischen Maskenschaltungen 420 nimmt eine physikalische
Adresse auf. Dann maskiert die arithmetische Maskenschaltung 420 entsprechend
jedem Speichereingangsbit die physikalische Adresse in Übereinstimmung
mit einem Wert des Registers 410 entsprechend diesem Speichereingangsbit.
Als ein spezifisches Beispiel für
eine Kon figuration hat die arithmetische Maskenschaltung 420 ein
UND-Glied 430 entsprechend jedem physikalischen Bit. Das UND-Glied 430 erhält ein logisches
Produkt des entsprechenden physikalischen Bits und des entsprechenden
Bits in den Maskendaten, die in dem Register 410 gespeichert
sind, um das logische Produkt zu der logischen Operationsschaltung 440 auszugeben.
-
Die
logische Operationsschaltung 440 entsprechend jedem Speichereingangsbit
gibt Bitdaten aus, die erhalten wurden durch Durchführen einer vorbestimmten
logischen Operation bei einem Maskierergebnis durch die arithmetische
Maskierschaltung 420, als dieses Speichereingangsbit. Insbesondere
hat die logische Operationsschaltung 440 ein Exklusiv-ODER-Glied 450,
das eine Exklusiv-ODER-Verknüpfung
der maskierten mehreren physikalischen Bits, die von der entsprechenden arithmetischen
Maskierschaltung 420 ausgegeben wurden, berechnet. Dann
gibt die logische Operationsschaltung 440 Bitdaten auf
der Grundlage der berechneten Exklusiv-ODER-Verknüpfung als
das Speichereingangsbit aus. Die logische Operationsschaltung 440 kann
weiterhin ein Exklusiv-ODER-Glied 460 haben, das einen
logischen Wert der berechneten Exklusiv-ODER-Verknüpfung umkehrt auf der Grundlage
der Einbit-Maskendaten höherer Ordnung
des Registers 410 und den umgekehrten Wert als das Speichereingangsbit
ausgibt. Auf diese Weise wird die Speichereingangsadresse enthaltend
die mehreren Speichereingangsbits, die von den mehreren logischen
Operationsschaltungen 440 ausgegeben wurden, über die
Auswahlschaltung 350 zu der Adressenzuführungsschaltung 360 ausgegeben
und wird von der Adressenzuführungsschaltung 360 zu
dem geprüften
Speicher 100 geliefert.
-
5 zeigt
ein spezifisches Beispiel für
die Über setzung
einer physikalischen Adresse in eine Speichereingangsadresse mittels
des Adressenübersetzungsmoduls 220.
In der vorliegenden Zeichnung zeigt die linke Seite eine Übersetzung
durch die Prüfvorrichtung 10 und
die rechte Seite zeigt eine Übersetzung
durch den geprüften
Speicher 100. Gemäß der rechten
Seite übersetzt
der geprüfte
Speicher 100 Speichereingangsbits B1' und B0', die die Speichereingangsadresse bilden,
in physikalische Bits B1 und B0. Dieses Übersetzung des Bits B1' erzeugt eine Exklusiv-ODER-Verknüpfung des
Bits B1' und des
Bits B0' als das
Bit B0 ohne Übersetzung
des Bits B1' in
B1 wie es ist. Daher ist es erforderlich, beispielsweise die 0te,
1te, 3te und 2te Adresse in dieser Reihenfolge als die Speichereingangsadresse
zu spezifizieren, um kontinuierlich zu physikalischen Adressen der
0ten bis 3ten Adresse zuzugreifen.
-
Um
zweckmäßig zu jeder
Speicherzelle entlang der erzeugten physikalischen Adresse zuzugreifen, übersetzt
die Prüfvorrichtung 10 die
physikalische Adresse in eine Speichereingangsadresse und liefert
die übersetzte
Adresse zu dem geprüften
Speicher 100. Auf der linken Seite der vorliegenden Zeichnung
erzeugt die Prüfvorrichtung 10 physikalische
Adressen von der 0ten bis 3ten Adresse in dieser Reihenfolge. Das
Adressenübersetzungsmodul 220 übersetzt
physikalische Bits A1 und A0, die die physikalische Adresse bilden,
in Speichereingangsbits A1' und
A0', die die Speichereingangsadresse bilden.
Gemäß dieser Übersetzung
wird das Bit A1 das Bit A1' wie
es ist, und eine Exklusiv-ODER-Verknüpfung des Bits A1 und des Bits
A0 wird das Bit A0'.
Indem eine derartige Übersetzung
durchgeführt wird,
ist es möglich,
auf Speicherzellen in den geprüften
Speicher 100 entlang der erzeugten physikalischen Adresse
zuzugreifen.
-
6 zeigt
eine funktionelle Konfiguration der Steuervorrichtung 150.
Die Steuervorrichtung 150 hat eine Erwerbsschaltung 600,
eine Entscheidungsschaltung 610, eine Einstellschaltung 620 und eine
Steuerschaltung 630. Die Erwerbsschaltung 600 erwirbt
entsprechende Informationen, die eine Entsprechung zwischen einer
physikalischen Adresse und einer Speichereingangsadresse zeigen.
Beispielsweise können
entsprechende Informationen tabellenförmige Daten sein, die eine
Entsprechend zwischen einer physikalischen Adresse und einer Speichereingangsadresse
schreiben, oder sie können
ein Programm sein, das eine Berechnung zum Erhalten einer Speichereingangsadresse
aus der physikalischen Adresse zeigt. D.h., die Erwerbsschaltung 600 erwirbt
die Daten oder das Programm über
Kommunikationsleitungen und speichert die erworbenen Daten oder
das erworbene Programm auf einer Speichervorrichtung wie einem Speicher
und einer Platte.
-
Die
Entscheidungsschaltung 610 entscheidet, ob eine durch entsprechende
Informationen bezeichnete Adressenübersetzung mittels logischer Operationen
durch die mehreren arithmetischen Maskenschaltungen 420 und
die mehreren logischen Operationsschaltungen 440 durchgeführt werden kann.
Bei dem vorliegenden Ausführungsbeispiel wird
insbesondere entschieden, ob jedes Speichereingangsbit mittels einer
Exklusiv-ODER-Verknüpfung aus
einem einzelnen oder mehreren physikalischen Bits und eine Umkehroperation
eines logischen Werts erzeugt werden kann. Ein konkreter Entscheidungsprozess
ist illustriert, wenn ein Programm als entsprechende Informationen
erworben wird. Zuerst verkürzt
die Entscheidungsschaltung 610 eine durch entsprechende
Informationen gezeigte logische Operation mittels der Ausführung eines
Programms (herkömmlich
bekannt), wodurch die Vereinfachung eines logischen Ausdrucks realisiert
wird. Dann beurteilt die Entscheidungsschaltung 610, dass die
Speichereingangsbits durch die logische Operation erzeugt werden
können,
wenn die abgekürzte
logische Operation nur eine einstufige Exklusiv-ODER-Verknüpfung und
eine einstufige Umkehroperation enthält. Wenn andererseits die verkürzte logische
Operation andere Operationen als die einstufige Exklusiv-ODER-Verknüpfung und
die einstufige Umkehroperation enthält, entscheidet die Entscheidungsschaltung 610,
dass Speichereingangsbits durch die logische Operation nicht erzeugt
werden können.
-
Die
Einstellschaltung 620 stellt die mehreren Register 410 ein,
wenn beurteilt wurde, dass die Adressenübersetzung mittels dieser logischen
Operationen durchgeführt
werden kann. Insbesondere stellt die Einstellschaltung 620 ein
Bit ein entsprechend einem physikalischen Bit, das für eine logische Operation
verwendet wird, die das Speichereingangsbit als einen logischen
Wert von eins in dem Register 410 entsprechend jedem Speichereingangsbit
erhält.
Die Einstellschaltung 620 stellt die anderen Bits als einen
logischen Wert null ein. Andererseits stellt die Einstellschaltung 620 den
Inhalt des Übersetzungsspeichers 320 ein,
wenn beurteilt wurde, dass die Adressenübersetzung nicht mittels dieser
logischen Operationen durchgeführt
werden kann. Insbesondere gibt die Einstellschaltung 620 alle
Wert, die in der Lage sind, als eine physikalische Adresse erhalten
zu werden, in ein Programm einer logischen Operation ein, die durch
entsprechende Informationen gezeigt ist, und erhält das Operationsergebnis.
Dann bewirkt die Einstellschaltung 620, dass ein Bereich,
dessen Ad resse jede physikalische Adresse in dem Übersetzungsspeicher 320 ist,
das vorgenannte Operationsergebnis, das durch Durchführen der
physikalischen Adresse als ein Eingang erhalten wurde, speichert.
-
Die
Steuerschaltung 630 stellt die Auswahlschaltung 350 so
ein, dass eine Adresse enthaltend die mehreren Speichereingangsbits,
die von den mehreren logischen Operationsschaltungen 440 ausgegeben
wurden, als die Speichereingangsadresse ausgegeben werden, wenn
beurteilt wurde, dass eine Adressenübersetzung mittels der logischen Operation
durch das Operationsmodul 310 durchgeführt werden kann. Andererseits
stellt die Steuerschaltung 630 die Auswahlschaltung 350 so
ein, dass eine Adresse enthaltend eine Bestimmungsadresse durch
den Übersetzungsspeicher 320 in
Bits von zumindest einem Teil hiervon als die Speichereingangsadresse
ausgewählt
ist, wenn beurteilt wurde, dass die Adressenübersetzung nicht mittels der
logischen Operation durch das Operationsmodul 310 durchgeführt werden
kann. In diesem Fall kann die Steuerschaltung 630 weiterhin
eine Einstellung durchführen,
die zeigt, welches der physikalischen Bits in den Übersetzungsspeicher 320 auf
der Auswahlschaltung 300 und der Auswahlschaltung 340 eingegeben ist.
-
Wie
vorstehend beschrieben ist, kann beispielsweise die mit Bezug auf 6 beschriebene Steuervorrichtung 150 eine
Informationsverarbeitungsvorrichtung wie ein Personalcomputer oder eine
Arbeitsstation sein. Jede Funktion der Steuervorrichtung 150 kann
durch ein Programm realisiert sein, das auf einem Aufzeichnungsmedium
wie einem CD-ROM oder einem DVD-ROM
aufgezeichnet ist. D.h., ein Programm wird von dem Aufzeichnungsmedium
gelesen und wird in der Steuervorrichtung 150 installiert
und ausgeführt.
Dann wirkt eine in der Steuervorrichtung 150 vorgesehene
zentrale Verarbeitungseinheit als die Erwerbsschaltung 600,
die Entscheidungsschaltung 610, die Einstellschaltung 620 und
die Steuerschaltung 630 mittels des installierten Programms.
Da jede Funktion, die durch das Zusammenwirken des Programms und
der Steuervorrichtung 150 realisiert ist, gleich eine Funktion
jedes mit Bezug auf 6 beschriebenen Teils ist, wird deren
Beschreibung weggelassen.
-
7 zeigt
ein Flussdiagramm eines Vorgangs zum Einstellen einer Adressenübersetzungsregel
von einer physikalischen Adresse in eine Speichereingangsadresse.
Die Erwerbsschaltung 600 erwirbt entsprechende Informationen,
die eine Entsprechung zwischen einer physikalischen Adresse und einer
Speichereingangsadresse zeigen (S700). Die Entscheidungsschaltung 610 entscheidet,
ob eine durch entsprechende Informationen bezeichnete Adressenübersetzung
mittels logischer Operationen durch die mehreren arithmetischen
Maskenschaltungen 420 und die mehreren logischen Operationsschaltungen 440 durchgeführt werden
kann (S710). In einem Beispiel nach 4 wird spezifisch
entschieden, ob jedes Speichereingangsbit durch eine Exklusiv-ODER-Verknüpfung von
einem einzelnen oder mehreren physikalischen Bits und eine Umkehrungsoperation
eines logischen Werts erzeugt werden kann.
-
Wenn
beurteilt wurde, dass die Adressenübersetzung mittels dieser logischen
Operationen durchgeführt
werden kann (S710. JA), stellt die Einstellschaltung 620 einen
Wert in den mehreren Registern 410 ein (S720). Dann stellt
die Steuerschaltung 630 die Auswahlschaltung 350 so
ein, dass eine Adresse enthaltend die mehreren Speichereingangsbits,
die von den mehreren logischen Operationsschaltungen 440 ausgege ben
wurden, als die Speichereingangsadresse ausgegeben wird (S730). Dann
führt die
Prüfvorrichtung 10 eine
Prüfung
des geprüften
Speichers 100 auf der Grundlage dieser Einstellungen durch
(S740).
-
Wenn
andererseits beurteilt wurde, dass die Adressenübersetzung nicht mittels dieser
logischen Operationen durchgeführt
werden kann (S710: NEIN), stellt die Einstellschaltung 620 den
Inhalt des Übersetzungsspeichers 320 ein
(S750). Dann stellt die Steuerschaltung 630 die Auswahlschaltung 350 so
ein, dass eine Adresse enthaltend eine Bestimmungsadresse durch
den Übersetzungsspeicher 320 in
Bits von zumindest einem Teil hiervon als die Speichereingangsadresse
ausgewählt
wird (S760). Dann führt
die Prüfvorrichtung 10 eine
Prüfung
des geprüften
Speichers 100 auf der Grundlage dieser Einstellungen durch
(S740).
-
8 zeigt
ein Flussdiagramm eines Vorgangs zum Prüfen des geprüften Speichers 100.
Die Folgesteuerschaltung 210 erzeugt eine zu einem Speicherblock
innerhalb des geprüften
Speichers 100 zu liefernde physikalische Adresse (S800).
Als Nächstes
maskiert jede der arithmetischen Maskierschaltungen 420 entsprechend
jedem der mehreren Speichereingangsbits jedes der mehreren physikalischen
Bits, die zumindest einen Teil der physikalischen Adresse bilden,
in Übereinstimmung
mit einem Wert des Registers 410 entsprechend diesem Speichereingangsbit
(S810). Dann gibt die logische Operationsschaltung 440 jeweils
Bitdaten aus, die erhalten wurden durch Durchführen einer vorbestimmten logischen
Operation bei einem Maskierergebnis durch die arithmetische Maskierschaltung 420 als das
Speichereingangsbit entsprechend jedem der mehreren Speichereingangsbits
(S820). Die ausgegebenen mehreren Speichereingangsbits werden als die Speichereingangsadresse
ausgewählt
gemäß der von
der Einstellschaltung 350 empfangenen Einstellung und zu
dem geprüften
Speicher 100 geliefert (S830).
-
Wie
vorstehend beschrieben ist, braucht bei der Prüfvorrichtung 10 nach
dem vorliegenden Ausführungsbeispiel
die erforderliche Kapazität
des Übersetzungsspeichers
nicht vergrößert zu
werden, selbst wenn eine Speichervorrichtung ein hohes Leistungsvermögen hat,
und somit können
die Wartungs- und Verwaltungskosten der Prüfvorrichtung 10 herabgesetzt
werden. Darüber
hinaus kann, da eine geringe Menge des Übersetzungsspeichers montiert werden
kann, die Prüfvorrichtung 10 gegen
eine herkömmliche
Prüfvorrichtung
ausgetauscht werden. Darüber
hinaus wird eine Adressenübersetzung
automatisch in dem Übersetzungsspeicher
oder der logischen Schaltung mittels eines Programms eingestellt,
das beurteilt, ob der Übersetzungsspeicher oder
die logische Schaltung verwendet werden soll. Hierdurch wird, obgleich
ein Benutzer die Speicherkapazität
oder dergleichen des in der Prüfvorrichtung 10 installierten Übersetzungsspeichers
nicht kennt, eine gewünschte
Adressenübersetzung
realisiert durch Verwendung eines angemessenen Teils entweder des Übersetzungsspeichers
oder des Operationsmoduls.