www.mikrocontroller.net

Forum: FPGA, VHDL & Co. CIC Filter zur Interpolation


Autor: Tobias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo.

Ich würde gerne mittels zwei hintereinandergeschalteten CIC-Filter mit 
Quartus und einem Cyclone3 eine Abtastrate von 48kHz auf 135MHz erhöhen. 
Ich multipliziere einmal mit 5625 und decimiere daraufhin mit 2.
Meine Fragen: Was muss ich hier bezüglich des Frequenzganges beachten 
und brauche ich hier ein Kompensationsfilter??
Ich verstehe auch nicht ganz wieviele Stages und differentielle Delays 
ich benutzen soll......dies geht auch aus der Literatur beim googeln 
nicht hervor.

Danke für Hilfe!

Gruß
Tobias

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie kommt man auf diese Werte? Warum wird mit 2 dezimiert?

Autor: Lattice User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tobias schrieb:
> Quartus und einem Cyclone3 eine Abtastrate von 48kHz auf 135MHz erhöhen.
> Ich multipliziere einmal mit 5625 und decimiere daraufhin mit 2.

Das wird sportlich.
Der Bitzuwachs eines CIC Filters bei 4 Stufen und Faktor 5625 beträgt 50 
bit. Also braucht man bei 16bit Input 66bit Addierer die mit 270 MHz 
funktionieren. Uhhhhh.

Aus diesem Gund und auch weil der Frequenzgang eines CIC Filters nicht 
so toll ist empfiehlt es sich in der ersten Stufe mit einem 
herkömmlichen Interpolationsfilter zu arbeiten. In deinem Falle bietet 
sich dafür der Faktor 5 oder 9 an. Vielleicht sogar 2 solcher Filter 
hintereinander. Da das ja noch bei einem relativ niedrigen Takt ist, 
sollte es kein Problem darstellen. Da danach der Input in den CIC Filter 
schon relativ schmalbandig ist, kommt man eventuell auch mit kleineren N 
aus.
Bei Faktor 15 vorinterpoliert und N = 2 ist der Bitzuwachs des CIC 
Filters dann 18 bit und ein 34bit Addierer sieht schon viel handbarer 
aus.

Unbekannter schrieb:
> Wie kommt man auf diese Werte?

Durch Anwendung der Grundrechenarten.

Autor: Lattice User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe nochmal nachgeschaut:

Der Bitzuwachs beim CIC Integrator ist wohl "nur" (N-1) log2(R), d.h. 
34bit bei N = 4 Stufen und einem Faktor R von 5625. Ein 50bit Addierer 
ist aber immer noch ziemlich gross.

Im zweiten Fall (R=5625/15) ist dann nur noch ein 25bit Addierer nötig.

Autor: Lattice User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lattice User schrieb:
> Der Bitzuwachs beim CIC Integrator

Bah, CIC Interpolator.

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.