From: Vladimir Vassilevsky on

I am faced with necessity to do low level programming on ARM9 system.
That is, set up all operating modes with associated stacks and banked
registers, interrupts, caches and MMU.

Could you advise a resource or book about ARM instruction set, low level
programming and examples of good practices.

Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com
From: Tim Wescott on
On 06/16/2010 09:31 AM, Vladimir Vassilevsky wrote:
>
> I am faced with necessity to do low level programming on ARM9 system.
> That is, set up all operating modes with associated stacks and banked
> registers, interrupts, caches and MMU.
>
> Could you advise a resource or book about ARM instruction set, low level
> programming and examples of good practices.

In my spare time last month I was playing with building my own set of
tools for embedded ARM development. Aside from learning that its harder
than I thought, I've found that the newlib startup code is quite readable.

So, if nothing else, find the lastest newlib code (if you can't find it
Googling post here and I'll dig up a reference) and look at their
startup assembly -- they do the whole setup ball of wax. It's not in
tutorial form -- it's in the usual open-source "comments are for idiots"
form -- but it's an example that works for the non-thumb ARM processors
and is reputed to work for the Thumb ones, too, in its latest version
(if I ever get time to try building it again!).

--
Tim Wescott
Control system and signal processing consulting
www.wescottdesign.com
From: Chris Burrows on
"Vladimir Vassilevsky" <nospam(a)nowhere.com> wrote in message
news:RIydnVIu7fjRYYXRnZ2dnUVZ_qednZ2d(a)giganews.com...
>
> Could you advise a resource or book about ARM instruction set, low level
> programming and examples of good practices.
>

The ARM System Developer's Guide: Designing and Optimising System Software
by Andrew Sloss, Dominic Symes and Chris Wright. ISBN 978-1558608740

Regards,
Chris Burrows
CFB Software

Astrobe: ARM Oberon-07 Development System
http://www.astrobe.com


From: Ulf Samuelsson on
Vladimir Vassilevsky skrev 2010-06-16 18:31:
>
> I am faced with necessity to do low level programming on ARM9 system.
> That is, set up all operating modes with associated stacks and banked
> registers, interrupts, caches and MMU.
>
> Could you advise a resource or book about ARM instruction set, low level
> programming and examples of good practices.
>
> Vladimir Vassilevsky
> DSP and Mixed Signal Design Consultant
> http://www.abvolt.com

I think there should be an application note on Atmels homepage
on setting up the MMU.
Interrupts are chip specific.

--
Best Regards
Ulf Samuelsson
These are my own personal opinions, which may
or may not be shared by my employer Atmel Nordic AB
From: Vladimir Vassilevsky on


Chris Burrows wrote:

> "Vladimir Vassilevsky" <nospam(a)nowhere.com> wrote in message
> news:RIydnVIu7fjRYYXRnZ2dnUVZ_qednZ2d(a)giganews.com...
>
>>Could you advise a resource or book about ARM instruction set, low level
>>programming and examples of good practices.
>>
>
>
> The ARM System Developer's Guide: Designing and Optimising System Software
> by Andrew Sloss, Dominic Symes and Chris Wright. ISBN 978-1558608740
>
> Regards,
> Chris Burrows
> CFB Software

I got the ARM9 working. It took about a month of hard work to get the
board up from ground zero.

Cris:

Awesome book. Thank you for very good advice.
As usual, book arrived when almost everything was up and running :-)

Ulf:

Indeed, Atmel web site has good appnotes on ARM7T, and many of those
appnotes are relevant to ARM9.

Tim:

I haven't tried newlib. You are right that the opensource sucks. This is
especially true in the case of ARM: those ubls and uboots don't have a
clue about what they doing.

Tauno:

Thank you for the startup source. I found the answers for several
questions there.



Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com





 |  Next  |  Last
Pages: 1 2
Prev: usb detection
Next: Display protection/longevity