RTL8139D DataSheet
RTL8139D DataSheet
RTL8139D DataSheet
REALTEK SINGLE CHIP FAST ETHERNET CONTROLLER WITH POWER MANAGEMENT AND MULTI-FUNCTION RTL8139D(L)
1. Features........................................................................ 2 2. General Description .................................................... 3 3. Pin Assignment ............................................................ 4 4. Pin Descriptions........................................................... 6 4.1 Power Management/Isolation Interface .................. 6 4.2 PCI Interface........................................................... 6 4.3 EEPROM Interface................................................. 8 4.4 Power Pins.............................................................. 8 4.5 LED Interface ......................................................... 8 4.6 Attachment Unit Interface ...................................... 8 4.7 Multi-Function Interface......................................... 9 4.8 Test And Other Pins ............................................... 9 5. Register Descriptions ................................................ 10 5.1 Receive Status Register in Rx packet header........ 12 5.2 Transmit Status Register....................................... 12 5.3 ERSR: Early Rx Status Register ........................... 13 5.4 Command Register ............................................... 14 5.5 Interrupt Mask Register ........................................ 14 5.6 Interrupt Status Register ....................................... 15 5.7 Transmit Configuration Register .......................... 16 5.8 Receive Configuration Register............................ 18 5.9 9346CR: 93C46 Command Register .................... 20 5.10 CONFIG 0: Configuration Register 0................. 21 5.11 CONFIG 1: Configuration Register 1................. 22 5.12 Media Status Register......................................... 23 5.13 CONFIG 3: Configuration Register3.................. 24 5.14 CONFIG 4: Configuration Register4.................. 25 5.15 Multiple Interrupt Select Register ...................... 26 5.16 PCI Revision ID ................................................. 26 5.17 Transmit Status of All Descriptors (TSAD) Register 26 5.18 Basic Mode Control Register ............................. 27 5.19 Basic Mode Status Register ................................ 27 5.20 Auto-negotiation Advertisement Register........... 28 5.21 Auto-Negotiation Link Partner Ability Register. 29 5.22 Auto-negotiation Expansion Register ................. 29 5.23 Disconnect Counter ............................................ 30 5.24 False Carrier Sense Counter ............................... 30 5.25 NWay Test Register ........................................... 30 5.26 RX_ER Counter.................................................. 30 5.27 CS Configuration Register.................................. 31 5.28 Config5: Configuration Register 5 ......................31 6. EEPROM (93C46) Contents .....................................33 6.1 Summary of RTL8139D(L) EEPROM Registers .......35 6.2 Summary of EEPROM Power Management registers .35 7. PCI Configuration Space Registers..........................36 7.1 PCI Configuration Space Table.............................36 7.2 PCI Configuration Space functions .......................37 7.3 The Default Value after Power-on (RSTB asserted)....41 7.4 PCI Power Management functions ........................42 7.5 VPD (Vital Product Data) .....................................45 8. Block Diagram............................................................46 9. Functional Description ..............................................47 9.1 Transmit operation ................................................47 9.2 Receive operation..................................................47 9.3 Wander Compensation ..........................................47 9.4 Line Quality Monitor ............................................47 9.5 Clock Recovery Module........................................47 9.6 Loopback Operation..............................................47 9.7 Tx Encapsulation...................................................47 9.8 Collision................................................................48 9.9 Rx Decapsulation ..................................................48 9.10 Flow Control .......................................................48 9.10.1. Control Frame Transmission ......................48 9.10.2. Control Frame Reception............................48 9.11 LED Functions ....................................................49 9.11.1 10/100 Mbps Link Monitor .........................49 9.11.2 LED_RX......................................................49 9.11.3 LED_TX......................................................49 9.11.4 LED_TX+LED_RX ....................................50 10. Application Diagram................................................50 11. Electrical Characteristics ........................................51 11.1 Temperature Limit Ratings .................................51 11.2 DC Characteristics ..............................................51 11.2.1 Supply voltage Vcc = 3.0V min. to 3.6V max.............51 11.2.2 Supply voltage Vdd25 = 2.3V min. to 2.7V max..........51 11.3 AC Characteristics ..............................................52 11.3.1 PCI Bus Operation Timing ..........................52 12. Mechanical Dimensions ...........................................58 12.1 QFP .....................................................................58 12.2 LQFP...................................................................59
2001/11/09
Rev.1.11
RTL8139D(L)
1. Features
!" 100 pin QFP/LQFP !" Integrated Fast Ethernet MAC, Physical chip and transceiver in one chip !" 10 Mb/s and 100 Mb/s operation !" Supports 10 Mb/s and 100 Mb/s N-way Auto-negotiation operation !" Supports PCI multi-function capabilities !" PCI local bus single-chip Fast Ethernet controller #" Compliant to PCI Revision 2.2 #" Supports PCI clock 16.75MHz-40MHz #" Supports PCI target fast back-to-back transaction #" Provides PCI bus master data transfers and PCI memory space or I/O space mapped data transfers of RTL8139D(L)'s operational registers #" Supports PCI VPD (Vital Product Data) #" Supports ACPI, PCI power management #" Supports PCI multi-function to incorporate with other PCI master device !" Supports 25MHz crystal or 25MHz OSC as the internal clock source. The frequency deviation of either crystal or OSC must be within 50 PPM. !" Compliant to PC99 and PC2001 standards !" Supports Wake-On-LAN function and remote wake-up (Magic Packet*, LinkChg and Microsoft wake-up frame) !" Supports 4 Wake-On-LAN (WOL) signals (active high, active low, positive pulse, and negative pulse) !" Supports auxiliary power-on internal reset, to be ready for remote wake-up when main power remains off !" Supports auxiliary power auto-detect, and sets the related capability of power management registers in PCI configuration space !" Includes a programmable, PCI burst size and early Tx/Rx threshold !" Supports a 32-bit general-purpose timer with the external PCI clock as clock source, to generate timer-interrupt !" Contains two large (2Kbyte) independent receive and transmit FIFOs !" Advanced power saving mode when LAN function or wakeup function is not used !" Uses 93C46 (64*16-bit EEPROM) to store resource configuration, ID parameter, and VPD data !" Supports LED pins for various network activity indications !" Supports loopback capability !" Half/Full duplex capability !" Supports Full Duplex Flow Control (IEEE 802.3x) !" 2.5/3.3V power supply with 5V tolerant I/Os !" Up to 128K byte Boot ROM interface for both EPROM and Flash memory is supported !" 0.25u CMOS process * Third-party brands and names are the property of their respective owners.
2001/11/09
Rev.1.11
RTL8139D(L)
2. General Description
The Realtek RTL8139D(L) is a highly integrated and cost-effective single-chip Fast Ethernet controller that provides 32-bit performance, PCI bus master capability, and full compliance with IEEE 802.3u 100Base-T specifications and IEEE 802.3x Full Duplex Flow Control. It also supports Advanced Configuration Power management Interface (ACPI), PCI power management for modern operating systems that are capable of Operating System Directed Power Management (OSPM) to achieve the most efficient power management possible. The RTL8139D(L) also supports shared Boot ROM pins & clock run pin. In addition to the ACPI feature, the RTL8139D(L) also supports remote wake-up (including AMD Magic Packet, LinkChg, and Microsoft wake-up frame) in both ACPI and APM environments. The RTL8139D(L) is capable of performing an internal reset through the application of auxiliary power. When auxiliary power is applied and the main power remains off, the RTL8139D(L) is ready and is waiting for the Magic Packet or Link Change to wake the system up. Also, the LWAKE pin provides 4 different output signals including active high, active low, positive pulse, and negative pulse. The versatility of the RTL8139D(L) LWAKE pin provides motherboards with Wake-On-LAN (WOL) functionality. The RTL8139D(L) also supports Analog Auto-Power-down, that is, the analog part of the RTL8139D(L) can be shut down temporarily according to user requirement or when the RTL8139D(L) is in a power down state with the wakeup function disabled. In addition, when the analog part is shut down and the IsolateB pin is low (i.e. the main power is off), then both the analog and digital parts stop functioning and the power consumption of the RTL8139D(L) will be negligible. The RTL8139D(L) also supports an auxiliary power auto-detect function, and will auto-configure related bits of their own PCI power management registers in PCI configuration space. PCI Vital Product Data (VPD) is also supported to provide the information that uniquely identifies hardware (Ex., the OEM brand name of RTL8139D(L) LAN card). The information may consist of part number, serial number, and other detailed information. To provide cost down support, the RTL8139D(L) is capable of using a 25MHz crystal or OSC as its internal clock source. The RTL8139D(L) keeps network maintenance costs low and eliminates usage barriers. It is the easiest way to upgrade a network from 10 to 100Mbps. It also supports full-duplex operation, making 200Mbps bandwidth possible at no additional cost. To improve compatibility with other brands products, the RTL8139D(L) is also capable of receiving packets with InterFrameGap no less than 40 Bit-Time. The RTL8139D(L) is highly integrated and requires no glue logic or external memory. The RTL8139D(L) provides a flexible multi-function mode (Realtek patent pending) to incorporate other PCI master devices, like a hardware modem. When in multi-function mode, the RTL8139D(L) acts as an arbiter to distinguish LAN signals from those of other devices. The second device recognizes no difference between being connected to the RTL8139D or a regular PCI bus. The RTL8139D(L) includes a PCI and Expansion Memory Share Interface (Realteks patent pending) for a boot ROM and can be used in diskless workstations, providing maximum network security and ease of management.
2001/11/09
Rev.1.11
RTL8139D(L)
3. Pin Assignment
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 GND RXINRXIN+ NC AVDD TXDTXD+ GND ISOLATEB AVDD NC LED2 IDSEL2 LED1 LED0 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 RTSET LWAKE RTT3 GND X1 X2 AVDD AVDD25 PMEB GND VCTRL GNTB2 REQB2 CLKRUNB VDD25
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
INTAB RSTB CLK GNTB REQB AD31 AD30 GND AD29 VDD AD28 AD27 AD26 AD25 AD24 VDD25 VDD CBE3B IDSEL AD23
RTL8139D QFP
50 AUX 49 EECS 48 EESK 47 EEDI 46 EEDO 45 AD0 44 AD1 43 GND 42 AD2 41 AD3 40 NC 39 VDD 38 AD4 37 AD5 36 AD6 35 ROMCS/OEB 34 VDD 33 AD7 32 CBE0B 31 GND
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
AD22 GND AD21 AD20 AD19 VDD NC AD18 AD17 AD16 CBE2B FRAMEB IRDYB TRDYB DEVSELB
30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
AD8 AD9 AD10 AD11 AD12 AD13 AD14 AD15 VDD CBE1B PAR SERRB PERRB STOPB GND
2001/11/09
Rev.1.11
RTL8139D(L)
63 RTT3 64 LWAKE 65 RTSET 66 GND 67 RXIN68 RXIN+ 69 NC 70 AVDD 71 TXD72 TXD+ 73 GND 74 ISOLATEB 75 AVDD
62 61 60 59 58 57 56 55 54 53 52 51
GND X1 X2 AVDD AVDD25 PMEB GND VCTRL GNTB2 REQB2 CLKRUNB VDD25
76 NC 77 LED2 78 IDSEL2 79 LED1 80 LED0 81 INTAB 82 RSTB 83 CLK 84 GNTB 85 REQB 86 AD31 87 AD30 88 GND 89 AD29 90 VDD 91 AD28 92 AD27 93 AD26 94 AD25 95 AD24 96 VDD25 97 VDD 98 CBE3B 99 IDSEL 100 AD23
RTL8139DL LQFP
50 AUX 49 EECS 48 EESK 47 EEDI 46 EEDO 45 AD0 44 AD1 43 GND 42 AD2 41 AD3 40 NC 39 VDD 38 AD4 37 AD5 36 AD6 35 ROMCS/OEB 34 VDD 33 AD7 32 CBE0B 31 GND 30 AD8 29 AD9 28 AD10 27 AD11 26 AD12
1 2 3 4 5 6 7 8 9 10 11 12 13
AD22 GND AD21 AD20 AD19 VDD NC AD18 AD17 AD16 CBE2B FRAMEB IRDYB
25 24 23 22 21 20 19 18 17 16 15 14
AD13 AD14 AD15 VDD CBE1B PAR SERRB PERRB STOPB GND DEVSELB TRDYB
2001/11/09
Rev.1.11
RTL8139D(L)
4. Pin Descriptions
Note that some pins have multiple functions. Refer to the Pin Assignment diagram for a graphical representation.
74
LWAKE
64
C/BE3-0 CLK
T/S I
DEVSELB
S/T/S
15
FRAMEB
S/T/S
12
GNTB
84
2001/11/09
Rev.1.11
RTL8139D(L)
REQB IDSEL INTAB T/S I O/D 85 99 81 Request: The RTL8139D(L) will assert this signal low to request the ownership of the bus from the central arbiter. Initialization Device Select: This pin allows the RTL8139D(L) to identify when configuration read/write transactions are intended for it. INTAB: Used to request an interrupt. It is asserted low when an interrupt condition occurs, as defined by the Interrupt Status, Interrupt Mask and Interrupt Enable registers. Initiator Ready: This indicates the initiating agents ability to complete the current data phase of the transaction. As a bus master, this signal will be asserted low when the RTL8139D(L) is ready to complete the current data phase transaction. This signal is used in conjunction with the TRDYB signal. Data transaction takes place at the rising edge of CLK when both IRDYB and TRDYB are asserted low. As a target, this signal indicates that the master has put data on the bus. Target Ready: This indicates the target agents ability to complete the current phase of the transaction. As a bus master, this signal indicates that the target is ready for the data during write operations and with the data during read operations. As a target, this signal will be asserted low when the (slave) device is ready to complete the current data phase transaction. This signal is used in conjunction with the IRDYB signal. Data transaction takes place at the rising edge of CLK when both IRDYB and TRDYB are asserted low. Parity: This signal indicates even parity across AD31-0 and C/BE3-0 including the PAR pin. As a master, PAR is asserted during address and write data phases. As a target, PAR is asserted during read data phases. Parity Error: When the RTL8139D(L) is the bus master and a parity error is detected, the RTL8139D(L) asserts both SERR bit in ISR and Configuration Space command bit 8 (SERRB enable). Next, it completes the current data burst transaction, then stops operation and resets itself. After the host clears the system error, the RTL8139D(L) continues its operation. When the RTL8139D(L) is the bus target and a parity error is detected, the RTL8139D(L) asserts this PERRB pin low. System Error: If an address parity error is detected and Configuration Space Status register bit 15 (detected parity error) is enabled, RTL8139D(L) asserts both SERRB pin low and bit 14 of Status register in Configuration Space. Stop: Indicates the current target is requesting the master to stop the current transaction. Reset: When RSTB is asserted low, the RTL8139D(L) performs internal system hardware reset. RSTB must be held for a minimum of 120 ns.
IRDYB
S/T/S
13
TRDYB
S/T/S
14
PAR
T/S
20
PERRB
S/T/S
18
SERRB
O/D
19
STOPB RSTB
S/T/S I
17 82
2001/11/09
Rev.1.11
RTL8139D(L)
O O O, I O
48 47 46 49
01
TX/RX LINK10/100 FULL
10
TX LINK10/100 RX
11
TX LINK100 LINK10
2001/11/09
Rev.1.11
RTL8139D(L)
NC
7,40,69,76
2001/11/09
Rev.1.11
RTL8139D(L)
5. Register Descriptions
The RTL8139D(L) provides the following set of operational registers mapped into PCI memory space or I/O space. Offset 0000h
R/W
R/W
Tag
IDR0
Description
ID Register 0, The ID register0-5 are only permitted to read/write by 4-byte access. Read access can be byte, word, or double word access. The initial value is autoloaded from EEPROM EthernetID field. ID Register 1 ID Register 2 ID Register 3 ID Register 4 ID Register 5 Reserved Multicast Register 0, The MAR register0-7 are only permitted to read/write by 4-byte access. Read access can be byte, word, or double word access. Driver is responsible for initializing these registers. Multicast Register 1 Multicast Register 2 Multicast Register 3 Multicast Register 4 Multicast Register 5 Multicast Register 6 Multicast Register 7 Transmit Status of Descriptor 0 Transmit Status of Descriptor 1 Transmit Status of Descriptor 2 Transmit Status of Descriptor 3 Transmit Start Address of Descriptor0 Transmit Start Address of Descriptor1 Transmit Start Address of Descriptor2 Transmit Start Address of Descriptor3 Receive (Rx) Buffer Start Address Early Receive (Rx) Byte Count Register Early Rx Status Register Command Register Current Address of Packet Read Current Buffer Address: The initial value is 0000h. It reflects total received byte-count in the rx buffer. Interrupt Mask Register Interrupt Status Register Transmit (Tx) Configuration Register Receive (Rx) Configuration Register Timer CounT Register: This register contains a 32-bit general-purpose timer. Writing any value to this 32-bit register will reset the original timer and begin to count from zero. Missed Packet Counter: Indicates the number of packets discarded due to Rx FIFO overflow. It is a 24-bit counter. After s/w reset, MPC is cleared. Only the lower 3 bytes are valid. When written any value, MPC will be reset also. 93C46 Command Register Configuration Register 0 10
0009h 000Ah 000Bh 000Ch 000Dh 000Eh 000Fh 0010h-0013h 0014h-0017h 0018h-001Bh 001Ch-001Fh 0020h-0023h 0024h-0027h 0028h-002Bh 002Ch-002Fh 0030h-0033h 0034h-0035h 0036h 0037h 0038h-0039h 003Ah-003Bh 003Ch-003Dh 003Eh-003Fh 0040h-0043h 0044h-0047h 0048h-004Bh
R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R R R/W R/W R R/W R/W R/W R/W R/W
MAR1 MAR2 MAR3 MAR4 MAR5 MAR6 MAR7 TSD0 TSD1 TSD2 TSD3 TSAD0 TSAD1 TSAD2 TSAD3 RBSTART ERBCR ERSR CR CAPR CBR IMR ISR TCR RCR TCTR
004Ch-004Fh
R/W
MPC
0050h 0051h
R/W R/W
9346CR CONFIG0
2001/11/09
Rev.1.11
RTL8139D(L)
0052h 0053H 0054h-0057h R/W R /W CONFIG1 TimerInt Configuration Register 1 Reserved Timer Interrupt Register. Once having written a nonzero value to this register, the Timeout bit of ISR register will be set whenever the TCTR reaches to this value. The Timeout bit will never be set as long as TimerInt register is zero. Media Status Register Configuration register 3 Configuration register 4 Reserved Multiple Interrupt Select PCI Revision ID = 10h. Reserved. Transmit Status of All Descriptors Basic Mode Control Register Basic Mode Status Register Auto-Negotiation Advertisement Register Auto-Negotiation Link Partner Register Auto-Negotiation Expansion Register Disconnect Counter False Carrier Sense Counter N-way Test Register RX_ER Counter CS Configuration Register Reserved. PHY parameter 1 Twister parameter PHY parameter 2 Reserved Power Management CRC register0 for wakeup frame0 Power Management CRC register1 for wakeup frame1 Power Management CRC register2 for wakeup frame2 Power Management CRC register3 for wakeup frame3 Power Management CRC register4 for wakeup frame4 Power Management CRC register5 for wakeup frame5 Power Management CRC register6 for wakeup frame6 Power Management CRC register7 for wakeup frame7 Power Management wakeup frame0 (64bit) Power Management wakeup frame1 (64bit) Power Management wakeup frame2 (64bit) Power Management wakeup frame3 (64bit) Power Management wakeup frame4 (64bit) Power Management wakeup frame5 (64bit) Power Management wakeup frame6 (64bit) Power Management wakeup frame7 (64bit) LSB of the mask byte of wakeup frame0 within offset 12 to 75 LSB of the mask byte of wakeup frame1 within offset 12 to 75 LSB of the mask byte of wakeup frame2 within offset 12 to 75 LSB of the mask byte of wakeup frame3 within offset 12 to 75 LSB of the mask byte of wakeup frame4 within offset 12 to 75 LSB of the mask byte of wakeup frame5 within offset 12 to 75 LSB of the mask byte of wakeup frame6 within offset 12 to 75
0058h 0059h 005Ah 005Bh 005Ch-005Dh 005Eh 005Fh 0060h-0061h 0062h-0063h 0064h-0065h 0066h-0067h 0068h-0069h 006Ah-006Bh 006Ch-006Dh 006Eh-006Fh 0070h-0071h 0072h-0073h 0074h-0075h 0076-0077h 0078h-007Bh 007Ch-007Fh 0080h 0081-0083h 0084h 0085h 0086h 0087h 0088h 0089h 008Ah 008Bh 008Ch0093h 0094h009Bh 009Ch00A3h 00A4h00ABh 00ACh00B3h 00B4h00BBh 00BCh00C3h 00C4h00CBh 00CCh 00CDh 00CEh 00CFh 00D0h 00D1h 00D2h
R/W R/W R/W R/W R R R/W R R/W R R R R R/W R R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W
MSR CONFIG3 CONFIG4 MULINT RERID TSAD BMCR BMSR ANAR ANLPAR ANER DIS FCSC NWAYTR REC CSCR PHY1_PARM TW_PARM PHY2_PARM CRC0 CRC1 CRC2 CRC3 CRC4 CRC5 CRC6 CRC7 Wakeup0 Wakeup1 Wakeup2 Wakeup3 Wakeup4 Wakeup5 Wakeup6 Wakeup7 LSBCRC0 LSBCRC1 LSBCRC2 LSBCRC3 LSBCRC4 LSBCRC5 LSBCRC6
2001/11/09
11
Rev.1.11
RTL8139D(L)
00D3h 00D4h-00D7h 00D8h 00D9h-00FFh R/W R/W LSBCRC7 Config5 LSB of the mask byte of wakeup frame7 within offset 12 to 75 Reserved. Configuration register 5 Reserved.
27-24
NCC3-0
2001/11/09
12
Rev.1.11
RTL8139D(L)
23-22 21-16 R/W ERTXTH5-0 Reserved Early Tx Threshold: Specifies the threshold level in the Tx FIFO to begin the transmission. When the byte count of the data in the Tx FIFO reaches this level, (or the FIFO contains at least one complete packet) the RTL8139D(L) will transmit this packet. 000000 = 8 bytes These fields count from 000001 to 111111 in unit of 32 bytes. This threshold must avoid exceeding 2K bytes. Transmit OK: Set to 1 indicates that the transmission of a packet was completed successfully and no transmit underrun has occurred. Transmit FIFO Underrun: Set to 1 if the Tx FIFO was exhausted during the transmission of a packet. The RTL8139D(L) can re-transfer data if the Tx FIFO underruns and can also transmit the packet to the wire successfully even though the Tx FIFO underruns. That is, when TSD<TUN>=1, TSD<TOK>=0 and ISR<TOK>=1 (or ISR<TER>=1). OWN: The RTL8139D(L) sets this bit to 1 when the Tx DMA operation of this descriptor was completed. The driver must set this bit to 0 when the Transmit Byte Count (bits 0-12) is written. The default value is 1. Descriptor Size: The total size in bytes of the data in this descriptor. If the packet length is more than 1792 byte (0700h), the Tx queue will be invalid, i.e. the next descriptor will be written only after the OWN bit of that long packet's descriptor has been set.
15 14
R R
TOK TUN
13
R/W
OWN
12-0
R/W
SIZE
EROK
2001/11/09
13
Rev.1.11
RTL8139D(L)
R/W
RE
R/W
TE
1 0
BUFE
2001/11/09
14
Rev.1.11
RTL8139D(L)
R/W
ROK
2001/11/09
15
Rev.1.11
RTL8139D(L)
25-24
R/W
IFG1, 0
R R/W
16
R/W
CRC
15-11
2001/11/09
16
Rev.1.11
RTL8139D(L)
10-8 R/W MXDMA2, 1, 0 Max DMA Burst Size per Tx DMA Burst: This field sets the maximum size of transmit DMA data bursts according to the following table: 000 = 16 bytes 001 = 32 bytes 010 = 64 bytes 011 = 128 bytes 100 = 256 bytes 101 = 512 bytes 110 = 1024 bytes 111 = 2048 bytes Tx Retry Count: These are used to specify additional transmission retries in multiple of 16(IEEE 802.3 CSMA/CD retry count). If the TXRR is set to 0, the transmitter will re-transmit 16 times before aborting due to excessive collisions. If the TXRR is set to a value greater than 0, the transmitter will re-transmit a number of times equals to the following formula before aborting: Total retries = 16 + (TXRR * 16) The TER bit in the ISR register or transmit descriptor will be set when the transmission fails and reaches to this specified retry count. Reserved Clear Abort: Setting this bit to 1 causes the RTL8139D(L) to retransmit the packet at the last transmitted descriptor when this transmission was aborted, Setting this bit is only permitted in the transmit abort state.
7-4
R/W
TXRR
3-1 0
CLRABT
2001/11/09
17
Rev.1.11
RTL8139D(L)
23-18 17
R/W
MulERINT
16
R/W
RER8
15-13
R/W
RXFTH2, 1, 0
2001/11/09
18
Rev.1.11
RTL8139D(L)
12-11 R/W RBLEN1, 0 Rx Buffer Length: This field indicates the size of the Rx ring buffer. 00 = 8k + 16 byte 01 = 16k + 16 byte 10 = 32K + 16 byte 11 = 64K + 16 byte Max DMA Burst Size per Rx DMA Burst: This field sets the maximum size of the receive DMA data bursts according to the following table: 000 = 16 bytes 001 = 32 bytes 010 = 64 bytes 011 = 128 bytes 100 = 256 bytes 101 = 512 bytes 110 = 1024 bytes 111 = unlimited When set to 0: The RTL8139D(L) will transfer the rest of the packet data into the beginning of the Rx buffer if this packet has not been completely moved into the Rx buffer and the transfer has arrived at the end of the Rx buffer. When set to 1: The RTL8139D(L) will keep moving the rest of the packet data into the memory immediately after the end of the Rx buffer, if this packet has not been completely moved into the Rx buffer and the transfer has arrived at the end of the Rx buffer. The software driver must reserve at least 1.5K bytes buffer to accept the remainder of the packet. We assume that the remainder of the packet is X bytes. The next packet will be moved into the memory from the X byte offset at the top of the Rx buffer. This bit is invalid when Rx buffer is selected to 64K bytes. Reserved Accept Error Packet: When set to 1, all packets with CRC error, alignment error, and/or collided fragments will be accepted. When set to 0, all packets with CRC error, alignment error, and/or collided fragments will be rejected. Accept Runt: This bit allows the receiver to accept packets that are smaller than 64 bytes. The packet must be at least 8 bytes long to be accepted as a runt. Set to 1 to accept runt packets. Accept Broadcast packets: Set to 1 to accept, 0 to reject. Accept Multicast packets: Set to 1 to accept, 0 to reject. Accept Physical Match packets: Set to 1 to accept, 0 to reject. Accept All Packets: Set to 1 to accept all packets with a physical destination address, 0 to reject.
10-8
R/W
MXDMA2, 1, 0
R/W
WRAP
6 5
R/W
AER
R/W
AR
3 2 1 0
AB AM APM AAP
2001/11/09
19
Rev.1.11
RTL8139D(L)
4-5 3 2 1 0
Reserved These bits reflect the state of EECS, EESK, EEDI & EEDO pins in auto-load or 93C46 programming mode.
2001/11/09
20
Rev.1.11
RTL8139D(L)
2001/11/09
21
Rev.1.11
RTL8139D(L)
R/W
LWACT
3 2 1 0
R R R/W R/W
2001/11/09
22
Rev.1.11
RTL8139D(L)
6 5 4
R/W R
RXFCE Aux_Status
3 2 1 0
R R R R
NWAY FLY mode: NWAY with flow control capability NWAY mode only: NWAY without flow control capability RX Flow control Enable: The flow control is enabled in full-duplex mode only. The default value comes from 93C46. Reserved Aux. Power present Status: 1: The Aux. Power is present. 0: The Aux. Power is absent. The value of this bit is fixed after each PCI reset. Speed: Set, when current media is 10 Mbps mode. Reset, when current media is 100 Mbps mode. Inverse of Link status. 0 = Link OK. 1 = Link Fail. Transmit Pause Flag: Set, when RTL8139D(L) sends pause packet. Reset, when RTL8139D(L) sends a timer done packet. Receive Pause Flag: Set, when RTL8139D(L) is in backoff state because a pause packet was received. Reset, when pause state is clear.
2001/11/09
23
Rev.1.11
RTL8139D(L)
R/W
PARM_En
R/W
Magic
R/W
LinkUp
3 2 1 0
R R
CLKRUN_En FBtBEn
2001/11/09
24
Rev.1.11
RTL8139D(L)
R/W
LongWF
R/W
LWPME
3 2 1 0
R/W R/W
LWPTN PBWakeup
2001/11/09
25
Rev.1.11
RTL8139D(L)
5.17 Transmit Status of All Descriptors (TSAD) Register (Offset 0060h-0061h, R/W)
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 R/W R R R R R R R R R R R R R R R R Symbol TOK3 TOK2 TOK1 TOK0 TUN3 TUN2 TUN1 TUN0 TABT3 TABT2 TABT1 TABT0 OWN3 OWN2 OWN1 OWN0 Description TOK bit of Descriptor 3 TOK bit of Descriptor 2 TOK bit of Descriptor 1 TOK bit of Descriptor 0 TUN bit of Descriptor 3 TUN bit of Descriptor 2 TUN bit of Descriptor 1 TUN bit of Descriptor 0 TABT bit of Descriptor 3 TABT bit of Descriptor 2 TABT bit of Descriptor 1 TABT bit of Descriptor 0 OWN bit of Descriptor 3 OWN bit of Descriptor 2 OWN bit of Descriptor 1 OWN bit of Descriptor 0
2001/11/09
26
Rev.1.11
RTL8139D(L)
14 13 12
0, RW 0, RW
11-10 9 8
0, RW 0, RW
7-0
2001/11/09
27
Rev.1.11
RTL8139D(L)
14 13 12-11 10
ACK RF Pause
9 8 7 6 5 4-0
2001/11/09
28
Rev.1.11
RTL8139D(L)
14 13 12-11 10 9 8 7 6 5 4-0
0, RO 0, RO 0, RO 0, RO 0, RO 0, RO 0, RO 0, RO <00000>, RO
LP_NW_ABLE
0, RO
2001/11/09
29
Rev.1.11
RTL8139D(L)
2001/11/09
30
Rev.1.11
RTL8139D(L)
R/W
MWF
R/W
UWF
2001/11/09
31
Rev.1.11
RTL8139D(L)
3 R/W FIFOAddrPtr FIFO Address Pointer: (Realtek internal use only to test FIFO SRAM) 1: Both Rx and Tx FIFO address pointers are updated in descending way from 1FFh and downwards. The initial FIFO address pointer is 1FFh. 0: (Power-on) default value. Both Rx and Tx FIFO address pointers are updated in ascending way from 0 and upwards. The initial FIFO address pointer is 0. Note: This bit does not participate in EEPROM auto-load. The FIFO address pointers can not be reset, except initial power-on. The power-on default value of this bit is 0. Link Down Power Saving mode: 1: Disable. 0: Enable. When cable is disconnected (Link Down), the analog part will power down itself (PHY Tx part & part of twister) automatically except PHY Rx part and part of twister to monitor SD signal in case that cable is re-connected and Link should be established again. LANWake signal enable/disable: 1: Enable LANWake signal. 0: Disable LANWake signal. PME_Status bit: Always sticky/can be reset by PCI RST# and software. 1: The PME_Status bit can be reset by PCI reset or by software. 0: The PME_Status bit can only be reset by software.
R/W
LDPS
1 0
R/W R/W
LANWake PME_STS
$" Config5 register, offset D8h: (SYM_ERR register is changed to Config5, the function of SYM_ERR register is no longer supported by RTL8139D(L).) $" The 3 bits (bit2-0) are auto-loaded from EEPROM Config5 byte to RTL8139D(L) Config5 register.
2001/11/09
32
Rev.1.11
RTL8139D(L)
1Eh
PHY2_PARM_U
2001/11/09
33
Rev.1.11
RTL8139D(L)
1Fh CONFIG_5 Do not change this filed without Realtek approval. Bit7-6,4-3: Reserved. Bit5: PCI multi-function enable. Set to 1: Enable PCI multi-function capability. The RTL8139D(L) can be a multi-function device with an external master PCI device mode on the same PCB, ex. an external hardware modem. Set to 0: Disable PCI multi-function capability. Bit2: Link Down Power Saving mode: Set to 1: Disable. Set to 0: Enable. When cable is disconnected(Link Down), the analog part will power down itself (PHY Tx part & part of twister) automatically except PHY Rx part and part of twister to monitor SD signal in case that cable is re-connected and Link should be established again. Bit1: LANWake signal Enable/Disable Set to 1: Enable LANWake signal. Set to 0: Disable LANWake signal. Bit0: PME_Status bit property Set to 1: The PME_Status bit can be reset by PCI reset or by software if D3cold_support_PME is 0. If D3cold_support_PME=1, the PME_Status bit is a sticky bit. Set to 0: The PME_Status bit is always a sticky bit and can only be reset by software. Reserved. Do not change this filed without Realtek approval. Twister Parameter U for RTL8139D(L). Operational registers of the RTL8139D(L) are 7Ch-7Fh. Reserved. Do not change this filed without Realtek approval. Twister Parameter T for RTL8139D(L). Operational registers of the RTL8139D(L) are 7Ch-7Fh. Reserved. Do not change this filed without Realtek approval. PHY Parameter 1-T for RTL8139D(L). Operational registers of the RTL8139D(L) are from 78h to 7Bh. Reserved. Do not change this filed without Realtek approval. PHY Parameter 2-T for RTL8139D(L). Operational register of the RTL8139D(L) is 80h. Reserved. Reserved. Do not change this filed without Realtek approval. Checksum of the EEPROM content. Reserved. Do not change this filed without Realtek approval. Reserved. Do not change this filed without Realtek approval. PXE ROM code parameter. VPD data filed. Offset 40h is the start address of the VPD data.
20h-23h
TW_PARM_U
24h-27h
TW_PARM_T
28h-2Bh
PHY1_PARM_T
2001/11/09
34
Rev.1.11
RTL8139D(L)
DVRLOAD LWACT MEMMAP IOMAP DVRLOAD LWACT Spd_Set Spd_Set Magic Magic LongWF ANE ANE LinkUp LinkUp LWPME LWPTN
R/W* RxFIFO AutoClr ** 78h-7Bh PHY1_PARM R/W 7Ch-7Fh TW1_PARM R/W** TW2_PARM 80h PHY2_PARM R/W** D8h CONFIG5 R/W* * **
32 bit Read Write 32 bit Read Write 32 bit Read Write 8 bit Read Write -
LDPS
LANWak PME_ST e S
The registers marked with type = 'W*' can be written only if bits EEM1=EEM0=1. The registers marked with type = 'W**' can be written only if bits EEM1=EEM0=1 and CONFIG3<PARM_EN> = 0.
D2 -
PMCSR
PME_Status PME_Status
2001/11/09
35
Rev.1.11
RTL8139D(L)
Cap_Ptr
R R R R R W R W R/W R/W R
SVID3 SVID2 SVID1 SVID11 SVID10 SVID9 SMID3 SMID2 SMID1 SMID11 SMID10 SMID9 0 0 0 BMAR11 0 0 BMAR11 BMAR19 BMAR18 BMAR17 BMAR27 BMAR26 BMAR25 0 0 0
ILR IPR
R/W R
IRL7 0
ILR6 0
ILR3 0
ILR2 0
ILR1 0
ILR0 1
2001/11/09
Rev.1.11
RTL8139D(L)
3Eh 3Fh 40h4 Fh 50h 51h 52h 53h 54h 55h 56h5 Fh 60h VPDID 61h NextPtr 62h Flag VPD Address 63h 64h VPD Data 65h 66h 67h 68h-F Fh MNGNT MXLAT R R 0 0 0 0 1 0 1 0 RESERVED 0 0 0 0 0 0 0 0
R R R R R W R W
0 0 0 0 0 0 0 0 0 0 Aux_I_b1 Aux_I_b0 DSI Reserved PMECLK PME_D3cold PME_D3hot PME_D2 PME_D1 PME_D0 0 0 0 0 0 PME_Status PME_Status RESERVED
0 0 D2 0 -
R 0 0 0 0 0 0 1 1 R 0 0 0 0 0 0 0 0 R/W VPDADDR VPDADDR VPDADD VPDADD VPDADD VPDADD VPDADD VPDADD 7 6 R5 R4 R3 R2 R1 R0 R/W Flag VPDADDR VPDADD VPDADD VPDADD VPDADD VPDADD VPDADD 14 R13 R12 R11 R10 R9 R8 R/W Data7 Data6 Data5 Data4 Data3 Data2 Data1 Data0 R/W Data15 Data14 Data13 Data12 Data11 Data10 Data9 Data8 R/W Data23 Data22 Data21 Data20 Data19 Data18 Data17 Data16 R/W Data31 Data30 Data29 Data28 Data27 Data26 Data25 Data24 RESERVED
8 7
SERREN ADSTEP
2001/11/09
37
Rev.1.11
RTL8139D(L)
6 Parity Error Response: When set to 1, the RTL8139D(L) will assert the PERRB pin on the detection of a data parity error when acting as the target, and will sample the PERRB pin as the master. When set to 0, any detected parity error is ignored and the RTL8139D(L) continues normal operation. Parity checking is disabled after hardware reset (RSTB). VGASNOOP VGA palette SNOOP: Read as 0, write operation has no effect. MWIEN Memory Write and Invalidate cycle Enable: Read as 0, write operation has no effect. SCYCEN Special Cycle Enable: Read as 0, write operation has no effect. The RTL8139D(L) ignores all special cycle operation. BMEN Bus Master Enable: When set to 1, the RTL8139D(L) is capable of acting as a bus master. When set to 0, it is prohibited from acting as a PCI bus master. For the normal operation, this bit must be set by the system BIOS. MEMEN Memory Space Access: When set to 1, the RTL8139D(L) responds to memory space accesses. When set to 0, the RTL8139D(L) ignores memory space accesses. IOEN I/O Space Access: When set to 1, the RTL8139D(L) responds to IO space access. When set to 0, the RTL8139D(L) ignores I/O space accesses. PERRSP
5 4 3 2
1 0
Status: The status register is a 16-bit register used to record status information for PCI bus related events. Reads to this register behave normally. Writes are slightly different in that bits can be reset, but not set. Bit 15 14 13 12 11 10-9 8 Symbol DPERR SSERR RMABT RTABT STABT DST1-0 DPD Description Detected Parity Error: When set indicates that the RTL8139D(L) detected a parity error, even if parity error handling is disabled in command register PERRSP bit. Signaled System Error: When set indicates that the RTL8139D(L) asserted the system error pin, SERRB. Writing a 1 clears this bit to 0. Received Master Abort: When set indicates that the RTL8139D(L) terminated a master transaction with master abort. Writing a 1 clears this bit to 0. Received Target Abort: When set indicates that the RTL8139D(L) master transaction was terminated due to a target abort. Writing a 1 clears this bit to 0. Signaled Target Abort: Set to 1 whenever the RTL8139D(L) terminates a transaction with target abort. Writing a 1 clears this bit to 0. Device Select Timing: These bits encode the timing of DEVSELB. They are set to 01b (medium), indicating the RTL8139D(L) will assert DEVSELB two clocks after FRAMEB is asserted. Data Parity error Detected: This bit sets when the following conditions are met: ! The RTL8139D(L) asserts parity error(PERRB pin) or it senses the assertion of PERRB pin by another device. ! The RTL8139D(L) operates as a bus master for the operation that caused the error. ! The Command register PERRSP bit is set. Writing a 1 clears this bit to 0. Fast Back-To-Back Capable: Config3<FbtBEn>=0, Read as 0, write operation has no effect. Config3<FbtBEn>=1, Read as 1. User Definable Features Supported: Read as 0, write operation has no effect. The RTL8139D(L) does not support UDF. 66 MHz Capable: Read as 0, write operation has no effect. The RTL8139D(L) has no 66MHz capability. New Capability: Config3<PMEn>=0, Read as 0, write operation has no effect. Config3<PMEn>=1, Read as 1. Reserved
7 6 5 4 0-3
RID: Revision ID Register The Revision ID register is an 8-bit register that specifies the RTL8139D(L) controller revision number. PIFR: Programming Interface Register The programming interface register is an 8-bit register that identifies the programming interface of the RTL8139D(L) controller. Because the PCI version 2.1 specification does not define any specific value for network devices, PIFR = 00h.
2001/11/09
38
Rev.1.11
RTL8139D(L)
SCR: Sub-Class Register The Sub-class register is an 8-bit register that identifies the function of the RTL8139D(L). SCR = 00h indicates that the RTL8139D(L) is an Ethernet controller. BCR: Base-Class Register The Base-class register is an 8-bit register that broadly classifies the function of the RTL8139D(L). BCR = 02h indicates that the RTL8139D(L) is a network controller. CLS: Cache Line Size Reads will return a 0, writes are ignored. LTR: Latency Timer Register Specifies, in units of PCI bus clocks, the value of the latency timer of the RTL8139D(L). When the RTL8139D(L) asserts FRAMEB, it enables its latency timer to count. If the RTL8139D(L) deasserts FRAMEB prior to count expiration, the content of the latency timer is ignored. Otherwise, after the count expires, the RTL8139D(L) initiates transaction termination as soon as its GNTB is deasserted. Software is able to read or write, and the default value is 00H. HTR: Header Type Register Reads will return a 0, writes are ignored. BIST: Built-in Self Test Reads will return a 0, writes are ignored. IOAR: This register specifies the BASE IO address which is required to build an address map during configuration. It also specifies the number of bytes required as well as an indication that it can be mapped into IO space. Bit 31-8 7-2 1 0 Symbol IOAR31-8 IOSIZE IOIN Description BASE IO Address: This is set by software to the Base IO address for the operational register map. Size Indication: Read back as 0. This allows the PCI bridge to determine that the RTL8139D(L) requires 256 bytes of IO space. Reserved IO Space Indicator: Read only. Set to 1 by the RTL8139D(L) to indicate that it is capable of being mapped into IO space.
MEMAR: This register specifies the base memory address for memory accesses to the RTL8139D(L) operational registers. This register must be initialized prior to accessing any RTL8139D(L)'s register with memory access. Bit 31-8 7-4 3 2-1 0 Symbol Description MEM31-8 Base Memory Address: This is set by software to the base address for the operational register map. MEMSIZE Memory Size: These bits return 0, which indicates that the RTL8139D(L) requires 256 bytes of Memory Space. MEMPF Memory Prefetchable: Read only. Set to 0 by the RTL8139D(L). MEMLOC Memory Location Select: Read only. Set to 0 by the RTL8139D(L). This indicates that the base register is 32-bit wide and can be placed anywhere in the 32-bit memory space. MEMIN Memory Space Indicator: Read only. Set to 0 by the RTL8139D(L) to indicate that it is capable of being mapped into memory space.
SVID: Subsystem Vendor ID. This field will be set to a value corresponding to PCI Subsystem Vendor ID in the external EEPROM. If there is no EEPROM, this field will default to a value of 10ECh which is Realtek Semiconductor's PCI Subsystem Vendor ID. SMID: Subsystem ID. This field will be set to value corresponding to PCI Subsystem ID in the external EEPROM. If there is no EEPROM, this field will default to a value of 8139h.
2001/11/09
39
Rev.1.11
RTL8139D(L)
BMAR: This register specifies the base memory address for memory accesses to the Rtl8139D(L) operational registers. This register must be initialized prior to accessing any Rtl8139D(L) 's register with memory access. Bit 31-18 17-11 Symbol BMAR31-18 ROMSIZE Description Boot ROM Base Address These bits indicate how many Boot ROM spaces to be supported. The Relationship between Config 0 <BS2:0> and BMAR17-11 is the following: BS2 BS1 BS0 Description 0 0 0 No Boot ROM, BROMEN=0 (R) 0 0 1 8K Boot ROM, BROMEN (R/W), BMAR12-11 = 0 (R), BMAR17-13 (R/W) 0 1 0 16K Boot ROM, BROMEN (R/W), BMAR13-11 = 0 (R), BMAR17-14 (R/W) 0 1 1 32K Boot ROM, BROMEN (R/W), BMAR14-11 = 0 (R), BMAR17-15 (R/W) 1 0 0 64K Boot ROM, BROMEN (R/W), BMAR15-11 = 0 (R), BMAR17-16 (R/W) 1 0 1 128K Boot ROM, BROMEN(R/W), BMAR16-11=0 (R), BMAR17 (R/W) 1 1 0 unused 1 1 1 unused Reserved (read back 0) Boot ROM Enable: This is used by the PCI BIOS to enable accesses to Boot ROM.
10-1 0
BROMEN
ILR: Interrupt Line Register The Interrupt Line Register is an 8-bit register used to communicate with the routing of the interrupt. It is written by the POST software to set interrupt line for the RTL8139D(L). IPR: Interrupt Pin Register The Interrupt Pin register is an 8-bit register indicating the interrupt pin used by the RTL8139D(L). The RTL8139D(L) uses INTA interrupt pin. Read only. IPR = 01H. MNGNT: Minimum Grant Timer: Read only Specifies how long a burst period the RTL8139D(L) needs at 33 MHz clock rate in units of 1/4 microsecond. This field will be set to a value from the external EEPROM. If there is no EEPROM, this field will default to a value of 20h. MXLAT: Maximum Latency Timer: Read only Specifies how often the RTL8139D(L) needs to gain access to the PCI bus in unit of 1/4 microsecond. This field will be set to a value from the external EEPROM. If there is no EEPROM, this field will default to a value of 20h.
2001/11/09
40
Rev.1.11
RTL8139D(L)
MEMAR
Cap-Ptr
R R R R R W R W R/W R/W R
1 1 1 0 1 0 0 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 BMAR15 BMAR14 BMAR13 BMAR12 BMAR11 0 0 0 0 0 0 0 0 0 0 Ptr7 Ptr6 Ptr5 Ptr4 Ptr3 RESERVED(ALL 0)
1 0 0 0 0 0 0 0 Ptr2
0 0 0 0 0 0 0 0 Ptr1
0 1 1 1 0 BROMEN 0 0 0 Ptr0
ILR IPR
R/W R
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 1
2001/11/09
41
Rev.1.11
RTL8139D(L)
3Eh 3Fh 40h | FFh MNGNT MXLAT R R 0 0 0 0 1 1 0 0 0 0 RESERVED(ALL 0) 0 0 0 0 0 0
$"The RTL8139D(L) can monitor the network for a Wakeup Frame, a Magic Packet, or a Link Change, and notify the
system via PME# when such a packet or event arrives. Then, the whole system can restore to working state to process the incoming jobs.
$"The RTL8139D(L) can be isolated from the PCI bus automatically with the auxiliary power circuit when the PCI bus is in
B3 state, i.e. the power on the PCI bus is removed. When the motherboard includes a built-in RTL8139D(L) single-chip fast Ethernet controller, the RTL8139D(L) can be disabled when needed by pulling the isolate pin low to 0V. When the RTL8139D(L) is in power down mode (D1 ~ D3), The Rx state machine is stopped, and the RTL8139D(L) keeps monitoring the network for wakeup event such Magic Packet, Wakeup Frame, and/or Link Change, in order to wake up the system. When in power down mode, the RTL8139D(L) will not reflect the status of any incoming packet in the ISR register and will not receive any packet into Rx FIFO. The FIFO status and the packets which are already received into Rx FIFO before entering into power down mode, are kept by the RTL8139D(L) during power down mode The transmission is stopped. The action of PCI bus master mode is stopped, too. The Tx FIFO is kept. After restoring to a D0 state, the PCI bus master mode continues to transfer the data, which is not yet moved into Tx FIFO from the last break. The packet that was not transmitted completely last time is transmitted again.
D3cold_support_PME bit(bit15, PMC register) & Aux_I_b2:0 (bit8:6, PMC register) in PCI configuration space. If 9346 D3cold_support_PME bit(bit15, PMC) = 1, the above 4 bits depend on the existence of Aux power. If 9346 D3cold_support_PME bit(bit15, PMC) = 0, the above 4 bits are all 0's. Ex.: 1. If 9346 D3c_support_PME = 1, $" Aux. power exists, then PMC in PCI config space is the same as 9346 PMC, i.e. if 9346 PMC = C2 F7, then PCI PMC = C2 F7. $" Aux. power is absent, then PMC in PCI config space is the same as 9346 PMC except the above 4 bits are all 0s. I.e. if 9346 PMC = C2 F7, the PCI PMC = 02 76. %" In this case, if wakeup support is desired when the main power is off, it is suggested that the 9346 PMC be set to: C2 F7 (RT 9346 default value). It is not recommended to set the D0_support_PME bit to 1. 2. If 9346 D3c_support_PME = 0, $" Aux. power exists, then PMC in PCI config space is the same as 9346 PMC. I.e. if 9346 PMC = C2 77, then PCI PMC = C2 77. $" Aux. power is absent, then PMC in PCI config space is the same as 9346 PMC except the above 4 bits are all 0s. I.e. if 9346 PMC = C2 77, the PCI PMC = 02 76. %" In this case, if wakeup support is not desired when the main power is off, it is suggested that the 9346 PMC to be 02 76. It is not recommended to set the D0_support_PME bit to 1. Link Wakeup occurs only when the following conditions are approved, The LinkUp bit (CONFIG3#4) is set to 1, the PMEn bit (CONFIG1#0) is set to 1, and the RTL8139D(L) is in isolation state, or the PME# can be asserted in current power state.
2001/11/09
42
Rev.1.11
RTL8139D(L)
The Link status is re-established. Magic Packet Wakeup occurs only when the following conditions are met: The destination address of the received Magic Packet matches. The received Magic Packet does not contain CRC error. The Magic bit (CONFIG3#5) is set to 1, the PMEn bit (CONFIG1#0) is set to 1, and the RTL8139D(L) is in isolation state, or the PME# can be asserted in current power state. The Magic Packet pattern matches, i.e. 6 * FFh + MISC(can be none)+ 16 * DID(Destination ID) in any part of a valid (Fast) Ethernet packet.
Wakeup Frame event occurs only when the following conditions are met:
&"
The destination address of the received Wakeup Frame matches. The received Wakeup Frame does not contain a CRC error. The PMEn bit (CONFIG1#0) is set to 1. The 8-bit CRC* (or 16-bit CRC) of the received Wakeup Frame matches with the 8-bit CRC* (or 16-bit CRC) of the sample Wakeup Frame pattern received from the local machines OS. The last masked byte** of the received Wakeup Frame matches with the last masked byte** of the sample Wakeup Frame pattern provided by the local machines OS. (In Long Wakeup Frame mode, the last masked byte field is replaced with the high byte of the 16-bit CRC.) !" 8-bit CRC: This 8-bit CRC logic is use to generate an 8-bit CRC from the masked bytes of the received Wakeup Frame packet within offset 12 to 75. Software should calculate the 8-bit Power Management CRC for each specific sample wakeup frame and store the calculated CRC in the corresponding CRC register for the RTL8139D(L) to check if there is Wakeup Frame packet coming in. !" 16-bit CRC: (Long Wakeup Frame mode, the mask bytes cover from offset 0 to 127)
&"
Long Wakeup Frame: The RTL8139D(L) also supports 3 long Wakeup Frames. If the range of mask bytes of the sample Wakeup Frame, passed down by the OS to the driver, exceeds the range from offset 12 to 75, the related registers of wakeup frame 2 and 3 can be merged to support one long wakeup frame by setting the LongWF (bit0, CONFIG4). Thus, the range of effective mask bytes extends from offset 0 to 127. The low byte and high byte of calculated 16-bit CRC should be put into register CRC2 and LSBCRC2 respectively. The mask bytes (16 bytes) should be store to register Wakeup2 and Wakeup3. The CRC3 and LSBCRC3 have no meaning in this case and should be reset to 0. So as the long Wakeup Frame pairs, wakeup frame 4 and 5, wakeup frame 6 and 7. The CRC5, CRC7, LSBCRC5, and LSBCRC7 have no meaning in this case and should be reset to 0, if the RTL8139D(L) is set to support long Wakeup Frame. In this case, the RTL8139D(L) support 5 wakeup frames, that are 2 normal wakeup frames and 3 long wakeup frames. ** last masked byte: The last byte of the masked bytes of the received Wakeup Frame packet within offset 12 to 75 (in 8-bit CRC mode) should matches with the last byte of the masked bytes of the sample Wakeup Frame provided by the local machines OS. The PME# signal is asserted only when the following are approved,
&" &" &"
The PMEn bit (bit0, CONFIG1) is set to 1. The PME_En bit (bit8, PMCSR) in PCI Configuration Space is set to 1. The RTL8139D(L) may assert PME# in current power state, or the RTL8139D(L) is in isolation state. Refer to PME_Support(bit15-11) of the PMC register in PCI Configuration Space. Magic Packet, LinkUp, or Wakeup Frame has occurred.
&"
2001/11/09
43
Rev.1.11
RTL8139D(L)
* Writing a 1 to the PME_Status (bit15) of PMCSR register in the PCI Configuration Space will clear this bit and cause the RTL8139D(L) to stop asserting a PME# (if enabled). When the RTL8139D(L) is in power down mode, ex. D1-D3, the IO, MEM, and Boot ROM space are all disabled. After RST# asserted, the power state must be changed to D0 if the original power state is D3cold. There is no hardware enforced delays at RTL8139D(L)s power state. When in ACPI mode, the RTL8139D(L) does not support PME from D0 (owing to the setting of PMC register. This setting comes from EEPROM). The RTL8139D(L) also supports LAN WAKE-UP function. The LWAKE pin is used to notify the motherboard to execute wake-up process whenever the RTL8139D(L) receives a wakeup event, such as Magic Packet. The LWAKE signal is asserted according the following setting. &" LWPME bit (bit4, CONFIG4): 0: The LWAKE is asserted whenever there is wakeup event occurs. 1: The LWAKE can only be asserted when the PMEB is asserted and the ISOLATEB is low. &" Bit1 of DELAY byte(offset 1Fh, EEPROM): 0: LWAKE signal is disabled. 1: LWAKE signal is enabled
2001/11/09
44
Rev.1.11
RTL8139D(L)
2001/11/09
45
Rev.1.11
RTL8139D(L)
8. Block Diagram
MAC
EEPROM Interface LED Driver
FIFO
PCI Interface
MII Interface
PHY
100M
5B 4B Decoder Data Alignment Descrambler
MII Interface
4B 5B Encoder
Scrambler
Link pulse
10M
TXC10 TXD10 Manchester coded waveform 10M Output waveform shaping
RXC10 RXD10
Data Recovery
Transceiver
TXC 25M TXD
Parrallel to Serial TD+ 3 Level Driver
TXO+ TXO -
Peak Detect
Adaptive Equalizer
RXIN+ RXIN-
Serial to Parrallel
ck data
Slave PLL
25M
2001/11/09
46
Rev.1.11
RTL8139D(L)
9. Functional Description
9.1 Transmit operation
The host CPU initiates a transmit by storing an entire packet of data in one of the descriptors in the main memory. When the entire packet has been transferred to the Tx buffer, the RTL8139D(L) is instructed to move the data from the Tx buffer to the internal transmit FIFO in PCI bus master mode. When the transmit FIFO contains a complete packet or is filled to the programmed threshold level, the RTL8139D(L) begins packet transmission.
9.7 Tx Encapsulation
While operating in 100Base-TX mode, the RTL8139D(L) encapsulates the frames that it transmits according to the 4B/5B code-groups table. The changes of the original packet data are listed as follows: 1. The first byte of the preamble in the MAC frame is replaced with the JK symbol pair. 2. After the CRC, the TR symbol pair is inserted.
2001/11/09
47
Rev.1.11
RTL8139D(L)
9.8 Collision
If the RTL8139D(L) is not in the full-duplex mode, a collision event occurs when the receive input is not idle while the RTL8139D(L) transmits. If the collision was detected during the preamble transmission, the jam pattern is transmitted after completing the preamble (including the JK symbol pair).
9.9 Rx Decapsulation
The RTL8139D(L) continuously monitors the network when reception is enabled. When activity is recognized it starts to process the incoming data. After detecting receive activity on the line, the RTL8139D(L) starts to process the preamble bytes based on the mode of operation. While operating in 100Base-Tx mode, the RTL8139D(L) expects the frame to start with the symbol pair JK in the first byte of the 8-byte preamble. The RTL8139D(L) checks the CRC bytes and checks if the packet data ends with the TR symbol pair, if not, the RTL8139D(L) reports an CRC error RSR. The RTL8139D(L) reports a RSR<CRC> error in any of the following cases: 1. In the 100Base-Tx mode, one of the following occur. a. An invalid symbol (4B/5B Table) is received in the middle of the frame. RSR<ISE> bit also sets. b. The frame does not end with the TR symbol pair.
2001/11/09
48
Rev.1.11
RTL8139D(L)
9.11.2 LED_RX
In 10/100 Mbps mode, the LED function is like RTL8139C(L).
Power On
LED = Low
No
9.11.3 LED_TX
Power On
LED = Low
No
2001/11/09
49
Rev.1.11
RTL8139D(L)
9.11.4 LED_TX+LED_RX
Power On
LED = Low
No
EEPROM
REQB
RJ45
Magetics
CS/OE
RTL8102L
GNTB IDSEL
BootROM
Auxiliary Power
INTA
PCI INTERFACE
2001/11/09
50
Rev.1.11
RTL8139D(L)
11.2 DC Characteristics
11.2.1 Supply voltage Vcc = 3.0V min. to 3.6V max.
Symbol VOH VOL VIH VIL IIN IOZ ICC Parameter Minimum High Level Output Voltage Maximum Low Level Output Voltage Minimum High Level Input Voltage Maximum Low Level Input Voltage Input Current Tri-State Output Leakage Current Average Operating Supply Current VIN=VCC or GND VOUT=VCC or GND IOUT=0mA, Conditions IOH= -8mA IOL= 8mA Minimum 0.9 * Vcc 0.5 * Vcc -0.5 -1.0 -10 Maximum Vcc 0.1 * Vcc Vcc+0.5 0.3 * Vcc 1.0 10 330 Units V V V V uA uA mA
2001/11/09
51
Rev.1.11
RTL8139D(L)
11.3 AC Characteristics
11.3.1 PCI Bus Operation Timing
Target Read
Target Write
2001/11/09
52
Rev.1.11
Configuration Write
2001/11/09
53
Rev.1.11
Memory Read
2001/11/09
54
Rev.1.11
2001/11/09
55
Rev.1.11
2001/11/09
56
Rev.1.11
2001/11/09
57
Rev.1.11
RTL8139D(L)
Symbol A A1 A2 b c D E HD HE L L1 Y !
Dimension in mil Min Typical Max 106.3 118.1 129.9 4.3 20.1 35.8 102.4 112.2 122.0 7.1 11.8 16.5 1.6 5.9 10.2 541.3 551.2 561.0 777.6 787.4 797.2 19.7 25.6 31.5 726.4 740.2 753.9 962.6 976.4 990.2 39.4 47.2 55.1 88.6 94.5 104.3 3.9 0 12
Dimension in mm Min Typical Max 2.70 3.00 3.30 0.11 0.51 0.91 2.60 2.85 3.10 0.18 0.30 0.42 0.04 0.15 0.26 13.75 14.00 14.25 19.75 20.00 20.25 0.50 0.65 0.80 18.45 18.80 19.15 24.45 24.80 25.15 1.00 1.20 1.40 2.25 2.40 2.65 0.10 0 12
Notes: 1.Dimension D & E do not include interlead flash. 2.Dimension b does not include dambar protrusion/intrusion. 3.Controlling dimension: Millimeter 4.General appearance spec. should be based on final visual inspection spec.
TITLE : 100L QFP ( 14x20 mm**2 ) FOOTPRINT 4.8 mm PACKAGE OUTLINE DRAWING LEADFRAME MATERIAL: APPROVE DWG NO. REV NO. SCALE CHECK Ricardo Chen DATE SHT NO. 1 OF REALTEK SEMICONDUCTOR CORP.
2001/11/09
58
Rev.1.11
RTL8139D(L)
12.2 LQFP
Symbol A A1 A2 b b1 c c1 D D1 E E1 L L1 ! !1 !2 !3
Dimension in inch Min Nom Max 0.067 0.000 0.004 0.008 0.051 0.055 0.059 0.006 0.009 0.011 0.006 0.008 0.010 0.004 0.008 0.004 0.006 0.630 BSC 0.551 BSC 0.630 BSC 0.551 BSC 0.020 BSC 0.016 0.024 0.031 0.039 REF 0 3.5 9 0 12TYP 12TYP
Dimension in mm Min Nom Max 1.70 0.00 0.20 0.1 1.30 1.40 1.50 0.15 0.22 0.29 0.15 0.20 0.25 0.09 0.20 0.09 0.16 16.00 BSC 14.00 BSC 16.00 BSC 14.00 BSC 0.50 BSC 0.40 0.60 0.80 1.00 REF 0 3.5 9 0 12TYP 12TYP
Notes: 1.To be determined at seating plane -c2.Dimensions D1 and E1 do not include mold protrusion. D1 and E1 are maximum plastic body size dimensions including mold mismatch. 3.Dimension b does not include dambar protrusion. Dambar can not be located on the lower radius of the foot. 4.Exact shape of each corner is optional. 5.These dimensions apply to the flat section of the lead between 0.10 mm and 0.25 mm from the lead tip. 6. A1 is defined as the distance from the seating plane to the lowest point of the package body. 7.Controlling dimension: millimeter. 8. Reference document: JEDEC MS-026, BED. TITLE: 100LD LQFP ( 14x14x1.4mm) PACKAGE OUTLINE DRAWING, FOOTPRINT 2.0mm LEADFRAME MATERIAL: APPROVE DOC. NO. VERSION 1 PAGE OF CHECK DWG NO. LQ100 - P1 DATE REALTEK SEMICONDUCTOR CORP.
2001/11/09
59
Rev.1.11
RTL8139D(L)
2001/11/09
60
Rev.1.11