Digital Input and Output

Size: px
Start display at page:

Download "Digital Input and Output"

Transcription

1 Digital Input and Output Topics: Parallel Digital I/O Simple Input (example) Parallel I/O I/O Scheduling Techniques Programmed Interrupt Driven Direct Memory Access Serial I/O Asynchronous Synchronous Switches Debounce Buffers Enable Decoder 2 Switch Input Normal Switch can make or break a circuit several times on a single transition e.g. 0V +5 V R Debounce Circuit + 5V +5V Switch Closed 0 V >ms Time 3 + 5V 4 Tri-State Buffer Simple Output (Example) In Out Enable When Enable is High, the Input is disconnected from the output When Enable is Low, the Input is connected to the output Latches Enable Decoder Decode Seven Segment Found in packages of - an Octal Buffer 5 6

2 I/O Scheduling Techniques. Programmed I/O Under CPU control at all times. Controlled by main program: Programmed (or polled) I/O 2 Interrupt Driven 3 Direct Memory Access (DMA) Input from Switches Test switch values Initialise NO any set? YES Special Actions 7 Programmed I/O Good and Bad Points 6522 VIA (Versatile Interface Adapter) Advantages Simple Software Simple Hardware Disadvantages Overhead of polling - Software Overhead Response not immediate Real-Time - Response of Compute System is sufficiently fast for any delay to be neglected Programmable I/O Device 6 Internal Registers 2 External Input and/or Output Ports CA CA2 PORT A PORT B CB CB2 RS0 RS RS2 RS3 Chip Enable A0 A A2 A3 R/W (φ) IRQ µ processor es 9 0 Simple I/O on VIA VIA ORA, ORB, and DDR's Use four main registers in the VIA: Memory (on Lab µproc.) C0000 ORB PORT B Output Register (ORB) PORT A PORT B Output Register (ORA) Direction Register B (DDRB) C000 ORA PORT A Direction Register A (DDRA) C0002 DDRB (outputs) a '' in a bit of DDR makes corresponding bit of Output Register an OUTPUT C DDRA (inputs) a '0' makes it an INPUT All VIA registers are bits 2 2

3 eg Simple VIA program Example 600 VIA program 'copy' VIA_ORB = 0xC0000 Output Register B VIA_ORA = 0xC000 Output Register A VIA_DDRB = 0xC0002 Direction Register B VIA_DDRA = 0xC0003 Direction Register A _main: Set up VIA clr.b VIA_DDRA Initialise PORT A to be inputs move.b #0xFF, VIA_DDRB Initialise PORT B to be outputs clr.b D0 Initialise data register D0 LOOP: Do the business move.b VIA_ORA, D0 Get the value from the switches move.b D0, VIA_ORB Store value on output LEDS jmp LOOP Do it again! 3 Programmed I/O with Handshaking Can read and write without having to consider whether there is data to be read or a device is ready to accept data written to it. Consider a simple printer that takes a finite amount of time to print a character (this time is very much greater than the processor instruction time) -> processor cannot write to printer without first ensuring that the printer is ready to receive data Printer can signal to CPU that it is READY CPU signals to printer that NEW DATA is being sent 4 Handshaking Figure Timing Diagram Output port B CB2 NEW DATA latch Ready New Port B time µcomputer system CB READY Printer CPU responds to the printer being ready by placing a new character on port B output and signalling new data Handshaking is performed independently from the CPU clock - ie asynchronously 5 6 Use: Handshaking on VIA PORT B as Output CB control line as READY CB2 control line as NEW DATA Need to set up Peripheral Control Register (PCR) on VIA x x x x x = don't care CA Control CA2 Control CB Control CB2 Control 7 READY The peripheral device signals to the VIA that it is ready to receive more data by asserting CB low. CB "READY" Falling edge of CB is recorded by VIA setting bit 4 of its Interrupt Flag Register (IFR) to. Also sets CB2 output. Need to disable interrupts by writing 7F to Interrupt Enable Register (IER) - we will discuss interrupts later Program to output alphabet to hypothetical printer follows: 3

4 Eg Printer Handshake Print Alphabet VIA_ORB = 0xC0000 Output Register B VIA_ORA = 0xC000 Output Register A VIA_DDRB = 0xC0002 Direction Register B VIA_DDRA = 0xC0003 Direction Register A VIA_PCR = 0xC000C Peripheral Control Register VIA_IFR = 0xC000D Interrupt Flag Register VIA_IER = 0xC000E Interrupt Enable Register _main: clr.b D0 Use D0 for character clr.b D Use D for checking READY Set up VIA LOOP: clr.b VIA_DDRA Initialise PORT A to be inputs move.b #0xFF, VIA_DDRB Initialise PORT B to be outputs move.b #0x0, VIA_PCR Initialise PCR move.b #0x7F, VIA_IER Disable VIA interrupts move.b #0x4, D0 ASCII 'A' Do the business move.b VIA_IFR, D read VIA interrupt flags and.b #0x0, D See if bit four is set (CB) beq LOOP If clear then loop until READY If READY then moveb D0,VIA_ORB Output character add.b #0x0, D0 and increment to next character cmp.b #0x5B, D0 Are we at the end of the alphabet? bne LOOP if not do it again 9 Programmed I/O with Handshaking Advantages: Simple hardware and software (low cost) Synchronises CPU with asynchronous events from slow peripheral devices Disadvantages: "Software Overhead" of synchronising CPU to external events Main uses: Simple systems with few I/O devices where CPU time can be traded for hardware complexity Interrupt Driven I/O CPU only responds when its attention is required by I/O device. Avoids problem with programmed I/O where multiple devices may require attention simultaneously Interrupts on 6000 (overview) These appear as three lines of the Control (input pins on the CPU chip) Interrupt IPL0 IPL IPL2 From External Devices 6000 MAIN Program Interrupt Handler a nested interrupt 2 Inputs specify an interrupt priority level between 0 and 7 0 = no interrupt request 7 = highest priority request 22 Interrupt response External device signals interrupt 2 CPU COMPLETES CURRENT INSTRUCTION 3 Push PC onto Stack Push Status Register onto Stack 4 Load PC with address of Interrupt Handler Return from Interrupt Pull Status register from Stack Pull PC from Stack 2 Resume program execution Interrupts: Good and Bad Points Disadvantages All data transfers still controlled by CPU More complex hardware and software Advantages Fast response no software polling overhead good in real-time environments

5 3. Direct Memory Access DMA Motivation: I/O techniques so far are slowed down by the CPU Output Memory CPU Input Memory CPU Bottleneck DMA avoids CPU -> Faster I/O (output) I/O (input) 25 DMA is used where large amounts of data are to be transferred at high speed. Control of the system buses is surrendered by the CPU to a DMA Controller. The DMAC is a dedicated device that controls the three system buses during the data transfer. The DMAC is optimised for one operation, data transfer. The CPU is more general purpose, it both transfers data and is a processor of information. Typical programmed I/O may take >0 times longer to transfer a byte than DMA (putting an unacceptable limit on peripheral data transfer speeds). 26 DATA DMA Operation DMA Operation Modes Memory CPU ADDRESS DMA Req DMA Ack DMAC Start Addr Word Count I/O Req I/O Ack Input/ Output ) Cycle Stealing DMAC uses the system buses when they are not being used by the CPU - usually by grabbing available memory access cycles not used by the CPU, hence name. DMA transfer requested by I/O 2 DMAC passes request to CPU 3 CPU initialises DMAC: i) Input or Output ii) Start address -> DMAC Reg iii) # of words to transfer -> Count Reg iv) CPU enables DMAC 4 DMAC requests use of system buses 5 CPU responds with DMA Acknowledge when ready to surrender system buses. 27 2) Burst Mode DMAC requires system buses for extended transfer of large amount of data at high speed and locks the slower CPU out of using the system buses for a fixed time, or until the transfer is complete, (or until the CPU receives an interrupt from a device of greater priority) 2 Serial Input / Output Two major types of serial I/O: Asynchronous 2 Synchronous Serial I/O uses a single communication channel (eg a pair of wires) to send data. Advantage over parallel I/O is that using single channel reduces cost - cheaper Disadvantage is that a single serial channel cannot carry as much information in a given time as multiple (parallel) channels - slower Use: Long distance data communications 29 Asynchronous Used to send small packets of data, typically characters, eg between computers and terminals. at transmitter (Tx) and Receiver (Rx) are only of approximately the same frequency. Synchronisation established at start of transmission and lasts only for the duration of one packet (character). Cheap, short range, used for channels with low density utilisation. Synchronous Used to send bulk data at high speeds over long distances. Synchronisation maintained by embedding clock signal in with data. Maximises use of expensive high speed data comms 30 5

6 Asynchronous Serial I/O -bit parallel data load Channel -bit parallel Rx store Asynchronous Serial Format Serial Shift Generator f = N Hz Serial Shift Generator f N Hz Synchroniser No common clock Local clocks are at approximately same frequency Once synchronisation established it can only be maintained for a short period of time 3 Start D0 D D2 D3 D4 D5 D6 D7 STOP STOP2 time Packet consists of: START Bit, always a zero 2 between 5 and data bits 3 PARITY bit, error detection (even parity shown) 4, / 2, or 2 STOP bits (force gap between packets) 5 When not active channel carries MARKING (NB data above is 00000) Parity 32 Synchronisation Baud Rate Start D0 time Falling edge of START triggers Rx circuit 2 One half bit time later the input is sampled for START 3 Sample the data at intervals of one bit time 4 Sample PARITY one bit time later: check parity bit with parity of the received data bits: error if not same 5 Sample STOP bits at intervals of one bit time. If stop bits are not one then Framing Error. b t D7 Parity STOP STOP2 33 Baud Rate of a serial line is the number of bits transmitted per second. It includes the overhead of the non-data bits. If the bit time, b t, is the time for one bit then: Baud Rate = Often clock rate applied to serial communication circuits is or 6 times higher than the baud rate. There may be many samples taken per bit time rather than the single sample indicated previously. b t 34 Typical Use of Asynchronous Serial Communication Synchronous Serial Communication ACIA Tx data Rx data Control REMOTE TERMINAL keyboard + CRT Communication distance ~ tens of metres 35 Serial & Generator Channel & Separation Serial and data are combined into one signal Serial data is synchronised by transmission of special bit patterns Once synchronised many bits may be transmitted (multiple characters at once) 36 6

7 Synchronous Serial Format Example - Phase Coding Each data value of: is replaced by a positive transition, and 0 is replaced with a negative transition can be extracted from transitions. Example I/O RS 232C Mark below -3 Volts (typically - 2 V) 0 Space above +3 Volts (typically +2 V) NB Voltages need converting buffers (to 0V and 5V). Phase Coded D0 D D2 D3 D4 D5 D6 D ISDN (Integrated Services Digital Network) - standard for transmitting audio, video and data (c960), can achieve 600Mbits/s using fibre. ATM (Asynchronous Transfer Mode) - uses packets of 53 bytes, works at 55Mbits/s and upwards

6 Direct Memory Access (DMA)

6 Direct Memory Access (DMA) 1 License: http://creativecommons.org/licenses/by-nc-nd/3.0/ 6 Direct Access (DMA) DMA technique is used to transfer large volumes of data between I/O interfaces and the memory. Example: Disk drive controllers,

More information

INPUT/OUTPUT ORGANIZATION

INPUT/OUTPUT ORGANIZATION INPUT/OUTPUT ORGANIZATION Accessing I/O Devices I/O interface Input/output mechanism Memory-mapped I/O Programmed I/O Interrupts Direct Memory Access Buses Synchronous Bus Asynchronous Bus I/O in CO and

More information

INPUT/OUTPUT ORGANIZATION

INPUT/OUTPUT ORGANIZATION INPUT/OUTPUT ORGANIZATION Accessing I/O Devices I/O interface Input/output mechanism Memory-mapped I/O Programmed I/O Interrupts Direct Memory Access Buses Synchronous Bus Asynchronous Bus I/O in CO and

More information

INPUT/OUTPUT ORGANIZATION

INPUT/OUTPUT ORGANIZATION INPUT/OUTPUT ORGANIZATION Accessing I/O Devices I/O interface Input/output mechanism Memory-mapped I/O Programmed I/O Interrupts Direct Memory Access Buses Synchronous Bus Asynchronous Bus I/O in CO and

More information

MCS6522 V E R S A T IL E IN T ERFACE A D A PTER

MCS6522 V E R S A T IL E IN T ERFACE A D A PTER PRELIMINARY DATA MOS TCCHNOLOOY, INC. VALLEY FORGE CORPORATE CENTER 1216) 666 7950 950 RITTENHOUSE ROAD. NORRISTOWN, PA 19401 SHEET NOVEMBER 1977 MCS6522 V E R S A T IL E IN T ERFACE A D A PTER DESCRIPTION

More information

Parallel Interfacing

Parallel Interfacing Chapter 12 Parallel Interfacing Expected Outcomes Identify the internal registers of MC6821 Design the hardware interface for various I/O devices using MC6821 Develop and write codes using MC6821 Parallel

More information

Unit 5. Memory and I/O System

Unit 5. Memory and I/O System Unit 5 Memory and I/O System 1 Input/Output Organization 2 Overview Computer has ability to exchange data with other devices. Human-computer communication Computer-computer communication Computer-device

More information

INPUT-OUTPUT ORGANIZATION

INPUT-OUTPUT ORGANIZATION INPUT-OUTPUT ORGANIZATION Peripheral Devices: The Input / output organization of computer depends upon the size of computer and the peripherals connected to it. The I/O Subsystem of the computer, provides

More information

INPUT-OUTPUT ORGANIZATION

INPUT-OUTPUT ORGANIZATION 1 INPUT-OUTPUT ORGANIZATION Peripheral Devices Input-Output Interface Asynchronous Data Transfer Modes of Transfer Priority Interrupt Direct Memory Access Input-Output Processor Serial Communication 2

More information

Basics of UART Communication

Basics of UART Communication Basics of UART Communication From: Circuit Basics UART stands for Universal Asynchronous Receiver/Transmitter. It s not a communication protocol like SPI and I2C, but a physical circuit in a microcontroller,

More information

Question Bank Microprocessor and Microcontroller

Question Bank Microprocessor and Microcontroller QUESTION BANK - 2 PART A 1. What is cycle stealing? (K1-CO3) During any given bus cycle, one of the system components connected to the system bus is given control of the bus. This component is said to

More information

Accessing I/O Devices Interface to CPU and Memory Interface to one or more peripherals Generic Model of IO Module Interface for an IO Device: CPU checks I/O module device status I/O module returns status

More information

Blog - https://anilkumarprathipati.wordpress.com/

Blog - https://anilkumarprathipati.wordpress.com/ Input-Output organization 1. Peripheral Devices The input-output subsystem of a computer, referred to as I/O, provides an efficient mode of communication between the central system and the outside environment.

More information

1. Define Peripherals. Explain I/O Bus and Interface Modules. Peripherals: Input-output device attached to the computer are also called peripherals.

1. Define Peripherals. Explain I/O Bus and Interface Modules. Peripherals: Input-output device attached to the computer are also called peripherals. 1. Define Peripherals. Explain I/O Bus and Interface Modules. Peripherals: Input-output device attached to the computer are also called peripherals. A typical communication link between the processor and

More information

Unit DMA CONTROLLER 8257

Unit DMA CONTROLLER 8257 DMA CONTROLLER 8257 In microprocessor based system, data transfer can be controlled by either software or hardware. To transfer data microprocessor has to do the following tasks: Fetch the instruction

More information

Computer Architecture 5.1. Computer Architecture. 5.2 Vector Address: Interrupt sources (IS) such as I/O, Timer 5.3. Computer Architecture

Computer Architecture 5.1. Computer Architecture. 5.2 Vector Address: Interrupt sources (IS) such as I/O, Timer 5.3. Computer Architecture License: http://creativecommons.org/licenses/by-nc-nd/3./ Hardware interrupt: 5. If in an eternal device (for eample I/O interface) a predefined event occurs this device issues an interrupt request to

More information

CS152 Computer Architecture and Engineering Lecture 20: Busses and OS s Responsibilities. Recap: IO Benchmarks and I/O Devices

CS152 Computer Architecture and Engineering Lecture 20: Busses and OS s Responsibilities. Recap: IO Benchmarks and I/O Devices CS152 Computer Architecture and Engineering Lecture 20: ses and OS s Responsibilities April 7, 1995 Dave Patterson (patterson@cs) and Shing Kong (shing.kong@eng.sun.com) Slides available on http://http.cs.berkeley.edu/~patterson

More information

Programmed I/O Interrupt-Driven I/O Direct Memory Access (DMA) I/O Processors. 10/12/2017 Input/Output Systems and Peripheral Devices (02-2)

Programmed I/O Interrupt-Driven I/O Direct Memory Access (DMA) I/O Processors. 10/12/2017 Input/Output Systems and Peripheral Devices (02-2) Programmed I/O Interrupt-Driven I/O Direct Memory Access (DMA) I/O Processors 1 Principle of Interrupt-Driven I/O Multiple-Interrupt Systems Priority Interrupt Systems Parallel Priority Interrupts Daisy-Chain

More information

Generic Model of I/O Module Interface to CPU and Memory Interface to one or more peripherals

Generic Model of I/O Module Interface to CPU and Memory Interface to one or more peripherals William Stallings Computer Organization and Architecture 7 th Edition Chapter 7 Input/Output Input/Output Problems Wide variety of peripherals Delivering different amounts of data At different speeds In

More information

Unit 3 and Unit 4: Chapter 4 INPUT/OUTPUT ORGANIZATION

Unit 3 and Unit 4: Chapter 4 INPUT/OUTPUT ORGANIZATION Unit 3 and Unit 4: Chapter 4 INPUT/OUTPUT ORGANIZATION Introduction A general purpose computer should have the ability to exchange information with a wide range of devices in varying environments. Computers

More information

Chapter 5 Input/Output Organization. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

Chapter 5 Input/Output Organization. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan Chapter 5 Input/Output Organization Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan Outline Accessing I/O Devices Interrupts Direct Memory Access Buses Interface

More information

Modes of Transfer. Interface. Data Register. Status Register. F= Flag Bit. Fig. (1) Data transfer from I/O to CPU

Modes of Transfer. Interface. Data Register. Status Register. F= Flag Bit. Fig. (1) Data transfer from I/O to CPU Modes of Transfer Data transfer to and from peripherals may be handled in one of three possible modes: A. Programmed I/O B. Interrupt-initiated I/O C. Direct memory access (DMA) A) Programmed I/O Programmed

More information

UNIT V MICRO CONTROLLER PROGRAMMING & APPLICATIONS TWO MARKS. 3.Give any two differences between microprocessor and micro controller.

UNIT V MICRO CONTROLLER PROGRAMMING & APPLICATIONS TWO MARKS. 3.Give any two differences between microprocessor and micro controller. UNIT V -8051 MICRO CONTROLLER PROGRAMMING & APPLICATIONS TWO MARKS 1. What is micro controller? Micro controller is a microprocessor with limited number of RAM, ROM, I/O ports and timer on a single chip

More information

Interconnecting Components

Interconnecting Components Interconnecting Components Need interconnections between CPU, memory, controllers Bus: shared communication channel Parallel set of wires for data and synchronization of data transfer Can become a bottleneck

More information

Computer Organization ECE514. Chapter 5 Input/Output (9hrs)

Computer Organization ECE514. Chapter 5 Input/Output (9hrs) Computer Organization ECE514 Chapter 5 Input/Output (9hrs) Learning Outcomes Course Outcome (CO) - CO2 Describe the architecture and organization of computer systems Program Outcome (PO) PO1 Apply knowledge

More information

Digital Design Laboratory Lecture 6 I/O

Digital Design Laboratory Lecture 6 I/O ECE 280 / CSE 280 Digital Design Laboratory Lecture 6 I/O Input/Output Module Interface to CPU and Memory Interface to one or more peripherals Generic Model of I/O Module External Devices Human readable

More information

This set of Microprocessor Multiple Choice Questions & Answers (MCQs) focuses on PIO 8255 (Programmable Input Output Port).

This set of Microprocessor Multiple Choice Questions & Answers (MCQs) focuses on PIO 8255 (Programmable Input Output Port). This set of Microprocessor Multiple Choice Questions & Answers (MCQs) focuses on PIO 8255 (Programmable Input Output Port). 1. Programmable peripheral input-output port is other name for a) serial input-output

More information

Advantages and disadvantages

Advantages and disadvantages Advantages and disadvantages Advantages Disadvantages Asynchronous transmission Simple, doesn't require synchronization of both communication sides Cheap, timing is not as critical as for synchronous transmission,

More information

Computer Organization (Input-output)

Computer Organization (Input-output) Computer Organization (Input-output) KR Chowdhary Professor & Head Email: kr.chowdhary@gmail.com webpage: krchowdhary.com Department of Computer Science and Engineering MBM Engineering College, Jodhpur

More information

SEMICON Solutions. Bus Structure. Created by: Duong Dang Date: 20 th Oct,2010

SEMICON Solutions. Bus Structure. Created by: Duong Dang Date: 20 th Oct,2010 SEMICON Solutions Bus Structure Created by: Duong Dang Date: 20 th Oct,2010 Introduction Buses are the simplest and most widely used interconnection networks A number of modules is connected via a single

More information

Serial Interfacing. Pulse width of 1 bit

Serial Interfacing. Pulse width of 1 bit ١ ٢ Asynchronous Frame 10 bits 7E1 (7 data bits, even parity, 1 stop bit) Serial Data Transfer used by keyboards, plotters, modems and other peripherals with low data transfer rates (low bandwidth) * *

More information

Digital System Design

Digital System Design Digital System Design by Dr. Lesley Shannon Email: lshannon@ensc.sfu.ca Course Website: http://www.ensc.sfu.ca/~lshannon/courses/ensc350 Simon Fraser University i Slide Set: 15 Date: March 30, 2009 Slide

More information

ECE Microcontrollers. Serial Peripheral Interface (SPI) & NRF24 Radio

ECE Microcontrollers. Serial Peripheral Interface (SPI) & NRF24 Radio ECE 381 - Microcontrollers Serial Peripheral Interface (SPI) & NRF24 Radio Lab 9 Summary We will develop a wireless temperature sensor Once a second, sample LM34CZ voltage Convert to floating point with

More information

Input/Output Problems. External Devices. Input/Output Module. I/O Steps. I/O Module Function Computer Architecture

Input/Output Problems. External Devices. Input/Output Module. I/O Steps. I/O Module Function Computer Architecture 168 420 Computer Architecture Chapter 6 Input/Output Input/Output Problems Wide variety of peripherals Delivering different amounts of data At different speeds In different formats All slower than CPU

More information

I/O - input/output. system components: CPU, memory, and bus -- now add I/O controllers and peripheral devices. CPU Cache

I/O - input/output. system components: CPU, memory, and bus -- now add I/O controllers and peripheral devices. CPU Cache I/O - input/output system components: CPU, memory, and bus -- now add I/O controllers and peripheral devices CPU Cache CPU must perform all transfers to/from simple controller, e.g., CPU reads byte from

More information

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 09, SPRING 2013

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 09, SPRING 2013 CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 09, SPRING 2013 TOPICS TODAY I/O Architectures Interrupts Exceptions FETCH EXECUTE CYCLE 1.7 The von Neumann Model This is a general

More information

Chapter 8. Input Output Organization

Chapter 8. Input Output Organization Chapter 8 Input Output Organization 8.1 Introduction: In the design of a simple computer, we assumed one input device and one output device transferring data in and out of the accumulator using a programmed

More information

COMP asynchronous buses April 5, 2016

COMP asynchronous buses April 5, 2016 All the I/O examples we have discussed use the system bus to send data between the CPU, main memory, and I/O controllers. The system bus runs at a slower clock speed than the CPU because of greater distances

More information

Informatics for industrial applications

Informatics for industrial applications Informatics for industrial applications Lecture 5 - Peripherals: USART and DMA Martino Migliavacca martino.migliavacca@gmail.com October 20, 2011 Outline 1 Introduction to USART Introduction Synchronous

More information

Chapter 3. Top Level View of Computer Function and Interconnection. Yonsei University

Chapter 3. Top Level View of Computer Function and Interconnection. Yonsei University Chapter 3 Top Level View of Computer Function and Interconnection Contents Computer Components Computer Function Interconnection Structures Bus Interconnection PCI 3-2 Program Concept Computer components

More information

Hello, and welcome to this presentation of the STM32 Universal Synchronous/Asynchronous Receiver/Transmitter Interface. It covers the main features

Hello, and welcome to this presentation of the STM32 Universal Synchronous/Asynchronous Receiver/Transmitter Interface. It covers the main features Hello, and welcome to this presentation of the STM32 Universal Synchronous/Asynchronous Receiver/Transmitter Interface. It covers the main features of this USART interface, which is widely used for serial

More information

Module 6: INPUT - OUTPUT (I/O)

Module 6: INPUT - OUTPUT (I/O) Module 6: INPUT - OUTPUT (I/O) Introduction Computers communicate with the outside world via I/O devices Input devices supply computers with data to operate on E.g: Keyboard, Mouse, Voice recognition hardware,

More information

CPE/EE 421/521 Fall 2004 Chapter 4 The CPU Hardware Model. Dr. Rhonda Kay Gaede UAH. The CPU Hardware Model - Overview

CPE/EE 421/521 Fall 2004 Chapter 4 The CPU Hardware Model. Dr. Rhonda Kay Gaede UAH. The CPU Hardware Model - Overview CPE/EE 421/521 Fall 2004 Chapter 4 The 68000 CPU Hardware Model Dr. Rhonda Kay Gaede UAH Fall 2004 1 The 68000 CPU Hardware Model - Overview 68000 interface Timing diagram Minimal configuration using the

More information

Design and development of embedded systems for the Internet of Things (IoT) Fabio Angeletti Fabrizio Gattuso

Design and development of embedded systems for the Internet of Things (IoT) Fabio Angeletti Fabrizio Gattuso Design and development of embedded systems for the Internet of Things (IoT) Fabio Angeletti Fabrizio Gattuso Microcontroller It is essentially a small computer on a chip Like any computer, it has memory,

More information

1. What is Microprocessor? Give the power supply & clock frequency of 8085?

1. What is Microprocessor? Give the power supply & clock frequency of 8085? 1. What is Microprocessor? Give the power supply & clock frequency of 8085? A microprocessor is a multipurpose, programmable logic device that reads binary instructions from a storage device called memory

More information

Serial Communications

Serial Communications 1 Serial Interfaces 2 Embedded systems often use a serial interface to communicate with other devices. Serial Communications Serial implies that it sends or receives one bit at a time. Serial Interfaces

More information

School of Computer Science Faculty of Engineering and Computer Science Student ID Number. Lab Cover Page. Lab Date and Time:

School of Computer Science Faculty of Engineering and Computer Science Student ID Number. Lab Cover Page. Lab Date and Time: Student Information First Name School of Computer Science Faculty of Engineering and Computer Science Last Name Student ID Number Lab Cover Page Please complete all fields: Course Name: Structure and Application

More information

CS330: Operating System and Lab. (Spring 2006) I/O Systems

CS330: Operating System and Lab. (Spring 2006) I/O Systems CS330: Operating System and Lab. (Spring 2006) I/O Systems Today s Topics Block device vs. Character device Direct I/O vs. Memory-mapped I/O Polling vs. Interrupts Programmed I/O vs. DMA Blocking vs. Non-blocking

More information

MCS-51 Serial Port A T 8 9 C 5 2 1

MCS-51 Serial Port A T 8 9 C 5 2 1 MCS-51 Serial Port AT89C52 1 Introduction to Serial Communications Serial vs. Parallel transfer of data Simplex, Duplex and half-duplex modes Synchronous, Asynchronous UART Universal Asynchronous Receiver/Transmitter.

More information

lecture 22 Input / Output (I/O) 4

lecture 22 Input / Output (I/O) 4 lecture 22 Input / Output (I/O) 4 - asynchronous bus, handshaking - serial bus Mon. April 4, 2016 "synchronous" bus = clock based (system bus clock is slower than CPU clock) "asynchronous" bus = not clock

More information

Typical modules include interfaces to ARINC-429, ARINC-561, ARINC-629 and RS-422. Each module supports up to 8 Rx or 8Tx channels.

Typical modules include interfaces to ARINC-429, ARINC-561, ARINC-629 and RS-422. Each module supports up to 8 Rx or 8Tx channels. Modular PCI Range of Cards Summary features Modular Architecture Interface compatible with PCI Local bus Specification, revision 2.1, June 1995 2 or 4 Module General Purpose Carrier Cards 8 Channels per

More information

commodore semiconductor group NMOS 950 Rittenhouse Rd., Norristown, PA Tel.: 215/ TWX: 510/ (MEMORY, I/O, TIMER ARRAY)

commodore semiconductor group NMOS 950 Rittenhouse Rd., Norristown, PA Tel.: 215/ TWX: 510/ (MEMORY, I/O, TIMER ARRAY) commodore semiconductor group NMOS 950 Rittenhouse Rd., Norristown, PA 19403 Tel.: 215/666-7950 TWX: 510/660-4168 6532 (MEMORY, I/O, TIMER ARRAY) THE 6532 CONCEPT- The 6532 is designed to operate in conjunction

More information

Introduction Electrical Considerations Data Transfer Synchronization Bus Arbitration VME Bus Local Buses PCI Bus PCI Bus Variants Serial Buses

Introduction Electrical Considerations Data Transfer Synchronization Bus Arbitration VME Bus Local Buses PCI Bus PCI Bus Variants Serial Buses Introduction Electrical Considerations Data Transfer Synchronization Bus Arbitration VME Bus Local Buses PCI Bus PCI Bus Variants Serial Buses 1 Most of the integrated I/O subsystems are connected to the

More information

Learn how to communicate

Learn how to communicate USART 1 Learn how to communicate Programmed I/O (Software Polling) Interrupt Driven I/O Direct Memory Access (DMA) 2 Programmed I/O (Polling) Processor must read and check I/O ready bits for proper value

More information

Serial Interfacing. Asynchronous Frame

Serial Interfacing. Asynchronous Frame Serial Interfacing Serial Data Transfer used by keyboards, plotters, modems and other peripherals with low data transfer rates (low bandwidth) 2 Types: Asynchronous CPU and device are not using a common

More information

3. Controtlto specify the mode of transfer such as read or write 4. A control to start the DMA transfer

3. Controtlto specify the mode of transfer such as read or write 4. A control to start the DMA transfer DMA Controller The DMA controller needs the usual circuits of an interface to communicate the CPU and 10 device. In addition, it needs an address register, a word count register, and a set of address lines.

More information

The control of I/O devices is a major concern for OS designers

The control of I/O devices is a major concern for OS designers Lecture Overview I/O devices I/O hardware Interrupts Direct memory access Device dimensions Device drivers Kernel I/O subsystem Operating Systems - June 26, 2001 I/O Device Issues The control of I/O devices

More information

ECE251: Thursday November 8

ECE251: Thursday November 8 ECE251: Thursday November 8 Universal Asynchronous Receiver & Transmitter Text Chapter 22, Sections 22.1.1-22.1.4-read carefully TM4C Data Sheet Section 14-no need to read this A key topic but not a lab

More information

Chapter 7 : Input-Output Organization

Chapter 7 : Input-Output Organization Chapter 7 Input-Output organization 7.1 Peripheral devices In addition to the processor and a set of memory modules, the third key element of a computer system is a set of input-output subsystem referred

More information

UART Register Set. UART Master Controller. Tx FSM. Rx FSM XMIT FIFO RCVR. i_rx_clk o_intr. o_out1 o_txrdy_n. o_out2 o_rxdy_n i_cs0 i_cs1 i_ads_n

UART Register Set. UART Master Controller. Tx FSM. Rx FSM XMIT FIFO RCVR. i_rx_clk o_intr. o_out1 o_txrdy_n. o_out2 o_rxdy_n i_cs0 i_cs1 i_ads_n October 2012 Reference Design RD1138 Introduction The Universal Asynchronous Receiver/Transmitter (UART) performs serial-to-parallel conversion on data characters received from a peripheral device or a

More information

Computer Organization

Computer Organization Chapter 5 Computer Organization Figure 5-1 Computer hardware :: Review Figure 5-2 CPU :: Review CPU:: Review Registers are fast stand-alone storage locations that hold data temporarily Data Registers Instructional

More information

Topics. Interfacing chips

Topics. Interfacing chips 8086 Interfacing ICs 2 Topics Interfacing chips Programmable Communication Interface PCI (8251) Programmable Interval Timer (8253) Programmable Peripheral Interfacing - PPI (8255) Programmable DMA controller

More information

Digital Logic Level. Buses PCI (..continued) PTE MIK MIT

Digital Logic Level. Buses PCI (..continued) PTE MIK MIT Digital Logic Level Buses PCI (..continued) varady.geza@mik.pte.hu PTE MIK MIT PCI - arbitration REQ# GNT# REQ# GNT# PCI arbiter REQ# GNT# The PCI bus has to be acquired before use by the devices PCI uses

More information

QUIZ Ch.6. The EAT for a two-level memory is given by:

QUIZ Ch.6. The EAT for a two-level memory is given by: QUIZ Ch.6 The EAT for a two-level memory is given by: EAT = H Access C + (1-H) Access MM. Derive a similar formula for three-level memory: L1, L2 and RAM. Hint: Instead of H, we now have H 1 and H 2. Source:

More information

Buses. Maurizio Palesi. Maurizio Palesi 1

Buses. Maurizio Palesi. Maurizio Palesi 1 Buses Maurizio Palesi Maurizio Palesi 1 Introduction Buses are the simplest and most widely used interconnection networks A number of modules is connected via a single shared channel Microcontroller Microcontroller

More information

OPERATING SYSTEMS CS136

OPERATING SYSTEMS CS136 OPERATING SYSTEMS CS136 Jialiang LU Jialiang.lu@sjtu.edu.cn Based on Lecture Notes of Tanenbaum, Modern Operating Systems 3 e, 1 Chapter 5 INPUT/OUTPUT 2 Overview o OS controls I/O devices => o Issue commands,

More information

Infineon C167CR microcontroller, 256 kb external. RAM and 256 kb external (Flash) EEPROM. - Small single-board computer (SBC) with an

Infineon C167CR microcontroller, 256 kb external. RAM and 256 kb external (Flash) EEPROM. - Small single-board computer (SBC) with an Microcontroller Basics MP2-1 week lecture topics 2 Microcontroller basics - Clock generation, PLL - Address space, addressing modes - Central Processing Unit (CPU) - General Purpose Input/Output (GPIO)

More information

These three counters can be programmed for either binary or BCD count.

These three counters can be programmed for either binary or BCD count. S5 KTU 1 PROGRAMMABLE TIMER 8254/8253 The Intel 8253 and 8254 are Programmable Interval Timers (PTIs) designed for microprocessors to perform timing and counting functions using three 16-bit registers.

More information

CMPE401 Computer Interfacing

CMPE401 Computer Interfacing CMPE401 Computer Interfacing MIDTERM EXAMINATION October 24, 2007 Name: ID: 5 questions. 50 minutes. Allowed material: Course notes A 68000 Programming Reference Card Calculators Model solutions of midterms,

More information

Chapter 1: Basics of Microprocessor [08 M]

Chapter 1: Basics of Microprocessor [08 M] Microprocessor: Chapter 1: Basics of Microprocessor [08 M] It is a semiconductor device consisting of electronic logic circuits manufactured by using either a Large scale (LSI) or Very Large Scale (VLSI)

More information

EEM336 Microprocessors I. I/O Interface

EEM336 Microprocessors I. I/O Interface EEM336 Microprocessors I I/O Interface Introduction Basic I/O interface Handshaking process Serial and Parallel communication I/O interface examples 2 Chapter Objectives Upon completion of this chapter,

More information

Chapter 6. I/O issues

Chapter 6. I/O issues Computer Architectures Chapter 6 I/O issues Tien-Fu Chen National Chung Cheng Univ Chap6 - Input / Output Issues I/O organization issue- CPU-memory bus, I/O bus width A/D multiplex Split transaction Synchronous

More information

COMP 273 Winter asynchronous I/O April 5, 2012

COMP 273 Winter asynchronous I/O April 5, 2012 All the I/O examples we have discussed use the system bus to send data between the CPU, main memory, and I/O controllers. The system bus runs at a slower clock speed than the CPU because of greater distances

More information

Universal Serial Bus Host Interface on an FPGA

Universal Serial Bus Host Interface on an FPGA Universal Serial Bus Host Interface on an FPGA Application Note For many years, designers have yearned for a general-purpose, high-performance serial communication protocol. The RS-232 and its derivatives

More information

EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers UNIT-I

EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers UNIT-I EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers 1. Define microprocessors? UNIT-I A semiconductor device(integrated circuit) manufactured by using the LSI technique. It includes

More information

8051 Timers and Serial Port

8051 Timers and Serial Port 8051 Timers and Serial Port EE4380 Fall 2001 Class 10 Pari vallal Kannan Center for Integrated Circuits and Systems University of Texas at Dallas Timer: Mode 1 Operation (recap) 16 bit counter. Load the

More information

Input-Output Organization

Input-Output Organization Ted Borys - CSI 404 5/1/2004 Page 11-1 Section 11 Input-Output Organization ASCII Character Set 94 printable characters Upper & lowercase letters 10 numerals Special characters such as $, @, #, % 34 control

More information

Organisasi Sistem Komputer

Organisasi Sistem Komputer LOGO Organisasi Sistem Komputer OSK 5 Input Output 1 1 PT. Elektronika FT UNY Input/Output Problems Wide variety of peripherals Delivering different amounts of data At different speeds In different formats

More information

Chapter 5 Input/Output. I/O Devices

Chapter 5 Input/Output. I/O Devices Chapter 5 Input/Output 5.1 Principles of I/O hardware 5.2 Principles of I/O software 5.3 I/O software layers 5.4 Disks 5.5 Clocks 5.6 Character-oriented terminals 5.7 Graphical user interfaces 5.8 Network

More information

ECE 571 Advanced Microprocessor-Based Design Lecture 3

ECE 571 Advanced Microprocessor-Based Design Lecture 3 ECE 571 Advanced Microprocessor-Based Design Lecture 3 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 30 January 2018 Homework #1 was posted Announcements 1 Microprocessors Also

More information

INPUT-OUTPUT ORGANIZATION

INPUT-OUTPUT ORGANIZATION INPUT-OUTPUT ORGANIZATION Peripheral Devices Input-Output Interface Asynchronous Data Transfer Modes of Transfer Priority Interrupt Direct Memory Access Input-Output Processor Serial Communication PERIPHERAL

More information

Design and Implementation Interrupt Mechanism

Design and Implementation Interrupt Mechanism Design and Implementation Interrupt Mechanism 1 Module Overview Study processor interruption; Design and implement of an interrupt mechanism which responds to interrupts from timer and UART; Program interrupt

More information

PC Interrupt Structure and 8259 DMA Controllers

PC Interrupt Structure and 8259 DMA Controllers ELEC 379 : DESIGN OF DIGITAL AND MICROCOMPUTER SYSTEMS 1998/99 WINTER SESSION, TERM 2 PC Interrupt Structure and 8259 DMA Controllers This lecture covers the use of interrupts and the vectored interrupt

More information

I/O Organization John D. Carpinelli, All Rights Reserved 1

I/O Organization John D. Carpinelli, All Rights Reserved 1 I/O Organization 1997 John D. Carpinelli, All Rights Reserved 1 Outline I/O interfacing Asynchronous data transfer Interrupt driven I/O DMA transfers I/O processors Serial communications 1997 John D. Carpinelli,

More information

Bus System. Bus Lines. Bus Systems. Chapter 8. Common connection between the CPU, the memory, and the peripheral devices.

Bus System. Bus Lines. Bus Systems. Chapter 8. Common connection between the CPU, the memory, and the peripheral devices. Bus System Chapter 8 CSc 314 T W Bennet Mississippi College 1 CSc 314 T W Bennet Mississippi College 3 Bus Systems Common connection between the CPU, the memory, and the peripheral devices. One device

More information

Hello, and welcome to this presentation of the STM32 Low Power Universal Asynchronous Receiver/Transmitter interface. It covers the main features of

Hello, and welcome to this presentation of the STM32 Low Power Universal Asynchronous Receiver/Transmitter interface. It covers the main features of Hello, and welcome to this presentation of the STM32 Low Power Universal Asynchronous Receiver/Transmitter interface. It covers the main features of this interface, which is widely used for serial communications.

More information

The D igital Digital Logic Level Chapter 3 1

The D igital Digital Logic Level Chapter 3 1 The Digital Logic Level Chapter 3 1 Gates and Boolean Algebra (1) (a) A transistor inverter. (b) A NAND gate. (c) A NOR gate. 2 Gates and Boolean Algebra (2) The symbols and functional behavior for the

More information

EXPERIMENT #7 PARALLEL INTERFACING USING THE PERIPHERAL INTERFACE ADAPTER (PIA)

EXPERIMENT #7 PARALLEL INTERFACING USING THE PERIPHERAL INTERFACE ADAPTER (PIA) EXPERIMENT #7 PARALLEL INTERFACING USING THE PERIPHERAL INTERFACE ADAPTER (PIA) 1.0 Procedure The purpose of this experiment is to introduce the student to the following topics: the Peripheral Interface

More information

HP 48 I/O Technical Interfacing Guide

HP 48 I/O Technical Interfacing Guide HP 48 I/O Technical Interfacing Guide HP 48 I/0 Technical Interfacing Guide CONTENTS INTRODUCTION... 3 WIRED SERIAL I/O HARDWARE... 3 CABLE WIRING... 3 SERIAL FORMAT... 5 Example: an 'H' (48 hex)... 5

More information

The 9S12 in Expanded Mode - Using MSI logic to build ports Huang Chapter 14

The 9S12 in Expanded Mode - Using MSI logic to build ports Huang Chapter 14 The 9S12 in Expanded Mode - Using MSI logic to build ports Huang Chapter 14 Using MSI Logic To Build An Output Port Many designs use standard MSI logic for microprocessor expansion This provides an inexpensive

More information

Interrupt/Timer/DMA 1

Interrupt/Timer/DMA 1 Interrupt/Timer/DMA 1 Exception An exception is any condition that needs to halt normal execution of the instructions Examples - Reset - HWI - SWI 2 Interrupt Hardware interrupt Software interrupt Trap

More information

ECE 341. Lecture # 19

ECE 341. Lecture # 19 ECE 341 Lecture # 19 Instructor: Zeshan Chishti zeshan@ece.pdx.edu December 3, 2014 Portland State University Announcements Final exam is on Monday, December 8 from 5:30 PM to 7:20 PM Similar format and

More information

INTERFACING THE ISCC TO THE AND 8086

INTERFACING THE ISCC TO THE AND 8086 APPLICATION NOTE INTERFACING THE ISCC TO THE 68 AND 886 INTRODUCTION The ISCC uses its flexible bus to interface with a variety of microprocessors and microcontrollers; included are the 68 and 886. The

More information

The Purpose of Interrupt

The Purpose of Interrupt Interrupts 3 Introduction In this chapter, the coverage of basic I/O and programmable peripheral interfaces is expanded by examining a technique called interrupt-processed I/O. An interrupt is a hardware-initiated

More information

EEL 4744C: Microprocessor Applications. Lecture 7. Part 2. M68HC12 Interrupt. Dr. Tao Li 1

EEL 4744C: Microprocessor Applications. Lecture 7. Part 2. M68HC12 Interrupt. Dr. Tao Li 1 EEL 4744C: Microprocessor Applications Lecture 7 Part 2 M68HC12 Interrupt Dr. Tao Li 1 Reading Assignment Software and Hardware Engineering (New version): Chapter 12 or SHE (old version) Chapter 8 And

More information

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum)

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum) I/O Fall 2011 Tore Larsen Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum) Big Picture Today we talk about I/O characteristics interconnection devices & controllers (disks

More information

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum)

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum) I/O Fall 2010 Tore Larsen Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum) Big Picture Today we talk about I/O characteristics interconnection devices & controllers (disks

More information

VORAGO VA108x0 I 2 C programming application note

VORAGO VA108x0 I 2 C programming application note AN1208 VORAGO VA108x0 I 2 C programming application note MARCH 14, 2017 Version 1.1 VA10800/VA10820 Abstract There are hundreds of peripheral devices utilizing the I 2 C protocol. Most of these require

More information

I/O Systems. Amir H. Payberah. Amirkabir University of Technology (Tehran Polytechnic)

I/O Systems. Amir H. Payberah. Amirkabir University of Technology (Tehran Polytechnic) I/O Systems Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Amir H. Payberah (Tehran Polytechnic) I/O Systems 1393/9/15 1 / 57 Motivation Amir H. Payberah (Tehran

More information

More on IO: The Universal Serial Bus (USB)

More on IO: The Universal Serial Bus (USB) ecture 37 Computer Science 61C Spring 2017 April 21st, 2017 More on IO: The Universal Serial Bus (USB) 1 Administrivia Project 5 is: USB Programming (read from a mouse) Optional (helps you to catch up

More information