|
|
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
|
 |
|
 |
|
 |
|
 |
|
 |
|
 |
|
 |
|
|
|
 |
|
|
|
|
|
|
|
|
 |
 |
|
|
 |
 |
|
 |
|
 |
|
 |
|
 |
|
 |
|
 |
|
 |
 |
|
# 6 - SUCCESS für die Kommunikation von Prozessoren |
|
SUCCESS™ ™ ist Dolphin's Lösung für domänenübergreifende
Kosimulation: mit dem Simulator SMASH kann die Zeitdomäne
mit jeder in C programmierten Anwendung für Befehlssatzsimulatoren
(Instruction Set Simulator, ISS) gekoppelt werden.
Dies begegnet verschiedenen Herausforderungen, wie z.B. Herabsetzung
der Simulationszeit, gründlichere Fehlersuche und Unterstützung
der Systemsimulation (Einbeziehung des Mikroprozessors mit Anwendungsprogramm
und Peripherie).
|
| Fall
eines einfachen Peripheriegerätes |
Fünf Ebenen sind
mit einem Modellpaar simulierbar: |
|
- Anwendungsprogramm
(auf dem µP) für z.B. Dateiverschlüsselung
- Betriebssystem (optional,
auf dem µP), wie z.B. MS-Windows, Linux oder ein eingebettetes
Echtzeitbetriebssystem (Real-Time Operating System, RTOS)
- Treiber (µP-Programme)
für Übertragungssequenzmakros
- Komponentenkontroller
(Elektronik) mit µP-Schnittstelle (Statusregister)
- Peripheriegeräte
(Elektromechanik), wie z.B. bei Telefonanschlüssen mit
Verwendung von aufgelegt/abgehoben- und Besetztzeichen
|
| Fall
eines intelligenten Peripheriegerätes |
|
Der 8051 µC z.B.
als ad hoc Standardkontroller für Tastaturen
• Eine höhere
Ebene ist beteiligt: das ultimative Anwenderprogramm in der
Zentralrecheneinheit (Central Processing Unit, CPU)
Der 8051 ist eine Peripherie am Zentralbus und muß ein guter
Treiber für die CPU sein, um sie zu unterstützen
|
|
SUCCESS verkürzt die
Zeit bis zur Markteinführung
Fall eines HDLC (High Data Link Controller)
|
Hier ist endlich ein industrielles Prüfprogramm
in C für den Ablauf bis zu einem realen HDLC aus der
Fabrikationsstätte; eine Serie von Testmustern sind
im Tabellenformat gespeichert. |
|
Die Verwendung
von SUCCESS für die Vorbereitung von industriellen Prüfungsprogrammen
erlaubt Ihnen den gleichen Prüfablauf beizubehalten. Sie
können Ihr Programm schon virtuell auf Fehler hin überprüfen
um die Zeit bis zur Markteinführung zu verkürzen.
Der Prüfablauf kann folgendermaßen dargestellt werden:
- Eine
Zeitserientabelle von Schaltungseingangs- und Ausgangsgrößen
mit Binärdarstellungen von Logiksignalen und reellen
Zahlen von analogen Signalen
- ein
C-Programm kontrolliert die Übertragung von I/O Signalen
auf dem Systembus.
- ein
VHDL/Verilog-Generatoren-Modellsatz für I/O Quellen-
und Sondensignale.
|
synoptische Sicht der virtuellen Komponente HDLC |
|
Repräsentation eines HDLC, eingebettet in einem SoC |
|
Die Daten werden über dem Systembus von der
CPU zu/von dem HDLC gesendet/empfangen |
HDLC als eine Kommunikationskomponente zwischen zwei SoC’s |
|
Um die Übertragung bezüglich des Protokolls
zu überprüfen, muß die HDLC-Schnittstelle mit
Hilfe einer Prüf-umgebung überwacht werden. |
| Wie werden HDLC'c geprüft? |
|
| |
Zwei miteinander kommunizierende HDLC’s,
der eine sendet, der andere empfängt die Daten: hier überprüft
die Testumgebung auf Datengleichheit.
Dabei ist ein HDLC die zu prüfende Komponente (Device Under
Test, DUT), das andere HDLC ist Bestandteil der Prüfumgebung. |
| |

|
Aufgaben der Prüfumgebung bezüglich der Integration von
HDLC's in einem SoC
 |
Die virtuelle
Prüfumgebung unterstützt nur die Funktionskontrolle
der virtuellen Komponente (ViC), wo sie sich auch befindet.
Und das ändert sich im gesamten Integrationsprozeß
nicht. |
|
Der eingebettete HDLC wird links im zu prüfenden
SoC repräsentiert.
Die Aufgabe der virtuellen Prüfumgebung ist es, Befehle an
beide HDLC's zu senden und die zwischen den beiden HDLC's ausgetauschten
Daten zu kontrollieren. |
Virtuelle Prüfumgebung
für HDLC

|
Auf dem Weg von den virtuellen Tests während
des Entwurfs zu den industriellen Tests der Fabrikationsstätten
ermöglicht ein C-Programm eine Zwischenstufe des Prototyptests
im einem Labor. Dort kann mit Hilfe eines Entwicklungskits
an einem PC die funktionelle Validierung durchgeführt
werden. Dieses Entwicklungswerkzeug muß zum kommunizieren
ein reales HDLC-Produkt, wie das "entfernte HDLC",
enthalten. |
|
SUCCESS ermöglicht diese Stufe des virtuellen
Testens um einerseits die funktionelle Validierungssequenz, als
auch die industriellen Teststrukturen vorzubereiten.
Das C-Programm sendet Daten an die zu prüfende Einheit (linke
HDLC). Die HDLC auf der rechten Seite dient einerseits als Gesprächspartner
(gleiches Protokoll), als auch als Referenz um festzustellen ob
das Verhalten der Testeinheit korrekt ist.
Der Prüfstand ist dann ein Metatreiber, da er alle möglichen
Konfigurationen testen muß. |
> SUCCESS um HDLC's innerhalb
von SoC's kontrollieren zu können

In SUCCESS läuft die Testsequenz in C innerhalb
des Applikationsprogramms des 8051 µP. Der VHDL Testkontroller
testet sowohl die Kommunikation zwischen den beiden HDLC als auch
das Verhalten des Referenz-HDLC.
(*) konvertiert von
VHDL nach C |
> Zu SUCCESS, zur virtuellen
Integration des HDLCin ihr SoC
| Bezüglich beider Einsatzmöglichkeiten
unseres Standardkontrollers: Flip8051 |
|
|
Testsequenzen und Entscheidungen werden in C innerhalb
des ISS des Mikrokontrollers ausgeführt. RAM und HDLC sind
in SMASH modelliert. |
| Bis zur Treiberentwicklung für HDLC |
|
SUCCESS ermöglicht die Entwicklung und den
Test der Treibersoftware ihrer SoC-Peripherie. |
|
< SMASH Differentiators
|
|
|
|
 |
|