170 likes | 335 Views
Input/Output devices Part 2: Local Area Networks and displays. dr.ir. A.C. Verschueren Eindhoven University of Technology Section of Digital Information Systems. Local Area Network protocols & devices. The highest level of serial I/O complexity
E N D
Input/Output devicesPart 2: Local Area Networks and displays dr.ir. A.C. VerschuerenEindhoven University of TechnologySection of Digital Information Systems
Local Area Network protocols & devices • The highest level of serial I/O complexity • Multiple transmitters share channel: arbitration needed • Data sent to one or more receivers at the same time • Multiple 'virtual' connections over a single physical one • Error recovery, priorities and flow control needed • Connection to the world outside the LAN needed • The devices connected can be of different types • Workstations with/without local storage • 'File servers’ and 'Compute servers' • I/O devices like printers, plotters and scanners
physical extension of a single LAN connection of identical LAN’s connection of different LAN’s LAN ’X' LAN ’X' LAN ’Y' repeater bridge gateway LAN limitations and solutions • Distance and amount of devices on a single LAN limited due to physical and protocol constraints • Several ways to connect and extend LAN's exist !
7 application actual user programs run here 6 presentation data encoding and storage formats 5 session adding and removing users to/from network 4 transport setup, maintenance and breakdown of virtual connections 3 network routing of virtual connections 2 data link control of separate segments of a communication link 1 physical modulation/demodulation, medium interconnection 'Open Systems Interconnection' model • The ISO-OSI model splits protocols in 7 layers • A repeater works at layer 1 • A bridge contains layers 1 & 2 • A gateway encompasses layers 1, 2 & 3
transmit enable transmit data line free/occupied/collision received data The IEEE 802.3 ‘Ethernet’ LAN • Uses 'Carrier Sense Multiple Access with Collision Detect' (CSMA/CD) method 1) Wait until line is free (‘carrier sense’) 2) Start transmitting the packet of data 3) If other senders active too (‘collision detected’)... 3a) Continue sending dummy data for a while 3b) Wait a random time, then back to 1) Breaks down on heavy load ! No real priorities ! Unpredictable !
transmit data transmit/pass through delay received data The IEEE 802.5 ‘Token Ring’ LAN • A 24 bits ‘token' circulates on the ring if it is free • Data transmission starts by changing the token into the start of a data packet (modify one bit !) • Receivers modify data to indicate correct reception • Transmitter receives data back, generates new token Predictable, efficient & complex !
transmit enable transmit data received data The IEEE 802.4 ‘Token Bus’ LAN • Combines simplified Ethernet hardware with a software implemented Token Ring-like protocol • The 'token' circulates by sending a special data packet between devices in a fixed order • Very inefficient: token must be received completely before it can be sent to the next device(only 1 bit delay in Token Ring!) no collision detect!
Local Area Network controllers • Complex devices which combine high speed data transmission with complex protocols > 100.000.000 bits per second: protocols in hardware ! • Standard (10 Mb/s) Ethernet is relatively simple • Controllers integrated with single chip computers exist • Sophisticated LAN controllers are complete I/O co-processors !
7 segments 14 segments 16 segments 5x7 matrix Basic display technologies Separate lightsto indicate states like 'busy' or ’OK' • Only a few bits at a time, no special controller needed Segmented and matrix displaysfor digits or short texts • Multiplexing and translation (ASCII pattern)needed for multi-segment and matrix displays Buy these as complete modules !
Multi-character and graphics displays • Presentation of a lot of information at once • Multi-character displays show thousands of characters, each as a matrix of dots • Graphics displays present an unbroken matrix of dots ('pixels' or 'picture elements') 'Small': 200 lines of 320 pixels = 64000 pixels 'Large': 1024 lines of 1280 pixels 1.25 million pixels ’Huge': 4096 lines of 4096 pixels 16 million pixels ‘huge’ is photographic pixel density !
Controlling the ‘sea of pixels’ • The processor must be able to access each pixel individually, both for reading and writing! • Difficult to give each pixel addressing and memory logic • Impossible to connect each pixel to a central memory • Multiplexing must be used one way or another • Liquid Crystal Displays display one line at a time • Cathode Ray Tube displays display one pixel at a time ! • Pixels must be 'refreshed' at least 25 times a second to show a steady image
Individual pixel control • Simple displays just turn pixels ‘on’ and ‘off’ • 'Grayscale' displays can display each pixel with 4..256 different intensities (2..8 bits/pixel) • Color displays mix three basic colors, each with their individual intensity controls • The number of colors ranges from 8 to > 16.000.000 • A 'palette' is a color lookup table to display only a limited number of colors on the screen (few bits per pixel)
pixel instensity line startscreen start display CPU arbiter memory screen CRT or generator LCD display controller Graphics display controller basics • Convert pixel information in memory into continuous pixel stream for displaying • A full color 1024 x 1024 pixel image at 70 refreshes/sec. reads 220 MegaByte/sec. from the display memory ! • Video-RAM's allow CPU access while this is done
image screen ? ‘skip count’ image in memory ‘Scroll’ and ‘Pan’ display options • Scroll and pan (move vertically resp. horizontally) effects achieved by partial reading of image • Needs hardware in display controller to skip pixels in memory at end of each line: simple !
’Zooming' and cursor generation • Enlarge image part by repeating pixels and lines Relatively simple operation which is more-or-less standard • Reducing the size of an image must be done by merging multiple pixels into one Very complex, almost never done 'on-line’ in hardware • Give user feedback by showing a moving cursor • Generate cursor image in display controller:no need to change images in display memory !
background: image 1: image2: screen: Hardware support for the 'windows' • Store separate images of different windows in display memory, combine them in hardware ! • Possible to move, resize, scroll and pan windowswithout modifying the actual window images 'slicing' or 'striping'
Image contents manipulation • Full range from simple to complex possible • 'Bit Block Transfer' ('BitBlit')moves rectangular image parts in memory • Line and curve drawing • Image filtering, (de)compression and enhancement • Image generationfor Virtual Reality: full motion, 3-D, high quality • May need supercomputer speeds (> 1 GOPS) ! • Single chip video processors also have digital video input/output capabilies Giga Operations Per Second