cp2200 Silicon Laboratories, cp2200 Datasheet - Page 66
![no-image](/images/no-image-200.jpg)
cp2200
Manufacturer Part Number
cp2200
Description
Single-chip Ethernet Controller
Manufacturer
Silicon Laboratories
Datasheet
1.CP2200.pdf
(108 pages)
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
CP2200
Manufacturer:
CITIZEN
Quantity:
10 000
Company:
Part Number:
CP2200
Manufacturer:
SILICON
Quantity:
4 000
Part Number:
CP2200
Manufacturer:
SILICONLABS/芯科
Quantity:
20 000
Company:
Part Number:
cp2200-GQ
Manufacturer:
SiliconL
Quantity:
1 120
Company:
Part Number:
cp2200-GQ
Manufacturer:
NEC
Quantity:
5 871
Company:
Part Number:
cp2200-GQ
Manufacturer:
Silicon Laboratories Inc
Quantity:
10 000
Part Number:
cp2200-GQ
Manufacturer:
SILICON LABS/芯科
Quantity:
20 000
Company:
Part Number:
cp2200-GQR
Manufacturer:
AD
Quantity:
8 700
Part Number:
cp2200-GQR
Manufacturer:
SILICON LABS/芯科
Quantity:
20 000
CP2200/1
12.6. Advanced Receive Buffer Operation
Receive buffer operation is automatically handled by hardware and does not require any assistance from the host
processor. Note: The information in this section is provided for reference purposes only and will typically
not be used except when debugging a problem and additional control over the receive buffer is required.
Figure 18 shows a detailed block diagram of the receive buffer. As packets arrive and pass through the receive
filter, they are added to the circular receive buffer at the address pointed to by the tail pointer. The FIFO tail pointer
is incremented after each byte is received. As soon as a new packet arrives, the receive buffer controller searches
for an unused TLB slot to store data about the received packet. If an unused TLB slot is found, it is claimed and
assigned to the packet currently being received by setting the slot’s valid bit to ‘1’. A Packet Received interrupt will
be generated after the entire packet is copied to the buffer. If all 8 slots are full (valid bits for all slots are set to ‘1’),
then the packet will be dropped and a Receive FIFO Full interrupt will be generated.
Each TLB slot holds information about its assigned packet such as starting address in the buffer, length, and
information about the packet such as the type (broadcast, multicast, unicast) and any errors that occurred during
reception (CRC error, incomplete packet, etc.). The receive buffer controller rotates through the TLB slots in a
circular fashion. For debugging purposes, the host processor may access any TLB slot using the TLB registers
listed in Table 17.
The oldest packet received starts at the address pointed to by the FIFO head pointer. This packet (packet #1 in
Figure 18) will be referred to as the current packet. The FIFO head pointer is used by the AutoRead interface to
read data from the current packet. As data is read using the AutoRead interface, the FIFO head pointer is
incremented until the entire packet is read out. Once the packet is read out, the host processor must clear the valid
bit of the packet by writing a ‘1’ to RXCLRV (RXCN.2). If the host processor chooses not to read the entire packet,
the valid bit should be cleared (and unread data skipped) by writing a ‘1’ to RXSKIP (RXCN.1).
A copy of the TLB slot associated with the current packet is always available by reading the CTLB registers listed in
Table 16. The same information can be obtained by reading CPTLB to determine the current TLB slot, then directly
accessing the slot using the registers in Table 17.
66
(e.g. 0 for TLB0)
RXAUTORD
Entry Number
Current TLB
Current TLB
Autoread interface automatically manages read pointers. TLB Entries are typically not
accessed by the host.
CPADDR
CPINFO/
CPLEN/
CPTLB
Copy of
(8-entry circular or random access)
Valid Bit
Translation Look-aside Buffer
0
1
1
1
0
0
0
0
Figure 18. Receive Buffer Block Diagram
Current packet address,
length, and information.
TLB0
TLB1
TLB2
TLB3
TLB4
TLB5
TLB6
TLB7
Rev. 1.0
FIFO Head Pointer
FIFO Tail Pointer
Packet #1
Packet #2
Packet #3
Receive
Buffer
4 KB