High Performance Two Port 10/100 Managed Ethernet Switch with 32-Bit Non-PCI CPU Interface

Datasheet

Table 9.9 Valid TX/RX FIFO Allocations

 

TX DATA FIFO

TX STATUS FIFO

RX DATA FIFO

RX STATUS FIFO

TX_FIF_SZ

SIZE (BYTES)

SIZE (BYTES)

SIZE (BYTES)

SIZE (BYTES)

 

 

 

 

 

2

1536

512

13440

896

 

 

 

 

 

3

2560

512

12480

832

 

 

 

 

 

4

3584

512

11520

768

 

 

 

 

 

5

4608

512

10560

704

 

 

 

 

 

6

5632

512

9600

640

 

 

 

 

 

7

6656

512

8640

576

 

 

 

 

 

8

7680

512

7680

512

 

 

 

 

 

9

8704

512

6720

448

 

 

 

 

 

10

9728

512

5760

384

 

 

 

 

 

11

10752

512

4800

320

 

 

 

 

 

12

11776

512

3840

256

 

 

 

 

 

13

12800

512

2880

192

 

 

 

 

 

14

13824

512

1920

128

 

 

 

 

 

9.8TX Data Path Operation

Data is queued for transmission by writing it into the TX Data FIFO. Each packet to be transmitted may be divided among multiple buffers. Each buffer starts with a two DWORD TX command (TX command ‘A’ and TX command ‘B’). The TX command instructs the LAN9312 on the handling of the associated buffer. Packet boundaries are delineated using control bits within the TX command.

The host provides a 16-bit Packet Tag field in the TX command. The Packet Tag value is appended to the corresponding TX status DWORD. All Packet Tag fields must have the same value for all buffers in a given packet. If tags differ between buffers in the same packet the TXE error will be asserted. Any value may be chosen for a Packet Tag as long as all tags in the same Packet are identical. Packet Tags also provide a method of synchronization between transmitted packets and their associated status. Software can use unique Packet Tags to assist with validating matching status completions.

Note: The use of Packet Tags is not required by the hardware. This field can be used by the LAN software driver for any application. Packet Tags is only one application example.

The Packet Length field in the TX command specifies the number of bytes in the associated packet. All Packet Length fields must have the same value for all buffers in a given packet. Hardware compares the Packet Length field and the actual amount of data received by the Ethernet controller. If the actual packet length count does not match the Packet Length field as defined in the TX command, the Transmitter Error (TXE) flag is asserted.

The LAN9312 can be programmed to start payload transmission of a buffer on a byte boundary by setting the “Data Start Offset” field in the TX command. The “Data Start Offset” field points to the actual start of the payload data within the first 8 DWORDs of the buffer. Data before the “Data Start Offset” pointer will be ignored. When a packet is split into multiple buffers, each successive buffer may begin on any arbitrary byte.

Revision 1.4 (08-19-08)

122

SMSC LAN9312

 

DATASHEET