Beschreibung
Verfahren und Anordnung zum Vergleich technischer Systeme unter Verwendung von Systemersetzungen
Die Erfindung betrifft ein Verfahren zum Vergleich von technischen Systemen auf gleiche technische Funktionalität unter Verwendung von Systemersetzungen.
Bekanntermaßen können bereits kleine interne Verhaltensunterschiede leicht zu einem Scheitern des Vergleichs technischer Systeme führen können, insbesondere wenn es sich um große und komplexe Systeme handelt.
Für solche größeren technischen Systeme wie etwa Application Specific Integrated Circuits (ASICs) gibt es derzeit kein robustes und zufriedenstellendes Verfahren zur Lösung dieses
Problems .
In Abhängigkeit vom jeweiligen Anwendungsgebiet gibt es einige bekannte Ansätze zur Lösung dieses Problems.
Ein mögliches Szenario, bei dem es zu dem geannten Problem kommen kann, ist eine Implementierungsverifikation, bei der ein Vergleich der Syntheseergebnisse gegenüber den Syntheseeingaben durchgeführt werden soll, um sicherzustellen, dass der Syntheseprozess nicht die Funktionalität der Syntheseeingaben verändert hat.
Als problematisch hat sich hier vor allem die Behandlung von sogenannten Bibliothekszellen herausgestellt, die als Primitive zur Darstellung des Syntheseergebnisses dienen. Hier bestehen große Freiheitsgrade zur Modellierung des internen Verhaltens der Bibliothekszellen.
Ein gängiges Verfahren besteht nun darin, basierend auf Heuristiken die interne Logik und insbesondere die Kodierung der internen Zustände der Bibliothekszellen derart zu modifizieren, dass sich exakt das interne Verhalten der die Biblio- thekszelle repräsentierenden Teile aus den Syntheseeingaben ergibt.
Da diese Techniken ohne Kenntnis der Syntheseeingaben ausschließlich auf den Bibliothekszellen arbeiten sowie aufgrund der außerordentlich hohen Zahl möglicher
Implementierungen von Bibliothekszellen ist es kaum vermeidbar, dass diese Vorgehensweise lückenhaft und fehleranfällig ist.
Eine geeignete Modellierung von Bibliothekszellen ist jedoch Grundvoraussetzung für eine erfolgreiche Implementierungsverifikation.
Ein Beispiel für eine bekannte Lösung ist das Produkt FormalPro (TM) , ein Implementierungsverifikationswerkzeug der Firma Mentor Graphics. Dieses verwendet Heuristiken, um mit verschiedenen Problemszenarien bei Bibliothekszellen umzugehen (vgl. dazu Hughes, Roger B.: Whole-design formal verification of a 5-million gate design by equivalence checking is possible with a small memory footprint, DesignCon2000, February 2000) .
Im wesentlichen wird durch diesen Ansatz versucht, eine Art Normalform zur Darstellung der Bibliothekszellen zu finden. Dieser Lösungsansatz stützt im übrigen die oben getroffene Aussage, wonach Bibliothekszellen eine besondere Problematik darstellen.
Die vorgeschlagene Lösung nach der Erfindung behebt diese grundlegende Problematik und kann unter zahlreichen Anwendungsszenarien eingesetzt werden.
> cυ ) IΌ P> P1
<-π o Cn o Cπ o Cπ rf t-3 iQ tr s ω cn s: σ s: t? o M s tr N ri- M PJ - Φ CΛ rf <! Q Φ Φ < cn φ α
P- fD fD D fD ■<; fD CD CD P P 3 - — Φ Z. φ Φ P d d tr P- ^ Φ φ Φ P P- Φ " P- p- cn P- CO Ξ P cn cn P P- o cn iQ cn p- s: O CO P P Φ P CO O P 3 ≤ P P cn P φ
O -1 fD PJ CD CD rf fD rr fD =3 CD CD P) et cn Φ tr φ o P) n P Φ rf tr Pi P>: P>: J tQ rf φ tr fD et P P P- fD P P1 fD r+ P- r+ tr P N O P- P rr t d P^ φ 3 Φ P P> EP tr P P1 φ P >
Φ N 3 o 3 rr O: P N CD N d d - P- N rf ιQ P- 3 P- tr P Φ 3 d cn fD r+ rr d tr fD cn CD d α d P Φ co Φ P- cn d α O Φ P £. Φ cn P rf Φ P- φ Pi
P- P fD P P- d P CD P ιQ P rr P ^Q o P P) 3 co P P O Φ Φ Φ P n & iQ t? P s: d iQ n P H ιQ P ιQ P Φ Φ tr vQ cn P> d; et cn cn tr P P P PJ N cn P)
P fD fD P cn α * PJ ιQ P- CO tr cn tr Pi P Φ cn r PJ p- P> Φ Φ P> Φ d P> tr ω P α cn CD pj: fD o P σ o tr CD 0) P tr t?- P- P 3 rf rf N <J tr P rf Φ
P> Q N l-i d P PJ cn CD CD P- Φ 3 CΛ φ P cn rf § N N ^ d o T3 s: P-, Hl N rf fD fD ? fD Hi P O d P n ω P_ co O d cn d d 3 P P φ P-
N O P O: P CΛ P- α o PJ P- P P- CO - φ tr ^ P- ) PJ s. P >< P P O P- P P N Φ
PJ P (D > KQ ) ) P P KQ P P P P cn P rl- Φ φ ιQ co iQ ? P- tr o P- d P
^ 3 P 1-1 CO P r+ pj: iQ Q P) cn P- r+ iQ N P rf Φ rf Φ Φ tr cn φ P o rr ö fD P- rf cn P) N P d d Λ d et rr Φ d cn CJ P- tr Φ P P- P KQ Φ Φ > P et CO P> P fD fD fD d ? P o P ^ et Φ rt 3 P • tr φ Φ 3 o KQ Φ 3 P co ** O
Φ << 3 P 3 PJ Hi d ιQ P tQ co o P cn Φ iQ cn Φ P p- 3 P P P> > rf P P
3 co P- P- fD ι-1 "» P- P rr 3 rr ^-, rt P • • . iQ P- P> Φ rf Φ rf rf r+ p cn fD ιQ P <! 3 Φ P> H- Φ 3 Φ Ό Φ Φ rf P- Φ P- α 3 Φ Φ P- tu fD P- fD cn P> CD p- 3 rr Φ h^ O: s: 3 P P P- n P cn P- Φ P P Φ d 3 P* tö P P- O P) fD n P ri- Φ p- n ιP O d: O: Φ rf P" n Φ cn KQ co CO J fD P Ϊ cn ι-i fD tr Hi cn tr Φ P Φ Hi CΛ cn P- tu: w tr co P- P> rf φ rf co N iQ P> cn H ^ PJ 0_ d n P P P- PJ P d * rf P rf <J P Φ P d d: P
P> P- o P- P fD H" M D P" CD P P- O n cn P co ^ Φ O Hi P cn O rf α d fD fD tu: iQ fD S P s: P P Φ cn Φ PJ p- Φ iQ rf 3 d P P- O P- tr N Φ co fD p tr 3 l-i l-i O Hi 3 P- CD O P- rf •^ Φ s: P P tu PJ d P o P d fD P- ιQ CD P CD Φ H tr P P- φ N 3 o φ et rf P- h^ P α P
P" rf o P P- P ≥; P- P fD cn cn P- P p- Φ Φ co cn tr o Φ tr P Φ Φ d tr φ d tQ t? fD P- P- ιQ n N tu Hi tr CD cn P P P P P r+ tu tr Φ cn P n P P- 3 P P p H, o tr rf et P- d d P π Φ cn - Hi P Hl P- rf P^ uQ P- P O Hi
• P- P' N d t P P tr CD d n CΛ Hl d: o Φ P O cn p- tr φ P-
N d P- s, P P) iQ iQ s: P cn r+ tr »< d tr P P- P) N P Φ P- s: rf tr P Pi cn P
P- P- fD rr CD P- n Φ P cn P Φ cn cn ιQ d P co P- tr Φ rf : P. fD P- fD ι-i cn P- tr 3 P rr PJ pj: r+ f P- rr Φ P rf z o P Φ cn Φ PJ < d i-i p PJ p- O D fD rr P α P Φ rr φ φ P Φ φ P^ O P P Φ P fD 3 P 0) fD P P P PJ fD pj: tr w 3 P- Φ P- d P P- ^ O P φ cn P P tr P iQ
P fD tr P fD d P P t P Φ d O P- P P cn φ Φ tr P N QΛ Φ PJ iQ
3 i-i iQ P P' • — • T P P d P P φ rf rt cn P d P- Φ φ P P tr d O CD w d rt- 3 ι r+ Ό iQ P PJ Φ Φ Φ et P- P Λ Φ h^ P Φ Φ
3 d p>: O: P P> O: P) cn Φ P 0_ P" 3 P φ cn cn iQ *< cn h^ φ < P- P- cn α P- 1-1 P P P cn iQ P O P d: Φ 3 rf P rf Q cn φ φ Φ CO n rf
P co P o P Hi Φ P ESI iQ Φ Φ Hi Φ tr <! rf P P> P et ^ Φ
P- t) fD fD P) rr 3 P- J d cn φ d φ P- o P> Φ O Φ > d tr •*. cn tr d N P p. P d fD P- n o P 3 P 3 C ιQ tr P tr PJ h^ P P 3 d IQ n ) et
P P- : rf • Hi n rr tr ^Q υ5 ιQ < P P d Φ P P d Φ Hi Φ tr s: r o fD P fD PJ fD CD CD φ M et P- P P P- φ P CΛ P KQ rf φ Φ cn
- l-i vQ P tr P P- P- P •^ tr P P Φ H, iQ cn P iQ •< P) et Φ P O O rf P fD P- 3 cn d Φ tr co P n co cn P) tr Φ d: P P tr 3
CD fD P- W cn cn rr ? tr P P P) PJ cn PJ co Φ rf d Φ P P P P-
P- n fD <! et n • fD P- iQ rr O P> Φ φ n P- Φ Pi • < P- rf
0 ? tr ι-i P- P- tr P- cn r N tr d P tr P 3 Q. P-, O P- cn
P fD fD fD 3 fD P Φ co P- Hi CΛ P φ U3 d P- P φ O d P- P P- 3 P fD P ■<: Φ »< P- P d P- P Φ tr PJ
P rf n fD rf P- cn cn α cn rf P Φ o N φ P
;v P- ■_ P" P fD CD r P- rf rf P- tr d P P-
P o fD Φ φ Φ Φ o
H- n P Φ 3 3 ' Φ 1 tr 3 P φ P- fD P
Dazu wird für ein gegebenes technisches System und ein gegebenes Ersatzsystem überprüft, ob die Ersetzung des technischen Systems durch das Ersatzsystem möglich ist. Die Ersetzungsbedingung wird dabei derart gewählt, dass es für jede Umgebung des technischen Systems nicht möglich ist, einen Unterschied zwischen dem technischen System und dem Ersatzsyste festzustellen, wenn für diese Überprüfung lediglich auf die Schnittstellen des technischen Systems bzw. dessen Ersatzsystems zugegriffen werden darf.
Damit wird sichergestellt, dass sich das technische System und sein Ersatzsystem unter allen Betriebsbedingungen an ihren Schnittstellen identisch verhalten.
Ist die Ersetzungsbedingung nicht erfüllt, so werden auf automatische Weise Einschränkungen an das Verhalten der ' Umgebung erzeugt, so dass die Ersetzbarkeit der beiden Systeme unter diesen Einschränkungen dennoch gewährleistet werden kann.
Eine erste vorteilhafte Ausgestaltung des Verfahrens gemäß der vorliegenden Erfindung zeichnet sich in dieser Hinsicht dadurch aus, dass eine Einschränkung der Umgebung der beiden zu vergleichenden technischen Systeme dadurch erfolgt, dass diese auf potentiell an deren Ausgängen auftretende Werte untersucht werden und die Umgebung um solche Eingangswerte vermindert wird, die einen Ausgangswert zur Folge haben, der unter keinen Umständen von dem anderen System erzeugt werden kann.
Eine weitere oder alternative Ausführungsform der Erfindung nimmt eine Einschränkung der Umgebung der beiden zu vergleichenden technischen Systeme dadurch vor, dass Klassen von Eingängen gebildet werden und die Umgebung derart beschränkt wird, dass sich Eingänge aus verschiedenen Klassen- nicht gleichzeitig ändern. Dies kann sowohl alternativ zu der
vorangehend dargestellten Möglichkeit einer Einschränkung geschehen, als auch als ergänzende Maßnahme, wenn die erstgenannte Einschränkung nicht zum Erfolg führt, d.h. die Ersetzbarkeitsbedingung nicht nachgewiesen werden kann.
Dabei hat es sich als vorteilhaft herausgestellt, wenn eine fortschreitende Unterteilung in Klassen von Eingängen solange erfolgt, bis die Ersetzungsbedingung nachgewiesen werden kann oder keine weitere Unterteilungsmöglichkeit mehr besteht.
Formal kann die Ersetzbarkeit auch als ein Sonderfall der Ersetzbarkeit unter Einschränkungen aufgefaßt werden, wenn nämlich die Einschränkungen logisch immer wahr, d.h. durch jede Umgebung erfüllt sind.
Daher werden vorteilhafterweise solche Einschränkungen stets automatisch darauf überprüft, ob diese für jede Umgebung logisch stets wahr sind. Einschränkungen an die Umgebung werden am besten automatisch durch ein bereits bestehendes Werkzeug überprüft. Sind die Einschränkungen in der untersuchten Umgebung erfüllt, dann wird bei jedem Auftreten des technischen Systems das Ersatzsystem ersetzt.
Der Vergleich zweier Gesamtsysteme wird dadurch auf den Vergleich zweier Systeme zurückgeführt, bei denen ein oder mehrere Teilsysteme gegenüber den ursprünglichen Gesamtsystemen ersetzt wurden.
Bedeutsam und vorteilhaft ist dabei, dass trotz der vorge- nommenen Ersetzungen kein Präzisionsverlust bei dem Vergleich der technischen Systeme auftritt.
Der Grundgedanke der Erfindung ist demnach, einen nach allgemeiner gegenwärtiger Auffassung nicht durchführbaren Vergleich zweier technischer Systeme auf einen erheblich einfacheren, technisch machbaren Vergleich zurückzuführen, indem Teilsysteme eines oder beider Systeme gezielt ersetzt
werden. Die Ersetzungen erfolgen kontrolliert durch Überprüfung einer Ersetzbarkeitsbedingung unter Einschränkungen. Die Überprüfung der Ersetzbarkeitsbedingung wie auch die Erzeugung und Überprüfung der dazu notwendigen Einschrän- kungen erfolgen automatisch. Dadurch kann ein Vergleich der beiden Systeme basierend auf den Ersetzungen der Teilsysteme erfolgen, ohne dass damit ein Präzisionsverlust des Vergleichs einhergeht.
Die Wahl des Ersatzsyste s hängt im wesentlichen vom Anwen- dungsszenario ab. Zum besseren Verständnis wird im folgenden ein Ausführungsbeispiel anhand der bereits problematisierten Bibliothekszellen für eine Implementierungsverifikation eines digitalen technischen Systems geschildert. Daran und in Ver- bindung mit der Figur werden weitere Vorteile und Details der Erfindung verdeutlicht. Es zeigt:
FIG 1 eine Prinzipdarstellung einer Implementierungsverifikation basierend auf Ersetzungen von Biblio- thekszellen gemäß der Erfindung.
Zunächst soll dazu näher auf die Ersetzbarkeitsbedingung E (Safe Replaceability) von technischen Systemen eingegangen werden. Eine solche Ersetzbarkeitsbedingung E für ein technisches System, das durch Finite State Systems (FSMs) dargestellt wird, wurde bereits definiert in „Pixley, Carl; Singhai, Vigyan; Aziz, Adnan; Brayton, Robert K. : rαultilevel synthesis for safe replaceability; ICCAD94, pages 442-449, 1994,,.
Weitere wichtige Grundlagen ergeben sich aus:
- Hasteer, Gagan; Mathur, Anmol; Banerjee, Prithviraj : an implicit algorithm for finding steady states and its application to FSM verification; DAC98, pages 611-614, 1998.
- Singhai, Vigyan; Pixley, Carl: the verification problem for safe replaceability, CAV94, pages 311-323, 1994.
- Singhai, Vigyan; Pixley, Carl; Rudel1, Richard L.; Brayton, Robert K. : the validity of reti ing sequential circuits. DAC95, pages 316-321, 1995.
Die im folgenden vorgestellte Definition erweitert den Be- griff der Ersetzbarkeit auf Ersetzbarkeit unter Einschränkungen.
Definition:
Ein technisches System FSM1 heißt ersetzbar gegen ein techni- sches System FSMO unter der Einschränkung C (FSMl ς c FSMO) , wenn für jeden Zustand Sl des Systems FSM1 und für jede Folge von Eingangswerten ein Zustand SO des Systems FSMO existiert, so dass sowohl die Einschränkung C durch die betrachtete Folge von Eingangswerten beachtet wird und zugleich auch die Folge der Ausgangswerte für SO mit der Folge für Sl für die betrachtete Eingangsfolge übereinstimmt.
Es lässt sich zeigen, dass diese Definition eine notwendige und hinreichende Bedingung für die Ersetzbarkeit von techni- sehen Systemen ist, so daß die Ersetzung von keiner Umgebung bemerkt werden kann, in der die Einschränkung C gilt und die lediglich in der Lage ist, die Ein- bzw. Ausgangswerte von FSM1 bzw. FSM2 zu analysieren.
Die Ersetzbarkeitsbedingung nach der gegebenen Definition kann mathematisch auf zahlreiche Arten nachgewiesen werden. Zu bekannten automatisierten Verfahren zählen dabei beispielsweise BDD, ROBDD, ATPG, SAT oder auch simulations- basierte Verfahren.
Gemäß der Erfindung wird die Einschränkung C aus der angeführten Definition dadurch bestimmt, dass die Systeme auf
potentiell an ihren Ausgängen auftretende Werte hin untersucht werden. Es werden dann diejenigen Eingangswerte zu der Einschränkung C hinzugefügt, die - unabhängig von inneren Zuständen - einen Ausgangswert zur Folge haben (können) , der unter keinen Umständen von dem anderen System erzeugt werden kann.
Kann unter Zuhilfenahme der oben beschriebenen Einschränkungen über die erlaubten Eingangswerte die Ersetzbarkeits- bedingung nicht nachgewiesen werden, so werden Klassen K von Eingängen gebildet und es wird die Einschränkung in C aufgenommen, dass Eingänge aus verschiedenen Klassen K sich nicht gleichzeitig ändern. Der Prozess der Aufteilung in Klassen K wird so lange fortgesetzt, bis die Ersetzbarkeitsbedingung schließlich nachgewiesen wird oder keine weitere Aufteilungsmöglichkeit mehr besteht. In letzterem Fall sind die Systeme nicht ersetzbar.
Im folgenden soll nun auf das weiter oben angeführte Ausfüh- rungsbeispiel näher eingegangen werden.
Wie bereits erwähnt, sind Bibliothekszellen ein ideales Anwendungsszenario für die hier vorgestellte Erfindung.
Die FIG 1 zeigt dafür am Beispiel einer Implementierungsverifikation eines digitalen technischen Systems, z.B. für die Herstellung eines ASIC, das Zusammenspiel der verschiedenen Werkzeuge.
Bei der Implementierungsverifikation eines digitalen Systems besteht die Vergleichsaufgabe darin, die Syntheseeingabe RTL (hier als FSMO) gegen das Syntheseergebnis 'netlist' (hier als FSM1) auf funktionale Gleichheit zu überprüfen, 'netlist' und 'RTL' stellen dabei die Benutzerdateien UF (User Files) dar, wobei 'netlist' aus 'RTL' unter Zuhilfenahme der Synthesebibliothek ' .db' synthetisiert 'syn' wird. Die Bibliothek '.db' enthält die Synthesemodelle der Bibliothekszellen und
O co fv> N)
Cπ o n O Cπ O Cπ
__, — ω P 1 < σ cn 3 P- c tr Η t J tr M CΛ <! P ^ <T) → M CΛ P- cn φ ö t? s P- cn to 3 o P- rf o P p- Φ P d P- p- *< O P- Φ P • P- P- Φ Φ o P- P P- P- Φ co
P- Pl Φ O P Φ P rf O P- o cn tr P P P n 0- . o <! P 3 P P P Φ 3 tr φ P P rf
3 tr> P- p) co d Φ Φ tr N PJ h^ Φ et tr tr P- tr tr iQ d u P d P <Q ?
— o Φ d Φ ?v P" P et & φ 9 P- tr Φ et iQ 0) H" cn 55 d et P- P- P N tö tr 3 co P rf P P- Φ CO 3 o CΛ Φ P Φ - Φ tr PJ o Φ co P- tu P 3 tr φ Φ tr d N φ CO d Φ Φ ιQ 3 cn Φ rf *< cn cn rf P- 3 Φ et tr rf cn cn rf iQ Ό φ d cn
P>: P Φ P Φ co P rf P tr P Φ PJ o PJ o P- ) INI φ O P- φ ^ iQ rt d P- rf rf rf Φ -" φ P' Φ rf 3 KQ cn ' rf o o h^ P1 rf tr O P Φ o cn P)
Hl rf P- N P CO Φ s, φ P- P) p o tr P- P- Φ P P rf P- N P • 3 P P
P- - p- Φ d d • P P- P P P Φ P) P PJ cn P 3 cn d cn d 3 cn φ 3 t→ α Q P iQ P P *r Φ P tr P U3 - cn Φ P α d n ) 3 P rf P p- 3 α P tu rf d IQ rf P - P) P- co • Φ φ tr <! r+ o KQ Φ iQ rf o P) rf rf ^1 Φ
P rf p- P d P1 • P o N Φ P d Φ Φ cn P- Φ P-
P- cn iQ Hi P J P- rf rf Q d tr p- Φ P Φ P- P Φ - ? co Φ ^-^ o P- rf cn : φ d Φ Φ S Φ P - P tsi P- c P- PJ h^ O: P tu Φ P" P < P- tr cn P P" cn P P P- P P) α KQ P- d P rf P) h^ P Φ P P h^ d X P- et rf P- Φ P1 PJ rf P P Φ P- PJ Φ co P- φ o P φ P rf P Φ P- P ö tr φ
- p- P α φ ω P. φ P P P tr P PJ PJ P iQ . P Φ CΛ φ K t→ P P Q Φ P- P- 3 P- Φ P) et Φ 3 P tr d Φ P P- Φ ^ -« O tu
Φ tr co φ N Φ tr P P Φ ≥; φ tu p φ o P -« P1 P- cn P- P cn ≥: - P tu Q Φ φ P- d P d cn Φ P- - P- Φ ' ^* * P P> rf P rf P- φ Φ . • P-
Φ P- P et co tr P- ≥! φ et P tö tr P P- Φ <! d - Φ rr 3 rf P <! tr tr P> Φ P> P) O Φ P tr S N φ l }-• tr P -" Φ N P- tr <i h^
Φ < co rf o 3 P rf rf φ PJ ) P1 3 P" P- PJ rf M f" • ≤. cn Φ N cn P1 Pi P, Φ P-
P Φ rf P- tr 3 ^ tr N P d Ό P- - o P Φ Hi cn p- P- P- φ φ α P- P- P O
• P P O P Φ Φ O cn d rf <Q P Hi co Φ 3_ tö P P- φ φ cn ? rf
≤ d P P- P N ? P- si P- rf P cn tr P P- Pl ^ rf P- P rf P) d O tr σ Φ f • cn tr d cn o Φ P Φ 3 rf Φ N Φ N φ tr1 φ P) P Φ rf P P φ
P- P rf n PJ -• rf P P ^Q P- Φ ? d P- P- rf -• cn d iQ ω P- α ??
Φ d tr P α • Φ rf -• r tr ^ Φ φ ≤. P) •P Pi J P- - o Hl ω d P iQ Φ a φ ω P rf et - - Φ P P) P d= P) s: tr tr P P P- α
P- P Φ P tr — P P- Φ Φ Φ • Φ PJ N CΛ P tr P φ Φ {-• φ φ fu
P IQ P" σ P- - P tr P rf h^ ) - P P- Φ rf P P- rf cn P Φ rf r d cn CΛ Φ PJ -• -• tr tr tr P- Φ 3 P- Φ P -. o 0 P- cn Φ
Φ α fD P et * P- rf d P- CΛ P- P Φ - P- G P- d φ cn *P ≤ P- to rf P- P" — P-
P Φ o P P }-• cn o > cn P P P P- P P Φ Q Pl tr cn o * Φ
P P IS! p- φ et P- iQ rf P rf Φ cn rf Φ φ tu tr cn d= P Φ 1 Φ rf iQ P
Φ d Hi P- tr Φ cn Φ tr f-f - P d: rf Φ P cn r Φ p- Pi P- - ? - P N
CΛ o : P Φ P- rf P_ Φ t tr Φ P d P- P O rf φ cn d -. d tö P- s Pf φ CO P - P ? Φ co φ tr P P CΛ o Φ tr P d H- N d P . Φ φ 3 3 P φ Φ d: co cn rf P rf Φ iQ P- P P- s: P cn Φ P <! cn
P) d 3 tr φ φ 3 d: O N Φ PJ P • P 3 cn rf d Φ d - rf rt P-, Φ h^ φ J P P- tr φ N d P d 3 cn 3 P P rf • h^ Φ φ P K
P- tu P P rf P d Φ et P" Φ - P- tö P- o α P- Φ P P i Φ Φ cn rf PJ ;v co iQ P P h^ Φ rf φ Φ n tu Φ <! Φ O P φ P P p- P- P) O pi 3 φ h^ P d P) p- rf Φ P φ P M P P <! ≥; P" cn φ O P P- tr tr P- co P Φ P CΛ P1 rf o h^ s: P . P- PJ rf Hi φ tu O: PJ rf
P P iQ rf Φ φ rf P- rf P Λ φ • P- P -• J: cn KQ P1 Φ d P o P d Φ d cn P- rf Φ Φ tr >< P co P- co φ tr o öö Φ φ P P s: t φ O h^
P 3 N P-, -" Φ p- Φ P rf P- P P tr φ P ? Φ -» P tr P< Q O ≤ φ Φ tσ P" CΛ ri- P d rf φ tr φ P) - rf P- P- co cn rf P Φ φ
0- P- P P P. tr > d: P PJ P Φ P Φ d cn Φ φ o P- P- P- P- P '
Φ cn tr1 PJ P C o o Φ cn d P- cn P- P tr 3 φ o d tn P- co φ h^ O Φ P et P) tr cn Φ P P 3_ Φ Φ tu d ω P P Φ
P tr Φ tr cn 1 Hi Φ 1 KQ φ Φ P P Pi P1 Φ tu α
Φ Φ P Φ d: 1 3 I Φ rf P) P φ
P cn t ö Φ rf co
P- Φ P Φ P P- Φ
P I r P O P P
co co r > P P1
Cπ o Cπ o Cπ o cπ
N <! N Z d -, -, < Pi ^P P cn φ 3 L α p. h^ ; r tr CL Ό tu ö <! CΛ rf CΛ
P- Φ P d d P P • cn O P- φ d O P- O Φ P- P- J d d d Φ Φ P cn tu Φ P- P-
Φ P < P rf Q P- P N P P CL P Φ Φ n P P P P P : cn cn P 3 Φ 3
P P- tu o Φ Φ ) 3 ιp tu o ιP P- Φ P >P ιP ιP φ Hi O tr d cn d rf Hi P P Φ P P rf Φ rf ιp co co S ^ ≥! cn rf hr| cn Φ P CΛ d N Sl tu Φ h^
P- co p » tr P- Φ < rf φ Φ d= O co P Pi P- P P- Φ h^ P) 3 tu
Px- Φ P Φ <: r -• ,--. Φ O P φ P Φ rf P o rf tu 3 <P P- P et rf o rt
P> P P- P φ Φ P- P P • P CL N rf 3 P Φ n h^ d φ Φ P- CL P- rf Φ n cn P P P co P- P- N P- P- tu 3 tr h^ h^ α P N P O φ O
P- P tr rf z - Ξ d α Hi φ Φ P P- ιP rf P) t cn P) Φ rf φ P h^ P
O rf 3 φ w • ^ Φ P tu P- d cn rf tr rf P d p- cn cn
P ^ PJ P X iQ H P- rf cn ? M iQ - rf Φ - Φ - N CL P- P- ιp P 3 Φ 3 pi: fu h^ O tu Q cn Φ tu P cn Φ H- • cn z P- O H cn o P o
<! d cn d Φ rf Φ P z rf ω Q p- rf ^ P_ >< • Φ P P rf o Φ α
O P P rv> cn φ P- φ 3 — P- Φ P cn cn a P- Φ p- Φ
P Φ P-, <P P- -> tr O P- o rf P CL tr P - P Pi 3 Φ d n P P P"
P P> P- 3 P) φ tr rf P N : Φ Φ - Φ d: O rf P φ P>
Φ d φ α φ co P P- Φ φ tr tr d= rf P ** CΛ cn Ό P CL N CL P Φ Φ
P- s: rf Φ P o vP p- P Z tu φ tr •<; rf P1 φ tr •
P d O <! co rf Z φ < Φ Φ P P φ P- <! CL P Φ PJ CL h^ PJ CL P) cn π
P- P 3 φ Φ P- PL φ Φ P ?r •p P cn O tu rt h^ o P- )-• P Φ co >Q rf e tu
<P PJ P s P φ φ P rf < CL Φ P rf P CO tr h^ φ Φ Φ 3 d Φ - P φ Φ rf P- φ d z Φ φ P- d: φ — Φ < 3 φ Φ 3 P- tr P
P P- Pi P 3 P- rf φ cn P P rf Hi P- n tu cn Φ Φ t1! P- P- P p- <l φ d cn P- ;* P- PJ Φ P P- Hl rf P d ?ö Φ P P P P rf rf rf tu P P o
CΛ P- P- ?\" N et co rf CL O J CL ιp • φ P o cn tr et et cn ω P1 rf P- rf Φ Φ PJ φ d tr tr P- Φ rf P- P Φ -> CL V , φ Φ n d P rf d α s; & P P φ KQ ^ tsi Φ Φ IO tr Φ O. et cn Φ P Φ P φ P tr
P tr1 rf P- iQ Φ Φ d iP P Φ φ tu: s: P P d h^ rf O N P- P Φ P N CL co
CL tu Φ o cn 3 P P p- P CΛ tr P- N Φ P- Φ P tr 3 n tr P- n H" φ d P > Ω o *< Φ PJ cn t i Φ h^ o P cn tu CΛ tr tr Φ Q tr P
P Pi S n co N tr Φ t N P P rf n d d h^ rf CL rf P < Φ P- N Φ
N Φ Φ tö o Φ P rt d rf tr tr ^P Φ tr P ^ CL P P Φ P- P- P- ≤
P) Φ P- P- o d ist P tr d Φ P- rf Φ P) Φ d rf CL P Φ o Φ d P- cn P P. KQ Z CΛ <! Φ P φ P P1 Φ N rT d P- P- P tr tr tr P- rf Φ φ d P- P- o l cn CL P P. P d P P rf O Φ tu tr d P et cn o P O cn 3 P 3 Φ tu Φ P — rf tr cn P Φ P d= " • Φ s: d: π O n d Ό 3 tr P P H • <! cn P φ tr cn Q tr P
Φ Φ tr M tr — • tr P- CL o Φ φ cn tu P- H φ O d 3 Φ n . Φ CΛ
P P φ CΛ Q • Φ PJ Φ Φ CL P- P rf t P P tr P — et P O P- tr P >< α
P- P H ?ö Φ P et P 3 Φ iQ Φ 3 co N - cn • Z CL CL rt P P P ιp Ό Cl Φ Hi α P- φ CL P1 P1 φ o Φ ^« O O φ Φ Φ P- P- et Φ
Φ 3 P CO *P d: tu O *P P φ Φ tr d tr P P tP h-> et Φ tr tr P
Ό d: tr P P P rf Φ P P- d CL P v co P- co CL φ tr P φ N g Pi Φ tu P cn cn P- P- O P Φ tu: d o Φ -. P- P Φ Φ cn Φ
P- Φ rf P n rf rt 3 P Φ tu h^ tr iQ P P P CL . Q φ l P ts Φ P
P 3 3 Φ φ Φ o N P d 3 ^ t N Φ Φ P P- d: Φ P- 3 d Φ s: O: 3 P ^ P- d co Ό •p - cn d . P H P P- P tr P P o < rf P K Φ Φ T3 P P1 O . P- P Cd φ P φ P 1 L o
Φ rf P h^ P < d P- < — φ co vP 3 ιP O . H P ~* rf w \ Φ P
P P- P- rf φ P h^ φ cn cn 3 P- PJ d φ P σ P. P- rf cn P >
Φ Φ O P KQ φ h-1 < > φ rf rf P P> P> Φ P CL Hi d
P P P tr π Pi Φ }-• φ P P P- CO cu - d P P cn <P P P- P- cn Φ Φ
Φ d et tr tu P P) Φ P - rf <! - et s; • n cn n Φ φ P ι P
P "• Φ tr d P p- P- P- P- tu α tr rf tr >P tu d d iQ o n P c 1 tr Φ O P er Φ er P Φ d
1 : d σ P CΛ
1 co P CL φ d d P C Pi h-> tr tu: 1 P tr P Φ CL >< 1 P P P co P co d: 1 P- P CL Φ ιP 1 P rf P P P) n 1 P) P P-1 1 P 1 Φ co P tr d 1 1
1 cn
Auch die Ausgaben von Synthesewerkzeugen bei der FSM Neukodierung und Optimierung, wie sie beispielsweise beim Entwurf von Field Programmable Gate Arrays (FPGAs) eingesetzt werden, sind ein weiteres vielversprechendes Anwendungsfeld für die vorgestellte Erfindung.
Diese Synthesewerkzeuge sind in der Lage, eine Neukodierung der internen Zustände von Teilsystemen des FPGAs vorzunehmen. Zur Durchführung der Implementierungsverifikation von FPGAs können - ähnlich zu der Vorgehensweise im vorangehenden Ausführungsbeispiel - die neukodierten Teilsysteme unter Zuhilfenahme der vorgestellten Erfindung durch ihre Originale ersetzt werden, um anschließend die Implementierungsverifikation durchzuführen. Die Ersetzbarkeit von Originalsystem und neukodiertem System kann -wiederum mit dem Werkzeug CRC überprüft werden, das zugleich auch die von der Umgebung zu fordernden Einschränkungen generiert.
Prinzipiell stimmt der Ablauf daher mit dem im Zusammenhang mit FIG 1 gezeigten überein. Lediglich die Herkunft des Ersatzsystems ändert sich.