
DS80C400 Network Microcontroller
50 of 96
Buffer Control Unit
The buffer control unit (BCU) serves as the central controller of all DS80C400 Ethernet activity. The BCU regulates
CPU read/write activity to the Ethernet controller blocks through a series of SFRs: BCU control (BCUC; E7h), BCU
data (BCUD; E8h), CSR address (CSRA; E4h), and CSR data (CSRD; E3h). These SFRs allows the CPU to issue
commands to the BCU, exchange packet size/location information with the BCU, configure the on-chip Ethernet
MAC, and even communicate with external PHYs through the MII serial-management bus.
Table 13
outlines the commands that can be issued through the BCUC register. Prior to issuing a write (1000b) or
read (1001b) CSR register command, the CSRA SFR must be configured to address a valid CSR register. For
each CSR register write, the CSRD SFR must be loaded with the data to be written prior to issuing the write
command, whereas on a read, CSRD returns the CSR register data following the read command.
Table 14
lists the
CSR register addresses and functions.
Table 13. Buffer Control Unit Commands
COMMAND
(BCUC.3:BCUC.0)
OPERATION
0000
No Operation (default)
0010
Invalidate Current Receive Packet
0011
Flush Receive Buffer
0100
Transmit Request (normal)
0101
Transmit Request (disable padding)
0110
Transmit Request (disable CRC)
1000
Write CSR Register
1001
Read CSR Register
1100
Enable Sleep Mode
1101
Disable Sleep Mode
Other Reserved
Table 14. CSR Registers
CSR REGISTER ADDRESS
(CSRA)
FUNCTION
00h
MAC Control
04h
Ethernet MAC Physical Address [47:32]
08h
Ethernet MAC Physical Address [31:0]
0Ch
Multicast Address Hash Table [63:32]
10h
Multicast Address Hash Table [31:0]
14h
MII Address
18h
MII Data
1Ch
Flow Control
20h
VLAN1 Tag
24h
VLAN2 Tag
28h
Wake-Up Frame Filter
2Ch
Wake-Up Events Control and Status
Other Reserved
The BCU is responsible for coordinating and reporting status for all data-packet transactions between the Ethernet
MAC and the 8kB packet-buffer memory. The size of the transmit and receive buffers within the 8kB packet-buffer
memory is user-configurable through the EBS (E5h) register. During transmit and receive operations, the BCU
operates according to the user-defined buffer allocation and tracks consumption of receive buffer memory so that a
receive-buffer-full condition can be signaled.
For a receive operation, the BCU first must assess whether there are any open pages in receive buffer memory to
accommodate an incoming packet. If there are not open pages, the receive-buffer-full (RBF; EBS.6) flag is set.
Until the RBF condition is cleared, all incoming frames are missed. If receive buffer memory has open pages, the
received data is stored in the first open page starting at byte offset 4, leaving the first 4 bytes open for packet status
reporting. Receive packets requiring multiple pages are stored in consecutive pages. Note that the receive buffer
operates as a circular queue, with page 0 being the consecutive page to follow the final (n - 1) receive buffer page.
The BCU stores incoming data to receive buffer memory until the transaction is complete or until the reception is
Содержание DS80C400
Страница 6: ...DS80C400 Network Microcontroller 6 of 96...
Страница 7: ...DS80C400 Network Microcontroller 7 of 96...
Страница 15: ...DS80C400 Network Microcontroller 15 of 96...
Страница 16: ...DS80C400 Network Microcontroller 16 of 96 l...
Страница 22: ...DS80C400 Network Microcontroller 22 of 96 OW PIN TIMING...