Sie sind auf Seite 1von 41

Setha Pan-ngum

Introduction
Embedded & Real-time systems could be standalone

or connected A real-time system is often composed from a number of periodic (time triggered) and sporadic (event triggered) tasks which communicate their result by passing messages. In a distributed real-time systems these messages are sometimes sent between processors across a communication device. (from Urban Bilstrup)

Introduction (cont.)
To guarantee that the timing requirements of all tasks

are met, the communications delay between a sending task and a receiving task being able to access that message must be bounded. For examples Control systems: between sensors and actuators via central computer Multiprocessors: between processors, tasks communicating

Open System Interconnection


Intended for computers Designed to solve compatibility problem Layers provide standard interface and services

Embedded systems use some standardisation ideas


Higher layers require lower layers to work

OSI
Layers Application user interface e.g. Internet explorer Presentation data formatting e.g. compression and encoding Session handle overall connection e.g. OS, scheduling programs Transport ensures data transfer, error checking e.g. TCP Network logical addressing, routing e.g. IP (from TCP/IP)

OSI cont.
Data link prepares data for transfer, physical

addressing such as Media Access Control (MAC) Physical wires and cables, hubs, repeaters.

Embedded Communication
Point-to-point networks Each node connected to every node Simple and reliable Dedicated links make it easy to meet real-time deadlines Costly due to many wires required Shared media networks Nodes are connected via bus or other topologies Less wiring and hence cheaper Easily extendable by adding new nodes to network Complex network protocol Being the system of focus from now on

Basic network architectures


From Urban Bilstrup

P1

P2

P1 P3

P2 P4

P1

P2

P1

P2

memory P3 P4

Internet

P3

P4

P3

P4

Complex distributed architecture


From Urban Bilstrup

Internal Wireless Communication System

External Wireless Communication System

GREEN CAN

LIN
HMI MOST Gateway

Tuners

Playback

Audio Audio Audio modules Audio modules modules module


RED CAN

Concepts
Event based communication E.g. alarm, user inputs, requests for data from other systems
State based communication E.g. regular sensor readings Predictability

Network resources & qualitative parameters


Network resources Bandwidth Buffer space Protocol efficiency (data bits/bandwidth). Depends on

Message overhead Media access overhead

Determinacy (ability to calculate worst-case response

time) Robustness cost

Event based system


Efficient use of network resource
Needs high reliability (event based data comes once in

a while) May need acknowledgement Hard to predict delay in case of overloading (e.g. alarm)

State based system


Messages sent at predefined, regular intervals.
Less efficient due to regular occupation of

communication channel by nodes. More tolerance. Missed message may be ok, since the next one will be coming. Transient data problem. Sending node has to keep data long enough for other to see. E.g. button pressed may need to be repeated.

Protocol
No best protocol, depends on applications.
Embedded systems tends to focus on level 1 and 2 of

OSI model, for simplicity and overhead reduction. Physical link (Layer 1) transmission medium Data link (Layer 2) provides Media Access Control (MAC)

Advanced communication principles [6]


Layering
Break complexity of communication protocol into pieces easier to design and

understand Lower levels provide services to higher level

Lower level might work with bits while higher level might work with packets of data Lowest level in hierarchy Medium to carry data from one actor (device or node) to another

Physical layer

Parallel communication
Physical layer capable of transporting multiple bits of data

Serial communication
Physical layer transports one bit of data at a time

Wireless communication
No physical connection needed for transport at physical layer

15

Parallel communication [6]


Multiple data, control, and possibly power wires
One bit per wire

High data throughput with short distances Typically used when connecting devices on same IC or

same circuit board


Bus must be kept short

long parallel wires result in high capacitance values which requires more time to charge/discharge Data misalignment between wires increases as length increases

Higher cost, bulky

16

Serial communication [6]


Single data wire, possibly also control and power wires

Words transmitted one bit at a time


Higher data throughput with long distances
Less average capacitance, so more bits per unit of time

Cheaper, less bulky More complex interfacing logic and communication protocol
Sender needs to decompose word into bits Receiver needs to recompose bits into word Control signals often sent on same wire as data increasing protocol

complexity

17

Wireless communication [6]


Infrared (IR)
Electronic wave frequencies just below visible light spectrum Diode emits infrared light to generate signal Infrared transistor detects signal, conducts when exposed to

infrared light Cheap to build


Need line of sight, limited range

Radio frequency (RF)


Electromagnetic wave frequencies in radio spectrum
Analog circuitry and antenna needed on both sides of transmission Line of sight not needed, transmitter power determines range
18

Media Access Control (MAC)


Many protocols are taken from computer networks
Connection oriented protocols CSMA/CD CSMA/CA Polling Token passing TDMA Binary countdown (Bit dominance)

Protocol overview [1]

Connection oriented protocols [5]

2 nodes per each connection only

If nodes are not directly connected, data is relayed


Deterministic delay between directly connected nodes,

high delay for indirectly connected nodes

Connection oriented protocols cont.


Suitable to systems with low communication

requirements. Node with pass-through traffic can be fully occupied. E.g. telephone network service

Polling [5]

Simple and deterministic


Needs a master node Master periodically polls slave nodes

Consumes bandwidth
E.g. military aircraft communication Simple slave nodes, complex master

Time Division Multiple Access (TDMA) [5]

Masters broadcasts sync signal to synchronise all

clocks Then each node sends data on its time slot. Similar but more efficient than polling (synchronise once vs polling all nodes individually. more complex nodes due to timing requirements.

TDMA cont.
Fixed length messages (inflexible) E.g. satellite communications

Token ring [5]

Ring shape network


Token (signal) is passed from node to node Node can hold token, send message all the way round

the ring, and pass token on Deterministic under heavy load

Token ring cont.


Some token overhead
Can add priority by having extra field in token More complexity in detecting token lost Cable break disrupts network (needs dual ring) E.g. many Wide Area Networks (WANs)

Token bus [5]

Similar to token ring Token is passed via bus simultaneously Cable break can be dealt with by reconfiguration (like

when a node is added to or taken off the network. Applied in manufacturing

Binary countdown (Bit Dominance)


All nodes wait for channel to be free before sending.
Simultaneous channel access (contention) resolved by

detecting broadcasting signal for unique identification Bus must provide dominance bit e.g. 1 can override 0 A node stop transmitting when seeing dominance bit opposite to its own broadcasting. Hence messages require priority as IDs rather than node IDs. Good throughput & high efficiency (no contention loss)

Binary countdown cont. [5]

Binary countdown cont.


Heavy load can cause long delay for low priority

messages (no bound) Applied in industrial and automotive Controller Area Network (CAN) and SAE standard J 1850

Carrier Sense Multiple Access with Collision Dectection (CSMA/CD) [5]

Nodes wait for idle channel before transmitting. When simultaneously transmission is detected, each

node stops and waits for random time before resending.

CSMA/CD cont.
Easy to add or take off new nodes without

initialisation and configuration Low overhead at light traffic Unbound overhead at heavy traffic (messages keeps colliding) hence low determinacy and efficiency. Requires detection circuit

Carrier Sense Multiple Access with Collision Avoidance (SCMA/CA) [5]

CSMA/CA cont.
Hybrid between light traffic efficiency of CSMA/CA

and heavy traffic efficiency of token-based protocols. Nodes waits for free network before sending. When collision happens, jam signal is sent to notify all nodes, synchronises clocks and start contention time slot. Unique time slot is assigned to each node Rotate time slot for fairness Network return to normal state when all slots are unused.

CSMA/CA cont.
Variations Reservation CSMA no. of slots equal to no. of nodes

Not practical if networks has many nodes.

No. of slots less than no. of nodes randomly allocate

slots to nodes.

Media access comparison [5]

Automotive standards [7]


Controller Area Network (CAN)
Event triggered, Arbitration

Time Triggered Protocol (TTP)


Time triggered, TDMA

Local Interconnect Network (LIN)


Time triggered, master-slave

Media Oriented System Transport (MOST)

Manufacturing Automation Standards [7]


Controller Area Network (CAN)
Arbitration

Process Network (P-NET)


Token passing and master-slave

PROcess Field Bus (PROFIBUS)


Token passing and master-slave

Factory Instrumentation Protocol (World FIP)


Centralised arbitration

Military Standards [7]


MIL-STD 1553
The current 1553 data bus is widely used in military applications, with a

nominal throughput of 1 Mb/s.

MIL-STD 1773
Mil-Std-1773 defines a fiber optic bus. This system is widely used for on-

board command and telemetry transfer between military spacecraft components, subsystems and instruments, and within complex components themselves. 1773 AS, has a dual rate of 1 Mb/s or 20 Mb/s.

ARINC 429
A commercial aircraft data bus. It is widely implemented in the

commercial aircraft avionics industry. Performance is 100Kb/s or 12.5Kb/s.

References
1. 2. 3.

4.
5. 6. 7.

Upender B, Koopman P, Embedded communication protocol options, Proc. to the 5th annual embbeded system conference, 1993 Rollins L, Embedded communication Kopetz H, Real-time system design principles for distributed embedded applications, Kluver, 1997 Liu J, Real-time systems, Prentice-Hall, 2000 Upender B, Koopman P, Communication protocols for embedded systems, Embedded systems programming, Nov 1994. Vahid F, Givargis T, Embedded system design a unified hardware/software introduction, Wiley, 2002 Bilstrup U, Real-time communication

Das könnte Ihnen auch gefallen