ETC RTL8019

RTL8019
Realtek Full-Duplex Ethernet
Controller with Plug and Play
Function (RealPNP)
ADVANCE INFORMATION
REALTEK SEMI-CONDUCTOR CO., LTD.
HEAD OFFICE
1F, NO. 11, INDUSTRY E. RD. IX, SCIENCE-BASED
INDUSTRIAL PARK, HSINCHU 30077, TAIWAN, R.O.C.
TEL:886-35-780211 FAX:886-35-776047
OFFICE
3F, NO. 56, WU-KUNG 6 RD.,
TAIPEI HSIEN, TAIWAN, R.O.C.
TEL: 886-2-2980098 FAX: 886-2-2980094, 2980097
LS003.6
1995.04.25
ADVANCE INFORMATION
RTL8019
CONTENTS
1. FEATURES
2. GENERAL DESCRIPTION
3. PIN CONFIGURATION
3
4
5
4. PIN DESCRIPTION
4.1. Power Pins
4.2. ISA Bus Interface Pins
4.3. Memory Interface Pins (including SRAM, BROM, EEPROM)
4.4. Medium Interface Pins
4.5. LED Output Pins
6
6
7
8
8
5. REGISTER DESCRIPTIONS
5.1. Group 1: NE2000 Registers
5.1.1. Register Table
5.1.2. Register Functions
5.1.2.1. NE2000 Compatible Registers
5.1.2.2. RTL8019 Defined Registers
5.2. Group 2: Plug and Play (PnP) Registers
5.2.1. Card Control Registers
5.2.2. Logical Device Control Registers
5.2.3. Logical Device Configuration Registers
9
9
11
11
11
17
23
25
25
6. FUNCTIONAL DESCRIPTIONS
6.1. RTL8019 Configuration Modes
6.2. Plug and Play
6.2.1. Initiation Key
6.2.2. Isolation Protocol
6.2.3. Plug and Play Isolation Sequence
6.2.4. Reading Resource Data
6.3. 9346 Contents
6.4. Local Memory Bus Control
6.5. LED Behaviors
6.6. Loopback Diagnostic Operation
26
28
28
29
33
34
35
37
38
41
LS003.6
1995.04.25
2
ADVANCE INFORMATION
RTL8019
1. FEATURES
m 100-pin PQFP
m Compliant to Ethernet II and IEEE802.3 10Base5, 10Base2, 10BaseT
m Software compatible with NE2000 on both 8 and 16-bit slots
m Supports both jumper and jumperless modes
m Supports Microsoft's Plug and Play configuration for jumperless mode
m Supports Full-Duplex Ethernet function to double channel bandwidth
m Supports three level power down modes:
- Sleep
- Power down with internal clock running
- Power down with internal clock halted
m Built-in data prefetch function to improve performance
m Provides auto-detect capability between integrated 10BaseT transceiver and Attachment Unit
Interface (AUI).
m Supports auto polarity correction for 10BaseT
m Support 8 IRQ lines
m Supports 16 I/O base address options
m Supports 16K, 32K, 64K and 16K-page mode access to BROM (up to 256 pages with 16K
bytes/page)
m Supports BROM disable command to release memory after remote boot
m Use two 8K or single 32K byte SRAM as local buffer memory
m Use 9346 (64*16-bit EEPROM) to store resource configurations and ID parameters
m Capable of programming blank 9346 on board for manufacturing convenience
m Support 4 diagnostic LED pins with programmable outputs
LS003.6
1995.04.25
3
ADVANCE INFORMATION
RTL8019
2. General Description
The RTL8019 is a highly integrated Ethernet Controller which offers a simple solution to
implement a Plug and Play NE2000 compatible adapter with full-duplex and power down features.
With the three level power down control features, the RTL8019 is made to be an ideal choice of
the network device for a GREEN PC system. The full-duplex function enables simultaneously
transmission and reception on the twisted-pair link to a full-duplex Ethernet switching hub. This
feature not only increases the channel bandwidth from 10 to 20 Mbps but also avoids the
performance degrading problem due to the channel contention characteristics of the Ethernet
CSMA/CD protocol. The Microsoft's Plug and Play function can relieve the users from pains of
taking care the adapter's resource configurations such as IRQ, I/O, and memory address, etc.
However, for special applications not to be used as a Plug and Play compatible device, the
RTL8019 also supports the jumper and proprietary jumperless options.
To offer a fully plug and play solution, the RTL8019 provides the auto-detect capability between
the integrated 10BaseT transceiver and AUI interface. Besides, the 10BaseT transceiver can
automatically correct the polarity error on its receiving pair. Furthermore, 8 IRQ lines and 16 I/O
base address options are provided for grand resource configuration flexibility.
The RTL8019 supports 16k, 32k & 64k byte BROM. It also offers the page mode function which
can support up to 4M-byte BROM within only 16k-byte system memory space. Besides, the
BROM disable command is provided to release the BROM memory space for other system usage
(e.g. EMM386, etc.) after the BROM program is loaded.
LS003.6
1995.04.25
4
ADVANCE INFORMATION
RTL8019
3. PIN CONFIGURATION
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
MA11
MA10
MA9
MA8
MA7
MA6
MA5
MA4
MA3
MA2
MA1
MA0
VDD
EECS
MWRB
MRDB
BCSB
MD7 [BD7]
GND
MD6 [BD6]
MD5 [BD5]
MD4 [BD4]
MD3 [BD3]
MD2 [BD2] [IRQS2]
MD1 [BD1] [IRQS1]
MD0 [BD0] [IRQS0]
VDD
SD15
SD14
SD13
SD12
SD11
SD10
SD9
SD8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
[BA21] [BS4]
[BA20] [BS3]
[BA19] [BS2]
[BA18] [BS1]
[BA17] [BS0]
[BA16] [IOS3]
[BA15]
[BA14] [IOS2]
[EESK] [IOS1]
[EEDI] [IOS0]
[EEDO] [PL1]
[PL0]
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
LS003.6
1995.04.25
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
RTL8019
IOCS16B [SLOT16]
VDD
[IRQ15]
INT7
[IRQ12]
INT6
[IRQ11]
INT5
INT4
[IRQ10]
[IRQ5]
INT3
[IRQ4]
INT2
[IRQ3]
INT1
[IRQ2/9]
INT0
SA0
SA1
SA2
SA3
GND
5
MA12
[PNP]
[JP]
MA13
LED2
[LED_TX] [MCSB]
[LED_RX] [LED_CRS]
LED1
[LED_COL][LED_LINK]
LED0
LEDBNC
TPIN+
TPINVDD
RX+
RXCD+
CDGND
X2
X1
TX+
TXVDD
TPOUTTPOUT+
GND
SD7
SD6
SD5
SD4
SD3
SD2
SD1
SD0
GND
IOCHRDY
AEN
RSTDRV
SMEMRB
IOWB
IORB
SA19
SA18
SA17
SA16
SA15
SA14
SA11
SA9
SA8
SA7
SA6
SA5
SA4
ADVANCE INFORMATION
RTL8019
4. PIN DESCRIPTIONS
4.1. Power Pins
No.
2, 47, 57,
Name
Type
Description
VDD
P
+5V DC power
GND
P
Ground
78, 92
15, 35, 44,
52, 84
4.2. ISA Bus Interface Pins
No.
Name
Type
Descriptions
33
AEN
I
Address Enable. This ISA signal must be low for a valid
I/O command.
3-10
INT7-0
I/O
Interrupt request lines which are mapped to IRQ15, IRQ12,
IRQ11, IRQ10, IRQ5, IRQ4, IRQ3, IRQ2/9 respectively.
Only one line is selected to reflect the interrupt requests at
one time. All other lines are tri-stated. The RTL8019 also
uses these pins as inputs to monitor the actual state of the
corresponding interrupt lines on ISA bus. The result is
recorded in the INTR register, which may be used by
software to detect interrupt conflict.
34
IOCHRDY
O
This ISA signal is driven low to insert wait cycles to current
host read/write command.
1
IOCS16B
I/O
Upon power-on reset, this pin acts as an input named
SLOT16 to detect whether a 16-bit or 8-bit slot is in use. To
do this, it is connected to a pull-down resistor (about 27KΩ)
externally. At the falling edge of RSTDRV, the RTL8019
senses this pin's state. If it is sensed high, the adapter is
thought to be placed on a 16-bit slot where this pin is
connected to the host's IOCS16B pin, which is typically
pulled up by a 300Ω resistor on the mother board. If it is
sensed low, the adapter is thought to be placed on an 8-bit
slot where this pin is merely pulled low by the 27KΩ
resistor. After having latched the input state, this pin is
switched as the IOCS16B signal which is an open-drain
output and is driven low during a 16-bit host data transfer.
It is decoded from AEN and SA9-0.
[SLOT16]
29
IORB
I
Host I/O read command.
30
IOWB
I
Host I/O write command.
32
RSTDRV
I
High active hardware reset signal from the ISA bus. Pulses
with high level less than 800ns are ignored.
28-16,
14-11
SA19-14,
SA11, SA9-0
I
Host address bus.
93-100,
43-36
SD15-0
I/O
31
SMEMRB
I
Host data bus.
Host memory read command.
LS003.6
1995.04.25
6
ADVANCE INFORMATION
RTL8019
4.3. Memory Interface Pins (including SRAM, BROM, EEPROM)
No.
Name
Type
Description
82
BCSB
O
BROM chip select. Active low signal, asserted when BROM
is read.
79
EECS
O
9346 chip select. Active high signal, asserted when 9346 is
read/write.
64-77
MA13-0
O
SRAM address bus.
83,85-91
MD7-0
I/O
SRAM data bus.
[66-73]
[BA21-14]
O
BROM address.
[83,85-91]
[BD7-0]
I
BROM data bus.
[74]
[EESK]
O
9346 serial data clock
[75]
[EEDI]
O
9346 serial data input
[76]
[EEDO]
I
9346 serial data output
The following pins are defined for jumper options. Their
states are latched at the falling edge of RSTDRV, then they
are changed to serve as the SRAM bus. Each of them is
internally pulled down by a 100KΩ resistor. Therefore, the
input will be low when left open and high when pulled up
by a 10K resistor externally.
[64]
[JP]
I
When high, this pin selects jumper mode. When low, it
selects jumperless modes (including RT jumperless and Plug
and Play).
[65]
[PNP]
I
When it is high in jumperless mode (i.e. JP=low), the
RTL8019 is forced into Plug and Play mode regardless of
the contents of 9346.
The following pins are don't care in jumperless mode
(JP=low).
[66-70]
[BS4-0]
I
Select BROM size and base address.
[71,73-75]
[IOS3-0]
I
Select I/O base address.
[76-77]
[PL1-0]
I
Select network medium type.
[89-91]
[IRQS2-0]
I
Select one interrupt line among INT7-0.
81
MRDB
O
SRAM read strobe.
80
MWRB
O
SRAM write strobe.
LS003.6
1995.04.25
7
ADVANCE INFORMATION
RTL8019
4.4. Medium Interface Pins
No.
Name
Type
Description
54,53
CD+,CD-
I
This AUI collision input pair carries the differential
collision input signal from the MAU.
56,55
RX+,RX-
I
This AUI receive input pair carries the differential receive
input signal from the MAU.
49,48
TX+,TX-
O
This AUI transmit output pair contains differential line
drivers which send Manchester encoded data to the MAU.
These outputs are source followers and require 270 ohm
pull-down resistors to GND.
59,58
TPIN+,
I
This TP input pair receives the 10 Mbits/s differential
Manchester encoded data from the twisted-pair wire.
O
This pair carries the differential TP transmit output. The
output Manchester encoded signals have been pre-distorted
to prevent overcharge on the twisted-pair media and thus
reduce jitter.
TPIN45,46
TPOUT+,
TPOUT-
50
X1
I
20Mhz crystal or external oscillator input.
51
X2
O
Crystal feedback output. This output is used in crystal
connection only. It must be left open when X1 is driven with
an external oscillator.
Type
Description
4.5. LED Output Pins
No.
Name
60
LEDBNC
O
This pin goes high when RTL8019's medium type is set to
10Base2 mode or auto-detect mode with link test failure.
Otherwise, this pin is low. This pin can be used to control
the power of the DC convertor for CX MAU and connected
to an LED to indicate the used medium type.
61
LED0
O
When LEDS0 bit (in CONFIG3 register of RTL8019
Page3) is 0, this pin acts as LED_COL. When LEDS0=1, it
acts as LED_LINK.
62,63
LED1,LED2
O
When LEDS1 bit (in CONFIG3 register of RTL8019 Page3)
is 0, these 2 pins act as LED_RX & LED_TX respectively.
When LEDS1=1, these pins act as LED_CRS & MCSB.
Please refer to section 6.5 for details of the lightening
behavior of all LEDs.
[MCSB]
O
This is the SRAM chip select signal. It goes low to validate
the SRAM read/write operation. When SRAM is not
accessed, this pin goes high to put SRAM into standby mode
and thus save power.
LS003.6
1995.04.25
8
ADVANCE INFORMATION
RTL8019
5. Register Descriptions
The registers in RTL8019 can be roughly divided into two groups by their address and functions -one for NE2000, the other for Plug and Play (PnP).
5.1. Group 1: NE2000 Registers
This group includes 4 pages of registers which are selected by bit PS0 & PS1 in the CR register.
Each page contains 16 registers. Besides those registers compatible with NE2000, the RTL8019
defines some registers for software configuration and feature enhancement.
5.1 1. Register Table
No (Hex)
Page0
[R]
00
01
02
03
04
05
06
07
08
09
0A
0B
0C
0D
0E
0F
10-17
18-1F
CR
CLDA0
CLDA1
BNRY
TSR
NCR
FIFO
ISR
CRDA0
CRDA1
[W]
CR
PSTART
PSTOP
BNRY
TPSR
TBCR0
TBCR1
ISR
RSAR0
RSAR1
RBCR0
8019ID0
RBCR1
8019ID1
RSR
RCR
CNTR0
TCR
CNTR1
DCR
CNTR2
IMR
Remote DMA Port
Reset Port
Page1
[R/W]
CR
PAR0
PAR1
PAR2
PAR3
PAR4
PAR5
CURR
MAR0
MAR1
MAR2
MAR3
MAR4
MAR5
MAR6
MAR7
Page2
[R]
CR
PSTART
PSTOP
TPSR
RCR
TCR
DCR
IMR
Page3
[R]
[W]
CR
CR
9346CR
BPAGE
CONFIG0
CONFIG1
CONFIG2
CONFIG3
CSNSAV
INTR
-
9346CR
BPAGE
CONFIG1
CONFIG2
CONFIG3
HLTCLK
-
Notes: "-" denotes reserved. Registers with names typed in bold italic format are RTL8019 defined
registers and are not supported in a standard NE2000 adapter.
LS003.6
1995.04.25
9
ADVANCE INFORMATION
RTL8019
Page 0 (PS1=0, PS0=0)
No.
Name
Type
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
00H
01H
CR
CLDA0
PSTART
CLDA1
PSTOP
BNRY
TSR
TPSR
NCR
TBCR0
FIFO
TBCR1
ISR
CRDA0
RSAR0
CRDA1
RSAR1
8019ID0
RBCR0
8019ID1
RBCR1
RSR
RCR
CNTR0
TCR
CNTR1
DCR
CNTR2
IMR
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
PS1
A7
A15
A15
A15
A15
OWC
A15
0
TBC7
D7
TBC15
RST
A7
A7
A15
A15
0
RBC7
0
RBC15
DFR
CNT7
CNT7
CNT7
-
PS0
A6
A14
A14
A14
A14
CDH
A14
0
TBC6
D6
TBC14
RDC
A6
A6
A14
A14
1
RBC6
1
RBC14
DIS
CNT6
CNT6
FT1
CNT6
RDCE
RD2
A5
A13
A13
A13
A13
0
A13
0
TBC5
D5
TBC13
CNT
A5
A5
A13
A13
0
RBC5
1
RBC13
PHY
MON
CNT5
CNT5
FT0
CNT5
CNTE
RD1
A4
A12
A12
A12
A12
CRS
A12
0
TBC4
D4
TBC12
OVW
A4
A4
A12
A12
1
RBC4
1
RBC12
MPA
PRO
CNT4
OFST
CNT4
ARM
CNT4
OVWE
RD0
A3
A11
A11
A11
A11
ABT
A11
NC3
TBC3
D3
TBC11
TXE
A3
A3
A11
A11
0
RBC3
0
RBC11
0
AM
CNT3
ATD
CNT3
LS
CNT3
TXEE
TXP
A2
A10
A10
A10
A10
COL
A10
NC2
TBC2
D2
TBC10
RXE
A2
A2
A10
A10
0
RBC2
0
RBC10
FAE
AB
CNT2
LB1
CNT2
LAS
CNT2
RXEE
STA
A1
A9
A9
A9
A9
A9
NC1
TBC1
D1
TBC9
PTX
A1
A1
A9
A9
0
RBC1
0
RBC9
CRC
AR
CNT1
LB0
CNT1
BOS
CNT1
PTXE
STP
A0
A8
A8
A8
A8
PTX
A8
NC0
TBC0
D0
TBC8
PRX
A0
A0
A8
A8
0
RBC0
0
RBC8
PRX
SEP
CNT0
CRC
CNT0
WTS
CNT0
PRXE
Bit 7
PS1
DA7
DA15
DA23
DA31
DA39
DA47
A15
FB7
FB15
FB23
FB31
FB39
FB47
FB55
FB63
Bit 6
PS0
DA6
DA14
DA22
DA30
DA38
DA46
A14
FB6
FB14
FB22
FB30
FB38
FB46
FB54
FB62
Bit 5
RD2
DA5
DA13
DA21
DA29
DA37
DA45
A13
FB5
FB13
FB21
FB29
FB37
FB45
FB53
FB61
Bit 4
RD1
DA4
DA12
DA20
DA28
DA36
DA44
A12
FB4
FB12
FB20
FB28
FB36
FB44
FB52
FB60
Bit 3
RD0
DA3
DA11
DA19
DA27
DA35
DA43
A11
FB3
FB11
FB19
FB27
FB35
FB43
FB51
FB59
Bit 2
TXP
DA2
DA10
DA18
DA26
DA34
DA42
A10
FB2
FB10
FB18
FB26
FB34
FB42
FB50
FB58
Bit 1
STA
DA1
DA9
DA17
DA25
DA33
DA41
A9
FB1
FB9
FB17
FB25
FB33
FB41
FB49
FB57
Bit 0
STP
DA0
DA8
DA16
DA24
DA32
DA40
A8
FB0
FB8
FB16
FB24
FB32
FB40
FB48
FB56
02H
03H
04H
05H
06H
07H
08H
09H
0AH
0BH
0CH
0DH
0EH
0FH
Bit 1
Bit 0
Page 1 (PS1=0, PS0=1)
No.
00H
01H
02H
03H
04H
05H
06H
07H
08H
09H
0AH
0BH
0CH
0DH
0EH
0FH
Name
CR
PAR0
PAR1
PAR2
PAR3
PAR4
PAR5
CURR
MAR0
MAR1
MAR2
MAR3
MAR4
MAR5
MAR6
MAR7
Type
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
LS003.6
1995.04.25
10
ADVANCE INFORMATION
RTL8019
Page 2(PS1=1, PS0=0)
No.
00H
01H
02H
03H
04H
05H
|
0BH
0CH
0DH
0EH
0FH
Name
CR
PSTART
PSTOP
TPSR
-
RCR
TCR
DCR
IMR
Type
R/W
R
R
Bit 7
PS1
A15
A15
Bit 6
PS0
A14
A14
Bit 5
RD2
A13
A13
Bit 4
RD1
A12
A12
Bit 3
RD0
A11
A11
Bit 2
TXP
A10
A10
Bit 1
STA
A9
A9
Bit 0
STP
A8
A8
R
A15
A14
A13
A12
A11
A10
A9
A8
R
R
R
R
-
FT1
RDCE
MON
FT0
CNTE
PRO
OFST
ARM
OVWE
AM
ATD
LS
TXEE
AB
LB1
LAS
RXEE
AR
LB0
BOS
PTXE
SEP
CRC
WTS
PRXE
Bit 6
PS0
EEM0
EEM0
BP6
IRQS2
PL0
PL0
FUDUP
-
Bit 5
RD2
BP5
IRQS1
BSELB
BSELB
LEDS1
-
Bit 4
RD1
BP4
IRQS0
BS4
LEDS0
-
Bit 3
RD0
EECS
EECS
BP3
JP
IOS3
BS3
-
Bit 2
TXP
EESK
EESK
BP2
BNC
IOS2
BS2
SLEEP
SLEEP
Bit 1
STA
EEDI
EEDI
BP1
0
IOS1
BS1
PWRDN
PWRDN
Bit 0
STP
EEDO
BP0
0
IOS0
BS0
ACTIVEB
-
CSN6
HLT6
CSN5
HLT5
CSN4
HLT4
CSN3
HLT3
CSN2
HLT2
CSN1
HLT1
CSN0
HLT0
INT6
INT5
INT4
INT3
INT2
INT1
INT0
Page 3(PS1=1, PS0=1)
No.
00H
01H
Name
CR
9346CR
02H
03H
04H
BPAGE
CONFIG0
CONFIG1
05H
CONFIG2
06H
CONFIG3
07H
08H
09H
0AH
0BH
0CH
|
0FH
TEST1
CSNSAV
HLTCLK
TEST2
INTR
-
Type
R/W
R
W
R/W
R
R
W*
R
W*
R
W*
R/W
R
W
R/W
R
Bit 7
PS1
EEM1
EEM1
BP7
IRQEN
IRQEN
PL1
PL1
PNP
Reserved
CSN7
HLT7
Reserved
INT7
Note: The registers marked with type='W*' can be written only if bits EEM1=EEM0=1.
5.1.2. Register Functions
5.1.2.1. NE2000 Compatible Registers
CR: Command Register (00H; Type=R/W)
This register is used to select register pages, enable or disable remote DMA operation and
issue commands.
LS003.6
1995.04.25
11
ADVANCE INFORMATION
RTL8019
Bit
7, 6
Symbol
PS1, PS0
Description
PS1
0
0
1
1
5-3
PS0
0
1
0
1
Register Page
0
1
2
3
Remark
NE2000 compatible
NE2000 compatible
NE2000 compatible
RTL8019 Configuration
RD2-0
RD2
0
0
0
0
1
2
TXP
1
STA
0
STP
RD1
0
0
1
1
*
RD0
0
1
0
1
*
Function
Not allowed
Remote Read
Remote Write
Send Packet
Abort/Complete remote DMA
This bit must be set to transmit a packet. It is internally reset either after the
transmission is completed or aborted. Writing a 0 has no effect.
The STA bit controls nothing. It only reflects the value written to this bit.
POWER UP=0.
This bit is the STOP command. When it is set, no packets will be received or
transmitted. POWER UP=1.
STA
1
0
STP
0
1
Function
Start Command
Stop Command
ISR: Interrupt Status Register (07H; Type=R/W in Page0)
This register reflects the NIC status. The host reads it to determine the cause of an interrupt.
Individual bits are cleared by writing a "1" into the corresponding bit. It must be cleared
after power up.
Bit
7
Symbol
RST
6
5
4
3
RDC
CNT
OVW
TXE
2
RXE
1
0
PTX
PRX
Description
This bit is set when NIC enters reset state and is cleared when a start command is
issued to the CR. It is also set when receive buffer overflows and is cleared when
one or more packets have been read from the buffer.
Set when remote DMA operation has been completed.
Set when MSB of one or more of the network tally counters has been set.
This bit is set when the receive buffer has been exhausted.
Transmit error bit is set when a packet transmission is aborted due to excessive
collisions.
This bit is set when a packet received with one or more of the following errors:
- CRC error
- Frame alignment error
-Missed packet
This bit indicates packet transmitted with no errors.
This bit indicates packet received with no errors.
LS003.7
2000.07.31
12
ADVANCE INFORMATION
RTL8019
IMR: Interrupt Mask Register (0FH; Type=W in Page0, Type=R in Page2)
All bits correspond to the bits in the ISR register. POWER UP=all 0s. Setting individual
bits will enable the corresponding interrupts.
DCR: Data Configuration Register (0EH; Type=W in Page0, Type=R in Page2)
Bit
7
6, 5
4
Symbol
FT1, FT0
ARM
3
LS
2
LAS
1
BOS
0
WTS
Description
Always 1
FIFO threshold select bit 1 and 0.
Auto-initialize Remote
0: Send Packet Command not executed.
1: Send Packet Command executed.
Loopback Select
0: Loopback mode selected. Bits 1 and 2 of the TCR must also be
programmed for Loopback operation.
1: Normal Operation
This bit must be set to zero. NIC only supports dual 16-bit DMA mode.
POWER UP =1
Byte Order Select(Not implement)
0: MS byte placed on MD15-8 and LS byte on MD7-0. (32xxx,80x86)
1: MS byte placed on MD7-0 and LS byte on MD15-8. (680x0)
Word Transfer Select
0: byte-wide DMA transfer
1: word-wide DMA transfer
LS003.7
2000.07.31
13
ADVANCE INFORMATION
RTL8019
TCR: Transmit Configuration Register (0DH; Type=W in Page0, Type=R in Page2)
Bit
7
6
5
4
3
Symbol
OFST
ATD
2, 1
LB1, LB0
Description
Always 1.
Always 1.
Always 1.
Collision Offset Enable.
Auto Transmit Disable.
0: normal operation
1: reception of multicast address hashing to bit 62 disables transmitter,
reception of multicast address hashing to bit 63 enables transmitter.
LB1
0
0
1
1
0
CRC
LB0
0
1
0
1
Mode
0
1
2
3
Remark
Normal Operation
Internal Lookback
External Lookback
External Lookback
The NIC CRC logic comprises a CRC generator for transmitter and a CRC
checker for receiver. This bit controls the activity of the CRC logic. If this bit set,
CRC is inhibited by transmitter. Otherwise CRC is appended by transmitter.
Conditions
CRC Bit
Mode
0
normal
1
normal
0
loopback
1
loopback
CRC Logic Activities
CRC Generator CRC Checker
enabled
enabled
disabled
enabled
enabled
disabled
disabled
enabled
TSR:Transmit Status Register (04H; Type=R in Page0)
This register indicates the status of a packet transmission.
Bit
7
Symbol
OWC
6
CDH
5
4
3
2
1
0
CRS
ABT
COL
PTX
Description
Out of Window Collision. It is set when a collision is detected after a slot time
(51.2us). Transmissions are rescheduled as in normal collisions.
CD Heartbeat. The NIC watches for a collision signal (i.e. CD Heartbeat signal)
during the first 6.4us of the interframe gap following a transmission. This bit is
set if the transceiver fails to send this signal.
Always 0.
Carrier Sense lost bit is set when the carrier is lost during transmitting a packet.
It indicates the NIC aborted the transmission because of excessive collisions.
It indicates the transmission collided with some other station on the network.
Always 1.
This bit indicates the transmission completes with no errors.
LS003.7
2000.07.31
14
ADVANCE INFORMATION
RTL8019
RCR:
Bit
7
6
5
Receive Configuration Register (0CH; Type=W in Page0, Type=R in Page2)
Symbol
MON
4
PRO
3
AM
2
AB
1
AR
0
SEP
Description
Always 1.
Always 1.
When monitor mode bit is set, received packets are checked for address match,
good CRC and frame alignment but not buffered to memory. Otherwise, packets
will be buffered to memory.
If PRO=1, all packets with physical destination address accepted.
If PRO=0, physical destination address must match the node address programmed
in PAR0-5.
If AM=1, packets with multicast destination address are accepted.
If AM=0, packets with multicast destination address are rejected.
If AB=1, packets with broadcast destination address are accepted.
If AB=0, packets with broadcast destination address are rejected.
If AR=1, packets with length fewer than 64 bytes are accepted.
If AR=0, packets with length fewer than 64 bytes are rejected.
If SEP=1, packets with receive errors are accepted.
If SEP=0, packets with receive errors are rejected.
RSR: Receive Status Register (0CH; Type=R in Page0)
Bit
7
6
Symbol
DFR
DIS
5
PHY
4
MPA
3
2
FAE
1
CRC
0
PRX
Description
Defferring. Set when a carrier or a collision is detected.
Receiver Disabled. When the NIC enters the monitor mode, this bit is set and
receiver is disabled. Reset when receiver is enabled after leaving the monitor
mode.
PHY bit is set when the received packet has a multicast or broadcast destination
address. It is reset when the received packet has a physical destination address.
Missed Packet bit is set when the incoming packet can not be accepted by NIC
because of a lack of receive buffer or if NIC is in monitor mode. Increment
CNTR2 tally counter.
Always 0.
Frame Alignment Error bit reflects the incoming packet didn't end on a byte
boundary and CRC did not match at last byte boundary. Increment CNTR0 tally
counter.
CRC error bit reflects packet received with CRC error. This bit will also be set
for FAE errors. Increment CNTR1 tally counter.
This bit indicates packet received with no errors.
CLDA0, 1: Current Local DMA Registers (01H & 02H; Type=R in Page0)
These two registers can be read to get the current local DMA address.
PSTART:
Page Start Register (01H; Type=W in Page0, Type=R in Page 2)
The Page Start register sets the start page address of the receive buffer ring.
PSTOP:
Page Stop Register (02H; Type=W in Page0, Type=R in Page2)
The Page Stop register sets the stop page address of the receive buffer ring.
BNRY:
Boundary Register (03H; Type=R/W in Page0)
This register is used to prevent overwrite of the receive buffer ring. It is typically
used as a pointer indicating the last receive buffer page the host has read.
LS003.7
2000.07.31
15
ADVANCE INFORMATION
RTL8019
TPSR:
Transmit Page Start Register (04H; Type=W in Page0)
This register sets the start page address of the packet to the transmitted.
TBCR0,1: Transmit Byte Count Registers (05H & 06H; Type=W in Page0)
These two registers set the byte counts of the packet to be transmitted.
NCR:
Number of Collisions Register (05H; Type=R in Page0)
The register records the number of collisions a node experiences during a packet
transmission.
FIFO:
First In First Out Register (06H; Type=R in Page0)
This register allows the host to examine the contents of the FIFO after loopback.
CRDA0, 1: Current Remote DMA Address registers (08H & 09H; Type=R in Page0)
These two registers contain the current address of remote DMA.
RSAR0,1:
Remote Start Address Registers (08H & 09H; Type=W in Page0)
These two registers set the start address of remote DMA.
RBCR0,1: Remote Byte Count Registers (0AH & 0BH; Type=W in Page0)
These two registers se the data byte counts of remote DMA.
CNTR0:
Frame Alignment Error Tally Counter Register (0DH; Type=R in Page0)
CNTR1:
CRC Error Tally Counter Register (0EH; Type=R in Page0)
CNTR2:
Missed Packet Tally Counter Register (0FH; Type=R in Page0)
PAR0-5:
Physical Address Registers (01H - 06H; Type=R/W in Page1)
These registers contain my Ethernet node address and are used to compare the
destination adderss of incoming packets for acceptation or rejection.
CURR:
Current Page Register (07H; Type=R/W in Page1)
This register points to the page address of the first receive buffer page to be used for
a packet reception.
MAR0-7:
Multicast Address Register (08H - 0FH; Type=R/W in Page1)
These registers provide filtering bits of multicast addresses hashed by the CRC logic.
LS003.7
2000.07.31
16
ADVANCE INFORMATION
RTL8019
5.1.2.2. RTL8019 Defined Registers
Page 0 (PS1=0, PS0=0)
Two registers are defined to contain the RTL8019 chip ID.
No.
0AH
0BH
Name
8019ID0
8019ID1
Type
R
R
Bit7-0
50H (ASCII code of "P")
70H (ASCII code of "p")
Page 3(PS1=1, PS0=1)
Page3 Power Up Values before loading jumper states and 9346 contents
No.
00H
01H
02H
03H
04H
05H
06H
07H
08H
09H
0AH
0BH
0CH
|
0FH
Name
CR
9346CR
BPAGE
CONFIG0
CONFIG1
CONFIG2
CONFIG3
CSNSAV
HLTCLK
INTR
-
Type
R/W
R/W
R/W
R
R/W
R/W
R/W
Bit 7
0
0
0
1
*
*
Bit 6
0
0
0
*
*
*
Bit 5
1
0
*
0
*
Bit 4
0
0
*
*
*
Bit 3
0
*
0
*
*
*
*
Bit 2
0
*
0
*
*
*
0
Bit 1
0
*
0
0
*
*
0
Bit 0
1
*
0
0
*
*
1
R
W
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
R
*
*
*
*
*
*
*
*
LS003.7
2000.07.31
17
ADVANCE INFORMATION
RTL8019
Page3 Content Descriptions
9346CR: 9346 Command Register (01H; Type=R/W except Bit0=R)
Bit
7-6
5-4
3
2
1
0
Symbol
EEM1-0
EECS
EESK
EEDI
EEDO
Description
These 2 bits select the RTL8019 operating mode.
EEM1
0
0
EEM0
0
1
1
0
1
1
Operating Mode
Normal (DP8390 compatible)
Auto-load:
Entering this mode will make the RTL8019 load
the contents of 9346 like when the RSTDRV
signal is asserted.
This auto-load operation will take about 2ms.
After it is completed, the RTL8019 goes back to
the normal mode automatically (EEM1=EEM0
=0) and the CR register is reset to 21H.
9346 programming:
In this mode, both the local & remote DMA
operation of 8390 are disabled. The 9346 can be
directly accessed via bit3-0 which now reflect the
states of EECS, EESK,EEDI, & EEDO pins
respectively.
Config register write enable:
Before writing to the Page3 CONFIG1-3
registers, the RTL8019 must be placed in this
mode. This will prevent RTL8019's
configurations from accidental change.
Not used.
These bits reflect the state of EECS, EESK, EEDI & EEDO pins in auto-load or
9346 programming mode.
BPAGE: BROM Page Register (02H; Type=R/W)
This register selects a BROM page to be read by the host. Totally it can select 256 pages with 16k
bytes per page. Thus the maximum BROM size is 256*16k=4M bytes.
CONFIG0: RTL8019 Configuration Register 0 (03H; Type=R)
Bit
7-4
3
Symbol
JP
2
BNC
1-0
-
Description
Not used
This bit reflects the state of JP input. It, when set, indicates the RTL8019 is in
jumper mode.
When set, this bit indicates that the RTL8019 is using the 10Base2 thin cable as
its networking medium. This bit will be set in the following 2 cases:
(1) PL1=PL0=0 (auto-detect) and link test fails
(2) PL1=PL0=1 (10 Base 2)
Always 0s.
LS003.7
2000.07.31
18
ADVANCE INFORMATION
RTL8019
CONFIG1: RTL8019 Configuration Register 1 (04H; Type=R except Bit7=R/W)
Bit
7
Symbol
IRQEN
6-4
IRQS2-0
Description
IRQ Enable:
This bit controls the state of the interrupt request line selected by IRQS2-0. If
this bit is set, the interrupt line goes high upon an interrupt request and will be
low when there is no interrupt request.
The interrupt line will be forced to tri-state if this bit is reset.
This bit's power-up initial value is 1 and may be modified by software if
EEM1=EEM0=1 in 9346CR register.
IRQ Select :
These 3 bits select one of INT7-0 to reflect the RTL8019's interrupt request
status. All unselected interrupt lines will be tri-stated.
IRQS2
0
0
0
0
1
1
1
1
3-0
IOS3-0
IRQS1
0
0
1
1
0
0
1
1
IRQS0
0
1
0
1
0
1
0
1
Assigned ISA IRQ
IRQ2/9
IRQ3
IRQ4
IRQ5
IRQ10
IRQ11
IRQ12
IRQ15
Select I/O base address.
IOS3
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
IOS2
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
IOS1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
LS003.7
2000.07.31
Interrupt Line
INT0
INT1
INT2
INT3
INT4
INT5
INT6
INT7
19
IOS0
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
I/O Base
300H
320H
340H
360H
380H
3A0H
3C0H
3E0H
200H
220H
240H
260H
280H
2A0H
2C0H
2E0H
ADVANCE INFORMATION
RTL8019
CONFIG2: RTL8019 Configuration Register 2 (05H; Type=R except Bit[7:5]=R/W)
Bit
7-6
Symbol
PL1-0
Description
Select network medium types.
PL1
0
PL0
0
0
1
1
1
0
1
Medium Type
TP/CX auto-detect
(10BaseT link test is
enabled)
10BaseT with link test
disabled
10Base5
10Base2
5
BSELB
This bit, when set, forces the BROM disabled regardless of the contents of BS40. Its power-up initial value is 0 and can be modified by software if
EEM1=EEM0=1 in 9346CR register.
4-0
BS4-0
These bits select the BROM size & memory base address.
BS4
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
BS3
0
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
BS2
*
0
0
0
0
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
BS1
*
0
0
1
1
0
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
BS0
*
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
BROM Base & size
Disabled
C000h, 32K
C800h, 32K
D000h, 32K
D800h, 32K
C000h, 64K
D000h, 64K
C000h, 16K
C400h, 16K
C800h, 16K
CC00h, 16K
D000h, 16K
D400h, 16K
D800h, 16K
DC00h, 16K
C000h, Page
C400h, Page
C800h, Page
CC00h, Page
D000h, Page
D400h, Page
D800h, Page
DC00h, Page
The RTL8019 supports a special BROM mode: page mode. In page mode, the
BROM always occupies 16K-byte host memory space. However the actual BROM
size can be up to 4M bytes.
The BROM is divided into several 16K-byte pages. The power on boot page is set
to page 0 and the program in page 0 is responsible to select the other pages by the
BPAGE register and load their programs.
In page mode, bits BP7-0 of BPAGE register are mapped to the BA21-14 pins to
select the proper BROM page. In other modes, BA21-16 are not used and the
BA15-14 outputs are shown in the following table.
LS003.7
2000.07.31
20
ADVANCE INFORMATION
RTL8019
BROM size
16K
32K
64K
LS003.7
2000.07.31
21
BA14
high
SA14
SA14
BA15
high
high
SA15
ADVANCE INFORMATION
RTL8019
CONFIG3: RTL8019 Configuration Register 3 (06H; Type=R except Bit[2:1]=R/W)
Bit
7
Symbol
PNP
6
FUDUP
5-4
LEDS1-0
Description
This bit is negligible in jumper mode. In jumperless mode it, when set, indicates
the RTL8019 is operating in Plug and Play mode. This bit is set when the PNP
pin is high or the PNP bit in 9346 is set in jumperless mode.
When this bit is set, RTL8019 is set to the full-duplex mode which enables
simultaneously transmission and reception on the twisted-pair link to a fullduplex Ethernet switching hub. This feature not only increases the channel
bandwidth from 10 to 20 Mbps but also avoids the performance degrading
problem due to the channel contention characteristics of the Ethernet CSMA/CD
protocol.
These two bits select the outputs to LED2-0 pins.
LEDS0
0
1
LEDS1
0
1
3
2
SLEEP
1
PWRDN
0
ACTIVEB
LED1 Pin
LED_RX
LED_CRS
LED2 Pin
LED_TX
MCSB
Please refer to section 6.5 for the behavior of LEDs.
The MCSB signal is defined to put the local buffer SRAM into standby mode
while DMA is not in progress and thus save powers.
Reserved. Must not write a 1 to this bit.
This bit, when set, puts RTL8019 into sleep mode.
In sleep mode, all LED signals (P.S. MCSB is not an LED signal) except
LEDBNC are forced high to turn off the LEDs. The RTL8019 still handles the
network transmission and reception like in normal mode. The LEDBNC is not
affected by this bit.
This bit's power-up initial value is 0 and can be modified by software when
EEM1=EEM0=1.
This bit , when set, puts RTL8019 into power down mode.
RTL8019 supports two kinds of power down modes, which is selected by the
contents of the HLTCLK register:
(1) mode 1: power down with clock running
(2) mode 2: power down with clock halted
In both power down modes, the RTL8019's serial network interface and
transceiver are turned off. All network activities are ignored.
All LED signals except LEDBNC are forced high. The LEDBNC is forced low to
disable the DC convertor for coaxial transceiver.
In power down mode2, the RTL8019 stops its internal clock for minimal power
consumption. Registers except HLTCLK are typically not accessible in this mode.
This bit's initial value comes from 9346 and can be modified if EEM1=EEM0=1
in 9346CR register.
This bit is the inverse of bit 0 in PnP Activate register (index 30H).
When RTL8019 is deactivated, all BROM memory read and I/O accesses to the
Group1 registers except the HLTCLK register are ignored.
The HLTCLK register and PnP logic work the same as when RTL8019 is active.
Note: The PnP logical device control register is the only way to activate
RTL8019. Therefore, the HLTCLK register is allowed to be written to prevent
RTL8019 from dying when it is inactive in the clock-halted power-down mode.
LS003.7
2000.07.31
LED0 Pin
LED_COL
LED_LINK
22
ADVANCE INFORMATION
RTL8019
CSNSAV: CSN Save Register (08H; Type=R)
This register is provided to backup the CSN assigned to the PnP CSN register.
HLTCLK: Halt Clock Register (09H; Type=W)
This is the only active one of Group1 registers when RTL8019 is inactivated.
Writing to this register is invalid if RTL8019 is not in power down mode. (i.e. If PWRDN bit in
CONFIG3 register is zero.)
The data written to this register determines the RTL8019's power down mode.
Data
52H (ASCII code of 'R')
48H (ASCII code of 'H')
Other values
Power Down Mode
Mode 1 - clock Running
Mode 2 - clock Halted
Ignored
INTR: Interrupt Register (0BH; Type=R)
This register reflects the ISA bus states of INT7-0 pins.
5.2. Group 2: Plug and Play (PnP) Registers
Auto-configuration Ports
Three 8-bit I/O ports are defined for the PnP read/write operations. They are called Autoconfiguration ports and are listed below.
Port Name
ADDRESS
WRITE_DATA
READ_DATA
Type
W
W
R
Location
279H (Printer status port)
A79H (Printer status port + 800H)
Relocatable in range 200H to 3FFH
The Plug and Play registers are accessed by first writing the address of the desired register, which is
called "Register Index" in the following paragraph, to the ADDRESS port, followed by a read of
data from the READ_DATA port or a write of data to the WRITE_DATA port. A write to the
ADDRESS port may be followed by any number of WRITE_DATA or READ_DATA accesses to
the same indexed register without the need to write to the ADDRESS port before each access.
The Address port is also the write destination of the initiation key, which will be described later.
Plug and Play Registers
The Plug and Play registers may be divided into card registers and logical device registers.
According to the Plug and Play specification, a PnP card may contain more than one logical
devices. The card registers are unique for each card. However, the logical device registers are
repeated for each logical device on the card. Furthermore, all card registers are card control
registers, while the logical device registers can be divided into logical device control registers and
configuration registers. Although an RTL8019 card contains only one logical device, the following
paragraph still depicts the Plug and Play registers by the same PnP categorizing method.
p.s. Those registers or bits not mentioned below are all read only with value=0.
5.2.1. Card Control Registers
LS003.7
2000.07.31
23
ADVANCE INFORMATION
RTL8019
Index
00H
Name
Set RD_DATA port
Type
W
01H
Serial Isolation
R
02H
Config Control
W
Definition
The location of the READ_DATA port is determined by writing
to this register. Bits[7:0] become ISA I/O read port address
bits[9:2]. Address bits[1:0] of the READ_DATA port are
always 1.
A read to this register causes a PnP card in the Isolation state to
compare one bit of the card's serial ID. This process will be
described in more details in section 6.
Bit[0] - Reset command
Setting this bit will reset all logical devices and restore
configuration registers to their power-up values.
The CSN is preserved.
Bit[1] - Wait for Key command
Setting this bit makes the PnP card return to the
Wait for Key state. The CSN is preserved.
Bit[2] - PnP Reset CSN command
Setting this bit will reset the card's CSN to 0.
Both the CSN (index 06H) and CSNSAV (index F5H) registers
are reset.
03H
Wake[CSN]
W
04H
Resource Data
R
05H
Status
R
06H
Card Select Number
(CSN)
07H
Logical Device
Number
R/W
R
Note that the hardware will automatically clear the bits and
there is no need for software to clear them.
A write to this register will cause all cards that have a CSN that
matches the write data[7:0] to go from the Sleep state to either
the Isolation state if the write data for this command is zero or
the Config state if the write data is not zero.
A read from this register reads the next byte of resource data.
The Status register must be polled until bit[0] is set before this
register may be read.
Bit[0] when set indicates it is okay to read the next data byte
from the Resource Data register.
A write to this register sets a card's CSN. The CSN is a value
uniquely assigned to each ISA PnP card after the serial
identification process so that each card may be individually
selected during a Wake[CSN] command. The CSN value
written to this register will also be recorded to the CSNSAV
register located at PnP register index F5H and Group 1 Page3
offset 08H.
00H (Only one logical device in RTL8019).
LS003.7
2000.07.31
24
ADVANCE INFORMATION
RTL8019
5.2.2. Logical Device Control Registers
Index
30H
31H
Name
Activate
Type
R/W
I/O Range Check
R/W
Definition
For each logical device there is one Activate register that
controls whether or not the logical device is active on the ISA
bus. Bit[0], if set, activates the logical device. Before a logical
device is activated, I/O range check must be disabled.
This register is used to perform a conflict check on the I/O port
range programmed for use by a logical device.
Bit[1] - This bt, when set, enables I/O range check.
I/O range check is only valid when the logical device is
inactive.
Bit[0] - If set, this bit forces the logical device to respond to I/O
reads of the logical device's assigned I/O range with a 55H
when I/O range check is in operation. If clear, the logical device
drives AAH.
5.2.3. Logical Device Configuration Registers
Memory Configuration Registers
Index
40H
41H
42H
Name
BROM base address
bits[23:16]
BROM base address
bits[15:0]
Memory Control
Type
R/W
R/W
R
Definition
Bits[23:20] & bit[17] are read only with values=0.
All other bits are read/write bits.
Bits[13:8] are read only with values=0.
All other bits are read/write bits.
00H. (Only 8-bit operation is supported for BROM)
Note: The BROM size of RTL8019 is determined by the 9346 contents but not the memory
configuration registers.
I/O Configuration Registers
Index
60H
Name
I/O base address bits[15:8]
Type
R/W
61H
I/O base address bits[7:0]
R/W
Definition
Bits[15:10] are read only with values=0.
All other bits are read/write bits.
Bits[4:0] are read only with values=0.
All other bits are read/write bits.
LS003.7
2000.07.31
25
ADVANCE INFORMATION
RTL8019
Interrupt Configuration Registers
Index
70H
Name
IRQ level
Type
R/W
71H
IRQ type
R
Definition
Read/write value indicating a selected interrupt level.
Bits[3:0] select which ISA interrupt level is used. One selects IRQ1,
fifteen selects IRQ15. IRQ0 is not a valid interrupt selection and
represents no interrupt selection.
Read/Write value indicating which type of interrupt is used for the IRQ
selected above.
Bit[1] - Level, 1=high, 0=low
Bit[0] - Type, 1=level, 0=edge
For RTL8019, this register is read only with value=02H.
DMA Configuration Registers
Index
74H
75H
Name
DMA channel select 0
DMA channel select 1
Type
R
R
Definition
04H (indicating no DMA channel is needed)
04H (indicating no DMA channel is needed)
Vendor Defined Registers
Index
F0H
F1H
F2H
F3H
F4H
F5H
F6H
Name
CONFIG0
CONFIG1
CONFIG2
CONFIG3
CSNSAV
Vendor Control
Type
R
R
R
R
R
W
Definition
Direct mapping of the Page3 CONFIG0 register.
Direct mapping of the Page3 CONFIG1 register.
Direct mapping of the Page3 CONFIG2 register.
Direct mapping of the Page3 CONFIG3 register.
Direct mapping of the Page3 CSNSAV register.
Bit[2] - RT Reset CSN command
Setting this bit will reset the card's CSN in the CSN register
(index 06H) to 0.
The CSNSAV register is not affected.
This bit is cleared by hardware automatically.
6. Functional Descriptions
6.1. RTL8019 Configuration Modes
The RTL8019 supports 3 configuration modes: jumper, RT jumperless, and PnP.
JP Pin
High
Low
Low
Low
PNP Pin
*
High
*
Low
PNP Bit in 9346
*
*
1
0
P.S. "*" denotes don't care.
LS003.7
2000.07.31
26
Configuration Mode
Jumper
Plug and Play (PnP)
Plug and Play (PnP)
RT Jumperless
ADVANCE INFORMATION
RTL8019
The RTL8019's resource configuration informations such as I/O base address, BROM memory
base address, and interrupt request line, etc., are stored in the CONFIG3-0 registers in Group1
Page3 as well as the PnP logical device configuration registers. Their power-up default values may
come from the states of jumper pins in jumper mode or the contents of 9346 in PnP and RT
jumperless mode. Their values can be modified by software via the logical device configuration
registers in all 3 modes. The update values will be recorded to the CONFIG3-0 registers, too. This
new configuration is only valid temporarily and will be lost after an auto-load command, an active
RSTDRV, or PC power off . Permanent changes of configuration must be done by changing the
jumper states or the contents of 9346. Note that the BROM size can not be modified temporarily.
The Plug and Play logic can work in all the three configuration modes except that an RT defined
initiation key, named RT initiation key, should be used instead of the PnP initiation key. In other
words, the RT initiation key is supported in all configuration modes while the PnP initiation key is
only supported in the PnP mode. By using the RT initiation key, the software can put RTL8019 to
the PnP Config state and access the logical device configuration registers even in the jumper and
RT jumperless modes.
The differences between the 3 configuration modes are shown in the following table.
Configuration Mode
Jumper
RT Jumperless
Plug and Play
Resource of Power-up Value
Jumper Pins
9346
9346
Supported Initiation Key
RT Initiation Key
RT Initiation Key
RT and PnP Initiation Key
Initial Values of CONFIG1-3 Registers after RSTDRV or Auto-load Command
CONFIG1
Mode
Jumper
RT Jumperless
Plug and Play
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
IRQEN IRQS2 IRQS1 IRQS0 IOS3
IOS2
1
jumper jumper jumper jumper jumper
1
9346
9346
9346
9346
9346
Bit 1
IOS1
jumper
9346
Bit 0
IOS0
jumper
9346
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
PL1
PL0 BSELB BS4
BS3
BS2
jumper jumper
0
jumper jumper jumper
9346
9346
0
9346
9346
9346
Bit 1
BS1
jumper
9346
Bit 0
BS0
jumper
9346
CONFIG2
Mode
Jumper
RT Jumperless
Plug and Play
CONFIG3
Mode
Jumper
RT Jumperless
Plug and Play
Bit 7
PNP
0
0
1
Bit 6
Bit 5
Bit 4
FUDUP LEDS1 LEDS0
9346
9346
9346
9346
9346
9346
Bit 3
-
6.2. Plug and Play
LS003.7
2000.07.31
27
Bit 2
Bit 1
Bit 0
SLEEP PWRDN ACTIVEB
0
9346
9346
0
9346
9346
ADVANCE INFORMATION
RTL8019
6.2.1. Initiation Key
The Plug and Play logic is quiescent on power up and must be enabled by software. This is done by
a predefined series of writes (32 I/O writes) to the ADDRESS port, which is called the initiation
key. The write sequence is decoded by RTL8019. If the proper series of I/O writes is detected, then
the Plug and Play auto-configuration ports are enabled. The write sequence will be reset and must
be issued from the beginning if any data mismatch occurs. The exact sequence for the initiation key
is listed below in hexadecimal notation.
PnP Initiation Key
6A,
DF,
B0,
E8,
B5,
6F,
58,
74,
DA,
37,
2C,
3A,
ED,
1B,
16,
9D,
F6,
0D,
8B,
CE,
FB,
86,
45,
E7,
7D,
C3,
A2,
73,
BE,
61,
D1,
39
8D,
34,
51,
86,
46,
9A,
28,
43,
23,
4D,
94,
A1,
91,
26,
CA,
50
RT Initiation Key
DA,
48,
13,
65,
6D,
A4,
89,
32,
36,
D2,
44,
19,
1B,
69,
A2,
0C,
LS003.7
2000.07.31
28
ADVANCE INFORMATION
RTL8019
6.2.2. Isolation Protocol
A simple algorithm is used to isolate each Plug and Play card. This algorithm uses the signals on the ISA bus
and requires lock-step operation between the Plug and Play hardware and the isolation software.
State
Isolation
Read from serial isolation register
yes
Get one bit from serial identifier
ID bit="1H"
Drive "55H"
on SD[7:0]
no
Leave SD [7:0]
in high-impedance
no
SD[1:0]="01"
yes
Wait for next read from serial isolation register
Drive
"AAH" on
SD[7:0]
Leave SD [7:0]
in high impedance
no
SD[1:0]="10"
After I/O read completes
fetch next ID bit from
serial identifier
no
yes
Read all 72 bits
from serial
identifier
ID=0
other card ID=1
State
Sleep
yes
One card
isolated
Figure 1. Plug and Play ISA Card Isolation Algorithm
LS003.7
2000.07.31
29
ADVANCE INFORMATION
RTL8019
Serial Identifier
The key element of the Plug and Play isolation protocol is that each card contains a unique number,
named serial identifier. The serial identifier is a 72-bit unique, non-zero number composed of two
32-bit fields and an 8-bit checksum. The first 32-bit field is a vendor identifier. The other 32-bits
can be any value, for example, a serial number, part of a LAN address, or a static number, as long
as there will never be two cards in a single system with the same 64-bit number. The serial identifier
is accessed bit-serially by the isolation logic and is used to differentiate the cards.
Checksum
Serial Number
Vendor ID
Byte 0
Byte 3
Byte 2
Byte 1
Byte 0
Byte 3
Byte 2
Byte 1
Byte 0
7:0
7:0
7:0
7:0
7:0
7:0
7:0
7:0
7:0
Shift
Figure 2. Shifting of Serial Identifier
The shift order for all Plug and Play serial isolation and resource data is defined as bit[0], bit[1],
and so on through bit[7].
Hardware Protocol
The isolation protocol can be invoked by the Plug and Play software at any time. The initiation key
described earlier, puts all cards into configuration mode. The hardware on each card expects 72
pairs of I/O read accesses to the READ_DATA port. The card's response to these reads depends
on the value of each bit of the serial identifier which is being examined one bit at a time, in the
sequence shown in Figure 1.
If the current bit of the serial identifier is a "1", then the card will drive the data bus to 55H to
complete the first I/O read cycle. If the bit is "0", then the card puts its data bus driver into high
impedance. All cards in high impedance will check the data bus during the I/O read cycle to sense if
another card is driving SD[1:0] to "01". During the second I/O read, the card(s) that drove the
55H, will now drive a AAH. All high impedance card will check the data bus to sense if another
card is driving SD[1:0] to "10."
If a high impedance card sensed another card driving the data bus with the appropriate data during
both cycles, then that card ceases to participate in the current iteration of card isolation. Such
cards, which lose out, will participate in future iterations of the isolation protocol.
NOTE: During each read cycle, the Plug and Play hardware drives the entire 8-bit data bus,
but only checks the lower 2 bits.
If a card was driving the bus or if the card was in high impedance and did not sense another card
driving the bus, then it should prepare for the next pair of I/O reads. The card shifts the serial
identifier by one bit and uses the shifted bit to decide its response.
The above sequence is repeated for the entire 72-bit serial identifier.
LS003.7
2000.07.31
30
ADVANCE INFORMATION
RTL8019
At the end of this process, one card remains. This card is assigned a handle referred to as the Card
Select Number (CSN) that will be used later to select the card. Cards which have been assigned a
CSN will not participate in subsequent iterations of the isolation protocol. Cards must be assigned a
CSN before they will respond to the other PnP commands.
It should be noted that the protocol permits the 8-bit checksum to be stored in non-volatile memory
on the card or generated by the on-card logic in real-time. The checksum algorithm is implemented
as a Linear Feedback Shift Register (LFSR), which is shown in Figure 3.
Vendor ID/
Serial number
7
6
4
5
3
2
1
0
Shift out
Read of Serial
Isolation register
Reset values
0
1
1
0
1
0
1
0
Figure 3. Checksum LFSR
The LFSR resets to 6AH upon receiving the Wake[CSN] command. The next shift value for the
LFSR is calculated as LFSR[1] XOR LFSR[0] XOR Serial Data. The LFSR is shifted right one bit
at the conclusion of each pair of reads to the Serial Isolation register. LFSR[7] is assigned the next
shift value described above.
After the first 64 pairs of reads of the Serial Isolation register, the LFSR will have the value of
serial identifier checksum.
Plug and Play cards must not drive the IOCHRDY signal during serial isolation. However, cards
may drive IOCHRDY at any other time.
Software Protocol
The Plug and Play software sends the initiation key to all Plug and Play cards to place them into
configuration mode. The software is then ready to perform the isolation protocol.
The Plug and Play software generates 72 pairs of I/O read cycles from the READ_DATA port. The
software checks the data returned from each pair of I/O reads for the 55H or AAH driven by the
hardware. If both 55H or AAH are read back, then the software assumes that the hardware had a
"1" bit in that position. All other results are assumed to be a "0".
During the first 64 bits, software generates a checksum using the received data. The checksum is
compared with the checksum read back in the last 8 bits of the sequence.
LS003.7
2000.07.31
31
ADVANCE INFORMATION
RTL8019
There are two other special considerations for the software protocol. During an iteration, it is
possible that the 55H and AAH combination is never detected. It is also possible that the checksum
does not match. If either of these cases occur on the first iteration, it must be assumed that the
READ_DATA port is in conflict. If a conflict is detected, then the READ_DATA port is relocated.
The above process is repeated until a non-conflicting location for the READ_DATA port is found.
The entire range between 200H and 3FFH is available, however in practice it is expected that only
a few locations will be tried before software determines that no Plug and Play cards are present.
During subsequent iterations, the occurrence of either of these two special cases should be
interpreted as the absence of any further Plug and Play cards (i.e. the last card was found in the
previous iteration). This terminates the isolation protocol.
NOTE: The software must delay 1 msec prior to starting the first pair of isolation reads, and
must wait 250 µsec between each subsequent pair of isolation reads. This delay gives the
ISA card time to access information from possibly very slow storage devices.
LS003.7
2000.07.31
32
ADVANCE INFORMATION
RTL8019
6.2.3. Plug and Play Isolation Sequence
The Plug and Play isolation sequence is divided into four states: Wait for Key, Sleep, Isolation,
and Config states. The state transitions for the Plug and Play ISA card are shown below.
Power up
RSTDRV or
Reset command
Set CSN=0
Active Commands
State
no active
commands
Wait for Key
initiation key
State
Active Commands
Reset
Reset CSN
Wait for Key
Wake [CSN]
Sleep
(WAKE=0) AND (CSN=0)
(WAKE<>0) AND (WAKE=CSN)
Lose serial isolation OR
(WAKE<>CSN)
State
Isolation
Active Commands
Reset
Reset CSN
Wait for Key
Set RD_DATA Port
Serial isolation
Wake [CSN]
Set CSN
WAKE<>CSN
State
Set CSN
Config
NOTES:
1. CSN= Card Select Number
2. RSTDRV causes a state transition
from the current state to Wait for Key and sets all CSNs to zero
3. The Wait for Key command causes a state transition from the
current state to Wait for Key
4. The Reset CSN commands include PnP Reset CSN and RT Reset CSN commands.
The former sets all ISA PnP cards' CSNs to zero while the latter only sets RTL8019
PnP cards' CSNs to zero. Both commands do not cause a state transition.
Figure 4. Plug and Play ISA Card State Transitions
LS003.7
2000.07.31
33
Active Commands
Reset
Reset CSN
Wait for Key
Wake [CSN]
Resource Data
Status
Logical Device
I/O Range Check
Activate
Configuration Registers
ADVANCE INFORMATION
RTL8019
On power up, all PnP cards detect RSTDRV, set their CSN to 0, and enter the Wait for Key state.
There is a required 2 msec delay from either a RSTDRV or a PnP Reset command to any Plug and
Play port access to allow a card to load initial configuration information from a non-volatile device,
which is 9346 for RTL8019.
Cards in the Wait for Key state do not respond to any access to their auto-configuration ports until
the initiation key is detected. Cards ignore all ISA access to their Plug and Play interface.
When the cards have received the initiation key, they enter the Sleep state. In this state, the cards
listen for a Wake[CSN] command with the write data set to 00H. This wake[CSN] command will
send all cards to the Isolation state and reset the serial identifier/resource data pointer to the
beginning.
The first time the cards enter the Isolation state it is necessary to set the READ_DATA port
address using the Set RD_DATA port command. The software should then verify the selected
READ_DATA port address is not in conflict with any other devices by the isolation protocol.
Next, 72 pairs of reads are performed to the Serial Isolation register to isolate a card as described
previously. If the checksum read from the card is valid, then this means one card has been isolated.
The isolated card remains in the Isolation state while all other cards have failed the isolation
protocol and have returned to the Sleep state. The CSN on this card is set to a unique number.
Writing this value causes this card to transition to the Config state. Sending a Wake[0] command
causes this card to transition back to Sleep state and all cards with a CSN value of zero to
transition to the Isolation state. This entire process is repeated until no Plug and Play cards are
detected.
6.2.4. Reading Resource Data
Each PnP card supports a resource data structure stored in a non-volatile device (e.g. 9346) to
describe the resources supported and those requested by the functions on the card. The Plug and
Play resource management software will arbitrate resources and setup the logical device
configuration registers according to the resource data.
Card resource data may only be read from cards in the Config state. A card may get to the Config
state by one of two different methods. A card enters the Config state in response to the card
"winning" the serial isolation protocol and having a CSN assigned. The card also enters the Config
state in response to receiving a Wake[CSN] command that matches the card's CSN.
As described above, all Plug and Play cards function as if their serial identifier and their resource
data both come from the same serial device. As also stated above, the pointer to the serial device is
reset in response to any Wake[CSN] command. This implies that if a card enters the Config state
directly in response to a Wake[CSN] command, the 9-byte serial identifier must be read first before
the card resource data is accessed. The Vendor ID and Unique Serial Number is valid; however, the
checksum byte, when read in this way, is not valid. A card that enters the Config state after the
isolation protocol has been run has already accessed all 72 bits of the serial identifier and the first
read of the Resource Data register will return resource data.
LS003.7
2000.07.31
34
ADVANCE INFORMATION
RTL8019
Card resource data is read by first polling the Status register and waiting for bit[0] to be set. When
this bit is set it means that one byte of resource data is ready to be read from the Resource Data
register. After the Resource Data register is read, the Status register must be polled before reading
the next byte of resource data. This process is repeated until all resource data is read. The format of
resource data is described in the following section.
The above operation implies that the hardware is responsible for accumulating 8 bits of data in the
Resource Data register. When this operation is complete, the status bit[0] is set. When a read is
performed on the Resource Data register, the status bit[0] is cleared, eight more bits are shifted
into the Resource Data register, then the status bit[0] is set again.
6.3. 9346 Contents
The 9346 is a 1k-bit EEPROM. Although it is actually addressed by words, we list its contents by
bytes below for convenience.
Bytes
Contents
00H - 03H
04H - 11H
Comments
(4 bytes)
Power-up initial value of Page3 and PnP
logical device configuration registers
00H
01H
02H
03H
CONFIG1
CONFIG2
CONFIG3
Not used
(14 bytes)
04H - 09H
0AH - 11H
Ethernet ID 0-5
Product ID 0-7
12H - 1AH (9 bytes)
12H - 15H
16H - 19H
1AH
NE2000 IDPROM
Ethernet node address
Assigned by card makers; negligible
Plug and Play Serial Identifier
Vendor ID 0-3
Serial Number 0-3
Serial ID Checksum
1BH - 7FH (101 bytes)
Plug and Play Resource Data
Detail values of 9346 CONFIG1-3 bytes
Bit 7
CONFIG1
*
CONFIG2 PL1
CONFIG3 PNP
Bit 6
IRQS2
PL0
FUDUP
Bit 5
IRQS1
*
LEDS1
Bit 4
IRQS0
BS4
LEDS0
Bit 3
IOS3
BS3
*
Bit 2
IOS2
BS2
*
Bit 1
IOS1
BS1
PWRDN
P.S. '*' denotes don't care.
Example : Plug and Play Resource Data for RTL8019 (Total 73+5 bytes)
TAG
Plug and Play Version Number
Item byte
0AH
PnP version
10H
Vendor version
10H
Length: fixed
LS003.7
2000.07.31
35
3 bytes
Bit 0
IOS0
BS0
ACTIVEB
ADVANCE INFORMATION
RTL8019
TAG
ANSI Identifier String
Item byte
Length bits 7-0
Length bits 15-8
Identifier string
Length: variable
37 bytes
82H
22H
00H
'REALTEK PLUG & PLAY ETHERNET CARD', 00H
TAG
Logical Device ID
Item byte
Logical device ID0-3
Flag 0
Flag 1
Length: fixed
7 bytes
16H
4AH, 8CH, 80H, 19H
02H or 03H (use 03H when BROM is enabled)
00H
TAG
Compatible Device ID (NE2000 compatible) Length: fixed
Item byte
1CH
Compatible ID0-3
41H, D0H, 80H, D6H
5 bytes if given
TAG
I/O Format
Item byte
I/O information
Min. I/O base bits 7-0
Min. I/O base bits 15-8
Max. I/O base bits 7-0
Max. I/O base bits 15-8
Base alignment
Range length
Length: fixed
8 bytes
47H
00H
20H
02H
80H
03H
20H
20H
IRQ Format
Item byte
IRQ mask bits 7-0
IRQ mask bits 15-8
IRQ information
Length: fixed
4 bytes
23H
38H
9EH
01H
Memory Format (optional)
Item byte
Length bits 7-0
Length bits 15-8
Memory information
Min. base bits 15-8
Min. base bits 23-16
Max. base bits 15-8
Max. base bits 23-16
Base alignment bits 7-0
Base alignment bits 15-8
Range length bits 15-8
Range length bits 23-16
81H
09H
00H
40H
00H
0CH
C0H
0DH
00H
40H
40H
00H
TAG
TAG
TAG
END Tag
Item byte
Checksum
Length: fixed
12 bytes
This example uses 16k-byte BROM.
Length: fixed
2 bytes
79H
2's complement of the sum of all the above resource data
i.e. 2's complement of (0AH+10H+10H+.......+79H)
LS003.7
2000.07.31
36
ADVANCE INFORMATION
RTL8019
6.4. Local Memory Bus Control
The local memory bus of RTL8019 is shared by the SRAM, BROM & 9346 EEPROM.
The following diagram demonstrates their connection relationship.
9346
MA3-1
EESK
EEDI
EEDO
EECS
EECS
RTL8019
8K SRAM#1
MD7-0
MA13-2
MA13-1
A12-0
D7-0
MD7-0
OE
MRDB
WE
MWRB
CS2
CS1
VCC
MA0
MRDB
MWRB
MA1
EECS
MCSB
MA0
BCSB
BROM
MD7-0
D7-0
BCSB
CE
8K SRAM#2
A21-14
MA11-4
MA13-1
A12-0
D7-0
MD7-0
OE
MRDB
WE
MWRB
CS2
MA0
CS1
EECS or MCSB
OE
32K SRAM
MA13-1
A12-0
D7-0
MD7-0
OE
MRDB
WE
MWRB
A13
MA0
CS
EECS or MCSB
Figure 5. Local Memory Bus Block Diagram
LS003.7
2000.07.31
37
ADVANCE INFORMATION
RTL8019
The access control of local memory bus is depicted in the following table.
Note : 1.Combinations not listed in the table will never happen.
2.'BUS' indicates the device owns the local memory bus.
3.'EN' indicates the device is active (enabled) but not driving the local memory data bus.
4.'DIS' indicates the device is in standby mode (disabled).
5.Using MCSB instead of EECS for SRAM may reduce up to 40ma power consumption
in idle state.
(1) MCSB is not used
MCSB BCSB EECS MA0 MWRB MRDB BROM 9346
-
L
H
H
H
H
H
H
L
L
H
L
L
L
L
H
H
H
L
H
L
H
H
H
H
H
H
L
L
H
H
H
L
L
*
*
BUS
DIS
DIS
DIS
DIS
DIS
DIS
DIS
DIS
BUS
DIS
DIS
DIS
DIS
8K#1
DIS
DIS
DIS
BUS
DIS
BUS
DIS
SRAM
8K#2
EN
EN
DIS
DIS
BUS
DIS
BUS
32K
EN
EN
DIS
BUS
BUS
BUS
BUS
Comments
8K#1
DIS
DIS
DIS
BUS
DIS
BUS
DIS
SRAM
8K#2
DIS
DIS
DIS
DIS
BUS
DIS
BUS
32K
DIS
DIS
DIS
BUS
BUS
BUS
BUS
read BROM
idle
access 9346
read SRAM#1
read SRAM#2
write SRAM#1
write SRAM#2
(2) MCSB is used
MCSB BCSB EECS MA0 MWRB MRDB BROM 9346
H
H
H
L
L
L
L
L
H
H
H
H
H
H
L
L
H
L
L
L
L
H
H
H
L
H
L
H
H
H
H
H
H
L
L
H
H
H
L
L
*
*
BUS
DIS
DIS
DIS
DIS
DIS
DIS
DIS
DIS
BUS
DIS
DIS
DIS
DIS
Comments
read BROM
idle
access 9346
read SRAM#1
read SRAM#2
write SRAM#1
write SRAM#2
6.5. LED Behaviors
This section describes the lighting behaviors of the LED output signals which may be selected by
LEDS1 and LEDS0 bits in the Page3 CONFIG3 register.
P.S. It is assumed that the LED is on when the signal goes low.
LS003.7
2000.07.31
38
ADVANCE INFORMATION
RTL8019
(1) LED_TX: Tx LED
Power On
LED=low
No
Transmitting Packet?
Yes
LED=high for (100 +10) ms
LED=low for (6 + 2) ms
(2) LED_RX: Rx LED
Power On
LED=low
No
Receiving Packet?
Yes
LED=high for (100 +10) ms
LED=low for (6 +2) ms
LS003.7
2000.07.31
39
ADVANCE INFORMATION
RTL8019
(3) LED_CRS=LED_TX+LED_RX: Carrier Sense LED
Power On
LED=low
No
Tx or Rx Packet?
Yes
LED=high for (100 +10) ms
LED=low for (6 +2) ms
(4) LED_COL: Collision LED
Power On
LED=high
No
Collision (except Heartbeat)?
Yes
LED=low for (10 +5) ms
LS003.7
2000.07.31
40
ADVANCE INFORMATION
RTL8019
LED Output States in Power Down Modes
LED Output
LEDBNC
LED_LINK
LED_COL
LED_TX
LED_RX
LED_CRS
Normal Mode / Idle
High
Low
Low
Low
Sleep Mode
High
High
High
High
High
Power Down Mode
Low
High
High
High
High
High
6.6. Loopback Diagnostic Operation
6.6.1. Loopback operation
The RTL8019 provides 3 loopback modes. By loopback test, we can verify the integrity of data
path, CRC logic, address recognition logic and cable connection status.
Mode 1: Loopback through the NIC (LB1=0, LB0=1 in TCR).
The NRZ data is not transmitted to the SNI but instead it's loopbacked to the NIC's Rx
deserializer. The traffic on the cable is ignored.
NIC
8390
Ref:
SNI
83910
Mode 2: Loopback through the SNI (LB1=1, LB0=0 in TCR)
The Manchester encoded data is not transmitted to the MAU. It's loopbacked through
the SNI to NIC. The traffic on the cable is ignored.
NIC
8390
Ref:
MAU
8392/RTL8005
SNI
83910
Mode 3: Loopback through the cable (LB1=1, LB0=1 in TCR)
The packets are transmitted via the MAU onto the network and RTL8009 receives all
incoming packets (not only the MAU-loopbacked Tx data) in the meantime.
Ref:
NIC
8390
SNI
83910
MAU
8392/RTL8005
LS003.7
2000.07.31
41
CABLE
ADVANCE INFORMATION
RTL8019
q Alignment of the Reception FIFO
The reception FIFO is an 8-byte ring structure. The first received byte is put at location zero.
When the location pointer goes to the end of the FIFO, it wraps to the beginning of the FIFO and
overwrites the previous data. At the end of the packet reception, the FIFO contents are in the
"order" (from the ring structure's view) as shown below.
(1) CRC enabled (CRC bit in TCR=0)
s 1-byte received packet data
s 4-byte CRC
s 1-byte lower byte count
s 1-byte upper byte count
s 1-byte upper byte count
(2) CRC disabled (CRC bit in TCR=1)
s 5-byte received packet data
s 1-byte lower byte count
s 1-byte upper byte count
s 1-byte upper byte count
6.6.2. To Implement Loopback Test
(1) To verify the integrity of data path
s set RCR=00h to accept physical packet
s set PAR0-5 to accept packet
s set DCR=40h (8-bit slot) or 43h (16-bit slot)
s set TCR=02h, 04h, 06h to do loopback test 1, 2, 3 respectively
s set CRC enabled (CRC=0 in TCR)
s clear ISR
s tx a packet and check ISR
s check FIFO after loopback
Note: Loopback mode 3 is sensitive to the network traffic, so the values of FIFO may be not
correct.
(2) To verify CRC logic
q Select a loopback mode (e.g. mode 2) to test
A. To test CRC generator
s set RCR=00h to accept physical packet
s set PAR0-5 to accept packet
s set TCR=04h (CRC enabled)
s set DCR=40h (8-bit slot) or 43h (16-bit slot)
s clear ISR
s tx a packet
s check CRC bytes in FIFO after loopback
LS003.7
2000.07.31
42
ADVANCE INFORMATION
RTL8019
B. To test CRC checker
s set RCR=00h to accept physical packet
s set PAR0-5 to accept packet
s set TCR=05h (CRC disabled)
s set DCR=40h (8-bit slot) or 43h (16-bit slot)
s clear ISR
s tx a packet with good or bad CRC appended by program
s check FIFO, ISR & RSR after loopback
For bad CRC, expected: ISR=06h, RSR=02h (Tx: OK, Rx:CRC error)
For good CRC, expected: ISR=02h, RSR=01h (Tx:OK, Rx: OK)
Note: In loopback mode, the received packets are not stored to SRAM, so PRX bit in ISR isn't set.
(3) To verify the address recognition function
q Select a loopback mode (e.g. mode 2) to test
A. Right physical destination address
s set RCR=00h to accept physical packet
s set PAR0-5 to accept packet
s set TCR=04h (CRC enabled)
s set DCR=40h (8-bit slot) or 43h (16-bit slot)
s clear ISR
s tx a packet
s check ISR after loopback
Expected: ISR=06h (packets accepted, Rx CRC error)
B. Wrong physical destination address
s set RCR=00h to accept physical packet
s set PAR0-5 to reject packet
s set TCR=04h (CRC enabled)
s set DCR=40h (8-bit slot) or 43h (16-bit slot)
s clear ISR
s tx a packet
s check ISR after loopback
Expected: ISR=02h (packets rejected, Rx no response)
LS003.7
2000.07.31
43
ADVANCE INFORMATION
RTL8019
(4) To Test Cable Connection
q There are four physical medium types in RTL8019.
s
s
s
s
s
s
s
We perform loopback mode 3 to test the cable connection status.
set RCR=00h to accept physical packet
set PAR0-5 to accept packet
set TCR=06h (CRC enabled)
set DCR=40h (8-bit slot) or 43h (16-bit slot)
clear ISR
tx a packet
check TSR after loopback
A. 10Base2
If cable OK, get TSR=03h (Tx OK).
If cable FAIL, get TSR=0Eh (Collision and Tx aborted).
B. 10Base5
If cable OK, get TSR=03h (Tx OK).
If MAU connected but cable FAIL, get TSR=0Eh (Tx collision and Tx aborted).
If MAU not connected, get TSR=53h (Carrier sense is lost during transmission and CD heartbeat
fails.).
C. 10BaseT with link test disabled
RTL8019 disables link test in this case, so cable OK or FAIL doesn't affect TSR; get TSR=03h.
D. Auto-detection (10BaseT with link test enabled)
RTL8019 automatically switches from 10BaseT to 10Base 2 if the twisted-pair wire is not
connected (10BaseT link test fails).
If twisted-pair wire OK, get TSR=03h (Tx OK) & BNC=0 in CONFIG2
If twisted-pair wire FAIL but coaxial cable OK, get TSR=03h (Tx OK) & BNC=1 in CONFIG2
Otherwise, get TSR=0Eh (same as 10Base2 connection fail).
LS003.7
2000.07.31
44
ADVANCE INFORMATION
RTL8019
7. Electrical Specifications and Timings
7.1. Absolute Maximum Ratings
Operating Temperature ........................................................................................... 0 to 70
Storage Temperature .............................................................................................. -65 to
140
All Outputs and Supply Voltages, with respect to Ground ........................................ -0.5V to 7V
Power Dissipation ..................................................................................................
Warning:
Stresses beyond those listed under "Absolute Maximum Ratings" may cause permanent damage to
the device. These are stress ratings only.
Functionality at or above these limits is not recommended and extended exposure to "Absolute
Maximum Ratings" may affect device reliability.
7.2. D.C. Characteristics (Tc=0
Symbol
to 70
Parameter
, Vcc=5V+5%)
Min.
Vil
Input Low Voltage
Vih
Input Low Voltage
Vol1
Output Low Voltage 1
Voh1
Output High Voltage 1
Vol2
Output Low Voltage 2
Voh2
Output High Voltage 2
Vol3
Output Low Voltage 3
Rpull-low
Internal Pull-Low Resistance
50
II
Input Leakage Current
-10
Typ.
Max.
Unit
0.8
V
2.0
V
0.4
3.0
0.6
V
Iol=16mA, Note 1
V
Ioh=8mA, Note 1
V
Iol=4mA, Note 2
V
Ioh=4mA, Note 2
0.6
V
Iol=24mA, Note 3
150
KΩ
10
µA
3.5
0.4
3.5
0.6
4.0
100
Note 1: Apply only to INT7 ~ INT0, SD15 ~ SD0.
Note 2: Apply only to MD7 ~ MD0, MA13 ~ MA0, LED Pins, EECS, MWRB, MRDB, BCSB.
Note 3: Apply only to IOCHRDY, IOCS16B
LS003.7
2000.07.31
Conditions
45
ADVANCE INFORMATION
RTL8019
7.3. A.C. Timing Characteristics
(1) ISA I/O Read/Write
AEN
SA0-11
T2
T1
IOCS16B
IORB,
IOWB
T3
IOCHRDY
T6
T5
T4
SD0-15 (read)
T8
T7
SD0-15 (write)
Symbol
Parameter
Min.
Typ.
Max.
Unit
T1
Host address valid to IOCS16B low
20
ns
T2
Host address invalid to IOCS16B high
30
ns
T3
IOCHRDY goes low from falling edge of
IORB or IOWB when wait state insertion is
needed.
50
T4
Read data valid from falling edge of IORB or
IOWB when no wait state insertion is needed.
50
T5
Read data valid to IOCHRDY high when wait
state is needed
25
T6
Read data hold after IORB rising edge
10
30
T7
Write data setup to IOWB rising edge
10
10
ns
T8
Write data hold from IOWB rising edge
10
10
ns
LS003.7
2000.07.31
46
50
ns
ns
ns
30
ns
ADVANCE INFORMATION
RTL8019
(2) SRAM Read/Write
T1
T1
20MHz
MA13-1
MA0
BCSB
EECS
MCSB
T3
T2
MRDB or
MWRB
T4
T5
MD7-0
(read)
T7
T6
MD7-0
(write)
Symbol
Parameter
Min.
Typ.
Max.
Unit
T1
SRAM access cycle (1 byte)
100
ns
T2
MA13-0,MCSB ready to MRDB or MWRB
goes low
25
ns
T3
MRDB or MWRB low width
50
ns
T4
Read data setup to MRDB high
5
ns
T5
Read data hold from MRDB rising edge
5
ns
T6
Write data setup to MWRB rising edge
75
ns
T7
Write data hold from MWRB rising edge
25
ns
LS003.7
2000.07.31
47
ADVANCE INFORMATION
RTL8019
(3) BROM Read
SA19-0
SMEMRB
T1
T2
IOCHRDY
T3
T5
BA14-21
T4
T6
BCSB
T7
SD7-0
Symbol
Parameter
Min.
Typ.
Max.
Unit
30
ns
T1
SMEMRB low to IOCHRDY low
T2
IOCHRDY low width
T3
SMEMRB low to BA14-21 valid
30
ns
T4
SMEMRB low to BCSB valid
30
ns
T5
BA14-21 hold from SMEMRB rising edge
30
ns
T6
BCSB hold from SMEMRB rising edge
30
ns
T7
Read data hold from SMEMRB rising edge
30
ns
200
LS003.7
2000.07.31
48
ns
ADVANCE INFORMATION
RTL8019
(4) Serial EEPROM (9346) Auto-load
EESK
EECS
EEDI
1
0
1
0
0
0
A2
A1
A0
EEDO
D1
D15 D14
T1
D0
T2
EESK
T3
T4
EEDI
T6
T5
EECS
T7
T8
EEDO
Symbol
Parameter
Min.
Typ.
Max.
Unit
T1
EESK high width
3.2
µs
T2
EESK low width
3.2
µs
T3
EEDI setup to EESK rising edge
3.0
µs
T4
EEDI hold from EESK rising edge
3.0
µs
T5
EECS goes high to EESK rising edge
3.0
µs
T6
EECS goes low from EESK falling edge
T7
EEDO setup to EESK falling edge
20
ns
T8
EEDO hold from EESK falling edge
10
ns
0
ns
REALTEK Semiconductor Co., Ltd. reserved all rights of this document. No part of this
document may be copied or reproduced in any form or by any means or transferred to any third
party without the prior written consent of REALTEK Semiconductor Co., Ltd. REALTEK
reserves the right to change products or specifications without notice. This document has been
carefully checked and is believed to be accurate. However REALTEK Semiconductor Co., Ltd.
assumes no responsibility for inaccuracies.
LS003.7
2000.07.31
49
ADVANCE INFORMATION
RTL8019
Note:
Symbol
A
A1
A2
b
c
D
E
e
HD
HE
L
L1
y
Dimension in
Dimension in
mil
mm
Min Typ Max Min Typ Max
106.3 118.1 129.9 2.70 3.00 3.30
4.3 20.1 35.8 0.11 0.51 0.91
102.4 112.2 122.0 2.60 2.85 3.10
7.1 11.8 16.5 0.18 0.30 0.42
1.6 5.9 10.2 0.04 0.15 0.26
541.3 551.2 561.0 13.75 14.00 14.25
777.6 787.4 797.2 19.75 20.00 20.25
19.7 25.6 31.5 0.50 0.65 0.80
726.4 740.2 753.9 18.45 18.80 19.15
962.6 976.4 990.2 24.45 24.80 25.15
39.4 47.2 55.1 1.00 1.20 1.40
88.6 94.5 104.3 2.25 2.40 2.65
3.9
0.10
0°
12° 0°
12°
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 SEMI-CONDUCTOR CO., LTD
LS003.7
2000.07.31
50