Professional Documents
Culture Documents
8237 DMAC
Programmed I/O
Synchronous I/O
Asynchronous I/O
Interrupt driven I/O
Direct Memory Access (DMA)
Why DMA
Applications of DMA
DRAM Refreshing
Video Display Screen Refreshing
Bulk data Transfer
I/O DEVICES TO MEMORY & MEMORY TO
I/O DEVICES TRANSFER
MEMORY TO MEMORY DATA TRANSFER
Features of Intel 8237 DMAC
CONTROLLER ENABLE
CONTROLLER DISABLE
NORMAL TIMING
COMPRESSED TIMING
IF BIT 0 IS ONE
FIXED PRIORITY
ROTATING PRIORITY
D7 D6 D5 D4 D3 D2 D1 D0
00 channel 0 select
01 channel 1 select
10 channel 2 select
11 channel 3 select
00 VERIFY TRANSFER
01 WRITE TRANSFER
10 READ TRANSFER
11 ILLEGAL
XX IF BIT 6 & 7 = 11
0 AUTOINITIALIZATION DISABLE
1 AUTOINITIALIZATION ENABLE
Demand Mode
DMA continues until an external EOP is given or as long as DREQ input
is active
Single Mode
HOLD signal is withdrawn after one byte of transfer. If DREQ line
continues to be active DMAC again requests for next byte transfer
through HOLD request.
Block Mode:
Block of data is transferred. Transfer is stopped when terminal count
becomes zero
Cascade Mode:
More than one 8237 are present in the system
Request Register
D7 D6 D5 D4 D3 D2 D1 D0
00 SELECT CHANNEL 0
01 SELECT CHANNEL 1
10 SELECT CHANNEL 2
11 SELECT CHANNEL 3
DON’T CARE
Mask Register
Mask Register
D7 D6 D5 D4 D3 D2 D1 D0
00 SELECT CHANNEL 0 MASK BIT
01 SELECT CHANNEL 1 MASK BIT
10 SELECT CHANNEL 2 MASK BIT
11 SELECT CHANNEL 3 MASK BIT
DON’T CARE
Alternate way of setting Mask
Bits
Status Register
Thanks !