ARM Cores cover a huge range. The RPi is an ARM11, which is an old applications processor.
ARM7 - Used to be an applications processor, is now an MCU for since applications have gotten bigger. Has no MMU. Short pipeline, low top clock speed.
ARM9 - Bridges the gap between MCU and Applications Processor. FPU is optional. MMU is optional, Slightly longer pipeline, up to 450MHz or so.
ARM11 - Applications processor, FPU and SIMD built-in. Will have MMU, longer yet pipeline, 800MHz plus.
Cortex-M - Microcontrollers. M3 is the original. M4 adds DSP (MAC, etc) functions. M0 is scaled down, lower performance, smaller transistor count, super low power. Can have MPU, but not MMU.
Cortex-R - Realtime series. I haven't actually seen any implementations of this yet, but I hear they're used in (for example) Hard Drive controllers (the controller on the drive itself)
Cortex-A - Applications Processors. External RAM/Flash, high speed (1.5GHz+), FPU, SIMD, MMU. A8 is original. A9 is somewhat more efficient with shorter pipeline and supports SMP. A15 is new up-and-coming high performance version. A7 and A5 are lower performance versions with code compatibility, but lower performance.
i have searched around for low cost arm7 and arm9 boards and cant find any ! u think a headless arm7 or 9 with 16 to 32mb of ram would be really cool! it not quite a pi or a cortex touting beagle but would be awesome for small embedded projects like routers and nas and whatever else floats your boat, i think something like this would be great to connect to a micro and ssh into maybe flip on home appliances or something..
are these so hard to find becuase they suffer from the problems as the arm11 and up, where there basically only made for huge clients manufacuring chipsets for consumer electronics? seems to me if a pi is 35 an arm9 cpu with ram and breakouts should go for 15 tops
The R-Pi is an unusually good deal, hence its popularity. If you want Linux even cheaper, the best I'm aware of is the Olimex Olinuxino-Micro with ARMv5 core, but it is recently released and the software dev on that board is still very much ongoing (USB port works with a few devices, but is not yet fully functional). See also: https://www.olimex.com/dev/imx233-olinuxino-micro.html and http://tech.groups.yahoo.com/group/olinuxino
Cortex-R - Realtime series. I haven't actually seen any implementations of this yet, but I hear they're used in (for example) Hard Drive controllers (the controller on the drive itself).
I think TI has one out (or announced one) for an automotive chip
I just saw a you tube video of linux on a Cortex M3 so I figure it must be possible on this new part. Unfortunately I don't understand Italian so I don't know exactly what the guys said. But it look like that have the command line going.
. i got a 4 dollar programmer and the gnu toolchain working on a variety of breadboarded 8 and 16 avr bit micros in an hour or so i jave yet to get some code for the net running on an msp430.
msp430-gcc, mspdebug, Eclipse and msp430 plugin for eclipse or Code Composer Studio by TI (Eclipse based too).
The MK802, MK802 II and MK805 are interesting Android and *nix devices. All use the Allwinner ARM processor with GPU, and have WiFi, SD, USB, and 512MB or 1GB DDR3 RAM and 1-1.5GHz.
My pi arrived today - just need to find time to try it out.
I have to admit to being really curious about the Allwiner A10. Since it multiplexes JTAG over the SD pins, I can get a MicroSD breakout and hook it up to my BusBlaster, plug it into any of the (ultra cheap) MK80x devices, and have a super cheap, almost infinitely programmable, device.
Do put Raspian on your Pi. Then you can try out SimpleIDE and program your Props in Spin or C on the Pi. See propgcc beta forum for my pre-built SimpleIDE and save 20 odd hours of compilation and other messing around with it.
I've ordered one of the new boards. I already had an STM32F4 Discovery board which also has a Cortex-M4, and have been playing with the floating-point on that using the Rowley tools. A floating-point multiply compiles to the following assembler code:
ARM Cores cover a huge range. The RPi is an ARM11, which is an old applications processor.
ARM7 - Used to be an applications processor, is now an MCU for since applications have gotten bigger. Has no MMU. Short pipeline, low top clock speed.
ARM9 - Bridges the gap between MCU and Applications Processor. FPU is optional. MMU is optional, Slightly longer pipeline, up to 450MHz or so.
ARM11 - Applications processor, FPU and SIMD built-in. Will have MMU, longer yet pipeline, 800MHz plus.
Cortex-M - Microcontrollers. M3 is the original. M4 adds DSP (MAC, etc) functions. M0 is scaled down, lower performance, smaller transistor count, super low power. Can have MPU, but not MMU.
Cortex-R - Realtime series. I haven't actually seen any implementations of this yet, but I hear they're used in (for example) Hard Drive controllers (the controller on the drive itself)
Cortex-A - Applications Processors. External RAM/Flash, high speed (1.5GHz+), FPU, SIMD, MMU. A8 is original. A9 is somewhat more efficient with shorter pipeline and supports SMP. A15 is new up-and-coming high performance version. A7 and A5 are lower performance versions with code compatibility, but lower performance.
Thanks for the summary. So lets see now, is there a difference or are these equivalent:
ARM7 and ARM Cortex M
ARM11 and ARM Cortex A
Are the Cortex just the newer part, with some refinements and more peripherals?
ARM Cores have no peripherals. It's up to the chip implementer to decide what peripherals the chip has.
ARM7 came out in 1994
ARM9 came out in 1997
ARM11 came out in 2002
Cortex-M3 announced 2004
Cortex-A8 announced 2005
Cortex-A9 announced 2007
Cortex-M0 announced 2009
Cortex-A15 announced 2010
Cortex-M4 announced 2010
Cortex introduced Thumb-2 and removed the 32-bit ARM instruction set from the Cortex-M processors.
Do put Raspian on your Pi. Then you can try out SimpleIDE and program your Props in Spin or C on the Pi. See propgcc beta forum for my pre-built SimpleIDE and save 20 odd hours of compilation and other messing around with it.
Thanks for the tip heater. Just ordered a DVI to HDMI adapter and HDMI cable direct from www.buyincoins.com ($3.60) as I have an LCD monitor with DVI.
The Allwinner A10 CPU has been developed in, and is sold in, the People's Republic of China. Its mass-volume price is around $7, yet it is a 400-pin highly feature-rich 1.2ghz ARM Cortex A8 with a MALI400 GPU. It has the distinction of having the highest bang-per-buck ratio of any SoC available at the time of writing, by quite a margin.
.........
For comparison: TI has brought out a new $5 ARM Cortex A8, but it is limited to 500mhz and it is extra cost for the version with a PowerVR 3D GPU. Ingenic's jz4770 is about $7 in mass-volume but it is a 1ghz MIPS with a Vivante GC600 3D GPU. Details are harder to get hold of regarding the jz4770, but its interfaces are known not as feature-rich as the Allwinner (no HDMI output for example). AMLogic's Cortex A9 is $13 in mass-volume, but is limited to 800mhz and a maximum of 512mb of RAM.
Thanks for the summary. So lets see now, is there a difference or are these equivalent:
ARM7 and ARM Cortex M
Not only are they different, but the ARM7 has a von Neumann architecture while the ARM Cortex has separate instruction and data buses (Harvard architecture). Also, the Cortex is so C-friendly that even the start-up code is written in C. The older ARM 7 requires a bit of assembly. The Cortex chips are also more efficient - more MIPS per MHz.
BTW, Prof, you may be interested to know that several great FORTHs have been written for the ARM 7.
The Allwinner A10 is an ARM Cortex A8 and is used on a lot of Chinese android tablets
Interesting device, but unlike the RaspPi, it does not have a stacked die ? -so that pushes up board layers, and makes it 'module only; for moderate volume users.
I guess someone could tack the die, if volumes were enough.
Price model is interesting.
They mention a NRE of $2000, and then an amortize of that to a lowish-volumes BOM of ~$30, and a higher volume BOM of ~$15.
I also like the approach taken by Nuvoton, which targets what they call Education Learning Aid (ELA).
This packs a multiple die into a low cost, low board-layer, LQFP128 MCP.
MHz is lower, but the package is more design friendly.
If you look at Raspberry Pi board you see that there is very little on it. In the middle sits the ARM chip but you don't see it because the RAM chip is welded on top of it. This means that all those connections between ARM and RAM no longer need to travel through an PCB traces. With the reduced number of traces required around the CPU/RAM you can reduce the number of layers required to be able to route all the connections out from the CPU. This is something that helps keep the cost of the Rapi down.
"Next big thing"? Perhaps this is how mobile phones and such are built already.
"Next big thing"? Perhaps this is how mobile phones and such are built already.
No perhaps about it - My Nokia N900 (Cortex A8) is built exactly this way, with stacked RAM and whatnot. SoC and PoP (system-on-a-chip, package-on-package) is how all these ARM systems with a combination of CPU,GPU,RAM etc. are designed. Phones, Beagleboard, OpenPandora, you name it (and also my Nokia N800 from 2007). That's why the FAQ "Can I expand / upgrade the RAM?" is always answered "No, you can't. Well, in theory you could, but you'd need factory facilities so you can't."
Does this say that stacked die reduces the cost to make it a volume part? So stacked die is a key element to look for in the "next big thing"?
I would more carefully say it shifts the cost, and opens more doors.
You do get some gains, like less EMC issues, and higher speeds, as you swing less copper.
It allows simpler and smaller PCBs, and much lower cost production facilities, and also allows process-focus on each die.
In some products, like phones, a smaller PCB is worth a lot.
I received my Stellaris LM4F120 LaunchPad this afternoon. I couldn't get it to work properly with the IAR tools, but it does work OK with the Rowley CrossStudio software.
Gives me the urge to do it with the Propeller, DIP Prop with a DIP SRAM riding on top:)
The problem there is the power pins in the middle of the Propeller. A byte-wide SRAM of useful size (say 64K) needs 24 pins just for addressing and data, which means address or data pins are going to land on Prop power, XTAL, etc. pins.
Comments
ARM7 - Used to be an applications processor, is now an MCU for since applications have gotten bigger. Has no MMU. Short pipeline, low top clock speed.
ARM9 - Bridges the gap between MCU and Applications Processor. FPU is optional. MMU is optional, Slightly longer pipeline, up to 450MHz or so.
ARM11 - Applications processor, FPU and SIMD built-in. Will have MMU, longer yet pipeline, 800MHz plus.
Cortex-M - Microcontrollers. M3 is the original. M4 adds DSP (MAC, etc) functions. M0 is scaled down, lower performance, smaller transistor count, super low power. Can have MPU, but not MMU.
Cortex-R - Realtime series. I haven't actually seen any implementations of this yet, but I hear they're used in (for example) Hard Drive controllers (the controller on the drive itself)
Cortex-A - Applications Processors. External RAM/Flash, high speed (1.5GHz+), FPU, SIMD, MMU. A8 is original. A9 is somewhat more efficient with shorter pipeline and supports SMP. A15 is new up-and-coming high performance version. A7 and A5 are lower performance versions with code compatibility, but lower performance.
are these so hard to find becuase they suffer from the problems as the arm11 and up, where there basically only made for huge clients manufacuring chipsets for consumer electronics? seems to me if a pi is 35 an arm9 cpu with ram and breakouts should go for 15 tops
Olimex Olinuxino-Micro
My pi arrived today - just need to find time to try it out.
Do put Raspian on your Pi. Then you can try out SimpleIDE and program your Props in Spin or C on the Pi. See propgcc beta forum for my pre-built SimpleIDE and save 20 odd hours of compilation and other messing around with it.
Thanks to Holly. And welcome back. I missed all of your deal pointers, but at least I had some time for the for my bank account to recover.
The STM32F4 Discovery board costs about £10. It's more expensive than the TI one, but is probably better value:
http://www.st.com/internet/evalboard/product/252419.jsp
ARM7 and ARM Cortex M
ARM11 and ARM Cortex A
Are the Cortex just the newer part, with some refinements and more peripherals?
ARM7 came out in 1994
ARM9 came out in 1997
ARM11 came out in 2002
Cortex-M3 announced 2004
Cortex-A8 announced 2005
Cortex-A9 announced 2007
Cortex-M0 announced 2009
Cortex-A15 announced 2010
Cortex-M4 announced 2010
Cortex introduced Thumb-2 and removed the 32-bit ARM instruction set from the Cortex-M processors.
from http://rhombus-tech.net/allwinner_a10/
Not only are they different, but the ARM7 has a von Neumann architecture while the ARM Cortex has separate instruction and data buses (Harvard architecture). Also, the Cortex is so C-friendly that even the start-up code is written in C. The older ARM 7 requires a bit of assembly. The Cortex chips are also more efficient - more MIPS per MHz.
BTW, Prof, you may be interested to know that several great FORTHs have been written for the ARM 7.
So it looks like the Cortex A Allwinner A10 might be something to watch in the coming weeks. Interesting, thanks!
Interesting device, but unlike the RaspPi, it does not have a stacked die ? -so that pushes up board layers, and makes it 'module only; for moderate volume users.
I guess someone could tack the die, if volumes were enough.
Price model is interesting.
They mention a NRE of $2000, and then an amortize of that to a lowish-volumes BOM of ~$30, and a higher volume BOM of ~$15.
I also like the approach taken by Nuvoton, which targets what they call Education Learning Aid (ELA).
This packs a multiple die into a low cost, low board-layer, LQFP128 MCP.
MHz is lower, but the package is more design friendly.
Does this say that stacked die reduces the cost to make it a volume part? So stacked die is a key element to look for in the "next big thing"?
If you look at Raspberry Pi board you see that there is very little on it. In the middle sits the ARM chip but you don't see it because the RAM chip is welded on top of it. This means that all those connections between ARM and RAM no longer need to travel through an PCB traces. With the reduced number of traces required around the CPU/RAM you can reduce the number of layers required to be able to route all the connections out from the CPU. This is something that helps keep the cost of the Rapi down.
"Next big thing"? Perhaps this is how mobile phones and such are built already.
-Tor
http://www.xilinx.com/products/technology/stacked-silicon-interconnect/
Gives me the urge to do it with the Propeller, DIP Prop with a DIP SRAM riding on top:)
Sure, but the liquid nitrogen adds costs.
I would more carefully say it shifts the cost, and opens more doors.
You do get some gains, like less EMC issues, and higher speeds, as you swing less copper.
It allows simpler and smaller PCBs, and much lower cost production facilities, and also allows process-focus on each die.
In some products, like phones, a smaller PCB is worth a lot.
The problem there is the power pins in the middle of the Propeller. A byte-wide SRAM of useful size (say 64K) needs 24 pins just for addressing and data, which means address or data pins are going to land on Prop power, XTAL, etc. pins.
TI eStore: Your Order Items have been Shipped.Oct 6
:cool:[/h]
I have two on the way but have no idea what I want to do with them. LOL