Forums

gcc for AT91SAM7S64?

Started by Andy September 21, 2005
Hello,

Is any one using gcc on this part?
I have used gcc with a 7520 Netsilicon ARM7, but I wasn't sure if that means 
it will work with any ARM7.
I assume this should be the same instruction set, but has different mix of 
peripherals and things are at
different addresses.  Am I on the right track with that assumption?
Any comments regarding problems or successes would be appreciated.

Andy 


"Andy" <ydna1000@yahoo.com> wrote in message
news:HYydnabrpLuOMqzeRVn-1g@giganews.com...
> Hello, > > Is any one using gcc on this part?
I have used GCC with an AT91SAM7X256 - which is basically the same - albeit with a commercial IDE front end. See here http://www.freertos.org/portsam7xlwIP.html (direct link so you won't get the menu frame). I didn't experience any problems at all.
> I have used gcc with a 7520 Netsilicon ARM7, but I wasn't sure if that
means
> it will work with any ARM7.
ARM7 core is always the same. As you say, what does differ are the peripherals. In particular the interrupt controller. For example the SAM7 AIC is different from the Philips LPC200 VIC. The principals are the same, but the usage differs.
> Any comments regarding problems or successes would be appreciated.
If you are a Windoze user then check out http://www.gnuarm.org. Regards. Richard. http://www.FreeRTOS.org
work with any ARM7.
> > ARM7 core is always the same. As you say, what does differ are the > peripherals. In particular the interrupt controller. For example the
SAM7
> AIC is different from the Philips LPC200 VIC. The principals are the
same,
> but the usage differs.
How is GCC for arm7 these days. I forgot what version I had but when the ARM7 came out and I used it to program for gameboy advance, its code was shit. It has huge problems with nesting statements. I would have a program crash and cut paste functions into different orders and recompile and it would work, crazy things like that. I think this was back in 2000.
> How is GCC for arm7 these days. I forgot what version I had but when the > ARM7 came out and I used it to program for gameboy advance, its code was > shit. It has huge problems with nesting statements. I would have a program > crash and cut paste functions into different orders and recompile and it > would work, crazy things like that. I think this was back in 2000.
I know there were a lot of problems in the early versions. In particular with code gen for interrupt routines. I am told there are still bugs in the current version, but I have used some of its more quirky features and never come across any. The exception being in some of the optimisation - which can be very aggressive and not do what you want - but I have found this in GCC targeted at other architectures also so is not specific to ARM7. The 'quality' of the code is not an absolute and depends on your requirements. If you want code gen that is understandable and does the 'right thing', then I would say my experience is that the code quality now is good. If you want code gen that is the most efficient possible for size or speed, then the quality falls short of commercial compilers, especially with its register usage. Regards, Richard. http://www.FreeRTOS.org
DarkD wrote:
> work with any ARM7. > >>ARM7 core is always the same. As you say, what does differ are the >>peripherals. In particular the interrupt controller. For example the > > SAM7 > >>AIC is different from the Philips LPC200 VIC. The principals are the > > same, > >>but the usage differs. > > > How is GCC for arm7 these days. I forgot what version I had but when the > ARM7 came out and I used it to program for gameboy advance, its code was > shit. It has huge problems with nesting statements. I would have a program > crash and cut paste functions into different orders and recompile and it > would work, crazy things like that. I think this was back in 2000.
There is a marked step in GCC code generation for ARMs at GCC version 3.0 - the whole code generation was rewritten and the ARM and Thumb compilers integrated together. The old (2.95) ARM GCC is not to be recommended. I'm using version 3.2.1, and I'm happy with it (and a couple of hundreds of kilobytes of generated embedded ARM code for ARM7TDMI, Atmel AT91). -- Tauno Voipio tauno voipio (at) iki fi
"Andy" <ydna1000@yahoo.com> wrote in message
news:HYydnabrpLuOMqzeRVn-1g@giganews.com...
> Hello, > > Is any one using gcc on this part? > I have used gcc with a 7520 Netsilicon ARM7, but I wasn't sure if that
means
> it will work with any ARM7. > I assume this should be the same instruction set, but has different mix of > peripherals and things are at > different addresses. Am I on the right track with that assumption? > Any comments regarding problems or successes would be appreciated. > > Andy
IIRC netsilicon is big-endian where as most ARM stuff is little-endian. The compiler will need to know. Peter