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

See Also

Embedded SystemsFPGAElectronics

Discussion Groups | TMS320C54x | DSP memory allocation

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

DSP memory allocation - ajs_edwards_uk - Feb 20 17:17:00 2002

Hi,

I am programming a TMS320 5402 DSK in C with Code Composer Studio for
a university project, and have no previous experience with DSPs. I
am unsure how to go about allocating memory as there are several
routes to take (CMD file, visual linker, DSP/BIOS config). This is
where I have got to so far:

I wish to use the DSP/BIOS configuration tool (it seems odd not to
use the optimised functions etc), which generates a linker command
(CMD) file. On creating the new configuration, the only options I
can select do not cater for the external memory on the board! (How
can I fix this to account for all memory on board?)

I am guessing I should be using the visual linker as this makes
memory allocation "easier"... I included in the project the CMD file
created by the DSP/BIOS configuration tool, and compile with the
visual linker selected. I then click the error about no recipe, and
the wizard picks up the CMD file (created by DSP/BIOS configuration
tool) for memory maps etc. After accepting, I get a whole load of
errors where things cannot be placed into memory because only the
internal memory has been configured by the DSP/BIOS config tool.

I was hoping that someone may be able to point me in the right
direction when it comes to memory allocation, and any recommended
procedures I should take to help me along. Any helpful web pages /
documentation on the matter will be useful.

To me, it seems that there is a lot of complicated looking stuff the
visual linker considering my program is only about 20 lines long!
(Although I have used quite a few various libraries to perform an FFT
on data acquired through the codec, and intend to return data back
via RTDX.)

Thanks for any advice / personal recommendations you can give!

Andrew Edwards




______________________________
New Code Sharing Section now Live on DSPRelated.com. Learn about the Reward Program for Contributors here.



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

RE: DSP memory allocation - Author Unknown - Feb 20 18:24:00 2002

I also found using the DSP Visual Linker overly complicated. I instead
just made a modification...

#1) Use the DSP/Bios tools to configure your memory regions.
#2) create a file named "myprojhere.cmd" and add it to your project.
#3) first line of myprojhere.cmd should be "-l myprojcfg.cmd" which
includes
the linker command file that DSP Bios creates.
example

-l mercurycfg.cmd

SECTIONS {
IPROG > IPROG PAGE 0
.bss > IPROG PAGE 0
.cinit > IPROG PAGE 0
.switch > IPROG PAGE 0
.pinit > IPROG PAGE 0
.ftext > EPROG2
.text: { *(.text) } >> EPROG1 | EPROG2 | EPROG0 | IPROG PAGE 0
.const: { *(.const) } >> EPROG0 | EPROG1 PAGE 0
} Hope this helps. Carl Chipman
Nomadics, Inc.

http://www.nomadics.com > -----Original Message-----
> From: ajs_edwards_uk [mailto:]
> Sent: Wednesday, February 20, 2002 11:17 AM
> To:
> Subject: [c54x] DSP memory allocation
>
> Hi,
>
> I am programming a TMS320 5402 DSK in C with Code Composer Studio for
> a university project, and have no previous experience with DSPs. I
> am unsure how to go about allocating memory as there are several
> routes to take (CMD file, visual linker, DSP/BIOS config). This is
> where I have got to so far:
>
> I wish to use the DSP/BIOS configuration tool (it seems odd not to
> use the optimised functions etc), which generates a linker command
> (CMD) file. On creating the new configuration, the only options I
> can select do not cater for the external memory on the board! (How
> can I fix this to account for all memory on board?)
>
> I am guessing I should be using the visual linker as this makes
> memory allocation "easier"... I included in the project the CMD file
> created by the DSP/BIOS configuration tool, and compile with the
> visual linker selected. I then click the error about no recipe, and
> the wizard picks up the CMD file (created by DSP/BIOS configuration
> tool) for memory maps etc. After accepting, I get a whole load of
> errors where things cannot be placed into memory because only the
> internal memory has been configured by the DSP/BIOS config tool.
>
> I was hoping that someone may be able to point me in the right
> direction when it comes to memory allocation, and any recommended
> procedures I should take to help me along. Any helpful web pages /
> documentation on the matter will be useful.
>
> To me, it seems that there is a lot of complicated looking stuff the
> visual linker considering my program is only about 20 lines long!
> (Although I have used quite a few various libraries to perform an FFT
> on data acquired through the codec, and intend to return data back
> via RTDX.)
>
> Thanks for any advice / personal recommendations you can give!
>
> Andrew Edwards >
>
> _____________________________________ >
>
> ---
> Incoming mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.325 / Virus Database: 182 - Release Date: 2/19/2002 ---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.325 / Virus Database: 182 - Release Date: 2/19/2002



______________________________
Start your Android Ice Cream Sandwich development on TI's AM35x Sitara ARM Cortex-A8 processor today.



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