1 / 28

I/O devices

I/O devices. I/O devices: serial links timers and counters keyboards displays analog I/O. Timers and counters. Very similar: a timer is incremented by a periodic signal; a counter is incremented by an asynchronous, occasional signal. Rollover causes interrupt. Watchdog timer.

ashanti
Download Presentation

I/O devices

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. I/O devices • I/O devices: • serial links • timers and counters • keyboards • displays • analog I/O Overheads for Computers as Components

  2. Timers and counters • Very similar: • a timer is incremented by a periodic signal; • a counter is incremented by an asynchronous, occasional signal. • Rollover causes interrupt. Overheads for Computers as Components

  3. Watchdog timer • Watchdog timer is periodically reset by system timer. • If watchdog is not reset, it generates an interrupt to reset the host. host CPU interrupt watchdog timer reset Overheads for Computers as Components

  4. Switch debouncing • A switch must be debounced to multiple contacts caused by eliminate mechanical bouncing: Overheads for Computers as Components

  5. Encoded keyboard • An array of switches is read by an encoder. • N-key rollover remembers multiple key depressions. row Overheads for Computers as Components

  6. LED • Must use resistor to limit current: Overheads for Computers as Components

  7. 7-segment LCD display • May use parallel or multiplexed input. Overheads for Computers as Components

  8. Types of high-resolution display • Cathode ray tube (CRT) • Liquid crystal display (LCD) • Plasma, etc. Overheads for Computers as Components

  9. Touchscreen • Includes input and output device. • Input device is a two-dimensional voltmeter: Overheads for Computers as Components

  10. voltage Touchscreen position sensing ADC Overheads for Computers as Components

  11. Digital-to-analog conversion • Use resistor tree: R Vout bn 2R bn-1 4R bn-2 8R bn-3 Overheads for Computers as Components

  12. Flash A/D conversion • N-bit result requires 2n comparators: encoder Vin ... Overheads for Computers as Components

  13. Dual-slope conversion • Use counter to time required to charge/discharge capacitor. • Charging, then discharging eliminates non-linearities. Vin timer Overheads for Computers as Components

  14. Sample-and-hold • Required in any A/D: converter Vin Overheads for Computers as Components

  15. USB 2.0 • Goals: • Easy to use. • Low cost for consumer devices. • Up to 480 Mb/s. • Real-time audio, video. • Both isochronous and asynchronous communication. Overheads for Computers as Components

  16. USB architecture Bus topology. Stack. Data flow model. Schedule. device interconnect host device device Overheads for Computers as Components

  17. Bus tiers function Device = {hub, function} hub hub function function host function Tier 1 tier 2 tier 3 tier 4 …. tier 7 Overheads for Computers as Components

  18. USB signaling • Speeds: • High-speed is 480 Mb/s. • Full-speed is 12 Mb/s. • Low-speed is 1.5 Mb/s. • Signals: • Vbus, Gnd. • D+, D-. Overheads for Computers as Components

  19. USB power • USB devices can pull a limited amount of power from the bus. • May also supply their own power. • System may provide a power-management protocol. • Independent of USB. Overheads for Computers as Components

  20. USB bus protocol • Polled bus, all transfers initiated by host. • Basic transaction: • Host sends token packet: • Type and direction. • USB device number. • Endpoint number (subdevice). • Data transfer packet. • Acknowledge packet. Overheads for Computers as Components

  21. Robustness • Error detection/correction. • Automatic handling of device attach/detach. • Self-recovery in protocol. • Streaming data management. • Pipes for data management. Overheads for Computers as Components

  22. USB pipes • Functions are allocated to data pipes. • Pipes limit interference between functions. • Bandwidth is allocated among pipes. • Devices must supply buffer memory. Overheads for Computers as Components

  23. USB data flow model host device • Four types of implementation: • Device hardware. • Client software to connect to application. • USB system software. • USB host controller (host side system interface). Client SW function USB system SW USB logical device USB host controller USB bus interface Physical communication Overheads for Computers as Components

  24. Logical bus topology • Bus appears to be a simple host/device system: host device device device Overheads for Computers as Components

  25. Client software view • Each client sees its own function but not the whole system: Client SW Client SW Client SW Client SW function function function function Overheads for Computers as Components

  26. Endpoints • Each logical device is a collection of endpoints. • Each endpoint is simplex (input or output). • Endpoint description: • Bus frequency/latency. • Bandwidth requirement. • Endpoint number. • Error handling requirements. • Maximum packet size. • Transfer type. • Transfer direction. Overheads for Computers as Components

  27. Pipes • Two types of pipes: • Stream. • Message. • Pipe description includes: • Pipe type. • Direction. • Bus access and bandwidth. Overheads for Computers as Components

  28. Bus transfer types • Data goes through the pipe in FIFO order. • Four types of transfers: • Control. • Isochronous—periodic data stream. • Interrupt. • Bulk—non-periodic, large data transfer. Overheads for Computers as Components

More Related