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.

C6727B dMAX example code

Guru* 84110 points

The SPRU795D dMAX Ref Guide mentions several examples of transfers and references a spreadsheet for the performance numbers.

How can I get a copy of the example source files used for these? Or any example dMAX code for the C6727B?

  • Randy,

    The spreadsheet for performance numbers is available at: http://focus.ti.com/general/docs/techdocsabstract.tsp?abstractName=spru795d (Look at associated files on this page). For example code, look at the CSL: http://focus.ti.com/docs/toolsw/folders/print/sprc223.html.

    If there is any particular example you are looking for, please let me know.

    Gagan

  • Randy,

    If you're like me and have trouble making sense of the CSL3 examples then the attached code might be useful for you.  I wrote it several years ago using the register level CSL.

    Brad

    dMAX.zip
  • Gagan,

    I have working CSL dMAX code for the c6727B that currently uses a low-priority general-purpose 1-dimensional transfer from SDRAM to SDRAM.  However, it does not run fast enough.  So I want to convert it to a 1DN Burst dMAX operation.  But I can't seem to be able to successfully trigger the 1DN transfer.  I cannot find an example of a 1DN transfer in the CSL release, or anywhere else for that matter.  And clearly, there are bugs in the DMAX Reference Guide for its description of 1DN transfers.  Is there any chance of getting a copy of the code used in the XLS spreadsheet that performs 1DN transfers? 

    Thank you very much.

    Craig Leeds

  • Hello Craig, I had written an example long time back to demonstrate and test the mem1DN transfer. See attaced zip file.
    Please let me know if you have trouble using this example.

    Regards,
    Gagan

    8640.dMAXMem1DN.zip

  • Gagan,

    That example really helped.  My problem was that I wasn't correctly fixing up the PTE field after my call to CSL_dmaxHwSetup().  I had set up the call to it with an 'etype' of ..._1DBURSTXFR.  And I had passed in a CSL_Dmax1dParameterSetup structure for the paramSetup, and the CSL_Dmax1dBurstTransferEventSetup structure for the 'eventSetup' field.  I had been setting the pte field to the paramPtr directly with no alteration.  I have now found that if I set up the pte as follows before the call, then I don't have to fix it up afterwards as your code does:

            copyBurstXfrEventSetup

    .pte = (hDmaxCopy->paramPtr * 4) + 0xa0 - (0xa0 / 4);

    This is using CSL_03_00_09_00.  Previous versions of the library didn't support the 1Dn structures.  I believe that having to subtract 0xa0/4 is a bug in the CSL library, but at least my code accounts for it now.

    Thanks so much for your help.

    Craig