Altera_Forum
Honored Contributor
14 years agoProblems with ALTASMI_PARALLEL megafunction
Hi,
I'm trying to use ALTASMI_PARALLEL in a Cyclone design with an EPCS1. The problem is that all the code which drives this megafunction, and the megafunction itself, gets optimised away during compilation. I am doing something slightly unusual in that I am only storing one byte in the EPCS1; the code in the Cyclone then reads this byte when it comes out of reset and uses it to initialise a signal. 0xFF = '1', anything else = '0'. The addr[] and datain[] ports are therefore hard-coded to 0x018000 and 0x00 respectively; my code asserts the read, write and sector_erase inputs to read, clear and set the flag respectively. Is it possible to use the ALTASMI_PARALLEL function in this way, or is it the stuck values at datain[] and addr[] causing the code to be optimised away? I have never used this megafunction before so not sure of its limitations. Using QuartusII Web Edition V9.1. The VHDL port mapping for the megafunction is:
asmi : asmi_altasmi_parallel_6h12 port map(
addr => x"018000",
busy => asmi_busy,
clkin => asmi_clkin,
data_valid => asmi_data_valid,
datain => x"00",
dataout => asmi_dataout,
illegal_erase => open,
illegal_write => open,
rden => '0',
read => asmi_read,
sector_erase => asmi_sector_erase,
wren => '1',
write => asmi_write
);
TIA R.