Strona 1 z 1

[VHDL] ROM

: sobota 19 mar 2016, 12:06
autor: PROTON
Ostatni na czacie padł problem tworzenia ROM'u wraz z zawartością w VHDL'u, znalazłem taki sposób. Tworzymy nowy typ np. RomType

Kod: Zaznacz cały


type RomType is array ( 0 to 19 ) of STD_LOGIC_VECTOR ( 7 downto 0 );



W pierwszym zakresie ( 0 to 19 ) deklarujemy ilość elementów macierzy, w drugim ( 7 downto 0 ) wielkość poszczególnych elementów.

Tworzymy i wypełniamy macierz tak:

Kod: Zaznacz cały


-- ilość elementów musi być taka jaką zadeklarowaliśmy.
constant ROM : RomType :=( "00000000", "00000001", "01010101", ... , "11111111" );



A do poszczególnych elementów odwołujemy się tak:

Kod: Zaznacz cały


signal Y: STD_LOGIC_VECTOR( 7 downto 0 );
signal addr : natural range 0 to 19 := 0;

...

Y <= ROM (addr);


Re: [VHDL] ROM

: sobota 19 mar 2016, 13:12
autor: dambo
problem nie dotyczył stworzenia ROMu, tylko jakiegoś ładnego includowania jego zawartości z innego pliku zamiast wpisywania tego w pliku z architekturą :) jak coś odkryję to dam znać :)

Re: [VHDL] ROM

: sobota 19 mar 2016, 14:28
autor: mokrowski
Moduł textio załatwia sprawę.