Forum: FPGA, VHDL & Co. Syntax von Dezimaler Konstante


von Fritz (Gast)


Lesenswert?

Hallo,

ich habe eine Tabelle so definiert:

  type MyTable_t is array(0 to  3) of unsigned(11 downto 0);
  constant MyTable : MyTable_t := (
    X"01", X"04", X"08", X"0C" );

ich würde aber gerne statt der hexidezimalen Wertangaben dezimale Werte 
vorgeben, d.h. so etwas wie D"12" anstelle von X"0C".
Welche Syntax kann man dafür verwenden?

von Falk B. (falk)


Lesenswert?

@  Fritz (Gast)

>ich würde aber gerne statt der hexidezimalen Wertangaben dezimale Werte
>vorgeben, d.h. so etwas wie D"12" anstelle von X"0C".
>Welche Syntax kann man dafür verwenden?
1
  type MyTable_t is array(0 to  3) of integer range 0 to 4095;
2
  constant MyTable : MyTable_t := (
3
    1, 4, 8, 12 );

In der Entity kann man dann einfach über eine Umwandlungsfunktion auf 
std_logic_vector gehen
1
my_signal <= to_std_logic_vector(my_tabel, 12);
2
-- oder
3
my_signal <= conv_std_logic_vector(my_tabel, 12);

MFG
Falk

von Fuzzi (Gast)


Lesenswert?

@Falk,
Vielen Dank!!
an eine Umwandlungsfunktion hatte ich noch nicht gedacht.

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.