PDF-Ausgabe herunterladen (28.7 MB) - elektronik industrie
PDF-Ausgabe herunterladen (28.7 MB) - elektronik industrie
PDF-Ausgabe herunterladen (28.7 MB) - elektronik industrie
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
EDA-Tools<br />
bindungsdaten auch von einer Netzliste, statt von einem Golden<br />
Board ablernen.<br />
Die Verbindungsprüfung (Buzz) erfordert, dass die Bauteile an<br />
beiden Enden der Verbindung Boundary-Scan-fähig sind. Wie<br />
sieht es aber aus, wenn sich dazwischen Logik-Bauteile befinden,<br />
die keine Boundary-Scan-Strukturen besitzen In diesem Fall<br />
misst man einfach „durch die Logik hindurch“, indem man die benachbarten<br />
JTAG-Bauteile verwendet. Die Logikeingänge werden<br />
durch die verbundenen Boundary-Scan-fähigen Treiberpins stimuliert<br />
und die Antwort der Logikausgänge durch entsprechend<br />
verbundene Boundary-Scan-fähige Sensoren zurückgelesen. Dieser<br />
funktionale, Bauteil-orientierte Test ist als Clustertest bekannt<br />
und kann für beliebige Logik sowie Speicherbausteine verwendet<br />
werden. In Abhängigkeit von der Komplexität des Clusters kommen<br />
verschiedene JTAGLive-Module zum Einsatz.<br />
Clustertest für beliebige Logik und Speicherbausteine<br />
Genau wie beim Test einer Pin-zu-Pin-Verbindung kann das<br />
Rücklesen der Ausgangspins eines Clusters interaktiv durchgeführt<br />
werden. Das Rücklesen von Ausgangssignalen eines Clusters<br />
auf Basis einer einzelnen Eingangskombination ist die dritte Messmöglichkeit,<br />
die im Buzz-Modul realisiert wurde. Die Antwort eines<br />
Clusters auf eine Sequenz von Eingangsstimuli kann ebenfalls<br />
interaktiv erfolgen, ähnlich dem Konzept Mustergenerator/Logikanalysator,<br />
jedoch ohne deren relativ hohe Komplexität. Hierfür ist<br />
das JTAGLive-Modul Clip ausgelegt.<br />
Im Gegensatz zur interaktiven Testerstellung über die Module<br />
Buzz, AutoBuzz oder Clip, bietet das JTAGLive-Modul Script die<br />
Möglichkeit, auf Basis einer Programmiersprache erweiterte Tests<br />
sehr flexibel zu erstellen.<br />
Ein Beispiel wäre der Test von Mixed-Signal-Architekturen, bei<br />
dem neben dem interaktiven Zugriff auch Schleifen beziehungsweise<br />
if/else-Strukturen, für die Initialisierung von Registern, erforderlich<br />
sind. Script verwendet die Open-Source-Programmiersprache<br />
Python, die aufgrund ihrer einfachen Syntax, gepaart mit<br />
leistungsfähigen Möglichkeiten zur Datenmanipulation bei vielen<br />
Ingenieuren in aller Welt sehr beliebt ist.<br />
Die Schaffung von Testmodulen mittels der Skriptsprache fördert<br />
einen Bauteile-orientierten Testansatz und bietet damit auch<br />
die Wiederverwendbarkeit des erstellten Testcodes. Wer mit der<br />
Open-Source-Sprache Python arbeitet, profitiert von Tausenden<br />
Hilfsroutinen, welche eine breite Anwender-Community bereitstellt.<br />
Gerade bei Flash-Speichern soll nicht unerwähnt bleiben,<br />
dass das Script auch zur Programmierung dieser Speicher eingesetzt<br />
werden kann.<br />
Designs mit Mikroprozessoren und/oder FPGAs<br />
Bei Mikroprozessor-basierten Designs kann das Boundary-Scan-<br />
Register des Prozessors dazu benutzt werden, kontrollierte<br />
Schreib- und Lesezyklen auf den Bus auszugeben, um zu verifizieren,<br />
dass Peripheriebauteile und Speicher ordnungsgemäß verbunden<br />
sind.<br />
Wenn aber die CPU kein Boundary-Scan-Register hat In diesem<br />
Fall kann das JTAG-Debug-Interface des Mikroprozessors an<br />
dessen Stelle benutzt werden, um die Steuerung der Prozessorpins<br />
zu übernehmen. Auf diesem Konzept beruht die Funktionsweise<br />
des Werkzeugs CoreCommander. Derzeit unterstützt CoreCommander<br />
Bauteile mit dem Core ARM 7/9/11, Cortex, C166 sowie<br />
PowerPC, X-Scale und einigen TI-DSPs. Über den Prozessorkern<br />
werden jetzt mit einer hohen Geschwindigkeit Schreib- und Lesezyklen<br />
durchgeführt, interaktiv oder im Rahmen eines Skripts.<br />
AutoBuzz kann die Verbindungsdaten von einem “Golden Board“ (fehlerfreie<br />
Baugruppe) ablernen. Die abgelernten Verbindungsdaten können dann als<br />
Referenz dienen, um weitere Baugruppen auf Fehler zu prüfen.<br />
Die Werkzeuge der JTAGlive-Familie benötigen nur einen sehr geringen<br />
Aufwand zur Konfiguration.<br />
Neben der Durchführung von Verbindungstests kann der Core-<br />
Commander auch benutzt werden, um interaktiv die richtigen Registereinstellungen<br />
von Peripheriecontrollern zu definieren. DDR-<br />
Speichercontroller und Ethernet Mac sind Beispiele, bei denen<br />
entsprechende Registereinstellungen notwendig sind, um das richtige<br />
Protokoll und Timing für die Kommunikation zwischen Peripheriecontroller<br />
und angeschlossenen Peripheriebausteinen (in<br />
diesem Fall Speicher oder Ethernet-PHY) sicherzustellen.<br />
Bei FPGA-basierten Designs steht man vor der gleichen Herausforderung,<br />
Verbindungen zu verifizieren und geeignete Registereinstellungen<br />
festzulegen sobald Peripheriecontroller in Form von<br />
IP-Kernen in ein FPGA umgesetzt sind.<br />
Schnelle Schreib- und Lesezyklen<br />
Im Gegensatz zu Mikroprozessoren steht hier jedoch kein JTAG-<br />
Debug-Interface zur Verfügung, das den Zugriff auf die IP-Kerne<br />
erlaubt. Mit Hilfe des IP-Moduls JTAG Translator von JTAG Technologies<br />
kann das vorhandene JTAG-Interface eines FPGA-Bauteils<br />
für diese Testanwendungen erweitert werden. Dieses Modul<br />
bietet den JTAG-Zugriff, um IP-Kerne wie Memory-, Bus-Controller<br />
und mehr über die implementierte Schnittstellen-Busse wie<br />
A<strong>MB</strong>A, Avalon, CoreConnect und Wishbone zu steuern und zu<br />
überwachen. Das Translator-Modul wird über einen CoreCommander<br />
betrieben und ermöglicht schnelle Schreib- und Lesezyklen,<br />
ähnlich denen der Debug-Logik in Mikroprozessoren. (ah) n<br />
Der Autor: Peter van den Eijnden ist Geschäftsführer von JTAG<br />
Technologies.<br />
Bilder: JTAG Technologies<br />
60 <strong>elektronik</strong> <strong>industrie</strong> 05/2013<br />
www.<strong>elektronik</strong>-<strong>industrie</strong>.de