Upload
sushrut-zemse
View
230
Download
0
Embed Size (px)
Citation preview
7/31/2019 Core of emb-sys
1/52
Core Of The Embedded System
7/31/2019 Core of emb-sys
2/52
Embedded systems are domain and
application specific and are build around a
central core.
7/31/2019 Core of emb-sys
3/52
Categories
The core of embedded system falls into any
one of the following categories:
General purpose and domain specific processors
Microprocessors
Microcontrollers
Digital Signal Processors
Application Specific Integrated Circuits(ASICs)
Programmable Logic Devices(PLDs)
Commercial off-the-shelf Components(COTS)
7/31/2019 Core of emb-sys
4/52
General Purpose & Domain Specific Processors
Almost 80% of Embedded Systems areprocessor/Controller based.
The processor may be a micro-processor or a
microcontroller or a digital signal processordepending on the domain and application.
Eg. Embedded systems in industrial control andmonitoring applications make use of microprocessor
or microcontroller where as domains which requiresignal processing such as speech coding, speechrecognition make use of digital signal processors.
7/31/2019 Core of emb-sys
5/52
Microprocessors
A microprocessor is a silicon chip representing aCPU capable of performing arithmetic as welllogical operations according to a predefined setof instructions, which is specific to the
manufacturer. It contains Arithmetic and logic unit, control unit
and working registers.
A microprocessor is a dependant unit and it
requires combination of other hardware likememory, timer unit, and interrupt controllerect.For proper functioning.
7/31/2019 Core of emb-sys
6/52
Microprocessors
Different instruction set and systemarchitecture are available for the design of amicroprocessor.
Harvard and von-neumann are two commonarchitectures for processor design.
Processors based on harvard architecture containsseprate buses for program memory and datamemory, whereas processors based on Von-Neumann architecture shares a single system busfor program and data memory
7/31/2019 Core of emb-sys
7/52
Microprocessors
Reduced Instruction Set Computing(RISC) and
Complex Instruction Set Computing(CISC)are
two common Instruction Set Architectures
(ISA) available for processor design.
7/31/2019 Core of emb-sys
8/52
General Purpose Procesor (GPP)vs. Application
Specific Instruction Set Processor
A GPP is designed for general computationaltasks. They are produced in large volumes andper unit cost for a chip is low compared to
ASIC or other Ics. On other hand ASIPs have architecture and
instruction set optimized to specificdomain/application requirement like networkprocessing, automotive, telecom, digital signalprocessing and control applications.
7/31/2019 Core of emb-sys
9/52
Microcontrollers
A microcontroller is a highly integrated chip
that contains a CPU, a scratch pad RAM,
special & general purpose register arrays, on
chip ROM/FLASH memory for program
storage, timer and interrupt control units and
dedicated I/O ports.
It can be considered as a super set ofmicriprocessor.
7/31/2019 Core of emb-sys
10/52
Microcontrollers
Microcontrollers found greater place in
embedded domain since they contain all
necessary functional blocks for independent
working.
They are cheap, cost effective and are readily
available in market.
7/31/2019 Core of emb-sys
11/52
7/31/2019 Core of emb-sys
12/52
Microprocessor vs. Microcontroller
Microprocessor
A silicon chip representing acentral processing unit, which iscapable of performing arithmetic
as well as logical operationsaccording to a predefined set ofinstructions.
It is a dependant unit. It requiresthe combination of other chipslike timers, program & data
memory chips, interruptcontrollers etc for functioning.
Most of the time general purposein design and operation.
Microcontroller
It is a highly integrated chip thatcontains a CPU, scratchpad RAM,special & general purpose register
arrays, on chip ROM, Flashmemory for program storage,timer & interrupt control unitsand dedicated I/O ports.
It is a self contained unit & it doesnot require external interrupt
controller, timer, UART etc for itsfunctioning.
Mostly application-oriented ordomain specific.
7/31/2019 Core of emb-sys
13/52
Microprocessor vs. Microcontroller
Microprocessor
Doesnt contain a built in I/O
port. The I/O port functionality
needs to be implemented with
the help of a external
programmable peripheral
interface chip like 8255.
Targeted for high end market
where performance isimportant.
Limited power saving options
compared to microcontrollers.
Microcontroller
Most of the processors contain
multiple built-in I/O ports
which can be operated as a
single 8 or 16 0r 32 bit port or
as individual port pins.
Targeted for embedded
market where performance is
not so critical(At present thisdemarcation is not valid).
Includes lot of power saving
features.
7/31/2019 Core of emb-sys
14/52
7/31/2019 Core of emb-sys
15/52
Digital Signal Processors
DSPs implement algorithms in hardware whichspeeds up the execution where as generalpurpose processors implement the algorithm
in firmware and speed of execution dependson clock for the processors.
In general DSP can be viewed as a micrichipdesigned for performing high speedcomputational operations for addition,subtraction, multiplication & division.
7/31/2019 Core of emb-sys
16/52
Key Units of a DSP
Program memory Memory for storing the program required by DSP to
process the data.
Data Memory
Working memory for storing temporary variables anddata/signal to be processed.
Computational Engine Performs the signal processing in accordance with the
stored program memory. Computational engine
incorporates many specialized arithmetic units and each ofthem operates simultaneously to increase the executionspeed. It also incorporates multiple hardware shifters forshifting operands and thereby saves execution time.
7/31/2019 Core of emb-sys
17/52
7/31/2019 Core of emb-sys
18/52
RISC vs. CISC Processors/Controllers
The term RISC stands for Reduced Instruction
Set computing.
All RISC processors/controllers posses lesser
number of instructions in the range of 30 to
40.
CISC stands for Complex Instruction Set
Computing. Its instruction set is complex and
instructions are high in number.
7/31/2019 Core of emb-sys
19/52
RISC vs. CISC Processors/Controllers
From a programmer point of view RISC
processors are comfortable because he/she
needs to learn only few instructions where as
in CISC processor more instructions arerequired to be learnt and should understand
the context of usage of each instruction.
7/31/2019 Core of emb-sys
20/52
RISC vs CISC
RISC
Lesser number of instructions.
Instruction pipelining andincreased execution speed.
Orthogonal instruction set (allows each instruction tooperate on any register anduse any addressing mode).
Operations are performed onregisters only, the onlymemory operations are loadand store.
CISC
Greater no of instructions.
No instruction pipeliningfeature.
Non-orthogonal instruction set(all instructions are notallowed to operate on anyregister and use anyaddressingmode. It is instruction
specific).
Operations are performed onregisters or memorydepending on the instruction.
7/31/2019 Core of emb-sys
21/52
RISC vs. CISC
RISC
A large number of registers areavaiable.
Programmer needs to write
more code to execute a tasksince the istructions aresimpler ones.
Single, fixed lengthinstructions.
Less silicon usage and pincount.
With havard architecture.
CISC Limited number of general purpose
registers.
Instructions are like macros in clanguage.
A programmer can acheive the desiredfunctionality with a single instructionwhich in turn provides the effect ofusing more simpler single instructionsin RISC.
Variable length instructions
More silicon usage since more
additional decoder logic is required toimplement the complex instructiondecoding.
Can be harvard or von-neumanarchitecture.
7/31/2019 Core of emb-sys
22/52
Harvard vs. Von-Neuman
Processor/Controller Architecture The terms harvard and von-neuman refers to the processor
architecture design.
Microprocessors/controllers based on the Von-Neumanarchitecture share a single common single bus for fetchingboth instructions and data.
Program instructions and data are stored in a commonmain memory.
Von-Neuman based processors/controllers first fetch aninstruction and then fetch the data to support the
instruction fron code memory which slows down thecontrollers operation.
It is also known as Princeton architecture, since it wasdeveloped by the Princeton University.
7/31/2019 Core of emb-sys
23/52
Harvard vs. Von-Neuman
Processor/Controller Architecture Microprocessors/controllers based on the Harvard
architecture will have separate data bus and instruction buswhich allows the data transfer and program fetching tooccur simultaneously on both buses.
With harvard architecture, the data memory can be readand written while the program memory is being accessed.
These separated data memory and code memory busesallow one instruction to execute while the next instructionis fetched (pre-fetching).
The pre fetching theoretically allows much faster execution thanvon-neuman architecture.
Since some additional hardware logic is required for thegeneration of control signals for this type of operation it addssilicon complexity to the system.
7/31/2019 Core of emb-sys
24/52
Harvard vs. Von-Neuman Architecture
I/O CPU Memory
ProgramMemory
CPU Data MemorySingle Shared Bus
7/31/2019 Core of emb-sys
25/52
Harvard vs. Von-Neuman Architecture
Harvard Architecture
Separate buses for instructionand data fetching.
Easier to pipeline, so high
performance can be achieved . Comparatively high cost.
No memory alignmentproblems.
Since data memory and
program memory are storedphysically in differentlocations, no chances foraccidental corruption ofprogram memory.
Von-Neuman Architechture
Single shared bus forinstruction and data fetching.
Low performance compared to
harvard architecture. Cheaper.
Allows self modifying codes.
Since data memory andprogram memory are stored
physically in the same chip,chances for accidentalcorruption of programmemory.
7/31/2019 Core of emb-sys
26/52
Big-Endian vs. Little Endian
Processors/Controllers
Endianness specifies the order in which the datais stored in the memory by processor operationsin a multibyte system(processors whose word sizeis greater than one byte). Suppose the word
length is two byte then data can be stored inmemory in two different ways: Higher order of data byte at the higher memory and
lower order of data byte at location just below thehigher memory.
Lower order of data byte at the higher memory andhigher order of data byte at location just below thehigher memory.
7/31/2019 Core of emb-sys
27/52
Little endian
Following figure means the lower order byteof
the data is stored in memory at the lower
address and higher order byte at the highest
address. (The little end comes first).Forexample, a 4 byte long integer Byte3 Byte2
Byte1 Byte0 will be stored in the memory as
shown below:
7/31/2019 Core of emb-sys
28/52
little-endian
Byte0
Byte1
Byte2
Byte3
Base Address+0 Byte 0
Base Address+1 Byte 1
Base Address+2 Byte2
Base Address+3 Byte 3
0x20000 (Base Address)
0x20001 (Base Address +1)
0X20002 (Base Address +2)
Ox20003 (Base Address +3)
7/31/2019 Core of emb-sys
29/52
Big-endian
Means the higher order byte of the data is
stored in memory at the lowest address and
the lower-order byte at the highest address.
(The big end comes first.) For example, a 4byte long integer Byte3 byte2 Byte1 Byte0 will
be stored in the memory as follows:
7/31/2019 Core of emb-sys
30/52
Big-endian
Byte3
Byte2
Byte1
Byte0
Base Address+0 Byte 3
Base Address+1 Byte 2
Base Address+2 Byte1
Base Address+3 Byte 0
0x20000 (Base Address)
0x20001 (Base Address +1)
0X20002 (Base Address +2)
Ox20003 (Base Address +3)
7/31/2019 Core of emb-sys
31/52
Application Specific Integrated Circuit
Application Specific Integrated (ASIC) is amicrochip designed to perform a specific orunique application.
It is used as replacement to conventionalgeneral purpose logic chips.
It integrates several functions into a single
chip and thereby reduces the systemdevelopment cost.
Most of the ASICs are proprietary products.
7/31/2019 Core of emb-sys
32/52
Application Specific Integrated Circuit
As a single chip ASIC consumes a very small area in the totalsystem and thereby helps in design of smaller systems withhigh capabilities/functionalities.
ASIcs can be pre fabricated for a special application or itcan be custom fabricated by using the components from areusable building block library of components for aparticular customer application.
ASIC based systems are profitable only for large volumecommercial productions.
Fabrication of ASICs requires a non-refundable initialinvestment for the process technology and configurationexpenses. This investment is known as NRE and it is onetime investement.
7/31/2019 Core of emb-sys
33/52
Application Specific Integrated Circuit
If non-recurring engineering charges is borneby a third party and the application SpecificIntegrated Circuit(ASIC) is made openly
available in the market, the ASIC is referred asApplication Specific Standard Product (ASSP).
The ASSP is marketed to multiple customersjust as a general purpose product is, but to a
smaller number of customers since it is for aspecific application.
7/31/2019 Core of emb-sys
34/52
Application Specific Integrated Circuit
Since ASICs are proprietary products, thedevelopers of such chips may not beinterested in revealing the internal details of it
and hence it is very difficult to point out anexample of it.
Moreover it will create legal disputes if anillustration of such an ASIC product is given
without getting prior permission from themanufacturer of the ASIC.
7/31/2019 Core of emb-sys
35/52
Programmable Logic Devices
Logic devices provide specific functions, including
device to device interfacing, data communication,
signal processing, data display, timing and control
operations, and almost every other function asystem must perform.
Logic devices can be classified into two broad
categories: Fixed
Programmable
7/31/2019 Core of emb-sys
36/52
Programmable Logic Devices
As the name indicates, the circuit in a fixed logicdevice are permanent, they perform one functionor set of functionsonce manufactured, theycannot be changed.
On the other hand programmable logicdevices(PLDs)offer customer a wide range of logiccapacity, features, speed, and voltage
characteristics- and these devices can bereconfigured to perform any number of functionsat any time.
7/31/2019 Core of emb-sys
37/52
Programmable Logic Devices
With programmable logic devices, designers useinexpensive software tools to quickly develop,simulate and test their design. Then a design canbe quickly programmed into a device,immediately tested in a live circuit.
The PLD that is used for this programming is exactsame PLD that will be used in the final production
of a piece of end equipment, such as a networkrouter, DSL modem, a DVD player or anautomotive navigation system.
7/31/2019 Core of emb-sys
38/52
Programmable Logic Devices
ryThere are no NRE costs and the final design is completedmuch faster than that of a custom, fixed logic device.
Another key benefit of using PLDs is that during the designphase customers can change the circuitary as often as theywant until the design operates to their satisfaction.
It is because PLDs are based on re-writeable memorytechnology- to change the design, the device is simplyrepeogrammed.
Once the design is final the customers can go into
immediate production by simply programming as manyPLDs as they need with final software design file.
7/31/2019 Core of emb-sys
39/52
CPLDs and FPGAs
Programmable logic devices are of two types Field Programmable Gate Arrays(FPGAs)
Cmplex Programmable Logic Devices(CPLDs)
FPGAs offer highest amount of logic density.
The largest FPGGA provides 8 million system gates. They also have built-in hardwired processors,
substantial amount of memory, clock managementsystems,and support for lates very fast device to device
signaling technologies. FPGAs are used in applications as data processing,
instrumentation, telecommunication and digital signalprocessing.
7/31/2019 Core of emb-sys
40/52
CPLDs and FPGAs
CPLDs offer much smaller amounts of logic-
about 10,000 gates
They offer very predictable timing characteristics
and are therefore ideal for critical controlapplications.
They require low amounts of power and are very
inexpensive making them ideal for cost sensitive,battery operated, portable applications such as
mobile phones and digital hand held assistants.
7/31/2019 Core of emb-sys
41/52
Advantages of PLDs
Programmable logic devices offer number ofadvantages over fixed logic devices: They offer much more flexibility during the design cycle
because design iterations are simply a matter of changingthe programming file and the result of design changes canbe seen immediately in working parts.
They do not require long lead time for prototypes orproduction parts-the PLDs are already on a distributorsshelf ready for shipment.
They do not require customer to pay for large NRE costsand purchase expensive mask setsPLd supplier incurrthose costs when they design their programmable devicesand are able to amortize those costs over the multi-yearlifespan of a given line of PLDs.
7/31/2019 Core of emb-sys
42/52
Advantages of PLDs
PLDs allow customers to order just the number of
parts they need, when they need them, allowing
them to control inventory. Customers who use
fixed logic devices often end up with excessinventory which must be scrapped or if demand
for their producr surges, they may be caught
short of parts and face production delays.
PLDs can be reprogramme even after a piece of
equipment is shipped to a customer.
7/31/2019 Core of emb-sys
43/52
Commercial Off-the-Shelf Components
(COTS)
A commercial off-the-shelf product is thatwhich is used as-is.
COTS products are designed in such a way to
provide easy integration and interoperabilitywith existing system components.
The COTS component itself may be developedaround a general purpose or domain specificprocessor or an application specific Integratedcircuit or a programmable logic device.
7/31/2019 Core of emb-sys
44/52
Commercial Off-the-Shelf Components
(COTS)
Typical examples of COTS hardware units are
remote controlled toy car control units
including the RF circuitory part, high
performance, high frequency microwaveelectronics (2-200GHz), high bandwidth
analog to digital convertor, devices and
components for operation at very hightemperatures, electro-optic IR imaging arrays
UV/IR detectors etc.
ff f
7/31/2019 Core of emb-sys
45/52
Commercial Off-the-Shelf Components
(COTS)
The major advantage of using COTS is that they
are readily available in the market, are cheap and
a developer can cut down his development time
to a great extent, which in turn reduces the timeto market embedded systems.
Though multiple vendors supply COTS for the
same application, the major problems faced byend user is that there are no operational and
manufacturing standards.
l ff h h lf
7/31/2019 Core of emb-sys
46/52
Commercial Off-the-Shelf Components
(COTS)
A commercial off the shelf component
manufactured by a vendor need not have
hardware plug-in and firmware interface
compatibility with one manufactured by asecond vendor for the same application.
This restricts the end user to stick to a
particular vendor for a particular COTS. Thisgreatly affects the product design.
i l ff h h lf
7/31/2019 Core of emb-sys
47/52
Commercial Off-the-Shelf Components
(COTS)
The major drawback of using COTS
components in embedded design is that the
manufacturer of the COTS component may
withdraw the product or discontinue theproduction of COTS at any time if a rapid
change in technology occurs and this will
adversely affect a commercial manufacturer ofthe embedded system which makes use of the
specific COTS product.
7/31/2019 Core of emb-sys
48/52
7/31/2019 Core of emb-sys
49/52
7/31/2019 Core of emb-sys
50/52
7/31/2019 Core of emb-sys
51/52
7/31/2019 Core of emb-sys
52/52