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.

Clarification on DSP programming

Other Parts Discussed in Thread: TMS320DM6446

Hi all!

I'm doing a project on ultrasound sonography, and i'm having these doubts:-

1. When a DSP is booted in microprocessor mode, how exactly does the control gets transferred to the program. 

2. What is the reason for differentiating the memory space in program & data space? Can't we use a single memory as in conventional microprocessors in which a single ram module can store both program and data?

3. I'm not convinced with my understanding of bootloading when a dsp in microcontroller mode, so i need a brief description of this too...

 

Thanks for all of you in advance

Gautam

  • I'm using TMS320DM6446 DaVinci Processor... But aren't my questions generic? is it different for different dsps?

  • Gautam said:

    I'm using TMS320C6446 DaVinci Processor... But aren't my questions generic? is it different for different dsps?

    The questions are very device-specific.  Each processor has different boot modes which are dependent on the peripherals present, the types of memory supported, etc.  Furthermore some devices/peripherals allow code to be executed directly (e.g. NOR flash) while other boot modes require software (e.g. NAND flash) to pull code from memory.  On top of it all, some devices have integrated flash (c2000, MSP430, Stellaris).

    Gautam said:

    1. When a DSP is booted in microprocessor mode, how exactly does the control gets transferred to the program.

    Where do you see reference to "microprocessor mode" for boot?  I've seen this in the past in some of our microcontrollers like c2000.  For those devices you had the option of either booting from flash, or having the device just start executing from external memory (microprocessor mode).  I don't recall ever seeing that term in the context of DM6446.

    The boot modes for DM6446 are documented in the datasheet.  Your options are NAND flash, NOR flash, HPI, or UART0.

    Gautam said:

    2. What is the reason for differentiating the memory space in program & data space? Can't we use a single memory as in conventional microprocessors in which a single ram module can store both program and data?

    Please cite where in the documentation you see this distinction being made.  The external DDR memory is for both code and data so yes you can use the DDR2 for both.

    Gautam said:

    3. I'm not convinced with my understanding of bootloading when a dsp in microcontroller mode, so i need a brief description of this too...

    I don't understand your question in the context of DM6446.  Please be more specific and cite examples from the documentation.

  • Thank you very much Brad.  Actually i went through books (like Avtar Singh's DIGITAL SIGNAL PROCESSING IMPLEMENTATIONS)  on dsp processors (TMS320C54XX) and it mentioned only about microcontroller mode booting so i was curious about how a microprocessor boot would be. Moreover, the book mentioned those class of processors would support only 64k of both program and data memory internally. Hence i needed someone who would convincingly clarify my doubt. This reply made me satified :)

    Brad Griffis said:

    I've seen this in the past in some of our microcontrollers like c2000. For those devices you had the option of either booting from flash, or having the device just start executing from external memory (microprocessor mode).

    And I have one more small request! Can you suggest me any good resources (books or tutorials) on ultrasound & DM6446 that could help me with my project?

    Thanks again for the information Brad Griffis.

    Gautam

  • Gautam said:

    And I have one more small request! Can you suggest me any good resources (books or tutorials) on ultrasound & DM6446 that could help me with my project?

    Sorry, I don't have any specific suggestions for you.  TI has authored some application notes and some white papers related to DSP and ultrasound.  From an algorithm perspective, any algorithms implemented on a 64x+ DSP core will be applicable (i.e. that's the DSP core in DM6446).   Even if you can't find a book specifically on DM6446 and ultrasound, you would probably benefit from anything focusing on 64x+ and ultrasound.

     

  • Thank you Brad Griffis for all the information. It was fun talking to you :)

    Gautam