input/output and communication chapter 10 part ii cs 147 andy lai
Post on 22-Dec-2015
218 views
TRANSCRIPT
![Page 1: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/1.jpg)
Input/Output and Communication
Chapter 10 Part II
CS 147
Andy Lai
![Page 2: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/2.jpg)
Introduction
I/O Processors– Input-Output Processor
Review of DMA Block transfer commands ALU command Control commands
Serial Communication– Explanation of the Basic– Asynchronous serial communication– Synchronous transmission– Introduction of Universal Asynchronous Receiver Transmitter
(UARTs)
![Page 3: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/3.jpg)
Review of Direct Memory Access
DMA improves system performance by speeding up data transfer between memory and I/O System
Bypass CPU, allow CPU to be use in another process.
DMA controllers must manipulates each data transfer from I/O devices, and can only read.
![Page 4: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/4.jpg)
Direct Memory Access
CPU
I/ODevices
Memory
Direct Memory Access Controller
(DMA)
Address Bus
Data Bus
Control Bus
![Page 5: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/5.jpg)
I/O Processors (Introduction)
I/O Processors also known as: I/O Controllers Channel Controllers Peripheral Processing units (PPU) Data Channel
![Page 6: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/6.jpg)
CPU Connection to I/O Devices
![Page 7: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/7.jpg)
I/O Processors
I/O Processors handles all of the interactions between the I/O devices and the CPU.
I/O Processors communicates with input and output devices through separate address, data, and control lines. This provides an independent pathway for the
transfer of information between external devices and internal memory.
Relieves the CPU of ‘I/O device chores’
Work Load
CPU
![Page 8: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/8.jpg)
CPU with I/O Processor
![Page 9: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/9.jpg)
TERMS
Input-Output Processor (IOP)– Classified as a processor with direct memory
access capability.– IOP fetches and execute its own instructions
Independent of the CPU CPU initiating the IOP program
– CPU is the master processor. IOP is considered the slave processors
– There can be more than one or more IOP’s
![Page 10: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/10.jpg)
Three Forms of Commands
Block transfer commands– Moves blocks data to IOP. Usually these instructions swap
pages in and out of physical memory, and to load programs from disk memory.
Arithmetic, logic, and Branch operations– IOP uses ALU instructions to manipulate the data so the
process time for CPU is shorten.
Control Command– Controls hardware.
Ex: rewind the tape on a tape drive or ejecting a CD from a drive.
![Page 11: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/11.jpg)
The Process of the IOP
• CPU Instructions• Sends Command to test IOP
path• Status approved and sends
I/O commands• CPU continues with other
process• Request IOP status• Check status for correct
transfer.
• IOP Operations• Transfer status to Memory
location• Access memory for IOP
Commands• Conduct I/O transfer• I/O transfer completed, send
status to CPU• Transfer status to memory
location
![Page 12: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/12.jpg)
Serial Communication
Two forms of communication– Parallel communication
Transfers more than one bit of data at a given time N-bits transmitted at the same time through n- wires Faster but requires many wires and is used in short distances EX: Input/output devices, DMA controllers, and I/O processors
– Serial Communication Serial communication refers to devices that cannot handle more than
one bit of data at any given time by design. Requires one wire and is slower. Usually CPU use Parallel communication, if the device is serial, then
the data is converted to use Parallel communication EX: Modems
![Page 13: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/13.jpg)
Two types of Serial Communication
Asynchronous Serial Communication
– Interacts with devices outside of the computer
Ex: modem connecting to another computer
– Transmit individual bytes instead of large blocks
– Do not share a common clock.
Synchronous Serial transmission
– Transmits block of data in frames.
Frames are had head in front of the data and a tail at the end of the data.
– The head and tail contain information that allows the two computers to synchronize their clocks
![Page 14: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/14.jpg)
Serial Communication Basics
There are parameters that must be agreed upon between the two computer system. One of them is the speed.
– Also known as Handshaking Determine speed and transfer protocol
– Speed is measured by the number of bits per second (bps)– Also Know as Baud Rate
Device must agree on number of data bits per data transmission.
– Parity Bits Error checking
– Stop Bits End of transmission
![Page 15: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/15.jpg)
Illustration of Handshaking
I am 14,400 bpsOk
I am 28,800 bpsI will speak 14,000 for youData
![Page 16: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/16.jpg)
Asynchronous Serial Communication
Each byte is transmitted separate entity.– The Device must be able to recognize:
When transmission is occurring When to read a bit of data When the transmission ends When the transmission is idle (no data being transmitted)
![Page 17: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/17.jpg)
Asynchronous Serial Communication
Device 1 transmission will output a ‘start bit’– A line of transmission is used to describe the communication.
Device 2 receives and confirms the bit. Device 2 begins to read a data bit off the line Then the process repeats however many data bits are
on the line. The least significant bit is sent first and most important
significant bit is sent last. Then Device 2 receives and confirms ‘stop bit’
![Page 18: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/18.jpg)
Line of transmission
Idle Startbit
Data 1 Bit
StopBit
Startbit
Stop Bit
Data 2 Bit
![Page 19: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/19.jpg)
Asynchronous Serial Communication
Transmitting numeric data is straight forward Transmitting Characters are encoded with a
binary value. – Most well know is American Standard Code for
Information Interchange (ASCII)– Another is UNICODE.
![Page 20: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/20.jpg)
Synchronous Transmission
Instead of transmitting a start and stop bit for each data value, Synchronous transmission strings together several data values into a data block called a ‘frame.’
There are several layers in the frame, similar to a data packet.
There is a leading information, address of where the data is going, control ensure correct destination, the data it self, Cyclic redundancy check (CRC) to check there is no error and the trailing information
![Page 21: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/21.jpg)
Synchronous Transmission Frame
DataControlLeading
FlagTrailing
FlagCRCAddress
8 8 8 16n 8
High Level Data Link Control(HDLC)
![Page 22: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/22.jpg)
Universal Asynchronous Receiver/Transmitters (UARTs)
Asynchronous serial communication is a popular function. Manufacturers have designed special chip to deal with Asynchronous serial communication. This relieves the CPU of this task
It is used to convert serial communication to parallel communication when receiving and convert parallel communication to serial when sending
CPU sends command to the UARTs control register to determine the number of data bits, parity, and the number of stop bits to be used in transmission
![Page 23: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/23.jpg)
UARTs
CPU Memory
Address Bus
Data Bus
Control Bus
UART Modem External device
![Page 24: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/24.jpg)
Conclusion
Brief Review of Direct Memory Access Covered I/O Processor
– Covered Input-Output Processor– Different commands for the I/O Processor– The Process
Covered Serial Communication– Asynchronous Serial Communication– Synchronous Transmission– Universal Asynchronous Receiver/Transmitters (UARTs)
Each topic showed ways to take the work load off of the CPU
![Page 25: Input/Output and Communication Chapter 10 Part II CS 147 Andy Lai](https://reader035.vdocuments.site/reader035/viewer/2022062421/56649d7a5503460f94a5e9aa/html5/thumbnails/25.jpg)
Computer Organization 147
Chapter 10.4,10.5,10.6
Andy Lai
Summer 2001