Ich baue gerade eine CORDIC-Pipeline (in einem FPGA, aber das spielt für meine Frage keine Rolle). Der CORDIC arbeitet im Vektormode und soll zu einer komplexen Zahl den Betrag und den Phasenwinkel berechnen. Das funktioniert aber nur für Zahlen mit positivem Realteil. Bei negativem Realteil kommen unsinnige Werte heraus. Das ist kein großes Problem, da die ganze Operation symmetrisch ist, kann man immer mit positivem Realteil rechnen und hinterher eine einfache Korrekturaddition auf dem Winkel durchführen. Trotzdem frage ich mich, ob der CORDIC im Vektormode tatsächlich nur in 2 Quadranten funktioniert oder ob ich einen Fehler in der Implentierung habe. In der Literatur habe ich dazu nichts gefunden (oder an der falschen Stelle gesucht). Kann mir jemand weiterhelfen?
Vancouver schrieb: > Trotzdem frage ich mich, ob der CORDIC im Vektormode tatsächlich nur in > 2 Quadranten funktioniert oder ob ich einen Fehler in der Implentierung > habe. Der Realteil des Arguments muss positiv sein, da sonst das Prinzip der schrittweisen Verkleinerung des Betrags des Imaginärteils (mit 0 als Ziel) nicht funktioniert. Siehe auch hier: https://en.wikipedia.org/wiki/CORDIC#Vectoring_mode
Den Satz, dass X positiv sein muss, habe ich wohl übersehen bei Wikipedia... Ok dann muss also die Korrekturaddition für negative X tatsächlich durchgeführt werden. Danke dir.
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.