Forum: FPGA, VHDL & Co. ADC Eingang mit digitaler AC Kopplung


von Chris O. (obrecht3818)


Lesenswert?

Hallo,

ich habe eine, für erfahrene Digitaltechniker, einfache Frage.

Ich taste mit einem ADC ein Sinus (oder AC-Signal) ab und lese 
anschließend mit einem FPGA die Werte ein. Die Digits entsprechen 
üblicherweise einem unsigned Wert z.B. 0<->4095. Meine 
Signalverarbeitung mache ich allerdings mit SIGNED (-2048<->+2047).

Wie mache ich die Umwandlung besonders elegant.
In der analogen Welt würde ich mit einem C die DC unterdrücken.
Man kann auch den ADC-Wert mit 2048 subtrahieren und hoffen das der 
Mittelpunkt vom Sinus immer genau in der Mitte des ADC-Eingangsbereichs 
ist(gefällt mir nicht wirklich gut)

Ich abrauche also ein DC Filter??!? Oder?
Kann mirt einer auf die Sprünge helfen?

von Albert .. (albert-k)


Lesenswert?

Am einfachsten wäre es wenn du in deiner Digitalen Signalverarbeitung 
noch einen Digitalen Filter als Hochpass einfügst. Die Grenzfrequenz ist 
natürlich Abhängig davon wie gering deine niedrigste zu verarbeitende 
Sinusfrequenz ist. Ist Sie zu niedrig könnte der Digitale Filter ggf. 
ungeeignet sein.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Chris Obi schrieb:
> Man kann auch den ADC-Wert mit 2048 subtrahieren und hoffen
Das ist mathematisch exakt und hat mit Hoffen nichts zu tun. Ob es 
allerdings in der Hardware einen (anderen) Offset gibt, kannst nur du 
beurteilen...
> Ich taste mit einem ADC ein Sinus (oder AC-Signal) ab
Denn hier mußt ja du selber wissen, welchen Offset dein Sinus da am ADC 
hat.

BTW: kontrollier mal, ob eine einfache Invertierung des MSB nicht auch 
ausreichen würde. Manche ADCs bieten das von sich aus an...

EDIT:
Albert ... schrieb:
> Am einfachsten wäre es wenn du in deiner Digitalen Signalverarbeitung
> noch einen Digitalen Filter als Hochpass einfügst.
Ich möchte nicht wissen, was für dich dann "kompliziert" ist...   :-o

von Chris O. (obrecht3818)


Lesenswert?

Natürlich weiß ich ob und welchen Offset ich habe.
Es gibt aber immer Tolleranzen und nicht-linearitäten.

Ich muss vielleicht erst mal verifizieren ob mir eine Ungenauigkeit im 
DC-Offset Schmerzen bereitet. Ich befürchte aber schon, da ich eine 
Mischung ins Basisband mache.

Schön wäre ein idealer Integrator (auch eine Art von HP).
Gibt es keinen Kondensator-IP-Core?

Edit: oder Differenzierer ???

von X-Rocka (Gast)


Lesenswert?

Die einfachste Art: gleitenden Mittelwert bilden: Summe aus 2^n, als 
Division um n schieben, und diesen dann subtrahieren. Braucht halt RAM, 
je nach Grenzfrequenz.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.