Baugruppentest online generieren Aus der Cloud in den Chip

Der Funktionstest-Aufwand an Baugruppen lassen sich mit Cloud-Technik so reduzieren, dass sie auch für OEMs interessant werden.
Der Funktionstest-Aufwand an Baugruppen lassen sich mit Cloud-Technik so reduzieren, dass sie auch für OEMs interessant werden.

Komplexe Baugruppen, fehlende Zugriffsmöglichkeiten, stets viel zu wenig Zeit zum Prüfen und der Kostendruck: Durch Cloud-Technik lässt sich der Aufwand für Funktionstests an Baugruppen mittlerweile so weit reduzieren, dass sie auch für OEMs interessant werden.

Die hohe Komponentendichte auf elektronischen Baugruppen führt zu anspruchsvolleren Testanforderungen in der Fertigung. Mit den etablierten Testverfahren lassen sich die meisten Komponenten zwar sehr gut prüfen, aber durch die immer höhere Integrationstiefe der Bauelemente fehlen oftmals die Zugriffsmöglichkeiten auf das Board und die notwendigen Netze. Immer winzigere Bauteile und kompaktere Leiterplatten bringen die jahrzehntelang etablierten ICT- und Flying-Probe-Tests in eine Zwickmühle, da die Zugriffe über Testpunkte teilweise kaum noch möglich sind. Hinzu kommt, dass auf modernen Baugruppen zunehmend Highspeed-Schnittstellen eingesetzt werden (Bild 1).

Dazu gehören unter anderem PCI-Express, USB 3.x oder SATA. Mit herkömmlichen statischen Testverfahren wie dem Boundary Scan lassen sie sich nicht mehr ausreichend prüfen.

Einfache Verbindungstests sind oft nicht aussagekräftig genug, um beispielsweise Einflüsse durch dynamische Fehler auf den Leitungen festzustellen. Derartige Fehler wirken sich oft erst bei den eigentlichen funktionalen Bitraten aus, die heutzutage bis in den Gbit/s- Bereich gehen können. Hier müssen Testverfahren eingesetzt werden, die auch qualitative Aussagen über die reale Signalqualität zulassen. Allerdings wäre der Einsatz spezieller Messgeräte (z.B. Sampling-Oszilloskope oder Netzwerktester) in der Fertigung aufwendig und aufgrund der hohen Anschaffungskosten oftmals unwirtschaftlich.

Der Funktionstest im Fertigungsablauf

Funktionstests, also das Testen der Baugruppe in einer Umgebung, die der Endanwendung sehr nahe kommt, waren lange Zeit totgeglaubt. Die Gründe dafür sind zum einen die aufwendige Testentwicklung und zum anderen die immer besseren Alternativen. Doch im Zeitalter der Hochgeschwindigkeits-Schnittstellen und immer komplexeren Baugruppen reichen die gängigen Testverfahren nicht mehr aus, um auch qualitative Aussagen über diese Übertragungsstrecken und die daran angeschlossenen Komponenten zu treffen.

Ein funktionaler Echtzeit-Test stellt oft hohe Anforderungen an die Entwicklung der Testprogramme. Auch der Weg zu aussagekräftigen Testergebnissen ist mit Aufwand verbunden, der sich in den Testkosten niederschlägt – und die sind letztlich immer auch Produktkosten. Es gilt also nach einer optimalen Testlösung für jede Baugruppe im Vorfeld oder besser noch während des Entwicklungsprozesses zu suchen. Damit ist gemeint:, möglichst hohe Testabdeckung bei geringem technischem und finanziellem Aufwand.

Einfacher zum Funktionstest

Tatsächlich gibt es bereits passende Testverfahren, die ohne großen Entwicklungsaufwand auskommen. Im Prinzip benötigt man lediglich vorgefertigte Funktions-Bibliotheken für eine bestimmte Anzahl verschiedener Bausteine und Testszenarien, um einen solchen Test ohne ein zusätzliches Entwicklungssystem durchführen zu können. Doch jede Baugruppe ist anders. Wie kann man nun das Testprogramm so erzeugen, dass es zur jeweiligen Baugruppe auch passt?

Ein FPGA-Baustein kann beispielsweise auf verschiedenen Baugruppen auch unterschiedlich an periphere Bausteine angeschlossen sein. Würde ein Ingenieur nun selbst ein funktionales Testprogramm entwickeln, so müsste er jedes Mal ein neues FPGA-Test-Design in der zugehörigen Entwicklungsumgebung erstellen, was genau zur jeweiligen Baugruppe passt. Im einfachsten Fall muss dabei nur die Pin-Belegung geändert werden. Wenn völlig unterschiedliche Peripheriebausteine am FPGA angeschlossen sind, ist die Ausgangslage anders. Notwendig ist also ein automatischer und von der Entwicklungsumgebung unabhängiger Testgenerator, der genau weiß, welche Bausteine wie am FPGA angeschlossen sind. Der Vorteil ist, dass keine zusätzlichen Entwicklungswerkzeuge notwendig sind, die Geld und Einarbeitsunzeit kosten.

ChipVORX-Technik

Dazu bietet Göpel Electronic mit der Software „System Cascon“ und der darin enthaltenen ChipVORX-Technologie einerseits bereits vorgefertigte Chip Embbeded Instrument IPs (Intellectual Property) an. Andererseits können nun auch prüflingsspezifische IPs online und passend für den jeweiligen Prüfling generiert werden. IPs sind dabei spezielle Design-Funktionsblöcke des FPGAs, die während des Testablaufs in den FPGA über die JTAG-Schnittstelle geladen und konfiguriert werden (Bild 2).

Diese bereits vorgefertigten ChipVORX-IPs sind auf den Prüfling zugeschnitten und können einfach parametrisiert werden – auch während des eigentlichen Testablaufs.

Die automatisierte Testgenerierung im System Cascon verwendet die zuvor eingelesene Netzliste des Boards, die zum Beispiel aus den CAD-Daten stammen kann, direkt für die Zuordnung der Pins. Dafür ist kein manuelles Eingreifen des Anwenders erforderlich.

Diese vorgefertigten IPs existieren bereits für eine große Anzahl an verschiedenen Testaufgaben, zum Beispiel für die Frequenzmessung an beliebigen Pins zur Prüfung von angeschlossenen Oszillatoren, für die Flash-Programmierung von SPI-Boot-Flash-Bausteinen oder die Prüfung von Highspeed-Transceiver-Verbindungen.

Die meisten FPGA-Bausteine sind für solche Tests vom Hersteller ausgelegt. Sie haben bereits auf dem Chip zusätzliche Hardware-Einheiten für das Testing. Der Anwender muss dazu lediglich die notwendigen Betriebsbedingungen der jeweiligen Schnittstelle konfigurieren (Bitrate, Spannungspegel, Referenztakt usw.).

Im späteren Testverlauf können dann sogar komplexe statistische Augendiagramme wie in Bild 3 oder Bathtub-Diagramme erstellt werden (Bild 4), welche die direkte Übertragungsqualität der Highspeed-Verbindungen der aktuellen Baugruppe wiedergeben.

Damit lassen sich sehr schnell und zuverlässig Probleme bei der Fertigung, aber auch bereits im Entwicklungsstadium der Baugruppen finden.