lTo understand how data are
represented at the machine level and to appreciate the consequences and
limitations of those representations.
lTo master those language-specific
that are used more frequently in embedded systems, such as bit manipulation.
lTo obtain a programmer’s view of
processor architecture and how programming at the level of assembly is sometimes necessary or
appropriate.
What is
an embedded system?
l An embedded system is a
special-purpose computer system, which is completely encapsulated by the device
it controls. An embedded system has specific requirements and performs pre-defined
tasks, unlike a general-purpose personal computer.
l Typically an embedded system consists
of a single-board microcomputer with software in ROM, which starts running a
dedicated application as soon as power is turned on and does not stop until
power is turned off.
l Its hardware and software can be
stand-alone or may form a component of some larger system and is expected to
function without human intervention.
l Embedded systems can respond to
events in real-time and range in size from a single processing board to systems
with operating systems (Linux, Windows® NT Embedded).
How
powerful are embedded processors?
What
programming languages are used in embedded systems?
Examples of Programming Language
Levels
High level Languages C
code fragment(70s-80s)
#define const 6
int num1,num2;
num1 = num2 +
const;
Assembler Machine Code
(60s-70s)
.define
const=6
move.b
num1,d0
addq.b #const, d0
move.b
d0,num2
.org 1234h
num1: .byte [1]
num2: .byte [2]
Hex notation(50s-60s)
1038 1234
5C00
1E00 1235
Machine
code (40s-50s)
0001000000111000 0001001000110100
0101110000000000
0001110000000000 0001001000110101
When is
assembler appropriate?
- Parts of a program where
absolute speed is critical.
Ø More effective use of CPU registers
and instruction set, thus producing code that runs faster than that produced by
a compiler.
- There may be no other way to
access a particular feature of the hardware.
Ø Your C compiler might not provide
library functions to access I/O ports or to disable/enable interrupts
Ø Your compiler might not take
advantage of CPU special instructions such as BCD arithmetic, binary-ASCII
conversion, table look-ups, high-speed copying of entire blocks of data
What is
unique about the design goals for embedded software?
l Reliability
l Performance
u Multitasking
u Scheduling
l Cost
l Flexibility
l Programmability
What does
real-time mean?
Assume the braking system of a car?
Why it is called 'abs'
abs - the automated braking system (automatic brake system)
Minimal
response time! If not????????
Programmable Logic Devices (PLD)
A digital integrated circuit that can be
programmed by the user to implement any digital logic function
l PAL
l GAL
l EPLD
l CPLD
l FPGA
l GPP
l DSP
l ASIC
l Microcontroller
What is
a Real-Time Kernel?
l The kernel is the fundamental part of
an operating system. It is a piece of software responsible for providing secure
access to the machine's hardware to various computer programs. Since there are
many programs, and access to the hardware is limited, the kernel is also
responsible for deciding when and how long a program should be able to make use
of a piece of hardware.
Use of Real-Time Kernels
How big
are embedded programs?
FAX
Machine
u 16-bit processor
u 6 threads
u RAM: 2048 Bytes
•
1346
bytes, program (66%)
•
250
bytes, Kernel (19%)
u ROM: 32.0KB
•
28.8
KB (90%)
•
2.5
KB Kernel (8.7%)
CD
player
u 8-bit processor
u 9 threads
u RAM 512 Bytes
•
384
Bytes, program (75%)
•
146
Bytes, Kernel (38%)
u ROM 32.0KB
•
17.8
KB (56%)
•
2.3
KB kernel (13%)
Embedded controllers adhere to a philosophy of
high integration
Micro-Controller
In a
microprocessor-based system, the CPU and the various I/O functions are packed
as separate ICs.
Micro-Processor
In a microprocessor-based system many , if not all, of the
I/O functions are integrated into the same package with the CPU
Advantages of high integration
l Lower cost
u one part replaces many parts
l More reliable
u Fewer Packages, fewer interconnects
l Better performance
u system components are optimised for
their environment
l Faster
u signals stay on chip
l Lower RF signature
u fast signals don’t radiate from a
large PC board
No comments:
Post a Comment