Figure 25. rxdma only operation, 4 auto-switch dma, 1 overview – Cirrus Logic CS8900A User Manual

Page 94: 2 configuring the cs8900a for auto- switch dma, 3 auto-switch dma operation, Cs8900a

Advertising
background image

94

DS271F5

CS8900A

Crystal LAN™ Ethernet Controller

CIRRUS LOGIC PRODUCT DATASHEET

5.4 Auto-Switch DMA

5.4.1 Overview

The CS8900A supports a unique feature,
Auto-Switch DMA, that allows it to switch be-
tween Memory or I/O mode and Receive DMA
automatically. Auto-Switch DMA allows the
CS8900A to realize the performance advan-
tages of Memory or I/O mode while minimizing
the number of missed frames that could result
due to slow processing by the host.

5.4.2 Configuring the CS8900A for Auto-
Switch DMA

Auto-Switch DMA mode requires the same
configuration as Receive-DMA-only mode,
with one exception: the AutoRxDMAE bit
(Register 3, RxCFG, Bit A) must be set, and

the RxDMAonly bit (Register 3, RxCFG, Bit 9)
must be clear (see Section 5.3 on page 90,
Configuring the CS8900A for DMA Operation).
In Auto-Switch DMA mode, the CS8900A op-
erates in non-DMA mode if possible, only
switching to slave DMA if necessary.

Note that if the AutoRxDMAE bit and the RxD-
MAonly bit (Register 3, RxCFG, bit 9) are both
set, the CS8900A uses DMA for all receive
frames.

5.4.3 Auto-Switch DMA Operation

Whenever a frame begins to be received in
Auto-Switch DMA mode, the CS8900A checks
to see if there is enough on-chip buffer space
to store a maximum length frame. If there is,
the incoming frame is pre-processed and buff-

Process the

C

DMA

Frames

Read the DMA frame Count (C

DMA

)

(PacketPage base + 0028h)

No

C

DMA

= 0 ?

Host Enters Interrupt Routine

Process other events

that caused interrupt

Yes

No

RxDMA

Frame

bit set?

Process other events

that caused interrupt

Yes

Figure 25. RxDMA Only Operation

Advertising