mikrocontroller.net

Forum: FPGA, VHDL & Co. FPGA-Funktionssicherheit


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Hein (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist jemandem bekannt, welche Tests mit einem neu produzierten FPGA 
gefahren werden, wenn sie aus der Fabrik kommen?

Ich nehme an, die Hersteller spielen zumindest ein image drauf und 
probieren die Funktionen durch. Es geht dabei sowohl im reine FPGAs, als 
auch um SoC-Bausteine.

Mit welcher Sicherheit kann man davon ausgehen, dass die Chips 100% 
funktionieren?

Autor: Ruck-Zuck Fresse dick (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Hein schrieb:
> Mit welcher Sicherheit kann man davon ausgehen, dass die Chips 100%
> funktionieren?

Mit keiner, schau dir einfach mal die Eratasheets an, die die Hersteller 
im laufe der Produktzyklen rausballern, beispiel Block-RM probleme:

https://forums.xilinx.com/t5/Spartan-Family-FPGAs-Archived/Spartan-6-Block-RAM-errata/td-p/256208

Autor: Fitzebutze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ruck-Zuck Fresse dick schrieb:
> Mit keiner, schau dir einfach mal die Eratasheets an, die die Hersteller
> im laufe der Produktzyklen rausballern, beispiel Block-RM probleme:

Ein Erratum betr. Designmangel/Anomalie hat so rein gar nichts mit einem 
Funktionstest zu tun.

@Hein: Du wirst darüber vermutlich keine Details von den Herstellern 
erhalten, aber typischerweise durchlaufen die Chips mehrere Tests:
- Wafer Probe (Funktionstest auf der Siliziumscheibe)
- Boundary-Scan-Tests der einzelnen Funktionszellen
- Finaler Burn-In nach Bonding/Packaging (Testofen)

Damit kann man dann so statistisch gesehen schon eine 100%ige 
Funktionsfähigkeit (minus Epsilon) des Silizium bei Temperatur X, 
Frequenz Y, Strahlung Z, usw. garantieren, für wie lange und bei welcher 
MTBF ist halt sehr variabel.
Die Testdauer ist hier ein Kostenfaktor, gerade Boundary-Scan ist nicht 
sonderlich schnell. Könnte mir schon vorstellen, dass es spezielle 
BIST-Images gibt dafür, die zumindest die Tests nach dem Packaging 
beschleunigen.
Und je nach Industrial oder MIL-Variante sind die Tests und Preise dann 
auch recht unterschiedlich.

Autor: Kastration schafft Weltfrieden (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hein schrieb:
> Ich nehme an, die Hersteller spielen zumindest ein image drauf und
> probieren die Funktionen durch.

Nein, das wird aus Kostengründen eher selten gemacht, die 
übergeordnetetn Testverfahren sind Prozessüberwachung (durch BIST u.ä.) 
und Stichproben zur Ermittlung Chargen-Qualität und ATPG (Automatic Test 
Pattern Generation).

> Mit welcher Sicherheit kann man davon ausgehen, dass die Chips 100%
> funktionieren?

Geh davon aus, daß die Chips nicht zu 100% funktionieren, das Dir das 
aber entweder nicht auffällt oder es einen Workaround gibt, der die 
defekten Bereiche "ausblendet". Dieser Workarounds kann dir offiiziel 
mitgeteilt werden (bspw. "benutzen sie die Blockrams an den Bereichen 
XxYy nicht in Mode z, die BRAM's in den anderen Bereichen sind OK" oder 
durch ein Softwareupdate der Toolchain "heimlich" eingespielt.

Es gibt aber auch Fälle insbesonders bei neuen Typen, wo der Hersteller 
eben schulterzuckend einräumt, das eben die PLL o.ä. im IC es in diesem 
Temperaturbereich nicht tut oder eben der IC doch 50% mehr Leistung 
verbrät und es dem Kunden nicht anderes übrigbleibt als die PCB's neu zu 
designen.

Während der Wafer-prozessierung wird der gesamte Wafer unabhängig der 
Chipdetails überwacht, ob die Prozessschritte (Belichtung, Etch, etc.) 
auch ordentlich ausgeführt werden. Dazu gibt es "Teststrukturen" auf dem 
Wafer (gern in den Bereichen wo abschliessend die Diamantsäge drüber 
geht) oder es werden spezielle Testwafer denen man ähnlich der 
Layer-kontrollmarken auf PCB's ansieht ob alles i.O. lief. Bspw kann man 
dank Dünnschichtinterferenz dem Wafer an der Farbe ansehen wie dick die 
(Passivierungsschicht) geraten ist, "dazwischen gemischt".
Ist der Wafer OK nach jedem geprüften Prozessschritt OK, geht man davon 
aus, das die Chips OK sind.
In den Chips befinden sich auch gerne BIST-Schaltungen die eine 
"Signatur" ermitteln und diese mit einer Referenz vergleichen
https://de.wikipedia.org/wiki/Signaturanalyse_(Digitaltechnik)
https://de.wikipedia.org/wiki/Built-in_self-test

Damit wird aber eher selten eine 100% Testabdeckung erreicht, was man 
aus Zeitgründen auch nicht unbedingt erreichen will. Bei Hundert 
Millionen Transistoren braucht es halt Ewigkeiten jeden einzelnen zu 
überprüfen, Zeit die man in der Ära der Massenproduktion ohnehin nicht 
hat. Eine Zeitlang hat man sich mit "cleverer" Testpatterngenerierung 
beholfen, Hat also überlegt, welche Herstellungsfehler auftreten könnten 
(bspw. stuck-at-Zero) und hat entsprechende Input-muster ermittelt bei 
denen der Fehler an den Ausgängen sichtbar wird.
https://en.wikipedia.org/wiki/Automatic_test_pattern_generation

Und eben Stichprobenermittlung, da wird eben nur einer von hundert und 
bei reiferen Produkten, einer von tausenden geprüft. Da kann es gut 
sein, das trotzdem die gesamte Charge madig ist (deshalb gibt ja 
beispielsweise Xilinx in den Erratas an, welche Foundry in welchen 
Produktionswochen betroffen sein könnte und bittet um Rücklieferung) 
oder das doch einzelne Blindgänger in dieser Charge hocken.

Autor: Hein (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auf den Seiten der Hersteller hatte ich schon nachgesehen. Allerdings 
scheinen das sehr subjektive Darstellungen. Nett wären unabhängige 
Quellen.

Irgendwelche sonstigen konkreten Links?

Hat irgendwer sich schon damit befasst FPGAs in der eigenen Fertigung zu 
prüfen?

Oder erfolgt das nur im Zusammenhang des Gesamtsystems?

Autor: Bürovorsteher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Hat irgendwer sich schon damit befasst FPGAs in der eigenen Fertigung zu
> prüfen?

Nein, das ist sinnlos, weil im FPGA allerseltens alle Bereiche benutzt 
werden. Warum sollte man das Teil aufwendig aussortieren, wenn die 
matschigen Stellen dann ohnehin nicht benutzt werden?

> Oder erfolgt das nur im Zusammenhang des Gesamtsystems?

Ja, bei der Geräteendprüfung. Bisher hatte ich fast keine Probleme; 1 x 
Lattice bei ca 20 k Stück. Mülleimer auf, Baugruppe rein.

Autor: A. F. (artur-f) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Hein schrieb:
> Mit welcher Sicherheit kann man davon ausgehen, dass die Chips 100%
> funktionieren?

Die werden nur auf Waver Ebene getestet, die Bonding und Packaging 
Prozesse werden ebenfalls überwacht und evtl noch ein E-Test 
durchgeführt.

eine 100% Sicherheit hat man nie, jedoch kann ich empfehlen keine FPGA's 
von irgendwelchen Resalern aus China zu kaufen...

Autor: Ruck-Zuck Fresse dick (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Fitzebutze schrieb:
> Ruck-Zuck Fresse dick schrieb:
Hein schrieb:
> Mit welcher Sicherheit kann man davon ausgehen, dass die Chips 100%
> funktionieren?
>> Mit keiner, schau dir einfach mal die Eratasheets an, die die Hersteller
>> im laufe der Produktzyklen rausballern, beispiel Block-RM probleme:
>
> Ein Erratum betr. Designmangel/Anomalie hat so rein gar nichts mit einem
> Funktionstest zu tun.

Ein erratum sagt sehr wohl aus, welche Funktionen der Hersteller nicht 
garantiert. Einfach mal in eins schauen:
https://www.xilinx.com/support/documentation/errata/en247.pdf


> Auf den Seiten der Hersteller hatte ich schon nachgesehen.
aber nur flüchtig, xilinx macht sehr wohl Angaben zur Reliability.

https://www.xilinx.com/support/documentation/user_guides/ug116.pdf

Wenn ich micht recht erinnere gibt es auch Reports für aktuelle 
gefundenen Probleme, für die man sich allerdings anmelden muss. Einfach 
mal den zuständigen FAE fragen

Autor: Hein (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bürovorsteher schrieb:
> Nein, das ist sinnlos, weil im FPGA allerseltens alle Bereiche benutzt
> werden. Warum sollte man das Teil aufwendig aussortieren, wenn die
> matschigen Stellen dann ohnehin nicht benutzt werden?

... weil es vermieden werden soll, eine Baugruppe voll zu bestücken, 
wenn der FPGA nicht funktioniert. FPGA ist billig, Baugruppe teuer.


Ruck-Zuck Fresse dick schrieb:
> Einfach mal den zuständigen FAE fragen
die erzählen einem viel, wenn der Tag lang ist ...

Autor: Ruck-Zuck Fresse dick (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Hein schrieb:
> Ruck-Zuck Fresse dick schrieb:
>> Einfach mal den zuständigen FAE fragen
> die erzählen einem viel, wenn der Tag lang ist ...

Mit dieser Einstellung solltest Du mal zum Psychologen und nicht in eine 
Entwicklungsabteilung gehen.

>Bürovorsteher schrieb:
>> Nein, das ist sinnlos, weil im FPGA allerseltens alle Bereiche benutzt
>> werden. Warum sollte man das Teil aufwendig aussortieren, wenn die
>> matschigen Stellen dann ohnehin nicht benutzt werden?

>... weil es vermieden werden soll, eine Baugruppe voll zu bestücken,
>wenn der FPGA nicht funktioniert. FPGA ist billig, Baugruppe teuer.

Der FPGA funktioniert aber genau dort, wo es die Baugruppe resp. deren 
Funktion als Baugruppe verlangt ... Wie schon geschrieben, es ist 
sinnlos Bauteile nach kriterien auszusortieren, die für die Funktion 
irrelevant sind. Oder geht es hier um den WAF? 
https://en.wikipedia.org/wiki/Wife_acceptance_factor , da ist natürlich 
jede Vernunft hinderlich.

Autor: Bürovorsteher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ... weil es vermieden werden soll, eine Baugruppe voll zu bestücken,
> wenn der FPGA nicht funktioniert. FPGA ist billig, Baugruppe teuer.

Das vorherige Aussortieren ist wesentlich teurer (Zeit für eine 
komplette Prüfung, Erstellung der Testpattern, Kosten für den Prüfplatz 
- und wenn es nur ein DSO ist, Verschleiß an Testfassungen, 
Bauteilverluste duch das Handling z.B. verbogene Beine) als aller 
Jubeljahre mal eine komplette Baugruppe zu verschrotten.
Bei mir beläuft sich der Verlust durch defekte FPGA in über zehn Jahren 
auf weit unter 100 EUR bei einer Warenproduktion mit FPGA von ca. 2 Mio 
EUR.
Das sollte man in den meisten Fällen verschmerzen können.

Autor: Duke Scarring (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe keinen Durchsatz an FPGAs, kann daher auch nicht mit 
Stückzahlen argumentieren, aber bei mir gar es bisher nur zwei defekte 
FPGAs, und die hab ich selbst zersemmelt.

Ich könnte mir vorstellen, das bei der Produktion über JTAG ein Test 
gefahren wird um anschließend defekte Reihen oder Spalten per Fuse zu 
deaktivieren. Mit einer solchen Maßnahme dürfte man die Ausbeute 
drastisch steigern.
So ähnlich wird es doch bei den CPUs auch gemacht: Wenn was nicht geht, 
wird der Core deaktiviert und der Chip als Dualcore verkauft, oder mit 
kleinerem Cache...

Duke

Autor: Blechbieger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Duke Scarring schrieb:
> Ich könnte mir vorstellen, das bei der Produktion über JTAG ein Test
> gefahren wird um anschließend defekte Reihen oder Spalten per Fuse zu
> deaktivieren. Mit einer solchen Maßnahme dürfte man die Ausbeute
> drastisch steigern.

Ich kann mir nicht vorstellen wie das gehen soll ohne dass das Timing 
völlig unvorhersehbar wird.

Ich gehe eher davon aus das der hohe Testaufwand einer der Gründe für 
die hohen Preise ist. Ein anderer sind natürlich die großen Dies und 
dadurch niedrige Ausbeute.

Von Xilinx gab es früher ab gewissen Stückzahlen die günstigeren 
Easypath Varianten. Das war im Prinzip der Ausschuss der nicht 
vollständig funktioniert aber für die Xilinx garantiert dass sie mit 
genau dem einen Bitstream des Kunden funktionieren.

Autor: Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hein schrieb:
> ... weil es vermieden werden soll, eine Baugruppe voll zu bestücken,
> wenn der FPGA nicht funktioniert. FPGA ist billig, Baugruppe teuer.

Das hängt sehr vom FPGA ab. Die derzeit teuersten Bausteine liegen bei 
ca. $80.000 pro Stück. Bei einer Baugruppe, auf der solche FPGAs ist 
natürlich auch nicht nur Vogelfutter für drei Euro drauf, aber die 
Kosten für das FPGA können schon deutlich höher sein als der Rest.

Autor: Kastration schafft Weltfrieden (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Blechbieger schrieb:
> Von Xilinx gab es früher ab gewissen Stückzahlen die günstigeren
> Easypath Varianten. Das war im Prinzip der Ausschuss der nicht
> vollständig funktioniert aber für die Xilinx garantiert dass sie mit
> genau dem einen Bitstream des Kunden funktionieren.

Nope, xilinx garantierte für zwei Bitstreams: der für die eigentliche 
(productive) Anwendung und einen zweiten bspw für die Wartung, 
Board-diagnose.
Und der Rest war nicht zwangsläufig Ausschuss, der von den beiden 
Designs nicht genutzte Bereich wurde einfach nicht geprüft. Xilinx 
leitete aus den bistreams verkürzte Testpattern ab und sparte so 
Testkosten (-zeit, verschleiss) das ist nochmals eine weitere 
Effizienzsteigerung neben dem verbesserten yield.
Für die Erstellung dieser kundenspez. Testprocedure verlangt xilix aber 
auch so um die 10000 US$ und der preisnachlass, bewegte sich so um 
16.00$ statt 16.50$/stück, da lohnt sich das Ganze erst in 100k 
Stückzahlen und kostet die Möglichkeit Bugfixes und neue Features 
nachzuliefern.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.