rom

Aug 11, 2005 3 Replies

hi i posted the following already in comp.lang.vhdl but perhaps somebody can help me here:



i created a lookup Table:



type SBOX_TYPE is array ( 0 to 255) of std_logic_vector(7 downto 0);



constant SBOX_Table: SBOX_TYPE := ( ........ );



in my actual code i have a state machine with different states. i have



4 states (sub0 to sub3) in which i call SBOX_TABLE.these states can never be acticve at the same time.

if s_State_Sub0 = '1' then v_Word(0)


Have read the answers with attention ?

"Define SBOX as a separate entity with an address input port and a data

output port. then in your state machine, assign values to the address variable. this way your tool will be able to generate a mux for the address and you'll need only one copy of the SBOX. "

That is a possible solution.

Rgds Andr=E9

yes i did but that answer was posted after my question here. sorry. thanks for the help!

u snipped-for-privacy@yahoo.de schrieb:

--snip

--snip

Hi, since the sources and destinations of the 4 assignments are different the synthesizer infers 4 S-Boxes. The synthesizer doesn't have the intelligence to create a multiplexer demultiplexer around the sbox. So try this: in your States: Boxadress

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required