Figure 21. receive frame pre-processing, 3 acceptance filtering, 4 normal interrupt generation – Cirrus Logic CS8900A User Manual

Page 83: 4 held vs. dmaed receive frames, Cs8900a, Crystal lan™ ethernet controller

Advertising
background image

DS271F5

83

CS8900A

Crystal LAN™ Ethernet Controller

CIRRUS LOGIC PRODUCT DATASHEET

tecting the incoming frame's End-of-Frame
(EOF) sequence.

Like all Event bits, RxDest and Rx128 are set
by the CS8900A whenever the appropriate
event occurs. Unlike other Event bits, RxDest
and Rx128 may be cleared by the CS8900A
without host intervention. All other event bits
are cleared only by the host reading the appro-
priate event register, either directly or through
the Interrupt Status Queue (ISQ). (RxDest and
Rx128 can also be cleared by the host reading
the BufEvent register, either directly or through
the Interrupt Status Queue). Figure 22 pro-
vides a diagram of the Early Interrupt process.

5.2.3.3 Acceptance Filtering

The third step of pre-processing is to deter-
mine whether or not to accept the frame by
comparing the frame with the criteria pro-
grammed into the RxCTL register (Register 5).
If the receive frame passes the Acceptance fil-
ter, the frame is buffered, either on chip or in
host memory via DMA. If the frame fails the
Acceptance filter, it is discarded. The results of
the Acceptance filter are reported in the Rx-
Event register (Register 4).

5.2.3.4 Normal Interrupt Generation

The final step of pre-processing is to generate
any enabled interrupts that are triggered by
the incoming frame. Interrupt generation oc-
curs when the entire frame has been buffered
(up to the first 1518 bytes). For more informa-
tion about interrupt generation, see
Section 5.1 on page 78.

5.2.4 Held vs. DMAed Receive Frames

All accepted frames are either held in on-chip
RAM until processed by the host, or stored in
host memory via DMA. A receive frame that is
held in on-chip RAM is referred to as a held re-
ceive frame. A frame that is stored in host
memory via DMA is a DMAed receive frame.

Pass

DA Filter?

Discard Frame

Destination

Address Filter

Check:
- PromiscuousA?
- IAHashA?
- MulticastA?
- IndividualA?
- BroadcastA?

Receive Frame

Yes

No

Yes

No

Generate Interrupts

Check:
- RxOKiE?
- ExtradataiE?
- CRCerroriE?
- RuntiE?
- RxDMAiE?

Pre-Processing

Complete

Generate Early

Interrupts if Enabled

(see next figure)

Acceptance Filter

Check:
- RxOKA?
- ExtradataA?
- RuntA?
- CRCerrorA?

Status of receive

frame reported in

RxEvent register,

frame discarded.

Status of receive

frame reported in

RxEvent register,

frame accepted

into on-chip RAM

Pass

Accept.

Filter?

Figure 21. Receive Frame Pre-Processing

Advertising