Chapter 1
Chapter 1
Chapter 1
Definition:
An Embedded system is a combination of computer hardware and software. As
with any electronic system, this system requires a hardware platform and that is
built with a microprocessor or microcontroller. The Embedded system hardware
includes elements like user interface, Input/output interfaces, display and memory,
etc. Generally, an embedded system comprises power supply, processor, memory,
timers, serial communication ports and system application specific circuits.
Advantages:
1) Design and Efficiency
2) Cost
3) Accessibility
4) Maintenance
5) Redundancies
2) Cost:
The streamline make-up of most embedded system allows their parts to be smaller
less expensive to produce.
3) Accessibility:
If something goes wrong with certain embedded systems they can be too
inaccessible to repair. This problem is addressed in the design stage, so by
programming an embedded system. So that it will not affect related system
negatively when malfunctioning.
4) Maintenance:
Embedded systems are easier to maintain because the supplied power is embedded
in the system and does not required remote maintenance.
5) Redundancies:
Embedded system does not involve the redundant programming.
Disadvantages:
1) Difficult to change configurations and features.
2) Issue of scalability
3) Limitation of hardware.
4) Applied for a specific purpose
OR
Processor:
The processor is the heart of embedded system. The selection of processor is based
on the following consideration
1. Instruction set
2. Maximum bits of operation on single arithmetic and logical operation
3. Speed
4. Algorithms processing and capability
5. Types of processor( microprocessor, microcontroller, digital signal processor,
application specific processor, general purpose processor)
Power source:
Internal power supply is must. It require from power up to power down to start
time task. Also it can run continuously that is stay “On‟ system consumes total
power hence efficient real time programming by using proper „wait‟ and „stop‟
instruction or disable some unit which are not in use can save or limit power
consumption.
Memories:
8051 Microcontroller:
PIC Microcontroller:
AVR Microcontroller:
TinyAVR: Less memory, small size, appropriate just for simpler applications
MegaAVR: These are the mainly popular ones having a good quantity of memory
(up to 256 KB), higher number of inbuilt peripherals and appropriate for modest to
complex applications.
XmegaAVR: Used in commercial for complex applications, which need large
program memory and high speed.
ARM Processor:
An ARM processor is also one of a family of CPUs based on the RISC (reduced
instruction set computer) architecture developed by Advanced RISC Machines
(ARM).
An ARM makes at 32-bit and 64-bit RISC multi-core processors. RISC processors
are designed to perform a smaller number of types of computer instructions so that
they can operate at a higher speed, performing extra millions of instructions per
second (MIPS). By stripping out unnecessary instructions and optimizing
pathways, RISC processors give outstanding performance at a part of the power
demand of CISC (complex instruction set computing) procedure.
ARM processors are widely used in customer electronic devices such as smart
phones, tablets, multimedia players and other mobile devices, such as wearables.
Because of their reduced to instruction set, they need fewer transistors, which
enable a smaller die size of the integrated circuitry (IC). The ARM processors,
smaller size reduced difficulty and lower power expenditure makes them suitable
for increasingly miniaturized devices.
Features of 8051, PIC, AVR and ARM Microcontrollers:
UART, USART,
UART, USART,
PIC, UART, LIN, I2C, SPI,
SPI, I2C,
USART, CAN, USB,
UART, (special purpose
Communication LIN, CAN,
USART,SPI,I2C AVR support Ethernet, I2S,
Protocols Ethernet, SPI,
CAN, USB, DSP, SAI (serial
I2S
Ethernet) audio
interface), IrDA
12 4 1
1 clock/
Clock/instruction Clock/instruc clock/ instructio
Speed instruction cycle
cycle tion cycle n cycle
Some feature
CLSC RISC RISC
ISA of RISC
Cost (as
compared to Very Low Average Average Low
features provide)
High speed
operation
Known for its
Cheap Cheap, effective Vast
Other Feature Standard
LPC2148, ARM
PIC18fXX8, Atmega8, 16,
AT89C51, Cortex-M0 to
Popular PIC16f88X, 32, Arduino
P89v51, etc. ARM Cortex-M7,
Microcontrollers PIC32MXX Community
etc.
Types of Embedded System:
Explanation :
Compiler:
It is a computer program that transforms the source code written in a programming
or source language into another computer language i.e. target language i.e. binary
code known as object code.
Cross assembler:
It is useful to convert object codes for microcontrollers or processor to other codes
for another microcontrollers or processor and vice versa.
Cross compiler:
It is used to create executable code other than one on which the compiler is run.
They are used to generate executable for embedded systems or multiple platforms.
Linker/Locator:
It is used for relocation process.
It is done during compilation also it can be done at run time by a relocating
loader.
It is a program that takes one or more objects generated by compiler and
combines them into a single executable program.
Simulators:
A simulator is the s/w that simulates an h/w unit like emulator, peripheral,
network and I/O devices on a PC.
It defines a processor or processing device as well as various versions for the
target system.
Monitors the detailed information of as source code part with labels and
symbols during the execution for each single step.
Provides the detailed information of the status of memory RAM and
simulated ports, simulated peripheral devices of the defined target system.
Integrated Development Environment (IDE):
An IDE is a software application that provides comprehensive facilities to
computer programmers for software development. An IDE consists of:
A source code editor.
A compiler and or interpreter.
Build automation tools.
A debugger.
Processor power-
Selection of the processor is based on the amount of processing power to get
the job done and the register width required.
8 bit, 16 bit, 32 bit and 64 bit microcontrollers are provided.
Processing power is different for different microcontrollers.
High clock, speed and addressing capable microcontrollers are available.
Very powerful DSPS are available for real time analysis of audio and video
signals.
Memory-
Designer has to make an estimate of the memory requirement and must
make provision for expansion.
In a system, there are different types of memories : RAM, ROM, EPROM,
PROM, etc.
Secondary storage devices like HDD can be embedded into the system like
mobile.
Flash memory can be used instead of secondary memory. Hence, we can
load NT in embedded system. E.g. Embedded Linux OS can be loaded into
wristwatches.
Operating system-
In desktop, the selection of O.S. is limited.
In embedded system, a variety of operating systems are available which can
be ported into the embedded system.
It is categorized as follows : Embedded OS, real time OS and mobile OS.
These operating systems occupy less area in memory than desktop.
For real time applications, we should use real time OS.
We can develop our own OS kernel.
We can use open source OS like Linux. This OS is free and can be
customized.
Reliability:
Embedded system often reside in machines that are expected to run
continuously for years without errors and in some cases recover by
themselves, if an error occurs.
So, the software is usually developed and tested more carefully than that for
personal computers and unreliable moving parts such as disk drives,
switches or buttons are avoided.
Unit cost:
The monetary cost of manufacturing each copy of the system, excluding
NRE cost.
NRE cost:
The monetary cost of designing the system. Once the system is designed,
any number of units can bemanufactured without incurring any additional
design cost (hence the term “non-recurring”).
Size:
The physical space required by the system, often measured in bytes for
software, and gates or transistors for hardware.
Performance:
The execution time or throughput of the system.
Power:
The amount of power consumed by the system, which determines the
lifetime of a battery, or the cooling requirements of the IC, since more power
means more heat.
Flexibility:
The ability to change the functionality of the system without incurring heavy
NRE cost. Software is typically considered very flexible.
Time to market:
The amount of time required to design and manufacture the system to the
point the system can be sold to customers.
Time to prototype:
The amount of time to build a working version of the system, which may be
bigger or more expensive than the final system implementation, but can be
used to verify the system‟s usefulness and correctness and to refine the
system‟s functionality.
Correctness:
Our confidence that we have implemented the system‟s functionality
correctly. We can check the functionality throughout the process of
designing the system and we can insert test circuitry to check that
manufacturing was correct.
Safety: