Professional Documents
Culture Documents
1, Introduction To Embeeded Systems
1, Introduction To Embeeded Systems
SYSTEMS
Microprocessor vs. Microcontroller
Microprocessor Microcontroller
• CPU is stand-alone, RAM, • CPU, RAM, ROM, I/O and timer
ROM, I/O, timer are separate are all on a single chip
• designer can decide on the • fixed amount of on-chip ROM,
amount of ROM, RAM and RAM, I/O ports
I/O ports.
• for applications in which cost,
• expensive power and space are critical
• versatility
• single-purpose (control-oriented)
• general-purpose
• Low processing power
• High processing power
• High power consumption • Low power consumption
• Instruction sets focus on • Bit-level operations
processing-intensive • Instruction sets focus on control
operations and bit-level operations
• Typically 32/64 – bit • Typically 8/16 bit
• Typically deep pipeline (5-20 • Typically single-cycle/two-stage
stages)
pipeline
Embedded
Systems
Embedded Systems
• Embedded literally means enclosed firmly in a surrounding
mass
Typical characteristics:
When you use an embedded operating system, you can take out many parts of the
kernel that are required in the general-purpose OS.
Parts that are the most likely candidates for removal from the embedded OS are:
•Disk drivers.
•CD-ROM drivers.
The trimmed version of the OS will be much smaller compared to the general-purpose
Operating System.
CONCEPTS
A real-time computer system must react to stimuli from the controlled object
(or the operator) within time intervals dictated by its environment. The instant
at which the a result is produced is called as a DEAD LINE
CONCEPTS
c) Real Time Embedded Systems:
Classifications of Real-Time Systems:
• Hard Real Time Systems
• Soft Real Time systems
Development Life Cycle of Embedded Systems
Tools and utilities used in development process.
Compilers
Assemblers
Linkers
Debuggers
Emulators
Simulators
IDEs
Tools and utilities used in development
process.
Compilers
• Translate the human readable source code into "hex code" that represents the
machine instructions (op codes).
Classification of Compilers:
• Native Compilers: These generates codes (hex codes) for the processor of the
host system.
Example: Turbo C compiler, GCC compiler etc.,
• Cross Compilers: Generates codes for the processor of the target system. These
compilers run on host machine.(usually computer based on x86 processor).
Example: ARMCC compiler, arm-elf-gcc compiler etc.,(for ARM
processors).
Tools and utilities used in development process.
Assemblers
• Translate the human readable assembly level language( of the “target” processor)
into "hex code" that represents the machine instructions (op codes).
Classification of Assemblers:
Native Assemblers: These generates codes (hex codes) for the processor of the host
system.
Cross Assemblers: Generates codes for the processor of the target system.
Tools and utilities used in development process.
Linkers
At the same time they take care of a chip's memory allocation by assigning
each instruction to a microcontroller memory addresses in such a way that
different modules do not overlap.
Tools and utilities used in development process.
Debuggers
• A debugger is a piece of software running on the host machine that allows you
to download your code and then control the functions of the target system from
the host.
Simulators
• Some simulators go even a step further and include the whole system
(simulation of peripherals outside of the microcontroller).