Forum: FPGA, VHDL & Co. Was bewirkt das hier?


von Jan (Gast)


Lesenswert?

Hi,
was bewirkt dieses Konstrukt?

[...]
signal CLOCKDIV    : integer range 0 to 2**CNTSIZE-1;
[...]
CONSTANT CNTSIZE : Integer := 22;
[...]
CLOCKDIV <= (CLOCKDIV + 1) mod 2**CNTSIZE;

TaktOut ist std_ulogic als Ausgang.

TaktOut <= TO_UNSIGNED(CLOCKDIV,CNTSIZE)(CNTSIZE-1);

Der Takt wird durch 2^22 geteilt.
Dass man es in unsigned wandelt ist klar, aber wozu (CNTSIZE-1)?

MfG
Jan

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Man wählt das (CNTSIZE-1)-te Element des unsigned-Vektors aus.

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.