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.

OMAP L-138 - I need getting started help (veryfication of gathered info)

Other Parts Discussed in Thread: OMAP-L138

I read same workshops, GSG and few datasheets and i still do not now a lot of basic information about cooperation ARM and DSP processors. 

What i concluded to this point is: There are 2 processors ARM + DSP + some devices added by Logic (Memories - specially Shared). I now also that the ARM is master and it can wake DSP.

I already accomplished emuleting some examples in CCS - but this is not how really this system should work, is it? This is just verifying the program using real target not simulation.

My first question is: How to load a program from my working example form CCSv4 to DSP to work autonomously? What tools should I use ( I recon same Flash writers), where shoud I write program ( physical memory) , how to convert my C program to code for DSP? What I should do about ARM to let DSP work? 

I know it's a lot of question but I would apprieciate your help in any kind ( examples, any guides you know, or your experience.

  • Pawel,

    This question seems to be generic to the OMAP-L138 rather than specific to BIOS.  I am going to move this to the OMAP-L1xx forum in hopes that it will get a faster response there.

    Dave

  • Ok, thank you - I don't know why i did that. :) 

  • Pawel Pyszko said:
    Already accomplished emuleting some examples in CCS - but this is not how really this system should work, is it? This is just verifying the program using real target not simulation.

    Emulation is different from Simulation.

    Simulation will use a host PC to simulate the best case scenario of what would happen on the target processor. Emulation is a different technology which communicates with the target device via JTAG. In emulation, you are actually running the code on the target processors, however you can control the code via a host PC.

    Typically emulation is used during the code writting / debugging phase of a project. Once the project has been validated, one will put the validated image into another forum (for example SPI Flash), and configure the Boot Modes of the device to boot from the Flash.

     

    Pawel Pyszko said:
    My first question is: How to load a program from my working example form CCSv4 to DSP to work autonomously?

    Please refer to the OMAP-L138 Bootload Application Report for booting from external memories.

    TI has developed an Application Image Script GUI which can be used to convert you object code into an image that can stored in an external memory. The program is called AISgen.

     

    Pawel Pyszko said:
      What tools should I use ( I recon same Flash writers), where shoud I write program ( physical memory) , how to convert my C program to code for DSP? What I should do about ARM to let DSP work?

    CCS has integrated code generation tools (compiler, assembler, linker) which allows you to convert your C code into and object code. If you don't use a CPU core, such as the ARM, you can power it down.

  • Drew Abuan said:
    If you don't use a CPU core, such as the ARM, you can power it down.

    Clarification: The ARM can boot the DSP, and then the DSP can initialize the peripherals and then power down the ARM.

  • thanks for help guys. I will stay in touch because have to program OMAP-L138 in order to get my degree. My job is to make a laboratory station to examine influence of relays to control object. There is a front panel of  this station. I'm gonna need your help because the last microcontrolers i've worked with were PIC18F452, ATmega16, P89C51RC2 and to change it with OMAP-L138 is a big step.

     

    PS sorry for my english.

  • Pawel Pyszko said:
    I will stay in touch because have to program OMAP-L138 in order to get my degree.

     

       You should start with the examples available in the quickStartOMAPL1x_rCSL package for help.

  • I already managed to run some examples but under your link i found same more with  explanations - so thanks Drew. 

    About my job though, do you think I can do this without ARM processor? Without specifics - user shoud be able to change algo processing real-time signals by interface I put in my erlier post. Is it possible to manage interrupts from status change of buttons on front panel or by pooling this parameters just by DSP? If not ( or even if yes) then how could I do this using ARM? ( Almost all materials I found to program OMAP L138 regard DSP. About ARM i found information how to run Linux, but I think in my case this is not best solution, do you?)

  • You could probably use either to accomplish this task.

    The DSP side of the part is excellent for real time processing. You can using this with TI's Real Time Operating System (DSP/BIOS) to implement your real time constraints.

    If you find that the DSP isn't sufficient enough, you could then use the ARM to offload a lot of the remedial tasks to free up more cycles in the DSP. I would recommend to start with only using the ARM or the DSP, but not both unless you find you need to. This simplifies the complexity of the programming by a significant amount.

    Also - note, you don't need to use Linux to run the ARM. In fact all of the examples in the quickstartOMAPL1x_rCSL projects were designed specifically to show how to program the device without an operating system such as Linux, or a Real Time Operating System such as DSP/BIOS. The project contains examples of who to use either to accomplish the same tasks.

    Good luck with your project.

     

     

  • Thanks for wishing me good luck - with my (probobly not even) basic knowledge about DSP and ARM processors. I do not have right now OMAP-L138 ( I give it to my friend I work with on this project) and I can't solve my doubt's  so I must ask: Examples you gave me - I will be able to run ARM side examples? How?

    And one more thing: I have just eXperimenter KIt - DSP side examples will work fine with my set?