Forums

AT91SAM7S64 code/data size help

Started by Unknown February 23, 2008
I'm a novice at embedded development, and am hitting data block size
limitations.  I'm now maximally optimized for code size in my compiler
setting.

I'm using the IAR EWARM tool.

How do I determine my memory usage so I can make changes to my code
and directly see the results in terms of memory footprint?

I need to know both how much room my code is occupying, and the
similarly, the data.

Any suggestions on reading to educate myself quickly would be much
appreciated.

Just knowing how to determine the memory usage quickly will allow me
to use trial and error more efficiently.

Meanwhile, I'm digging through the IAR documentation (always my last
resort).

I am not using Thumb instructions.  Should I take the time learn about
this ASAP?

Please forgive my ignorance.

Thanks so much!
Vic
On Feb 23, 2:30=A0pm, to.vic....@gmail.com wrote:
> I'm a novice at embedded development, and am hitting data block size > limitations. =A0I'm now maximally optimized for code size in my compiler > setting. > > I'm using the IAR EWARM tool. > > How do I determine my memory usage so I can make changes to my code > and directly see the results in terms of memory footprint? > > I need to know both how much room my code is occupying, and the > similarly, the data. > > Any suggestions on reading to educate myself quickly would be much > appreciated. > > Just knowing how to determine the memory usage quickly will allow me > to use trial and error more efficiently. > > Meanwhile, I'm digging through the IAR documentation (always my last > resort). > > I am not using Thumb instructions. =A0Should I take the time learn about > this ASAP? > > Please forgive my ignorance. > > Thanks so much! > Vic
Just a quick note that I found this article immediately pertinent and helpful: http://www.ddj.com/192300809;jsessionid=3DTNNZPVQQ232AIQSNDLPCKH0CJUNN2JVN?_= requestid=3D144912
On Sat, 23 Feb 2008 14:30:38 -0800, to.vic.man wrote:

> I'm a novice at embedded development, and am hitting data block size > limitations. I'm now maximally optimized for code size in my compiler > setting. > > I'm using the IAR EWARM tool. > > How do I determine my memory usage so I can make changes to my code and > directly see the results in terms of memory footprint? > > I need to know both how much room my code is occupying, and the > similarly, the data. > > Any suggestions on reading to educate myself quickly would be much > appreciated. > > Just knowing how to determine the memory usage quickly will allow me to > use trial and error more efficiently. > > Meanwhile, I'm digging through the IAR documentation (always my last > resort). > > I am not using Thumb instructions. Should I take the time learn about > this ASAP? > > Please forgive my ignorance. > > Thanks so much! > Vic
Your linker and/or your locater (if the locater is separate from your linker) will generate a map file telling you where everything was put and how big it is. Every tool has it's own format for a map file, but all the ones I've used have been useful for just this task. Unless you're writing in assembly, I would expect that using thumb instructions would be as easy as setting a switch on your compiler -- have you tried? -- Tim Wescott Control systems and communications consulting http://www.wescottdesign.com Need to learn how to apply control theory in your embedded system? "Applied Control Theory for Embedded Systems" by Tim Wescott Elsevier/Newnes, http://www.wescottdesign.com/actfes/actfes.html
On Feb 23, 4:26=A0pm, Tim Wescott <t...@seemywebsite.com> wrote:
> On Sat, 23 Feb 2008 14:30:38 -0800, to.vic.man wrote: > > I'm a novice at embedded development, and am hitting data block size > > limitations. =A0I'm now maximally optimized for code size in my compiler=
> > setting. > > > I'm using the IAR EWARM tool. > > > How do I determine my memory usage so I can make changes to my code and > > directly see the results in terms of memory footprint? > > > I need to know both how much room my code is occupying, and the > > similarly, the data. > > > Any suggestions on reading to educate myself quickly would be much > > appreciated. > > > Just knowing how to determine the memory usage quickly will allow me to > > use trial and error more efficiently. > > > Meanwhile, I'm digging through the IAR documentation (always my last > > resort). > > > I am not using Thumb instructions. =A0Should I take the time learn about=
> > this ASAP? > > > Please forgive my ignorance. > > > Thanks so much! > > Vic > > Your linker and/or your locater (if the locater is separate from your > linker) will generate a map file telling you where everything was put and > how big it is. =A0Every tool has it's own format for a map file, but all > the ones I've used have been useful for just this task. > > Unless you're writing in assembly, I would expect that using thumb > instructions would be as easy as setting a switch on your compiler -- > have you tried? > > -- > Tim Wescott > Control systems and communications consultinghttp://www.wescottdesign.com > > Need to learn how to apply control theory in your embedded system? > "Applied Control Theory for Embedded Systems" by Tim Wescott > Elsevier/Newnes,http://www.wescottdesign.com/actfes/actfes.html- Hide quot=
ed text -
> > - Show quoted text -
Hi Tim, No I haven't tried, but I've been reading up on interworking etc. Yes, it does appear to be that convenient. I'm studying the map file now, learning how to understand it. Thanks, and kind regards, Vic