Professional Documents
Culture Documents
Unit 1 (Es)
Unit 1 (Es)
UNIT-I
Page 2
EMBEDDED SYSTEM
2. Response
3. Stability
4. Debug ability
5. Reliability
6. Memory space
7. Power Consumption
8. Cost issue.
1. Compiler:
A compiler is a computer program (or set of program) that transforms source
code written in a computer language (the source language) into another
computer language (the target language often having a binary form known as
object code). The most common reason for wanting to transform source code is
to create an executable program.
The name ‘compiler’ is primarily used for programs that translate source code
from a high-level programming language to a lower level language (e.g.
assembly language or machine code). A program that translates from a low
level language to a higher level one is a decompiler. A program that translates
between high-level languages is usually called a language translator, source to
source translator, or language convertor. A language rewriter is usually a
program that translates the form of expression without a change of language.
A compiler is likely to perform many or all of the following operations: lexical
analysis, preprocessing, parsing, semantic analysis, code generation and code
optimization.
Programs faults caused by incorrect compiler behavior can be very difficult to
track down and work around and a compiler implementers invests a lot of time
Page 3
EMBEDDED SYSTEM
*Phases of Compiler:
The compiler has a number of phases plus symbol table manager and an error
handler.
Page 4
EMBEDDED SYSTEM
Page 5
EMBEDDED SYSTEM
Page 6
EMBEDDED SYSTEM
approximations and assumption within the simulation and fidelity and validity
of the simulation outcomes.
Physical and interactive simulation
Physical simulation refers to simulation in which physical objects are
substituted for the real thing. These physical objects are often chosen because
they are similar or cheaper than the actual object or system.
Interactive simulation is a special kind of physical simulation, often referred to
as human in the loop simulation, in which physical simulations in which
physical simulations include human operators such as in a flight simulator or a
driving simulator.
A computer simulation (or “sim”) is an attempt to model a real-life or
hypothetical situation on a computer so that it can be studied to see how the
system works. By changing variables, prediction may be made about the
behavior of the system.
Computer simulation has became a useful part of modeling many natural
systems in physical chemistry and biology, and human systems in economics
and social science as well as in engineering to gain insight into operation of
those systems. A good example of the usefulness of using computer to simulate
can be found in the field of network traffic simulation. In such simulation the
model behavior will change each simulation according to the set of initial
parameter assumed for the environment.
Traditionally the formal modeling of system has been via a mathematical model
which attempts to find analytical solutions enabling the prediction of the
behavior of the system from a set of parameter and initial conditions. Computer
simulation is often used as an adjunct to, or substitution for, modeling systems
for which simple closed form analytic solutions are not possible. There are
many different types of computer simulation the common features they all share
is the attempt to generate a sample of representative scenarios for a model in
which a complete enumeration of all possible states would be prohibitive or
impossible.
5. RTS (Real Time System):
In computer science, real time computing (RTC) or “reactive computing” is the
study of hardware and software systems that are subject to a “real-time
constraints” i.e... Operational deadline from event to system response. By
contrast, a non-real-time system is one for which there is no deadline, even if
fast response or high performance is desired or preferred. The needs of real-time
software are often addresses in the context of real-time operating systems, and
synchronous programming languages, which provide frameworks on which to
build real-time application software.
Page 8
EMBEDDED SYSTEM
A real-time system may be one where its application can be considered (within
context) to be mission critical. The anti-lock brakes on a car are a simple
example of a real-time computing system-the real-time constraint in this system
is the short time in which the brakes must be released to prevent the wheel from
locking. Real-time computation can be said to have failed if they are not
completed before their deadline, where their deadline is relative to an event. A
real-time deadline must be met, regardless of system load.
The term real-time derivers from its use in early simulation. While current
usage implies that a computation that is ‘fast enough’ is real-time, originally it
referred to a simulation that proceeded at a rate that matched that of the real-
process it was simulating. Analog computers especially were often capable of
simulating much faster than real-time a situation that could be just as dangerous
as a slow simulation if it were not also recognized and accounted for.
6. Architecture of Microcontroller:
Basically, a microcontroller is a device which integrates, number of the
components of a microprocessor system onto a single microchip and optimized
to interact with the outside world through on-board interfaces; i.e it is a little
gadget that houses a microprocessor, ROM (Read only memory), RAM
(Random access memory), I/O (Input/output function), and various other
specialized circuits all in one package.
On the other hand, a microprocessor is normally optimized to co-ordinate the
flow of information between separate memory and peripheral devices which are
located outside itself. Connections to a microprocessor include address, control
and data buses that allow it to select one of its peripherals and send to or
retrieve data from it. Because a microcontroller processor and peripherals are
built on the same silicon, the devices are self-contained and rarely have any bus
structures extending outside their packages. So a microcontroller incorporates
onto the same microchip the following:
The CPU core
Memory (both ROM and RAM)
Some parallel digital I/O
Page 9
EMBEDDED SYSTEM
Page 10
EMBEDDED SYSTEM
Page 11
EMBEDDED SYSTEM
Fig: Microcontroller
7. RTOS (Real Time Operating System):
(D) What is real time system? Explain the working principle of RTOS? (S-
16/W-15, 16, 17)
Refer to Question B.
(C) Explain the need of DSP? Explain its architecture? (W-15, 16, 17, 19)
A digital signal processor is a specific-purpose CPU (Central processing unit)
that provides ultra-fast instructions sequences, such as shift and adds, and
multiply and add, which are commonly used in math-intensive signal processing
applications.
DSPs are not the same as typical microprocessor though. Microprocessors are
typically general purpose devices that run large blocks of software. They are not
often called upon for real-time computation and they work at slower pace,
choosing a course of action, and then waiting to finish the present job before
responding to the next user command. DSPs on the other hand, are often used as
type of embedded controller or processor that is built into another piece of
equipment and is dedicated to a single group of tasks. In this environment, the
DSPs assist the general purpose host microprocessor.
Needs of DSPs
Designed for real-time processing
Optimum performance with streaming data
Separate program and data memories (Harvard architecture)
Special instructions for SIMD (Single instruction multiple data) options
No hardware support for multitasking
Page 12
EMBEDDED SYSTEM
Page 13
EMBEDDED SYSTEM
Higher speed, thus less time Slower in speed, thus more time
consuming consuming
Page 14
EMBEDDED SYSTEM
Page 15
EMBEDDED SYSTEM
Fig: Memory System Bus and I/O bus interfacing in two level bus structures.
Page 16
EMBEDDED SYSTEM
The processor has no separate IO address space for ports and devices.
The instructions as well as control signals for the operations on bytes at
the memory IO port and device addresses are the same.
The processor has no input-output and memory load store instructions
The arithmetic, logical and bit manipulation instructions that are available
for IO operations. The processor can directly manipulate the data taken
from or stored at the IO port or device. The manipulation of all
instructions in the memory can be done using an accumulator, any
register or any other memory address where the IO port byte is
transformed after, during or before the arithmetic or logical operation.
Example: The 8051 microcontroller is an example of a memory-mapped
IO based processor and memory organization.
The advantage of using memory mapped I/O is that by discarding the
extra complexity that port I/O brings, a CPU requires less internal logic
and is thus cheaper, faster and easier to build.
I/O Address mapped IO operations:
Port-mapped I/O uses a special class of CPU instructions specifically for
performing I/O. This is generally found on Intel microprocessor specifically the
IN and OUT instructions which can read and write a single byte to an I/O
device. I/O devices have a separate address space from general memory, either
accomplished by an extra “I/O” pin on the CPU physical interface, or an entire
bus dedicated to I/O.
Page 17
EMBEDDED SYSTEM
RAM: RAM stores the variables during a program run and stores their stack. It
stores input and output buffers. For example: of speech or image. It can also
store the application program and data when the ROM image is stored in a
compressed format in an embedded system and decompression is done before
the actual run of the system.
Two types of RAM:
1. SRAM
2. DRAM
SRAM (Static RAM):
SRAM is used most commonly for designing caches and in embedded
systems and microcontroller.
Page 18
EMBEDDED SYSTEM
Page 19
EMBEDDED SYSTEM
4. EDO RAM cannot operate on a bus speed faster than 66MHz, so with the
increasing use of higher bus speeds. EDO RAM has taken the path of
EPM RAM.
5. Burst EDODRAM (BEBO DRAM): Original EDO RAM was too slow.
For the newer systems coming out at the time. Therefore a new method of
memory access had to be developed to speed up the memory.
6. Bursting was the method devised. This means the larger blocks of data
were set to the memory at a time, and each block of data not only carried
the memory address of the immediate page, but info on the next several
pages. Therefore the next few access would not experience any delays
due to the proceeding memory requests.
Synchronous DRAM (SDRAM):
SDRAM became the new standard after EDO bit the dust.
Its speed is synchronous meaning that it is directly dependent on the
clock speed of the entire systems.
SDRAM synchronizes the read operations and keeps the next word ready
while the previous one is being fetched. This device is used when buses
can fetch or send to the processor up to speed of 1GHz.
Difference between DRAM AND SRAM:
DRAM (Dynamic Ram) SRAM (Static RAM)
Windows CE developer
Used to config, build downloads and Need a tool that can be used to write
debug the windows CE OS to application without having to build &
reference board or (emulation). download an OS image. Need access
info header files and libraries that
define which API are supported on a
platform.
*Microprocessor:
Microprocessor is single VLSI chips that has a CPU and may also have some
other units (e.g. caches, floating point, processing, arithmetic unit, pipelining
and suppressing unit) that are additionally present and that result in faster
processing of instructions
A microprocessor (sometimes abbreviated uP) is a digital electronic component
with miniature transistors on a single semiconductor integrated circuit (IC).
Microprocessor also called Central Processing Unit (CPU) since it is the
functional center of the computer system and it is used to process data.
Page 21
EMBEDDED SYSTEM
The CPU is a unit that centrally fetches and processes a set of general purpose
instructions. The CPU instruction set includes instructions for data transfer
operations. ALU operation stack operations IO operations and program control,
sequencing and supervising operations. The general purpose instruction set is
always specific to a specific CPU.
The CPU consists of:
1. An ALU (Arithmetic and Logical Unit) that undertakes arithmetic and
logical operations on bytes or words. It may be capable of processing 16,
32 or 64-Bit words at an instant.
2. General Purpose Register: These Register constitute the processor’s
internal memory. The number of registers varies from processor to
processor. Register contain the current data and operands that are being
manipulated by the processor. When a processor is referred to as of 8-
bits, 16-bits etc it refer to the width of register.
3. Control Unit: Control Unit fetches the instruction from memory decode
them and execute them.
4. Fetching and Executing An instructions: Fetching involves the following
steps:
Contents of machine are placed on address bus.
READ signal is achieved.
Data (instruction opcode) are read from RAM and placed on data
bus.
Page 22
EMBEDDED SYSTEM
*Architecture of Microcontroller:
Page 23
EMBEDDED SYSTEM
UNIT-II
1.
Page 24
EMBEDDED SYSTEM
UNIT-II
Page 25
EMBEDDED SYSTEM
Page 26