Hallo! Danke an den unbekannten Autor für 'Cordic For Dummies'! Damit habe ich CORDIC verstanden und konnte eine generische Umsetzung in VHDL realisieren. Mit dem CORDIC läßt sich ja so einiges anstellen (Sinus, Cosinus, Wurzel, Logarithmus, etc.pp.). Hier brauchte ich zu gegebenen IQ-Samples die Länge des Zeigers und den Phasenwinkel. Also eine klassische Koordinatentransformation von Kartesischen Koordinaten zu Polarkoordinaten. Wenn man nur den Winkel braucht (ATAN2-Funktion) kann man sich den finalen Multiplizierer für die Gain-Korrektur sparen. Die gezeigte Implementierung arbeitet mit 8 Bit Eingangsdaten, läßt sich aber in der Bitbreite und der Skalierung anpassen. Die State-Machine hat eine feste Latenz, was ich für Laufzeitbetrachtungen im System praktischer finde. Wer will könnte dort noch optimieren und die Berechnung abbrechen, sobald y=0 erreicht ist. Viel Spaß damit!
> ... 'Cordic For Dummies'! ...
Kein Mensch mit Selbstwertgefühl ruft eine Datei mit diesem Titel auf.
Hartmut schrieb: >> ... 'Cordic For Dummies'! ... > > Kein Mensch mit Selbstwertgefühl ruft eine Datei mit diesem Titel auf. Danke, dass du für die Menschheit sprichst.
Wenn es jemand damit versteht - warum nicht? Es gibt freilich bessere Quellen :-) Wir hatten den ALGO damals in der UNI zu implementieren. O-TON Prof: "Wenn Sie wissen möchten, wie es funktinoiert, recherchieren Sie im miro fiche" und das habe ich dann auch gemacht. Zum hiesigen CORDIC: Ich denke, die Faktoren haben ein bissl zu wenig Stellen.
Frank schrieb: >Hallo! >Danke an den unbekannten Autor für 'Cordic For Dummies'! >Damit habe ich CORDIC verstanden und konnte eine generische Umsetzung in >VHDL realisieren. Da hier immer so viel genörgelt wird, möchte ich hier mal ein Lob aussprechen: Danke für das Teilen des Codes.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.