Altera_Forum
Honored Contributor
17 years agostrange SCFIFO behaviour
Hi all,
I am experiencing some problems with a "supposed to be" simple SCFIFO. I've instatiated it via the megafunction, but I have 2 problems, one of these driving me a little bit crazy: 1) while running functional simulation, I get this warning:Warning: Write to auto-size memory block "selfifo:SelFIFO|scfifo:scfifo_component|scfifo_vh31:auto_generated|a_dpfifo_6o31:dpfifo|dpram_bh11:FIFOram|altsyncram_t7k1:altsyncram2|ram_block3a3" assumed to occur on falling edge of input clock" but from the documentation it seems that writing to FIFO has to be on the rising edge! Anyway I got this warning also in another DCFIFO implementation, which is working properly, so I'm not too much worried about this (should I?) 2) the biggest problem I have is on FIFO write request: In my code, I have to write to FIFO only when I have a pulse on another signal (accept). I wrote this process to control the FIFO write request: FIFO_wr: process (rst, clk80, accept)
begin
if (rst = '1') then fifowrite <= '0';
elsif ( (accept='1') AND rising_edge(clk80) ) then fifowrite <= '1';
end if;
end process FIFO_wr; Seems to be easy, but my fifowrite signal (the write request) keeps staying high even after my pulse (accept) has passed. The accept pulse is not wider than 25 nS. Any suggestion is really welcome, thanks since now, C.