Advanced Computer Architecture Lecture 11

Slides:



Advertisements
Similar presentations
Parul Polytechnic Institute
Advertisements

Fall EE 333 Lillevik 333f06-s3 University of Portland School of Engineering Computer Organization Final Exam Study Final Exam Tuesday, December.
I/O Unit.
CSCI 4717/5717 Computer Architecture
CS-334: Computer Architecture
1 TK2633TK Microprocessor Architecture DR MASRI AYOB.
Midterm Tuesday October 23 Covers Chapters 3 through 6 - Buses, Clocks, Timing, Edge Triggering, Level Triggering - Cache Memory Systems - Internal Memory.
Chapter 7 Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats.
Group 7 Jhonathan Briceño Reginal Etienne Christian Kruger Felix Martinez Dane Minott Immer S Rivera Ander Sahonero.
INPUT/OUTPUT ARCHITECTURE By Truc Truong. Input Devices Keyboard Keyboard Mouse Mouse Scanner Scanner CD-Rom CD-Rom Game Controller Game Controller.
Input / Output CS 537 – Introduction to Operating Systems.
Spring EE 437 Lillevik 437s06-l2 University of Portland School of Engineering Advanced Computer Architecture Lecture 2 NSD with MUX and ROM Class.
1 Computer System Overview Chapter 1. 2 n An Operating System makes the computing power available to users by controlling the hardware n Let us review.
Input/ Output By Mohit Sehgal. What is Input/Output of a Computer? Connection with Machine Every machine has I/O (Like a function) In computing, input/output,
MICROPROCESSOR INPUT/OUTPUT
Spring EE 437 Lillevik 437s06-l8 University of Portland School of Engineering Advanced Computer Architecture Lecture 8 Project 3: memory agent Programmed.
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
Spring EE 437 Lillevik 437s06-l24 University of Portland School of Engineering Advanced Computer Architecture Lecture 24 Eight-node distributed.
Direct Memory Access (DMA) Microprocessors I -1. Topics to be discussed  Basic DMA Concept Basic DMA Concept  DMA pins and timing DMA pins and timing.
Spring EE 437 Lillevik 437s06-l9 University of Portland School of Engineering Advanced Computer Architecture Lecture 9 DMA controller design.
Spring EE 437 Lillevik 437s06-l16 University of Portland School of Engineering Advanced Computer Architecture Lecture 16 Cache design example Data/tag.
Fall EE 333 Lillevik 333f06-l17 University of Portland School of Engineering Computer Organization Lecture 17 Controller design Microprogramming.
Fall EE 333 Lillevik 333f06-l23 University of Portland School of Engineering Computer Organization Lecture 23 RAID Input/output design RS232 serial.
Fall EE 333 Lillevik 333f06-l13 University of Portland School of Engineering Computer Organization Lecture 13 Controller implementations Register.
Spring EE 437 Lillevik 437s06-l5 University of Portland School of Engineering Advanced Computer Architecture Lecture 5 Slave bus agent ROM example.
Input Output Techniques Programmed Interrupt driven Direct Memory Access (DMA)
بسم الله الرحمن الرحيم MEMORY AND I/O.
Fall EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Computer Organization Lecture 22 Project 6 Hard disk drive Bus arbitration.
I/O: Input-Output By: Tommy Zeng. What is I/O? I/O – short for “Input – Output” How a computer interacts with its users Input – gets information from.
Direct Memory Access (DMA) Department of Computer Engineering, M.S.P.V.L. Polytechnic College, Pavoorchatram. A Presentation On.
Spring EE 437 Lillevik 437s06-l4 University of Portland School of Engineering Advanced Computer Architecture Lecture 4 Project 1 reviews CPU controller.
Networked Embedded Systems Pengyu Zhang & Sachin Katti EE107 Spring 2016 Lecture 11 Direct Memory Access.
Input/Output (I/O) Important OS function – control I/O
Everybody.
ISA System Architecture
Direct Memory address and 8237 dma controller LECTURE 6
CPU Sequencing 6/30/2018.
Input/Output.
Introduction of microprocessor
BVM Engineering College Electrical Engineering Department : Microprocessor and Microcontroller Interfacing Interrupts of 8051 Prepared by:
I/O system.
8086/8088 Hardware Specifications
8085 Microprocessor Architecture
CS703 - Advanced Operating Systems
Microcomputer Architecture
Advanced Computer Architecture Lecture 14
Overview Peripheral Devices Input-Output Interface
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Computer Architecture
Parallel communication interface 8255
Morgan Kaufmann Publishers Computer Organization and Assembly Language
ECEG-3202 Computer Architecture and Organization
Operating Systems Chapter 5: Input/Output Management
8085 Microprocessor Architecture
Md. Mojahidul Islam Lecturer Dept. of Computer Science & Engineering
Md. Mojahidul Islam Lecturer Dept. of Computer Science & Engineering
Components of a CPU AS Computing - F451.
8085 Microprocessor Architecture
Advanced Computer Architecture Lecture 1
AGENDA Architecture Microprocessor Communication and Bus Timings
Wireless Embedded Systems
AGENDA Architecture Microprocessor Communication and Bus Timings
Jazan University, Jazan KSA
Computer Architecture
CPU Sequencing 7/20/2019.
Advanced Computer Architecture Lecture 10
William Stallings Computer Organization and Architecture
Advanced Computer Architecture Lecture 19
Advanced Computer Architecture Lecture 23
Advanced Computer Architecture Lecture 3
Presentation transcript:

Advanced Computer Architecture Lecture 11 DMA controller FSM design Specific example Lillevik 437s06-l11 University of Portland School of Engineering

Hard drive DMA Requirements Initialization commands Project 5 Requirements Operation: Input, or read disk, or read file HD buffer: represent with a ROM Initialization commands Port 1: start address Port 2: word count Port 4: start Design contains 5 sections Lillevik 437s06-l11 University of Portland School of Engineering

HD system schematic Lillevik 437s06-l11 University of Portland School of Engineering

DMA hardware view n words adr X adr X+(n-1) Memory I/O device buffer System bus adr 0 adr (n-1) Lillevik 437s06-l11 University of Portland School of Engineering

DMA controller block diagram one section Word Count Data Buffer Memory Address Control D A C Xcvr Port1 Port2 BAclr BAinc WCdec MAinc Zero Ben Lillevik 437s06-l11 University of Portland School of Engineering

HD DMA schematic Lillevik 437s06-l11 University of Portland School of Engineering

FSM requirements Wait for start signal (Port 4) Request the bus Wait for bus grant from arbiter Clear the BA counter Loop: write memory, wait for ACK, adjust counters, check for zero? Interrupt CPU and wait for INTA Lillevik 437s06-l11 University of Portland School of Engineering

FSM loop pseudo code execute Port1, Port2 for (wc = nn; wc != 0; wc--) { get the bus (Breq, Bgnt) drive the bus (Ben) wait for acknowledge (Ack) increment counters (BA, MA, WC) } Assert interrupt and wait for acknowledge Lillevik 437s06-l11 University of Portland School of Engineering

FSM input/outputs Clk, Reset Bgnt Breq FSM Port4 Ben Zero Count Ack Inta Int Port4 Clear Ack Lillevik 437s06-l11 University of Portland School of Engineering

FSM partial state diagram? Loop only Input Output Port4 Port4 a Reset Lillevik 437s06-l11 University of Portland School of Engineering

FSM state diagram? Input Output Port4 Port4 a Reset Lillevik 437s06-l11 University of Portland School of Engineering

Specific HD example Memory HD device buffer adr 27 adr 7 7+1 words System bus adr 0 adr 20 Lillevik 437s06-l11 University of Portland School of Engineering

HD buffer contents Sort of a marching one’s pattern Lillevik 437s06-l11 University of Portland School of Engineering

CPU program Initialize memory address counter to 0x20, word count to 0x07 Tell the DMA controller to start transferring data Do nothing Wait for interrupt Lillevik 437s06-l11 University of Portland School of Engineering

Find CPU program? Lillevik 437s06-l11 University of Portland School of Engineering

Find instructions across bus? Step Instruction (hex) Comment 1 a0120 Cpu writing 2 a0207 3 a0400 Cpu 4 62001 5 62102 6 62204 7 62308 8 62410 9 62520 10 62640 11 62780 12 Lillevik 437s06-l11 University of Portland School of Engineering

Lillevik 437s06-l11 University of Portland School of Engineering

FSM partial state diagram? Loop only Ack Breq Ben We will check for zero here Ack c d Bgnt Bgnt b e Port4 Count Breq Port4 a Reset Lillevik 437s06-l11 University of Portland School of Engineering

FSM State Diagram? b e c d f a Reset Port4 Bgnt Ack Zero Breq Ben Count Inta Int g Clear Input Output Lillevik 437s06-l11 University of Portland School of Engineering

Find CPU program? Lillevik 437s06-l11 University of Portland School of Engineering

Find instructions across bus? Step Instruction (hex) Comment 1 A0120 MA = 0x20 2 A0207 WC = 0x07 3 A0400 Start DMA transfers 4 62001 Mem[20] = 0x01 5 62102 Mem[21] = 0x02 6 62204 Mem[22] = 0x04 7 62308 Mem[23] = 0x08 8 62410 Mem[24] = 0x10 9 62520 Mem[25] = 0x20 10 62640 Mem[26] = 0x40 11 62780 Mem[27] = 0x80 12 Lillevik 437s06-l11 University of Portland School of Engineering