DE69511019T2 - Datenprozessor mit voneinander getrenntem Datenbus und Befehlsbus - Google Patents
Datenprozessor mit voneinander getrenntem Datenbus und BefehlsbusInfo
- Publication number
- DE69511019T2 DE69511019T2 DE69511019T DE69511019T DE69511019T2 DE 69511019 T2 DE69511019 T2 DE 69511019T2 DE 69511019 T DE69511019 T DE 69511019T DE 69511019 T DE69511019 T DE 69511019T DE 69511019 T2 DE69511019 T2 DE 69511019T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- bus
- rom
- internal
- test
- 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
Links
- 238000012360 testing method Methods 0.000 claims description 63
- 238000012545 processing Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims 1
- 230000007246 mechanism Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000004904 shortening Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000000872 buffer Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- 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/27—Built-in tests
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
-
- 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/267—Reconfiguring circuits for testing, e.g. LSSD, partitioning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Microcomputers (AREA)
- Debugging And Monitoring (AREA)
- Information Transfer Systems (AREA)
- Hardware Redundancy (AREA)
Description
- Die Erfindung betrifft einen Datenprozessor und insbesondere einen Einzelchip-Datenprozessor mit einem Befehlsbus (instruction fetch bus) und einem Datenbus, die getrennt voneinander für einen Nur-Lese-Speicher (ROM; Read Only Memory) vorgesehen sind.
- Bei einem Datenprozessor mit einem internen ROM zum Speichern von einem aus Befehlskodes und zu verarbeitenden Operandendaten bestehendem Programm (zusammen als "Daten" bezeichnet) ist es nötig, zu überprüfen, ob die in dem ROM gespeicherten Daten zum Zeitpunkt seiner Herstellung fehlerfrei sind. Es ist auch nötig, die Datenauslesewege von dem ROM sicherzustellen. Insbesondere ist bei einem Datenprozessor von dem Typ, bei dem der Befehlsbus und der interne Datenbus getrennt voneinander vorgesehen sind, die Überprüfung sowohl des Ausgabeweges zu dem Datenbus von dem ROM und des Ausgabeweges zu dem Befehlsbus von dem ROM nötig.
- In Fig. 5 ist der herkömmliche Datenprozessor 500 dieses Typs mit einer Drei-Bus-Konfiguration ausgebildet, bei der ein interner Datenbus 504, ein interner Befehlsbus 506 und ein interner Adressenbus 510 getrennt voneinander vorgesehen sind. Dieser Datenprozessor enthält des weiteren einen Programmzähler 501, einen internen ROM 502, einen mit dem Datenbus 504 verbundenen externen Bus 505, einen mit dem Befehlsbus 506 verbundenen Befehlsdekoder 508, eine mit dem Dekoder 508 und dem Datenbus 504 verbundene Befehlseinheit (EXU; Execution Unit) 509.
- Der Datenprozessor 500 hat drei Betriebsmodi, die einen normalen Betriebsmodus, einen Testausführungsmodus und einen ROM-Datenauslesemodus umfassen. In dem normalen Betriebsmodus werden die in einem Benutzerbereich des ROM 502 gespeicherten Programme ausgeführt. In dem Testausführungsmodus wird ein in dem Testgebiet des ROM 502 gespeichertes Testprogramm ausgeführt, um die jeweiligen Schaltungsvorgänge zu überprüfen. In dem Auslesemodus werden die Daten aus dem ROM 502 von außen ausgelesen. Einer dieser Betriebsmodi wird mittels einer Modusauswahlschaltung (nicht gezeigt) ausgewählt.
- Für die Überprüfung des Inhalts des ROM 502 wird deshalb der ROM-Datenauslesemodus ausgewählt und gestartet, um die Daten aus dem ROM 502 auszulesen, indem sequentiell Adressen von dem Programmzähler 501 zugeführt werden. Die aus dem ROM 502 ausgelesenen Daten werden dann an den internen Datenbus 504 über den Ausgabeweg 503 und weiter an den externen Bus 505 übertragen. Eine extern vorgesehene Testvorrichtung vergleicht die an den externen Bus 505 übertragenen Daten mit den erwarteten Daten. Zu diesem Zeitpunkt wird gleichzeitig der Ausgabeweg 503 von dem ROM 502 an den internen Datenbus 504 überprüft. Jedoch wird der Ausgabeweg 507 von dem ROM 502 an den internen Befehlsbus 506 nicht überprüft. Um den Ausgangsweg 507 zu überprüfen, muß der Prozessor danach in den Testausführungsmodus gelangen, um das in dem Testgebiet des ROM 502 gespeicherte Testprogramm auszuführen. Die Testvorrichtung vergleicht die sich aus der Ausführung ergebenden Daten mit den erwarteten Werten. Auf diese Art kann zusammen mit dem Überprüfen des Datenübertragungsweges, der den Ausgangsweg 507 enthält, bestimmt werden, ob die Befehlskodes des Testprogramms korrekt gelesen werden.
- In Fig. 6 ist ein in der japanischen offengelegten Patentanmeldung Sho. 64-15835 offenbarter, weiterer Datenprozessor 600 gezeigt. Dieser Datenprozessor 600 verwendet auch die Drei-Buskonfiguration mit einem internen Bus 604, einem internen Haltebus 606 und einem internen Adressenbus 612, und er enthält einen Programmzähler 601, einen internen ROM 602, einen Ausgabeweg 603, einen externen Bus 605, einen Ausgabeweg 607, einen Befehlsdekoder 611, einen internen Adressenbus 612 und eine EXU 613. Die EXU 613 enthält ein erstes EXU-Register 608, ein zweites EXU-Register 609 und eine arithmetische und logische Einheit (ALU) 610. Bei diesem Datenprozessor 600 wird zur Überprüfung des eingebauten ROM 602 der Prozessor in den ROM-Lesemodus gesetzt, so daß die Daten in dem ROM 602 mit den sequentiell durch den Programmzähler 601 erzeugten Adressen ausgelesen und dann an den internen Datenbus 604 über den Ausgangsweg 603 übertragen werden, wie es in der Zeitsteuerungskarte aus Fig. 7 gezeigt ist. Jedoch werden die an den internen Datenbus 604 übertragenen Daten in dem ersten EXU-Register 608 innerhalb der EXU 613 gehalten, anstatt an den externen Bus 605 ausgegeben zu werden. Diese erwarteten Werte werden von außerhalb über den externen Bus 604 gelesen und dann über den internen Datenbus 604 in dem zweiten EXU-Register 609 gehalten. Anschließend werden die Daten in dem ersten EXU-Register 608 und die Daten in dem zweiten EXU-Register 609 durch die ALU 610 verglichen und das Vergleichsergebnis nach außen über den internen Datenbus 604 und den externen Bus 605 ausgegeben. Die Daten an dem externen Bus 605 werden mit den erwarteten Werten mittels einer externen Testvorrichtung verglichen. Somit wird der Ausgabeweg 603 von dem eingebauten ROM 602 zu dem internen Datenbus 604 gleichzeitig überprüft. Da jedoch der Ausgangsweg 607 von dem eingebauten ROM 602 zu dem internen Haltebus 606 nicht geprüft wird, wird der Testbetriebsmodus eingestellt und ähnlich dem in Fig. 5 gezeigten Datenprozessor 500 initiiert.
- Genauer gesagt, ähnlich dem Fall des in Fig. 5 gezeigten bekannten Datenprozessors wird der Datenprozessor zunächst in den Testausführungsmodus gesetzt, um den Ausgabeweg 607 zu überprüfen, und der Prozessor führt die für das Testen der im voraus in dem Testgebiet des eingebauten ROM 602 gespeicherten Testprogramm ähnlich dem normalen Betriebsmodus durch, und der Zustand eines mit dem internen Haltebus 606 während der Ausführung der Sequenz gekoppelten, externen Anschlusses (nicht gezeigt) wird mit den erwarteten Werten mittels einer externen Testvorrichtung verglichen. Auf diese Art kann bestimmt werden, ob die Befehlskodes der Testprogramme korrekt gelesen werden oder nicht, wodurch die indirekte Überprüfung des Ausgabeweges 607 möglich ist.
- Bei den oben beschriebenen bekannten Prozessoren müssen die Überprüfung des eingebauten ROM und die Überprüfung des Ausgabewegs von dem eingebauten ROM an den internen Datenbus in dem eingebauten ROM-Lesemodus und die Überprüfung des Ausgabeweges von dem eingebauten ROM an den internen Haltebus in dem Testausführungsmodus getrennt ausgeführt werden, so daß ein Problem dahingehend existiert, daß die Verringerung des Testlaufzeit (TAT; Test-Turnaround-Time) nicht leicht ist.
- Darüber hinaus wird die Überprüfung des Ausgabewegs von dem eingebauten ROM an den internen Haltebus indirekt ausgeführt, indem die Befehlskodes des in dem Testgebiet des eingebauten ROM gespeicherten Testprogramme ausgeführt werden. Deshalb werden die Daten, die von dem eingebauten ROM an den internen Haltebus laufen können, auf die Befehlskodes des in dem Testgebiet des eingebauten ROM gespeicher ten Testprogramme beschränkt, der nur einen begrenzten Speicherplatz hat, so daß es ein Problem gibt, daß die Bitmuster der Daten beschränkt und die Testzuverlässigkeit vermindert sind.
- Des weiteren ist es nötig, die Testprogramme unter Sicherung eines Testgebiets in dem eingebauten ROM anzuordnen, was zu einer Verringerung des Benutzergebiets oder zu einer Erhöhung des Raums des eingebauten ROM führt, was das Problem verursacht, daß es die Verbesserung von Kosten/Leistung behindert.
- JP-A-1015835 offenbart einen Datenprozessor mit einem normalen Verarbeitungsmodus und einem Testmodus, bei dem der Prozessor einen Speicher zum Speichern von Daten und einen Bus zur Übertragung von Daten während des normalen Prozeßmodus enthält.
- Andererseits offenbart US-A-4677586 eine Mikrocomputervorrichtung, die verschiedene Betriebs- und Testmodi ermöglicht. Diese Vorrichtung enthält des weiteren eine Übertragungsschaltung zur Übertragung von Daten zwischen einem Befehlsbus und einem Datenbus, und eine Ausführungseinheit ist mit dem Befehlsbus und dem Datenbus verbunden, um eine Operation bezüglich der Daten durchzuführen und um ein Operationsergebnissignal beruhend auf der Operation in dem Testmodus zu erzeugen.
- In einem ROM-Dump-Testmodus werden Daten von dem ROM über ein IR an den P-Bus und über BIM und einen D-Bus an einen externen Bus übertragen. In einem externen RAM-Testmodus wird jeder Datenzugriff über den D-Bus, Puffer und den externen Bus an einen externen Speicher durchgeführt. Ein Vorgang wird von der Ausführungseinheit mit einem Befehl und mit Daten ausgeführt, die von dem externen Speicher gehalten werden, und das Ergebnis des Vorgangs wird außerhalb des Chips an die Testvorrichtung geliefert.
- Es ist deshalb eine Aufgabe der Erfindung, einen verbesserten Datenprozessor zu schaffen.
- Es ist eine weitere Aufgabe der Erfindung, einen Datenprozessor zu schaffen, bei dem ein interner Datenbus und ein Befehlsbus getrennt voneinander vorgesehen sind, und bei dem die Überprüfung eines Datenwegs zwischen einem internen Speicher und dem Datenbus und jener zwischen dem Speicher und dem Haltebus leicht durchgeführt werden können.
- Erfindungsgemäß werden diese Aufgaben durch einen Datenprozessor nach Anspruch 1 gelöst. Die abhängigen Ansprüche beziehen sich auf weitere vorteilhafte Aspekte der Erfindung.
- Die oben genannten und weitere Aufgaben, Merkmale und Vorteile der Erfindung werden aus der folgenden detaillierten Beschreibung der Erfindung im Zusammenhang mit den beiliegenden Zeichnungen deutlicher, in denen zeigt:
- Fig. 1 ein Blockdiagramm eines Datenprozessors entsprechend einer ersten erfindungsgemäßen Ausführungsform;
- Fig. 2 eine Zeitsteuerungskarte eines Betriebs des in Fig. 1 gezeigten Datenprozessors;
- Fig. 3 ein Blockdiagramm eines Datenprozessors entsprechend einer zweiten erfindungsgemäßen Ausführungsform;
- Fig. 4 eine Zeitsteuerungskarte eines Betries des in Fig. 3 gezeigten Datenprozessors;
- Fig. 5 ein Blockdiagramm eines bekannten Datenprozessors;
- Fig. 6 ein Blockdiagramm eines weiteren bekannten Datenprozessors; und
- Fig. 7 eine Zeitsteuerungskarte eines Betriebs des in Fig. 6 gezeigten Datenprozessors.
- In Fig. 1 ist ein Datenprozessor 100 einer ersten erfindungsgemäßen Ausführungsform auf einem einzelnen Halbleiterchip hergestellt und empfängt ein Modusumschaltsignal 101 zur Anzeige seines Betriebsmodus. Der Prozessor 100 enthält einen Programmzähler 103 zum Halten der Adresse eines internen ROM 104, an der der auszuführende Befehl gespeichert ist, einen internen ROM 104, der nur einem Benutzergebiet zum Speichern eines Programms hat, das aus ein- Speichern von Befehlskodes und Operandendaten besteht. Dieser ROM 104 hat somit kein Testgebiet zum Speichern eines Testprogramms. Der Prozessor 100 enthält des weiteren einen internen Datenbus 106 zum Lesen von Daten von dem ROM 104 über einen Ausgabeweg 105, einen externen Bus 107 zur Ausführung der Datenübertragung nach außen, einen internen Befehlsbus 110 zum Lesen von Daten von dem ROM 104 über einen Ausgabeweg 109, einen Befehlsdekoder 111 zur Dekodierung eines Befehlskodes, ein Datensignal 116 zur Ausgabe von Information eines berechneten Ergebnisses einer ALU 115 nach außen, einen internen Adressenbus 117 zur Übertragung einer intern zu verwendenden Adresse und eine EXU 118.
- Der Befehlsdekoder 111 enthält einen Befehlssequenzierer 102 zur Steuerung der Befehlssequenz, einen Befehlsausrichter 112 zum Halten der Befehlskodes, in dem diese ausgerichtet werden, einen Zwischenwert-/Verschiebungswert- Erzeugungsmechanismus (abgekürzt als imm/disp- Erzeugungsmechanismus) 113 zur Erzeugung eines Zwischenwerts oder eines Verschiebungswertes von einem internen Befehl.
- Die EXU 118 besteht aus einem ersten EXU-Register 108 zum Halten von Daten an dem internen Datenbus 106, einem zweiten EXU-Register 114 zum Halten von Ausgabedaten des Befehlsdekoders 111 und einer ALU 115 zur Ausführung eines Betriebs der Daten von dem ersten EXU-Register 106 und dem zweiten EXU-Register 114.
- Das Modusumschaltsignal 101 wird gesetzt, um in der Lage zu sein, den Ausgangsweg 105 und den externen Bus 107 über ein Gate zu schalten. Des weiteren wird es gesetzt, um in der Lage zu sein, den Ausgabeweg von der ALU 115 an den internen Datenbus 106 über ein Gate zu schalten.
- Mit der oben genannten Bauweise hat der Datenprozessor 100 nur die zwei Modi, nämlich einen normalen Betriebsmodus und einen ROM-Datenauslesemodus (er hat keinen Testausführungsmodus), und er ist in der Lage, um zwischen diesen zwei Modi mittels einer Modusauswahlschaltung (nicht gezeigt) zu schalten, die analog zu dem bekannten Datenprozessor ist.
- Als nächstes wird der Betrieb unter Bezugnahme auf die Zeitsteuerungskarte aus Fig. 2 erläutert. Zunächst wird zur Überprüfung des Inhalts des ROM 104 der Prozessor in den ROM-Datenauslesemodus gesetzt, indem das Modusumschaltsignal 101 auf den aktiven hohen Pegel geschaltet wird. Somit erkennt der Befehlssequenzierer 102 innerhalb des Befehlsdekoders 111 einen Durchgangszustand, in dem die Daten des internen Haltebusses 102 so ausgegeben werden, wie sie sind, wobei der Befehlsausrichter 112 und der imm/disp- Erzeugungsmechanismus 113 in dem gleichen Zustand gehalten werden, wie zum Zeitpunkt der Ausführung eines Befehlskodes, um den Zwischenwert/Verschiebungswert der Wortlänge zu erzeugen. Zusätzlich wird durch die Aktivierung des Modusumschaltsignals 101 der Ausgabeweg 105 und der externe Bus 107 in den Ausgabefreigabezustand gesetzt, und der Ausgabeweg 109 wird ebenfalls in den Ausgabefreigabezustand über den Befehlssequenzierer 102 gesetzt. Es sei hier ange merkt, daß der Ausgabeweg von der ALU 115 an den internen Datenbus 106 in den Ausgabesperrzustand gesetzt ist.
- Wie es durch die Zeile "Adresse 0" → "Daten 0" → "Daten 0d" → "Daten 0e" und "Daten 01" der Zeitsteuerungskarte aus Fig. 2 gezeigt ist, werden als nächstes die Daten in dem eingebauten ROM 104 aus dem ROM 104 beruhend auf den sequentiell durch den Programmzähler 103 erzeugten Adressen ausgelesen, an den internen Datenbus 106 über den Ausgabeweg 105 übertragen und an den externen Bus 107 ausgegeben, der in den Ausgabefreigabezustand durch das Modusumschaltsignal 101 gesetzt ist. Die Daten an dem internen Datenbus 106 werden in dem ersten EXU-Register 108 innerhalb der EXU 118 gehalten.
- Andererseits, wie es durch die Zeile "Daten 0" → "Daten 01" → "Daten 02" der Zeitsteuerungskarte in Fig. 2 gezeigt ist, werden die von dem ROM 104 ausgelesenen Daten an den internen Haltebus 110 über den Ausgabeweg 109, der in den Ausgabefreigabezustand durch das Modusumschaltsignal 101 gesetzt ist, über den Befehlssequenzierer 102 übertragen und in dem zweiten EXU-Register 114 innerhalb der EXU 118 über den Befehlsausrichter 112 und den imm/disp- Erzeugungsmechanismus 113 innerhalb des Befehlsdekoders 111 gehalten. Anschließend vergleicht die ALU 115 die Daten in dem ersten EXU-Register mit den Daten in dem zweiten EXU- Register 114, um das Datenübereinstimmungssignal 116 an eine extern vorgesehene Testvorrichtung auszugeben, wie es in der in Fig. 2 dargestellten Zeile "Daten 01" und "Daten 02" → "Ergebnis 0" gezeigt ist. Der hohe Pegel des Signals 116 zeigt die Übereinstimmung an, wohingegen bei dieser Ausführungsform der niedrige Pegel die Nichtübereinstimmung anzeigt.
- Die externe Testvorrichtung vergleicht die an den externen Bus 107 ausgegebenen Daten mit dem erwarteten Wert und vergleicht des weiteren den Wert des Datenzustimmungssignals 116 mit dem erwarteten Wert. Somit wird die Übereinstimmung der in dem eingebauten ROM 104 gespeicherten Daten mit den erwarteten Werten überprüft, wobei auch der Ausgabeweg 105 von dem ROM 104 an den internen Datenbus 105 und der Ausgabeweg 109 von dem ROM 104 an den internen Haltebus 110 überprüft werden können. Anders gesagt, die Überprüfung des ROM 104, des Ausgabewegs 105 und des Ausgabewegs 109 kann gleichzeitig durch eine einzelne Überprüfung in dem ROM- Auslesemodus durchgeführt werden.
- Bei dem Datenprozessor der ersten Ausführungsform werden die Daten in dem ROM 104 gleichzeitig an den internen Datenbus 106 und den internen Haltebus 110 ausgegeben, und die Daten an dem internen Datenbus 106 werden nach außen über den externen Bus 107 ausgegeben, wobei die Zustimmung/Nichtzustimmung der Daten an dem internen Datenbus 106 und die Daten an dem internen Haltebus 110, wie sie durch den Vergleich in der ALU bestimmt werden, nach außen als Datenzustimmungssignal 116 ausgegeben werden. Da die Überprüfung des Ausgabewegs 109 von dem ROM 104 an den internen Haltebus 110 gleichzeitig mit den Überprüfungen der ROM 104 und des Ausgabewegs 105 von dem ROM 104 an den internen Datenbus 106 ausgeführt werden kann, kann die Testzeit auf Null verringert werden, indem die Ausführung der Testprogramme in dem Testausführungsmodus unterdrückt wird, der bei dem bekannten Datenprozessor nötig war, und die Test- TAT kann drastisch verringert werden, indem die Überprüfungszeit in dem ROM-Lesemodus auf ein Drittel jener des bekannten Datenprozessors gesetzt wird. Des weiteren kann, da alle Daten in dem ROM 104 den Ausgabeweg 109 von dem eingebauten ROM 104 an den internen Haltebus 110 durchlaufen, ein effektiver Fehlerdetektionsfaktor von 100% erreicht werden. Da des weiteren die Überprüfung des ROM 104, des Ausgabewegs 105 von dem ROM 104 an den internen Datenbus 106 und des Ausgabewegs 109 von dem ROM 104 an den internen Haltebus 110 gleichzeitig durch das einfache Hinzufügen von Schaltungen zu den bestehenden Systemen erzielt werden kann, kann das Anwachsen der Chipgröße des Datenprozessors minimiert werden, wodurch in großem Ausmaß zu dem praktischen Nutzen der Verringerung der Kosten und der Effizienz des Tests zusammen mit der Verringerung der Test- TAT beigetragen wird.
- In Fig. 3 ist ein Datenprozessor 300 entsprechend einer zweiten erfindungsgemäßen Ausführungsform auf einem einzelnen Halbleiterchip ausgebildet und empfängt ein Modusumschaltsignal 301, das seinen Betriebsmodus bezeichnet. Dieser Prozessor 300 enthält einen Programmzähler 303 zum Halten der Adresse eines auszuführenden Befehlskodes, einen internen ROM 304, der nur ein Benutzergebiet zum Speichern von Daten (nämlich ohne ein Testgebiet zum Speichern von Testprogrammen) hat, einen internen Datenbus 306 zum Lesen der Daten von dem eingebauten ROM 304 über einen Ausgabeweg 305, einen externen Bus 307 zur Übertragung der Daten nach außen, einen internen Haltebus 310 zum Lesen der Daten von dem eingebauten ROM 305 über einen Ausgabeweg 309, einen Befehlsdekoder 311 zum Dekodieren eines Befehlskodes, ein Datenzustimmungssignal 316 zum Ausgeben nach außen von Information bezüglich des Berechnungsergebnisses einer ALU 315, einen internen Adressenbus 317 zum Übertragen einer intern benutzten Adresse, eine EXU 318 und einen Testsequenzierer 319.
- Der Befehlsdekoder 311 ist gebildet, indem er enthält: einen Befehlssequentierer 302 zur Steuerung der Befehlssequenz, einen Befehlsausrichter zum Halten der Befehlskodes, indem diese ausgerichtet werden, einen Zwischenwert-/Verschiebungswert-Erzeugungsmechanismus (imm/disp-Erzeugungsmechanismus) 313 zum Erzeugen des Zwischenwerts und eines Verschiebungswertes aus einem Befehlskode.
- Die EXU 318 enthält ein erste EXU-Register 308 zum Halten von Daten an dem internen Datenbus 306, ein zweites EXU- Register 311 zum Halten der Ausgabedaten des Befehlsdeko ders 311 und eine ALU 315 zum Ausführen eines Vorgangs bezüglich der Daten des ersten EXU-Registers 306 und der Daten des zweiten EXU-Registers 314.
- Das Modusumschaltsignal 301 wird so gesetzt, daß es in der Lage ist, den Ausgangsweg 305 und den externen Bus 306 über ein Gate zu schalten. Des weiteren wird es gesetzt, so daß es in der Lage ist, den Ausgangsweg von der ALU 315 zu dem internen Datenbus 306 über ein Gate zu schalten.
- Der Prozessor 300 hat analog dem Datenprozessor 100 aus Fig. 1 nur zwei Modi, nämlich den normalen Betriebsmodus und den eingebauten ROM-Lesemodus (das heißt, es gibt keinen Testausführungsmodus), und die Umschaltung zwischen diesen kann mittels einer Modusumschaltschaltung (nicht gezeigt) ausgeführt werden. Im Gegensatz zu dem in Fig. 1 gezeigten Datenprozessor 100 wird bei dem Datenprozessor 300, anstatt die aus dem ROM 304 ausgelesenen Daten an den externen Bus 307 auszugeben und einer externen Testvorrichtung zugänglich zumachen, die sie mit dem erwarteten Wert vergleicht, der erwartete Wert in das erste EXU-Register 308 über einen externen Bus 307 eingelesen. Dann wird das Ergebnis des Vergleichs der Daten in dem ersten EXU- Register 308 und der Daten in dem zweiten EXU-Register 314 durch die ALU nach außen als Datenzustimmungssignal 316 mitgeteilt, welches Information bezüglich der Zustimmung/Nichtzustimmung gibt. Dementsprechend führt die externe Testvorrichtung eine Überprüfung durch Vergleich des Datenzustimmungssignals 316 allein mit dem erwarteten Wert durch.
- Als nächstes wird unter Bezug auf die Zeitsteuerungskarte aus Fig. 4 der Betrieb der zweiten Ausführungsform des Datenprozessors beschrieben, der, wie oben geschildert, gebildet ist.
- Als erstes wird bei der Überprüfung des ROM 304 das Modusumschaltsignal 301 durch die Modusumschaltschaltung aktiviert, um den Prozessor in den ROM-Datenauslesemodus zu setzen. Dann setzt der Befehlssequenzierer 302 innerhalb des Befehlsdekoders 311 den Prozessor in einen Durchlaßzustand, der die Daten an dem internen Haltebus 310 unverändert ausgibt, indem der Befehlsausrichter 312 und der imm/disp-Erzeugungsmechanismus 313 in den Zustand versetzt werden, ähnlich jenem zur Zeit der Ausführung eines Befehlskodes zur Erzeugung eines Zwischenwerts/Verschiebungswertes der Wortlänge. Des weiteren wird durch Aktivierung des Modusumschaltsignals 301 der Ausgabeweg 305 in den Ausgabefreigabezustand gesetzt, und der externe Bus 307 wird in den Eingabefreigabezustand gesetzt, und der Ausgabeweg 309 wird ebenfalls in den Ausgabefreigabezustand über den Befehlssequenzierer 302 gesetzt. Des weiteren wird der Testsequenzierer 319 betätigt und so gesteuert, daß er abwechselnd die Daten in dem eingebauten ROM 304 und einen erwarteten Wert von außen in den internen Datenbus 306 liest, indem er abwechselnd den Ausgabeweg 309 und den externen Bus 307 öffnet und schließt. Hierbei wird der Ausgabeweg von der ALU 315 an den internen Datenbus 306 auf den Ausgabesperrzustand gesetzt.
- Als nächstes werden, wie es durch die Zeile "Adresse 0" → "Daten 0" → "Daten 0d" → "Daten 0" in der Zeitsteuerungskarte aus Fig. 4 gezeigt ist, die Daten in dem eingebauten ROM 304 beruhend auf den sequentiell durch den Programmzähler 303 erzeugten Adressen ausgelesen, an den internen Bus 306 über den Ausgabeweg 305 übertragen und in dem ersten EXU-Register 308 gehalten. Andererseits, wie es durch die Zeile "Daten 0" → "Daten 0i" → "Daten 02" in der Zeitsteuerungskarte aus Fig. 4 gezeigt ist, die von dem eingebauten ROM 304 ausgelesenen Daten an den internen Haltebus 310 über den Ausgabeweg 309 übertragen, der in dem Eingabefreigabezustand durch das Modusumschaltsignal 301 über dem Befehlssequenzierer 302 gesetzt ist, und gehen über den Be fehlsausrichter 312 und den imm/disp-Erzeugungsmechanismus 313 in den Befehlsdekoder 311, um von dem zweiten EXU- Register 314 innerhalb der EXU 318 gehalten zu werden.
- Anschließend vergleicht die ALU 315 die Daten in dem ersten EXU-Register 308 mit den Daten in dem zweiten EXU-Register 314, und, wie es durch die Zeile "Daten 01" und "Daten 02" → "Ergebnis 0" in der Zeitsteuerungskarte aus Fig. 4 gezeigt ist, informiert die externe Vorrichtung über ein Zutreffen/Nichtzutreffen der Daten, indem beispielsweise dieses auf einen hohen Pegel gesetzt wird, wenn eine Übereinstimmung vorliegt, und auf einen niedrigen Pegel, wenn eine Nichtübereinstimmung vorliegt.
- Die externe Testvorrichtung vergleicht den Wert des Datenzustimmungssignals 316 mit dem erwarteten Wert. Hierdurch wird es möglich, die Zustimmung der in dem ROM 304 gespeicherten Daten mit ihren erwarteten Werten zu überprüfen, und es wird auch möglich, die Überprüfung an dem Ausgabeweg 305 von dem eingebauten ROM 304 zu dem internen Datenbus 306 und des Ausgabewegs 309 von dem eingebauten ROM 304 zu dem internen Haltebus 310 durchzuführen. Anders gesagt, die Überprüfung des eingebauten ROM 304, des Ausgangswegs 305 und des Ausgangswegs 309 kann gleichzeitig mit einer einzelnen Überprüfung in dem eingebauten ROM-Lesemodus durchgeführt werden.
- Bei dem Datenprozessor der zweiten Ausführungsform werden die Daten in dem eingebauten ROM 304 gleichzeitig an den internen Datenbus 306 und an den internen Haltebus 310 ausgelesen und die erwarteten Werte der Daten in dem eingebauten ROM 304 werden in den internen Datenbus 306 über den externen Datenbus 307 gelesen, um so das Zutreffen/Nichtzutreffen mit dem Ergebnis des Vergleichs durch die ALU der Daten an dem internen Datenbus 306 der Daten an dem internen Haltebus 310 als das Datenübereinstimmungssignal 316 auszugeben. Hierdurch wird es möglich, die Überprüfung des Ausgabewegs 309 von dem eingebauten ROM 104 an den internen Haltebus 310 gleichzeitig mit der Überprüfung des eingebauten ROM 304 und des Ausgabewegs 305 von dem eingebauten ROM 304 an den internen Bus 306 durchzuführen, so daß es aus dem Blickwinkel des Beibehaltens der Datensicherheit vorteilhaft ist, daß die Daten in dem ROM 304 nicht direkt nach außen geliefert werden. Somit ist es möglich, die Testzeit auf Null zu setzen, indem die Ausführung der Testprogramme in dem Testausführungsmodus, der beim bekannten Datenprozessor nötig war, vermieden wird, und es ist auch möglich, drastisch die Test-TAT zu vermindern, indem der Datenvergleich von Daten in dem ROM 304 durch die zwei Zustände vervollständigt wird und indem die Überprüfungszeit in dem ROM-Lesemodus auf ein Drittel dessen gesetzt wird, wie es im Fall des bekannten Datenprozessors war. Darüber hinaus werden, analog zu dem Fall der ersten Ausführungsform des Datenprozessors, alle Daten in dem ROM 304 durch den Ausgabeweg von dem ROM 304 an den internen Haltebus 310 laufen, so daß es möglich ist, den effektiven Fehlerdetektionsfaktor von 100% zu erzielen. Außerdem ist es analog dem Fall der ersten Ausführungsform des Datenprozessors möglich, gleichzeitig die Überprüfungen an dem ROM 304, des Ausgabewegs 305 von dem ROM 304 an den internen Datenbus 306 und des Ausgabewegs 309 von dem ROM 305 an den internen Haltebus 310 durchzuführen. Da das Ansteigen der Chipgröße des Datenprozessors auf diese Art vermieden werden kann, sind die praktischen Effekte bei der Verringerung der Kosten und der Effizienz des Tests beachtlich verbessert, zusammen mit dem Verkürzen der Test-TAT.
- Wie es oben beschrieben wurde, ist bei einem Datenprozessor mit Speichermitteln zum Speichern von Programminformation, die aus Befehlskodes und zu verarbeitenden Daten besteht, und mit einem Haltebus zum Lesen eines Befehlskodes aus den Speichermitteln, der getrennt von einem Datenbus zum Lesen der zu verarbeitenden Daten aus den Speichermitteln vorgesehen ist, der erfindungsgemäße Datenprozessor mit Mitteln zum gleichzeitigen Auslesen einer identischen Programminformation über den Haltebus und den Datenbus aus den Speichermitteln, einer arithmetischen Einheit zum Eingeben der jeweiligen Informationsstücke aus dem Haltebus und dem Datenbus und mit Mittel zum Informieren über das Ergebnis durch Vergleich der arithmetischen Einheit nach außen ausgestattet. Deshalb ist es möglich, gleichzeitig die Überprüfung der Speichermittel und des Lesewegs von dem Speichermittel zu dem Datenbus und dem Leseweg von dem Speichermittel an den Haltebus auszuführen, und der erfindungsgemäße Datenprozessor hat die Effekte, daß er die Testzeit für die Ausführung der Testprogramme in dem Testausführungsmodus, der beim bekannten Datenprozessor nötig war, auf Null setzt, indem die Testprogramme weggelassen werden und wodurch dsich ie Test-TAT durch drastisches Verringern der Testzeit auf ein Drittel jener, die beim bekannten Datenprozessor nötig war, verkürzt. Darüber hinaus hat bei einem Datenprozessor mit Speichermitteln zum Speichern von Programminformation, die aus Befehlskodes und Verarbeitungsdaten besteht, und mit einem Datenbus zum Lesen des Befehlskodes aus dem Speichermittel, der getrennt von einem Datenbus zum Lesen der Verarbeitungsdaten aus dem Speichermittel vorgesehen ist, der erfindungsgemäße Datenprozessor Mittel zum Lesen von Programminformation in den Haltebus aus dem Speichermittel, Mittel zum Eingeben wahlfreier Daten an den Datenbus von außerhalb, eine arithmetische Einheit zum Eingeben jeweiliger Informationsstücke des Haltebusses und des Datenbusses und Mittel, um das Ergebnis des Vergleichs durch die arithmetische Einheit nach außen mitzuteilen. Des weiteren durchlaufen alle Daten in dem Speichermittel durch den Leseweg von dem Speichermittel an den Haltebus, so daß es möglich ist, den effektiven Fehlerdetektionsfaktor von 100% zu erreichen. Darüber hinaus ist es möglich, gleichzeitig die Überprüfung des Speichermittels, des Auslesewegs von dem Speichermittel an den Datenbus und des Lesebusses von dem Speichermittel an den Haltebus durchzuführen. Deshalb ist, zusammen mit der Verkürzung der Test-TAT, der praktische Effekt die Verringerung der Kosten und die Effizienz der Tests wird extrem groß, da die Chipgröße des Datenprozessors nur minimal ansteigt.
- Obwohl die Erfindung unter Bezug auf bestimmte Ausführungsformen beschrieben wurde, ist diese Beschreibung nicht in einem beschränkenden Sinn zu verstehen. Verschiedene Modifikationen der offenbarten Ausführungsformen sowie andere Ausführungsformen der Erfindung sind für den Fachmann unter Bezugnahme auf die Beschreibung der Erfindung offensichtlich. Es wird deshalb davon ausgegangen, daß die beiliegenden Ansprüche Modifikationen oder Ausführungsformen abdecken, die in den Rahmen der Erfindung fallen.
Claims (3)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6243295A JP2581018B2 (ja) | 1994-09-12 | 1994-09-12 | データ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69511019D1 DE69511019D1 (de) | 1999-09-02 |
DE69511019T2 true DE69511019T2 (de) | 2000-02-24 |
Family
ID=17101720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69511019T Expired - Lifetime DE69511019T2 (de) | 1994-09-12 | 1995-09-11 | Datenprozessor mit voneinander getrenntem Datenbus und Befehlsbus |
Country Status (5)
Country | Link |
---|---|
US (2) | US5706423A (de) |
EP (1) | EP0701210B1 (de) |
JP (1) | JP2581018B2 (de) |
KR (1) | KR100186847B1 (de) |
DE (1) | DE69511019T2 (de) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2581018B2 (ja) * | 1994-09-12 | 1997-02-12 | 日本電気株式会社 | データ処理装置 |
FR2825490A1 (fr) * | 2001-05-29 | 2002-12-06 | Koninkl Philips Electronics Nv | Dispositif de validation d'un circuit integre |
US7318169B2 (en) * | 2002-05-15 | 2008-01-08 | David Czajkowski | Fault tolerant computer |
US7237148B2 (en) * | 2002-09-05 | 2007-06-26 | David Czajkowski | Functional interrupt mitigation for fault tolerant computer |
JP2004185060A (ja) * | 2002-11-29 | 2004-07-02 | Renesas Technology Corp | マイクロコンピュータ |
DE10302287A1 (de) * | 2003-01-22 | 2004-08-12 | Micronas Gmbh | Speichervorrichtung für eine Multibus-Architektur |
US7260742B2 (en) * | 2003-01-28 | 2007-08-21 | Czajkowski David R | SEU and SEFI fault tolerant computer |
CN100545804C (zh) * | 2003-08-18 | 2009-09-30 | 上海海尔集成电路有限公司 | 一种基于cisc结构的微控制器及其指令集的实现方法 |
US7930683B2 (en) * | 2006-03-31 | 2011-04-19 | Sap Ag | Test automation method for software programs |
KR100803690B1 (ko) * | 2006-08-10 | 2008-02-20 | 삼성전자주식회사 | 전기적- 기계적 비휘발성 메모리 장치 및 그 제조 방법. |
CN101178644B (zh) * | 2006-11-10 | 2012-01-25 | 上海海尔集成电路有限公司 | 一种基于复杂指令集计算机结构的微处理器架构 |
US8381071B1 (en) * | 2010-05-21 | 2013-02-19 | Lsi Corporation | Systems and methods for decoder sharing between data sets |
JP7496835B2 (ja) * | 2019-03-29 | 2024-06-07 | マイシュガー ゲゼルシャフト ミット ベシュレンクテル ハフツンク | 複数の患者に対する血糖制御の欠如の相対リスクを決定するためのコンピュータ実装方法およびシステム、ならびにコンピュータプログラム製品 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2451672A1 (fr) * | 1979-03-15 | 1980-10-10 | Nippon Electric Co | Circuit logique integre pour l'execution de tests |
JPS5730016A (en) * | 1980-07-31 | 1982-02-18 | Hitachi Ltd | Interface controlling system |
US4510603A (en) * | 1981-05-26 | 1985-04-09 | Burroughs Corporation | Testing system for reliable access times in ROM semiconductor memories |
JPS5886648A (ja) * | 1981-11-18 | 1983-05-24 | Mitsubishi Electric Corp | トレ−ス装置 |
JPS6048545A (ja) * | 1983-08-26 | 1985-03-16 | Nec Corp | マイクロコンピユ−タ |
IT1184054B (it) * | 1985-03-25 | 1987-10-22 | Cselt Centro Studi Lab Telecom | Unita di controllo di microprogramma autocollaudante con rilevazione in linea degli errori in tecnologia mos |
US4677586A (en) * | 1985-06-04 | 1987-06-30 | Texas Instruments Incorporated | Microcomputer device having test mode substituting external RAM for internal RAM |
NL8502476A (nl) * | 1985-09-11 | 1987-04-01 | Philips Nv | Werkwijze voor het testen van dragers met meerdere digitaal-werkende geintegreerde schakelingen, drager voorzien van zulke schakelingen, geintegreerde schakeling geschikt voor het aanbrengen op zo'n drager, en testinrichting voor het testen van zulke dragers. |
JPH0646387B2 (ja) * | 1987-07-10 | 1994-06-15 | 日本電気株式会社 | マイクロコンピユ−タ |
US4989180A (en) * | 1989-03-10 | 1991-01-29 | Board Of Regents, The University Of Texas System | Dynamic memory with logic-in-refresh |
US5471487A (en) * | 1994-04-26 | 1995-11-28 | Unisys Corporation | Stack read/write counter through checking |
JP2581018B2 (ja) * | 1994-09-12 | 1997-02-12 | 日本電気株式会社 | データ処理装置 |
-
1994
- 1994-09-12 JP JP6243295A patent/JP2581018B2/ja not_active Expired - Lifetime
-
1995
- 1995-09-05 US US08/523,252 patent/US5706423A/en not_active Expired - Lifetime
- 1995-09-11 DE DE69511019T patent/DE69511019T2/de not_active Expired - Lifetime
- 1995-09-11 EP EP95114245A patent/EP0701210B1/de not_active Expired - Lifetime
- 1995-09-12 KR KR1019950030242A patent/KR100186847B1/ko not_active IP Right Cessation
-
1998
- 1998-01-05 US US09/002,785 patent/US5958074A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
KR100186847B1 (ko) | 1999-05-15 |
EP0701210B1 (de) | 1999-07-28 |
JPH0883220A (ja) | 1996-03-26 |
KR960011686A (ko) | 1996-04-20 |
DE69511019D1 (de) | 1999-09-02 |
JP2581018B2 (ja) | 1997-02-12 |
US5958074A (en) | 1999-09-28 |
EP0701210A3 (de) | 1996-09-04 |
EP0701210A2 (de) | 1996-03-13 |
US5706423A (en) | 1998-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69714472T2 (de) | Verfahren zum überprüfen eines integrierten speichers mit hilfe einer integrierten dma-schaltung | |
DE4418892C2 (de) | Mikrocomputer | |
DE3786862T2 (de) | Fehlertolerante Rechnerarchitektur. | |
EP1097460B1 (de) | Integrierte schaltung mit einer selbsttesteinrichtung zur durchführung eines selbsttests der integrierten schaltung | |
EP1248198B1 (de) | Programmgesteuerte Einheit mit Emulations-Einheiten | |
DE19531653C2 (de) | Einchip-Mikroprozessor mit eingebauter Selbsttestfunktion | |
DE69511019T2 (de) | Datenprozessor mit voneinander getrenntem Datenbus und Befehlsbus | |
DE69616463T2 (de) | Datenprozessor mit eingebauter Emulationsschaltung | |
DE69519070T2 (de) | Datenprozessor mit Haltepunktschaltung | |
DE3855294T2 (de) | Mikrorechner mit Speicher | |
DE60224774T2 (de) | Datenverarbeitungssystem mit Lese-, Änderungs- und Schreibeinheit | |
DE2907181A1 (de) | Befehlssatz-modifizierregister fuer einen datenprozessor | |
DE1931966B2 (de) | Datenverarbeitungsanlage mit Assoziativspeichern | |
DE3751108T2 (de) | Mikroprozessor mit der Fähigkeit, an einen Koprozessor geschaltet zu werden. | |
EP0104635A2 (de) | Verfahren und Anordnung zum Prüfen eines digitalen Rechners | |
DE69525129T2 (de) | Verfahren und Datenprozessor zum durchsichtigem Betrieb in einem Hintergrundmodus | |
DE69130513T2 (de) | Verfahren zur Durchführung boolescher Operationen zwischen zwei beliebigen Bits von zwei beliebigen Registern | |
EP1955164A1 (de) | Programmgesteuerte einheit und verfahren zum betreiben derselbigen | |
DE4117672A1 (de) | Verfahren und vorrichtung zur steuerung eines zwischen einer zentraleinheit und einem arbeitsspeicher angeordneten cache-speichers | |
DE3814875A1 (de) | Logische verknuepfungseinrichtung und logisches verknuepfungsverfahren | |
DE69121292T2 (de) | Datenverarbeitungsgerät mit Prüfsteuerschaltung | |
DE3700800C2 (de) | Einrichtung zur Erzeugung eines Unterbrechungspunktes in einem Mikroprozessor | |
DE3689879T2 (de) | Arithmetisch-logische Schaltung. | |
DE69122001T2 (de) | Integrierte Schaltung mit einer Standardzelle, einer Anwendungszelle und einer Prüfzelle | |
DE2702722A1 (de) | Instruktionsinterpretation in elektronischen datenverarbeitungsanlagen |
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: NEC ELECTRONICS CORP., KAWASAKI, KANAGAWA, JP |
|
R082 | Change of representative |
Ref document number: 701210 Country of ref document: EP Representative=s name: GLAWE DELFS MOLL - PARTNERSCHAFT VON PATENT- U, DE |
|
R081 | Change of applicant/patentee |
Ref document number: 701210 Country of ref document: EP Owner name: RENESAS ELECTRONICS CORPORATION, JP Free format text: FORMER OWNER: NEC ELECTRONICS CORP., KAWASAKI, JP Effective date: 20120828 |
|
R082 | Change of representative |
Ref document number: 701210 Country of ref document: EP Representative=s name: GLAWE DELFS MOLL - PARTNERSCHAFT VON PATENT- U, DE Effective date: 20120828 |