Forum Discussion

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

Memory test template from Eclipse failed DMA test

Hi,

I've attached 2 pictures. the left is the hardware connection in SOPC builder, i am sure something is wrong here.

The second picture shows the memory test results from Eclipse IDE. I think there must be something wrong with my connections or settings in SOPC builder, as i am using the memory test template file provided in the Eclipse IDE.

Can anyone figure out what's wrong with my connection or settings?

Michael

5 Replies

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

    How does the DMA test in the "memory test" suppose to work anyway??

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

    I've conducted another memory test on SDRAM, i've attached the pictures of SOPC connections and results in Eclipse.

    It passed the DMA test, which i find it very strange.. as i did not attached any DMA core between SDRAM itself or to any other memory involving SDRAM, so why did it passed the DMA test??? The transfer of data is from where to where? I am confused:confused:

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

    You can have a look at the code you compiled to see what it's doing with the DMA. I agree it shouldn't have passed this test.

    Where did you place the application/stack/heap/exception/reset vectors in your software project? You must be vary careful not overwriting any of those areas with the memory test itself.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    Where did you place the application/stack/heap/exception/reset vectors in your software project? You must be vary careful not overwriting any of those areas with the memory test itself.

    --- Quote End ---

    I placed them all in SRAM(2MB ). Previously the SBT automatically uses SDRAM for .bss, .heap, stack, and etc... which i did not even know about, cause i choose on chip RAM to store reset and exception vector. So i failed the memory test on SDRAM everytime.

    After i found out, i made the modification, and SDRAM can now pass all the test, including the DMA test which it should not have passed.:huh:

    The memory test code i used is from the Eclipse template, i dont really understand the code very well, but at the command prompt they only ask for start address and end address to conduct all the test including DMA test. It does not ask for source and destination address, and total bytes to transfer.

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

    Having a quick look at the code, it seems that for the DMA to work you need to have its read and write masters connected to both the heap memory and the memory you want to test. The code allocates two memory blocks in the heap memory to read/write from.

    I don't know why the test doesn't fail though... It may sound stupid but are you sure that the configuration you have in SOPC builder is actually the one that is running on the FPGA?