This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

accessing SDRAM via HPI

We have a target h/w with a C6747 and a host.  The C6747 has SDRAM connected via EMIFB - it's exactly like the C6747EVM.  The HPI works fine to read write memory in the C6747 L2 and L3 memory space.  But reads from SDRAM (e.g. 0xc0000000 - 0xc4000000) always return 0x0000 0000.  Is there some bit or setting we need to enable to the HPI can access this memory space?  Why can't we read anything from this area?

  • Based on the system interconnect matrix in Table 3-1 of the System Reference Guide (http://focus.ti.com/lit/ug/sprufk4d/sprufk4d.pdf), HPI should be able to talk to EMIB.

    It sounds like the EMIFB is not initialized yet.  Can you the CCS memory window to read/write from the 0xc000 0000 location?  Do you still see all 0s?

    --Christina

     

  • Mike,

    I'm not sure if this is contributing to your problem, but the HPI interface does not have Privileged mode access to some of the SYSCFG registers.  This would prevent writes to registers like KICK, PINMUX, CFGCHIP, etc.

    -Tommy

  • I found the problem.  As Christina mentioned, the EMIFB had not been configured.  Actually it was a little more than that.  I needed to use the PSC registers to power it on and then I had to configure the EMIFB MM registers.  I have the C6747 GEL script loaded into CCS on start-up so whenever I loaded the code via JTAG and ran it, it would work.  But I had to explicitly do this in the application code so when the DSP was booted the SDRAM would be accessible.

     

    thanks,

    Mike