ES Module 2
ES Module 2
• A serial or parallel port can provide certain special features and sophistication by
using a processing element.
• Ports can interconnect by wireless.
• Wireless or mobile communication is serial communication but without wires, can be
over a short-range personal area network as well as long-range wireless network, and
transmission takes place by using carrier frequencies.
• The carrier modulates the serial bits before transmission in air. A receiver
demodulates and retrieves the serial bits back.
Serial and parallel ports of IO devices can be classified into following IO types:
i. Synchronous serial input
ii. Synchronous serial output
iii. Asynchronous serial UART input
iv. Asynchronous serial UART output
v. Parallel port one bit input
vi. Parallel port one bit output
vii. Parallel port input
viii. Parallel port output.
Some devices function both as input and as output: for example, a modem.
• Synchronous serial input/outputs are also called master input slave output (MISO) and
master output slave input (MOSI), respectively.
• They are used for inter-processor transfers and streaming data. The bits are read from
or written on magnetic media such as a hard disk or on optical media such as a CD by
using devices with serial synchronous IO ports.
• The part 6 in Figure 1(a) shows the IO synchronous port when input and output lines
are separate.
• Figure 1(b) shows the asynchronous output serial port line. Denoted by TxD (transmit
data).
• Each bit in each byte is sent at fixed intervals but each output byte is not in
synchronization (it is separated by a variable interval or phase difference).
• The Figure 1(c) shows the starting point of sending the bits for each byte, which is
indicated by a line transition from 1 to 0 for a period T. The sender port of TxD does
not send clock pulses along with the bits.
• The sender transmits bytes at the minimum intervals of n T. Bits start from the middle
of the start indicating bit, where n= 0, 1, ..., 10 or 11 and sends the bits through a 10-
or 11-bit shift register [Figure 1(c)]. The processing element at the port (peripheral)
sends the byte at a port register to where the microprocessor writes the byte.
• Asynchronous serial output is also called UART output if the serial output is
according to a UART protocol.
• Asynchronous serial output is used for modem and printer inputs.
Parallel Port:
A parallel port can have one or multibit input or output and can be bi-directional IO.
i) One bit input, output and IO
ii) Eight or more bit input, output and IO.
• The part 5 in above figure on the left side shows the IO serial port (bi-directional half-
duplex serial port).
• The part 6 in the above figure shows the separate input and output serial port lines.
• There are two types of communication ports for IO’s: serial and parallel.
• Serial line port communication is synchronous when a clock of the master device
controls the synchronization of the bits on the line.
• Serial line port communication is asynchronous when clocks of the sender and
receiver are independent and bytes are received, not necessarily at constant phase
differences.
• Serial communication can be full duplex, which means simultaneously
communication both ways, or half duplex, which means one way communication.
Figure 2: Ten ways by which the synchronous signals with the clocking information from
a master device to slave device
• Figure 2 gives ten methods by which synchronous signals, with the clocking
information, are sent. (i) There are two separate lines for the data bits and clock. The
parallel-in serial-out (PISO) and serial-in parallel-out (SIPO) are used for transmitting
and receiving the signals for data, respectively. (ii) There is a common line and the
clock information is encoded by modulating the clock with the stream of bits. (iii)
There are preceding and succeeding additional synchronizing and signalling bits.
• There are five common methods of encoding the clock information into a serial
stream of the bits: (a) Frequency Modulation (FM) (b) Mid Frequency Modulation
(MFM) (c) Manchester coding (d) Quadrature amplitude modulation (QAM) (e) Bi-
phase coding. The synchronous receiver separates serial bits of the message as well as
synchronizing clock.
Asynchronous Communication:
RS232C/RS485 Communication:
1 RS232C:
a. RS232C communication between DTE (computer) COM (communication) port and
DCE (modem) port. DTE stands for 'Data Terminal Equipment” DCE stands for
"Data Communication Equipment” RS232C is an interfacing signal standard
between DCE and DTE
2 RS485:
a. RS485, now called EIA-485 is a protocol for physical layer in case of two wires full
or half duplex serial connection between multiple points.
b. Transmission is at 35 Mbps upto 10 meter and 100 Kbps up 1.2 km.
c. Electrical signals are between +12 V and -7 V Logic 1 is +ve and 0 is reverse
polarity.
d. Difference in potential defines logic 1 and 0.
e. A converter is used to convert RS232C bits to RS485 and another for vice versa.
UART
• Figure above shows the handshaking signals of RS232C port and UART serial bits in
the output to a serial line device.
• The UART mode is as follows:
1. A line is in non-return to zero (NRZ) state. It means that in the idle state the
logic state is 1 at serial line.
2. The start of serial bits is signalled by 1→0 transition (negative edge) on the
line for a period equal in reciprocal of baud rate. The baud rate is preset at
both receiver and transmitter. The receiver detects the start bit at middle of the
interval, logic 0 state of the transmitter start bit.
3. UART bits, when sending a byte, consist of start bit. 8 data bits (for example,
for an ASCII character or for a command word), option programmable bit (P-
bit) and stop bit, each during the interval δT, when sending or receiving a byte,
the logic states during interval 10 δT or 11 δT are as shown in Figure 1(c) as a
function of time t. A bit period, δT is equal to the reciprocal of baud rate, the
rate at which the bits from UART transmitter are sent. One extra bit before the
stop bit is programmable bit P and is called TB8 at the transmitter and RB8 at
the receiver.
4. The data bits in certain specific cases can be 5 or 6 or 7 instead of 8.
5. The stop bit can be for a minimum interval of 1.5 δT or 2 δT instead of δT in
certain specific cases.
6. Optional programmable bit (P-bit) can be used for parity detection or can be
used to specify the purpose of the serial data bits that are before the P-bit. For
example, P can specify bits as the bits of a control or command word when P
= 1 and data bits when P=0. Bit P can specify the address of receiver when P=
1 and data bits when P=0 so that only the addressed receiver wakes up and
receives the data in the subsequent data transfers. When P is used as
address/data specification, it provides a means to interface a number of UART
devices through a common set of TxD and RxD lines and form a UART bus.
• UART 16550 includes a 16-byte FIFO buffer and is nowadays used more commonly
as compared original IBM PC COM port, which had an 8-bit register at UART port
and was based on 8250 and did not include the FIFO buffer.
HDLC Protocol:
• When data are communicated using the physical devices on a network, synchronous
serial communication may be used. HDLC (High Level Data Link Control) is an
International Standard protocol for a data link network. It is used for linking data from
point to point and between multiple points. It is used in telecommunication and
computer networks. It is a bit-oriented protocol. The total number of bits is not
necessarily an integer multiple of a byte or a 32-bit integer. Communication is full
duplex.
• Table 3 gives the synchronous network device port bits in an HDLC protocol. The
reader may refer to standard textbook, for example, "Data Communications,
Computer Networks and Open Systems" by Fred Halsall from Pearson Education
(1996) for details of HDLC and its field bits.
Figure 3 (a) SPI Port Signal, (b) SPI port programmable features and DDR at port D in
68HC11/12 (c) SCI port in 68HC11/12 (d) SI port in 8051 (e) SDIO communication feature
(f) SDIO card structure
• Figure (b) shows SPI port in 68HC11 and 68HC12 microcontroller. It has full-
duplex feature for synchronous communication.
• There are signals SCLK for serial clock, MOSI and MISO output from and input to
master.
• Figure (b) show programmable features and DDK feature of Port D. An SPM feature
is programmable rates for clock bits, and therefore for the serial out of the data bits
down so the interval of 0.5 µs for an 8 MHz crystal at 65HC11.
• SPI is also programmable for defining the occurrence of negative and positive edges
within bits at serial data out or in .It is also programmable in the open-drain or totem
pole output from a master to a slave and for device selection as master or slave.
• This can be done by a signal to hardware input SS (slave select when D) pin. In the
hardware the slave select pin connects to ‘1’ at the user SI device and to '0' at the
slave. Defining SPI at slave or master can also be done by software. Programming
bit at the device control register does this.
• 68HC12 provides SPI communication device operations at 4 Mbps SPI device
operates up to 2 Mbps in 68HC11.
• Figure (c) shows an SCI port programmable features and DDR port bits in
68HC11/12 SCI is a UART asynchronous mode port. Communication is in full-
duplex mode for the SCI transmission and receiver SCI baud rates are fixed as
prescaling bits.
• Rate not programmable separately for individual serial in and out lines. A baud rate
can be selected among 32 possible ones by the three-rate bits and two prescaling bits.
The SCI receiver has a wake-up feature and is programmable by RWU (Receiver
wakeup Unavailable) bit It is enabled if RWU (1st bit of SCC2, Serial Communication
Control Register 2) is set, and is disabled if RWU is reset.
• If RWU if set, then the receiver of a slave is not interrupted by the succeeding bytes.
SC has two control register bits, TB8 and RB8. RWU feature helps in inter processor
communication, and SCI is defined for transmission and for reception using the SCC2
bits.
• UART communication, when programmed by control bits, is in 11-bit format. A
number of processors can communicate on the bus in UART mode RWU when RB8
and TB8 bits are set.
• There are separate hardware devices at 68HC11 for synchronous and asynchronous
communications. These are SPI and SCI, respectively 68HC12 provides two SCI
communication devices that can operate at two different clock rates Standard band
rates can be set up to 38.4 kbps.
• There is only one SCI and standard baud rates in 68HC11 can be set up to 9.6 kbps
only.
• Figure (d) shows an SI port. SI is a UART mode asynchronous port interface. It also
functions as USRT (universal synchronous receiver and transmitter), SI is therefore a
synchronous asynchronous serial communication port called USART (universal
synchronous-asynchronous receiver and transmitter) port. It is an internal serial IO
device in 8051.
• There is an on-chip common hardware device called Sl in Intel 80196. Its features are
as follows: programmable rates register after loading the 14 bits at BAUD_RATE
register twice.
• SI operates in one of the following ways:
1. Half-duplex synchronous mode of operation, called mode 0 When a 12 MHz
crystal is at 8051 and is attached to the processor, the clock bits are at the
intervals of 1 µs.
2. Full-duplex asynchronous serial communication, called mode 1 or 2 or 3.
Using a timer, the baud rate varies according to the programmed timer bits in
modes 1 and 3. Using SMOD bit at SFR called PCON, when mode 2 is used,
the band rate is programmable at two rates only. It is 1/64 or 1/32 of oscillator
frequency at 8051 TB8 and RB8, when using 11-bit format, provide the 10th
bit for error detection or for indicating whether the sent data byte is a
command or data for the receiving SI device.
• Most microcontrollers have internal serial communication SPI and SCI or SI-like
devices for serial communication.
• Secure Digital (SD) Association created a new flash memory card format, called SD
format.
• This SDIO card for SD format IOs [Figure (e)] has become a popular feature in
handheld mobile devices, PDAs, digital cameras and handheld embedded systems.
• SD card size is just 0.14 x 2.4x3.2 cm. SD card [figure (f)] is also allowed to stick out
of the handheld device open slot, which can be at the top in order to facilitate
insertion of the SD card.
• SDIO is an SD card with programmable IO functionalities such that it (a) can be used
upto eight logical functions, (b) can provide additional memory storage in SD format,
and (c) can provide IOs using protocols in systems such as IrDA adapter. UART
16550, Ethernet adapter, GPS, WiFi, Bluetooth, WLAN, digital camera, barcode or
RFID code reader.
• Figure (e)shows an SDIO communication device port features. It supports SPI, 4-bit
and 1-bit SD formats.
• Both SPI and SD formats specify that there should be interrupt handling of the IOs
and also the CRC checks on transferred data and specifies capabilities for more tries
on error, SD10 card [Figure (f)] has 9 pins are for communication using SPI or SD.
• A processing element function is used as SDIO host controller to process the IOs. The
controller may include SPI controller to support SPT mode for the IO and supports the
needed protocol functionality internally Maximum clock rate supported for SPI is 20
MHz for a maximum of 20 Mbps data transfers.
• There is an optional 4-bit SD mode, which uses 4 data lines. Maximum clock rate
supported is 25 MHz for maximum 100 Mbps SD bit data transfer in 4-bit SD mode
Four serial bits simultaneously transmits at four times clock rate on 4 SD lines in this
mode.
• Four-bit SD mode is compromise between serial and parallel bits communication to
enhance serial transfer rate four times. In 1-bit SD mode, with 25 MHz clock the
maximum data transfer rate is 25 Mbps and one serial bit transmits at 1 line only.
• SDIO card has a control section called function 0. Is necessarily uses function 1 and
optionally uses functions between 2 and 7 (depending on the application in devices
used such as Bluetooth, PHS, GPS or digital camera).
• Each function has PCMIA (Personal Computer Manufacturer Interface Adapter)
defined card information structure and registers, for example, ID number, function
enable bit, supported bus width (1 or 4), voltage, power needs, clock rates and
interrupt enable bit. Each function's specifications for the register hits and protocols
have been defined in SD standard. A standard device driver can therefore be written.
A new function can also be defined.
• Data communication is in 48-bit command/request formal for 48-bit control register/
status register bits and supports data transfer of blocks of bytes. For single byte
transactions, SDIO card may also include a UART 16550 mode communication over
the SD bus.
Figure 4 (a) Parallel input port, output port and a bi-directional port for connecting the
devices
• Figure 4(a) shows the parallel input, output, and bi-directional device ports. Figure
also shows a device interfacing circuit with the processor and system buses. Parallel
port inputs I0 to I7 may be to a keypad controller. Parallel port outputs O0 to O7 may
be output hits to LCD display output controller. BRi, and BR0 are the input and output
data buffers at bi-directional IO port.
• A device port connects to the address bus signals. Ai and Aj through a port address
decoder 𝐼𝑂𝑅𝐷 and 𝐼𝑂W𝑅 are additional control signals for a port device read and
write, respectively, in case of an 80x86 processor, which has IO mapped IOs. The
memory read and write signals, 𝑅𝐷 and W𝑅 are used in the processor with memory
mapped IOs.
• An external output receiving device sends the message ACKNOWLEDGE when the
IO device port ends the BUFFER FULL signal. The processor is sent the
INTERRUPT REQUEST message when BRo transmitting buffer is empty not full
(available for next write) or when the receiving buffer is full (available for next read).
This enables the processor to interrupt and retransmit next byte(s) in next cycle or
receive the byte(s) from input using the appropriate service routines for output or
input from the port, respectively.
• The following characteristics are taken into consideration when interfacing a device
port
1. A device port may have multi-byte data input buffers and data output buffers
Suppose there is an eight-byte buffer. Assuming that a device (as in the 80196
microcontroller) can generate three interrupts. one on receiving a byte, one on
receiving the fourth byte and one when the buffer is full, then the deadline for
servicing these interrupts increases up to eight times compared to the case
when there is a single byte register instead of buffer.
2. A port may have a DDR (Data Direction Register) (as in the 68HC11
microcontroller). This is an advantage since each bit of the port is now
programmable. It can be set as input or output. DDR programs the port bits.
3. Port LSTTL-driving capability and port-loading capability are important
characteristics. A port may be an OD (open drain) port. It has zero driving
capability unless the drain connects the positive supply voltage. If the given
port has OD gates, an appropriate pull-up resistance or transistor is connected
to each port pin to provide the driving capability. The drain or collector
connects to the supply voltage to provide the pull-up.
4. If a given port is quasi bi-directional (as in 80196), then the port pins have
limited driving capability. which suffices for a period of one or a few clock
cycles and drives a LSTTL. gate for that period. When this device port
connects to more than one LSTTL, then an appropriate pull-up circuit will be
required for the port pins.
5. There may be multiple or alternate functionality in the port pins; for example,
80196 input port pins Each pin of P2 has an alternative use as multi-channel
analog input facility for 8 analog inputs. Another example is 8051 two ports
PO and P2. These port bits also have an alternate function in that they bring
out when needed the internal multiplexed buses for the external program and
memories whenever the internal memory is insufficient. Each pin of P3 in
8051 has multiple uses. These a used during serial communication,
timer/counter signals, interrupt-signals, and 𝑅𝐷 and W𝑅 control signals for
external memories, 68HCI ports B and C are of 8 bits each and have
alternative uses for the port pins in it. One of the alternate functions is to bring
out the internal address and data buses, respectively.
6. A port may have provision for multiplexed output to connect to multiple
systems or units.
7. A port may have provision for demultiplexed inputs from multiple systems or
units.
Figure 5(a) Parallel input port A and a four bit output port C used for interfacing a set of 16
keys in a keypad and four menu select keys.
• Figure 5(a) shows how a set of switches or a keypad of 16 keys and four menu-select
keys can interface to the device. Four bits of an 8-bit input port A (A4 – A7) can be
used for the four menu select keys. Assume that the idle state logic state equals 1. The
16 keys can be considered as arranged in four rows and four columns. The other four
bits of A (A0 – A3) are inputs from sense lines from four rows, assume that the idle
state logic state is equal to 1. The four bits of output port C (C0 – C3) are output to
sense lines in four columns.
• The processing element in device activates for polling the output port C ten times
each second and sends C0 – C3=0000 after a wait it reads D0 – D7, and A4 – A7. The
processing element computes the code of the pressed key and generates a status signal
when a key is found pressed from the bit pattern found at A0-A3, the processing
element computes 7-bit ASCII code of the pressed key at that instance and can output
that code at D0 – D6. It also outputs D7=1 when a specific key is found pressed, else
D7 = 0. The processing element also processes the bounces when a key is pressed.
This takes care of bouncing effects. The processing element is thus functioning as a
keypad controller, as it is keypad specific.
• A stepper-motor rotates by one step angle when its four coils are given currents in a
specific sequence and that sequence is altered. For example, assume that currents at
an instance equal +i, 0, 0, 0 in four coils X, X’, Y, Y’.
• The motor rotates by one step when the currents change to 0, +i, 0, 0. The sequences
at intervals of T are sequences changed as follows: 1000, 0100, 0010, 0001, 1000,
0100. [The bits in the nibble (set of 4 bits) rotate by right shift.] Here 1 corresponds to
+i. The motor thus rotates n step angles in interval of (n.T).
• They are changed to rotate the motor in the opposite direction, as follows: 0001,
00010, 0100, 1000, 0001, 0010, [The bits in the nibble (set of 4 bits) rotate by left
shift] Alternately, the coils are given the currents in the sequence of 1100, 0110, 0011,
1001, 1100, 0110, …., or 0011, 0110, 1100, 1001, 0011, 0110, The motor rotates
(n/2) steps in interval equals to (n.T/2). T is the period of clock pulses that drives the
motor by change - of coil currents to the next sequence.
• The coils connect to parallel port 4 output pins, as shown in Figure (c). Alternatively,
a processing element called stepper-motor deriver can be used.
• The driver is given two outputs from the port: clock pulses and a rotating direction bit
r. For example, if r=1, motor rotates clockwise and if r=0 then motor rotates anti
clockwise. The motor rotates as long as clock pulses are given at the output PC4-PC7.
• An LCD controller has a processing element that needs three control signals as inputs
and 8 input/output bits for parallel set of 8 IO bits. Eight-bit parallel output port B
pins PB0 -PB7, connect LCD controller, as shown in Figure 6(a). LCD controller also
connects to one-bit PC0 at an output port for RS (register select) signal.
• When RS is reset as 0, PB0 -PB7 communicates a control word to control register of
the LCD controller. When RS is set as 1. PB0 – PB7 , communicates data to the LCD
controller.
• The LCD controller also connects to a one-bit PC1 at output port for R/W
(read/write). PC1 is set to 1 when status register of LCD controller is read from PB0 -
PB7. PC1 is reset to 0 when writing into LCD controller the PB0 -PB7 bits.
• The processing element generates all signals required for LCD displays. The LCD
controller is sent control words and data words for initialization and programming
PB0 -PB7 bits, PC0 and PC1 outputs for each word to LCD controller.
• The controller then has to be enabled by sending 1 at E pin. It connects to one bit PC 2
at output port for E (enable). There is an interval in which the controller may be in
disabled state. During this interval, it cannot accept instructions or data through the
output of control word or data port pins.
• For example, a control instruction is to clear display. The internal processing element
has to clear the bytes at all the N addresses in N characters LCD display. Assume that
in a typical LCD, it is 150 μs. When the first I is written at E, then 0 is written and a
150 μs delay program is called in-between; the E output creates a negative going
pulse at LCD controller. It disables sending of any control word or data for a period of
150 μs.
• LCD controller has M displayed character ROM addresses. M=128 for 128 ASCII
codes. For each distinct ASCII character, there is a 64-bit graphic. The LCD
controller has an internal CGRAM (character graphic RAM). For each ASCII
character, 8 bytes are sent from font table ROM to CGRAM address. CGRAM has N
addresses. N=64 when 64 characters are displayed at the LCD. An address changes by
incrementing or decrementing the cursor position to the previous or next address on
screen. By sending appropriate control words followed by data, the LCD controller is
programmed to display up to 64 characters on the screen.
• Touchscreen is an input device cum LCD display device. It is also interfaced through
IO port B functioning as data bus far display, control and status words to an LCD
display device controller.
• The interface uses an additional input port A for a byte, which corresponds to the
address of the position touched on the screen. A touchscreen is either resistive or
capacitive.
• On touching at a position on the screen, there is change in resistance or capacitance,
which depends on the touched position. A touch can be finger or stylus.
• The stylus is about one-fifth thinner than a pencil and about half of the length of the
pencil. The resistance or capacitance is a part of a bridge circuit that generates an
analog voltage. An 8-bit ADC is given an input from a bridge circuit and the 8-bit
ADC output connects to 8-bit input port A.
• Eight-bit parallel IO port B pins PB0-PB7, E, 𝑅𝑆 and R/W and eight-bit parallel input
port A connect to touch screen circuit ports as shown in Figure 6(b). An interrupt
signal INTR is issued whenever the screen is touched.
WIRELESS DEVICES
• Wireless devices have become very common in recent years for serial transmission of
bits.
• Wireless devices use infrared (IF or radio frequencies after suitable modulation of
data bits. IrDA, Bluetooth, WiFi, 802.11 WLAN and ZigBee have become popular
protocols for wireless communication of data bits from a source to the receiver.
• An IR source communicates over a line of sight and the receiver phototransistor is
used for detecting infrared rays. Example of applications of IR communication
RaviKiran.H.N., Asst. Prof., Dept. of ECE,BGSIT 25
MODULE 2
includes handheld TV remote controllers and robotic systems. IR devices use IrDA
protocol.
• Radio frequencies communicate over short and long distances. The transmitter and
receiver use antenna to transmit and receive signals and modulator and demodulators
to carry the data bits using RP frequency Mobile GSM wireless devices use 890-915
MHz, 1710-1785 MHz, or 1850-1910 MHz bands Mobile CDMA wireless devices
use 2 GHz carrier frequencies. Bluetooth and ZigBee wireless device use 2.4 GHz or
900 MHz frequencies.
• The number of frequency bands is limited, while a large number of devices may need
to communicate. Therefore, time and frequency division multiplexing are used. An
innovative method is radio frequency hopping over a wider spectrum, as in Bluetooth
devices. The transmitted carrier frequencies hop among different channels at a given
hopping rate. The transmitter modulates the data bits as per protocol specifications.
• The receiver tunes to these hopped carrier frequencies at a given hopping rate and in
the same hopping sequence as the ones used by the transmitter. The receiver
demodulates and detects the data bits as per physical layer protocol used for
transmitting.
Timing Device
• A timer device is a device that counts the regular interval (δT) clock pulses at its
input. The counts are stored and incremented on cache pulse. It has output bits (in a
count register or at the output pins) for the period of counts.
• The counts multiplied by interval δT gives the time. The (counts-initial counts) x δT
interval gives the time interval between two instances when the present count bits are
read and the initial counts are read. It has an input pin (or a control bit in a control
register) for resetting to make all count bits = 0.
• It has an output pin (or a status bit in status register) for output when all count bits
equal 0 after reaching the maximum value, which also means timeout on the
overflow.
Counting Device
• A counting device is a device that counts the input for events that may occur at
irregular or regular intervals. The counts give the number of input events or pulses
since it was last read.
Blind Counting Synchronization
• A counting device may be a free running (blind counting) device with a prescalar for
the clock input pulses and for comparing the counts with the ones preloaded in a
compare register.
• The prescalar can be programmed as p=1,2,4,8,16, 32..., by programming a prescalar
register. It divides the input pulses as per the programmed value of p. It has an output
pin (or a status bit in the status register) for output when all count bits equal 0 after
reaching the maximum value, which also means after timeout or on overflow.
• The counter overflows after px 2n x δT interval. It can have an input pin (or a control
bit in control register) for enabling an output when all count bits equal count
preloaded in the compare register. At that instance, a status bit or output pin also sets
in and an interrupt can occur for event of comparison equality. This device is useful
for the alarm or processor interrupts at preset instances or after preset intervals with
respect to another event from another source.
• The counting device may be the free running (blind counting) device with a prescalar
for the clock input pulses, for comparing the counts with the ones preloaded in a
compare register as well as for capturing counts on an input event. This device
functions are similar to the above, but there is an addition input pin for sensing an
event and for saving the counts at the instance of that event. At this instance, a status
bit can also set in and a processor interrupt can occur for the capture event.
• The above device is useful for alarm generation and processor interrupts at the preset
times as well as for noting the instances of occurrences of the events and processor
interrupts for requesting the processor to use the captured counts on the events. Alarm
generation can be synchronized with the input capture events. Writing counts into the
compare register does this. Counts in the register are set equal to capture register
counts plus additional counts, which define the interval after which an alarm is to be
generated.
• At least one hardware timer device is a must in a system. It is used as a system clock.
Let number of system clock ticks needed before a system interrupt occurs equals
numTicks.
• The hardware timer gets the input from a clock-out signal from the processor and
activates the system clock tick as per the numTicks preset at the hardware timer on
each system clock tick, the user-mode task interrupts and the system take control.
• The system enables the privileged mode actions and the CPU context switches as per
the preset state of the system. The system control actions are performed by operating
system (software).
• Figure 7 shows hardware timer control bits (and signals) and status flags. Control bits
are as per the hardware signals and corresponding bits at control register. Control bits
(or signals) can be of nine types.
• These are: (i) Timer enable (to activate a timer). (ii) Timer start (to start counting at
each clock input). (iii) Timer stop (to stop counting) from the next clock input. (iv)
Presealing bits (to divide the clock-out frequency signal from the processor). (v) Up
count Enable (to enable counting up by incrementing the count value on cache clock
input) (vi) Down count Enable (to decrement on a clock input). (vii) Load enable (to
RaviKiran.H.N., Asst. Prof., Dept. of ECE,BGSIT 28
MODULE 2
enable loading of a value at a register into the timer). (viii) Timer-interrupt enable (to
enable interrupt servicing when the timer outs (overflows) and reaches count value
equals 0) (ix) Time out enable [to enable a signal when the timer overflows (reaches
count equals 0)] to another device.
Figure 7: Signals, Clock-inputs, Control bits and Status flags at registers or memory in a
hardware timer device.
• Status flag is as per the corresponding hardware signal time-out from the hardware
timer. This flag and signal set when the timer all bits (count value) reach to 0.
• Table 7 lists ten forms of the timers for the uses listed in Table 5. Software timer
(SWT) is an innovative concept.
The system clock or any other hardware-timing device ticks and generates one interrupt or a
chain of interrupts at periodic intervals. This interval is as per the count-value set. Now, the
interrupt becomes a clock input to an SWT. This input is common to all the SWTs that are in
the list of activated SWT. Any number of SWTs can be made active put in a list of active
SWTs. Each SWT will set a status flag on its timeout (count-value reaching 0). Figure 7
shows the control bits and status bits in an SWT. SWT control bits are set as per the
application. There is no hardware input or output in an SWT. A flag sets when the SWT
count-value reaches 0 after reading the maximum. Table 8 lists all the variables of SWT. It
includes the control-bits and status flags. SWT thus has similar control variables and flags as
in the hardware timer or counter.
SWT actions are analogous to that of a hardware timer. While there is physical limit (1, 2 or 3
or 4) for the number of hardware timers in a system, SWT can be limited by the number of
interrupt vectors provided by the user. Processors (microcontrollers) also define the interrupt
vector addresses of two or four SWTs.
WATCHDOG TIMER:
• Watchdog timer is a timing device that can be set for a preset time interval, and an
event must occur during that interval else the device will generate the timeout signal.
• For example, we anticipate that a set of tasks must finish within 100ms. The watchdog
timer disables and stops in case the tasks finish within 100ms. The watchdog timer
generates interrupts after 100ms and executes a routine that runs because the tasks
failed to finish in the anticipated interval. A software task can also be programmed as
a watchdog timer. A micro-controller may also provide for the watchdog timer.
• The watchdog timer has a number of applications. One application in a mobile phone
is that the display is turned off in case no GUI interaction takes place within a
specified time. The interval is usually set at 15, 20. 25, or 30s in a mobile phone. This
saves power.
• An application in a temperature controller is that if a controller takes no action to
switch off the current within the preset time, the current is switched off and a warning
signal raised, indicating controller failure. Failure to switch off current may cause a
boiler in which water is heated to burst.
• A watchdog timer has a number of applications and is a timing device such that it is
set for a preset time interval and an event must occur during that interval else the
device will generate a timeout signal and interrupt for the failure to get that event in
the watched time interval.
• A real time clock (RTC) provides system clock and it has a number of applications. It
is a clock that generates system interrupts at preset intervals. An interrupt service
routine executes on each tick (timeout or overflow) of this clock. This timing device
once started is generally never reset or never reloaded to another value.
Figure 9 A processor of embedded system connected to the system memory bus and
networked to other systems through a serial bus.
I2C BUS:
• Assume that there are number of device circuits in a number of processes in a plant.
One IC each for measuring temperatures and pressures. These ICs mutually network
through a common synchronous serial bus. I2C (inter IC connect) bus is popular bus
for these circuits.
• There are three I2C bus standards: Industrial 100 kbps I2C, 100 kbps SM I2C and 400
kbps I2C.
• The I2C bus has two lines that carry its signal--one line is for clock and one line is for
bidirectional data. There is a protocol for I2C bus.
Fig.(a) shows the signals during a transfer of a byte when using I2C bus.
• Each device has an address using which the data transfers take place.
• The master can address 127 other slaves at an instance.
Sixth field of 1-bit It is negative acknowledgment bit (NACK) from the master. If active,
then acknowledgment, after a transfer is needed from the slave, else
acknowledgment is expected from the slave.
Seventh field of 1-bit It is a stop bit like in UART.
• Therefore, a pull-up resistance of 2.2k or an active circuit for pulls up of line to logic.
I for on each line is essential.
• I2C is a serial bus for interconnecting ICs. It has a start bit and stop bit like in a
UART.
• It has seven fields for the start, 7-bit address, defining a read or write, defining a byte
as an acknowledging byte, data byte, NACK and end.
CAN Bus:
• Number of devices and controller are located and are distributed in a car. An
automobiles uses number of distributed embedded controllers, including those for
brakes, engine, electric power, lamps, inside temperature control, air conditioning,
gate, front dash board display, meter display panel and cruising control.
• Embedded controller must network through a bus. CAN (controller area network) is
standard bus in distributed network. It is mainly used in automotive electronics. It is
also used medical electronics and industrial plant controllers.
Figure 11 (a) Network during a transfer of data when using the CAN bus
(b) Format of the Bits at CAN Bus
• The CAN bus [figure 11(a)] network has a serial line, which is bi-directional.
• CAN bus has multi master and multicast feature. A CAN device using CAN controller
receives or sends a bit at any instances by operating at the maximum rate of
1Mbps(bit-period = 1μs).
• It employs twisted pair connection of 120 ohm line independence at each controller
node. The pair can run up to a maximum length of 40m.
1. CAN serial line is pulled to logic level 1 by a resistor(active or passive) between
the line and +4.5v to +12.3v. Line is at logic 1 in its idle state, also called
recessive state.
2. Each node has a buffer gate between an input pin and a CAN serial line. A node
gets the input at any instance from the after sensing that instant when the line is
pulled down to 0. The latter is called dominant state.
3. Each node has current driver circuit output between pin and serial line. The node
sends a bit to line by pulling the line 0 by its driver for a bit period. An NPN
transistor is used current-driving transistor, the emitter of which also connects to
the line ground and collector connects to line. Using a driver (consisting of a
buffer inverter gate connected to the base of NPN transistor), the node can pull
the line to 0. Which is otherwise at logic 1 in its idle state. This lets other nodes
sense the input.
4. A node sends the data bits as data frame. Data frames always start with 1 and
always end with seven 0s. Between two data frames, there are minimum three
fields. Table 10 gives the details of each field in a CAN frame. Figure 1.(b) shows
the format of the bits in a CAN frame.
5. The CAN-bus line usually interconnects to a CAN controller between the line and
host node. [A host node is one that has controller for use as bus master.]The line
gives input and gets output and gets output during reception and transmission
using physical and data link layers at host node. The CAN controller has a
BIU(bus interface unit consisting of buffer and driver),protocol controller, status-
cum-control registers, receivers-buffer and message objects. These units connect
the host node through host interface circuit.
6. There is an arbitration method called CSMA/AMP(Carrier Sense Multiple Access
with Arbitration on Message Priority). A node stops transmitting on sensing a
dominant bit, which indicates that another node is transmitting.
First field of 12bits This is arbitration field, which contains the packets of 11-bit
destination address and RTR bit(Packet means a set of bits sent on
the bus). RTR stands for ‘Remote Transmission Request’.
The addressed device is at destination address specified at 11-bit
subfield and RTR is defined on the basis of whether the data byte
being sent is a data for the device or a request to the device.
11 bit address identifies the devices to which data is being sent or
the request being made. When an RTR bit is at 1, it means this
RaviKiran.H.N., Asst. Prof., Dept. of ECE,BGSIT 36
MODULE 2
Fourth field (third if data It is CRC (Cyclic Redundancy Check) field with 15-bits CRC
plus 1-bit de3limiter bit. The receiver node uses it to detect errors,
field has no bit present) is of
if any, during the transmission.
16 bits
Fifth field of 2 bits First bit ‘ACK slot’. The sender sends it as 1 and the receiver,
which would send back 0 in this slot when it detects error in
reception. The sender, after sensing 0 in ACK slot, re-transmits
the data frame. The second bit is the ‘ACK delimiter’ bit. It
signals end of ACK field. If the transmitting node does not
receive any acknowledgment of data frame within a specified time
slot. It should re-transmit.
Sixth field of 7 bits This is the end-of-the-frame specification and has seven bits
USB Bus:
• Universal Serial Bus (USB) is a bus between host system and number of
interconnected peripheral devices. A maximum 127 devices can connect to a host.
• It provides a fast (up to 12 Mbps) and as well as a low speed (up to 1.5Mbps) serial
transmission and reception between host and serial devices.
• A USB host, which includes controller for function as bus master can connect flash
memory cards, pen-like memory devices, digital camera, printer, mice, PocketPC and
video games.
• There are three standards: USB 2.0 (low speed 1.5 Mbps 3 m channel along with a
high speed 12 Mbps, 25 m channel); USB 2.0(high speed 480 Mbps 25 meter
channel), and wireless USB(high speed 480 Mbps 3 m).
• USB protocol has this feature--- a USB device can be hot plugged (attached),
confused and used, reset, reconfigured and used; it can share bandwidth with other
devices, detached(while others are in operation) and reattached.
• USB host connects to devices or nodes using USB port-driving software and the host
controller connected to a root hub.
• USB bus cable has 4 wires, one for =5v, two for twisted pairs and one for ground.
There are termination impedances at each end that are as per the device speed.
Electromagnetic Interference (EMI)-shielded cable is used for 15Mbps USB devices.
• USB is a polled bus. The host controller circuit regularly polls the presence of a
device as scheduled by the software. Its sends a token packet. The token consists of
fields for type, direction, USB, device address, and device end-point number.
• The device does the handshaking through a handshake packet, indicating successful or
unsuccessful transmission. A CRC field in a data packet enables transmission error
detection at the receiver.
• USB supports three types of pipes—
1 ‘Stream’ with no USB- defined protocol. It is used when the connection is
already established and the data flow starts.
2 ‘Default control’ for providing access.
3 ‘Message’ for the control functions of the device.
• The host configures each pipes for followings:
a. Data bandwidth to be used
b. Transfer service type and
c. Buffer sizes.
• Wireless USB is wireless extension of USB 2.0 and its operates at UWB (ultra wide
band) 3.1 to 10.6 Ghz frequencies. It is used for short-range personal area network
(high speed 480 Mbps, 3 m or 110 Mbps, 10 m channel).
USB is a serial bus that interconnects a system. It attaches and detaches a device from
the network. Its uses a root hub. Nodes containing the devices can be organized like tree
structure. It is mostly used in networking the IO receives like scanner in a computer
system. Wireless USB is used for remote connections without wires.
• Digital video cameras, digital camcorders, digital video disk (DVD), set-top boxes,
and music systems multimedia peripherals, latest disk drives, and printers need a high
speed bus standard interface for communicating directly to a peripheral computer.
Firewire (IEEE 1394b) is a standard for 800 Mbps serial is synchronous data
transfers.
• A FireWire IEEE1394 port can operate at up to 400 Mbps and the latest machines
include FireWire ports that support IEEE 1394b which operate up to 800 Mbps.
• Since FireWire can transfer data at a guaranteed rate, it is also used in real time
devices, such as video device transfers.
• A single 1394 port can interface up to 63 external FireWire devices. It supports both
plug and play and hot plugging.
• It also provides self-powered and bus-powered support on the bus.
• FireWire is a high speed 800Mbps serial bus for interconnecting a system with
multimedia streaming devices and systems.
Fig. 12 (a) and (b) A processor of embedded system connected to system memory bus
and networked to other subsystems through a parallel bus using PCI and AMBA-APB bridges
• A switch, popularly called PCI bus interface, switches a processor communication with
the memory bus to PCI bus. In most systems, the processor has a single data bus that
connects to a switch module such as the PCI bridge found in many PC systems,
although some processors integrate the switch module onto the same integrated circuit
as the processor to reduce the number of chips required to build a system thereby
reducing the system cost.
• The switch communicates with the memory through memory bus and dedicated set of
wires that transfer data between these systems. A separate IO bus connects the switch to
IO devices. Separate memory and IO buses are used because the IO system is generally
designed for maximum flexibility, to allow as many different IO devices as possible to
interface to the computer, while the memory bus is designed to provide the maximum
possible bandwidth between the processor and memory system.
• Two old interconnection buses for communication between the host and a device are
ISA and EISA (Extended ISA). A new interconnection for the bus is either PCI or
PCI/X. [A variant of it is Compact PCI (cPCI).]
ISA Bus:
• ISA bus (used in IBM Standard Architecture) connects only to an embedded device that
has an 8086 or 80186 or 80286 processor, and in which the processor addressing and
IBM PC architecture addressing limitations and interrupt vector address assignments
are taken into account. There is no geographical addressing.
• The limitation for memory access by a system using the ISA bus of the original IBM
PC were as follows: ISA bus memory accesses can be in two ranges, 640 to 1 MB and
15 to 16 MB. The former range also overlaps with the range used by video boards and
BIOS. [Note: Linux OS does not support the second range for accessing directly a
device.]
• The IO port address limitations for devices are as follows: The 8086 to 80286 processor
has IO mapped IOs, not memory mapped IOS. Though the instruction set provides for
IO instructions for 64 kB IO addresses, the IBM PC configuration ignores the address
lines A₁0 to A₁5 and these are not decoded. Therefore, only 1024 IO port addresses are
available. A hexadecimal addressing scheme with three nibble addressing between 000
to 3FF only can be used for a device. The A10 to A15 bits are thus immaterial.
• The following are the addresses allocated in IBM Standard Architecture (ISA).
1. Addresses allocated are 0x000-0x00F for DMA chip 8237. The addresses for
other devices are as follows.
• Recently, the most used synchronous parallel bus in the computer system for
interfacing PC-based devices is PCI (Peripheral Component Interconnect). PCI
provides a superior throughput than EISA. It is almost platform independent, unlike the
ISA, which depended on the IBM PC platform, interrupt vectors, IO addresses and
memory allocations. Its clock rate is nearest to the submultiple of the system clock. PCI
provides three types of synchronous parallel interfaces. Its versions are 32/33 MHz,
64/66 MHz, PCI-X 64/100 MHz, PCI Super V2.3 264/528 MBps 3.3 V (on a 64-bit
bus), 132/264 (on a 32-bit bus) and PCI-X Super V1.01a for 800 MBps 64-bit bus 3.3
V.
• PCI bus has 32-bit data bus extendible to 64 bits. In addition, it has 32-bit addresses
extendible to 64 bits. Its protocol specifies the interaction between the different
RaviKiran.H.N., Asst. Prof., Dept. of ECE,BGSIT 42
MODULE 2
Fig. 13: 64 bytes at standard device independent configuration registers in a PCI device or
host
• A PCI controller must access one device at a time. Thus, all the devices within host
computer can share IO port addresses and memory locations but cannot share the
configuration registers. That means that a device cannot modify other configuration
registers but can access other device resources or share the work or assist the other
device. If there are reasons for it doing so, a PCI driver can change the default bootup
assignments on configuration transactions.
• A device can initialize at booting time. This helps in avoiding any address collision. A
PCI device on bootup disables its interrupt. Its address space is inaccessible and only
the configuration registers space remains accessible. PCI BIOS with the device
performs the configuration transactions and then memory and address spaces
automatically map to the address space in host computer.
ARM Bus:
• ARM processor interfaces the memory, external DRAM (dynamic RAM controller and
on-chip IO devices, which connect to 32-bit data and 32-bit address line at high speed
using AMBA (ARM Main Memory Bus Architecture)-AHB (ARM High Performance
Bus).
• Figure 12(b) shows AMBA-AHB and AMBA-APB bridges. The bridges interface the
memory and external-chip IO devices, which operate at low speed using AMBA-APB.
The maximum AHB bps bandwidth is sixteen times the ARM processor clock.
• A switch, popularly called the AMBA-APB bridge, switches ARM CPU
communication with the AMBA bus to APB bus. The ARM processor-based
microcontroller has a single data bus in AMBA-AHB that connects to the bridge, which
integrates the bridge onto the same integrated circuit as the processor to reduce the
number of chips required to build a system.
• This reduces the system cost. The bridge communicates with the memory through an
AMBA-AHB, a dedicated set of wires that transfer data between these two systems. A
separate APB IO bus connects the bridge to the IO devices. Separate AMBA-AHB and
APB IO buses are used because the IO system is generally designed for maximum
flexibility, to allow as many different 10 devices as possible to interface to the
computer, while the memory bus is designed to provide the maximum possible
bandwidth between the processor and the memory system.
• The APB can connect the I-C, touchscreen, SDIO, MMC (multimedia card), USB,
CAN and other required interfaces to an ARM microcontroller.
interactive video and broadband IPv6 Internet. An embedded system may need to
connect IO system using gigabit parallel synchronous interfaces. The following are
advanced bus standard and proprietary protocols developed recently.
1. GMII (Gigabit Ethernet MAC Interchange Interface).
2. XGMI (10 Gigabit Ethernet MAC Interchange Interface)
3. CSIX-1. 6.6 Gbps 32-bit HSTL with 200 MHz performance.
4. RapidIo™M Interconnect Specification v1.1 at 8 Gbps with 500 MBps
performance or 250 MHz dual direction registering performance using 8-bit
LVDS (Low Voltage Data Bus).
HTTP request and response. The creation is either at CGI or processing program or
script or at client (Browser). A prior exchange may then depend on this cookie. By
this mechanism, the stateless feature of HTTP is compensated. The cookie provides
a HTTP State management mechanism.
3. HTTP is a file transfer-like protocol for HTML (hyper text markup language) files.
This makes it easy to explore a web site URL. A request (from a client) is sent and
reply (response from a server)is received.
4. The HTTP protocol is very light (a small format) and thus speedy as compared to
other existing protocols. HTTP is able to transfer any type of data to a browser ( a
client) provided it is capable of handling that data.
5. Besides simplicity, another important feature of HTTP is its flexibility. Assume we
are surfing the web and our connection breaks (or user does so): then too we can
start surfing on the Net from just that point again. Being a stateless protocol. HTTP
does not keep track of the state as FTP does. Each time a connection establishes
between the web server and the client (browser), both these interpret this
connection as a new connection . Simplicity is a must because a web page has its
URL resources distributed over a number of servers.
6. HTTP protocol is based on the Object Oriented Programming System (OOPS).
Methods are applied to objects identified by URL. It means that as in the normal
case of Object Oriented Program , the various methods apply on an object.
7. From HTTP 1.0 and 1.1 version onwards, the following features have been
included:
(a) Multimedia file access is feasible due to provision or the MIME (Multipurpose
Internet Mail Extension) type file definition.
(b) From HTTP 1.1 version onwards, there are eight specified methods and
extension methods. An extension method is method added for a specific HTTP.
There can be none or one or several extension methods. The HTTP specific
methods are as follows. [Link] [Link] [Link] [Link] 5. PUT 6.
DELETE [Link] 8. OPTIONS. (Last four from 1.1). In earlier versions, GET
follows a space and then document name .Server returns the documents and
closes the connection. From 1.1, the POST method has permitted form
processing , as using it the client transmits the form data or other information to
the server. From 1.1, the server does not close the connection after response and
thus response can be processed before it is sent.
(c) A Provision of user authentication exists besides the basic authentication
introduced from HTTP 1.1 version onwards , Digest Access Authentication
prevents the transmission of username and password as HTML or text.
(d) A host header field adds to support those ports and virtual hosts that do not
accept or send IP packets. From HTTP 1.1 version onwards , An error report to
client when a HTTP request is without a host header field.
(e) From HTTP 1.1 version onwards , an absolute URL is acceptable to the server.
Earlier only proxy server accepted that.
(f) Status codes in the response.
(g) Caching of a resource is provided at server (and proxy).
(h) Byte range specification helps in large response in parts.
(i) Selection among various characteristics on retrieval by the client is feasible
when a server sends response to client request. For example, two characteristics,
language and encoding can be specified in server environment variables while
the client sends request header for retrieving a resource. The resource then
retrieves in that language and with that encoding. The contents sent to client do
not change, only the way in which these are presented to the client change.
(j) Length specification helps in presentation in chunks.
8. An HTTP message header during a request from a client or during from server
consists of two parts (a)A start-line, none or several message- headers(fields) and
empty line, and (b) Body of message . HTTP specifies that request message to
consist of request message headers. HTTP also specifies that response message to
consist of response message headers.
9. HTTP provides for entity headers. These contain information about entity body
contained in the message, or in case body is not present then information about the
entity, not its body. For example, information of content length in bytes.
10. HTTP interaction scheme is that a client requests server directly or through proxy
or a gateway. An HTTP message is therefore either request or response. The
format of the messages called RFC 822, specifies ways of sending text messages
on the Internet. The message during request from client or during response from
server consists of two parts. (a) Start-line , none or several message-
headers(fields)plus empty line, and (b) Body of the message. The start line is either
a ‘request-line’ or ‘status-line’ for request-or response-message, respectively.
after deleting the header bits from the received transport layer header. Header bits add
at the transmitting time in the application or session layer bytes.
Ethernet:
(ii) The inventor of Ethernet LAN is Robert Metcalfe. At present, about one third of the
LANs in the world are the Ethernet LANs, and in each frame, there is a header like in
a packet. In Ethernet LAN standard is IEEE 802.2(ISO 8802.2).
(iii) It is a protocol for local network of computers, workstation and devices. LAN is used
for sharing local computers, systems and local resources such as printers, hard disk
space, software and data. Table below gives the features of the Ethernet LAN devices.
(iv) Data for transmission fragments into the frames. Each frame has a header. Firstly, the
header has eight bytes, which defines a preamble.
(v) The preamble indicates the start of a frame and is used for synchronization. Then the
header has six bytes of destination address. Six bytes of source address the follows the
destination address. The there are six bytes. These are for the type field.
(vi) These are meaningful only for the higher network layers and the length definition.
The minimum 72 bytes and maximum 1500 bytes of data follow the length definition.
Lastly, there are 4 bytes for CRC check for the frame sequence check.
Connectivity to Internet and Intranet Yes. Outside a LAN the internet Protocol addresses are sent.
Bluetooth:
802.11:
(xxxix) Wireless LAN uses IEEE standards 802.11a to 802.11g. Data transfer rates are
1 and2 Mbps.
(xl) The 802.11b is called wireless fidelity (Wi-Fi). 802.11b support data rates of 5.5
Mbps by mapping 4 bits and 11 Mbps mapping 8 bits simultaneously during
modulation.
(xli) A given set of the LAN-station access points network together and the set is
called extended service set (ESS).
(xlii) There are two types of wireless service sets.
(i) One service set has one wireless Station. Which communicates to an access
point, also called a hotspot. The service set is called basic service set (BSS).
(ii) The other service set has several stations. It is called independent basic service
set (IBSS). It has no access point. It does not connect to the distribution
system. It may have multiple stations, Which also cannot communicate among
themselves. IBSS supports ad-hoc network.
(xliii) 802. 11 provides specifications for physical layer and data link layers.
(xliv) The data link layer specifies a MAC layer. The MAC layer uses carrier sense
multiple access and collision avoidance (CSMA/CA) protocol. A station listening to
the presence of the carrier during a time interval is called distributed inter-frame
spacing (DIES) interval. If the carrier is not sensed (detected) during DIFS, then the
station backs of for a time interval to avoid call list and retries after that interval.
(xlv) A receiver always acknowledges within a short interframe spacing (SIFS).
(xlvi) Acknowledgment is made after Successful CRC (cyclic redundancy check),
there is no acknowledgement within SIFS, then the transmitter retransmits and up to
7retransmission attempts are made.
(xlvii) There is a packet called request to send (RTS), which is first sent. If the Other
end responses by the packet call clear to send (CTS), then the data is transmitted.
MAC layer specifies power management, handover and registration of roaming
mobile nodewithin the backbone network at a new BSS within the ESS.
(xlviii) There are three communication methods at the physical layer. WLAN can use
FHSS or DSSS or Infrared 250 ns pulses.
(xlix) The physical layer has two sublayers.
(l) 802.11b has three sublayers: one is Physical Medium Dependent (PMD) protocol
which specifies the modulation and coding methods; the second is the Physical Layer
Convergence Protocol (PLCP) which specifies the header and payload for
transmission.
(li) It specifies the sensing of the carrier at receiver and how packet formation takes place
at the transmitter and packets assemble at the receiver- It specifies ways to converge
MAC (Medium Access Control) to PMI) at transmitter and separate MAC (Medium
Access Control) from PMD at the receiver.
(lii)An additional sub layer in 802.11b Specifies Complementary Code Keying (CCK).
ZigBee:
(liii) ZigBee is an IEEE standard 802.15.4 protocol. The physical layer radio operates at
2.4 GHz band carrier frequencies with DSSS (direct sequence spread spectrum),
supports range up to 10 m.
(liv) Data transfer rate supported is 250 kbps, it supports sixteen channels, Figure
15(c) shows a handheld device
(lv) Connected to other devices through wireless protocol using ZigBee.
(lvi) The ZigBee network is self-organizing and supports peer-to-peer and mesh
networks.
(lvii) ZigBee protocol supports large sensors, lighting devices, air conditioning,
industrial controller and other devices for home and office automation and their
remote controland formation of WPAN (wireless personal area network).
(lviii) ZigBee network has a ZigBee router, end devices and coordinator.
(lix) ZigBee router transfers packets from a neighbouring source to a nearby node
in the path to destination, The coordinator connects one ZigBee network with
another, connects to WLAN or cellular network. ZigBee end devices are transceivers
of data.
(lx) Its communication latency is 30ms. Protocol stack overhead is 28 kB.