throbber
®
`
`3C90x and 3C90xB NICs
`Technical Reference
`
`3Com
`

`
` EtherLink
`

`
` XL and Fast EtherLink XL PCI network interface cards
`
`http://www.3com.com/
`
`Part Number: 89-0766-000
`Published August 1998
`
`PALO ALTO NETWORKS Exhibit 1014 Page 1
`
`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`3Com Corporation
`5400 Bayfront Plaza
`Santa Clara, California
`95052-8145
`
` 3Com Corporation, 1998.
` All rights reserved. No part of this documentation may be
`Copyright ©
`reproduced in any form or by any means or used to make any derivative work (such as translation,
`transformation, or adaptation) without permission from 3Com Corporation.
`
`3Com Corporation reserves the right to revise this documentation and to make changes in content from
`time to time without obligation on the part of 3Com Corporation to provide notification of such revision
`or change.
`
`3Com Corporation provides this documentation without warranty of any kind, either implied or expressed,
`including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose.
`3Com may make improvements or changes in the product(s) and/or the program(s) described in this
`documentation at any time.
`
`UNITED STATES GOVERNMENT LEGENDS:
`If you are a United States government agency, then this documentation and the software described herein
`are provided to you subject to the following restricted rights:
`
`For units of the Department of Defense:
`Restricted Rights Legend:
` Use, duplication, or disclosure by the Government is subject to restrictions as set
`forth in subparagraph (c) (1) (ii) for Restricted Rights in Technical Data and Computer Software Clause at
`48 C.F.R. 52.227-7013. 3Com Corporation, 5400 Bayfront Plaza, Santa Clara, California 95052-8145.
`
`For civilian agencies:
`Restricted Rights Legend:
` Use, reproduction, or disclosure is subject to restrictions set forth in subparagraph
`(a) through (d) of the Commercial Computer Software – Restricted Rights Clause at 48 C.F.R. 52.227-19 and
`the limitations set forth in 3Com Corporation’s standard commercial agreement for the software.
`Unpublished rights reserved under the copyright laws of the United States.
`
`If there is any software on removable media described in this documentation, it is furnished under a license
`agreement included with the product as a separate document, in the hard copy documentation, or on the
`removable media in a directory file named LICENSE.TXT. If you are unable to locate a copy, please contact
`3Com and a copy will be provided to you.
`
`Unless otherwise indicated, 3Com registered trademarks are registered in the United States and may or
`may not be registered in other countries.
`
`3Com and EtherLink are registered trademarks of 3Com Corporation. Lanworks is a trademark of
`3Com Corporation.
`
`Magic Packet is a trademark of Advanced Micro Devices, Inc. Atmel is a trademark of Atmel Corporation.
`Broadcom is a trademark of Broadcom Corporation. Dell is a registered trademark of Dell Computer
`Corporation. IBM is a registered trademark of International Business Machines Corporation. Lucent
`Technologies is a trademark of Lucent Technologies, Inc. National Semiconductor is a registered
`trademark of National Semiconductor Corporation.
`
`Other brand and product names may be registered trademarks or trademarks of their respective holders.
`
`PALO ALTO NETWORKS Exhibit 1014 Page 2
`
`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`1
`
`2
`
`C
`
`ONTENTS
`
`I
`NTRODUCTION
`3C90x NIC Features 18
`3C90xB NIC Features 18
`About This Technical Reference 19
`Decimal, Binary, and Hexadecimal Numbers 19
`Terms and Acronyms 19
`Register Bit Maps 20
`
`A
`RCHITECTURE
`3C90x NICs Block Diagrams 21
`3C90xB NICs Block Diagrams 23
`ASICs 27
`Hardware Identification 28
`Software Identification 28
`3C90x NICs ASIC Diagram 28
`3C90xB NICs ASIC Diagrams 28
`ASIC Block Descriptions 30
`PCI Bus Controller 30
`Upload and Download Engines 31
`Transmit and Receive FIFOs 31
`10/100 Mbps Ethernet MAC 31
`Management Statistics 31
`Auto-Negotiation 31
`10BASE-T/AUI Interface 31
`100 Mbps Signaling 32
`10/100 Mbps PHY 32
`MII Control Logic 32
`Other NIC Devices 32
`BIOS ROM 32
`Serial EEPROM 32
`External Media Transceivers 32
`Host Registers 33
`Bit Widths of Register Accesses 33
`Command Register 33
`Interrupt Status Register 33
`3C90x NICs Register Layout 34
`3C90xB NICs Register Layout 36
`
`PALO ALTO NETWORKS Exhibit 1014 Page 3
`
`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`3
`
`4
`
`O
`PERATION
`Data Structure Lists 39
`PCI Bus Master Operation 39
`PCI Memory Commands 39
`PCI Bus Request Control 40
`Download 41
`Upload 41
`IEEE 802.3x Flow Control 41
`VLAN Support 42
`IEEE 802.1Q VLANs 42
`3Com VLT 42
`Power Management 43
`Power Management Registers 43
`Power States 43
`Remote Wake-Up 44
`Wake-up Packets 45
`Downloading Wake-up Frame Patterns 45
`Wake-up Frame Patterns 45
`Magic Packet Technology 46
`Change of Link State 47
`Programming Remote Wake-Up Events 47
`Power Down 47
`Wake-Up 48
`TCP/IP Checksum Support 48
`
`C
`ONFIGURATION
`System Reset 51
`Serial EEPROM 51
`NIC Configuration 52
`Forced Configuration 53
`Support for Signaling Standards 54
`10 Mbps Signaling 57
`100BASE-X Signaling 57
`Media-Independent Interface/100BASE-T4 57
`Auto-Negotiation 58
`BIOS ROM 58
`InternalConfig 59
`
`PALO ALTO NETWORKS Exhibit 1014 Page 4
`
`

`
`
`
`NIC Initialization 63
`Selecting the Media Port 63
`Selection Through EEPROM 63
`AutoSelect 63
`MediaOptions 64
`AutoSelect Sequence 64
`Auto-Negotiation 64
`MII/100BASE-T4 65
`100BASE-FX 65
`AUI 66
`10BASE2 66
`Manual Testing of 10BASE-T and 100BASE-TX 66
`Setting the Receive Filter 66
`Station Address 66
`Broadcast Packets 67
`Multicast Packets 67
`Multicast Address Hash Filter 67
`Promiscuous Mode 67
`Capabilities Word 67
`MacControl 67
`Setting the Duplex Mode 67
`3C90x NICs 67
`3C90xB NICs 68
`PCI Configuration Registers 68
`VendorId 69
`DeviceId 69
`PciCommand 70
`PciStatus 70
`RevisionId 71
`ClassCode 72
`CacheLineSize 72
`LatencyTimer 72
`HeaderType 73
`IoBaseAddress 73
`MemBaseAddress 73
`SubsystemVendorId 74
`SubsystemId 74
`BiosRomControl 74
`CapPtr 74
`InterruptLine 75
`InterruptPin 75
`MinGnt 75
`MaxLat 75
`
`PALO ALTO NETWORKS Exhibit 1014 Page 5
`
`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`5
`
`Power Management 75
`CapID 75
`NextPtr 75
`PowerMgmtCap 76
`PowerMgmtCtrl 76
`PowerMgmtEvent 77
`
`EEPROM
`Data Format 79
`3Com Node Address 81
`DeviceId 81
`Manufacturing Data 81
`Date 81
`Division 81
`Product Code 81
`ManufacturerId 82
`RomInfo 82
`PciParm 82
`OEM Node Address 83
`Software Information 83
`Compatibility Word 84
`Capabilities Word 84
`InternalConfig 86
`AnalogDiagnostic 86
`Software Information 2 86
`Software Information 3 87
`Lanworks Data 87
`SubsystemVendorId 87
`SubsystemId 88
`MediaOptions 88
`Checksum 88
`EepromCommand 88
`EepromData 90
`
`6
`
`
`D
` T
`RANSMISSION
`OWNLOAD
`AND
`Packet Download Model 91
`DPD Data Structure 92
`Down Next Pointer 93
`Frame Start Header 93
`Schedule Time 95
`Down Fragment Address 96
`Down Fragment Length 96
`
`PALO ALTO NETWORKS Exhibit 1014 Page 6
`
`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Packet Download 97
`Simple Packet Download 97
`Packet Length Round Up 97
`3C90x NICs 97
`3C90xB NICs 98
`Download Scheduling 98
`Download Completion 98
`Multipacket Lists 99
`Adding DPDs to the End of the Downlist 99
`Inserting a DPD Near the Head of the Downlist 99
`Inserting a DPD in Front of a Scheduled DPD 100
`Polling on DnNextPtr 100
`NIC Download Sequence 101
`3C90x NICs 101
`3C90xB NICs 101
`Packet Transmission 102
`Enabling Transmission 102
`Transmit Errors 102
`Underrun Recovery 103
`Reclaiming Transmit FIFO Space 103
`Transmit Mechanism 104
`Limiting dnComplete Interrupts 104
`Using CountDown Timer Instead of dnComplete 104
`DmaCtrl 104
`DnBurstThresh 107
`DnListPtr 107
`DnMaxBurst 109
`DnPoll 109
`DnPriorityThresh 109
`TxFree 110
`TxFreeThresh 110
`TxPktId 111
`TxReclaimThresh 112
`TxStartThresh 112
`TxStatus 113
`
`7
`
` U
`
`R
`PLOAD
`AND
`ECEPTION
`Packet Upload Model 115
`UPD Data Structure 116
`Up Next Pointer 116
`Up Pkt Status 116
`Up Fragment Address 118
`Up Fragment Length 119
`
`PALO ALTO NETWORKS Exhibit 1014 Page 7
`
`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Packet Reception 119
`Enabling Reception 119
`Simple Packet Upload 119
`Upload Eligibility 120
`Packet Upload Completion 120
`Multipacket Lists 120
`Early Receive Interrupts 121
`Parallel Tasking of Receive Uploads 121
`NIC Upload Sequence 121
`DmaCtrl 122
`MaxPktSize 122
`RxEarlyThresh 122
`RxError 124
`RxFilter 124
`RxFree 125
`RxStatus 126
`StationAddress 127
`StationMask 127
`UpBurstThresh 128
`UpListPtr 128
`UpMaxBurst 129
`UpPktStatus 129
`UpPoll 131
`UpPriorityThresh 132
`VlanMask 132
`
` I
`
`I
`NDICATIONS
`AND
`NTERRUPTS
`IndicationEnable 134
`InterruptEnable 134
`IntStatus 135
`IntStatusAuto 137
`
`IAGNOSTICS
`
` D
`
`S
`AND
`TATISTICS
`BadSSD 140
`BytesRcvdOk 140
`BytesXmittedOk 141
`CarrierLost 141
`FramesDeferred 142
`FramesRcvdOk 142
`FramesXmittedOk 143
`LateCollisions 143
`MultipleCollisions 144
`RxOverruns 144
`SingleCollisions 145
`SqeErrors 145
`UpperBytesOk 146
`UpperFramesOk 147
`
`8
`
`9
`
`PALO ALTO NETWORKS Exhibit 1014 Page 8
`
`

`
`10
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
` R
`C
`EGISTER
`OMMAND
`Reset Commands 151
`GlobalReset 151
`RxReset 152
`TxReset 152
`Transmit Commands 153
`DnStall 153
`DnUnstall 154
`SetTxReclaimThresh 154
`SetTxStartThresh 154
`TxDisable 154
`TxEnable 154
`Receive Commands 155
`RxDisable 155
`RxEnable 155
`SetHashFilterBit 155
`SetRxEarlyThresh 156
`SetRxFilter 157
`UpStall 157
`UpUnStall 157
`Interrupt Commands 158
`AcknowledgeInterrupt 158
`RequestInterrupt 158
`SetIndicationEnable 158
`SetInterruptEnable 159
`Other Commands 159
`DisableDcConverter 159
`EnableDcConverter 159
`SelectRegisterWindow 159
`StatisticsDisable 160
`StatisticsEnable 160
`
`11
`
`EGISTERS
`
` MII R
`
`-N
`A
`AND
`EGOTIATION
`UTO
`3C90xB NICs Auto-Negotiation 161
`40-0502-00x ASIC Auto-Negotiation Registers 162
`AutoNegAbility 162
`AutoNegAdvert 163
`AutoNegControl 164
`AutoNegExpansion 165
`AutoNegPhyId1 and AutoNegPhyId2 166
`AutoNegStatus 166
`
`PALO ALTO NETWORKS Exhibit 1014 Page 9
`
`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`40-0476-001 ASIC Auto-Negotiation Registers 168
`10BASE-T Auxiliary Error and General Status 169
`100BASE-X Auxiliary Control 170
`100BASE-X Auxiliary Status 171
`100BASE-X Disconnect Counter 172
`100BASE-X False Carrier Sense Counter 172
`100BASE-X Receive Error Counter 172
`Auto-Negotiation Advertise 173
`Auto-Negotiation Expansion 174
`Auxiliary Control/Status 175
`Auxiliary Mode 176
`Auxiliary Multiple PHY 177
`Auxiliary Status Summary 179
`Control 180
`Link Partner Ability 182
`PHYID High 183
`PHYID Low 183
`Status 184
`TX Equalizer Coefficient Control 185
`TX Equalizer Coefficient Read/Write 185
`40-0483-00x ASIC Auto-Negotiation Registers 185
`MR0 Control 186
`MR1 Status 187
`MR2 PHY Identification 188
`MR3 PHY Identification 188
`MR4 Auto-Negotiation Advertisement 188
`MR5 Auto-Negotiation Link Partner Ability 189
`MR6 Auto-Negotiation Expansion 189
`MR7 Next Page Transmit 190
`MR28 Device-specific Register 1 191
`MR29 Device-specific Register 2 191
`MR30 Device-specific Register 3 192
`
`12
`
` R
`O
`EGISTERS
`THER
`BiosRomAddr 193
`BiosRomData 194
`DebugControl 194
`DebugData 195
`FifoDiagnostic 195
`Media 197
`MacControl 197
`MediaOptions 199
`MediaStatus 201
`NetworkDiagnostic 203
`PhysicalMgmt 205
`
`PALO ALTO NETWORKS Exhibit 1014 Page 10
`
`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`A
`
`B
`
`C
`
`D
`
`ResetOptions 206
`3C90x NICs 206
`3C90xB NICs 207
`Timers and Counters 209
`Countdown 209
`FreeTimer 210
`RealTimeCnt 211
`Timer 211
`VlanEtherType 212
`
` C
` P
`S
`A
`SEUDO
`ELECT
`UTO
`AutoSelect Sequence 213
`
`ODE
`
`I
`NTERFACE
`
`
`P
` MII M
`ANAGEMENT
`ROGRAMMING
`THE
`Management Frame Formats 217
`Read Frame 217
`Write Frame 218
`Read Cycle 218
`Write Cycle 218
`Z Cycle 218
`
` F
`F
`ORMATS
`RAME
`IEEE 802.3 MAC Frame Format 219
`IEEE 802.3x PAUSE Frame Format 220
`IEEE 802.1q Frame Format 221
`3Com VLT Frame Format 222
`
` S
`
` L
`E
`AND
`IST
`RRATA
`3C90x NICs 223
`3C90xB NICs 224
`
`OFTWARE
`
`S
`
`OLUTIONS
`
`I
`
`NDEX
`
`I
`
` R
`NDEX
`OF
`
`EGISTERS
`
`I
`
`
`NDEX
`
` B
`OF
`
`ITS
`
`PALO ALTO NETWORKS Exhibit 1014 Page 11
`
`

`
`PALO ALTO NETWORKS Exhibit 1014 Page 12
`
`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`F
`IGURES
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`29
`30
`31
`32
`33
`
`3C900-TPO System Architecture 21
`3C900-COMBO System Architecture 22
`3C905-TX System Architecture 22
`3C905-T4 System Architecture 23
`3C900B-TPO System Architecture 23
`3C900B-TPC System Architecture 24
`3C900B-COMBO System Architecture 24
`3C905B-TX with 40-0502-00x ASIC System Architecture 25
`3C905B-TX with 40-0476-001 or 40-0483-00x ASIC System Architecture 25
`3C905B-TX-NM System Architecture 26
`3C900B-FL System Architecture 26
`3C905B-FX System Architecture 27
`3C90x NICs ASIC Block Diagram 28
`3C900B NICs ASIC Block Diagram 28
`3C905B-TX NIC—40-0502-00x ASIC Block Diagram 29
`3C905B-TX NIC—40-0476-001 ASIC Block Diagram 29
`3C905B-TX NIC—40-0483-00x ASIC Block Diagram 29
`3C900B-FL NIC ASIC Block Diagram 30
`3C905B-FX NIC ASIC Block Diagram 30
`3C90xB NICs Bus Request Structure 40
`3C90x NICs (40-0336-00x ASIC) Media Port Architecture 54
`3C900B NICs (40-0456-004 ASIC) Media Port Architecture 55
`3C90xB NICs (40-0502-00x ASIC) Media Port Architecture 56
`3C905B-TX NICs (40-0476-001 or 40-0483-00x ASIC) Media Port Architecture 56
`Downlist 91
`Type 0 DPD Format 92
`Type 1 DPD Format 92
`Uplist 115
`UPD Format 116
`IEEE 802.3 MAC Frame Format 219
`IEEE 802.3x PAUSE Frame Format 220
`IEEE 802.1q Frame Format 221
`3Com VLT Frame Format 222
`
`PALO ALTO NETWORKS Exhibit 1014 Page 13
`
`

`
`PALO ALTO NETWORKS Exhibit 1014 Page 14
`
`

`
`TABLES
`
`1
`3C90x NICs 17
`2
`3C90xB NICs 17
`3
`ASICs Summary 27
`4
`3C90x NICs Register Layout 34
`5
`3C90x NICs Register Window Layout 35
`6
`3C90xB NICs Register Layout 36
`7
`3C90xB NICs Register Window Layout 37
`8
`3C90x NICs PCI Memory Commands 39
`9
`3C90xB NICs PCI Memory Commands 40
`10
`3C90xB NICs Power States 43
`11
`EEPROM Data Locations 51
`12
`PCI Registers Set During Configuration 53
`13
`3C90x NIC ramPartition Values 61
`14
`Summary of 3C90x NICs PCI Configuration Registers 68
`15
`Summary of 3C90xB NICs PCI Configuration Registers 69
`16
`3C90x NICs EEPROM Contents 79
`17
`3C90xB NICs EEPROM Contents 80
`18
`3C90x NICs Summary of Capabilities 84
`19
`3C90xB NICs Summary of Capabilities 85
`20
`DPD Format Bit Combinations 92
`21 Minimum Frame Size for RxError 124
`22
`Interrupt-specific Actions 133
`23
`Summary of Transmit Statistics 139
`24
`Summary of Receive Statistics 140
`25
`Command Summary 150
`26
`Summary of 40-0502-00x ASIC Auto-Negotiation Registers 162
`27
`Summary of 40-0476-001 ASIC Auto-Negotiation and MII Registers 168
`28
`Summary of 40-0483-00x ASIC Auto-Negotiation and MII Registers 185
`29
`Loopback Modes 205
`30 Management Frame Formats 217
`31
`3C90x NICs (40-0336-00x ASIC) Anomalies 223
`32
`3C90xB NICs (40-0502-00x ASIC) Anomaly 224
`33
`3C90xB NICs (40-0483-00x ASIC) Anomalies 224
`
`PALO ALTO NETWORKS Exhibit 1014 Page 15
`
`

`
`PALO ALTO NETWORKS Exhibit 1014 Page 16
`
`

`
`1
`
`INTRODUCTION
`
`This technical reference describes the basic architecture and defines the
`programming interface of 3Com® EtherLink® XL and Fast EtherLink XL
`network interface cards (NICs). The NIC models are listed in Table 1 and Table 2.
`
`Table 1 3C90x NICs
`
`Model
`3C900-TPO
`3C900-COMBO
`
`Speed
`10 Mbps
`10 Mbps
`
`3C905-TX
`
`10 /100 Mbps
`
`3C905-T4
`
`10/100 Mbps
`
`Table 2 3C90xB NICs
`
`Model
`3C900B-TPO
`3C900B-TPC
`
`Speed
`10 Mbps
`10 Mbps
`
`3C900B-COMBO
`
`10 Mbps
`
`3C905B-TX
`
`10/100 Mbps
`
`3C905B-TX-NM
`
`10/100 Mbps
`
`3C900B-FL
`
`10 Mbps
`
`Media Type
`10BASE-T
`10BASE-T
`10BASE-5
`10BASE-2
`10BASE-T/
`100BASE-TX
`10BASE-T/
`100BASE-T4
`
`Media Type
`10BASE-T
`10BASE-T
`10BASE-2
`10BASE-T
`10BASE-5
`10BASE-2
`10BASE-T/
`100BASE-TX
`10BASE-T/
`100BASE-TX
`10BASE-FL
`
`3C905B-FX
`
`100 Mbps
`
`100BASE-FX
`
`Cable
`Two-pair Category 3, 4, or 5 UTP
`Two-pair Category 3, 4, or 5 UTP
`Thick Ethernet coaxial
`Thin Ethernet coaxial
`Two-pair Category 3, 4, or 5 UTP/
`Two-pair Category 5 UTP
`Two-pair Category 3, 4, or 5 UTP/
`Four-pair Category 5 UTP
`
`Cable
`Two-pair Category 3, 4, or 5 UTP
`Two-pair Category 3, 4, or 5 UTP
`Thin Ethernet coaxial
`Two-pair Category 3, 4, or 5 UTP
`Thick Ethernet coaxial
`Thin Ethernet coaxial
`Two-pair Category 5 UTP, or STP
`
`Connector
`RJ-45
`RJ-45
`AUI
`BNC
`RJ-45
`
`RJ-45
`
`Connector
`RJ-45
`RJ-45
`BNC
`RJ-45
`AUI
`BNC
`RJ-45
`
`Two-pair Category 5 UTP, or STP
`
`RJ-45
`
`Short-wavelength fiber-optic (850 nm):
`50 m
`/125 m
` and 62.5 m
`/125 m
`
`multimode fiber
`Long-wavelength fiber-optic (1300 nm):
`50 m
`/125 m
` and 62.5 m
`/125 m
`
`multimode fiber
`
`ST
`
`SC
`
`PALO ALTO NETWORKS Exhibit 1014 Page 17
`
`

`
`18
`
`CHAPTER 1: INTRODUCTION
`
`3C90x NIC Features
`
`3C90xB NIC Features
`
`3C90x NICs have these features:
`n Multipacket, multifragment scatter operations for uploads
`n Multipacket, multifragment gather operations for downloads
`n Simultaneous upload and download operations
`n On-chip RAM that can be used instead of external RAM
`
`3C90xB NICs have these additional features:
`n 2 KB transmit FIFO and 2 KB receive FIFO.
`n True dual-channel DMA engine.
`n Enhanced scatter-gather engines that reduce the number of I/O operations
`required to support data transfers.
`n A download-scheduling mechanism that allows a packet to be downloaded at
`some specific future time. For example, download scheduling can be used to
`support video or audio streams over a LAN, or to avoid overflowing a switch’s
`buffers when the switch is communicating with a lower-speed device.
`n A hash filter that provides better multicast packet handling.
`n Support for VLANs and IEEE 802.3x flow control functions.
`n Support for IEEE 802.3u auto-negotiation (10BASE-T and 100BASE-TX).
`n Support for PC ‘97 guidelines, including ACPI Power Management.
`n Support for wake-up events (except 3C900B and 3C905B-TX-NM NICs).
`Improved bus master efficiency through use of optimal PCI memory commands
`and support of larger burst lengths.
`n TCP/IP checksum features.
`n Reduced I/O operations.
`n Direct register access to BIOS ROM.
`n An integrated 100 Mbps PHY that eliminates the need for an external
`100 Mbps transceiver (40-0476-001 and 40-0483-00x ASICs only).
`
`n
`
`There are three different versions of the ASIC on the 3C905B-TX NIC. These three
`ASICs function identically except for the PHY portion, which is proprietary to each
`ASIC. As a result, the MII register layouts differ on the three ASICs. See Chapter 11
`for information on the MII register layouts of each ASIC.
`
`For more information on the ASICs, see “ASICs” in Chapter 2.
`
`PALO ALTO NETWORKS Exhibit 1014 Page 18
`
`

`
`About This Technical Reference
`
`19
`
`About This
`Technical Reference
`
`This technical reference contains information that software engineers, independent
`software developers, and test engineers can use when writing device drivers,
`diagnostic programs, and production test software for 3C90x and 3C90xB NICs.
`
`Decimal, Binary, and
`Hexadecimal Numbers
`
`Specifications in this technical reference apply to all 3C90x and 3C90xB NICs
`unless the text designates a specific model or type (for example, 3C900 NIC or
`3C90xB NIC).
`
`Unless otherwise indicated in the text, all values are decimal. The following
`are exceptions:
`n Binary values are indicated with the character “b” appended to the value
`(for example, 234b).
`n Hexadecimal values are indicated with the character “h” appended to the
`value (for example, 234h).
`
`Terms and Acronyms
`
`The following terms and acronyms are used in this reference:
`
`Term or Acronym
`
`Meaning
`
`BIST
`
`Byte
`
`Built-in self test.
`
`An 8-bit wide quantity of data.
`
`Double word (dword)
`
`A 32-bit wide quantity of data (4 bytes).
`
`Download
`
`DPD
`
`FLP
`
`FSH
`
`Indication
`
`Interrupt
`
`MII
`
`NIC
`
`NOS
`
`PEROM
`
`PHY
`
`The process of transferring transmit data from system memory to
`the NIC.
`
`Download packet descriptor.
`
`Fast link pulse.
`
`Frame start header.
`
`The reporting of any interesting event on the NIC. Any indication
`may be configured to cause an interrupt.
`
`The actual assertion of the host machine’s interrupt signal.
`
`Media-Independent Interface.
`
`Network interface card.
`
`Network operating system.
`
`Programmable and erasable read-only memory.
`
`IEEE designation for Physical layer.
`
`Remote Wake-Up
`
`The ability to power on a networked PC that is in standby or
`suspend mode using a wake-up event.
`
`UDP
`
`UPD
`
`Upload
`
`WOL
`
`Word
`
`User datagram protocol.
`
`Upload packet descriptor.
`
`The process of transferring receive data from the NIC to
`system memory.
`
`Wake on LAN (also known as Remote Wake-Up).
`
`A 16-bit wide quantity of data (2 bytes).
`
`PALO ALTO NETWORKS Exhibit 1014 Page 19
`
`

`
`20
`
`CHAPTER 1: INTRODUCTION
`
`Register Bit Maps
`
`The register descriptions in this technical reference include register bit maps.
`For example:
`
`Most-significant word
`
`Most-significant byte
`
`Least-significant word
`
` Least-significant byte
`
`31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10
`
`9
`
`8
`
`7
`
`6
`
`5
`
`4
`
`3
`
`2
`
`1
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`The first row of a bit map shows the bit numbers.
`
`The second row of a bit map indicates the following information:
`n Shaded areas indicate active register bits. The functions of these bits are
`described in the register descriptions.
`n Unshaded areas in a register bit map indicate bits that disregard data written
`to them and return zeros when read. To ensure compatibility with future
`hardware, drivers should write zeros to these bits.
`n Vertical lines mark the boundaries of fields of bits (for example, [12:0]).
`
`PALO ALTO NETWORKS Exhibit 1014 Page 20
`
`

`
`2
`
`ARCHITECTURE
`
`This chapter describes the NIC system architectures and ASIC block diagrams,
`and summarizes the layout of the host registers and windows.
`
`3C90x NICs
`Block Diagrams
`
`The block diagrams for the 3C90x NICs are shown in Figure 1 through Figure 4.
`The NIC devices are described at the end of this chapter.
`
`Figure 1 3C900-TPO System Architecture
`
`Serial
`EEPROM
`
`Upload/
`download
`engine
`
`Mgmt.
`statistics
`
`10BASE-T
`
`10BASE-T/AUI
`interface
`
`100 Mbps
`signaling
`
`MII
`control
`
`40-0336-00x ASIC
`
`3C900-TPO NIC
`
`PCI
`bus
`controller
`
`Transmit/
`receive
`FIFO
`control
`
`10/100
`Mbps
`Ethernet
`MAC
`
`PCI bus
`
`External memory interface
`
`BIOS ROM
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`PALO ALTO NETWORKS Exhibit 1014 Page 21
`
`

`
`22
`
`CHAPTER 2: ARCHITECTURE
`
`Figure 2 3C900-COMBO System Architecture
`
`AUI
`
`10BASE2
`
`10BASE2
`transceiver
`
`10BASE-T
`
`10BASE-T/AUI
`interface
`
`100 Mbps
`signaling
`
`MII
`control
`
`40-0336-00x ASIC
`
`3C900-COMBO NIC
`
`10BASE-T/AUI
`interface
`
`100 Mbps
`signaling
`
`MII
`control
`
`40-0336-00x ASIC
`
`RJ-45
`
`DP83840
`PHY
`
`3C905-TX NIC
`
`Serial
`EEPROM
`
`Upload/
`download
`engine
`
`Mgmt.
`statistics
`
`PCI
`bus
`controller
`
`Transmit/
`receive
`FIFO
`control
`
`10/100
`Mbps
`Ethernet
`MAC
`
`External memory interface
`
`BIOS ROM
`
`Figure 3 3C905-TX System Architecture
`
`Serial
`EEPROM
`
`Upload/
`download
`engine
`
`Mgmt.
`statistics
`
`PCI
`bus
`controller
`
`Transmit/
`receive
`FIFO
`control
`
`10/100
`Mbps
`Ethernet
`MAC
`
`External memory interface
`
`BIOS ROM
`
`PCI bus
`
`PCI bus
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`PALO ALTO NETWORKS Exhibit 1014 Page 22
`
`

`
`3C90xB NICs Block Diagrams
`
`23
`
`Figure 4 3C905-T4 System Architecture
`
`Serial
`EEPROM
`
`Upload/
`download
`engine
`
`Mgmt.
`statistics
`
`10BASE-T/AUI
`interface
`
`100 Mbps
`signaling
`
`MII
`control
`
`40-0336-00x ASIC
`
`RJ-45
`
`100BASE-T4
`PHY
`
`3C905-T4 NIC
`
`PCI
`bus
`controller
`
`Transmit/
`receive
`FIFO
`control
`
`10/100
`Mbps
`Ethernet
`MAC
`
`PCI bus
`
`External memory interface
`
`BIOS ROM
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`3C90xB NICs
`Block Diagrams
`
`The block diagrams for the 3C90xB NICs are shown in Figure 5 through Figure 12.
`The NIC devices are described at the end of this chapter.
`
`Figure 5 3C900B-TPO System Architecture
`
`Serial
`EEPROM
`
`Mgmt.
`statistics
`
`10 Mbps
`Ethernet
`MAC
`
`Auto-
`negotiation
`
`RJ-45
`
`10BASE-T/AUI
`interface
`
`40-0456-004 ASIC
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`PCI
`bus
`controller
`
`PCI bus
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`BIOS ROM
`
`3C900B-TPO NIC
`
`PALO ALTO NETWORKS Exhibit 1014 Page 23
`
`

`
`24
`
`CHAPTER 2: ARCHITECTURE
`
`Figure 6 3C900B-TPC System Architecture
`
`Serial
`EEPROM
`
`10BASE2
`
`Mgmt.
`statistics
`
`Auto-
`negotiation
`
`10BASE-2
`transceiver
`
`10 Mbps
`Ethernet
`MAC
`
`10BASE-T/AUI
`interface
`
`RJ-45
`
`40-0456-004 ASIC
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`PCI
`bus
`controller
`
`PCI bus
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`BIOS ROM
`
`3C900B-TPC NIC
`
`Figure 7 3C900B-COMBO System Architecture
`
`Serial
`EEPROM
`
`AUI
`
`10BASE2
`
`Mgmt.
`statistics
`
`Auto-
`negotiation
`
`10BASE-2
`transceiver
`
`10 Mbps
`Ethernet
`MAC
`
`10BASE-T/AUI
`interface
`
`RJ-45
`
`40-0456-004 ASIC
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`PCI
`bus
`controller
`
`PCI bus
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`BIOS ROM
`
`3C900B-COMBO NIC
`
`PALO ALTO NETWORKS Exhibit 1014 Page 24
`
`

`
`3C90xB NICs Block Diagrams
`
`25
`
`Figure 8 3C905B-TX with 40-0502-00x ASIC System Architecture
`
`3-pin Remote Wake-Up
`connector
`
`10BASE-T/AUI
`interface
`
`100 Mbps
`signaling
`
`MII
`control
`
`40-0502-00x ASIC
`
`RJ-45
`
`100BASE-TX
`transceiver
`
`3C905B-TX NIC
`
`Serial
`EEPROM
`
`Mgmt.
`statistics
`
`Auto-
`negotiation
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`10/100
`Mbps
`Ethernet
`MAC
`
`PCI
`bus
`controller
`
`PCI bus
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`BIOS ROM
`
`Figure 9 3C905B-TX with 40-0476-001 or 40-0483-00x ASIC System Architecture
`
`Serial
`EEPROM
`
`3-pin Remote Wake-Up
`connector
`
`Mgmt.
`statistics
`
`MII
`
`10/100
`Mbps
`Ethernet
`MAC
`
`Auto-
`negotiation
`
`10/100 Mbps
`PHY
`
`RJ-45
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`PCI
`bus
`controller
`
`PCI bus
`
`40-0476-001 or 40-0483-00x ASIC
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`BIOS ROM
`
`3C905B-TX NIC
`
`PALO ALTO NETWORKS Exhibit 1014 Page 25
`
`

`
`26
`
`CHAPTER 2: ARCHITECTURE
`
`Figure 10 3C905B-TX-NM System Architecture
`
`Serial
`EEPROM
`
`Mgmt.
`statistics
`
`10/100
`Mbps
`Ethernet
`MAC
`
`Auto-
`negotiation
`
`10/100 Mbps
`PHY
`
`RJ-45
`
`MII interface
`(optional)
`
`40-0483-001, -004, or -005 ASIC
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`PCI
`bus
`controller
`
`PCI bus
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`BIOS ROM
`
`3C905B-TX-NM NIC
`
`3-pin Remote Wake-Up
`connector
`
`10BASE-T/AUI
`interface
`
`10BASE-FL
`transceiver
`
`100 Mbps
`signaling
`
`MII
`control
`
`40-0502-004 ASIC
`
`10BASE-FL
`
`3C900B-FL NIC
`
`Figure 11 3C900B-FL System Architecture
`
`Serial
`EEPROM
`
`Mgmt.
`statistics
`
`Auto-
`negotiation
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`10/100
`Mbps
`Ethernet
`MAC
`
`PCI
`bus
`controller
`
`PCI bus
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Host
`CPU
`
`BIOS ROM
`
`PALO ALTO NETWORKS Exhibit 1014 Page 26
`
`

`
`ASICs
`
`27
`
`Figure 12 3C905B-FX System Architecture
`
`Serial
`EEPROM
`
`3-pin Remote Wake-Up
`connector
`
`Mgmt.
`statistics
`
`Auto-
`negotiation
`
`100BASE-FX
`
`10BASE-T/AUI
`interface
`
`100 Mbps
`signaling
`
`MII
`control
`
`40-0502-004 ASIC
`
`100BASE-FX
`transceiver
`
`3C905B-FX NIC
`
`System board
`
`System
`RAM
`Download
`packet
`descriptors
`
`TX buffer
`TX buffer
`TX buffer
`TX buffer
`
`Upload
`packet
`descriptors
`
`RX buffer
`RX buffer
`RX buffer
`RX buffer
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`10/100
`Mbps
`Ethernet
`MAC
`
`PCI
`bus
`controller
`
`PCI bus
`
`Host
`CPU
`
`BIOS ROM
`
`ASICs
`
`The ASIC used by each NIC is listed in Table 3.
`
`Table 3 ASICs Summary
`
`NIC
`
`3C90x NICs
`3C900-TPO
`3C900-COMBO
`3C905-TX
`3C905-T4
`
`3C90xB NICs
`3C900B-TPO
`3C900B-TPC
`3C900B-COMBO
`3C905B-TX
`
`3C905B-TX-NM
`3C900B-FL
`3C905B-FX
`
`ASIC Number(s)
`
`40-0336-000, -001, -002, -003, or -004
`40-0336-000, -001, -002, -003, or -004
`40-0336-000, -001, -002, -003, or -004
`40-0336-000, -001, -002, -003, or -004
`
`40-0456-004
`40-0456-004
`40-0456-004
`40-0502-001, -002, -003, or -004
`40-0476-001
`40-0483-001, -002, -004, or -005
`40-0483-001, -004, or -005
`40-0502-004
`40-0502-004
`
`There are three different versions of the ASIC on the 3C905B-TX NIC. These three
`ASICs function identically except for the PHY portion, which is proprietary to each
`ASIC. As a result, the MII register layouts differ on the three ASICs. See Chapter 11
`for information on the MII register layouts of each ASIC.
`
`PALO ALTO NETWORKS Exhibit 1014 Page 27
`
`

`
`28
`
`CHAPTER 2: ARCHITECTURE
`
`Hardware Identification
`
`The ASIC on a 3C90x or 3C90xB NIC can be identified by the number that is
`inscribed on the ASIC. See Table 3 for a list of ASIC numbers.
`
`Software Identification
`
`The ASIC on a 3C90xB NIC can be identified through software by viewing the
`chip/Vendor bit in the RevisionId register.
`
`The following values in the chip/Vendor bit identify the ASIC on the NIC:
`
`chip/Vendor Bit Value
`000
`001
`011
`
`ASIC
`3C90xB NICs with the 40-0502-00x ASIC
`3C90xB NICs with the 40-0483-00x ASIC
`3C90xB NICs with the 40-0476-001 ASIC
`
`For more information on the RevisionId register, see “RevisionId” in Chapter 4.
`
`3C90x NICs
`ASIC Diagram
`
`The ASIC used on the 3C90x NICs is shown in Figure 13.
`
`Figure 13 3C90x NICs ASIC Block Diagram
`
`Upload/
`download
`engine
`
`TX/RX
`FIFO block
`
`Mgmt.
`statistics
`
`PCI
`bus
`controller
`
`Transmit/
`receive
`FIFO
`control
`
`10/100
`Mbps
`Ethernet
`MAC
`
`10BASE-T/AUI
`interface
`
`100 Mbps
`signaling
`
`MII
`control
`
`External memory interface
`
`40-0336-00x ASIC
`
`3C90xB NICs
`ASIC Diagrams
`
`The ASICs used by the 3C90xB NICs are shown in Figure 14 through Figure 19.
`
`Figure 14 3C900B NICs ASIC Block Diagram
`
`PCI
`bus
`controller
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`Mgmt.
`statistics
`
`10 Mbps
`Ethernet
`MAC
`
`Auto-
`negotiation
`
`10BASE-T/AUI
`interface
`
`40-0456-004 ASIC
`
`PALO ALTO NETWORKS Exhibit 1014 Page 28
`
`

`
`ASICs
`
`29
`
`Figure 15 3C905B-TX NIC—40-0502-00x ASIC Block Diagram
`
`Mgmt.
`statistics
`
`Auto-
`negotiation
`
`PCI
`bus
`controller
`
`Download
`engine
`
`Transmit
`FIFO
`
`Upload
`engine
`
`Receive
`FIFO
`
`10/100
`Mbps
`Ethernet
`MAC
`
`10BASE-T/AUI
`interface
`
`100 Mbps
`signaling
`
`MII
`control
`
`40-0502-00x ASIC
`
`Figure 16 3C905B-TX NIC—40-0476-001 AS

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket