Sign in

username:

password:



Not a member?

Search c54x



Search tips

Subscribe to c54x



c54x by Keywords

5409 | 5416 | AD5 | ADC | BIOS | Boot | Booting | Bootloader | C540 | C5402 | C5409 | C5416 | CCS | Codec | DMA | Dmad | DSK | DSKPlus | Dsplib | EVM | FFT | FIR | Flash | GPIO | HPI | Initialization | Interrupt | JTAG | LOG_printf | MCBSP | RFFT | RTDX | Sampling | STLM | UART | VC540

Discussion Groups

Discussion Groups | TMS320C54x | External Memory mapping in C54X

Technical discussions about the TI C54x DSPs (including the c5401, c5402, c5402a, c5404, c5407, c5409, c5409a, c5410, c5410a, c5416, c5420, c5421, c5441, c549, c5470 and c5471).

  

Post a new Thread

External Memory mapping in C54X - Mehdi Abolfathi - Dec 11 8:07:18 2007



Dear friend,
  Hi,
   
  I saw your yahoo ID in the C54x group and now ask some questions about my recent project.
Please help me develop this project and solve my problems in some points.
   
  I am working with this model of DSP:  TMS320C54CST
   I want to build some Telephony applications on it.
   
  I want to build some large codes in the Code Composer 2.2 Env. and I wrote a primary random
command file for it and it worked randomly either!!!! and I could load the .OUT file and run
the program partly!!!!
   
  I don't know how to write .CMD file for large codes that need external memories allocation
for the program body. 
   
  There is less references for External Memory usage in the TI pdf's( for example C54x Assembly
Language Tools file)
   
  I have seen so many documents written about C54X dsp's but all of them were written on their
own model like C5402 or C5406, etc.
   
  My primary trials lead to build a .MAP file as the following(only summary):
   
  Sec        P     ORG          LEN(Size of Section)
  .cinit       0      000014ff     00007f15
  .vectors   0      0000ff80     00000064
  .text        0      00011500   0000e9ad
  .cio         0      00030080   00000120
  .stack     0      000301a0   00000400     
  .sysmem  0    000305a0    00000400
  .const     0     000309a0    000034eb
  .bss       0     00033e8c    0000b754
  .data      1     00000000    00000000
   
  In the above table you see the size of sections that is main problem of allocation and should
be solved.
   
  Please help me how to work with Extended addressing like 0x20000 and what is difference
between extended addressing and external addressing.
   
  I have read the .GEL file for C54CST series and some following lines made confused me more
and another questions appeared:
   
    GEL_MapOn();                        /* enable memory mapping */
  GEL_MapReset();                     /* reset memory map */
    GEL_XMDef(0, 0x1E, 1, 0x8000, 0x7F);/* define extended mem. mapper register */
  GEL_XMOn();                         /* enable extended mem. mapping */
    GEL_MapAdd(0x06000,0,0xA000 ,1,1);
  GEL_MapAdd(0x18000,0,0x8000 ,1,1);
  
  /* Data and I/O memory spaces */
    GEL_MapAdd(0x0000, 0,0x10000,1,1);  /* Data mem overlayed to program space */
  GEL_MapAdd(0x0000, 1,0x10000,1,1);  /* Data memory space */
  GEL_MapAdd(0x0000, 2,0x10000,1,1);  /* I/O space */
   
  Please help me as much as you can.
  I'm waiting for your answer

  Best Regards
  Mehdi Abolfathi
  m...@yahoo.com



(You need to be a member of c54x -- send a blank email to c54x-subscribe@yahoogroups.com )