Abstract: ARM is the computer processor architecture which support 32-bit memory address, and it is developed ARM Limited. The main feature of this computer processor is that it uses the low power electricity up to 12-5 volt to run. That's why this microprocessor is uses in portable devices which required low power electricity like cell phones, digital cameras, robots and many more. ARM also known as Advance RISC Machine. ARM architecture is proprietary and most of the world's big companies usese this microprocessor in their product including Alcatel, Intel, LG, Broadcom, NVIDIA, Yamaha, Samsung and many more. ARM limited designs different purposes ARM processor, according to their functionality which include multimedia features, high performance and reliability. The families include the ARM7, ARM9, ARM11 and Cortex.
The purpose of this Research is to study the ARM architecture and uses of it on real-time Applications using ARM Cortex-A8 microprocessor, which is one of the microprocessor from ARM family. Beagle board is used for experimental setup and testing real-time application on ARM microprocessor. The Beagle Board is a low-power, low-cost Single-board computer developed by worldwide community. It is amazingly 3x3 inch width and height. As a open-source application the Beagle Board is the open-embedded hardware architecture which is available for develop and further enhancement.
Keywords: Begal Board, Microprocessor, embedded systems , OMAP3, ARM, Cortex-A8
The Embedded systems is the special kind of computer system designed for performing specific tasks, normally with rel-time application. To perform the specific task in embedded systems there is special kind of microprocessor is used namely ARM (Advance RISC Machines). The ARM microprocessor is low cost, high performance in low power consumption, which make this ARM architecture gient of electronics market.
ARM - Advanced RISC Machine
ARM is the 32bit microprocessor designed on RISC architecture. ARM promises the high performance with low cost and low power consumption.
Some of the Applications of ARM processors are as follow:
- For wireless consumer and Digital devices
- Using in mass storage systems like NAS, SAN
- Applications like smart cards and SIM.
ARM has a vast experience on developing embedded systems which delivers technology that achieves unsurpassed Power, Performance and Area. ARM continuously working the specific architectures which is used by latest version of Symbian OS, Microsoft Windows CE and Linux to support the best compatibility and for development purpose.
Reduced Instruction Set Computer Architecture signify the CPU design and it work on the philosophy of "do less, give high performance". It uses the small and highly optimized set of instructions as compare to other 32-bit PC processors..
In late 70s the IBM was the first who initiate this project in Stanford, and UC-Berkeley. IBM at Stanford develop the RISC 1 and 2 were all designed with a similar philosophy which is called RISC. Following is the features of the ARM RISC architecture.
- One cycle execution time
- Large number of registers
The ARM architecture used 32-bit Instruction Set Architecture (ISA). In the early development of ARM microprocessor, this was develop desktop PC by Acom. At the same time IBM capture this PC tag by introducing their x86 family. The structure of ARM processors made them suitable for low power applications. That's why it is highly demanded in mobile and embedded electronics market for its low cost and small microprocessors and microcontrollers.
World's 90% of all embedded system uses the ARM 32-bit RISC processors. It is highly demanding in consumer electronics which including cell phones, digital camera, mp3 players, PDA, embedded systems and network routers are one of its application.
An embedded system is designed to perform dedicated and specific type of work, with real-time application. It is using in the systems as a as part controlling unit which controlling and managing the system. 
As embedded system is used for specific tasks, the engineers can trying to optimize its size, cost and power consumption but not to compromised the realibility and performance. That's why it is widely use in the mobile devices.
The Beagle Board is a low-power, low-cost Single-board computer. It is develop by the community from all over the world.
The purpose of Beagle Board is to develop a Open source hardware for embedded system. designed with open source development in mind. It has OMAP3530 ARM chip. The board was developed by a small team of TI engineers.
Beagle Board uses only 5V power to run, so it could be run from USB power from the computer. But within this low power it gives the tremendous performance like laptop. It is fan less and low-cost device which can be expendable using its expansion slot.
OMAP3530 processor highlights:
Following is the features of OMAP processor which is came with Beagle Board
- More then 1,200 MIPS using the Cortex-A8 using the processor at up to 600MHz
- OpenGL ES 2.0 support which enable it to calculate 10 million polygons per second
- HD video output capability using processing at up to 430MHz form saperate graphic chip.
Following is the Expansion capability and power options which provided by beagle board:
- DVI-D for connecting digital computer monitors
- SD/MMC slot for memory
- S-Video out for NTSC or PAL
- Audio in and out pin
- Power by USB chargers for cell phones
The Cortex-A8 processor is the first applications processor using ARMv7 architecture. It gives the high performance, power efficiency available from ARM. It is came with speed from 600MHz up to 1GHz. Cortex-A8 processor is optimized for power consumption which is make it suitable for mobile devices. It required less then 300mW
The ARM CortexA8 processor is based on dual symmetric.
In-order, dual-issue, superscalar microprocessor core
- 13-stage main integer pipeline
- 10-stage NEON media pipeline
- L2 cache available
Linux for embedded and real-time applications
In our daily life the embedded system play a vital role. In which real time application is used in the form of Operating system or any package. Linux is one of the biggest supporter of embedded system because of its open source capability.
Linux is the Open source Operating system kernel which is widely used in different distribution. Distribution may referred as a different flavors. As it is open source the different communities are established to developed their own linux operating systems. Like Red hat, Fedora, Ubuntu, SUSE, Debian and Mandrake. The flexibility of linux make it possible to run on embedded systems. Just it required the gcc and g++ compiler for the embedded system. The source code of linux kernel is modifiable, redistributable for commercial and non-commercial purposes under the GNU GPL License .
What is Real-time
In Computer Systems real-time refer as the immigrate response from the system. Its mean when the computer process receive the data from any source and at the same time gives its results after processing the input data. For example, identify the speed limit of the car in the highway, network router forwarded the data in the same time and email sanded by one person is received by second person at same time. 
Non-real-time computing has the same step like input, process and output. But in non-real-time the result is not come at the same time, it means the computer system gets the data as an input and its up to the system when it process and give its output. Its mean non-real-time is not dependent on time. This is due to the processing power of the computer if computer is capable to deliver the output at the same time and its processing power is high then it could be deliver output in real-time. Otherwise it goes to batch processing and give the result at the finite time.
Development Enviroment and Tools
Real View Development Suite 4.0 Professional is the official product from ARM limited. It support all types of ARM microprocessor enabled embedded systems for development purpose. There is also development environment named eclips which is came with Development Suite. This environment support c++ and c compiler for ARM microprocessors. To real-time communicate with device the serial port is used with development suite. Or Hyper Terminal like application is used through serial port.
It is little bit difficult to install OS linux on Beagle board at first time. If there is no guideline then person will be lost. Once it is familiar with any embedded system then it can easily working on it. In this chapter there is define that how to install linux distribution on the Beagle board.
Setup the Installation Environment
Before installation of Linux on beagle board there is some accessories which is required for installation.
- HDMI to DVI connector : this will used for display on LCD
- OTG USB to Female USB-A connector for connecting Keyboard, and mouse.
- USB to Serial Cable: this cable is connecting to USB-A connector and in the other end if this cable two connector is available for keyboard and mouse.
Installing Linux sakoman r9 GNOME distribution
To installing the Linux sakoman r9 GNOME there is requirement of development machine which have linux install. In current installation Ubuntu 9.10 is used for development machine OS. The installation of OS on Beagle board is not like just put cd on cdrom and install on it. As a primary storage Beagle board uses the SD/MMC card.
There is two ways to connect SD/MMC cart to development machine. Firs is to sue builtin card slot which is came with Latest Laptops and PC. If it is not available the USB Flash card reader device is used for connect SD/MMC card to development system. For current scenario 8 GB SD card is used for installation purpose. When the card is pluged in into the development machine it is shown as /dev/sde.
Partitioning the card
In linux there is an console based utility, named fdisk. This utility help to create the partition on SD card. First partition is fat partition which is used for booting purpose and second partition is ext Following command is used for initialize the partition process.
After running above command there is "Command : prompted is visible as show below. There is some setting before partition and formation the SD Card for that purpose go to Expert mode use the "x" command like
Setting the heads, sectors and number of cylanders following command is used.
The first issue which is come between installation is that keyboard and mouse is not connecting. This will resolved by short the 4th and 5th cable of USB-OTG.
The second issue which is come that the OTG to USB-A cable is not easily available in market. So after purchasing the two cables OTG to USB male and USB male to USB female. The new cable is wired.
There is only one usb connector is available in board so if there is requirement of more devices to connect then it must be required USB hub with at least 4 port.
- Advance RISC Machine - http://www.arm.com/products/CPUs/
- Symbian - http://www.symbian.org
- Standfort University - http://cse.stanford.edu
- Embedded Systems Design Second Edition by Steve Heath, Page 1, EDN,2008
- Beagle Board - http://www.beagleboard.org
- Beagle Board Product Detail - http://beagleboard.org/hardware
- ARM product Details - http://www.arm.com/products/CPUs/ARM_Cortex-A8.html
- Linux - http://www.linux.org/
- "Linux for Embedded and REal-time Applications" by Dog Abbott, page 2, Newnes , 2009
- RealView Development Suite 4.0 - http://www.arm.com/products/DevTools/
- SAKOMAN - http://www.sakoman.com/
- Preparing a bootable SD card - http://www.sakoman.com/OMAP3/