SlideShare a Scribd company logo
1 of 36
AJAL.A.J

Assistant Professor –Dept of ECE,
UNIVERSAL ENGINEERING COLLEGE
  
Mob: 8907305642   MAIL: ec2reach@gmail.com
•The DMA I/O technique
provides direct access to
the memory while the
microprocessor is
temporarily disabled.
Three ways to synchronize the
processor to data rate of
peripherals:
1- Polling: which provides a fast response but it the
processor recourses are dedicated to one peripheral.
2- Interrupt approach: is much more efficient. the
processor only services the peripheral when data is
required. requires high software overhead.
3-DMA is a third solution but it increases the
complexity of the hardware system.
DMA

• Direct Memory Access.

• In memory-memory or memory-peripherals communication, the
processor is a “middleman” which is not really needed.
• Used with HOLD HOLDA signals.
• DMA requires another processor - The DMA Controller or DMACto generate the memory and I/O addresses.
• 8237 is a DMAC.
• In IBM PC, 8237 was used to speed up the read or write
operation by the slow 8088 processor.

• Nowadays, It is usually used by sound cards and by
memory controllers to generate row address for
refreshing.
I/O Data Transfer
Basic DMA concept
Direct memory access (DMA) is a feature of modern computer
systems that allows certain hardware subsystems to read/write data
to/from memory without microprocessor intervention, allowing the
processor to do other work.

Used in disk controllers, video/sound cards etc, or
between memory locations
.

Typically, the CPU initiates DMA transfer, does other operations while
the transfer is in progress, and receives an interrupt from the DMA
controller once the operation is complete.
Can create cache coherency problems (the data in the
cache may be different from the data in the external memory after
DMA)
B
ASIC DM T RM
A E INOL
OGY
DMA channel: system pathway used by a
device to transfer information directly to and
from memory. There are usually 8 in a
computer system
DMA controller: dedicated hardware used
for controlling the DMA operation
Single-cycle mode: DMA data transfer is
done one byte at a time
Burst-mode: DMA transfer is finished when
all data has been moved
DMA pins and timing

• x86 Interrupt Pins

– HOLD: DMA request.
• Sampled in the middle of any clocking cycle
– HLDA: DMA acknowledge signal.
• The address, data and control buses are set to high-Z,
so the I/O devices can control the system bus

8
•
•
•

DMA on the 8086
Microprocessor

The CPU may have to wait (hold cycles).
The DMA will then let the device that requested the DMA transfer know
that the transfer is commencing by asserting the -DACK signal.
Once the data has been transferred, The DMA will de-assert the -DACK2
signal, so that the FDC knows it must stop placing data on the bus.

• The DMA will now check to see if any of the other DMA
channels have any work to do. If none of the channels have
their DRQ lines asserted, the DMA controller has completed
its work and will now tri-state the -MEMR, -MEMW, -IOR,
-IOW and address signals.
•

Finally, the DMA will de-assert the HOLD signal. The CPU sees this, and
de-asserts the HOLDA signal. Now the CPU resumes control of the buses
and address lines, and it resumes executing instructions and accessing
main memory and the peripherals.

9
8237 pins

• CLK: System clock
• CS΄: Chip select (decoder output)
8237
• RESET: Clears registers, sets mask register
• READY: 0 for inserting wait states
• HLDA: Signals that the μp has relinquished buses
• DREQ3 – DREQ0: DMA request input for each channel
• DB7-DB0: Data bus pins
• IOR΄: Bidirectional pin used during programming
and during a DMA write cycle
• IOW΄: Bidirectional pin used during programming
and during a DMA read cycle
• EOP΄: End of process is a bidirectional signal used as input to terminate a DMA process or as
output to signal the end of the DMA transfer
• A3-A0: Address pins for selecting internal registers
• A7-A4: Outputs that provide part of the DMA transfer address
• HRQ: DMA request output
• DACK3-DACK0: DMA acknowledge for each channel.
• AEN: Address enable signal
• ADSTB: Address strobe
• MEMR΄: Memory read output used in DMA read cycle
10
• MEMW΄: Memory write output used in DMA write cycle
8237/

8257
Minimal System with a
DMA Controller
CPU

Interrupt

Bus
Arbiter

Memory

On-Chip-Bus

Request
DMA
Controller

Acknowledge

Peripheral
Device
8237 DMA controller
Description of pin
diagram

 D0-D7:

 it is a bidirectional ,tri state ,Buffered

,Multiplexed data (D0-D7)and (A8-A15).
 In the slave mode it is a bidirectional (Data is
moving).
 In the Master mode it is a unidirectional
(Address is moving).
IOR:

 It is active low ,tristate ,buffered ,Bidirectional

lines.
 In the slave mode it function as a input line. IOR
signal is generated by microprocessor to read the
contents 8257 registers.
 In the master mode it function as a output line.
IOR signal is generated by 8257 during write cycle
IOW:
 It is active low ,tristate ,buffered ,Bidirectional

control lines.

 In the slave mode it function as a

input line. IOR signal is generated by

microprocessor to write the contents 8257
registers.
 In the master mode it function as a output line.
IOR signal is generated by 8257 during read cycle
CLK:
 It is the input line ,connected with TTL clock generator.
 This signal is ignored in slave mode.

RESET:
 Used to clear mode set registers and status registers

A0-A3:
These are the tristate, buffer, bidirectional address lines.

In slave mode ,these lines are used as address

inputs lines and internally decoded to access the internal
registers.

In master mode, these lines are used as address

outputs lines,A0-A3 bits of memory address on the lines.
CS:
 It is active low, Chip select input line.

 In the slave mode, it is used to select the chip.
 In the master mode, it is ignored.

A4-A7:
These are the tristate, buffer, output address lines.
In slave mode ,these lines are used as address
input lines.
In master mode, these lines are used as address
outputs lines,A0-A3 bits of memory address on
the lines.
READY:
 It is a asynchronous input line.

 In master mode,
When ready is high it receives the signal.
When ready is low, it adds wait state between S1
and S3
 In slave mode ,
this signal is ignored.

HRQ:
 It is used to receiving the hold request signal from

the output device.
HLDA:
 It is acknowledgment signal from microprocessor.

MEMR:
 It is active low ,tristate ,Buffered control output line.
 In slave mode, it is tristated.
 In master mode ,it activated during DMA read cycle.

MEMW:
 It is active low ,tristate ,Buffered control input line.
 In slave mode, it is tristated.
 In master mode ,it activated during DMA write cycle.
AEN (Address enable):





It is a control output line.
In master mode ,it is high
In slave mode ,it is low
Used it isolate the system address ,data ,and
control lines.

ADSTB: (Address Strobe)





It is a control output line.
Used to split data and address line.
It is working in master mode only.
In slave mode it is ignore.
TC (Terminal Count):
 It is a status of output line.
 It is activated in master mode only.
 It is high ,it selected the peripheral.
 It is low ,it free and looking for a new peripheral.
MARK:
 It is a modulo 128 MARK output line.
 It is activated in master mode only.
 It goes high ,after transferring every 128 bytes of
data block.
DRQ0-DRQ3 (DMA Request):
 These are the asynchronous peripheral request

input signal.
 The request signals is generated by external
peripheral device.

DACK0-DACK3:
 These are the active low DMA acknowledge

output lines.
 Low level indicate that ,peripheral is selected for
giving the information (DMA cycle).
 In master mode it is used for chip select.
 HLDA becomes active to indicate the processor

has placed its buses at high-impedance state.
 as can be seen in the timing diagram, there are

a few clock cycles between the time that HOLD
changes and until HLDA changes

 HLDA output is a signal to the requesting device

that the processor has relinquished control of its
memory and I/O space.
 one could call HOLD input a DMA request
input and HLDA output a DMA grant signal
8237 block diagram

25
Description
 It containing Five main Blocks.
1. Data bus buffer
2. Read/Control logic
3. Control logic block
4. Priority resolver
5. DMA channels.
DATA BUS BUFFER:
 It contain tristate ,8 bit bi-directional buffer.
 Slave mode ,it transfer data between
microprocessor and internal data bus.
 Master mode ,the outputs A8-A15 bits of

memory address on data lines
(Unidirectional).

READ/CONTROL LOGIC:
 It control all internal Read/Write operation.
 Slave mode ,it accepts address bits and control
signal from microprocessor.
 Master mode ,it generate address bits and control
signal.
Control logic block:
It contains ,
1. Control logic
2. Mode set register and
3. Status Register.


CONTROL LOGIC:






Master mode ,It control the sequence of DMA
operation during all DMA cycles.
It generates address and control signals.
It increments 16 bit address and decrement 14 bit
counter registers.
It activate a HRQ signal on DMA channel Request.
Slave ,mode it is disabled.
FIGURE A DMA controller allows the peripheral to
interface directly with memory without processor
intervention. This allows the data transfer rate to approach
the access time of memory.

Types:
Sequential DMA
Simultaneous DMA
FIGURE Three methods (MODES) of DMA
operation: (a) byte; (b) burst; (c) block.
DMA is implemented using a
DMA controller
– DMA controller
• Acts as slave to processor
• Receives instructions from processor
• Example: Reading from an I/O device
– Processor gives details to the DMA controller
» I/O device number
» Main memory buffer address
» Number of bytes to transfer
» Direction of transfer (memory → I/O device, or
vice versa)
Steps in a DMA operation
 Processor initiates the DMA controller
 Gives device number, memory buffer pointer, …
 Called channel

initialization

 Once initialized, it is ready for data transfer



When ready, I/O device informs the DMA
controller
 DMA controller starts the data transfer process






Obtains bus by going through bus arbitration
Places memory address and appropriate control signals
Completes transfer and releases the bus
Updates memory address and count value
If more to read, loops back to repeat the process

 Notify the processor when done
 Typically uses an interrupt
DMA controller details
Modes of Operation
 Rotating priority Mode:
 The priority of the channels has a circular

sequence.

 Fixed Priority Rotating Mode:





The priority is fixed.
TC Stop Mode
Auto Load mode
Extended Write mode
DMA Cycles
1. DMA read
2. DMA write
3. DMA Verify
8237 / 8257 DMA

More Related Content

What's hot

Introduction to 8085 Microprocessor
Introduction to 8085 MicroprocessorIntroduction to 8085 Microprocessor
Introduction to 8085 MicroprocessorRavi Anand
 
flag register of 8086
flag register of 8086flag register of 8086
flag register of 8086asrithak
 
8257 DMA Controller
8257 DMA Controller8257 DMA Controller
8257 DMA ControllerShivamSood22
 
Control Units : Microprogrammed and Hardwired:control unit
Control Units : Microprogrammed and Hardwired:control unitControl Units : Microprogrammed and Hardwired:control unit
Control Units : Microprogrammed and Hardwired:control unitabdosaidgkv
 
Addressing modes of 8051
Addressing modes of 8051Addressing modes of 8051
Addressing modes of 8051SARITHA REDDY
 
8051 Microcontroller PPT's By Er. Swapnil Kaware
8051 Microcontroller PPT's By Er. Swapnil Kaware8051 Microcontroller PPT's By Er. Swapnil Kaware
8051 Microcontroller PPT's By Er. Swapnil KawareProf. Swapnil V. Kaware
 
Computer architecture input output organization
Computer architecture input output organizationComputer architecture input output organization
Computer architecture input output organizationMazin Alwaaly
 
Addressing modes of 8086
Addressing modes of 8086Addressing modes of 8086
Addressing modes of 8086saurav kumar
 
Pic 18 microcontroller
Pic 18 microcontrollerPic 18 microcontroller
Pic 18 microcontrollerAshish Ranjan
 
8237 dma controller
8237 dma controller8237 dma controller
8237 dma controllerTech_MX
 
8259 Programmable Interrupt Controller
8259 Programmable Interrupt Controller8259 Programmable Interrupt Controller
8259 Programmable Interrupt Controllerabhikalmegh
 
Unit II Arm 7 Introduction
Unit II Arm 7 IntroductionUnit II Arm 7 Introduction
Unit II Arm 7 IntroductionDr. Pankaj Zope
 
Modes Of Transfer in Input/Output Organization
Modes Of Transfer in Input/Output OrganizationModes Of Transfer in Input/Output Organization
Modes Of Transfer in Input/Output OrganizationMOHIT AGARWAL
 
Instruction sets of 8086
Instruction sets of 8086Instruction sets of 8086
Instruction sets of 8086Mahalakshmiv11
 

What's hot (20)

Introduction to 8085 Microprocessor
Introduction to 8085 MicroprocessorIntroduction to 8085 Microprocessor
Introduction to 8085 Microprocessor
 
flag register of 8086
flag register of 8086flag register of 8086
flag register of 8086
 
8086 micro processor
8086 micro processor8086 micro processor
8086 micro processor
 
8257 DMA Controller
8257 DMA Controller8257 DMA Controller
8257 DMA Controller
 
Control Units : Microprogrammed and Hardwired:control unit
Control Units : Microprogrammed and Hardwired:control unitControl Units : Microprogrammed and Hardwired:control unit
Control Units : Microprogrammed and Hardwired:control unit
 
Addressing modes of 8051
Addressing modes of 8051Addressing modes of 8051
Addressing modes of 8051
 
8051 Microcontroller PPT's By Er. Swapnil Kaware
8051 Microcontroller PPT's By Er. Swapnil Kaware8051 Microcontroller PPT's By Er. Swapnil Kaware
8051 Microcontroller PPT's By Er. Swapnil Kaware
 
Computer architecture input output organization
Computer architecture input output organizationComputer architecture input output organization
Computer architecture input output organization
 
Addressing modes of 8086
Addressing modes of 8086Addressing modes of 8086
Addressing modes of 8086
 
Pic 18 microcontroller
Pic 18 microcontrollerPic 18 microcontroller
Pic 18 microcontroller
 
8237 dma controller
8237 dma controller8237 dma controller
8237 dma controller
 
8259 Programmable Interrupt Controller
8259 Programmable Interrupt Controller8259 Programmable Interrupt Controller
8259 Programmable Interrupt Controller
 
Timing diagram 8085 microprocessor
Timing diagram 8085 microprocessorTiming diagram 8085 microprocessor
Timing diagram 8085 microprocessor
 
Direct Memory Access
Direct Memory AccessDirect Memory Access
Direct Memory Access
 
Adc interfacing
Adc interfacingAdc interfacing
Adc interfacing
 
LCD Interacing with 8051
LCD Interacing with 8051LCD Interacing with 8051
LCD Interacing with 8051
 
Unit II Arm 7 Introduction
Unit II Arm 7 IntroductionUnit II Arm 7 Introduction
Unit II Arm 7 Introduction
 
Modes Of Transfer in Input/Output Organization
Modes Of Transfer in Input/Output OrganizationModes Of Transfer in Input/Output Organization
Modes Of Transfer in Input/Output Organization
 
Instruction sets of 8086
Instruction sets of 8086Instruction sets of 8086
Instruction sets of 8086
 
Communication Protocols (UART, SPI,I2C)
Communication Protocols (UART, SPI,I2C)Communication Protocols (UART, SPI,I2C)
Communication Protocols (UART, SPI,I2C)
 

Viewers also liked

DMA controller intel 8257
DMA controller intel 8257DMA controller intel 8257
DMA controller intel 8257Daniel Ilunga
 
Direct Memory Access(DMA)
Direct Memory Access(DMA)Direct Memory Access(DMA)
Direct Memory Access(DMA)Page Maker
 
Direct Memory Access
Direct Memory AccessDirect Memory Access
Direct Memory AccessSanjay Saluth
 
8279 in microprocessor
8279 in microprocessor8279 in microprocessor
8279 in microprocessorAisu
 
T-states in microprocessor 8085
T-states in microprocessor 8085T-states in microprocessor 8085
T-states in microprocessor 8085yedles
 
Booths Multiplication Algorithm
Booths Multiplication AlgorithmBooths Multiplication Algorithm
Booths Multiplication Algorithmknightnick
 
Booths algorithm for Multiplication
Booths algorithm for MultiplicationBooths algorithm for Multiplication
Booths algorithm for MultiplicationVikas Yadav
 
Booths Multiplication Algorithm
Booths Multiplication AlgorithmBooths Multiplication Algorithm
Booths Multiplication Algorithmknightnick
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processingKamal Acharya
 

Viewers also liked (11)

DMA controller intel 8257
DMA controller intel 8257DMA controller intel 8257
DMA controller intel 8257
 
Direct Memory Access(DMA)
Direct Memory Access(DMA)Direct Memory Access(DMA)
Direct Memory Access(DMA)
 
Direct Memory Access
Direct Memory AccessDirect Memory Access
Direct Memory Access
 
8279 in microprocessor
8279 in microprocessor8279 in microprocessor
8279 in microprocessor
 
T-states in microprocessor 8085
T-states in microprocessor 8085T-states in microprocessor 8085
T-states in microprocessor 8085
 
Booths Multiplication Algorithm
Booths Multiplication AlgorithmBooths Multiplication Algorithm
Booths Multiplication Algorithm
 
09 Arithmetic
09  Arithmetic09  Arithmetic
09 Arithmetic
 
Booths algorithm for Multiplication
Booths algorithm for MultiplicationBooths algorithm for Multiplication
Booths algorithm for Multiplication
 
Booths Multiplication Algorithm
Booths Multiplication AlgorithmBooths Multiplication Algorithm
Booths Multiplication Algorithm
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processing
 
Booth Multiplier
Booth MultiplierBooth Multiplier
Booth Multiplier
 

Similar to 8237 / 8257 DMA

4.programmable dma controller 8257
4.programmable dma controller 82574.programmable dma controller 8257
4.programmable dma controller 8257MdFazleRabbi18
 
Direct memory access (dma) with 8257 DMA Controller
Direct memory access (dma) with 8257 DMA ControllerDirect memory access (dma) with 8257 DMA Controller
Direct memory access (dma) with 8257 DMA ControllerMuhammed Afsal Villan
 
Module 3 special purpose programmable devices and their interfacing
Module 3 special purpose programmable devices and their interfacingModule 3 special purpose programmable devices and their interfacing
Module 3 special purpose programmable devices and their interfacingDeepak John
 
Ppt micro fianle (1)
Ppt micro fianle (1)Ppt micro fianle (1)
Ppt micro fianle (1)Pavni Gairola
 
Dma and dma controller 8237
Dma and dma controller 8237Dma and dma controller 8237
Dma and dma controller 8237Ashwini Awatare
 
Direct Memory Access_Unit 5.pptx
Direct Memory Access_Unit 5.pptxDirect Memory Access_Unit 5.pptx
Direct Memory Access_Unit 5.pptxGovindJha93
 
Intel 8257 programmable dma controller
Intel 8257 programmable dma controllerIntel 8257 programmable dma controller
Intel 8257 programmable dma controllerabdulugc
 
Intel 8257 programmable dma controller
Intel 8257 programmable dma controllerIntel 8257 programmable dma controller
Intel 8257 programmable dma controllerafzal ahmad
 
3 L pin diagram.pptx
3 L pin diagram.pptx3 L pin diagram.pptx
3 L pin diagram.pptxPoonamarora73
 
8086 Programing.ppt
8086 Programing.ppt8086 Programing.ppt
8086 Programing.pptDrRRAMAN
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitterShivangiSharma879191
 
architecture of 8086 new Lecture 4new.pptx
architecture of 8086 new Lecture 4new.pptxarchitecture of 8086 new Lecture 4new.pptx
architecture of 8086 new Lecture 4new.pptxDrVikasMahor
 
8251 -USART.pptx
8251 -USART.pptx8251 -USART.pptx
8251 -USART.pptxVikasMahor3
 
MPI UNIT 4 - (Introduction to DMA and ADC)
MPI UNIT 4 - (Introduction to DMA and ADC)MPI UNIT 4 - (Introduction to DMA and ADC)
MPI UNIT 4 - (Introduction to DMA and ADC)RaviKiranVarma4
 
8086 Microprocessor by Nitish Nagar
8086 Microprocessor by Nitish Nagar8086 Microprocessor by Nitish Nagar
8086 Microprocessor by Nitish NagarNitish Nagar
 

Similar to 8237 / 8257 DMA (20)

4.programmable dma controller 8257
4.programmable dma controller 82574.programmable dma controller 8257
4.programmable dma controller 8257
 
Direct memory access (dma) with 8257 DMA Controller
Direct memory access (dma) with 8257 DMA ControllerDirect memory access (dma) with 8257 DMA Controller
Direct memory access (dma) with 8257 DMA Controller
 
Module 3 special purpose programmable devices and their interfacing
Module 3 special purpose programmable devices and their interfacingModule 3 special purpose programmable devices and their interfacing
Module 3 special purpose programmable devices and their interfacing
 
Ppt micro fianle (1)
Ppt micro fianle (1)Ppt micro fianle (1)
Ppt micro fianle (1)
 
DMA
DMADMA
DMA
 
Direct Memory Access.pdf
Direct Memory Access.pdfDirect Memory Access.pdf
Direct Memory Access.pdf
 
Dma and dma controller 8237
Dma and dma controller 8237Dma and dma controller 8237
Dma and dma controller 8237
 
Direct Memory Access_Unit 5.pptx
Direct Memory Access_Unit 5.pptxDirect Memory Access_Unit 5.pptx
Direct Memory Access_Unit 5.pptx
 
Programmable dma controller 8237
Programmable dma controller 8237Programmable dma controller 8237
Programmable dma controller 8237
 
Intel 8257 programmable dma controller
Intel 8257 programmable dma controllerIntel 8257 programmable dma controller
Intel 8257 programmable dma controller
 
Intel 8257 programmable dma controller
Intel 8257 programmable dma controllerIntel 8257 programmable dma controller
Intel 8257 programmable dma controller
 
8086 micro processor
8086 micro processor8086 micro processor
8086 micro processor
 
3 L pin diagram.pptx
3 L pin diagram.pptx3 L pin diagram.pptx
3 L pin diagram.pptx
 
8086 Programing.ppt
8086 Programing.ppt8086 Programing.ppt
8086 Programing.ppt
 
Concept of dma
Concept of dmaConcept of dma
Concept of dma
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter
 
architecture of 8086 new Lecture 4new.pptx
architecture of 8086 new Lecture 4new.pptxarchitecture of 8086 new Lecture 4new.pptx
architecture of 8086 new Lecture 4new.pptx
 
8251 -USART.pptx
8251 -USART.pptx8251 -USART.pptx
8251 -USART.pptx
 
MPI UNIT 4 - (Introduction to DMA and ADC)
MPI UNIT 4 - (Introduction to DMA and ADC)MPI UNIT 4 - (Introduction to DMA and ADC)
MPI UNIT 4 - (Introduction to DMA and ADC)
 
8086 Microprocessor by Nitish Nagar
8086 Microprocessor by Nitish Nagar8086 Microprocessor by Nitish Nagar
8086 Microprocessor by Nitish Nagar
 

More from AJAL A J

KEAM KERALA ENTRANCE EXAM
KEAM KERALA ENTRANCE EXAMKEAM KERALA ENTRANCE EXAM
KEAM KERALA ENTRANCE EXAMAJAL A J
 
Paleontology Career
Paleontology  CareerPaleontology  Career
Paleontology CareerAJAL A J
 
CHEMISTRY basic concepts of chemistry
CHEMISTRY  basic concepts of chemistryCHEMISTRY  basic concepts of chemistry
CHEMISTRY basic concepts of chemistryAJAL A J
 
Biogeochemical cycles
Biogeochemical cyclesBiogeochemical cycles
Biogeochemical cyclesAJAL A J
 
ac dc bridges
ac dc bridgesac dc bridges
ac dc bridgesAJAL A J
 
Hays bridge schering bridge wien bridge
Hays bridge  schering bridge  wien bridgeHays bridge  schering bridge  wien bridge
Hays bridge schering bridge wien bridgeAJAL A J
 
App Naming Tip
App Naming TipApp Naming Tip
App Naming Tip AJAL A J
 
flora and fauna of himachal pradesh and kerala
flora and fauna of himachal pradesh and keralaflora and fauna of himachal pradesh and kerala
flora and fauna of himachal pradesh and keralaAJAL A J
 
B.Sc Cardiovascular Technology(CVT)
 B.Sc Cardiovascular Technology(CVT)  B.Sc Cardiovascular Technology(CVT)
B.Sc Cardiovascular Technology(CVT) AJAL A J
 
11 business strategies to make profit
11 business strategies to make profit 11 business strategies to make profit
11 business strategies to make profit AJAL A J
 
PCOS Polycystic Ovary Syndrome
PCOS  Polycystic Ovary SyndromePCOS  Polycystic Ovary Syndrome
PCOS Polycystic Ovary SyndromeAJAL A J
 
Courses and Career Options after Class 12 in Humanities
Courses and Career Options after Class 12 in HumanitiesCourses and Career Options after Class 12 in Humanities
Courses and Career Options after Class 12 in HumanitiesAJAL A J
 
MANAGEMENT Stories
 MANAGEMENT Stories MANAGEMENT Stories
MANAGEMENT StoriesAJAL A J
 
NEET PREPRATION TIPS AND STRATEGY
NEET PREPRATION TIPS AND STRATEGYNEET PREPRATION TIPS AND STRATEGY
NEET PREPRATION TIPS AND STRATEGYAJAL A J
 
REVOLUTIONS IN AGRICULTURE
REVOLUTIONS IN AGRICULTUREREVOLUTIONS IN AGRICULTURE
REVOLUTIONS IN AGRICULTUREAJAL A J
 
NRI QUOTA IN NIT'S
NRI QUOTA IN NIT'S NRI QUOTA IN NIT'S
NRI QUOTA IN NIT'S AJAL A J
 
Subjects to study if you want to work for a charity
Subjects to study if you want to work for a charitySubjects to study if you want to work for a charity
Subjects to study if you want to work for a charityAJAL A J
 
IIT JEE A KERALA PERSPECTIVE
IIT JEE A KERALA PERSPECTIVE IIT JEE A KERALA PERSPECTIVE
IIT JEE A KERALA PERSPECTIVE AJAL A J
 
Clat 2020 exam COMPLETE DETAILS
Clat 2020 exam COMPLETE DETAILSClat 2020 exam COMPLETE DETAILS
Clat 2020 exam COMPLETE DETAILSAJAL A J
 

More from AJAL A J (20)

KEAM KERALA ENTRANCE EXAM
KEAM KERALA ENTRANCE EXAMKEAM KERALA ENTRANCE EXAM
KEAM KERALA ENTRANCE EXAM
 
Paleontology Career
Paleontology  CareerPaleontology  Career
Paleontology Career
 
CHEMISTRY basic concepts of chemistry
CHEMISTRY  basic concepts of chemistryCHEMISTRY  basic concepts of chemistry
CHEMISTRY basic concepts of chemistry
 
Ecology
EcologyEcology
Ecology
 
Biogeochemical cycles
Biogeochemical cyclesBiogeochemical cycles
Biogeochemical cycles
 
ac dc bridges
ac dc bridgesac dc bridges
ac dc bridges
 
Hays bridge schering bridge wien bridge
Hays bridge  schering bridge  wien bridgeHays bridge  schering bridge  wien bridge
Hays bridge schering bridge wien bridge
 
App Naming Tip
App Naming TipApp Naming Tip
App Naming Tip
 
flora and fauna of himachal pradesh and kerala
flora and fauna of himachal pradesh and keralaflora and fauna of himachal pradesh and kerala
flora and fauna of himachal pradesh and kerala
 
B.Sc Cardiovascular Technology(CVT)
 B.Sc Cardiovascular Technology(CVT)  B.Sc Cardiovascular Technology(CVT)
B.Sc Cardiovascular Technology(CVT)
 
11 business strategies to make profit
11 business strategies to make profit 11 business strategies to make profit
11 business strategies to make profit
 
PCOS Polycystic Ovary Syndrome
PCOS  Polycystic Ovary SyndromePCOS  Polycystic Ovary Syndrome
PCOS Polycystic Ovary Syndrome
 
Courses and Career Options after Class 12 in Humanities
Courses and Career Options after Class 12 in HumanitiesCourses and Career Options after Class 12 in Humanities
Courses and Career Options after Class 12 in Humanities
 
MANAGEMENT Stories
 MANAGEMENT Stories MANAGEMENT Stories
MANAGEMENT Stories
 
NEET PREPRATION TIPS AND STRATEGY
NEET PREPRATION TIPS AND STRATEGYNEET PREPRATION TIPS AND STRATEGY
NEET PREPRATION TIPS AND STRATEGY
 
REVOLUTIONS IN AGRICULTURE
REVOLUTIONS IN AGRICULTUREREVOLUTIONS IN AGRICULTURE
REVOLUTIONS IN AGRICULTURE
 
NRI QUOTA IN NIT'S
NRI QUOTA IN NIT'S NRI QUOTA IN NIT'S
NRI QUOTA IN NIT'S
 
Subjects to study if you want to work for a charity
Subjects to study if you want to work for a charitySubjects to study if you want to work for a charity
Subjects to study if you want to work for a charity
 
IIT JEE A KERALA PERSPECTIVE
IIT JEE A KERALA PERSPECTIVE IIT JEE A KERALA PERSPECTIVE
IIT JEE A KERALA PERSPECTIVE
 
Clat 2020 exam COMPLETE DETAILS
Clat 2020 exam COMPLETE DETAILSClat 2020 exam COMPLETE DETAILS
Clat 2020 exam COMPLETE DETAILS
 

Recently uploaded

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 

Recently uploaded (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 

8237 / 8257 DMA

  • 1. AJAL.A.J Assistant Professor –Dept of ECE, UNIVERSAL ENGINEERING COLLEGE    Mob: 8907305642   MAIL: ec2reach@gmail.com
  • 2. •The DMA I/O technique provides direct access to the memory while the microprocessor is temporarily disabled.
  • 3. Three ways to synchronize the processor to data rate of peripherals: 1- Polling: which provides a fast response but it the processor recourses are dedicated to one peripheral. 2- Interrupt approach: is much more efficient. the processor only services the peripheral when data is required. requires high software overhead. 3-DMA is a third solution but it increases the complexity of the hardware system.
  • 4. DMA • Direct Memory Access. • In memory-memory or memory-peripherals communication, the processor is a “middleman” which is not really needed. • Used with HOLD HOLDA signals. • DMA requires another processor - The DMA Controller or DMACto generate the memory and I/O addresses. • 8237 is a DMAC. • In IBM PC, 8237 was used to speed up the read or write operation by the slow 8088 processor. • Nowadays, It is usually used by sound cards and by memory controllers to generate row address for refreshing.
  • 6. Basic DMA concept Direct memory access (DMA) is a feature of modern computer systems that allows certain hardware subsystems to read/write data to/from memory without microprocessor intervention, allowing the processor to do other work. Used in disk controllers, video/sound cards etc, or between memory locations . Typically, the CPU initiates DMA transfer, does other operations while the transfer is in progress, and receives an interrupt from the DMA controller once the operation is complete. Can create cache coherency problems (the data in the cache may be different from the data in the external memory after DMA)
  • 7. B ASIC DM T RM A E INOL OGY DMA channel: system pathway used by a device to transfer information directly to and from memory. There are usually 8 in a computer system DMA controller: dedicated hardware used for controlling the DMA operation Single-cycle mode: DMA data transfer is done one byte at a time Burst-mode: DMA transfer is finished when all data has been moved
  • 8. DMA pins and timing • x86 Interrupt Pins – HOLD: DMA request. • Sampled in the middle of any clocking cycle – HLDA: DMA acknowledge signal. • The address, data and control buses are set to high-Z, so the I/O devices can control the system bus 8
  • 9. • • • DMA on the 8086 Microprocessor The CPU may have to wait (hold cycles). The DMA will then let the device that requested the DMA transfer know that the transfer is commencing by asserting the -DACK signal. Once the data has been transferred, The DMA will de-assert the -DACK2 signal, so that the FDC knows it must stop placing data on the bus. • The DMA will now check to see if any of the other DMA channels have any work to do. If none of the channels have their DRQ lines asserted, the DMA controller has completed its work and will now tri-state the -MEMR, -MEMW, -IOR, -IOW and address signals. • Finally, the DMA will de-assert the HOLD signal. The CPU sees this, and de-asserts the HOLDA signal. Now the CPU resumes control of the buses and address lines, and it resumes executing instructions and accessing main memory and the peripherals. 9
  • 10. 8237 pins • CLK: System clock • CS΄: Chip select (decoder output) 8237 • RESET: Clears registers, sets mask register • READY: 0 for inserting wait states • HLDA: Signals that the μp has relinquished buses • DREQ3 – DREQ0: DMA request input for each channel • DB7-DB0: Data bus pins • IOR΄: Bidirectional pin used during programming and during a DMA write cycle • IOW΄: Bidirectional pin used during programming and during a DMA read cycle • EOP΄: End of process is a bidirectional signal used as input to terminate a DMA process or as output to signal the end of the DMA transfer • A3-A0: Address pins for selecting internal registers • A7-A4: Outputs that provide part of the DMA transfer address • HRQ: DMA request output • DACK3-DACK0: DMA acknowledge for each channel. • AEN: Address enable signal • ADSTB: Address strobe • MEMR΄: Memory read output used in DMA read cycle 10 • MEMW΄: Memory write output used in DMA write cycle
  • 12. Minimal System with a DMA Controller CPU Interrupt Bus Arbiter Memory On-Chip-Bus Request DMA Controller Acknowledge Peripheral Device
  • 14. Description of pin diagram  D0-D7:  it is a bidirectional ,tri state ,Buffered ,Multiplexed data (D0-D7)and (A8-A15).  In the slave mode it is a bidirectional (Data is moving).  In the Master mode it is a unidirectional (Address is moving).
  • 15. IOR:  It is active low ,tristate ,buffered ,Bidirectional lines.  In the slave mode it function as a input line. IOR signal is generated by microprocessor to read the contents 8257 registers.  In the master mode it function as a output line. IOR signal is generated by 8257 during write cycle
  • 16. IOW:  It is active low ,tristate ,buffered ,Bidirectional control lines.  In the slave mode it function as a input line. IOR signal is generated by microprocessor to write the contents 8257 registers.  In the master mode it function as a output line. IOR signal is generated by 8257 during read cycle
  • 17. CLK:  It is the input line ,connected with TTL clock generator.  This signal is ignored in slave mode. RESET:  Used to clear mode set registers and status registers A0-A3: These are the tristate, buffer, bidirectional address lines. In slave mode ,these lines are used as address inputs lines and internally decoded to access the internal registers. In master mode, these lines are used as address outputs lines,A0-A3 bits of memory address on the lines.
  • 18. CS:  It is active low, Chip select input line.  In the slave mode, it is used to select the chip.  In the master mode, it is ignored. A4-A7: These are the tristate, buffer, output address lines. In slave mode ,these lines are used as address input lines. In master mode, these lines are used as address outputs lines,A0-A3 bits of memory address on the lines.
  • 19. READY:  It is a asynchronous input line.  In master mode, When ready is high it receives the signal. When ready is low, it adds wait state between S1 and S3  In slave mode , this signal is ignored. HRQ:  It is used to receiving the hold request signal from the output device.
  • 20. HLDA:  It is acknowledgment signal from microprocessor. MEMR:  It is active low ,tristate ,Buffered control output line.  In slave mode, it is tristated.  In master mode ,it activated during DMA read cycle. MEMW:  It is active low ,tristate ,Buffered control input line.  In slave mode, it is tristated.  In master mode ,it activated during DMA write cycle.
  • 21. AEN (Address enable):     It is a control output line. In master mode ,it is high In slave mode ,it is low Used it isolate the system address ,data ,and control lines. ADSTB: (Address Strobe)     It is a control output line. Used to split data and address line. It is working in master mode only. In slave mode it is ignore.
  • 22. TC (Terminal Count):  It is a status of output line.  It is activated in master mode only.  It is high ,it selected the peripheral.  It is low ,it free and looking for a new peripheral. MARK:  It is a modulo 128 MARK output line.  It is activated in master mode only.  It goes high ,after transferring every 128 bytes of data block.
  • 23. DRQ0-DRQ3 (DMA Request):  These are the asynchronous peripheral request input signal.  The request signals is generated by external peripheral device. DACK0-DACK3:  These are the active low DMA acknowledge output lines.  Low level indicate that ,peripheral is selected for giving the information (DMA cycle).  In master mode it is used for chip select.
  • 24.  HLDA becomes active to indicate the processor has placed its buses at high-impedance state.  as can be seen in the timing diagram, there are a few clock cycles between the time that HOLD changes and until HLDA changes  HLDA output is a signal to the requesting device that the processor has relinquished control of its memory and I/O space.  one could call HOLD input a DMA request input and HLDA output a DMA grant signal
  • 26. Description  It containing Five main Blocks. 1. Data bus buffer 2. Read/Control logic 3. Control logic block 4. Priority resolver 5. DMA channels.
  • 27. DATA BUS BUFFER:  It contain tristate ,8 bit bi-directional buffer.  Slave mode ,it transfer data between microprocessor and internal data bus.  Master mode ,the outputs A8-A15 bits of memory address on data lines (Unidirectional). READ/CONTROL LOGIC:  It control all internal Read/Write operation.  Slave mode ,it accepts address bits and control signal from microprocessor.  Master mode ,it generate address bits and control signal.
  • 28. Control logic block: It contains , 1. Control logic 2. Mode set register and 3. Status Register.  CONTROL LOGIC:      Master mode ,It control the sequence of DMA operation during all DMA cycles. It generates address and control signals. It increments 16 bit address and decrement 14 bit counter registers. It activate a HRQ signal on DMA channel Request. Slave ,mode it is disabled.
  • 29. FIGURE A DMA controller allows the peripheral to interface directly with memory without processor intervention. This allows the data transfer rate to approach the access time of memory. Types: Sequential DMA Simultaneous DMA
  • 30. FIGURE Three methods (MODES) of DMA operation: (a) byte; (b) burst; (c) block.
  • 31. DMA is implemented using a DMA controller – DMA controller • Acts as slave to processor • Receives instructions from processor • Example: Reading from an I/O device – Processor gives details to the DMA controller » I/O device number » Main memory buffer address » Number of bytes to transfer » Direction of transfer (memory → I/O device, or vice versa)
  • 32. Steps in a DMA operation  Processor initiates the DMA controller  Gives device number, memory buffer pointer, …  Called channel initialization  Once initialized, it is ready for data transfer  When ready, I/O device informs the DMA controller  DMA controller starts the data transfer process      Obtains bus by going through bus arbitration Places memory address and appropriate control signals Completes transfer and releases the bus Updates memory address and count value If more to read, loops back to repeat the process  Notify the processor when done  Typically uses an interrupt
  • 34. Modes of Operation  Rotating priority Mode:  The priority of the channels has a circular sequence.  Fixed Priority Rotating Mode:     The priority is fixed. TC Stop Mode Auto Load mode Extended Write mode
  • 35. DMA Cycles 1. DMA read 2. DMA write 3. DMA Verify