The Datasheet Archive - 100 Million Datasheets from 7500 Manufacturers.    


Datasheet Search Engine   
 
Part # or Description: • 5V RS232 Driver • 2SC5066* • "Real Time Clock" • "USB connector" • "blue led" 5mm • 10 watt zener diode • 2N3055* motorola
 
Search Tip: Try entering the part number only. Include a wildcard (eg. lm317* or 1n4148*)

 

 

PCnetTM-PCI Single-Chip Full-Duplex Ethernet Controller Local Product


Datasheet Thumbnail

  

Download PDF



Top Searches for this datasheet



Am79C970A
PCnetTM-PCI Single-Chip Full-Duplex Ethernet Controller Local Product
DISTINCTIVE CHARACTERISTICS
Single-chip Ethernet controller Peripheral Component Interconnect (PCI) local Supports 8802-3 (IEEE/ANSI 802.3) Ethernet standards Direct interface local (Revision compliant) High-performance 32-bit Master architecture with integrated buffer management unit utilization Software-compatible with PCnet family, LANCE/C-LANCE, Am79C900 ILACC register descriptor architecture Compatible with PCnet family driver software Full-duplex operation increased network bandwidth endian little endian byte alignments supported signaling interface Low-power CMOS design with sleep modes allows reduced power consumption critical battery-powered applications Green Integrated Magic Packetsupport remote wake Green Individual 272-byte transmit 256-byte receive FIFOs provide frame buffering increased system latency support following features: Automatic retransmission with FIFO reload Automatic receive stripping transmit padding (individually programmable) Automatic runt frame rejection Automatic selection received collision frames Microwire EEPROM interface supports jumperless design provides through-chip programming Supports optional Boot PROM diskless node applications Look-Ahead Packet Processing (LAPP) data handling technique reduces system overhead allowing protocol analysis begin before receive frame Integrated Manchester encoder/decoder Provides integrated attachment unit interface (AUI) 10BASE-T transceiver with automatic port selection Automatic twisted-pair receive polarity detection automatic correction receive polarity Optional byte padding long-word boundary receive Dynamic transmit generation programmable frame-by-frame basis Internal/external loopback capabilities Supports following types network interfaces: external 10BASE-2, 10BASE-5, 10BASE-T, 10BASE-F Internal 10BASE-T transceiver with Smart Squelch twisted-pair medium JTAG Boundary Scan (IEEE 1149.1) test access port interface NAND Tree test mode board-level production connectivity test Supports LANCE general purpose serial interface (GPSI) Supports external address detection interface (EADI) programmable LEDs status indication 132-pin PQFP 144-pin TQFP packages Support operation industrial temperature range (-40°C +85°C) available both packages
GENERAL DESCRIPTION
32-bit PCnet-PCI single-chip full-duplex Ethernet controller highly integrated Ethernet system solution designed address high-performance system application requirements. flexible bus-mastering device
Publication# 19436 Rev: Amendment/0 Issue Date: March 1999
that used application, including networkready PCs, printers, modems, bridge/router designs. bus-master architecture provides high data throughput system system 1-611
This document contains information product under development Advanced Micro Devices. information intended help evaluate this product. reserves right change discontinue work this proposed product without notice.
utilization. PCnet-PCI controller fabricated with AMD's advanced low-power CMOS process provide operating standby current power-sensitive applications. PCnet-PCI controller complete Ethernet node integrated into single VLSI device. contains interface unit, buffer management unit, IEEE 802.3-compliant media access control (MAC) function, individual 272-byte transmit 256-byte receive FIFOs, IEEE 802.3-compliant attachment unit interface (AUI) twisted-pair transceiver medium attachment unit (10BASE-T MAU) that both operate either half-duplex full-duplex mode. PCnet-PCI controller register-compatible with LANCE (Am7990) Ethernet controller, C-LANCE (Am79C90) Ethernet controller, ILACC (Am79C900) Ethernet controller, Ethernet controllers PCnet family, including PCnet-ISA controller (Am79C960), PCnet-ISA+ controller (Am79C961), PCnet-ISA controller (Am79C961A), PCnet-32 controller (Am79C965), PCnet-PCI controller (Am79970), PCnet-SCSI controller (Am79C974). buffer management unit supports C-LANCE, ILACC, PCnet descriptor software models. PCnet-PCI controller software compatible with Novell® NE2100 NE1500 Ethernet adapter card architectures. 32-bit multiplexed interface unit provides direct interface local applications, simplifying design Ethernet node system. PCnet-PCI controller provides complete interface expansion ROM, allowing add-on card designs with only single load interface pin. With built-in support both little endian byte alignment, this controller also addresses proprietary non-PC applications. PCnet-PCI controller's advanced CMOS design allows interface connected either signaling environment. Both NAND Tree JTAG test interfaces provided. PCnet-PCI controller supports automatic configuration configuration space. Additional PCnet-PCI configuration parameters, including unique IEEE physical address, read from external non-volatile memory (microwire EEPROM) immediately following system reset. controller capability automatically select either port twisted-pair transceiver. Only interface active time. Both network interfaces programmed operate either halfduplex full-duplex mode. individual transmit receive FIFOs optimize system overhead, providing sufficient latency during frame transmission reception, minimizing intervention during normal network error recovery. integrated Manchester encoder/decoder (MENDEC) eliminates need external serial interface adapter (SIA) system. built-in general purpose serial interface (GPSI) allows MENDEC bypassed. addition, device provides programmable on-chip drivers transmit, receive, collision, receive polarity, link integrity, activity, jabber status. PCnet-PCI controller also provides external address detection interface (EADI) allow fast external hardware address filtering internetworking applications. power-sensitive applications where standby current desired, device incorporates sleep functions reduce overall system power consumption, excellent notebooks Green PCs. conjunction with these power modes, PCnet-PCI controller also integrated functions support Magic Packet, inexpensive technology that allows remote wakeup Green PCs. With rise embedded networking applications operating harsh environments where temperatures exceed normal commercial temperature window (0°C +70°C), industrial temperature (-40°C +85°C) version available both 132-pin PQFP 144-pin TQFP package. industrial temperature version PCnet-PCI Ethernet controller characterized across industrial temperature range (-40°C +85°C) within published power supply specification (4.75 5.25 i.e., VCC). Thus, conformance PCnet-PCI performance over this temperature range guaranteed design characterization monitor.
1-612
Am79C970A
BLOCK DIAGRAM
AD[31:00] C/BE[3:0] FRAME TRDY IRDY STOP LOCK IDSEL DEVSEL PERR SERR INTA NOUT SLEEP
DXCVR
FIFO 802.3 Core GPSI Port
Interface Unit
EADI Port FIFO Manchester Encoder/ Decoder (PLS) Port FIFO Control 10BASE-T
TXEN TXCLK TXDAT RXEN RXCLK RXDAT CLSN SRDCLK SF/BD XTAL1 XTAL2 DO+/DI +/CI+/TXD+/TXP+/RXD+/LNKST EECS EESK EEDI EEDO LED1 LED2 LED3 ERA[7:0] ERD[7:0] ERACLK EROE
Buffer Management Unit
Microwire EEPROM Interface
Control
JTAG Port Control
Expansion Interface
19436C-1
Am79C970A
1-613
TABLE CONTENTS
DISTINCTIVE CHARACTERISTICS 1-611 GENERAL DESCRIPTION 1-611 BLOCK DIAGRAM 1-613 CONNECTION DIAGRAM 1-621 ORDERING INFORMATION 1-623 DESIGNATIONS Listed Number Listed Group Listed Number Listed Group Listed Driver Type DESCRIPTION Interface Board Interface Microwire EEPROM Interface Expansion Interface Attachment Unit Interface Twisted Pair Interface General Purpose Serial Interface External Address Detection Interface IEEE 1149.1 Test Access Port Interface Test Interface Power Supply Pins BASIC FUNCTIONS System Interface Function Software Interface Network Interfaces DETAILED FUNCTIONS Slave Interface Unit Slave Configuration Transfers Slave Transfers Expansion Transfers Exclusive Access Slave Cycle Termination Disconnect When Busy Disconnect Burst Transfer Disconnect When Locked Parity Error Response Master Interface Unit Acquisition Master Transfers Basic Non-Burst Read Transfer Basic Burst Read Transfer Basic Non-Burst Write Transfer Basic Burst Write Transfer Target Initiated Termination Disconnect With Data Transfer 1-614 Am79C970A 1-624 1-624 1-625 1-627 1-628 1-630 1-631 1-631 1-633 1-634 1-635 1-635 1-635 1-635 1-636 1-636 1-637 1-637 1-638 1-638 1-638 1-638 1-639 1-639 1-639 1-641 1-641 1-644 1-644 1-644 1-646 1-648 1-649 1-651 1-651 1-652 1-652 1-653 1-654 1-655 1-657 1-657
1-658 1-659 1-660 1-660 1-661 1-662 1-663 1-664 1-665 1-667 1-671 1-671 1-672 1-675 1-675 1-675 1-676 1-676 1-676 1-678 1-679 1-680 1-681 1-681 1-681 1-681 1-682 1-682 1-682 1-683 1-684 1-684 1-684 1-685 1-685 1-686 1-686 1-686 1-686 1-686 1-686 1-687 1-688 1-688 1-689 1-689 1-689 1-689 1-690 1-690
Disconnect Without Data Transfer Target Abort Master Initiated Termination Preemption During Non-Burst Transaction Preemption During Burst Transaction Master Abort Parity Error Response Advanced Parity Error Handling Initialization Block Transfers Descriptor Transfers FIFO Transfers Non-Burst FIFO Transfers Burst FIFO Transfers BUFFER MANAGEMENT UNIT Initialization Re-Initialization Suspend Buffer Management Descriptor Rings Polling Transmit Descriptor Table Entry Receive Descriptor Table Entry Media Access Control Transmit Receive Message Data Encapsulation Framing Destination Address Handling Error Detection Media Access Management Medium Allocation Collision Handling TRANSMIT OPERATION Transmit Function Programming Automatic Generation Transmit Generation Transmit Exception Conditions Loss Carrier Late Collision Test Error Receive Operation Receive Function Programming Address Matching Automatic Stripping Receive Checking Receive Exception Conditions Loopback Operation GPSI Loopback Modes Loopback Modes T-MAU Loopback Modes Miscellaneous Loopback Features Magic Packet Mode
MANCHESTER ENCODER/DECODER 1-691 External Crystal Characteristics 1-691 External Clock Drive Characteristics 1-691 Am79C970A 1-615
PRELIMINARY 1-691 1-691 1-692 1-692 1-692 1-693 1-693 1-693 1-693 1-693 1-693 1-694 1-694 1-694 1-694 1-695 1-695 1-695 1-696 1-696 1-696 1-696 1-696 1-697 1-697 1-697 1-698 1-699 1-702 1-702 1-702 1-703 1-703 1-704 1-704 1-706 1-706 1-706 1-706 1-706 1-707 1-707 1-707 1-708 1-710 1-710 1-710 1-711 1-711 1-711 1-712 1-712 1-712 1-712 1-712
MENDEC Transmit Path Transmitter Timing Operation Receiver Path Input Signal Conditioning Clock Acquisition Tracking Carrier Tracking Message Data Decoding Jitter Tolerance Definition Attachment Unit Interface Differential Input Termination Collision Detection Twisted-Pair Transceiver Twisted Pair Transmit Function Twisted Pair Receive Function Link Test Function Polarity Detection Reversal Twisted Pair Interface Status Collision Detection Function Signal Quality Error Test Function Jabber Function Power Down 10BASE-T Interface Connection Full-Duplex Operation Full-Duplex Link Status Support General Purpose Serial Interface External Address Detection Interface Expansion Interface EEPROM Microwire Interface Automatic EEPROM Read Operation EEPROM Auto-Detection Direct Access Microwire Interface EEPROM-programmable Registers EEPROM Support Power Savings Modes IEEE 1149.1 Test Access Port Interface Boundary Scan Circuit Finite State Machine Supported Instructions Instruction Register Decoding Logic Boundary Scan Register Other Data Registers NAND Tree Testing Reset H_RESET S_RESET STOP Software Access Configuration Registers Resources Registers Address PROM Space Reset Register Word Mode 1-616 Am79C970A
Double Word Mode 1-713 USER ACCESSIBLE REGISTERS Configuration Registers Vendor Device Register Command Register Status Register Revision Register Programming Interface Register Sub-Class Register Base-Class Register Latency Timer Register Header Type Register Base Address Register Memory Mapped Base Address Register Expansion Base Address Register Interrupt Line Register Interrupt Register MIN_GNT Register MAX_LAT Register Register RAP: Register Address Port Control Status Registers CSR0: PCnet-PCI Controller Controller Status Register CSR1: Initialization Block Address CSR2: Initialization Block Address CSR3: Interrupt Masks Deferral Control CSR4: Test Features Control CSR5: Extended Control Interrupt CSR6: RX/TX Descriptor Table Length CSR8: Logical Address Filter CSR9: Logical Address Filter CSR10: Logical Address Filter CSR11: Logical Address Filter CSR12: Physical Address Register CSR13: Physical Address Register CSR14: Physical Address Register CSR15: Mode CSR16: Initialization Block Address Lower CSR17: Initialization Block Address Upper CSR18: Current Receive Buffer Address Lower CSR19: Current Receive Buffer Address Upper CSR20: Current Transmit Buffer Address Lower CSR21: Current Transmit Buffer Address Upper CSR22: Next Receive Buffer Address Lower CSR23: Next Receive Buffer Address Upper CSR24: Base Address Receive Descriptor Ring Lower CSR25: Base Address Receive Descriptor Ring Upper CSR26: Next Receive Descriptor Address Lower CSR27: Next Receive Descriptor Address Upper CSR28: Current Receive Descriptor Address Lower CSR29: Current Receive Descriptor Address Upper CSR30: Base Address Transmit Descriptor Ring Lower CSR31: Base Address Transmit Descriptor Ring Upper Am79C970A 1-714 1-715 1-715 1-715 1-716 1-717 1-718 1-718 1-718 1-718 1-718 1-718 1-719 1-719 1-720 1-720 1-720 1-721 1-721 1-721 1-721 1-721 1-721 1-724 1-724 1-725 1-727 1-729 1-731 1-731 1-732 1-732 1-732 1-732 1-732 1-732 1-733 1-735 1-735 1-735 1-735 1-736 1-736 1-736 1-736 1-736 1-736 1-737 1-737 1-737 1-737 1-737 1-737 1-617
PRELIMINARY 1-737 1-738 1-738 1-738 1-738 1-738 1-738 1-738 1-739 1-739 1-739 1-739 1-739 1-739 1-740 1-740 1-742 1-742 1-742 1-742 1-743 1-743 1-743 1-743 1-743 1-743 1-744 1-744 1-744 1-746 1-746 1-746 1-746 1-747 1-747 1-747 1-747 1-748 1-748 1-748 1-748 1-749 1-750 1-750 1-750 1-753 1-754 1-754 1-759 1-761 1-761 1-762 1-762 1-763 1-766
CSR32: Next Transmit Descriptor Address Lower CSR33: Next Transmit Descriptor Address Upper CSR34: Current Transmit Descriptor Address Lower CSR35: Current Transmit Descriptor Address Upper CSR36: Next Next Receive Descriptor Address Lower CSR37: Next Next Receive Descriptor Address Upper CSR38: Next Next Transmit Descriptor Address Lower CSR39: Next Next Transmit Descriptor Address Upper CSR40: Current Receive Byte Count CSR41: Current Receive Status CSR42: Current Transmit Byte Count CSR44: Next Receive Byte Count CSR45: Next Receive Status CSR46: Poll Time Counter CSR47: Polling Interval CSR58: Software Style CSR60: Previous Transmit Descriptor Address Lower CSR61: Previous Transmit Descriptor Address Upper CSR62: Previous Transmit Byte Count CSR63: Previous Transmit Status CSR64: Next Transmit Buffer Address Lower CSR65: Next Transmit Buffer Address Upper CSR66: Next Transmit Byte Count CSR67: Next Transmit Status CSR72: Receive Descriptor Ring Counter CSR74: Transmit Descriptor Ring Counter CSR76: Receive Descriptor Ring Length CSR78: Transmit Descriptor Ring Length CSR80: Transfer Counter FIFO Watermark Control CSR82: Activity Timer CSR84: Address Register Lower CSR85: Address Register Upper CSR86: Buffer Byte Counter CSR88: Chip Register Lower CSR89: Chip Register Upper CSR94: Transmit Time Domain Reflectometry Count CSR100: Timeout CSR112: Missed Frame Count CSR114: Receive Collision Count CSR122: Advanced Feature Control CSR124: Test Register Configuration Registers BCR0: Master Mode Read Active BCR1: Master Mode Write Active BCR2: Miscellaneous Configuration BCR4: Link Status (LNKST) BCR5: LED1 Status BCR6: LED2 Status BCR7: LED3 Status BCR9: Full-Duplex Control BCR16: Base Address Lower BCR17: Base Address Upper BCR18: Burst Control Register BCR19: EEPROM Control Status BCR20: Software Style 1-618 Am79C970A
1-768 1-768 1-768 1-769 1-770 1-770 1-771 1-771 1-771 1-772 1-772 1-773 1-774 1-774 1-775 1-775 1-776 1-777 1-778 1-778 1-779 1-782
BCR21: Interrupt Control BCR22: Latency Register Initialization Block RLEN TLEN RDRA TDRA LADRF PADR MODE Receive Descriptors RMD0 RMD1 RMD2 RMD3 Transmit Descriptors TMD0 TMD1 TMD2 TMD3 REGISTER SUMMARY Configuration Registers Control Status Registers Configuration Registers
ABSOLUTE MAXIMUM RATING 1-783 OPERATING RANGES 1-783 CHARACTERISTICS 1-783 SWITCHING CHARACTERISTICS Interface 10BASE-T Interface GPSI EADI 1-786 1-786 1-788 1-789 1-790 1-791
SWITCHING WAVEFORMS 1-792 SWITCHING TEST CIRCUITS 1-792 SWITCHING WAVEFORMS System Interface 10BASE-T Interface GPSI EADI APPENDIX PCnet-PCI Compatible Media Interface Modules 10BASE-T Filters Transformers Isolation Transformers DC/DC Converters Manufacturer Contact Information 1-794 1-794 1-798 1-800 1-803 1-804 1-805 1-805 1-806 1-806 1-807
APPENDIX Recommendation Power Ground Decoupling 1-808 APPENDIX Alternative Method Initialization 1-810
Am79C970A
1-619
PRELIMINARY 1-811 1-811 1-812 1-814 1-815 1-816 1-817 1-818 1-821 1-821 1-821 1-822 1-822 1-822 1-823 1-824 1-824 1-825
APPENDIX Look-Ahead Packet Processing Concept Introduction LAPP Concept Outline LAPP Flow LAPP Software Requirements LAPP Rules Parsing Descriptors Some Examples LAPP Descriptor Interaction Buffer Size Tuning Alternative LAPP Flow-the Interrupt Method APPENDIX PCnet-PCI PCnet-PCI Differences Overview Features List Register Changes Configuration Space Control Status Registers Configuration Registers Receive Descriptor Transmit Descriptor List Changes
1-620
Am79C970A
CONNECTION DIAGRAM
AD28 AD29 VSSB AD30 AD31 INTA RESERVED SLEEP EECS EESK/LED1/SFBD EEDI/LNSKT EEDO/LED3/SRD AVDD2 CIDI+ DIAVDD1 DOAVSS1 VDDB AD27 AD26 VSSB AD25 AD24 C/BE3
IDSEL AD23 AD22 VSSB AD21 AD20 VDDB AD19 AD18 VSSB AD17 AD16 C/BE2 FRAME IRDY TRDY DEVSEL STOP LOCK PERR SERR VDDB
XTAL2 AVSS2 XTAL1 AVDD3
TXD+ TXP+ TXDTXPAVDD4
Am79C970A PCnetTM-PCI
RXD+ RXDVSS LED2/SRDCLK ERD0/RXDAT ERD1/RXCLK ERD2/RXEN ERD3/CLSN ERD4/TXCLK ERD5 ERD6/TXEN ERD7/TXDAT ERA0 ERA1 ERA2 ERA3 ERA4 ERA5
marked orientation. RESERVED Don't connect
C/BE1 AD15 VSSB AD14 AD13 AD12 AD11 AD10 VSSB VDDB C/BE0 VSSB VSSB EROE DXCVR/NOUT ERACLK ERA7 ERA6
19436C-2
Am79C970A
1-621
CONNECTION DIAGRAM
AD28 AD29 VSSB AD30 AD31 INTA RESERVED SLEEP EECS EESK/LED1/SFBD EEDI/LNKST EED0/LED3/SRD AVDD2 AVDD1 AVSS1
VDDB AD27 AD26 VSSB AD25 AD24 C/BE3 IDSEL AD23 AD22 VSSB AD21 AD20 VDDB AD19 AD18 VSSB AD17 AD16 C/BE2 FRAME IRDY TRDY DEVSEL STOP LOCK PERR SERR VDDB
PCnet-PCI Am79C970AVC
XTAL2 AVSS2 XTAL1 AVDD3 TXD+ TXP+ TXD- TXP- AVDD4 RXD+ RXD- LED2/SRDCLK ERD0/RXDAT ERD1/RXCLK ERD2/RXEN ERD3/CLSN ERD4/TXCLK ERD5 ERD6/TXEN ERD7/TXDAT ERA0 ERA1 ERA2 ERA3 ERA4 ERA5
marked orientation. RESERVED Don't connect
C/BE1 AD15 VSSB AD14 AD13 AD12 AD11 AD10 VSSB VDDB C/BE0 VSSB VSSB EROE DXCVR/NOUT ERACLK ERA7 ERA6
19436C-3
1-622
Am79C970A
ORDERING INFORMATION Standard Products
standard products available several packages operating ranges. order number (Valid Combination) formed combination AM79C970A ALTERNATE PACKAGING OPTION Trimmed Formed Tray OPTIONAL PROCESSING Blank Standard Processing
TEMPERATURE RANGE Commercial (0°C +70°C) Industrial (-40°C +85°C)
PACKAGE TYPE Plastic Quad Flat Pack (PQB132) Thin Quad Flat Pack (PQJ144)
SPEED OPTION Applicable
DEVICE NUMBER/DESCRIPTION Am79C970A PCnet-PCI Single-Chip Full-Duplex Controller Local Valid Combinations Valid Combinations list configurations planned supported volume this device. Consult local sales office confirm availability specific valid combinations check newly released combinations.
Valid Combinations AM79C970A AM79C970A KC\W, VC\W KI\W, VI\W
Am79C970A
1-623
DESIGNATIONS PQFP Listed Number
Name VDDB AD27 AD26 VSSB AD25 AD24 C/BE3 IDSEL AD23 AD22 VSSB AD21 AD20 VDDB AD19 AD18 VSSB AD17 AD16 C/BE2 FRAME IRDY TRDY DEVSEL STOP LOCK PERR SERR VDDB Name C/BE1 AD15 VSSB AD14 AD13 AD12 AD11 AD10 VSSB VDDB C/BE0 VSSB VSSB EROE DXCVR/NOUT ERACLK ERA7 ERA6 Name ERA5 ERA4 ERA3 ERA2 ERA1 ERA0 ERD7/TXDAT ERD6/TXEN ERD5 ERD4/TXCLK ERD3/CLSN ERD2/RXEN ERD1/RXCLK ERD0/RXDAT LED2/SRDCLK RXDRXD+ AVDD4 TXPTXDTXP+ TXD+ AVDD3 XTAL1 AVSS2 XTAL2 Name AVSS1 DODO+ AVDD1 DIDI+ CICI+ AVDD2 EEDO/LED3/SRD EEDI/LNKST EESK/LED1/SFBD EECS SLEEP RESERVED INTA AD31 AD30 VSSB AD29 AD28
1-624
Am79C970A
DESIGNATIONS PQFP Listed Group
Name Interface AD[31:0] C/BE[3:0] DEVSEL FRAME IDSEL INTA IRDY LOCK PERR SERR STOP TRDY Board Interface LED1 LED2 LED3 SLEEP XTAL1 XTAL2 Microwire EEPROM Interface EECS EEDI EEDO EESK Expansion Interface ERA[7:0] ERACLK ERD[7:0] EROE Expansion Address Expansion Address Clock Expansion Data Expansion Output Enable Microwire Serial EEPROM Chip Select Microwire Serial EEPROM Data Microwire Address EEPROM Data Microwire Serial PROM Clock LED1 LED2 LED3 Sleep Mode Crystal Input Crystal Output XTAL Address/Data Command/Byte Enable Clock Device Select Cycle Frame Grant Initialization Device Select Interrupt Initiator Ready Lock Parity Parity Error Request Reset System Error Stop Target Ready STS6 STS6 STS6 STS6 STS6 STS6 Function Type Driver Pins
Am79C970A
1-625
DESIGNATIONS PQFP Listed Group
Name Interface Attachment Unit Interface (AUI) CI+/CIDI+/DIDO+/DODXCVR 10BASE-T Interface LNKST RXD+/RXDTXD+/TXDTXP+/TXPLink Status Receive Differential Pair Transmit Differential Pair Transmit Pre-distortion Differential Pair Collision Differential Pair Data Differential Pair Data Differential Pair Disable Transceiver Function Type Driver Pins
General Purpose Serial Interface (GPSI) CLSN RXEN RXDAT RXCLK TXCLK TXDAT TXEN Collision Receive Enable Receive Data Receive Clock Transmit Clock Transmit Data Transmit Enable
External Address Detection Interface (EADI) SFBD SRDCLK External Address Reject Start Frame Byte Delimiter Serial Receive Data Serial Receive Data Clock
IEEE 1149.1 Test Access Port Interface (JTAG) Test Interface NOUT Power Supplies AVDD AVSS VDDB VSSB Analog Power Analog Ground Digital Power Digital Ground Buffer Power Buffer Ground NAND Tree Test Output Test Clock Test Data Test Data Test Mode Select
1-626
Am79C970A
DESIGNATIONS 144-PIN TQFP Listed Number
Name VDDB AD27 AD26 VSSB AD25 AD24 C/BE3 IDSEL AD23 AD22 VSSB AD21 AD20 VDDB AD19 AD18 VSSB AD17 AD16 C/BE2 FRAME IRDY TRDY DEVSEL STOP LOCK PERR SERR VDDB Name C/BE1 AD15 VSSB AD14 AD13 AD12 AD11 AD10 VSSB VDDB C/BE0 VSSB VSSB EROE DXCVR/NOUT ERACLK ERA7 ERA6 Name ERA5 ERA4 ERA3 ERA2 ERA1 ERA0 ERD7/TXDAT ERD6/TXEN ERD5 ERD4/TXCLK ERD3/CLSN ERD2/RXEN ERD1/RXCLK ERD0/RXDAT LED2/SRDCLK RXDRXD+ AVDD4 TXPTXDTXP+ TXD+ AVDD3 XTAL1 AVSS2 XTAL2 Name AVSS1 DODO+ AVDD1 DIDI+ CICI+ AVDD2 EEDO/LED3/SRD EEDI/LNKST EESK/LED1/SFBD EECS SLEEP Reserved INTA AD31 AD30 VSSB AD29 AD28
Indicates connect
Am79C970A
1-627
DESIGNATIONS 144-PIN TQFP Listed Group
Name Interface AD[31:0] C/BE[3:0] DEVSEL FRAME IDSEL INTA IRDY LOCK PERR SERR STOP TRDY Board Interface LED1 LED2 LED3 SLEEP XTAL1 XTAL2 Microwire EEPROM Interface EECS EEDI EEDO EESK Expansion Interface ERA[7:0] ERACLK ERD[7:0] EROE Expansion Address Expansion Address Clock Expansion Data Expansion Output Enable Microwire Serial EEPROM Chip Select Microwire Serial EEPROM Data Microwire Address EEPROM Data Microwire Serial PROM Clock LED1 LED2 LED3 Sleep Mode Crystal Input Crystal Output XTAL Address/Data Command/Byte Enable Clock Device Select Cycle Frame Grant Initialization Device Select Interrupt Initiator Ready Lock Parity Parity Error Request Reset System Error Stop Target Ready STS6 STS6 STS6 STS6 STS6 STS6 Function Type Driver Pins
1-628
Am79C970A
DESIGNATIONS 144-PIN TQFP Listed Group
Name Interface Attachment Unit Interface (AUI) CI+/CIDI+/DIDO+/DODXCVR 10BASE-T Interface LNKST RXD+/RXDTXD+/TXDTXP+/TXPLink Status Receive Differential Pair Transmit Differential Pair Transmit Pre-distortion Differential Pair Collision Differential Pair Data Differential Pair Data Differential Pair Disable Transceiver Function Type Driver Pins
General Purpose Serial Interface (GPSI) CLSN RXEN RXDAT RXCLK TXCLK TXDAT TXEN Collision Receive Enable Receive Data Receive Clock Transmit Clock Transmit Data Transmit Enable
External Address Detection Interface (EADI) SFBD SRDCLK External Address Reject Start Frame Byte Delimiter Serial Receive Data Serial Receive Data Clock
IEEE 1149.1 Test Access Port Interface (JTAG) Test Interface NOUT Power Supplies AVDD AVSS VDDB VSSB Analog Power Analog Ground Digital Power Digital Ground Buffer Power Buffer Ground NAND Tree Test Output Test Clock Test Data Test Data Test Mode Select
Am79C970A
1-629
DESIGNATIONS Listed Driver Type
next table describes various types drivers that used PCnet-PCI controller:
Name STS6 Type Totem Pole Open Drain Sustained Tri-State Tri-State Tri-State
(mA)
(mA) -0.4 -0.4
Load (pF)
values shown table above apply signaling. section Characteristics" values applying signaling. sustained tri-state signal active signal that driven high clock period before left floating.
differential output drivers. characteristic these XTAL output described section Characteristics".
1-630
Am79C970A
DESCRIPTION Interface AD[31:0]
Address Data Input/Output Address data multiplexed same interface pins. During first clock transaction AD[31:0] contain physical address bits). During subsequent clocks AD[31:0] contain data. Byte ordering little endian default. AD[7:0] defined least significant byte AD[31:24] defined most significant byte. FIFO data transfers, PCnet-PCI controller programmed endian byte ordering. CSR3, (BSWP) more details. During address phase transaction, when PCnet-PCI controller master, AD[31:2] will address active Double Word (DWord). PCnet-PCI controller always drives AD[1:0] `00' during address phase indicating linear burst order. When PCnet-PCI controller master, AD[31:0] lines continuously monitored determine address match exists slave transfers. During data phase transaction, AD[31:0] driven PCnet-PCI controller when performing master write slave read operations. Data AD[31:0] latched PCnet-PCI controller when performing master read slave write operations. When active, AD[31:0] inputs NAND tree testing.
defined with respect this edge. PCnet-PCI controller operates over range MHz. This clock used drive network functions. When active, input NAND tree testing.
DEVSEL
Device Select Input/Output PCnet-PCI controller drives DEVSEL when detects transaction that selects device target. device samples DEVSEL detect target claims transaction that PCnet-PCI controller initiated. When active, DEVSEL input NAND tree testing.
FRAME
Cycle Frame Input/Output FRAME driven PCnet-PCI controller when master indicate beginning duration transaction. FRAME asserted indicate transaction beginning. FRAME asserted while data transfers continue. FRAME deasserted before final data phase transaction. When PCnet-PCI controller slave mode, samples FRAME determine address phase transaction. When active, FRAME input NAND tree testing.
Grant Input This signal indicates that access been granted PCnet-PCI controller. PCnet-PCI controller supports parking. When idle system arbiter asserts without active from PCnet-PCI controller, device will drive AD[31:0], C/BE[3:0] lines. When active, input NAND tree testing.
C/BE[3:0]
Command Byte Enables Input/Output command byte enables multiplexed same interface pins. During address phase transaction, C/BE[3:0] define command. During data phase C/BE[3:0] used byte enables. byte enables define which physical byte lanes carry meaningful data. C/BE0 applies byte (AD[7:0]) C/BE3 applies byte (AD[31:24]). function byte enables independent byte ordering mode (BSWP, CSR3, When active, C/BE[3:0] inputs NAND tree testing.
IDSEL
Initialization Device Select Input This signal used chip select PCnet-PCI controller during configuration read write transactions. When active, IDSEL input NAND tree testing.
Clock Input This clock used drive system interface internal buffer management unit. signals sampled rising edge parameters
Am79C970A
1-631
PRELIMINARY read data phases device checks IRDY determine initiator ready accept data. When active, IRDY input NAND tree testing.
INTA
Interrupt Request Input/Output attention signal which indicates that more following status flags set: BABL, EXDINT, IDON, JAB, MERR, MISS, MFCO, MPINT, RCVCCO, RINT, SINT, SLPINT, TINT, TXSTRT UINT. Each status flag either mask enable which allows suppression INTA assertion. flags have following meaning: Table Interrupt Flags
BABL EXDINT IDON MERR MISS MFCO MPINT RCVCCO RINT SLPINT SINT TINT TXSTRT UINT Babble Excessive Deferral Initialization Done Jabber Memory Error Missed Frame Missed Frame Count Overflow Magic Packet Interrupt Receive Collision Count Overflow Receive Interrupt Sleep Interrupt System Error Transmit Interrupt Transmit Start User Interrupt
LOCK
Lock Input slave mode, LOCK input PCnet-PCI controller. master lock device guarantee atomic operation that requires multiple transactions. PCnet-PCI controller will never assert LOCK master. When active, LOCK input NAND tree testing.
Parity Input/Output Parity even parity across AD[31:0] C/BE[3:0]. When PCnet-PCI controller master, generates parity during address write data phases. checks parity during read data phases. When PCnet-PCI controller operates slave mode, checks parity during every address phase. When target cycle, checks parity during write data phases generates parity during read data phases. When active, input NAND tree testing.
PERR
Parity Error Input/Output During slave write transaction master read transaction, PCnet-PCI controller asserts PERR when detects data parity error reporting error enabled setting PERREN (PCI Command register, ONE. During master write transaction PCnet-PCI controller monitors PERR target reports data parity error. When active, PERR input NAND tree testing.
default INTA open-drain output. applications that need high-active edge sensitive interrupt signal, INTA configured this mode setting INTLEVEL (BCR2, ONE. When active, INTA input NAND tree testing.
IRDY
Initiator Ready Input/Output IRDY indicates ability initiator transaction complete current data phase. IRDY used conjunction with TRDY. Wait states inserted until both IRDY TRDY asserted simultaneously. data phase completed clock when both IRDY TRDY asserted. When PCnet-PCI controller master, asserts IRDY during write data phases indicated that valid data present AD[31:0]. During read data phases device asserts IRDY indicate that ready accept data. When PCnet-PCI controller target transaction, checks IRDY during write data phases determine valid data present AD[31:0]. During 1-632
Request Input/Output PCnet-PCI controller asserts signal that wishes become master. driven high when PCnet-PCI controller does request bus. When active, input NAND tree testing.
Reset Input When asserted low, then PCnet-PCI controller performs internal system reset type
Am79C970A
PRELIMINARY H_RESET (HARDWARE_RESET). must held minimum clock periods. While H_RESET state, PCnet-PCI controller will disable deassert outputs. asynchronous when asserted deasserted. recommended that deassertion synchronous guarantee clean bounce free edge. When active, NAND tree testing enabled. interface pins input mode. result NAND tree testing observed NOUT output (pin 62).
When active, TRDY input NAND tree testing.
Board Interface LED1
LED1 Output This output designed directly drive LED. default, LED1 indicates receive activity network. This also programmed indicate other network status (see BCR5). LED1 polarity programmable, default, active LOW. Note that LED1 multiplexed with EESK SFBD pins.
SERR
System Error Input/Output During slave transaction, PCnet-PCI controller asserts SERR when detects address parity error reporting error enabled setting PERREN (PCI Command register, SERREN (PCI Command register, ONE. default SERR open-drain output. component test programmed active-high totem-pole output. When active, SERR input NAND tree testing.
LED2
LED2 Output This output designed directly drive LED. default, LED2 indicates correct receive polarity 10BASE-T interface. This also programmed indicate other network status (see BCR6). LED2 polarity programmable, default, active LOW. Note that LED2 multiplexed with SRDCLK pin.
STOP
Stop Input/Output slave mode, PCnet-PCI controller drives STOP signal inform master stop current transaction. master mode, PCnet-PCI controller checks STOP determine target wants disconnect current transaction. When active, STOP input NAND tree testing.
LED3
LED3 Output This output designed directly drive LED. default, LED3 indicates transmit activity network. This also programmed indicate other network status (see BCR7). LED3 polarity programmable, default, active LOW. Note that LED3 multiplexed with EEDO pins. Special attention must given external circuitry attached this pin. When this used drive while EEPROM used system, then buffering required between LED3 circuit. circuit were directly attached this pin, would create requirement that could serial EEPROM attached this pin. EEPROM included system design, then LED3 signal directly connected without buffering. more details regarding connection, section "LED Support".
TRDY
Target Ready Input/Output TRDY indicates ability target transaction complete current data phase. TRDY used conjunction with IRDY. Wait states inserted until both IRDY TRDY asserted simultaneously. data phase completed clock when both IRDY TRDY asserted. When PCnet-PCI controller master, checks TRDY during read data phases determine valid data present AD[31:0]. During write data phases device checks TRDY determine target ready accept data. When PCnet-PCI controller target transaction, asserts TRDY during read data phases indicate that valid data present AD[31:0]. During write data phases device asserts TRDY indicate that ready accept data.
SLEEP
Sleep Input When SLEEP asserted, PCnet-PCI controller performs internal system reset S_RESET type then proceeds into power savings mode. PCnet-PCI controller outputs will placed their normal reset condition. PCnet-PCI controller inputs
Am79C970A
1-633
will ignored except SLEEP itself. Deassertion SLEEP results wake-up. system must refrain from starting network operations PCnet-PCI controller device following deassertion SLEEP signal order allow internal analog circuits stabilize. Both XTAL1 inputs must have valid clock signals present order SLEEP command take effect. SLEEP should asserted during power supply ramp-up. desired that SLEEP asserted power time, then system must delay assertion SLEEP until three clock cycles after completion hardware reset operation. SLEEP must left unconnected. should tied VDD, power savings mode used.
EEDI
EEPROM Data Output This designed directly interface serial EEPROM that uses Microwire interface protocol. EEDI connected Microwire EEPROM data input pin. controlled either PCnet-PCI controller during command portions read entire EEPROM, indirectly host system writing BCR19, Note that EEDI multiplexed with LNKST pin.
EEDO
EEPROM Data Input This designed directly interface serial EEPROM that uses Microwire interface protocol. EEDO connected Microwire EEPROM data output pin. controlled either PCnet-PCI controller during command portions read entire EEPROM, indirectly host system reading from BCR19, Note that EEDO multiplexed with LED3 pins.
XTAL1
Crystal Oscillator Input internal clock generator uses crystal that attached pins XTAL1 XTAL2. network data rate one-half crystal frequency. XTAL1 alternatively driven using external CMOS level clock signal. Refer section "External Crystal Characteristics" more details. Note that when PCnet-PCI controller coma mode, there internal resistor from XTAL1 ground. external source drives XTAL1, some power will consumed driving this resistor. XTAL1 driven this time power consumption will minimized. this case, XTAL1 must remain active least cycles after assertion SLEEP deassertion REQ.
EESK
EEPROM Serial clock Input/Output This designed directly interface serial EEPROM that uses Microwire interface protocol. EESK connected Microwire EEPROM clock pin. controlled either PCnet-PCI controller directly during read entire EEPROM, indirectly host system writing BCR19, Note that EESK multiplexed with LED1 SFBD pins. EESK also used during EEPROM Auto-detection determine whether EEPROM present PCnet-PCI controller Microwire interface. rising edge during last clock during which asserted, EESK sampled determine value EEDET BCR19. sampled HIGH value means that EEPROM present, EEDET will ONE. sampled value means that EEPROM present, EEDET will cleared ZERO. section "EEPROM Auto-Detection" more details. circuit attached this pin, then pull pull down resistor must attached instead, order resolve EEDET setting.
XTAL2
Crystal Oscillator Output internal clock generator uses crystal that attached pins XTAL1 XTAL2. network data rate one-half crystal frequency. external clock source used XTAL1, then XTAL should left unconnected.
Microwire EEPROM Interface EECS
EEPROM Chip Select Output This designed directly interface serial EEPROM that uses Microwire interface protocol. EECS connected Microwire EEPROM chip select pin. controlled either PCnet-PCI controller during command portions read entire EEPROM, indirectly host system writing BCR19,
1-634
Am79C970A
Expansion Interface ERA[7:0]
Expansion Address Output These pins provide address Expansion ROM. When EROE asserted ERACLK driven HIGH, ERA[7:0] contain upper bits Expansion address. They must latched externally. When EROE asserted ERACLK low, ERA[7:0] contain lower bits Expansion address. outputs forced constant level conserve power while access Expansion performed.
DXCVR
Disable Transceiver Output DXCVR signal provided power down external transceiver DC-to-DC converter designs that provide more than network connection. polarity asserted state DXCVR output controlled DXCVRPOL (BCR2, default, DXCVR output high when asserted. When 10BASE-T interface active network port, DXCVR output always deasserted. When GPSI interface active network port, assertion DXCVR output controlled setting DXCVRCTL (BCR2, Note that DXCVR multiplexed with NOUT pin.
ERACLK
Expansion Address Clock Output When EROE asserted ERACLK driven HIGH, ERA[7:0] contain upper bits Expansion address. ERACLK used latch address bits externally. Both '373 (transparent latch) '374 flip-flop) types address latch supported.
Twisted Pair Interface LNKST
Link Status Output This output designed directly drive LED. default, LNKST indicates active link connection 10BASE-T interface. This also programmed indicate other network status (see BCR4). LNKST polarity programmable, default, active LOW. Note that LNKST multiplexed with EEDI pin.
ERD[7:0]
Expansion Data Input Data from Expansion transferred ERD[7:0]. When EROE high, ERD[7:0] inputs internally disabled left floating. Note that ERD[7:0] pins multiplexed with GPSI interface.
EROE
Expansion Output Enable Output This signal asserted when Expansion read.
RXD±
10BASE-T Receive Data 10BASE-T port differential receivers. Input
Attachment Unit Interface
Collision Input differential input pair signaling PCnet-PCI controller that collision been detected network media, indicated inputs being driven with pattern sufficient amplitude pulse width meet 8802-3 (IEEE/ANSI 802.3) standards. Operates pseudo levels.
TXD± 10BASE-T Transmit Data
10BASE-T port differential drivers.
Output
TXP±
10BASE-T Pre-Distortion Control Output These outputs provide transmit pre-distortion control conjunction with 10BASE-T port differential drivers.
General Purpose Serial Interface CLSN
Collision Input CLSN input, indicating that collision occurred network. Note that CLSN multiplexed with ERD3 pin.
Data Input differential input pair PCnet-PCI controller carrying Manchester encoded data from network. Operates pseudo levels.
Data Output differential output pair from PCnet-PCI controller transmitting Manchester encoded data network. Operates pseudo levels.
RXCLK
Receive Clock Input RXCLK input. Rising edges RXCLK signal used sample data RXDAT input whenever RXEN input HIGH. 1-635
Am79C970A
PRELIMINARY result this check will with value pin. defined REJECT. value "OR"ed with internal address detection result determine current frame should accepted rejected. internally pulled-up left unconnected, EADI interface used.
Note that RXCLK multiplexed with ERD1 pin.
RXDAT
Receive Data Input RXDAT input. Rising edges RXCLK signal used sample data RXDAT input whenever RXEN input HIGH. Note that RXDAT multiplexed with ERD0 pin.
SFBD
Start Frame-Byte Delimiter Output initial rising edge SFBD signal indicates that start frame delimiter been detected. serial stream will follow signal, commencing with destination address field. SFBD will high times (400 after detecting second (Start Frame Delimiter) received frame. SFBD will subsequently toggle every (1.25 frequency) with each rising edge indicating first each subsequent byte received serial stream. SFBD will inactive during frame transmission. Note that SFBD multiplexed with EESK LED1 pins.
RXEN Receive Enable Input
RXEN input. When this signal HIGH, indicates core logic that data RXDAT input valid. Note that RXEN multiplexed with ERD2 pin.
TXCLK
Transmit Clock Input TXCLK input, providing clock signal activity, both transmit receive. Rising edges TXCLK used validate TXDAT output data. Note that TXCLK multiplexed with ERD4 pin.
Serial Receive Data Output decoded data from network. This signal used external address detection. When 10BASE-T port selected, transitions will only occur during receive activity. When GPSI port selected, transitions will occur during both transmit receive activity. Note that multiplexed with EEDO LED3 pins.
TXDAT
Transmit Data Output TXDAT output, providing serial stream transmission, including preamble, data field, applicable. TXDAT floats when GPSI interface enabled. Note that TXDAT multiplexed with ERD7 pin.
SRDCLK
Serial Receive Data Clock Output Serial Receive Data synchronous with reference SRDCLK. When 10BASE-T port selected, transitions SRDCLK will only occur during receive activity. When GPSI port selected, transitions SRDCLK will occur during both transmit receive activity. Note that SRDCLK multiplexed with LED2 pin.
TXEN
Transmit Enable Output TXEN output, providing enable signal transmission. Data TXDAT valid unless TXEN signal HIGH. TXEN should have external pull-down resistor attached (e.g. ensure output held inactive until GPSI interface enabled. Note that TXEN multiplexed with ERD6 pin.
IEEE 1149.1 Test Access Port Interface
Test Clock Input clock input boundary scan test mode operation. operate frequency MHz. internal pull-up resistor. input
External Address Detection Interface
External Address Reject Input incoming frame will checked against internally active address detection mechanisms
1-636
Am79C970A
PRELIMINARY operates same signaling environment interface.
Test Data Input test data input path PCnet-PCI controller. internal pull-up resistor. input operates same signaling environment interface.
avoid excessive noise these lines. Refer Appendix PCnet Family Board Design Layout Recommendations application note (PID #19595A) details.
AVSS
Analog Ground Pins) Power There analog ground pins. Special attention should paid printed circuit board layout avoid excessive noise these lines. Refer Appendix PCnet Family Board Design Layout Recommendations application note (PID #19595A) details.
Test Data Output test data output path from PCnet-PCI controller. tri-stated when JTAG port inactive. output operates same signaling environment interface.
Digital Power Pins) Power There power supply pins that used internal digital circuitry. pins must connected supply.
Test Mode Select Input serial input stream used define specific boundary scan test executed. internal pull-up resistor. input operates same signaling environment interface.
VDDB
Buffer Power Pins) Power There four power supply pins that used input/output buffer drivers. system with signaling environment, VDDB pins must connected supply. system with signaling nvironment, VDDB pins must connected +3.3 supply.
Test Interface NOUT
NAND Tree Output When asserted, results NAND tree testing observed NOUT pin. Note that NOUT multiplexed with DXCVR pin.
Digital Ground Pins) Ground There ground pins that used internal digital circuitry.
Power Supply Pins AVDD
Analog Power Pins) Power There four analog supply pins. Special attention should paid printed circuit board layout
VSSB
Buffer Ground Pins) Ground There ground pins that used input/output buffer drivers.
Am79C970A
1-637
PRELIMINARY dress space that must begin 32-byte block boundary. address space mapped into both memory space (memory mapped I/O). Base Address Register Configuration Space defines start address address space mapped space. Memory Mapped Base Address Register defines start address address space mapped memory space. 32-byte address space used software program PCnet-PCI controller operating mode, enable disable various features, monitor operating status, request particular functions executed PCnet-PCI controller. third portion software interface descriptor buffer areas that shared between software PCnet-PCI controller during normal network operations. descriptor area boundaries software change during normal network operations. There descriptor area receive activity there separate area transmit activity. descriptor space contains relocatable pointers network frame data used transfer frame status from PCnet-PCI controller software. buffer areas locations that hold frame data transmission that accept frame data that been received.
BASIC FUNCTIONS System Interface Function
PCnet-PCI controller designed operate master during normal operations. Some slave accesses PCnet-PCI controller required normal operations well. Initialization PCnet-PCI controller achieved through combination Configuration Space accesses, slave accesses, master accesses optional read serial EEPROM that performed PCnet-PCI controller. EEPROM read operation performed through Microwire interface. 8802-3 (IEEE/ANSI 802.3) Ethernet Address reside within serial EEPROM. Some PCnet-PCI controller configuration registers also programmed EEPROM read operation. Address PROM, on-chip bus-configuration registers, Ethernet controller registers occupy bytes address space. Both, memory mapped access supported. Base Address registers configuration space allow locating address space wide variety starting addresses. diskless stations, PCnet-PCI controller supports Expansion Kbytes size. host Expansion memory address that aligns boundary modifying Expansion Base Address register configuration space.
Network Interfaces
PCnet-PCI controller connected 802.3 network three network interfaces. Attachment Unit Interface (AUI) provides 8802-3 (IEEE/ANSI 802.3) compliant differential interface remote on-board transceiver. 10BASE-T interface provides twisted-pair Ethernet port. While auto-selection mode, interface determined auto-sensing mechanism which checks link status 10BASE-T port. there active link status, then device assumes connection. General Purpose Serial Interface (GPSI) allows bypassing Manchester Encoder/Decoder (MENDEC). PCnet-PCI controller implements half full-duplex Ethernet over three network interfaces.
Software Interface
software interface PCnet-PCI controller divided into three parts. part configuration registers. They used identify PCnet-PCI controller, also used setup configuration device. setup information includes memory mapped base address, mapping Expansion routing PCnet-PCI controller interrupt channel. This allows jumperless implementation. second portion software interface direct access resources PCnet-PCI controller. PCnet-PCI controller occupies bytes
1-638
Am79C970A
DETAILED FUNCTIONS Slave Interface Unit
slave interface unit (BIU) controls accesses configuration space, Control Status Registers (CSR), Configuration Registers
(BCR), Address PROM (APROM) locations Expansion ROM. table below shows response PCnet-PCI controller each commands slave mode.
Table Slave Commands
C[3:0] 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Command Interrupt Acknowledge Special Cycle Read Write Reserved Reserved Memory Read Memory Write Reserved Reserved Configuration Read Configuration Write Memory Read Multiple Dual Address Cycle Memory Read Line Memory Write Invalidate Read Configuration Space Write Configuration Space Aliased Memory Read Used Aliased Memory Read Aliased Memory Write Memory Mapped Read CSR, APROM Read Expansion Memory Mapped Write CSR, APROM Dummy Write Expansion Used Used Read CSR, APROM Write CSR, APROM
Slave Configuration Transfers host access PCnet-PCI controller configuration space with configuration read write command. PCnet-PCI controller will assert DEVSEL during address phase when IDSEL asserted, AD[1:0] both ZERO, access configuration cycle. AD[7:2] select DWord location configuration space. PCnet-PCI controller ignores AD[10:8], because single function device. AD[31:11] don't care. active bytes within DWord determined byte enable signals. 8-bit, 16-bit 32-bit transfers supported. DEVSEL asserted clock cycles after host asserted FRAME. configuration cycles fixed length. PCnet-PCI controller will assert TRDY clock data phase. PCnet-PCI controller does support burst transfers access configuration space. When
AD31 AD11 AD10 Don't care
host keeps FRAME asserted second data phase, PCnet-PCI controller will disconnect transfer. When host tries access configuration space while automatic read EEPROM after H_RESET on-going, PCnet-PCI controller will terminate access with disconnect/ retry response. PCnet-PCI controller supports fast back-to-back transactions different targets. This indicated Fast Back-To-Back Capable (PCI Status register, which hardwired ONE. PCnet-PCI controller capable detecting configuration cycle even when address phase immediately follows data phase transaction different target without idle state in-between. There will contention DEVSEL, TRDY STOP signals, since PCnet-PCI controller asserts DEVSEL second clock after FRAME asserted (medium timing).
Don't care
DWord index
Am79C970A
1-639
FRAME
ADDR
DATA
C/BE
1010
IRDY
TRDY
DEVSEL STOP
IDSEL
19436C-4
Figure Slave Configuration Read
1-640
Am79C970A
FRAME
ADDR
DATA
C/BE
1011
IRDY
TRDY
DEVSEL STOP
IDSEL
19436C-5
Figure Slave Configuration Write
Slave Transfers After PCnet-PCI controller configured device setting IOEN (for regular mode) MEMEN (for memory mapped mode) Command register, starts monitoring access CSR, EEPROM locations. configured regular mode, PCnet-PCI controller will look address that falls within bytes address space (starting from base address). PCnet-PCI controller asserts DEVSEL detects address match access cycle. configured memory mapped mode, PCnet-PCI controller will look address that falls within bytes memory address space (starting from memory mapped base address). PCnet-PCI controller asserts DEVSEL detects address match access memory cycle. DEVSEL asserted clock cycles after host asserted FRAME. PCnet-PCI controller will assert DEVSEL detects address match, command correct type. memory mapped mode, PCnet-PCI controller aliases accesses resources command types "Memory Read Multiple"
"Memory Read Line" basic Memory Read command. accesses type "Memory Write Invalidate" aliased basic Memory Write command. 8-bit, 16-bit 32-bit non-burst transactions supported. PCnet-PCI controller decodes only upper address lines determine which resource accessed. typical number wait states added slave memory mapped read write access part PCnet-PCI controller clock cycles, depending upon relative phases internal Buffer Management Unit clock signal, since internal Buffer Management Unit clock divide-by-two version signal. PCnet-PCI controller does support burst transfers access resources. When host keeps FRAME asserted second data phase, PCnet-PCI controller will disconnect transfer. PCnet-PCI controller supports fast back-to-back transactions different targets. This indicated Fast Back-To-Back Capable (PCI Status register, 1-641
Am79C970A
PRELIMINARY contention DEVSEL, TRDY STOP signals, since PCnet-PCI controller asserts DEVSEL second clock after FRAME asserted (medium timing).
which hardwired ONE. PCnet-PCI controller capable detecting memory mapped cycle even when address phase immediately follows data phase transaction different target, without idle state in-between. There will
FRAME
ADDR
DATA
C/BE
0010
IRDY
TRDY
DEVSEL
STOP
19436C-6
Figure Slave Read Using Command
1-642
Am79C970A
FRAME
ADDR
DATA
C/BE
0111
IRDY
TRDY
DEVSEL
STOP
19436C-7
Figure Slave Write Using Memory Command
Expansion Transfers host must initialize Expansion Base Address register offset configuration space with valid address before enabling access device. base address must aligned boundary indicated ROMSIZE (PCI Expansion Base Address register, bits 15-11). PCnet-PCI controller will react access Expansion until both MEMEN (PCI Command register, ROMEN (PCI Expansion Base Address register, ONE. After Expansion enabled, PCnet-PCI controller will assert DEVSEL memory read accesses with address between ROMBASE ROMBASE PCnet-PCI controller aliases accesses Expansion command types "Memory Read Multiple" "Memory Read Line" basic Memory Read command. Eight-bit, 16-bit 32-bit read transfers supported. Since setting MEMEN also enables memory mapped access resources, attention must given Memory Mapped Base Address register, before enabling access Expansion ROM. host must Memory Mapped Base Address register
value that prevents PCnet-PCI controller from claiming memory cycles intended PCnet-PCI controller will always read four bytes every host Expansion read access. TRDY will asserted until four bytes loaded into internal scratch register. cycle TRDY asserted depends programming Expansion interface timing. following figure assumes that ROMTMG (BCR18, bits 15-12) default value. Since target latency Expansion access considerably long, PCnet-PCI controller disconnects second data phase, when host tries perform burst read operation Expansion ROM. This behavior complies with requirements latency issues environment allows other devices fair access bus. When host tries write Expansion ROM, PCnet-PCI controller will claim cycle asserting DEVSEL. TRDY will asserted clock cycle later. write operation will have effect. PCnet-PCI controller supports fast back-to-back transactions different targets. This indicated Fast Back-To-Back Capable (PCI Status register,
Am79C970A
1-643
PRELIMINARY idle state in-between. There will contention DEVSEL, TRDY STOP signals, since PCnet-PCI controller asserts DEVSEL second clock after FRAME asserted (medium timing).
which hardwired ONE. PCnet-PCI controller capable detecting memory cycle even when address phase immediately follows data phase transaction different target without
FRAME
ADDR
DATA
C/BE
IRDY
TRDY
DEVSEL
STOP
DEVSEL sampled
19436C-8
Figure Expansion Read
Exclusive Access host lock transactions PCnet-PCI controller. lock allows exclusive access device used guarantee atomic operations. PCnet-PCI controller transitions from unlocked locked state when LOCK deasserted during address phase transaction that selects device target. controller stays locked state until both FRAME LOCK deasserted, until device signals target abort. Note that this protocol means device locks itself normal transaction. controller will unlock automatically normal transaction, because FRAME LOCK will deasserted. lock spans over whole slave address space. lock only applies slave accesses. PCnet-PCI controller might perform master cycles while being locked slave mode. When another master tries 1-644
access PCnet-PCI controller while locked state, device terminates access with disconnect/retry sequence. Slave Cycle Termination There three scenarios besides normal completion transaction where PCnet-PCI controller target slave cycle will terminate access.
Disconnect When Busy
PCnet-PCI controller cannot service slave access while reading contents Microwire EEPROM. Simultaneous access possible avoid conflicts, since Microwire EEPROM used initialize some configuration space locations most BCRs. Microwire EEPROM read operation will always happen automatically after deassertion pin. addition, host start
Am79C970A
PRELIMINARY read operation setting PREAD (BCR19, 14). While EEPROM read on-going, PCnet-PCI controller will disconnect slave access where target asserting STOP together with DEVSEL, while driving TRDY high. STOP will stay asserted until host removes FRAME. Note that memory slave accesses will only disconnected they enabled setting IOEN MEMEN Command register. Without enable set, cycles will claimed all. Since
H_RESET clears IOEN MEMEN bits, automatic EEPROM read after H_RESET disconnect only applies configuration cycles. second situation where PCnet-PCI controller will generate disconnect/retry cycle when host tries access resources right after having read Reset register. Since access generates internal reset pulse about length, further slave accesses will deferred until internal reset operation completed.
FRAME
ADDR
DATA
C/BE
IRDY
TRDY
DEVSEL STOP
19436C-9
Figure Disconnect Slave Cycle When Busy
Am79C970A
1-645
PRELIMINARY When PCnet-PCI controller sees FRAME IRDY asserted clock cycle before wants asserts TRDY, also asserts STOP same time. transfer first data phase still successful, since IRDY TRDY both asserted.
Disconnect Burst Transfer
PCnet-PCI controller does support burst access configuration space, resources, Expansion ROM. host indicates burst transaction keeping FRAME asserted during data phase.
FRAME
DATA
DATA
C/BE
IRDY
TRDY
DEVSEL STOP
19436C-10
Figure Disconnect Slave Burst Transfer-No Host Wait States
1-646
Am79C970A
PRELIMINARY When host ready when PCnet-PCI controller asserts TRDY, device will wait host assert IRDY. When host asserts IRDY FRAME still asserted, PCnet-PCI controller will
finish first data phase deasserting TRDY clock later. same time, will assert STOP signal disconnect host. STOP will stay asserted until host removes FRAME.
FRAME
DATA
DATA
C/BE
IRDY
TRDY DEVSEL STOP
19436C-11
Figure Disconnect Slave Burst Transfer-Host Inserts Wait States
Am79C970A
1-647
PRELIMINARY another master tried access PCnet-PCI controller will respond access asserting STOP together with DEVSEL while driving TRDY high, thereby disconnecting cycle. STOP will stay asserted until other master removes FRAME.
Disconnect When Locked
When PCnet-PCI controller locked master another master tries access controller, device will disconnect access. When PCnet-PCI controller locked state sees LOCK asserted together with FRAME, knows that
FRAME
LOCK
ADDR
DATA
C/BE
IRDY
TRDY
DEVSEL STOP
19436C-12
Figure Disconnect Slave Cycle When Locked
1-648
Am79C970A
Parity Error Response
When PCnet-PCI controller current master, samples AD[31:0], C/BE[3:0] lines during address phase command parity error. When detects address parity error, controller sets PERR (PCI Status register, ONE. When reporting that error enabled setting SERREN (PCI Command register, PERREN
(PCI Command register, ONE, Pcnet-PCI controller also drives SERR signal clock cycle sets SERR (PCI Status register, ONE. assertion SERR follows address phase clock cycles. PCnet-PCI controller will assert DEVSEL transaction that address parity error, when PERREN SERREN ONE.
FRAME
ADDR
DATA
C/BE
SERR DEVSEL
19436C-13
Figure Address Parity Error Response
Am79C970A
1-649
PRELIMINARY asserting TRDY. corrupted data will written addressed location. Figure shows transaction that suffered parity error time data transferred (clock IRDY TRDY both asserted). PERR driven high beginning data phase then drops parity error clock clock cycles after data transferred. After PERR driven low, PCnet-PCI controller drives PERR high clock cycle, since PERR sustained tri-state signal.
During data phase write, memory mapped write configuration write command that selects PCnet-PCI controller target, device samples AD[31:0] C/BE[3:0] lines parity clock edge data transferred. sampled following clock cycle. parity error detected reporting that error enabled setting PERREN (PCI Command register, ONE, PERR asserted clock later. parity error will always PERR (PCI Status register, even when PERREN cleared ZERO. PCnet-PCI controller will finish transaction that data parity error normal
FRAME
ADDR
DATA
C/BE
PERR
IRDY
TRDY
DEVSEL
19436C-14
Figure Slave Cycle Data Parity Error Response
1-650
Am79C970A
Master Interface Unit
master interface unit (BIU) controls acquisition accesses initialization block, descriptor rings receive
transmit buffer memory. table below shows usage commands PCnet-PCI controller master mode.
Table Master Commands
C[3:0] 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Command Interrupt Acknowledge Special Cycle Read Write Reserved Reserved Memory Read Memory Write Reserved Reserved Configuration Read Configuration Write Memory Read Multiple Dual Address Cycle Memory Read Line Memory Write Invalidate Used Used Read Transmit Buffer Burst Mode Used Read Transmit Buffer Burst Mode Used Read Initialization Block Descriptor Rings Read Transmit Buffer Non-burst Mode Write Descriptor Rings Receive Buffer Used Used Used Used
Acquisition
PCnet-PCI controller microcode will determine when transfer should initiated. first step PCnet-PCI controller master transfer acquire ownership bus. This task handled synchronous logic within BIU. ownership requested with signal ownership granted arbiter through signal. Figure shows PCnet-PCI controller acquisition. asserted arbiter returns while another master transferring data. PCnet-PCI controller waits until idle (FRAME IRDY deasserted) before starts driving AD[31:0] C/BE[3:0] clock FRAME asserted clock indicating valid address command AD[31:0] C/BE[3:0]. PCnet-PCI controller does address stepping which reflected
ADSTEP (bit Command register being hardwired ZERO. burst mode, deassertion depends setting EXTREQ (BCR18, EXTREQ cleared ZERO deasserted same time FRAME asserted. (The PCnet-PCI controller never performs more than burst transaction within single mastership period). EXTREQ ONE, PCnet-PCI controller does deassert until starts last data phase transaction. Once asserted, remains active until become active, independent subsequent setting STOP (CSR0, SPND (CSR5, assertion H_RESET S_RESET, however, will cause inactive immediately.
Am79C970A
1-651
FRAME
ADDR
C/BE
IRDY
19436C-15
Figure Acquisition
Master Transfers
There four primary types transfers. PCnet-PCI controller uses non-burst well burst cycles read write access main memory. Basic Non-Burst Read Transfer default, PCnet-PCI controller uses non-burst cycles master read operations. PCnet-PCI controller non-burst read accesses command type Memory Read (type Note that during non-burst read operation, byte lanes will always active. PCnet-PCI controller will internally discard unneeded bytes.
PCnet-PCI controller typically performs more than non-burst read transactions within single mastership period. FRAME dropped between consecutive non-burst read cycles. however stays asserted until FRAME asserted last transaction. PCnet-PCI controller supports zero wait state read cycles. asserts IRDY immediately after address phase same time starts sampling DEVSEL.
1-652
Am79C970A
PRELIMINARY following figure shows non-burst read transactions. first transaction zero wait states.
second transaction, target extends cycle asserting TRDY clock later.
FRAME
ADDR
DATA
ADDR
DATA
C/BE
0110
0000
0110
0000
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-16
Figure Non-Burst Read Transfer
Basic Burst Read Transfer PCnet-PCI controller supports burst mode master read operations. burst mode must enabled setting BREADE (BCR18, allow burst transfers descriptor read operations, PCnet-PCI controller must also programmed SWSTYLE THREE (BCR20, bits 7-0). burst read accesses initialization block descriptor ring command type Memory Read (type Burst read accesses transmit buffer typically longer than data phases. When MEMCMD (BCR18, cleared ZERO, burst read accesses transmit buffer command type Memory Read Line (type 14). When MEMCMD (BCR18, ONE, burst read accesses transmit buffer
command type Memory Read Multiple (type 12). AD[1:0] will both ZERO during address phase indicating linear burst order. Note that during burst read operation, byte lanes will always active. PCnet-PCI controller will internally discard unneeded bytes. PCnet-PCI controller will always perform only single burst read transaction mastership period, where transaction defined address phase multiple data phases. PCnet-PCI controller supports zero wait state read cycles. asserts IRDY immediately after address phase same time starts sampling DEVSEL. FRAME deasserted when next last data phase completed.
Am79C970A
1-653
PRELIMINARY phase each access wait state. example assumes that EXTREQ (BCR18, cleared ZERO, therefore, deasserted same cycle FRAME asserted.
following figure shows typical burst read access. PCnet-PCI controller arbitrates bus, granted access, reads three 32-bit words (DWord) from system memory then releases bus. example, memory system extends data
FRAME
ADDR
DATA
DATA
DATA
C/BE
0110
0000
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-17
Figure Burst Read Transfer (EXTREQ MEMCMD mastership period. FRAME dropped between consecutive non-burst write cycles. however stays asserted until FRAME asserted last transaction. PCnet-PCI controller supports zero wait state write cycles except with case descriptor write transfers. (See section "Descriptor Transfers" only exception.) asserts IRDY immediately after address phase same time starts sampling DEVSEL.
Basic Non-Burst Write Transfer default, PCnet-PCI controller uses non-burst cycles master write operations. PCnet-PCI controller non-burst write accesses command type Memory Write (type byte enable signals indicate byte lanes that have valid data. PCnet-PCI controller typically performs more than non-burst write transactions within single
1-654
Am79C970A
PRELIMINARY following figure shows non-burst write transactions. first transaction wait states. target inserts wait state asserting DEVSEL clock late another wait state also asserting TRDY
clock late. second transaction shows zero wait state write cycle. target asserts DEVSEL TRDY same cycle PCnet-PCI controller asserts IRDY.
FRAME
ADDR
DATA
ADDR
DATA
C/BE
0111
0111
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-18
Figure Non-Burst Write Transfer
Basic Burst Write Transfer PCnet-PCI controller supports burst mode master write operations. burst mode must enabled setting BWRITE (BCR18, allow burst transfers descriptor write operations, PCnet-PCI controller must also programmed SWSTYLE THREE (BCR20, bits 7-0). PCnet-PCI controller burst write transfers command type Memory Write (type AD[1:0] will both ZERO during address phase indicating linear burst order. byte enable signals indicate byte lanes that have valid data.
PCnet-PCI controller will always perform single burst write transaction mastership period, where transaction defined address phase multiple data phases. PCnet-PCI controller supports zero wait state write cycles except with case descriptor write transfers. (See section "Descriptor Transfers" only exception.) asserts IRDY immediately after address phase same time starts sampling DEVSEL. FRAME deasserted when next last data phase completed.
Am79C970A
1-655
PRELIMINARY data phases take clock cycle each, which determined timing TRDY. example assumes that EXTREQ (BCR18, ONE, therefore, deasserted until next last data phase finished.
following figure shows typical burst write access. PCnet-PCI controller arbitrates bus, granted access, writes four 32-bit words (DWords) system memory then releases bus. this example, memory system extends data phase first access wait state. following three
FRAME
ADDR
DATA
DATA
DATA
DATA
C/BE
0111
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-19
Figure Burst Write Transfer (EXTREQ
1-656
Am79C970A
Target Initiated Termination
When PCnet-PCI controller master, cycles produces terminated target three different ways. Disconnect With Data Transfer figure below shows disconnection which last data transfer occurs after target asserted STOP. STOP asserted clock start termination
sequence. Data still transferred during this cycle, since both IRDY TRDY asserted. PCnet-PCI controller terminates current transfer with deassertion FRAME clock IRDY clock later. finally releases clock PCnet-PCI controller will re-request after clock cycles, wants transfer more data. starting address transfer will address next untransferred data.
FRAME
ADDRi
DATA
DATA
ADDRi+8
C/BE
0111
0000
0111
IRDY
TRDY
DEVSEL STOP
DEVSEL sampled
19436C-20
Figure Disconnect With Data Transfer
Am79C970A
1-657
Disconnect Without Data Transfer
PRELIMINARY clock cycle later. finally releases clock PCnet-PCI controller will re-request after clock cycles retry last transfer. starting address transfer will address last untransferred data.
figure below shows target disconnect sequence during which data transferred. STOP asserted clock without TRDY being asserted same time. PCnet-PCI controller terminates access with deassertion FRAME clock IRDY
FRAME
ADDRi
DATA
ADDRi
C/BE
0111
0000
0111
IRDY
TRDY
DEVSEL STOP
DEVSEL sampled
19436C-21
Figure Disconnect Without Data Transfer
1-658
Am79C970A
PRELIMINARY Target Abort figure below shows target abort sequence. target asserts DEVSEL clock. then deasserts DEVSEL asserts STOP clock target target abort sequence indicate that cannot service data transfer that does want transaction retried. Additionally, PCnet-PCI controller cannot make assumption about success previous data transfers current transaction. PCnet-PCI controller terminates current transfer with deassertion FRAME clock IRDY clock cycle later. finally releases clock Since data integrity guaranteed, PCnet-PCI controller cannot recover from target abort event. PCnet-PCI controller will reset locations their STOP_RESET values.
configuration registers will cleared. on-going network transmission terminated orderly sequence. less than bits have been transmitted onto network, transmission will terminated immediately, generating runt packet. bits more have been transmitted, message will have current inverted appended next byte boundary guarantee error detected receiving station. RTABORT (PCI Status register, will indicate that PCnet-PCI controller received target abort. addition, SINT (CSR5, will ONE. When SINT set, INTA asserted enable SINTE (CSR5, ONE. This mechanism used inform driver system error. host read Status register determine exact cause interrupt.
FRAME
ADDR
DATA
C/BE
0111
0000
IRDY
TRDY DEVSEL
STOP
DEVSEL sampled
19436C-22
Figure Target Abort
Am79C970A
1-659
Master Initiated Termination
There three scenarios besides normal completion transaction where PCnet-PCI controller will terminate cycles produces bus. Preemption During Non-Burst Transaction When PCnet-PCI controller performs multiple non-burst transactions, keeps asserted until
assertion FRAME last transaction. When removed, PCnet-PCI controller will finish current transaction then release bus. last transaction, will remain asserted regain ownership soon possible.
FRAME
ADDR
DATA
C/BE
0111
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-23
Figure Preemption During Non-Burst Transaction
1-660
Am79C970A
PRELIMINARY Preemption During Burst Transaction When PCnet-PCI controller operates burst mode, only performs single transaction mastership period, where transaction defined address phase multiple data phases. central arbiter remove time during transaction. PCnet-PCI controller will ignore deassertion continue with data transfers, long Latency Timer expired. When Latency Timer ZERO deasserted, PCnet-PCI controller will finish current data phase, deassert FRAME, finish last data phase release bus. EXTREQ (BCR18, cleared ZERO, will immediately assert regain ownership
soon possible. EXTREQ ONE, will stay asserted. When preemption occurs after counter counted down ZERO, PCnet-PCI controller will finish current data phase, deassert FRAME, finish last data phase release bus. Note that important host program Latency Timer according bandwidth requirement PCnet-PCI controller. host determine this bandwidth requirement reading MAX_LAT MIN_GNT registers. figure below assumes that Latency Timer counted down ZERO clock
FRAME
ADDR
DATA
DATA
DATA
DATA
DATA
C/BE
0111
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-24
Figure Preemption During Burst Transaction
Am79C970A
1-661
Master Abort
PRELIMINARY inverted appended next byte boundary guarantee error detected receiving station. RMABORT Status register, will indicate that PCnet-PCI controller terminated transaction with master abort. addition, SINT (CSR5, will ONE. When SINT set, INTA asserted enable SINTE (CSR5, ONE. This mechanism used inform driver system error. host read Status register determine exact cause interrupt.
PCnet-PCI controller will terminate cycle with Master Abort sequence DEVSEL asserted within clocks after FRAME asserted. Master Abort treated fatal error PCnet-PCI controller. PCnet-PCI controller will reset locations their STOP_RESET values. configuration registers will cleared. on-going network transmission terminated orderly sequence. less than bits have been transmitted onto network, transmission will terminated immediately, generating runt packet. bits more have been transmitted, message will have current
FRAME
ADDR
DATA
C/BE
0111
0000
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-25
Figure Master Abort
1-662
Am79C970A
Parity Error Response
During every data phase read operation, when target indicates that data valid asserting TRDY, PCnet-PCI controller samples AD[31:0], C/BE[3:0] lines data parity error. When detects data parity error, controller sets PERR (PCI Status register, ONE. When reporting that error enabled setting PERREN (PCI Command register, ONE, PCnet-PCI controller also drives PERR signal sets DATAPERR (PCI Status register, ONE.
assertion PERR follows corrupted data/byte enables clock cycles clock cycle. figure below shows transaction that parity error data phase. PCnet-PCI controller asserts PERR clock clock cycles after data valid. data clock checked parity, since read access only required valid clock after target asserted TRDY. PCnet-PCI controller then drives PERR high clock cycle, since PERR sustained tri-state signal.
FRAME
ADDR
DATA
C/BE
0111
PERR IRDY
TRDY
DEVSEL DEVSEL sampled
19436C-26
Figure Master Cycle Data Parity Error Response
During every data phase write operation, PCnet-PCI controller checks PERR input target reports parity error. When sees PERR input asserted, controller sets PERR (PCI Status register, ONE. When PERREN (PCI Command register, ONE, PCnet-PCI controller also sets DATAPERR (PCI Status register, ONE. Whenever PCnet-PCI controller current master data parity error occurs, SINT (CSR5, will ONE. When SINT set, INTA
serted enable SINTE (CSR5, ONE. This mechanism used inform driver system error. host read Status register determine exact cause interrupt. setting SINT data parity error dependent setting PERREN (PCI Command register, default, data parity error does affect state engine. PCnet-PCI controller treats data master transfers that have parity
Am79C970A
1-663
PRELIMINARY Transmit buffer read: (TMD1, current transmit descriptor. on-going network transmission terminated orderly sequence. Receive buffer write: (RMD1, last receive descriptor associated with frame. Terminating on-going network transmission orderly sequence means that less than bits have been transmitted onto network, transmission will terminated immediately, generating runt packet. bits more have been transmitted, message will have current inverted appended next byte boundary guarantee error detected receiving station. APERREN does affect reporting address parity errors data parity errors that occur when PCnet-PCI controller target transfer.
error nothing happened. network activity continues. Advanced Parity Error Handling cycles, PCnet-PCI controller provides second, more advanced level parity error handling. This mode enabled setting APERREN (BCR20, ONE. When APERREN ONE, bits (RMD1 TMD1, used indicate parity error data transfers receive transmit buffers. Note that since advanced parity error handling uses additional descriptor, SWSTYLE (BCR20, bits 7-0) must ONE, THREE program PCnet-PCI controller 32-bit software structures. PCnet-PCI controller will react following when data parity error occurs: Initialization block read: STOP (CSR0, causes STOP_RESET device. Descriptor ring read: on-going network activity terminated orderly sequence then STOP (CSR0, cause STOP_RESET device. Descriptor ring write: on-going network activity terminated orderly sequence then STOP (CSR0, cause STOP_RESET device.
1-664
Am79C970A
Initialization Block Transfers
During execution PCnet-PCI controller master initialization procedure, PCnet-PCI controller microcode will repeatedly request transfers from BIU. During each these initialization block transfers, will perform data transfer cycles reading DWord transfer then will relinquish bus. When SSIZE32 (BCR20, (i.e. initialization block organized 32-bit software structures), there DWords transfer during master initialization procedure, four mastership periods needed order complete initialization sequence. Note that last DWord transfer last mastership period initialization sequence accesses unneeded location. Data from this transfer discarded internally. When SSIZE32 cleared ZERO (i.e. initialization block
organized 16-bit software structures), then three mastership periods needed complete initialization sequence. PCnet-PCI controller supports transfer modes reading initialization block: non-burst burst mode; with burst mode being preferred mode when PCnet-PCI controller used application. When BREADE cleared ZERO (BCR18, initialization block read transfers will executed non-burst mode. There address phase every data phase. FRAME will dropped between transfers. phases within mastership period will have addresses ascending contiguous order.
FRAME
IADDi
DATA
IADDi+4
DATA
C/BE
0110
0000
0110
0000
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-27
Figure Initialization Block Read Non-Burst Mode
Am79C970A
1-665
PRELIMINARY mode. AD[1:0] will ZERO during address phase indicating linear burst order.
When BREADE (BCR18, initialization block read transfers will executed burst
FRAME IADDi 0110
DATA
DATA
C/BE
0000
IRDY TRDY DEVSEL DEVSEL sampled
19436C-28
Figure Initialization Block Read Burst Mode
1-666
Am79C970A
Table Descriptor Read Sequence
Descriptor Transfers
PCnet-PCI controller microcode will determine when descriptor access required. descriptor read will consist data transfers. descriptor write will consist data transfers. descriptor transfers within single mastership period will always same type (either read write). During descriptor read accesses, byte enable signals will indicate that byte lanes active. Should some bytes needed, then PCnet-PCI controller will internally discard extraneous information that gathered during such read. settings SWSTYLE (BCR20, bits 7-0) BREADE (BCR18, affect PCnet-PCI controller performs descriptor read operations. When SWSTYLE ZERO, TWO, descriptor read operations performed non-burst mode. setting BREADE effect this configuration. When SWSTYLE THREE, descriptor entries ordered allow burst transfers. PCnet-PCI controller will perform descriptor read operations burst mode, BREADE ONE.
SWSTYLE BREADE BCR18[6] BCR20[7:0]
Sequence Address XXXX XX00h Turn around cycle Data MD1[31:24], MD0[23:0] Idle Address XXXX XX04h Turn around cycle Data MD2[15:0], MD1[15:0] Address XXXX XX04h Turn around cycle Data MD1[31:0] Idle Address XXXX XX00h Turn around cycle Data MD0[31:0] Address XXXX XX04h Turn around cycle Data MD1[31:0] Idle Address XXXX XX08h Turn around cycle Data MD0[31:0] Address XXXX XX04h Turn around cycle Data MD1[31:0] Data MD0[31:0]
Am79C970A
1-667
FRAME
DATA
DATA
C/BE
0110
0000
0110
0000
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-29
Figure Descriptor Ring Read Non-Burst Mode
During descriptor write accesses, only byte lanes which need written enabled. buffer chaining used, accesses descriptors intermediate buffers consist only data transfer return ownership buffer system. When SWSTYLE (BCR20, bits 7-0) cleared ZERO (i.e. descriptor entries organized 16-bit software structures), descriptor access will write single byte. When SWSTYLE (BCR20, bits 7-0) ONE,
THREE (i.e. descriptor entries organized 32-bit software structures), descriptor access will write single word. single buffer transmit receive descriptors, well last buffer chain, writes descriptor consist data transfers. first writing DWord containing status information. second data transfer writing byte (SWSTYLE cleared ZERO) otherwise word containing additional status ownership (i.e. MD1[31]).
1-668
Am79C970A
FRAME
DATA
DATA
C/BE
0110
0000
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-30
Figure Descriptor Ring Read Burst Mode settings SWSTYLE (BCR20, bits 7-0) BWRITE (BCR18, affect PCnet-PCI controller performs descriptor write operations. When SWSTYLE ZERO, TWO, descriptor write operations performed non-burst mode. setting BWRITE effect this configuration. When SWSTYLE THREE, descriptor entries ordered allow burst transfers. PCnet-PCI controller will perform descriptor write operations burst mode, BWRITE ONE. write transaction descriptor ring entries only case where PCnet-PCI controller inserts wait state when being master. Every data phase non-burst burst mode extended clock cycle, during which IRDY deasserted. Table Descriptor Write Sequence
SWSTYLE BWRITE BCR20[7:0] BCR18[5] Sequence Address XXXX XX04h Data MD2[15:0], MD1[15:0] Idle Address XXXX XX00h Data MD1[31:24] Address XXXX XX08h Data MD2[31:0] Idle Address XXXX XX04h Data MD1[31:16] Address XXXX XX00h Data MD2[31:0] Idle Address XXXX XX04h Data MD1[31:16] Address XXXX XX00h Data MD2[31:0] Data MD1[31:16]
Am79C970A
1-669
PRELIMINARY enable signals second data transfer would 0111b, device programmed 16-bit software structures (SWSTYLE
Note that figure below assumes that PCnet-PCI controller programmed 32-bit software structures (SWSTYLE byte
FRAME
DATA
DATA
C/BE
0111
0000
0111
0011
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-31
Figure Descriptor Ring Write Non-Burst Mode
1-670
Am79C970A
FRAME
DATA
DATA
C/BE
0110
0000
0011
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-32
Figure Descriptor Ring Write Burst Mode
FIFO Transfers
PCnet-PCI controller microcode will determine when FIFO transfer required. This transfer mode will used transfers data from PCnet-PCI controller FIFOs. Once PCnet-PCI controller been granted mastership, will perform series consecutive transfer cycles before relinquishing bus. transfers within master cycle will either read write cycles, transfers will contiguous, ascending addresses. Both nonburst burst cycles used, with burst mode being preferred mode when device used application. Non-Burst FIFO Transfers default mode PCnet-PCI controller uses non-burst transfers read write data when accessing FIFOs. Each non-burst transfer will performed sequentially, with issue address, transfer corresponding data with appropriate output signals indicate selection active data bytes during transfer. FRAME will deasserted
after every address phase. number data transfer cycles contained within single mastership period general dependent programming DMAPLUS option (CSR4, 14). Several other factors will also affect length mastership period. possibilities follows: DMAPLUS cleared ZERO, maximum transfers will performed default. This default value changed writing Transfer Counter (CSR80). Note that DMAPLUS merely sets maximum value. minimum number transfers mastership period will determined following variables: settings FIFO watermarks (CSR80), conditions FIFOs, value Transfer Counter (CSR80), value Timer (CSR82), occurrence preemption that takes place during mastership period. DMAPLUS ONE, cycles will continue until transmit FIFO filled high threshold (read transfers) receive FIFO emptied 1-671
Am79C970A
PRELIMINARY Note that Latency Timer significant during non-burst transfers. Burst FIFO Transfers Bursting only performed PCnet-PCI controller BREADE and/or BWRITE bits BCR18 set. These bits individually enable/disable ability PCnet-PCI controller perform burst accesses during master read operations master write operations, respectively. burst transaction will start with address phase, followed more data phases. AD[1:0] will always ZERO during address phase indicating linear burst order. During FIFO read operations, byte lanes will always active. PCnet-PCI controller will internally discard unused bytes. During first last data phases FIFO burst write operation, more byte enable signals inactive. other data phases will always write complete DWord.
threshold (write transfers), until Activity Timer (CSR82) expired. exact number total transfer cycles mastership period dependent following variables: settings FIFO watermarks, conditions FIFOs, latency system PCnet-PCI controller's request, speed operation preemption events. Transfer Counter disabled when DMAPLUS ONE. TRDY response time memory device will also affect number transfers, since speed accesses will affect state FIFO. During accesses, FIFO filling emptying network end. example, receive operation, slower TRDY response will allow additional data accumulate inside FIFO. accesses slow enough, complete DWord become available before mastership period thereby increase number transfers that period. general rule that longer Grant latency, slower transfer operations, slower clock speed, higher transmit watermark lower receive watermark, longer mastership period will
1-672
Am79C970A
PRELIMINARY following figure shows beginning FIFO write with beginning buffer aligned DWord boundary. PCnet-PCI controller starts writing only three bytes during first data phase.
This operation aligns address other data transfers 32-bit boundary that PCnet-PCI controller continue bursting full DWords.
FRAME
DATA
DATA
DATA
C/BE
0111
0001
0000
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-33
Figure FIFO Burst Write Start Unaligned Buffer
Am79C970A
1-673
PRELIMINARY even when there less then four bytes write. example, there only byte left current receive frame, PCnet-PCI controller will write full DWord, containing last byte receive frame least significant byte position (BSWP cleared ZERO, CSR3, content other three bytes undefined. message byte count receive descriptor always reflects exact length received frame.
receive buffer does DWord boundary, PCnet-PCI controller will perform non-DWord write last transfer buffer. following figure shows final three FIFO transfers receive buffer. Since there were only nine bytes space left receive buffer, PCnet-PCI controller burst three data phases. first data phases write full DWord, last only writes single byte. Note that PCnet-PCI controller will always perform DWord transfer long owns buffer space,
FRAME
DATA
DATA
DATA
C/BE
0111
0000
1110
IRDY
TRDY
DEVSEL
DEVSEL sampled
19436C-34
Figure FIFO Burst Write Unaligned Buffer
application PCnet-PCI controller should have length mastership period controlled only Latency Timer. Timer (CSR4, should remain default value ZERO that Activity Timer (CSR82) enabled. Transfer Counter (CSR80) should disabled setting DMAPLUS (CSR4, ONE. this mode, PCnet-PCI controller will continue transferring FIFO data until 1-674
transmit FIFO filled high threshold (read transfers) receive FIFO emptied threshold (write transfers), PCnet-PCI controller preempted, Latency Timer expired. host should values MIN_GNT MAX_LAT registers determine value Latency Timer.
Am79C970A
PRELIMINARY applications that don't Latency Timer that don't support preemption following rules apply limit time PCnet-PCI controller takes bus. DMAPLUS cleared ZERO, maximum transfers will performed default. This default value changed writing Transfer Counter (CSR80). Note that DMAPLUS merely sets maximum value. minimum number transfers mastership period will determined following variables: settings FIFO watermarks (CSR80), conditions FIFOs, value Transfer Counter (CSR80) value Activity Timer (CSR82). DMAPLUS ONE, bursting will continue until transmit FIFO filled high threshold (read transfers) receive FIFO emptied threshold (write transfers), until Activity Timer (CSR82) expired. exact number total transfer cycles mastership period dependent following variables: settings FIFO watermarks, conditions FIFOs, latency system PCnet-PCI controller's request, speed operation. Transfer Counter disabled when DMAPLUS ONE. TRDY response time memory device will also affect number transfers, since speed accesses will affect state FIFO. During accesses, FIFO filling emptying network end. example, receive operation, slower TRDY response will allow additional data accumulate inside FIFO. accesses slow enough, complete DWord become available before mastership period thereby increase number transfers that period. general rule that longer Grant latency, slower transfer operations, slower clock speed, higher transmit watermark lower receive watermark, longer total burst length will When FIFO burst operation preempted, PCnet-PCI controller will relinquish ownership until Latency Timer expires. Transfer Counter will freeze current value while PCnet-PCI controller waiting regain ownership. will continue counting when FIFO burst operation restarts. Activity Timer will reset starting value when PCnet-PCI controller regains ownership. Latency Timer cannot disabled. Systems that support preemption that want control duration PCnet-PCI controller mastership period with Transfer Counter Activity Timer must program Latency Timer with high value that does expire before other registers
BUFFER MANAGEMENT UNIT
Buffer Management Unit (BMU) microcoded state machine which implements initialization procedure manages descriptors buffers. buffer management unit operates half speed input.
Initialization
PCnet-PCI controller initialization includes reading initialization block memory obtain operating parameters. initialization block organized ways. When SSIZE32 (BCR20, default value ZERO, initialization block entries logically 16-bits wide backwards compatible with Am79C90 C-LANCE Am79C96x PCnet-ISA family. When SSIZE32 (BCR20, ONE, initialization block entries logically 32-bits wide. Note that PCnet-PCI controller always performs 32-bit transfers read initialization block entries. initialization block read when INIT CSR0 set. INIT should before concurrent with STRT insure correct operation. Once initialization block been completely read internal registers have been updated, IDON will CSR0, generating interrupt IENA set). PCnet-PCI controller obtains start address initialization block from contents CSR1 (least significant bits address) CSR2 (most significant bits address). host must write CSR1 CSR2 before setting INIT bit. initialization block contains user defined conditions PCnet-PCI controller operation, together with base addresses length information transmit receive descriptor rings. There alternate method initialize PCnet-PCI controller. Instead initialization initialization block memory, data written directly into appropriate registers. Either method combination used discretion programmer. Please refer Appendix details this alternate method.
Re-Initialization
transmitter receiver sections PCnet-PCI controller turned initialization block (DTX, DRX, CSR15, bits 1-0). states transmitter receiver monitored host through CSR0 (RXON, TXON bits). PCnet-PCI controller should re-initialized transmitter and/or receiver were turned during original initialization, subsequently required activate them either section shut detection error condition (MERR, UFLO, BUFF error). Re-initialization done initialization block setting STOP CSR0, followed writing 1-675
Am79C970A
PRELIMINARY (SWSTYLE, BCR20, bits 7-0) affects descriptor rings their entries arranged. When SWSTYLE default value ZERO, descriptor rings backwards compatible with Am79C90 C-LANCE Am79C96x PCnet-ISA family. descriptor ring base addresses must aligned 8-byte boundary maximum ring entries allowed when ring length through TLEN RLEN fields initialization block. Each ring entry contains subset three 32-bit transmit receive message descriptors (TMD, RMD) that organized four 16-bit structures (SSIZE (BCR20, ZERO). Note that even though PCnet-PCI controller treats descriptor entries 16-bit structures, will always perform 32-bit transfers access descriptor entries. value CSR2, bits 15-8 used upper 8-bits memory addresses during master transfers. When SWSTYLE ONE, THREE, descriptor ring base addresses must aligned 16-byte boundary maximum ring entries allowed when ring length through TLEN RLEN fields initialization block. Each ring entry organized three 32-bit message descriptors (SSIZE32 (BCR20, ONE). fourth DWord reserved. When SWSTYLE THREE, order message descriptors optimized allow read write access burst mode. software style, ring lengths beyond this range 65535) writing transmit receive ring length registers (CSR76, CSR78) directly. Each ring entry contains following information: address actual message data buffer user host memory length message buffer Status information indicating condition buffer permit queuing de-queuing message buffers, ownership each buffer allocated either PCnet-PCI controller host. within descriptor status information, either RMD, used this purpose. When ONE, signifies that PCnet-PCI controller currently ownership this ring descriptor associated buffer. Only owner permitted relinquish ownership write field descriptor entry. device that current owner descriptor entry cannot assume ownership change field entry. device may, however, read from descriptor that does currently own. Software should always read descriptor entries sequential order. When software finds that current descriptor owned PCnet-PCI
CSR15, then setting START CSR0. Note that this form restart will perform same PCnet-PCI controller CLANCE. particular, upon restart, PCnet-PCI controller reloads transmit receive descriptor pointers with their respective base addresses. This means that software must clear descriptor bits reset descriptor ring pointers before restarting PCnet-PCI controller. reload descriptor base addresses performed CLANCE only after initialization, restart CLANCE without initialization leaves CLANCE pointing same descriptor locations before restart.
Suspend
PCnet-PCI controller offers suspend mode that allows easy updating registers without going through full re-initialization device. suspend mode also allows stopping device with orderly termination network activity. host requests PCnet-PCI controller enter suspend mode setting SPND (CSR5, ONE. When host sets SPND ONE, PCnet-PCI controller first finishes on-going transmit activity updates corresponding transmit descriptor entries. then finishes on-going receive activity updates corresponding receive descriptor entries. then sets read-version SPND enters suspend mode. host must poll SPND until reads back determine that PCnet-PCI controller entered suspend mode. suspend mode, registers accessible. long PCnet-PCI controller reset while suspend mode H_RESET, S_RESET setting STOP bit), re-initialization device required after device comes suspend mode. When host clears SPND, PCnet-PCI controller will leave suspend mode will continue transmit receive descriptor ring locations, where left off.
Buffer Management
Buffer management accomplished through message descriptor entries organized ring structures memory. There descriptor rings, transmit receive. Each descriptor describes single buffer. frame occupy more buffers. multiple buffers used, this referred buffer chaining.
Descriptor Rings
Each descriptor ring must occupy contiguous area memory. During initialization user-defined base address transmit receive descriptor rings, well number entries contained descriptor rings programming software style
1-676
Am79C970A
PRELIMINARY controller, then software must read ahead next descriptor. software should wait descriptor does until PCnet-PCI controller sets ZERO release ownership software. (When LAPPEN (CSR3, ONE, this rule modified. LAPPEN description.) initialization, PCnet-PCI controller reads base address both transmit receive descriptor rings into CSRs PCnet-PCI controller during subsequent operations.
following figure illustrates relationship between initialization base address, initialization block, receive transmit descriptor ring base addresses, receive transmit descriptors receive transmit data buffers, when SSIZE32 cleared ZERO. Note that value CSR2, bits 15-8 used upper 8-bits memory addresses during master transfers.
Descriptor Ring
CSR2 IADR[31:16] CSR1 IADR[15:0] RMD0 RMD0 desc. start desc.
Initialization Block PADR[15:0] PADR[31:16] PADR[47:32] LADRF[15:0] LADRF[31:16] LADRF[47:32] LADRF[63:48] RDRA[15:0] RDRA[23:16] TDRA[15:0] TDRA[23:16]
Buffers
Data Buffer
Data Buffer
Data Buffer
Descriptor Ring
desc. start desc.
Buffers
Data Buffer
Data Buffer
Data Buffer
19436C-35
Figure 16-Bit Software Model
Am79C970A
1-677
PRELIMINARY addresses, receive transmit descriptors receive transmit data buffers, when SSIZE32 ONE.
following figure illustrates relationship between initialization base address, initialization block, receive transmit descriptor ring base
CSR2
IADR[31:16]
CSR1
IADR[15:0]
desc. start
Descriptor Ring
desc. start
Initialization Block
MODE PADR[31:0] PADR[47:32] LADRF[31:0] LADRF[63:32] RDRA[31:0] TDRA[31:0]
Buff
Data Buffer
Data Buffer
Data Buffer
desc. start
Descriptor Ring
desc. start
TMD0
TMD0 TMD1 TMD2 TMD3
Buff
Data Buffer
Data Buffer
Data Buffer
19436C-36
Figure 32-bit Software Model
Polling
there network channel activity there pre- post-receive pre- post-transmit activity being performed PCnet-PCI controller, then PCnet-PCI controller will periodically poll current receive transmit descriptor entries order ascertain their ownership. DPOLL CSR4 set, then transmit polling function disabled. typical polling operation consists following: PCnet-PCI controller will current receive descriptor address stored internally vector
appropriate Receive Descriptor Table Entry (RDTE). will then current transmit descriptor address (stored internally) vector appropriate Transmit Descriptor Table Entry (TDTE). accesses will made following order: RMD1, then RMD0 current RDTE during arbitration, after that, TMD1, then TMD0 current TDTE during second arbitration. information collected during polling activity will stored internally appropriate CSRs, set. (i.e. CSR18, CSR19, CSR20, CSR21, CSR40, CSR42, CSR50, CSR52).
1-678
Am79C970A
PRELIMINARY typical receive poll following conditions: product
PCnet-PCI controller does current poll time elapsed RXON (CSR0, PCnet-PCI controller does next RDTE there more than receive descriptor ring poll time elapsed RXON RXON cleared ZERO, PCnet-PCI controller will never poll RDTE locations. order avoid missing frames system should have least RDTE available. minimize poll activity RDTEs should available. this case, poll operation will only consist check status current TDTE. typical transmit poll product following conditions: PCnet-PCI controller does current TDTE DPOLL (CSR4, TXON (CSR0, poll time elapsed, PCnet-PCI controller does current TDTE DPOLL TXON frame just been received, PCnet-PCI controller does current TDTE DPOLL TXON frame just been transmitted. Setting TDMD CSR0 will cause microcode controller exit poll counting code immediately perform polling operation. RDTE ownership been previously established, then RDTE poll will performed ahead TDTE poll. microcode executing poll counting code when TDMD set, then demanded poll TDTE will delayed until microcode returns poll counting code. user change poll time value from default 65,536 clock periods modifying value Polling Interval register (CSR47).
chain buffers.) After resetting this descriptor, PCnet-PCI controller will again immediately request order access next TDTE location ring. buffer length will cleared. C-LANCE buffer length interpreted 4096-byte buffer. zero length buffers acceptable long last buffer chain (STP set, then microcode control proceeds routine that will enable transmit data transfers FIFO. PCnet-PCI controller will look ahead next transmit descriptor after performed least transmit data transfer from first buffer. PCnet-PCI controller does next TDTE (i.e. second TDTE this frame), will complete transmission current buffer update status current (first) TDTE with BUFF UFLO bits being set. DXSUFLO (CSR3, cleared ZERO, underflow error will cause transmitter disabled (CSR0, TXON PCnet-PCI controller will have re-initialized restore transmit function. Setting DXSUFLO enables PCnet-PCI controller gracefully recover from underflow error. device will scan transmit descriptor ring until finds either start frame TDTE does own. avoid underflow situation chained buffer transmission, system should always transmit chain descriptor bits reverse order. PCnet-PCI controller does second TDTE chain, will gradually empty contents first buffer bytes needed transmit operation), perform single-cycle transfer update status first descriptor (clear TMD1), then perform data access second buffer chain before executing another lookahead operation. (i.e. lookahead third descriptor.) imperative that host system never reads TDTE bits order. PCnet-PCI controller normally clears bits strict FIFO order. However, PCnet-PCI controller queue frames transmit FIFO. When second frame uses buffer chaining, PCnet-PCI controller might return ownership normal FIFO order. last (and maybe only) buffer first frame cleared until transmission completed. During transmission PCnet-PCI controller will read buffers next frame clear their bits last one. first intermediate buffers second frame have their bits cleared before
Transmit Descriptor Table Entry
after Transmit Descriptor Table Entry (TDTE) access, PCnet-PCI controller finds that that TDTE set, PCnet-PCI controller resumes poll time count re-examines same TDTE next expiration poll time count. TDTE set, Start Packet (STP) set, PCnet-PCI controller will immediately request order clear this descriptor. (This condition would normally found following late collision (LCOL) retry (RTRY) error that occurred middle transmit frame
Am79C970A
1-679
PRELIMINARY PCnet-PCI controller retains ownership current next RDTE. When receive activity present channel, PCnet-PCI controller waits complete address message arrive. then decides whether accept reject frame based active addressing schemes. frame accepted PCnet-PCI controller checks current receive buffer status register CRST (CSR41) determine ownership current buffer. ownership lacking, PCnet-PCI controller will immediately perform final poll current RDTE. ownership still denied, PCnet-PCI controller buffer which store incoming message. MISS will CSR0 Missed Frame Counter (CSR112) will incremented. interrupt will generated IENA (CSR0, MISSM (CSR3, cleared ZERO. Another poll current RDTE will occur until frame finished. PCnet-PCI controller sees that last poll (either normal poll, final effort described above paragraph) current RDTE shows valid ownership, proceeds poll next RDTE. Following this poll, regardless outcome this poll, transfers receive data from FIFO begin. Regardless ownership second receive descriptor, PCnet-PCI controller will continue perform receive data transfers first buffer. frame length exceeds length first buffer, PCnet-PCI controller does second buffer, ownership current descriptor will passed back system writing ZERO RMD1 status will written indicating buffer (BUFF possibly overflow (OFLO errors. frame length exceeds length first (current) buffer, PCnet-PCI controller does second (next) buffer, ownership will passed back system writing ZERO RMD1 when first buffer full. only modified descriptor. Receive data transfers second buffer occur before PCnet-PCI controller proceeds look ahead ownership third buffer. Such action will depend upon state FIFO when been updated first descriptor. case, lookahead will performed third buffer information gathered will stored chip, regardless state ownership bit. This activity continues until PCnet-PCI controller recognizes completion frame (the last byte this receive message been removed from FIFO). PCnet-PCI controller will subsequently
PCnet-PCI controller returns ownership last buffer first frame. error occurs transmission before bytes current buffer have been transferred, transmit status current buffer will immediately updated. buffer does contain packet, PCnet-PCI controller will skip over rest frame which experienced error. This done returning polling microcode where PCnet-PCI controller will clear descriptors with continue like manner until descriptor with more transmit frames ring) (the first buffer frame) reached. transmit operation, whether successful with errors, immediately following completion descriptor updates, PCnet-PCI controller will always perform another polling operation. described earlier, this polling operation will begin with check current RDTE, unless PCnet-PCI controller already owns that descriptor. Then PCnet-PCI controller will poll next TDTE. transmit descriptor ZERO value, PCnet-PCI controller will resume incrementing poll time counter. transmit descriptor value ONE, PCnet-PCI controller will begin filling FIFO with transmit data initiate transmission. This end-ofoperation poll coupled with TDTE lookahead operation allows PCnet-PCI controller avoid inserting poll time counts between successive transmit frames. default, whenever PCnet-PCI controller completes transmit frame (either with without error) writes statu

Other recent searches


VN750SM-E - VN750SM-E   VN750SM-E Datasheet
STK7563A - STK7563A   STK7563A Datasheet
SPS-93100FG - SPS-93100FG   SPS-93100FG Datasheet
SN8P2501B - SN8P2501B   SN8P2501B Datasheet
MEM2012T - MEM2012T   MEM2012T Datasheet
MBR30H100CT - MBR30H100CT   MBR30H100CT Datasheet
MAX975 - MAX975   MAX975 Datasheet
MAX977 - MAX977   MAX977 Datasheet
MAX975 - MAX975   MAX975 Datasheet
MAX977 - MAX977   MAX977 Datasheet
LQ9D340 - LQ9D340   LQ9D340 Datasheet
HYMP532S64P6-E3 - HYMP532S64P6-E3   HYMP532S64P6-E3 Datasheet

 

Privacy Policy | Disclaimer
© 2012 Datasheet Archive