High Performance Two Port 10/100 Managed Ethernet Switch with 32-Bit Non-PCI CPU Interface
Datasheet
SMSC LAN9312
125
Revision 1.4 (08-19-08)
DATASHEET
Both TX command ‘A’ and TX command ‘B’ are required for each buffer in a given packet. TX
command ‘B’ must be identical for every buffer in a given packet. If the TX command ‘B’ words do not
match, the Ethernet controller will assert the Transmitter Error (TXE) flag.
9.8.2.1
TX Command ‘A’
Table 9.10 TX Command 'A' Format
BITS
DESCRIPTION
31
Interrupt on Completion (IOC).
When set, the TX_IOC bit will be asserted in the
when the current buffer has been fully loaded into the TX FIFO.
30:26
Reserved.
These bits are reserved. Always write zeros to this field to guarantee future compatibility.
25:24
Buffer End Alignment.
This field specifies the alignment that must be maintained on the last data
transfer of a buffer. The host will add extra DWORDs of data up to the alignment specified in the
table below. The LAN9312 will remove the extra DWORDs. This mechanism can be used to maintain
cache line alignment on host processors.
23:21
Reserved.
These bits are reserved. Always write zeros to this field to guarantee future compatibility
20:16
Data Start Offset (bytes).
This field specifies the offset of the first byte of TX data. The offset value
can be anywhere from 0 bytes to a 31 byte offset.
15:14
Reserved.
These bits are reserved. Always write zeros to this field to guarantee future compatibility
13
First Segment (FS).
When set, this bit indicates that the associated buffer is the first segment of the
packet.
12
Last Segment.
When set, this bit indicates that the associated buffer is the last segment of the
packet
11
Reserved.
These bits are reserved. Always write zeros to this field to guarantee future compatibility.
10:0
Buffer Size (bytes).
This field indicates the number of bytes contained in the buffer following this
command. This value, along with the Buffer End Alignment field, is read and checked by the
LAN9312 and used to determine how many extra DWORDs were added to the end of the Buffer. A
running count is also maintained in the LAN9312 of the cumulative buffer sizes for a given packet.
This cumulative value is compared against the Packet Length field in the TX command ‘B’ word and
if they do not correlate, the TXE flag is set.
Note:
The buffer size specified does not include the buffer end alignment padding or data start
offset added to a buffer.
[25]
[24]
End Alignment
0
0
4-byte alignment
0
1
16-byte alignment
1
0
32-byte alignment
1
1
Reserved