Intelメーカー82558の使用説明書/サービス説明書
ページ先へ移動 of 175
Intel 8255x 10/100 Mbp s Ethernet Controller Family Open Source Software Developer Manual January 2006 Revision 1.3.
ii Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Information in thi s document is pro vided in connection with Int el ® products.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual iii Contents Contents 1 Introduction . ................ ................ ............. ................ ................. ............ ................. ........
iv Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Contents 5 EEPROM Interface ................... ............. ................ ................ ............. ................ ................ .......... 25 6 Host Software Interface .
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual v Contents 7.3.6 100BASE-TX Receive Error Frame Counter: Register 21 ........ ................ ........... 127 7.3.7 Receive Symbol Error Counter: Register 22 ..
vi Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Contents 20 Transmit Buffer Descript or ...... ............. ................ ................ ................ ................ ................ ....... 85 21 Load Microcode Command Format .
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual vii Contents 40 82559 Configuration Byte Map .. ................ ................. ................ ................... ................ ........... .. 65 41 82557 Dual-Port FIFO Settings - Transmit .
viii Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Contents Revision History Date Revision Description January 2006 1.3 • Added Section 2.2.3.2., “82551ER Features.” • Modified the title of Appendix B.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 1 Introduction 1 This document is intended for use as a soft ware technical reference manual for the Intel ® .
2 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Introduction 1.2 Document Co nventions 1.2.1 Device References This document encompasses inform ation for all members of the Inte l Fast Ethernet controllers: 82551, 82550, 82559, 82558, 82 557 and the 825 62.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 3 Introduction • Dword alignment: Dword align ment implies that th e phys ical addresses may only be aligned on 4-byte boundaries. In other words, the last nibble of the address may only end in 0h, 4h , 8h, or Ch.
4 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Introduction.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 5 Adapter and Controller Overview 2 Adapters based on an Intel ® 8255x device support the ANSI/IEEE 802.3u standard for 100BASE- TX (100 Mbps operat ion) a nd 10BASE-T (10 Mbps operatio n).
6 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Adapter and Controller Overvie w 2.2 Intel Fast Ethernet MAC Features 2.2.1 82557 Features • Glueless 32-bit, zero wait state PCI bus master interface compliant with PCI Specification, Revision 2.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 7 Adapter and Controller Overview • Optional Flash support up to 64 Kbytes. (Th e 82557 is capable of larger Flash size support.) 2.2.3 82559, 82550, 8255 1, and 82562 Features The 82559, 82 550, and 82551 dev ices are supersets of th e 82557 and 8255 8.
8 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Adapter and Controller Overvie w.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 9 Power Management Interface 3 The 82557 has no power management supp ort. The 82558 added support for the Advanced Configuration and Power Interface (ACPI) Speci fication and limited su pport for W ake on LAN (WOL).
10 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Power Management Inter face 3.4 Link Operation In the D0 state, the device maintains an active link.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 11 PCI Interface 4 4.1 PCI Configuration S p ace One of the most important functions for enabling superior configurability and ease of use is the ability to relocate PCI devices in the address spaces.
12 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual PCI Interface 4.1.1 V endor ID (Offset 0) This field identifies the device manufacturer .
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 13 PCI Interface 4.1.5 Revision (Offset 8) This register specifies a device specific revision identi fier . For the 82557 C-Step, 82558, and 82559, this field may be automatical ly loaded from the EEPROM at power on or upon the asserti on of a PCI reset.
14 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual PCI Interface 4.1.6 Class Code (Offset 9) The class code, 020000h, identifies the device as an Ethernet adapter . 4.1.7 Cache Line Size (Offset C) This register specifies the system cache line size in units of 32-bit words and can be read or written to.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 15 PCI Interface 4.1.10 Built in Self T est (Offset F) This optional register is used for contro l and status of Built in Self T est (BIST). This register is hard-wired to 0 indicating th at the devices do not support BIST .
16 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual PCI Interface The 8255x requires one BAR for I/O mapping and one BAR for memory mappin g of these registers anywhere within the 32-bit memory ad dress space.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 17 PCI Interface the Flash. The 82557 implements th is register regardless of the presence or absence of a Flash component on the adapter . For the 82558 and later Fast Ethernet controllers, this register is only implemented if a bit is set in the EEPROM.
18 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual PCI Interface 4.1.17 Max_Lat / Min_Gnt (Offset 3E) These registers specify the device settings for Lat ency T imer values. For both regi sters, the value specifies a period of time in units of ¼ micros econd.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 19 PCI Interface 4.1.18.4 Power Management Control/S t atus (Offset E0) The Power Management Control/Status Register (PMCSR) is used to determine and change the current power state of the device.
20 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual PCI Interface While wake-up events are not allowed in the D0 power state, hardware does not automatically preclude this functionality .
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 21 PCI Interface 4.1.18.5 Ethernet Power Consum ption Register s (Offset E2h) The Data Register is an 8-bit read-only register prov iding a m echanism for the device to report state dependent maximum power con sumption and heat dissipation.
22 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual PCI Interface T able 7. Generated PCI Comma nds The controllers do not generate I/O commands, Interru pt Acknowledge cycles, or Configuration cycles. The controllers also do not support Dual Address Cycle (DAC).
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 23 PCI Interface device may start the next cycle using either MW or MWI according to the conditions listed above.
24 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual PCI Interface.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 25 EEPROM Interface 5 The 8255x has a local memory interface that provides access to a serial EEPROM and optional Flash device. All controllers im plement these interfaces using mu ltip lexed pins.
26 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual EEPROM Interface.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 27 Host Software Interface 6 The 8255x LAN con trollers establis h a shared memory communication system with the host CPU. Software controls the device by writing and readi ng data to and from this s hared memory space.
28 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface The CBL consists of a linked list of individual action commands in st ructures called Command Blocks (CBs). The CBs contain command parameters and status of the action comman ds.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 29 Host Software Interface 6.2 Initializing the LAN Controller A hardware or software reset prepares the 8255 x for normal operation.
30 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface T o support linear addressing, the devi ce should be programmed as follows: • Load a value of 00000000h into the CU base usin g the Load CU Base Address SCB command.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 31 Host Software Interface As the table above i ndicates, the 82 55x have the sam e alignment restrictio ns with one exception: The 82558, and 82559 hav e a limited capability to suppo rt odd byte aligned buffers.
32 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface • SCB Command W ord. This register is where software writes commands for the CU and RU. • SCB Status W ord. The device place s the CU and RU status for th e CPU to read in this word.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 33 Host Software Interface preferred method of accessing the CSR. Some bridges may not properly transfer data in memory mapped mode and it may be necessary to have an I/O backup method if the memo ry method does not work.
34 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface — A flow control pause frame was received (FCP Interrupt). This do es not apply to the 82557. Note: TNO interrupts should be avoided.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 35 Host Software Interface malfunctions. It is simply ignored by the dev ice. Also, any 0 bits in the interrupt acknow ledge command have n o effect, whether the interrup t is pending or n ot.
36 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface Note: The SCB Status word is not updated imm ediately in response to SCB commands. For example, the CU status will remain in the idle state for a period of time after the C U start command is issued.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 37 Host Software Interface When software wants to issue an action command, it should write to the Command b yte. The CUC and RUC fields of the Command by te specify the actions to be performed by the 82 55x.
38 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface Bits 23:20 CUC This field contains the CU Command. V alid values for this field a re: 0000 NOP . The no operation command does not affect the current state of the unit.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 39 Host Software Interface 6.3.2.3 SCB General Pointer The SCB General Pointer i s a 32-bit entity , w hich po ints to variou s data structu res depending on the command in the CUC or RUC fi eld.
40 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.3.2.4 S t atistical Counters The 8255x provides i nformation for network manageme nt by providing on-ch ip statistical counters that track a variety of events associated with both transmit and receive.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 41 Host Software Interface 28 T ran smit multiple collisions. This counter contains the number of transmitted frames that encountered more than one collision. 32 T ran smit total collisions.
42 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface As the above table indicates, the 8255x track of 16 dif ferent statistics. However, the 82558 also maintains three addit ional statistics (lightly shaded in the abov e table) for a total of 19 co unters.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 43 Host Software Interface 3. W rite zeros to the last Dword in this area. This can be done before or after step 2. 4. W rite the Dump Statistical Counters or D ump and Reset Statistical Counters co mmand into the CUC field in the SCB.
44 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.3.3.1 PORT Sof tware Reset The Port Software Reset is synonymous with the so ftware reset and is used to issue a complete reset to the device.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 45 Host Software Interface Note: The self-test does not generate an interrupt or similar ind icator to the host CPU upon completion.
46 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface The serial EEPROM or equivalent integrated ci rcuit (IC) stores configuration data for the controller and the adapter . The EEPROM is a seri al in and serial out device.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 47 Host Software Interface 6.3.4.2 Sof tware Determin ation of EEPROM Size T o determine the size of the EEPROM, software may use the following steps.
48 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.3.4.3 Sof tware Read Access from the EEPROM T o read from the EEPROM, software is required to perform the following steps. The example is a read from address 02h (0000 0010b).
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 49 Host Software Interface 6.3.4.4 Sof tware Writ e Access to the EEPROM W rite access to the EEPROM is similar to the read access outlined above, with the differences of a write opcode an d step 4: 1.
50 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface The MII Management Interface allows software to have direct control over a MII compatible PHY through a control register in the device.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 51 Host Software Interface b. Interrupt Enable (bit 29) = 1 or 0 c. Opcode (bits 27:26) = 01b (writ e) d. PHY Add = the PHY addr ess from the MDI register e. RegAdd = the register addr ess of the specific register to be accessed (0 through 31) f.
52 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface to increase performance by decreasing NOS receive latencies. However , most software early interrupt schemes would increase CPU uti lization and software complexity .
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 53 Host Software Interface words before the end of the frame.
54 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface • Bits 23:21 - Reserved. These bits are reserved. • Bit 20 - FC Paused Low . This read only bit is an indicati on of the device flow control state.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 55 Host Software Interface The PMDR has evolved over t ime in the various In tel Fast Ethernet control lers. The PMDR bits for the 82558 and 82559 are described below .
56 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.3.10 General Control Regis ter The General Control register provides contro l over some general purpose features in the 82559. It is an 8-bit field at offset 1Ch of the CSR.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 57 Host Software Interface 6.4 Shared Memory S tructures The 8255x shared memory structures consist of the Command Block List (CBL) and the Receive Frame Area (RF A) and are controlled by the SCB por tion of the CSR.
58 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.4.1.1 General Ac tion Command Format The format common to all actio n commands and the algorithms for begin ning and completing th e execution (also common to all acti on commands) is described below .
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 59 Host Software Interface The following sequence is performed by the CU at the completion of execution of an action command : 1. The devices writes command specific status to th e status word of the cu rrent CB (usually the C and OK bits are written to).
60 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface After reading the command and determining it is a NOP , the device CU performs the following sequence: 1. Begins execution of the NOP action command.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 61 Host Software Interface The individual address is transferred by the tr ansmi t DMA through the transmit FIFO to the execution machine in the CSMA/CD mo dule.
62 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface The individual bit fields of the con figure co mmand is another area where there are numerous differences between the controllers (82557, 82 558, 825 59, etc.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 63 Host Software Interface 1 8 11110 Receive CRC T ransfer Padding S tripping 19 FDX Pin Enable Force FDX 000000 20 0 Multiple IA 111111 2 1 0000 Multicast All 101 T able 38.
64 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface Note: The shaded bits in the table above have dif ferent meaning for the 82558 B-step.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 65 Host Software Interface 6.4.2.3.1 Configuration Parameters The interpretation of the fields fr om t he configuration byt e maps are: • BYTE 0.
66 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface Bits 5:0 - Byte Count. The byte count indicates the number of Command Block bytes to be configured (and is always included in the count).
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 67 Host Software Interface T able 42. 82557 Dual-Port FIFO Settings - Receive Configuration V alue (Nibble Wid.
68 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface • BYTE 2: Adaptive IFS. Th is byte indicates the minimum number of PCI clocks counted between sending two transmit frames on the wire.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 69 Host Software Interface systems that are extremely cache line oriented . More information of the read alignment capability is detailed in Section 4.2.2, “Read Align” .
70 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface no other intern al DMA channels are requesti ng a transfer , the tran smit DMA may perform an extended PCI burst. In order for this counter to be enabled, the DMA maximum byte count enable bit (byte 5, bit 7) must be set.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 71 Host Software Interface — Bit 4 - Extended T ransmit CB (TxCB). This bit is reserved on the 82557 and should be set to 1. However , for the 82558 or 82559, it determines the ty pe of TxCB that is to be used by the device.
72 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface Default - 0. Recommended - 0. — Bit 0 - Late SCB = Late SCB Update. This bit is reserved on the 82558 and 82559 and should be set to 0 on those devices.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 73 Host Software Interface 0 (00) = No re-transmission . If a transmitted frame encounters an underrun it will not be re-transmitted and the status indicating that the transmission failed will be returned and counted in the transmit underrun counter .
74 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface device transfers data to and from the link. So ftware should alway s set this bit to 0 when it is issuing a configure command with more than 8 bytes.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 75 Host Software Interface Default - 0 (off). Recommended - 0. VLAN TCO: On the 82559, this bit activates VL AN capability filter ing of received TCO packets at nominal D0 state.
76 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface Default - 1. Recommended - Depends on the NOS and driver environ ment. • BYTE 1 1. — Bits 2:0 - Linear Priority . These bits are reserved on the 82558 and 82559 an d should be set to 000b on those devices.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 77 Host Software Interface Similarly , the value at offset 14 of the configuration block is co mpared to the byte at offset 40 in ARP frames without a VLAN header and to byte 44 in ARP frames with a VLAN header .
78 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface Default - 0 (disabled). Recommended - 0. — Bit 1 - Broadcast Disable. When this bit is set, it disables the de vice from receiving any frames with a broadcast address (address of all 1s).
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 79 Host Software Interface byte (7Eh) will be transmit ted to pad (in other words, fill) the minimum frame length . The CRC will include the padded bytes. If padding is disabled, no padding bytes will be added even if the frame is a short frame.
80 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface — Bit 6 - Force Full Duplex. This bit forces the device to operate in full duplex mode. T ransmit and receive execution can be act ive simultaneously .
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 81 Host Software Interface Recommended - 0. — Bit 0 - Address W ake-up (82558 A-step); IA Ma tch W ake Enable (82558 B-step). This bit is reserved on the 82557 and 82559 and should be set to 0 on those devices.
82 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface In the case of a port selective reset, the execution machine maintain s configuration registers for the device. In the case of a port software reset or a hardware reset, the devi ce reverts to the default values.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 83 Host Software Interface The transmit DMA transfers the list of multicast addresses from memory to the execution machine through the transm it FIFO. The CU p erforms the fol lowing sequence: 1.
84 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface Link Address This is the 32-bit address of the next co mmand block. It is added to the CU base to obtain the actual address. EL (Bit 31) If this bit is set to one, it indicates t hat this command block is the last one on the CBL.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 85 Host Software Interface The 82558 and 82559 also offer a more advan ce transmit command block. When they are configured to use extended TCBs, the device r eads an 8-Dword TCB from host memory into its internal registers instead of the standard 4-Dword TCB.
86 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.4.2.5. 1 Dynam ic TBD Mode Note: Dynamic TBD mode only exists in the 82558 and 82559 devices. It is not a valid m ode for the 82557.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 87 Host Software Interface 5. Fetch data if the transmit buffer pointer is zer o (invalid) in the second TBD or poll the TBD. 6. Finish the t ransmission if th e EL bit is set .
88 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface While the CU pre-fetches the address and byte count of on e buffer , the transmit DMA is transferring the previous buffer to the transmit byte machine.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 89 Host Software Interface 2. The SFD field is transferred. 3. Start CRC calculation. 4. Read and transfer the 6 destinati on address bytes from the transmit FIFO.
90 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface • The device received a frame and generated a receive interrupt. If neither of these events occurred, the controll er generates a CNA interrupt when the CID time interval has elapsed.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 91 Host Software Interface The load microcode command instruct s the device to download microcode data from host memory into its internal microcode RAM.
92 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface Configuration parameters and content s of other registers are transferre d from the CSMA/CD unit through the status FIFO by the Command Unit to memory .
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 93 Host Software Interface 5 FEXT RCV_R D Current Address Register (high) 6 FEXT RCV_R D Base Address Register.
94 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 43 Individual Address Register 5 44 Individual Address Register 6 45 Transmit S t.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 95 Host Software Interface T able 51. Dump Data Dwords (20-1 48) Dword Byte 3 Byte 2 Byte 1 20 – 29 Reserved.
96 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 88 Micromachine Register File 29 89 Micromachine Register File 28 90 Micromachine.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 97 Host Software Interface 6.4.2.8 Diagnose (1 1 1b) The diagnose command triggers an internal self-test procedure that checks the internal device hardware. Its format i s illustrated below .
98 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface The diagnose command checks the foll owing internal device circuitry: • Exponential backoff random number generator (linear feedback shift register).
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 99 Host Software Interface During Phase 1, the linear feedback shift register (LFSR), exponential backoff time-out, slot time, and collision counters are checked.
100 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.4.3.1. 2 Recei ve Frame Des criptor F ormat Figure 24.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 101 Host Software Interface Link Address The link address is a 32-bit offset to the next RFD. It is added to the RU base. The link address of the last frame can be used to form a cyclical lin k to the first RFD.
102 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.4.3.2 Initial Recei ve Frame Area S tructure T o enable the device to receive frames, so ftware must setup th e following structure: 1.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 103 Host Software Interface For every frame, the RU configures a RFD in memory . The load ing of each buf fer is done by the receive DMA in parallel with pr e-fetching the next buffer by the RU.
104 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 4. If the RU start request and S bits are set, a new RFD is created and the state is changed to suspended. 5. If the RU state is not ready , frames should be discarded.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 105 Host Software Interface Example 2. Numerical Calcula tion Assume the following incoming packet: SA DA T yp.
106 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.5.3 Command Unit Control The CU is the 8255x logical unit that executes action commands from the command block list (CBL). This section describes how software controls the execution of action commands.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 107 Host Software Interface 6.5.3.2 CU Resume Command The CU Resume (CU_RESUME) comm and resumes CU operation.
108 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.5.4 Receive Unit Control The receive unit (RU) is the logi cal unit that receives frames and st ores them in memory . It uses free buffers and descriptors prepar ed by the CPU.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 109 Host Software Interface Frames arrive at the device indepe ndent of the state of the RU. When a frame is arri ving, the 8255x is referred to as actively receivi ng, even when the RU is not in the ready state and the frame is being discar ded.
110 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface 6.5.4.2 RU Resume Command The RU Resume (RU_RESUME) command resume s frame reception.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 111 Host Software Interface 6.6.1 PHY Based Flow Control The 82558 supports t he PHY based flow co ntrol scheme known as the “Bay Flow Control” scheme. This scheme is supported only when the 82558 is op erating using its internal PHY TX unit.
112 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface A flow control frame is identified by a special type field (bytes transmitted left to right): 88 to 80.
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 113 Host Software Interface Flow control is set by three configuration bits: on e for transmit and two fo r receive flow control. The default setting i s off ( Section 6.
114 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface immediately . If the pause time (from the device) has expired, the controller starts monitorin g the FIFO again to determine if a new pause command should be sent .
Intel 8255x 10/100 Mbps Ethernet Cont roller Family Open Source Software Developer Manual 115 Host Software Interface 6.6.3 Priority Aw are Frame Based Flow Control The 82558 and l ater generation contro llers have the abili ty to respond to priority aware frame based flow control frames.
116 Intel 8255x 10/100 Mbps Eth ernet Controller Fami ly Open Source Software Developer Man ual Host Software Interface The priority field is the field that differentiates between pause and pause lo w frames. Only the three least significant bits in this byte are considered.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 117 Physical Layer Interface 7 Intel Fast Ethernet adapters all have a physical layer (PHY) com ponent that interfaces the network adapter to the wire. The MAC component of the a dapter interfaces to the PHY component via the IEEE Media Independent Interface (MII).
118 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Physical Layer Interface This structure allows a controller , or other manageme nt hardware, to query t he PHY for the st atus of the link or configure the PHY to one of many modes.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 119 Physical Layer Interface The individual registers are defined in th e following subsections using the followi ng con.
120 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Physical Layer Interface 7.2.2 St atus Register: Register 1 For maximum accuracy of link status, the Auto-Negat iation Complete bit (bit 5), shou ld be polled at a continuous i nterval of at least 300 mi lliseconds.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 121 Physical Layer Interface 7.2.3 Identification Registers: Registers 2 and 3 The 32-bit ID register provides a mechan ism for software to dete rmine which PHY is present.
122 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Physical Layer Interface 7.2.4 Auto-Negotiation Advertise ment Register: Register 4 This register contains the advertis ement ability of the PHY .
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 123 Physical Layer Interface NOTE: The Auto-Negotiation Link Partner Ability Registe r is read only . 7.2.6 Auto-Negotiation Exp ansion Register: Registe r 6 Register 6 contains supplemental informa tion used b y the auto-negoti ation process.
124 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Physical Layer Interface 7.3 Intel 82555 Sp ecific Registers Note: The Intel MAC/PHY silicon devices (82558, 82559, 82550, and 8255 1) use the 82555 as the base for their integrated PHY units.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 125 Physical Layer Interface 7.3.2 Special Control Register: Register 17 Bit Name R / W Description Default 15 Scrambler.
126 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Physical Layer Interface 7.3.3 Clock Synthesis T est and Control Register: Register 18 7.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 127 Physical Layer Interface 7.3.6 100BASE-TX Receive Error Frame Counter: Register 21 7.3.7 Receive Symbol Error Counter: Register 22 7.3.8 100BASE-TX Receive EOF Error Counter: Register 23 7.
128 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Physical Layer Interface 7.3.1 1 Equalizer Control and St atus Register: Register 26 This register is used to control and monito r the operation of the 825 5x PHY module equalizer (excluding the 82557 since it does not have an integrated PHY unit).
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 129 Physical Layer Interface 7.3.12 Special Control Register: Register 27 01 1 Write to ASD configuration register 2 [9] Breakdown ASD counters. [8] Selects signal detections or transitions.
130 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Physical Layer Interface 7.4 Auto-Negotiation Functionality The PHY units of the 8255x devices (excluding the 8255 7) all support auto-negotiation (N-W ay).
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 131 Physical Layer Interface T o detect the correct technology , the two register fields are AND ed together to obtain the highest common denom inator .
132 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Physical Layer Interface 7.5 V endor-Specific PHY Programming The Intel ® PRO/100B adapters are designed to support Intel and third-party PHY s using TX and T4 PHYs.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 133 Physical Layer Interface 7.5.2.1 PHY St and Alone (PHYSA) Mode Only the 82558 su pports a special mode where it s PHY unit can be used w ith an external contro ller through an MII-like interface.
134 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Physical Layer Interface.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 135 Programming Recommendations 8 8.1 Adapter Initialization The initialization code can be broadly split in the followi.
136 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Programming Recommendations 8.1.3 NOS Specific Initialization Software should be written so that NOS specific in terface routines call lower level driver routines. This will enable code re-use.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 137 Programming Recommendations 8.4 Interrupt Processing The 8255x supports l atched level triggered interrupts. Interrupts can be shared in the system if the software and NOS support this mechan ism.
138 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Programming Recommendations.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 139 W a ke-up Functionality A Note: This appendix applies only to the 82558 and subsequ ent devices.
140 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Wake- up Functionality A.2 Low Power Modes The device wake-up capabilities require internal PHY and CSMA block s to be fully active.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 141 Wake-u p Functionality A.3.1 Auxiliary Power Support The LIST A T signal should be 0 after a hardware reset.
142 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Wake- up Functionality A.4.1 Magic Packet* The 82558 and later generation con trollers (except the 82559ER) are capable of generating a wake- up event upon reception of a Magic Packet.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 143 Wake-u p Functionality The controller only filters the shaded fields in the frame format ab ove.
144 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Wake- up Functionality A.5 Link St atus Event The controller may be configured to wake up th e system on link disconn ect and conn ect events. The link status wake-up enable bit was added to the configuration com mand for the 82558 and later generation devices.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 145 Wake-u p Functionality • Multiple IP address recognition A.6.1 Flexible Filtering T erminology Filter . A filter is a set of a signature and segments generated for a specific frame format.
146 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Wake- up Functionality A.6.3 W ake-up Packet S torage The device uses its internal registers for packet storage during power down mode. Only the first 124 bytes of a frame may be filtered and stored by the device.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 147 Wake-u p Functionality — Pre-Defined Filters. The 82559 contains pre-defin ed filters for both Ethern et T ype II and 802.2 snap. The 82559 distinguishes between these two types accord ing to the MAC T ype/Length field.
148 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Wake- up Functionality There are two groups of pre-defined filters: — The NBH, ARP and IA-T ype pre-defined filters each use the word match field. — The IA-Match and TCO pre- defined filters do not use the word match field.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 149 Wake-u p Functionality • Flexible Filter Filter type: Filter type CRC word Filter mask (up to 4 Dwords: DW0, DW1, DW2, DW3) 31 30 29 28 27 26 25 24 EL FIX=0 MLEN Reserved (0) EL The end of list bit indicates if this filter is the last active one.
150 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Wake- up Functionality A.7.2 CRC Word calculation of a Flexible Filter A.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 151 Wake-u p Functionality The sequence of events after a Dump W ake -up command that the 82559 performs are: 1. W rite the byte count fiel d at Dword 1. This fi eld contains the actual num ber of bytes posted in the host memory .
152 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Wake- up Functionality CLK is inactive and 10 mA if it i s activ e. The deep power down state due to PME disable is enabled in the EEPROM. A.7.4.2 Power Down with W ake-up Cap abilities The 82559 provides wake-up capabilities at all power states.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 153 Wake-u p Functionality 6. The device statistic counters ar e corrupted duri ng power down st ate. Therefore, the driver should clear the statistic counters by first issuin g load dump counters address and then a dump and reset statistic counters.
154 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual Wake- up Functionality.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 155 82550 and 82551QM Specific Information B This appendix appl ies to the Intel ® 82 550 and 82551QM devices. B.1 IPCB The IP command block (IPCB) is new and used to activate the ne w offloading features of the 82550 and 82551.
156 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual 82550 and 82551QM Sp ecific Information The location and definition of the IPCB fiel ds are summarized in the following table.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 157 82550 and 82 551QM Specific Informatio n Note: Using software parsing is only allowed with le gal TCP/IP or UDP/IP packets.
158 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual 82550 and 82551QM Sp ecific Information modes of operation. For instance, the driver must guarantee prop er values for the Maxi mum TCP Payload in Large Send mode and VLAN length inclusion.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 159 82550 and 82 551QM Specific Informatio n B.2.2 IPCB Field Assignment The mode bits in the IP Activation field contro l the checksum operation of the transmit command. • IPv4 Checksum (1bit).
160 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual 82550 and 82551QM Sp ecific Information first byte of the TCP or UDP header . The cont roller reads this parameter when Hardware Parsing is clear and TC P/UDP checksum is set.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 161 82550 and 82 551QM Specific Informatio n Note: The partial checksum requi red by the 8255 0 is not the partial checksum passed by the Microsoft* IP stack per Microsoft o ffloading specification, v0.
162 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual 82550 and 82551QM Sp ecific Information Note: T o use Large Send, the 82550 should be configured to use dynamic T ransmit Buffer Descriptors (TBDs).
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 163 82550 and 82 551QM Specific Informatio n Note: If the IPv4 checksum and TCP/UDP checksu m are clear (checksum of fload is not requested), frames will be transmit te d without computing and replacin g the checksum fields conten t.
164 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual 82550 and 82551QM Sp ecific Information — Fragment of fset equals 0. This is expected but not checked by hardware. — IP options are not altered by ha rdware if they are present.
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 165 82550 and 82 551QM Specific Informatio n When the headers are finished, they are subject to checksum for processing. The rest of the transmission process is similar to transmissio n of a small send.
166 10/100 Mbps Ethernet Con troller Family Open Source Software De veloper Manual 82550 and 82551QM Sp ecific Information way , it may read an extra TBD (o r 8 b ytes) after the last v alid TB D. The driver is responsible fo r allocating enough memory for the TBD array .
10/100 Mbps Ether net Controller Family Open Source Softwar e Developer Manu al 167 82550 and 82 551QM Specific Informatio n B.4.1.1 Frame T yp es • Ethernet v2 . If the Ethernet v2 type field equals 0800h, the first byte of IP header is expected right after the optiona l VLAN field.
デバイスIntel 82558の購入後に(又は購入する前であっても)重要なポイントは、説明書をよく読むことです。その単純な理由はいくつかあります:
Intel 82558をまだ購入していないなら、この製品の基本情報を理解する良い機会です。まずは上にある説明書の最初のページをご覧ください。そこにはIntel 82558の技術情報の概要が記載されているはずです。デバイスがあなたのニーズを満たすかどうかは、ここで確認しましょう。Intel 82558の取扱説明書の次のページをよく読むことにより、製品の全機能やその取り扱いに関する情報を知ることができます。Intel 82558で得られた情報は、きっとあなたの購入の決断を手助けしてくれることでしょう。
Intel 82558を既にお持ちだが、まだ読んでいない場合は、上記の理由によりそれを行うべきです。そうすることにより機能を適切に使用しているか、又はIntel 82558の不適切な取り扱いによりその寿命を短くする危険を犯していないかどうかを知ることができます。
ですが、ユーザガイドが果たす重要な役割の一つは、Intel 82558に関する問題の解決を支援することです。そこにはほとんどの場合、トラブルシューティング、すなわちIntel 82558デバイスで最もよく起こりうる故障・不良とそれらの対処法についてのアドバイスを見つけることができるはずです。たとえ問題を解決できなかった場合でも、説明書にはカスタマー・サービスセンター又は最寄りのサービスセンターへの問い合わせ先等、次の対処法についての指示があるはずです。