Forum Discussion
Altera_Forum
Honored Contributor
11 years agoIf I only have one single 32-bit register to write, I still must use address: STD_LOGIC_VECTOR(0 DOWNTO 0), which actually spans 2 32-bit words. Ideally, I would write:
... IF avs_write = '1' THEN -- Address not used. Only writable register. reg <= avs_data(2 DOWNTO 0); -- Only three bits are needed go <= '1'; -- Write with side-effects! END IF; ... but now the condition must be: IF avs_write = '1' AND avs_address = "0" THEN... to avoid false triggering of signal 'go', apart from the fact that my memcpy() to an area of, say, 32 peripherals takes twice as long as needed.