SMSC LAN9420 Network Card User Manual


 
Single-Chip Ethernet Controller with HP Auto-MDIX Support and PCI Interface
Datasheet
Revision 1.22 (09-25-08) 4 SMSC LAN9420/LAN9420i
DATASHEET
3.4.2 Data Descriptors and Buffers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.4.2.1 Receive Descriptors.......................................................................................................41
3.4.2.2 Transmit descriptors.......................................................................................................45
3.4.3 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.4.4 Transmit Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4.5 Receive Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4.6 Receive Descriptor Acquisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4.7 Suspend State Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.4.7.1 Transmit Engine.............................................................................................................51
3.4.7.2 Receive Engine..............................................................................................................51
3.4.8 Stopping Transmission and Reception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.4.9 TX Buffer Fragmentation Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.4.9.1 Calculating Worst-Case TX FIFO (MIL) Usage..............................................................52
3.4.10 DMAC Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.4.11 DMAC Control and Status Registers (DCSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.5 10/100 Ethernet MAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.5.1 Flow Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.5.1.1 Full-Duplex Flow Control................................................................................................54
3.5.2 Virtual Local Area Network (VLAN) Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.5.3 Address Filtering Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.5.3.1 Perfect Filtering..............................................................................................................56
3.5.3.2 Hash Only Filtering Mode...............................................................................................56
3.5.3.3 Hash Perfect Filtering ....................................................................................................56
3.5.3.4 Inverse Filtering .............................................................................................................56
3.5.4 Wakeup Frame Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.5.4.1 Magic Packet Detection .................................................................................................59
3.5.5 Receive Checksum Offload Engine (RXCOE). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.5.5.1 RX Checksum Calculation .............................................................................................63
3.5.6 Transmit Checksum Offload Engine (TXCOE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.5.6.1 TX Checksum Calculation..............................................................................................64
3.5.7 MAC Control and Status Registers (MCSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.6 10/100 Ethernet PHY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.6.1 100BASE-TX Transmit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.6.1.1 4B/5B Encoding .............................................................................................................65
3.6.1.2 Scrambling .....................................................................................................................66
3.6.1.3 NRZI and MLT3 Encoding .............................................................................................67
3.6.1.4 100M Transmit Driver.....................................................................................................67
3.6.1.5 100M Phase Lock Loop (PLL) .......................................................................................67
3.6.2 100BASE-TX Receive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.6.2.1 100M Receive Input .......................................................................................................67
3.6.2.2 Equalizer, Baseline Wander Correction and Clock and Data Recovery ........................67
3.6.2.3 NRZI and MLT-3 Decoding ............................................................................................68
3.6.2.4 Descrambling .................................................................................................................68
3.6.2.5 Alignment .......................................................................................................................68
3.6.2.6 5B/4B Decoding .............................................................................................................68
3.6.2.7 Receiver Errors ..............................................................................................................68
3.6.3 10BASE-T Transmit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.6.3.1 10M Transmit Data Across the Internal MII Bus ............................................................69
3.6.3.2 Manchester Encoding ....................................................................................................69
3.6.3.3 10M Transmit Drivers.....................................................................................................69
3.6.4 10BASE-T Receive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.6.4.1 10M Receive Input and Squelch ....................................................................................69
3.6.4.2 Manchester Decoding ....................................................................................................69
3.6.4.3 Jabber Detection............................................................................................................70
3.6.5 Auto-negotiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70