Forum: FPGA, VHDL & Co. VHDL Vector auf kleineren Abbilden


von Simon B. (icerise)


Lesenswert?

Hallo zusammen,

ich möchte einen 17 Bit Vektor auf einen 11 Bit Vektor abbilden.
64 Bit des ersten Vektor entsprechen also immer 1 Bit des kleinen 
Vektor.

Wenn jetzt der 17 Bitvektor einen beliebigen Wert annimmt, möchte ich 
den passenden Wert des 11 Bit Vektor bekommen.

Wie könnte ich das am besten regeln? irgendwelche eleganten Ideen?
(das sind 2048 Verschiedene Bereiche, das als CASE zu schreiben ist 
etwas umständlich)

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


Lesenswert?

Simon B. schrieb:
> Wie könnte ich das am besten regeln?
Wenn das alles komplett beliebig und ohne Wiederholungen und Muster ist, 
dann hilft nur eine Lookup-Tabelle im ROM...

von Duke Scarring (Gast)


Lesenswert?

Hilft Dir vielleicht schon abschneiden?
Das kommt einer Divison mit 64 gleich.

Duke

von Simon B. (icerise)


Lesenswert?

Hm, ja die Werte sind beliebig. kommen von einem Mess-ADC. diese werden 
dann auf eine "nur" 11 Bit genauen PWM Modulator gegeben.

Dann muss ich mich wohl mal an Excel setzen..

von berndl (Gast)


Lesenswert?

na dann wie Duke schon geschrieben hat:
1
v11 (10 downto 0) <= v17 (16 downto 6);
Uebrigens hat v17 (5) dann den Wert 0.5, kann also prima zum runden 
verwendet werden. Duerfte hier aber im Rauschen untergehen

von X. X. (chrissu)


Lesenswert?

Ja einfach abschneiden...
Wenn die PWM nur 11 Bit hat, geht die Auflösung des ADC sowieso 
flöten...

Evtl. noch ein TP-Filter... dazwischen...

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.