Hallo, ich möchte in VHDL Register erstellen und dann einzelne Bits von diesen über einen Namen z.B. TXRDY_FLAG zugreifen. Kann ich Bits in einem Regsiter benamen?
D. C. schrieb: > Kann ich Bits in einem > Regsiter benamen? du kannst einen alias definieren. https://www.ics.uci.edu/~jmoorkan/vhdlref/aliasdec.html
Du kannst auch die bist als enum (wie die States einer FSM) definieren und das Register als array aus bits mit diesem enum als index. so etwa:
1 | type T_reg1_bist is (IRS, FLU, OVW, HJK,MNO); |
2 | type T_REG1 is array T_reg1_bits of std_logic; |
3 | signal sig_reg1_q: T_REG1 := (others => '0'); |
4 | |
5 | |
6 | -- ..
|
7 | |
8 | if registerwrite then |
9 | sig_reg1_q(IRS) <= bus(4); |
10 | --..
|
11 | end if; |
oder die Indexe mit constanten belegen
1 | constant C_IRS_IDX: natural := 4; |
2 | signal sig_reg1_q: std_logic_vector(7 downto 0):= (others => '0'); |
3 | -- ..
|
4 | |
5 | if registerwrite then |
6 | sig_reg1_q(C_IRS_IDX) <= bus(C_IRS_IDX); |
7 | --..
|
8 | end if; |
:
Bearbeitet durch Moderator
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.