![Intel IXP45X Developer'S Manual Download Page 234](http://html1.mh-extra.com/html/intel/ixp45x/ixp45x_developers-manual_2073092234.webp)
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors—Ethernet MACs
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors
Developer’s Manual
August 2006
234
Order Number: 306262-004US
manipulate the data as defined by MAC control registers and forward the data over the
xMII interface as 4-bit nibbles in the case of MII operation and a serial stream for SMII
modes of operation.
The Transmit Engine can be configured using processor API calls to:
• Append a Frame Check Sequence to the end of a transmitted frame
• Autonomously append bytes to frames that are smaller than the minimum frame
size (64 bytes)
• Enable/Disable transmit retries
• Set the number of times a frame can be retried due to collision conditions before
being dropped
• Select half- or full-duplex mode of operation
• Select a one- or two-part deferral to be used
• Enable/Disable the Transmit Engine
A Frame Check Sequence (FCS) can be autonomously generated and appended to the
end of each Ethernet frame. The Frame Check Sequence can be used to ensure proper
delivery of data between two Ethernet devices. The Frame Check Sequence consists of
a 4-byte Cyclic Redundancy Generator that adheres to the polynomial:
The Frame Check Sequence will be computed over all fields beginning after the Start-
of-Frame Delimiter (SFD) and up to the Frame Check Sequence (FCS) value.
Autonomous insertion of the Frame Check Sequence into the transmitted frame can be
enabled/disabled by setting bit 4 of Transmit Control Register 1 (TXCTRL1):
• Setting this bit to logic 1 will cause a CRC value to be generated and inserted into
the Frame Check Sequence field of the transmitted frame.
• Setting this bit to logic 0 will cause a transmitted frame to be sent without a Frame
Check Sequence attached.
Transmit Control Register 1 can be accessed directly, but Intel recommends that the
Transmit Control Register 1 values be manipulated through Intel-supplied APIs. Failure
to use the Intel-supplied APIs will result in unpredictable results.
The Transmit Engine can also be configured to append additional bytes to frames that
are smaller than the 64-byte frame minimum. When the transmit engine observes the
length field is smaller than 64 bytes – and bit 3 of Transmit Control Register 1 is set to
logic 1 – the transmit engine will append additional bytes to equal the 64-byte
minimum size. A CRC value will be calculated over the appended bytes; the appended
bytes will be all zeros.
The IXP45X/IXP46X network processors also provide the capability to enable or disable
transmit retries. When bit 2 of the Transmit Control Register 1 is set to logic 1 and
collisions occur, the transmit engine will attempt to retry sending the packet up to the
maximum number of transmit retries specified in bits (3:0) of Transmit Control Register
2 (TXCTRL2). A maximum of 16 retries can be attempted.
Note:
Setting bit 1 of TXCTRL1 to logic 1 configures a device in half-duplex mode of
operation. Setting the bit to logic 0 configures the device to full-duplex mode.
• If a packet is being transmitted and a collision is detected prior to 64 bytes
(minimum packet size) of the packet are transmitted, the transmit engine will
rewind the transmit FIFO pointer to the beginning of the frame that is being
G(x) = x 32 +x 26 +x 23 +x 22 +x 16 +x 12 +x 11 +x 10 +x 8 +x 7 +x 5 +x
4 +x 2 +x +1