An embedded system is a combination of hardware and software, and perhaps additional mechanical or other parts, designed to perform a specific function. More specifically they are computer system that performs specific, pre-defined tasks. A simple example is a microwave oven. Almost every household has one, and ten of millions of them are used but very few people realize that there is a software and hardware involved in the preparation of lunch or dinner.
Embedded system vs personal computers
Personal computer uses a general purpose processor that performs different tasks assigned to it, while embedded system that is specially designed to perform a specific, repeatable tasks - often with little or no input from the user. Special microprocessors are used in embedded systems to reduce cost for mass production. These microprocessors have simplified architecture, low performance and low cost comparing to general-purpose processors such as the Intel Pentium. An embedded system incorporates only the minimal quantity of memory (RAM and ROM). While the desktop PC may have hundreds of megabytes of RAM and gigabytes of ROM (hard drive or DVD), a low-cost embedded system usually have just a few kilobytes of memory. Embedded systems are built to operate for years without crash, data loss and user involvement. Moving mechanical parts such as a CD drive or a hard drive are replaced with solid-state parts such as flash memory. Another feature of an embedded system is that they are real time systems.
Parts of Embedded System
By definition embedded systems contain a processor and software. The other features that are common are RAM and ROM. Because to have software; there must be a place to store the executable code and memory storage for runtime data manipulation. Fig 1.1 shows a generic embedded system.
All the embedded systems contain some types of inputs and outputs. For example in a microwave oven inputs are the buttons on front panel and a temperature probe and output is the human readable display and the radiations.
Embedded systems are based on the concept of the micro-controller, a single integrated circuit that contains all the technology required to run an application. Micro-controllers make integrated systems possible by combining several features together into what is effectively a complete computer on a chip, including:
• Central Processing Unit: To process the embedded software.
• Input/Output: interfaces such as serial ports
• Peripherals: They provide hardware interface for the internal hardware (such as timer) as will external hardware (for application)
• ROM, EEPROM or Flash memory for program storage
• RAM for data storage
• Clock generator
Examining the Embedded System
Processor: The term processor refers to any three types of devices known as microprocessor, micro-controller, and digital signal processor. The name microprocessor is usually reserved for chip that contain a powerful CPU, not designed for particular application. Personal Computers have such type of chip. The most powerful microprocessor is member of Motorola's 68k found in older Macintosh computers.
A micro-controller is much like a microprocessor, except it is designed speciously to use in embedded system. Micro-controllers typically includes a CPU, memory (a small quantity of RAM, ROM, or, both) and other peripherals in the same integrated circuit. Most popular micro-controller are 8051 and Motorola's 68HCxx series.
The final type of processor is digital signal processor, or DSP.The CPU within the DSP is specially designed to perform discreet time signal processing calculation, like those required for audio and video application very fast. A DSP processor can perform such calculation much faster then other processor.
Memory mapping: All the processor stores program and data in memory. Sometimes this memory is located on the very same chip as the processor. These chips are located in the in the processor , memory space, and the processor communicate with them by bunch of wires called data bus and address bus to read or write, the processor first target the address where something is to be written and the write/read. Fig 1.2 shows a particular memory map, showing name and address rang of each memory device and peripheral that is located in memory space.