Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
20 years ago

Receiving bad data from FIFO with DMA transfer

Hi to everyone,

i have some problems with the FIFO and reading DMA transactions.

After the transaction, and i dumped the data on the screen. At the very beginning i find some data (2 or words), which doesn't belong to the data i put into the FIFO. Futhermore on several position a single datum is missing and the very next datum has been reading twice.

If readout the FIFO with CPU (readl(...)) all is fine, so the data in the FIFO is OK.

Any ideas?

Thanks a lot

4 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    In SOPC, check that your avalon switch fabric is properly connected to your DMA port.

    Not sure if this is your problem, but its a common thing to forget when using DMA:

    henning
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    > I have some problems with the FIFO and reading DMA transactions.

    Have you check for interference with the cache ? (if you have one)

    If you have cache on Data, there are precautions to take to ensure the consistency of the external memory.

    Hope this helps,

    Bert
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hello Henning, hello Bert.

    First of all i like to thank you for your ideas.

    <div class='quotetop'>QUOTE </div>

    --- Quote Start ---

    >If you have cache on Data, there are precautions to take to ensure the consistency of the external memory<[/b]

    --- Quote End ---

    i&#39;m using a Nios/f core. To check if it&#39;s a cache issue i downgraded the core and removed the cache. the error remains.

    <div class='quotetop'>QUOTE </div>

    --- Quote Start ---

    In SOPC, check that your avalon switch fabric is properly connected to your DMA port.[/b]

    --- Quote End ---

    I will go after the connections (again and again :-)).

    ________

    Meanwhile i verified that Memory is OK: I made a testpattern, which i copy from onchip ram to SDRAM and back, and from SDRAM to SDRAM.

    Hopefully someone else has hint or better a solution.

    Are there some known issues about configurations, which should be avoided.

    I will check everything step by step...

    Thanks

    Helmar
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Problem solved...

    the problem isn&#39;t FIFO. It seems that it is an "electrical" problem. so far it seems to work now.

    thanks everyone for trying to help me out.

    Best Regards

    Helmar