mikrocontroller.net

Forum: FPGA, VHDL & Co. EMV Probleme mit CPLD


Autor: gillys (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe gerade einen kleinen Kampf mit einem CPLD von Xilinxs (xc 95 
144xl). Auf einer Platine befindet sich im Moment nur ein A/D Wandler, 
ein 10-MHz-Quarzoszillator und der CPLD. Wie viel Störungen macht so ein 
CPLD eigentlich????. Problem ist ich habe extreme Probleme mit dem A/D 
Wandler (MAX 1243) irgendwas Sinnvolles zu messen (bis zu 5 Bits (LSB) 
schwanken - wäre schön, wenn sich das auf die letzte Stelle reduzieren 
ließe). Der CPLD bekommt seine Spannungsversorgung über einen 
3,3-Volt-Festspannungsregler mit nem dicken low ESR Kondensator 
dahinter. Jeder VCCXX Pin ist mit 10 und 100nF abgeblockt. VDD und Vref 
des A/D Wandlers hängen momentan - jeweils - an einer extra Batterie. 
Das Messsignal kommt im Moment (zum Test) von einem guten Labornetzteil. 
Leider hat der A/D Wandler und der CPLD die gleiche Masse. Layout von 
der Platine habe ich nicht zur Hand ... nur den Code (siehe Anhang).

In der xapp115.pdf von Xilinxs ist Ground Bouncing beschrieben....
Anwort: There are two ways to deal with this phenomenon: live with it or 
reduce it. :-D

Hat jemand irgendwelche Ideen, was ich falsch gemacht haben könnte, oder 
ist "Ground Bouncing" normal....

Vielen Dank für jeden Tip oder Hinweis!!

Autor: Maik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei Xilinx gibt es für die FPGAs (und wohl auch für die CPLDs)
mehrere verschiedene konfigurierbare Ausgangspin- 
Signalanstiegsgeschwindigkeiten.
Mit dem Hinweis habe ich zumeindest mal meinen CPLDs einsetzenden 
Kollegen glücklich gemacht.
Stichwort "QuietIO"

vg

Maik

Autor: Zwölf Mal Acht (hacky)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei einem 4 lagigen Layout ist es etwas besser wie bei einen 2 Lagigen

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
gillys schrieb:
> Problem ist ich habe extreme Probleme mit dem A/D Wandler (MAX 1243)
> irgendwas Sinnvolles zu messen (bis zu 5 Bits (LSB) schwanken
Häh? Von einem 10 Bit Wandler schwanken 5 Bits, du hast also effektiv 
nur einen 5 Bit Wandler? Oder zappeln "nur" die letzen 2 Bits und du 
hast damit Schwankungen von 5 Incrementen?
Woher hast du das gemessene Signal?

> Layout von der Platine habe ich nicht zur Hand ...
Schade. Ich vermute dort deine Probleme...

> Leider hat der A/D Wandler und der CPLD die gleiche Masse.
Das ist nicht weiter schlimm.
Die Frage ist nur: ist auf dieser Masse der Stromfluss des ADCs und der 
CPLDs entkoppelt?

BTW:
> nur den Code (siehe Anhang).
Meine VHDL-Dateien enden mit .vhd
Dann klappt das auch mit dem Syntax-Highlighting hier ganz gut.

Autor: gillys (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

danke für eure Antworten.

>>Stichwort "QuietIO"
Ist QuietIO nicht für unwichtige Signale, deren Timing "egal" ist?
Habe leider kein PDF von Xilinxs gefunden, wo die Anstiegszeiten genau 
beschrieben sind.

>> Woher hast du das gemessene Signal?
Kommt im Moment von einem Labornetzteil (konstant), soll natürlich nicht 
so bleiben. Dies ist nur ein verzweifelter Testaufbau :D Und es 
schwingen 5 BIT!

>>Die Frage ist nur: ist auf dieser Masse der Stromfluss des ADCs und der
CPLDs entkoppelt?

Meine Vermutung ist, dass die Masse schwingt. Ich weiß nur nicht, wie 
ich das verhindern sollte.
Wie entkoppelt man den richtig?
Folgende Punkte habe ich versucht zu beachten:
-Jeder VCC-Pin mit 10nF und 100nF abgeblockt (sitzen direkt unter dem 
IC)
-Nach dem 3,3-Volt-Festspannungsregler 100nF und 220µF
-Direkt an den Versorgungspins des A/W 100nF (hängen aber im Moment an 
einer Batterie)

Vielen Dank

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
gillys schrieb:
> Und es schwingen 5 BIT!
Also schwankt dein Wert um 32 Incremente?
Dann hast du garantiert kein Problem mit Ground-Bouncing, sondern ein 
grundlegendes mit dem Messaufbau.

> Meine Vermutung ist, dass die Masse schwingt.
Evtl. hast du eine Masseschleife über PE.

Mach doch mal ein Foto von deinem Messaufbau. U.U. sieht man da mehr...

Autor: Günter (dl4mea) (dl4mea)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

um einem AD-Wandler mit einer wahren Gleichspannung testhalber zu 
speisen verwende ich immer Batterien oder NiMH-Akkus. Die sind zum einen 
wirklich frei von irgendwelchen Schalt- oder Regelspitzen, zum anderen 
auch noch masse- und erdfrei.

Ich war nämlich vor kurzem auch ziemlich erstaunt was an Schrott aus 
meinem Agilent-Netzgerät rauskommt. Kann auch sein daß ich irgendwo eine 
Masseschleife hatte, aber als ich dann den 1,2V-Akku angeschlossen habe, 
hat wirklich nur noch das unterste Bit geflattert.

Ciao, Günter (dl4mea)

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.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

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