AM79C961KC [AMD]

PCnetTM-ISA+ Jumperless Single-Chip Ethernet Controller for ISA; PCnetTM -ISA +无跳线单芯片以太网控制器ISA
AM79C961KC
型号: AM79C961KC
厂家: AMD    AMD
描述:

PCnetTM-ISA+ Jumperless Single-Chip Ethernet Controller for ISA
PCnetTM -ISA +无跳线单芯片以太网控制器ISA

跳线 控制器 PC 以太网
文件: 总173页 (文件大小:1041K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
PRELIMINARY  
Advanced  
Micro  
Am79C961  
PCnetTM-ISA+ Jumperless Single-Chip Ethernet Controller  
for ISA  
Devices  
DISTINCTIVE CHARACTERISTICS  
Single-chip Ethernet controller for the Industry  
Standard Architecture (ISA) and Extended  
Industry Standard Architecture (EISA) buses  
Look Ahead Packet Processing (LAPP) allows  
protocol analysis to begin before end of  
receive frame  
Supports IEEE 802.3/ANSI 8802-3 and Ethernet  
Supports 4 DMA channels on chip  
Supports 16 I/O locations  
standards  
Direct interface to the ISA or EISA bus  
Supports 16 boot PROM locations  
Software compatible with AMD’s Am7990  
Provides integrated Attachment Unit Interface  
(AUI) and 10BASE-T transceiver with 2 modes  
of port selection:  
LANCE register and descriptor architecture  
Low power, CMOS design with sleep mode  
allows reduced power consumption for critical  
battery powered applications  
— Automatic selection of AUI or 10BASE-T  
— Software selection of AUI or 10BASE-T  
Individual 136-byte transmit and 128-byte  
receive FIFOs provide packet buffering for  
increased system latency, and support the  
following features:  
Automatic Twisted Pair receive polarity  
detection and automatic correction of the  
receive polarity  
Supports bus-master and shared-memory  
— Automatic retransmission with no FIFO  
reload  
architectures to fit in any PC application  
Supports edge and level-sensitive interrupts  
— Automatic receive stripping and transmit  
padding (individually programmable)  
DMA Buffer Management Unit for reduced CPU  
intervention which allows higher throughput by  
by-passing the platform DMA  
— Automatic runt packet rejection  
— Automatic deletion of received collision  
frames  
JTAG Boundary Scan (IEEE 1149.1) test access  
port interface for board level production test  
Dynamic transmit FCS generation program-  
Integrated Manchester Encoder/Decoder  
mable on a frame-by-frame basis  
Supports the following types of network  
Single +5 V power supply  
interfaces:  
Internal/external loopback capabilities  
— AUI to external 10BASE2, 10BASE5,  
10BASE-T or 10BASE-F MAU  
Supports 8K, 16K, 32K, and 64K Boot PROMs  
or Flash for diskless node applications  
— Internal 10BASE-T transceiver with Smart  
Squelch to Twisted Pair medium  
Supports Microsoft’s Plug and Play System  
configuration for jumperless designs  
Supports LANCE General Purpose Serial  
Supports staggered AT bus drive for reduced  
Interface (GPSI)  
noise and ground bounce  
132-pin PQFP package  
Supports 8 interrupts on chip  
GENERAL DESCRIPTION  
The PCnet-ISA+ controller, a single-chip Ethernet con-  
troller, is a highly integrated system solution for the  
PC-AT Industry Standard Architecture (ISA ) architec-  
ture. It is designed to provide flexibility and compatibility  
with any existing PC application. This highly integrated  
132-pin VLSI device is specifically designed to reduce  
parts count and cost, and addresses applications where  
higher system throughput is desired. The PCnet-ISA+  
controller is fabricated with AMD’s advanced low-power  
CMOS process to provide low standby current for power  
sensitive applications.  
ThePCnet-ISA+ controllerisaDMA-baseddevicewitha  
dual architecture that can be configured in two different  
operating modes to suit a particular PC application. In  
the Bus Master Mode all transfers are performed using  
Publication# 18183 Rev. B Amendment/0  
This document contains information on a product under development at Advanced Micro Devices, Inc.  
The information is intended to help you to evaluate this product. AMD reserves the right to change or  
discontinue work on this proposed product without notice.  
1-475  
Issue Date: April 1994  
AMD  
P R E L I M I N A R Y  
the integrated DMA controller. This configuration en-  
hances system performance by allowing the  
PCnet-ISA+ controller to bypass the platform DMA con-  
troller and directly address the full 24-bit memory space.  
The implementation of Bus Master Mode allows mini-  
mum parts count for the majority of PC applications. The  
PCnet-ISA+ controller can be configured to perform  
Shared Memory operations for compatibility with low-  
end machines, such as PC/XTs that do not support Bus  
Master and high-end machines that require local packet  
buffering for increased system latency.  
External remote boot and Ethernet physical address  
PROMs and Electrically Erasable Proms are also  
supported.  
This advanced Ethernet controller has the built-in capa-  
bility of automatically selecting either the AUI port or the  
Twisted Pair transceiver. Only one interface is active at  
any one time. The individual 136-byte transmit and  
128-byte receive FIFOs optimize system overhead, pro-  
viding sufficient latency during packet transmission and  
reception, and minimizing intervention during normal  
network error recovery. The integrated Manchester en-  
coder/decodereliminatestheneedforanexternalSerial  
Interface Adapter (SIA) in the node system. If support  
for an external encoding/decoding scheme is desired,  
the embedded General Purpose Serial Interface (GPSI)  
allows direct access to/from the MAC. In addition, the  
device provides programmable on-chip LED drivers for  
transmit, receive, collision, receive polarity, link integrity  
and activity, or jabber status. The PCnet-ISA+ controller  
also provides an External Address Detection Interface  
(EADI ) to allow external hardware address filtering in  
internetworking applications.  
The PCnet-ISA+ controller is designed to directly inter-  
face with the ISA or EISA system bus. It contains an ISA  
Plug and Play bus interface unit, DMA Buffer Manage-  
ment Unit, 802.3 Media Access Control function,  
individual 136-byte transmit and 128-byte receive  
FIFOs, IEEE 802.3 defined Attachment Unit Interface  
(AUI), and a Twisted Pair Transceiver Media Attach-  
ment Unit. The PCnet-ISA+ controller is also register  
compatible with the LANCE (Am7990) Ethernet control-  
ler and PCnet-ISA. The DMA Buffer Management Unit  
supports the LANCE descriptor software model.  
RELATED PRODUCTS  
Part No.  
Description  
Am79C98  
Am79C100  
Am7996  
Twisted Pair Ethernet Transceiver (TPEX)  
Twisted Pair Ethernet Transceiver Plus (TPEX+)  
IEEE 802.3/Ethernet/Cheapernet Transceiver  
Integrated Multiport Repeater Plus (IMR+ )  
Am79C981  
Am79C987  
Am79C940  
Am79C90  
Am79C960  
Am79C965  
Am79C970  
Hardware Implemented Management Information Base (HIMIB )  
Media Access Controller for Ethernet (MACE )  
CMOS Local Area Network Controller for Ethernet (C-LANCE)  
PCnet-ISA Single-Chip Ethernet Controller (for ISA bus)  
PCnet-32 Single-Chip 32-Bit Ethernet Controller (for 386, 486, VL local buses)  
PCnet-PCI Single-Chip Ethernet Controller (for PCI bus)  
1-476  
Am79C961  
P R E L I M I N A R Y  
AMD  
ORDERING INFORMATION  
Standard Products  
AMD standard products are available in several packages and operating ranges. The order number (Valid Combination) is  
formed by a combination of:  
AM79C961  
K
C
\W  
ALTERNATE PACKAGING OPTION  
\W = Trimmed and Formed (PQB132)  
OPTIONAL PROCESSING  
Blank = Standard Processing  
TEMPERATURE RANGE  
C = Commercial (0° to +70°C)  
PACKAGE TYPE (per Prod. Nomenclature/16-038)  
K = Molded Carrier Ring Plastic Quad Flat Pack  
(PQB132)  
SPEED  
Not Applicable  
DEVICE NUMBER/DESCRIPTION  
Am79C961  
Valid Combinations  
Valid Combinations  
AM79C961 KC, KC\W  
The Valid Combinations table lists configurations  
planned to be supported in volume for this device.  
Consult the local AMD sales office to confirm  
availability of specific valid combinations and to  
check on newly released combinations.  
1-477  
Am79C961  
AMD  
TABLE OF CONTENTS  
P R E L I M I N A R Y  
DISTINCTIVE CHARACTERISTICS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-475  
GENERAL DESCRIPTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-475  
RELATED PRODUCTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-476  
ORDERING INFORMATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-477  
BLOCK DIAGRAM: BUS MASTER MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-484  
CONNECTION DIAGRAM: BUS MASTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-484  
PIN DESIGNATIONS: BUS MASTER  
LISTED BY PIN NUMBER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-486  
LISTED BY PIN NAME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-487  
LISTED BY GROUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-488  
PIN DESCRIPTION: BUS MASTER MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-490  
ISA INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-490  
BOARD INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-491  
BLOCK DIAGRAM: SHARED MEMORY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-493  
CONNECTION DIAGRAM: SHARED MEMORY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-494  
PIN DESIGNATIONS: SHARED MEMORY  
LISTED BY PIN NUMBER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-495  
LISTED BY PIN NAME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-496  
LISTED BY GROUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-497  
PIN DESCRIPTION: SHARED MEMORY MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-499  
ISA INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-499  
BOARD INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-500  
PIN DESCRIPTION: NETWORK INTERFACES (mode independent) . . . . . . . . . . . . . . . . 1-502  
AUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-502  
TWISTED PAIR INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-502  
IEEE 1149.1 TEST ACCESS PORT INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-502  
PIN DESCRIPTION: POWER SUPPLIES (mode independent) . . . . . . . . . . . . . . . . . . . . . 1-502  
FUNCTIONAL DESCRIPTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-503  
BUS MASTER MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-503  
SHARED MEMORY MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-505  
NETWORK INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-505  
PLUG AND PLAY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-507  
DETAILED FUNCTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-514  
EEPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-514  
SERIAL EEPROM BYTE MAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-515  
PLUG AND PLAY REGISTER MAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-517  
PLUG AND PLAY REGISTER LOCATIONS DETAILED DESCRIPTION . . . . . . . . . . . 1-518  
SHARED MEMORY CONFIGURATION BITS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-520  
USE WITHOUT EEPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-521  
EXTERNAL SCAN CHAIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-521  
FLASH PROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-521  
OPTIONAL IEEE ADDRESS PROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-521  
EISA CONFIGURATION REGISTERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-521  
1-478  
Am79C961  
P R E L I M I N A R Y  
AMD  
BUS INTERFACE UNIT (BIU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-521  
DMA Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-521  
1. Initialization Block DMA Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-521  
2. Descriptor DMA Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-522  
3. Burst-Cycle DMA Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-522  
BUFFER MANAGEMENT UNIT (BMU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-522  
Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-522  
Reinitialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-522  
Buffer Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-522  
Descriptor Rings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-522  
Descriptor Ring Access Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-523  
Polling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-523  
Transmit Descriptor Table Entry (TDTE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-525  
Receive Descriptor Table Entry (RDTE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-526  
MEDIA ACCESS CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-527  
Transmit and Receive Message Data Encapsulation . . . . . . . . . . . . . . . . . . . . . . . 1-527  
Media Access Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-528  
MANCHESTER ENCODER/DECODER (MENDEC) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-530  
External Crystal Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-530  
External Clock Drive Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-530  
MENDEC Transmit Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-530  
Transmitter Timing and Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-530  
Receive Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-531  
Input Signal Conditioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-531  
Clock Acquisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-531  
PLL Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-531  
Carrier Tracking and End of Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-532  
Data Decoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-532  
Differential Input Terminations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-532  
Collision Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-532  
Jitter Tolerance Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-532  
Attachment Unit Interface (AUI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-532  
TWISTED PAIR TRANSCEIVER (T-MAU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-532  
Twisted Pair Transmit Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-533  
Twisted Pair Receive Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-533  
Link Test Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-533  
Polarity Detection and Reversal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-533  
Twisted Pair Interface Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-534  
Collision Detect Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-534  
Signal Quality Error (SQE) Test (Heartbeat) Function . . . . . . . . . . . . . . . . . . . . . . 1-534  
Jabber Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-534  
Power Down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-534  
EADI (External Address Detection Interface ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-534  
GENERAL PURPOSE SERIAL INTERFACE (GPSI) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-536  
IEEE 1149.1 TEST ACCESS PORT INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-537  
Boundary Scan Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-537  
1-479  
Am79C961  
AMD  
P R E L I M I N A R Y  
TAP FSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-537  
Supported Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-537  
Instruction Register and Decoding Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-537  
Boundary Scan Register (BSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-537  
Other Data Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-537  
POWER SAVING MODES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-538  
ACCESS OPERATIONS (SOFTWARE)  
I/O Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-538  
I/O Register Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-538  
IEEE Address Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-538  
Boot PROM Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-538  
Static RAM Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-538  
BUS CYCLES (HARDWARE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-538  
Bus Master Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-539  
Refresh Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-539  
Address PROM Cycles External PROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-539  
Ethernet Controller Register Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-540  
RESET Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-540  
ISA Configuration Register Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-540  
Boot PROM Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-540  
Current Master Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-540  
Master Mode Memory Read Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-541  
Master Mode Memory Write Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-541  
Shared Memory Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-541  
Address PROM Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-541  
Ethernet Controller Register Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-542  
RESET Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-542  
ISA Configuration Register Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-542  
Boot PROM Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-542  
Static RAM Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-542  
TRANSMIT OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-544  
Transmit Function Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-544  
Automatic Pad Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-544  
Transmit FCS Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-544  
Transmit Exception Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-544  
Loss of Carrier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-545  
RECEIVE OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-545  
Receive Function Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-545  
Automatic Pad Stripping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-546  
Receive FCS Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-546  
Receive Exception Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-546  
LOOPBACK OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-547  
LEDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-548  
PCnet-ISA+ CONTROLLER REGISTERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-549  
REGISTER ACCESS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-549  
CONTROL AND STATUS REGISTERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-549  
1-480  
Am79C961  
P R E L I M I N A R Y  
AMD  
CSR0: PCnet-ISA+ Controller Status Register . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-549  
CSR1: IADR[15:0] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-551  
CSR2: IADR[23:16] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-551  
CSR3: Interrupt Masks and Deferral Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-551  
CSR4: Test and Features Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-552  
CSR6: RCV/XMT Descriptor Table Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-554  
CSR8: Logical Address Filter, LADRF[15:0] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-554  
CSR9: Logical Address Filter, LADRF[31:16] . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-554  
CSR10: Logical Address Filter, LADRF[47:32] . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-554  
CSR11: Logical Address Filter, LADRF[63:48] . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-554  
CSR12: Physical Address Register, PADR[15:0] . . . . . . . . . . . . . . . . . . . . . . . . . 1-554  
CSR13: Physical Address Register, PADR[31:16] . . . . . . . . . . . . . . . . . . . . . . . . 1-555  
CSR14: Physical Address Register, PADR[47:32] . . . . . . . . . . . . . . . . . . . . . . . . 1-555  
CSR15: Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-555  
CSR16: Initialization Block Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-557  
CSR17: Initialization Block Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-557  
CSR18–19: Current Receive Buffer Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-557  
CSR20–21: Current Transmit Buffer Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-557  
CSR22–23: Next Receive Buffer Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-557  
CSR24–25: Base Address of Receive Ring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-557  
CSR26–27: Next Receive Descriptor Address . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-558  
CSR28–29: Current Receive Descriptor Address . . . . . . . . . . . . . . . . . . . . . . . . . 1-558  
CSR30–31: Base Address of Transmit Ring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-558  
CSR32–33: Next Transmit Descriptor Address . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-558  
CSR34–35: Current Transmit Descriptor Address . . . . . . . . . . . . . . . . . . . . . . . . . 1-558  
CSR36–37: Next Next Receive Descriptor Address . . . . . . . . . . . . . . . . . . . . . . . 1-558  
CSR38–39: Next Next Transmit Descriptor Address . . . . . . . . . . . . . . . . . . . . . . . 1-558  
CSR40–41: Current Receive Status and Byte Count . . . . . . . . . . . . . . . . . . . . . . 1-558  
CSR42–43: Current Transmit Status and Byte Count . . . . . . . . . . . . . . . . . . . . . . 1-558  
CSR44–45: Next Receive Status and Byte Count . . . . . . . . . . . . . . . . . . . . . . . . . 1-559  
CSR46: Poll Time Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-559  
CSR47: Polling Interval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-559  
CSR48–49: Temporary Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-559  
CSR50–51: Temporary Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-559  
CSR52–53: Temporary Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-559  
CSR54–55: Temporary Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-559  
CSR56–57: Temporary Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-560  
CSR58–59: Temporary Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-560  
CSR60–61: Previous Transmit Descriptor Address . . . . . . . . . . . . . . . . . . . . . . . . 1-560  
CSR62–63: Previous Transmit Status and Byte Count . . . . . . . . . . . . . . . . . . . . . 1-560  
CSR64–65: Next Transmit Buffer Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-560  
CSR66–67: Next Transmit Status and Byte Count . . . . . . . . . . . . . . . . . . . . . . . . 1-560  
CSR68–69: Transmit Status Temporary Storage . . . . . . . . . . . . . . . . . . . . . . . . . 1-560  
CSR70–71: Temporary Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-560  
CSR72: Receive Ring Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-561  
CSR74: Transmit Ring Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-561  
CSR76: Receive Ring Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-561  
1-481  
Am79C961  
AMD  
P R E L I M I N A R Y  
CSR78: Transmit Ring Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-561  
CSR80: Burst and FIFO Threshold Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-561  
CSR82: Bus Activity Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-561  
CSR84–85: DMA Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-562  
CSR86: Buffer Byte Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-563  
CSR88–89: Chip ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-563  
CSR92: Ring Length Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-563  
CSR94: Transmit Time Domain Reflectometry Count . . . . . . . . . . . . . . . . . . . . . . 1-563  
CSR96–97: Bus Interface Scratch Register 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-563  
CSR98–99: Bus Interface Scratch Register 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-563  
CSR104–105: SWAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-563  
CSR108–109: Buffer Management Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-564  
CSR112: Missed Frame Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-564  
CSR114: Receive Collision Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-564  
CSR124: Buffer Management Unit Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-564  
ISA BUS CONFIGURATION REGISTERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-564  
ISACSR0: Master Mode Read Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-565  
ISACSR1: Master Mode Write Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-565  
ISACSR2: Miscellaneous Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-565  
ISACSR3: EEPROM Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-566  
ISACSR4: Link Integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-567  
ISACSR5: Default: RCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-567  
ISACSR6: Default: RCVPOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-568  
ISACSR7: Default: XMT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-568  
ISACSR8: Software Configuration (Read-Only Register) . . . . . . . . . . . . . . . . . . . . 1-569  
INITIALIZATION BLOCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-569  
RLEN and TLEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-569  
RDRA and TDRA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-570  
LADRF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-570  
PADR  
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-570  
MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-570  
RECEIVE DESCRIPTORS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-571  
RMD0  
RMD1  
RMD2  
RMD3  
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-571  
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-571  
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-572  
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-572  
TRANSMIT DESCRIPTORS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-572  
TMD0  
TMD1  
TMD2  
TMD3  
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-572  
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-572  
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-573  
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-573  
REGISTER SUMMARY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-575  
SYSTEM APPLICATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-578  
ISA BUS INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-578  
Compatibility Consideration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-578  
1-482  
Am79C961  
P R E L I M I N A R Y  
AMD  
Bus Masters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-578  
Shared Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-578  
OPTIONAL ADDRESS PROM INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-582  
BOOT PROM INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-582  
STATIC RAM INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-582  
AUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-582  
EEPROM INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-582  
10BASE-T INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-582  
ABSOLUTE MAXIMUM RATINGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-584  
OPERATING RANGES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-584  
DC CHARACTERISTICS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-584  
SWITCHING CHARACTERISTICS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-587  
BUS MASTER MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-587  
SHARED MEMORY MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-591  
EADI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-595  
JTAG (IEEE 1149.1) INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-595  
GPSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-596  
AUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-597  
10BASE-T INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-598  
SERIAL EEPROM INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-598  
KEY TO SWITCHING WAVEFORMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-699  
SWITCHING TEST CIRCUITS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-600  
SWITCHING WAVEFORMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-602  
BUS MASTER MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-602  
SHARED MEMORY MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-612  
GPSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-622  
EADI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-623  
JTAG (IEEE 1149.1) INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-623  
AUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-624  
10BASE-T INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-627  
APPENDIX A: PCnet-ISA+ COMPATIBLE MEDIA INTERFACE MODULES  
10BASE-T FILTERS and TRANSFORMERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-629  
AUI ISOLATION TRANSFORMERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-629  
MANUFACTURER CONTACT INFORMATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-630  
APPENDIX B: LAYOUT RECOMMENDATION FOR REDUCING NOISE  
DECOUPLING LOW-PASS RC FILTER DESIGN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-631  
APPENDIX C: SAMPLE CONFIGURATION FILE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-633  
APPENDIX D: ALTERNATIVE METHOD FOR INITIALIZATION . . . . . . . . . . . . . . . . . . . . . 1-635  
APPENDIX E: INTRODUCTION TO THE CONCEPT OF LOOK AHEAD PACKET  
PROCESSING (LAPP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-636  
APPENDIX F: SOME CHARACTERISTICS OF THE XXC56 SERIAL EEPROMs . . . . . . . 1-646  
1-483  
Am79C961  
AMD  
P R E L I M I N A R Y  
BLOCK DIAGRAM: BUS MASTER MODE  
AEN  
DACK[3, 5-7]  
DRQ[3, 5-7]  
IOCHRDY  
IOCS16  
DXCVR/EAR  
802.3  
MAC  
Core  
RCV  
FIFO  
IOR  
CI+/-  
IOW  
ISA Bus  
DI+/-  
Encoder/  
Decoder  
(PLS) &  
AUI Port  
IRQ[3, 4, 5, 9, 10,  
Interface  
11, 12]  
XTAL1  
XTAL2  
Unit  
MASTER  
MEMR  
DO+/-  
XMT  
FIFO  
MEMW  
REF  
RXD+/-  
RESET  
10BASE-T  
MAU  
TXD+/-  
SBHE  
TXPD+/-  
BALE  
FIFO  
Control  
IRQ15/APCS  
SD[0-15]  
BPCS  
LED[0-3]  
Private  
Bus  
Control  
Buffer  
Management  
Unit  
LA[17-23]  
SA[0-19]  
PRDB[0-7]  
SLEEP  
TDO  
TMS  
TDI  
SHFBUSY  
EEDO  
EEDI  
JTAG  
Port  
Control  
EEPROM  
Interface  
Unit  
EESK  
EECS  
TCK  
DVDD[1-7]  
18183B-1  
DVSS[1-13]  
AVDD[1-4]  
AVSS[1-2]  
1-484  
Am79C961  
P R E L I M I N A R Y  
AMD  
CONNECTION DIAGRAM: BUS MASTER  
DVSS3  
MASTER  
DRQ7  
DRQ6  
DRQ5  
DVSS10  
DACK7  
DACK6  
DACK5  
LA17  
LA18  
LA19  
LA20  
DVSS4  
LA21  
LA22  
LA23  
SBHE  
DVDD3  
SA0  
SA1  
SA2  
DVSS5  
SA3  
SA4  
1
2
3
4
5
6
7
8
99  
98  
97  
96  
95  
94  
93  
92  
91  
90  
89  
88  
87  
86  
85  
84  
83  
82  
81  
80  
79  
78  
77  
76  
75  
74  
73  
72  
71  
70  
69  
68  
67  
XTAL2  
AVSS2  
XTAL1  
AVDD3  
TXD+  
TXPD+  
TXD-  
TXPD-  
AVDD4  
RXD+  
RXD-  
DVSS13  
SD15  
SD7  
SD14  
SD6  
DVSS9  
SD13  
SD5  
SD12  
SD4  
DVDD7  
SD11  
SD3  
9
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
Top Side View  
SD10  
SD2  
DVSS8  
SD9  
SD1  
SD8  
SD0  
SLEEP  
DVDD6  
SA5  
SA6  
SA7  
SA8  
SA9  
DVSS6  
SA10  
SA11  
18183B-2  
1-485  
Am79C961  
AMD  
P R E L I M I N A R Y  
PIN DESIGNATIONS: BUS MASTER  
Listed by Pin Number  
Pin #  
Name  
Pin #  
Name  
Pin #  
Name  
RXD-  
1
DVSS3  
MASTER  
DRQ7  
DRQ6  
DRQ5  
DVSS10  
DACK7  
DACK6  
DACK5  
LA17  
45  
46  
47  
48  
49  
50  
51  
52  
53  
54  
55  
56  
57  
58  
59  
60  
61  
62  
63  
64  
65  
66  
67  
68  
69  
70  
71  
72  
73  
74  
75  
76  
77  
78  
79  
80  
81  
82  
83  
84  
85  
86  
87  
88  
IOCHRDY  
MEMW  
MEMR  
DVSS11  
IRQ15/APCS  
IRQ12/FlashWE  
IRQ11  
DVDD5  
IRQ10  
IOCS16  
BALE  
89  
2
90  
RXD+  
3
91  
AVDD4  
TXPD-  
TXD-  
4
92  
5
93  
6
94  
TXPD+  
TXD+  
7
95  
8
96  
AVDD3  
XTAL1  
AVSS2  
XTAL2  
AVSS1  
DO-  
9
97  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
42  
43  
44  
98  
LA18  
99  
LA19  
IRQ3  
100  
101  
102  
103  
104  
105  
106  
107  
108  
109  
110  
111  
112  
113  
114  
115  
116  
117  
118  
119  
120  
121  
122  
123  
124  
125  
126  
127  
128  
129  
130  
131  
132  
LA20  
IRQ4  
DVSS4  
LA21  
IRQ5  
DO+  
REF  
AVDD1  
DI-  
LA22  
DVSS12  
DRQ3  
DACK3  
IOR  
LA23  
DI+  
SBHE  
DVDD3  
SA0  
CI-  
CI+  
IOW  
AVDD2  
DXCVR/EAR  
LED3  
SA1  
IRQ9  
SA2  
RESET  
DVDD6  
SLEEP  
SD0  
DVSS5  
SA3  
LED2  
DVSS1  
LED1  
SA4  
SA5  
SD8  
LED0  
SA6  
SD1  
DVDD1  
PRDB7  
PRDB6  
PRDB5  
PRDB4  
DVSS2  
PRDB3  
PRDB2/EEDO  
PRDB1/EEDI  
PRDB0/EESK  
SHFBUSY  
BPCS  
SA7  
SD9  
SA8  
DVSS8  
SD2  
SA9  
DVSS6  
SA10  
SA11  
DVDD4  
SA12  
SA13  
SA14  
SA15  
DVSS7  
SA16  
SA17  
SA18  
SA19  
AEN  
SD10  
SD3  
SD11  
DVDD7  
SD4  
SD12  
SD5  
SD13  
DVSS9  
SD6  
EECS  
TDI  
SD14  
TDO  
SD7  
TMS  
SD15  
TCK  
DVSS13  
DVDD2  
1-486  
Am79C961  
P R E L I M I N A R Y  
AMD  
Pin #  
PIN DESIGNATIONS: BUS MASTER  
Listed by Pin Name  
Pin #  
Name  
SA13  
Name  
Pin #  
Name  
127  
45  
36  
37  
38  
40  
41  
42  
43  
22  
24  
25  
26  
27  
28  
29  
30  
18  
69  
71  
75  
77  
80  
82  
85  
87  
74  
76  
79  
81  
84  
86  
70  
72  
125  
68  
131  
128  
129  
130  
93  
95  
92  
94  
97  
99  
AEN  
44  
103  
108  
96  
91  
100  
98  
55  
126  
106  
107  
62  
9
EECS  
SA14  
SA15  
SA16  
SA17  
SA18  
SA19  
SA2  
AVDD1  
AVDD2  
AVDD3  
AVDD4  
AVSS1  
AVSS2  
BALE  
IOCHRDY  
IOCS16  
IOR  
54  
63  
64  
IOW  
53  
IRQ10  
IRQ11  
IRQ12/FlashWE  
IRQ15/APCS  
IRQ3  
51  
50  
49  
SA3  
BPCS  
56  
SA4  
CI-  
57  
SA5  
CI+  
IRQ4  
58  
SA6  
DACK3  
DACK5  
DACK6  
DACK7  
DI-  
IRQ5  
65  
SA7  
IRQ9  
10  
SA8  
8
LA17  
11  
SA9  
7
LA18  
12  
SBHE  
SD0  
104  
105  
101  
102  
61  
5
LA19  
13  
DI+  
LA20  
15  
SD1  
DO-  
LA21  
16  
SD10  
SD11  
SD12  
SD13  
SD14  
SD15  
SD2  
DO+  
LA22  
17  
DRQ3  
LA23  
114  
113  
111  
110  
2
DRQ5  
LED0  
DRQ6  
4
LED1  
DRQ7  
3
LED2  
DVDD1  
DVDD2  
DVDD3  
DVDD4  
DVDD5  
DVDD6  
DVDD7  
DVSS1  
DVSS10  
DVSS11  
DVSS12  
DVSS13  
DVSS2  
DVSS3  
DVSS4  
DVSS5  
DVSS6  
DVSS7  
DVSS8  
DVSS9  
DXCVR/EAR  
115  
132  
19  
34  
52  
67  
78  
112  
6
LED3  
MASTER  
MEMR  
MEMW  
PRDB0/EESK  
PRDB1/EEDI  
PRDB2/EEDO  
PRDB3  
PRDB4  
PRDB5  
PRDB6  
PRDB7  
REF  
47  
SD3  
46  
SD4  
124  
123  
122  
121  
119  
118  
117  
116  
59  
SD5  
SD6  
SD7  
SD8  
SD9  
SHFBUSY  
SLEEP  
TCK  
48  
60  
88  
120  
1
TDI  
66  
TDO  
RESET  
RXD-  
89  
TMS  
14  
23  
31  
39  
73  
83  
109  
90  
TXD-  
TXD+  
TXPD-  
TXPD+  
XTAL1  
XTAL2  
RXD+  
20  
SA0  
21  
SA1  
32  
SA10  
33  
SA11  
35  
SA12  
1-487  
Am79C961  
AMD  
P R E L I M I N A R Y  
PIN DESIGNATIONS: BUS MASTER  
Listed by Group  
Pin Name  
Pin Function  
I/O  
Driver  
ISA Bus Interface  
AEN  
Address Enable  
I
I
BALE  
Bus Address Latch Enable  
DMA Acknowledge  
DMA Request  
DACK[3, 5-7]  
DRQ[3, 5-7]  
IOCHRDY  
IOCS16  
I
O
I/O  
O
I
TS3  
OD3  
OD3  
I/O Channel Ready  
I/O Chip Select 16  
I/O Read Select  
IOR  
IOW  
I/O Write Select  
I
IRQ[3, 4, 5, 9, 10, 11, 12, 15]  
LA[17-23]  
MASTER  
MEMR  
Interrupt Request  
O
I/O  
O
O
O
I
TS3/OD3  
TS3  
Unlatched Address Bus  
Master Transfer in Progress  
Memory Read Select  
Memory Write Select  
Memory Refresh Active  
System Reset  
OD3  
TS3  
MEMW  
TS3  
REF  
RESET  
I
SA[0-19]  
SBHE  
System Address Bus  
System Byte High Enable  
System Data Bus  
I/O  
I/O  
I/O  
TS3  
TS3  
TS3  
SD[0-15]  
Board Interfaces  
IRQ15/APCS  
IRQ15 or Address PROM  
Chip Select  
O
O
I/O  
O
O
O
O
I/O  
I
TS1  
TS1  
TS1  
TS2  
TS2  
TS2  
TS2  
TS1  
BPCS  
Boot PROM Chip Select  
Disable Transceiver  
LED0/LNKST  
DXCVR/EAR  
LED0  
LED1  
LED1/SFBD/RCVACT  
LED2/SRD/RXDATPOL  
LED3/SRDCLK/XMTACT  
PROM Data Bus  
LED2  
LED3  
PRDB[3-7]  
SLEEP  
XTAL1  
Sleep Mode  
Crystal Input  
I
XTAL2  
Crystal Output  
O
O
SHFBUSY  
Read access from EEPROM  
in process  
PRDB(0)/EESK  
PRDB(1)/EEDI  
PRDB(2)/EEDO  
EECS  
Serial Shift Clock  
I/O  
I/O  
I/O  
O
Serial Shift Data In  
Serial Shift Data Out  
EEPROM Chip Select  
1-488  
Am79C961  
P R E L I M I N A R Y  
AMD  
PIN DESIGNATIONS: BUS MASTER (continued)  
Listed by Group  
Pin Name  
Pin Function  
I/O  
Driver  
Attachment Unit Interface (AUI)  
CI±  
Collision Inputs  
I
I
DI±  
Receive Data  
Transmit Data  
DO±  
O
Twisted Pair Transceiver Interface (10BASE-T)  
RXD±  
10BASE-T Receive Data  
I
TXD±  
10BASE-T Transmit Data  
10BASE-T Predistortion Control  
O
O
TXPD±  
IEEE 1149.1 Test Access Port Interface (JTAG)  
TCK  
Test Clock  
I
I
TDI  
Test Data Input  
Test Data Output  
Test Mode Select  
TDO  
O
I
TS2  
TMS  
Power Supplies  
AVDD  
AVSS  
DVDD  
DVSS  
Analog Power [1-4]  
Analog Ground [1-2]  
Digital Power [1-7]  
Digital Ground [1-13]  
Output Driver Types  
Name  
Type  
IOL (mA)  
IOH (mA)  
pF  
TS1  
Tri-State  
4
–1  
50  
50  
TS2  
TS3  
OD3  
Tri-State  
Tri-State  
12  
24  
24  
–4  
–3  
–3  
120  
120  
Open Drain  
1-489  
Am79C961  
AMD  
P R E L I M I N A R Y  
Because of the operation of the Plug and Play registers,  
the DMA Channels on the PCnet-ISA+ must be attached  
to specific DRQ and DACK signals on the PC/AT bus.  
PIN DESCRIPTION: BUS MASTER MODE  
These pins are part of the bus master mode. In order to  
understand the pin descriptions, definition of some  
terms from a draft of IEEE P996 are included.  
IOCHRDY  
I/O Channel Ready  
Input/Output  
When the PCnet-ISA+ controller is being accessed,  
IOCHRDY HIGH indicates that valid data exists on the  
data bus for reads and that data has been latched for  
writes. When the PCnet-ISA+ controller is the Current  
Master on the ISA bus, it extends the bus cycle as long  
as IOCHRDY is LOW.  
IEEE P996 Terminology  
Alternate Master: Any device that can take control of  
the bus through assertion of the MASTER signal. It has  
theabilitytogenerateaddressesandbuscontrolsignals  
in order to perform bus operations. All Alternate Mas-  
ters must be 16 bit devices and drive SBHE.  
Bus Ownership: The Current Master possesses bus  
ownership and can assert any bus control, address and  
data lines.  
IOCS16  
I/O Chip Select 16  
Output  
When an I/O read or write operation is performed, the  
PCnet-ISA+ controller will drive the IOCS16 pin LOW to  
indicate that the chip supports a 16-bit operation at this  
address. (If the motherboard does not receive this sig-  
nal, then the motherboard will convert a 16-bit access to  
two 8-bit accesses.)  
Current Master: The Permanent Master, Temporary  
Master or Alternate Master which currently has owner-  
ship of the bus.  
Permanent Master: Each P996 bus will have a device  
known as the Permanent Master that provides certain  
signals and bus control functions as described in Sec-  
tion 3.5 (of the IEEE P996 spec), “Permanent Master”.  
The Permanent Master function can reside on a Bus  
Adapter or on the backplane itself.  
The PCnet-ISA+ controller follows the IEEE P996 speci-  
fication that recommends this function be implemented  
as a pure decode of SA0-9 and AEN, with no depend-  
ency on IOR, or IOW; however, some PC/AT clone  
systems are not compatible with this approach. For this  
reason, the PCnet-ISA+ controller is recommended to  
be configured to run 8-bit I/O on all machines. Since  
dataismovedbymemorycyclesthereisvirtuallynoper-  
formance loss incurred by running 8-bit I/O and  
compatibility problems are virtually eliminated. The  
PCnet-ISA+ controller can be configured to run 8-bit-  
only I/O by clearing Bit 0 in Plug and Play register F0.  
Temporary Master: A device that is capable of gener-  
ating a DMA request to obtain control of the bus and  
directly asserting only the memory and I/O strobes dur-  
ing bus transfer. Addresses are generated by the DMA  
device on the Permanent Master.  
ISA Interface  
AEN  
IOR  
Address Enable  
Input  
I/O Read  
Input  
This signal must be driven LOW when the bus performs  
an I/O access to the device.  
IOR is driven LOW by the host to indicate that an Input/  
Output Read operation is taking place. IOR is only valid  
if the AEN signal is LOW and the external address  
matches the PCnet-ISA+ controller’s predefined I/O ad-  
dress location. If valid, IOR indicates that a slave read  
operation is to be performed.  
BALE  
Used to latch the LA20–23 address lines.  
DACK 3, 5-7  
DMA Acknowledge  
Input  
IOW  
Asserted LOW when the Permanent Master acknowl-  
edges a DMA request. When DACK is asserted the  
PCnet-ISA+ controller becomes the Current Master by  
asserting the MASTER signal.  
I/O Write  
Input  
IOW is driven LOW by the host to indicate that an Input/  
Output Write operation is taking place. IOW is only valid  
if AEN signal is LOW and the external address matches  
the PCnet-ISA+ controller’s predefined I/O address  
location. If valid, IOW indicates that a slave write opera-  
tion is to be performed.  
DRQ 3, 5-7  
DMA Request  
Output  
When the PCnet-ISA+ controller needs to perform a  
DMA transfer, it asserts DRQ. The Permanent Master  
acknowledges DRQ with assertion of DACK. When the  
PCnet-ISA+ controller does not need the bus it deas-  
serts DRQ.  
1-490  
Am79C961  
P R E L I M I N A R Y  
AMD  
IRQ 3, 4, 5, 9, 10, 11, 12, 15  
MEMW  
Interrupt Request  
Output  
Memory Write  
Input/Output  
An attention signal which indicates that one or more of  
the following status flags is set: BABL, MISS, MERR,  
RINT, IDON, RCVCCO, JAB, MPCO, or TXDATSTRT.  
All status flags have a mask bit which allows for  
suppression of IRQ assertion. These flags have the fol-  
lowing meaning:  
MEMW goes LOW to perform a memory write  
operation.  
REF  
Memory Refresh  
Input  
When REF is asserted, a memory refresh is active. The  
PCnet-ISA+ controller uses this signal to mask inadver-  
tent DMA Acknowledge assertion during memory  
refresh periods. If DACK is asserted when REF is ac-  
tive, DACK assertion is ignored. REF is monitored to  
eliminate a bus arbitration problem observed on some  
ISA platforms.  
BABL  
Babble  
RCVCCO  
JAB  
Receive Collision Count Overflow  
Jabber  
MISS  
Missed Frame  
MERR  
MPCO  
RINT  
Memory Error  
RESET  
Missed Packet Count Overflow  
Receive Interrupt  
Initialization Done  
Transmit Start  
Reset  
Input  
When RESET is asserted HIGH the PCnet-ISA+ control-  
ler performs an internal system reset. RESET must be  
held for a minimum of 10 XTAL1 periods before being  
deasserted. While in a reset state, the PCnet-ISA+ con-  
troller will tristate or deassert all outputs to predefined  
reset levels. The PCnet-ISA+ controller resets itself  
upon power-up.  
IDON  
TXDATSTRT  
Because of the operation of the Plug and Play registers,  
the interrupts on the PCnet-ISA+ must be attached to  
specific IRQ signals on the PC/AT bus.  
SA0-19  
System Address Bus  
LA17-23  
Unlatched Address Bus  
Input/Output  
Input/Output  
This bus contains address information, which is stable  
during a bus operation, regardless of the source.  
SA17-19 contain the same values as the unlatched ad-  
dress LA17-19. When the PCnet-ISA+ controller is the  
Current Master, SA0-19 will be driven actively. When  
the PCnet-ISA+ controller is not the Current Master, the  
SA0-19 lines are continuously monitored to determine if  
an address match exists for I/O slave transfers or Boot  
PROM accesses.  
The unlatched address bus is driven by the PCnet-ISA+  
controller during bus master cycle.  
The functions of these unlatched address pins will  
change when GPSI mode is invoked. The following ta-  
ble shows the pin configuration in GPSI mode. Please  
refer to the section on General Purpose Serial Interface  
for detailed information on accessing this mode.  
Pin  
Number  
Pin Function in  
Bus Master Mode  
Pin Function in  
GPSI Mode  
SBHE  
System Byte High Enable  
Input/Output  
10  
11  
12  
13  
15  
16  
17  
LA17  
LA18  
LA19  
LA20  
LA21  
LA22  
LA23  
RXDAT  
SRDCLK  
RXCRS  
CLSN  
This signal indicates the high byte of the system data  
bus is to be used. SBHE is driven by the PCnet-ISA+  
controller when performing bus mastering operations.  
SD0-15  
System Data Bus  
STDCLK  
TXEN  
Input/Output  
These pins are used to transfer data to and from the  
PCnet-ISA+ controller to system resources via the ISA  
data bus. SD0-15 is driven by the PCnet-ISA+ controller  
when performing bus master writes and slave read op-  
erations. Likewise, the data on SD0-15 is latched by the  
PCnet-ISA+ controller when performing bus master  
reads and slave write operations.  
TXDAT  
MASTER  
Master Mode  
Input/Output  
This signal indicates that the PCnet-ISA+ controller has  
become the Current Master of the ISA bus. After the  
PCnet-ISA+ controller has received a DMA Acknowl-  
edge (DACK) in response to a DMA Request (DRQ), the  
Ethernet controller asserts the MASTER signal to indi-  
cate to the Permanent Master that the PCnet-ISA+  
controller is becoming the Current Master.  
Board Interface  
IRQ12/FlashWE  
Flash Write Enable  
Output  
Optional interface to the Flash memory boot PROM  
Write Enable.  
MEMR  
Memory Read  
Input/Output  
MEMR goes LOW to perform a memory read operation.  
1-491  
Am79C961  
AMD  
P R E L I M I N A R Y  
IRQ15/APCS  
PRDB3-7  
Private Data Bus  
Address PROM Chip Select  
Output  
Input/Output  
When programmed as APCS in Plug and Play Register  
F0, this signal is asserted when the external Address  
PROM is read. When an I/O read operation is per-  
formed on the first 16 bytes in the PCnet-ISA+  
controller’sI/Ospace, APCSis asserted. The outputs of  
the external Address PROM drive the PROM Data Bus.  
The PCnet-ISA+ controller buffers the contents of the  
PROM data bus and drives them on the lower eight bits  
of the System Data Bus.  
This is the data bus for the Boot PROM and the Address  
PROM.  
PRDB2/EEDO  
Private data bus bit 2/Data Out Input/Output  
A multifunction pin which serves as PRDB2 of the pri-  
vate data bus and, when ISACSR3 bit 4 is set, changes  
to become DATA OUT from the EEPROM.  
PRDB1/EEDI  
Private data bus bit 1/Data In Input/Output  
When programmed to IRQ15 (default), this pin has the  
same function as IRQ 3, 4, 5, 9, 10, 11, or 12.  
A multifunction pin which serves as PRDB1 of the pri-  
vate data bus and, when ISACSR3 bit 4 is set, changes  
to become DATA In to the EEPROM.  
BPCS  
Boot PROM Chip Select  
Output  
This signal is asserted when the Boot PROM is read. If  
SA0-19 lines match a predefined address block and  
MEMR is active and REF inactive, the BPCS signal will  
be asserted. The outputs of the external Boot PROM  
drive the PROM Data Bus. The PCnet-ISA+ controller  
buffers the contents of the PROM data bus and drives  
them on the lower eight bits of the System Data Bus.  
PRDB0/EESK  
Private data bus bit 0/  
Serial Clock  
Input/Output  
A multifunction pin which serves as PRDB0 of the pri-  
vate data bus and, when ISACSR3 bit 4 is set, changes  
to become Serial Clock to the EEPROM.  
SHFBUSY  
Input/Output  
DXCVR/EAR  
An output from PCnet-ISA+ which indicates that a read  
from the external EEPROM is in progress. It is active  
only when the hardware reconfigure is running (when  
data is being shifted out of the EEPROM due to a hard-  
ware RESET or the EELOAD command being issued).  
This pin should have a pull-up resistor (10 K) to VCC.  
Disable Transceiver/  
External Address Reject  
Input/Output  
This pin disables the transceiver. The DXCVR output is  
configured in the initialization sequence. A HIGH level  
indicates the Twisted Pair port is active and the AUI port  
is inactive, or SLEEP mode has been entered. A LOW  
levelindicatestheAUIportisactiveandtheTwistedPair  
port is inactive.  
EECS  
EEPROM CHIPSELECT  
Output  
This signal is asserted when read or write accesses are  
being performed to the EEPROM. It is controlled by  
ISACSR3. It is driven at Reset during EEPROM Read.  
If EADI mode is selected, this pin becomes the EAR  
input.  
The incoming frame will be checked against the inter-  
nally active address detection mechanisms and the  
result of this check will be OR’d with the value on the  
EAR pin. The EAR pin is defined as REJECT. (See the  
EADI section for details regarding the function and tim-  
ing of this signal.)  
SLEEP  
Sleep  
Input  
When SLEEP pin is asserted (active LOW), the  
PCnet-ISA+ controller performs an internal system reset  
and proceeds into a power savings mode. All outputs  
will be placed in their normal reset condition. All  
PCnet-ISA+ controller inputs will be ignored except for  
the SLEEP pin itself. Deassertion of SLEEP results in  
wake-up. The system must delay the starting of the net-  
work controller by 0.5 seconds to allow internal analog  
circuits to stabilize.  
LED0-3  
LED Drivers  
Output  
These pins sink 12 mA each for driving LEDs. Their  
meaning is software configurable (see section The ISA  
Bus Configuration Registers) and they are active LOW.  
When EADI mode is selected, the pins named LED1,  
LED2, and LED3 change in function while LED0 contin-  
ues to indicate 10BASE-T Link Status.  
XTAL1  
Crystal Connection  
Input  
The internal clock generator uses a 20 MHz crystal that  
is attached to pins XTAL1 and XTAL2. Alternatively, an  
external 20 MHz CMOS-compatible clock signal can be  
used to drive this pin. Refer to the section on External  
Crystal Characteristics for more details.  
LED  
EADI Function  
SF/BD  
1
2
3
SRD  
SRDCLK  
XTAL2  
Crystal Connection  
Output  
The internal clock generator uses a 20 MHz crystal that  
is attached to pins XTAL1 and XTAL2. If an external  
clock is used, this pin should be left unconnected.  
1-492  
Am79C961  
P R E L I M I N A R Y  
AMD  
BLOCK DIAGRAM: SHARED MEMORY MODE  
AEN  
DXCVR/EAR  
802.3  
MAC  
Core  
IOCHRDY  
RCV  
FIFO  
IOR  
CI+/-  
IOW  
IRQ[3, 4, 5, 9, 10,  
11, 12]  
ISA Bus  
Interface  
Unit  
DI+/-  
Encoder/  
Decoder  
(PLS) &  
AUI Port  
XTAL1  
XTAL2  
IOCS16  
MEMR  
DO+/-  
XMT  
FIFO  
MEMW  
REF  
RXD+/-  
RESET  
10BASE-T  
MAU  
TXD+/-  
SA[0-15]  
TXPD+/-  
SBHE  
FIFO  
Control  
IRQ15/APCS  
SD[0-15]  
BPCS  
Private  
Bus  
Control  
LED[0-3]  
PRAB[0-15]  
PRDB[0-7]  
SROE  
Buffer  
Management  
Unit  
SRWE  
SMA  
SLEEP  
BPAM  
SMAM  
SHFBUSY  
TDO  
TMS  
TDI  
JTAG  
Port  
Control  
EEPROM  
Interface  
Unit  
EEDO  
EEDI  
EESK  
EECS  
TCK  
18183B-3  
DVDD[1-7]  
DVSS[1-13]  
AVDD[1-4]  
AVSS[1-2]  
1-493  
Am79C961  
AMD  
P R E L I M I N A R Y  
CONNECTION DIAGRAM: SHARED MEMORY  
DVSS3  
SMA  
SA0  
SA1  
SA2  
1
2
3
4
5
6
7
8
99  
98  
97  
96  
95  
94  
93  
92  
91  
90  
89  
88  
87  
86  
85  
84  
83  
82  
81  
80  
79  
78  
77  
76  
75  
74  
73  
72  
71  
70  
69  
68  
67  
XTAL2  
AVSS2  
XTAL1  
AVDD3  
TXD+  
TXPD+  
TXD-  
TXPD-  
AVDD4  
RXD+  
RXD-  
DVSS13  
SD15  
SD7  
SD14  
SD6  
DVSS9  
SD13  
SD5  
SD12  
SD4  
DVDD7  
SD11  
SD3  
DVSS10  
SA3  
SA4  
SA5  
SA6  
SA7  
SA8  
SA9  
DVSS4  
SA10  
SA11  
9
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
Top Side View  
SA12  
SBHE  
DVDD3  
PRAB0  
PRAB1  
PRAB2  
DVSS5  
PRAB3  
PRAB4  
PRAB5  
PRAB6  
PRAB7  
PRAB8  
PRAB9  
DVSS6  
PRAB10  
PRAB11  
SD10  
SD2  
DVSS8  
SD9  
SD1  
SD8  
SD0  
SLEEP  
DVDD6  
18183B-4  
1-494  
Am79C961  
P R E L I M I N A R Y  
AMD  
PIN DESIGNATIONS: SHARED MEMORY  
Listed by Pin Number  
Pin #  
Name  
Pin #  
Name  
Pin #  
Name  
RXD-  
1
DVSS3  
SMA  
45  
46  
47  
48  
49  
50  
51  
52  
53  
54  
55  
56  
57  
58  
59  
60  
61  
62  
63  
64  
65  
66  
67  
68  
69  
70  
71  
72  
73  
74  
75  
76  
77  
78  
79  
80  
81  
82  
83  
84  
85  
86  
87  
88  
IOCHRDY  
MEMW  
MEMR  
DVSS11  
IRQ15  
IRQ12  
IRQ11  
DVDD5  
IRQ10  
IOCS16  
BPAM  
IRQ3  
89  
2
90  
RXD+  
AVDD4  
TXPD-  
TXD-  
3
SA0  
91  
4
SA1  
92  
5
SA2  
93  
6
DVSS10  
SA3  
94  
TXPD+  
TXD+  
AVDD3  
XTAL1  
AVSS2  
XTAL2  
AVSS1  
DO-  
7
95  
8
SA4  
96  
9
SA5  
97  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
42  
43  
44  
SA6  
98  
SA7  
99  
SA8  
100  
101  
102  
103  
104  
105  
106  
107  
108  
109  
110  
111  
112  
113  
114  
115  
116  
117  
118  
119  
120  
121  
122  
123  
124  
125  
126  
127  
128  
129  
130  
131  
132  
SA9  
IRQ4  
DVSS4  
SA10  
IRQ5  
DO+  
REF  
AVDD1  
DI-  
SA11  
DVSS12  
SROE  
SMAM  
IOR  
SA12  
DI+  
SBHE  
DVDD3  
PRAB0  
PRAB1  
PRAB2  
DVSS5  
PRAB3  
PRAB4  
PRAB5  
PRAB6  
PRAB7  
PRAB8  
PRAB9  
DVSS6  
PRAB10  
PRAB11  
DVDD4  
PRAB12  
PRAB13  
PRAB14  
PRAB15  
DVSS7  
SA13  
CI-  
CI+  
IOW  
AVDD2  
IRQ9  
DXCVR/EAR  
LED3  
RESET  
DVDD6  
SLEEP  
SD0  
LED2  
DVSS1  
LED1  
SD8  
LED0  
SD1  
DVDD1  
PRDB7  
PRDB6  
PRDB5  
PRDB4  
DVSS2  
PRDB3  
PRDB2/EEDO  
PRDB1/EEDI  
PRDB0/EESK  
SHFBUSY  
BPCS  
SD9  
DVSS8  
SD2  
SD10  
SD3  
SD11  
DVDD7  
SD4  
SD12  
SD5  
SD13  
DVSS9  
SD6  
EECS  
TDI  
SA14  
SD14  
SD7  
TDO  
SA15  
TMS  
SRWE  
AEN  
SD15  
DVSS13  
TCK  
DVDD2  
1-495  
Am79C961  
AMD  
P R E L I M I N A R Y  
PIN DESIGNATIONS: SHARED MEMORY  
Listed by Pin Name  
Name  
Pin #  
Name  
Pin #  
Name  
SA13  
Pin #  
AEN  
44  
IRQ15  
49  
40  
41  
42  
5
AVDD1  
AVDD2  
AVDD3  
AVDD4  
AVSS1  
AVSS2  
BPAM  
BPCS  
103  
108  
96  
IRQ3  
56  
SA14  
SA15  
SA2  
IRQ4  
57  
IRQ5  
58  
91  
IRQ9  
65  
SA3  
7
100  
98  
LED0  
114  
113  
111  
110  
47  
SA4  
8
LED1  
SA5  
9
55  
LED2  
SA6  
10  
11  
12  
13  
18  
69  
71  
75  
77  
80  
82  
85  
87  
74  
76  
79  
81  
84  
86  
70  
72  
125  
68  
2
126  
106  
107  
104  
105  
101  
102  
115  
132  
19  
LED3  
SA7  
CI-  
MEMR  
MEMW  
PRAB0  
PRAB1  
PRAB10  
PRAB11  
PRAB12  
PRAB13  
PRAB14  
PRAB15  
PRAB2  
PRAB3  
PRAB4  
PRAB5  
PRAB6  
PRAB7  
PRAB8  
PRAB9  
PRDB0/DO  
PRDB1/DI  
PRDB2/SCLK  
PRDB3  
PRDB4  
PRDB5  
PRDB6  
PRDB7  
REF  
SA8  
CI+  
46  
SA9  
DI-  
20  
SBHE  
SD0  
DI+  
21  
DO-  
32  
SD1  
DO+  
33  
SD10  
SD11  
SD12  
SD13  
SD14  
SD15  
SD2  
DVDD1  
DVDD2  
DVDD3  
DVDD4  
DVDD5  
DVDD6  
DVDD7  
DVSS1  
DVSS10  
DVSS11  
DVSS12  
DVSS13  
DVSS2  
DVSS3  
DVSS4  
DVSS5  
DVSS6  
DVSS7  
DVSS8  
DVSS9  
DXCVR/EAR  
EECS  
35  
36  
37  
34  
38  
52  
22  
67  
24  
78  
25  
SD3  
112  
6
26  
SD4  
27  
SD5  
48  
28  
SD6  
60  
29  
SD7  
88  
30  
SD8  
120  
1
124  
123  
122  
121  
119  
118  
117  
116  
59  
SD9  
SHFBUSY  
SLEEP  
SMA  
SMAM  
SROE  
SRWE  
TCK  
14  
23  
31  
62  
61  
43  
131  
128  
129  
130  
93  
95  
92  
94  
97  
99  
39  
73  
83  
109  
127  
45  
TDI  
RESET  
RXD-  
66  
TDO  
IOCHRDY  
IOCS16  
IOR  
89  
TMS  
54  
RXD+  
90  
TXD-  
TXD+  
TXPD-  
TXPD+  
XTAL1  
XTAL2  
63  
SA0  
3
IOW  
64  
SA1  
4
IRQ10  
IRQ11  
IRQ12  
53  
SA10  
15  
51  
SA11  
16  
50  
SA12  
17  
1-496  
Am79C961  
P R E L I M I N A R Y  
AMD  
PIN DESIGNATIONS: SHARED MEMORY  
Listed by Group  
Pin Name  
Pin Function  
I/O  
Driver  
ISA Bus Interface  
AEN  
Address Enable  
I
O
O
I
IOCHRDY  
I/O Channel Ready  
I/O Chip Select 16  
I/O Read Select  
OD3  
OD3  
IOCS16  
IOR  
IOW  
I/O Write Select  
I
IRQ[3, 4, 5, 9, 10, 11, 12, 15]  
Interrupt Request  
Memory Read Select  
Memory Write Select  
Memory Refresh Active  
System Reset  
O
I
TS3/OD3  
MEMR  
MEMW  
I
REF  
I
RESET  
I
SA[0-15]  
SBHE  
System Address Bus  
System Byte High Enable  
System Data Bus  
I
I
SD[0-15]  
Board Interfaces  
I/O  
TS3  
IRQ15/APCS  
BPCS  
IRQ15 or Address PROM Chip Select  
Boot PROM Chip Select  
Boot PROM Address Match  
Disable Transceiver  
O
O
I
TS1  
TS1  
BPAM  
DXCVR/EAR  
LED0  
I/O  
O
O
O
O
I/O  
I/O  
I
TS1  
TS2  
TS2  
TS2  
TS2  
TS3  
TS1  
LED0/LNKST  
LED1  
LED1/SFBD/RCVACT  
LED2/SRD/RXDATD01  
LED3/SRDCLK/XMTACT  
PRivate Address Bus  
LED2  
LED3  
PRAB[0-15]  
PRDB[3-7]  
SLEEP  
PRivate Data Bus  
Sleep Mode  
SMA  
Shared Memory Architecture  
Shared Memory Address Match  
Static RAM Output Enable  
Static RAM Write Enable  
Crystal Oscillator Input  
Crystal Oscillator OUTPUT  
Read access from EEPROM in process  
Serial Shift Clock  
I
SMAM  
I
SROE  
O
O
I
TS3  
TS1  
SRWE  
XTAL1  
XTAL2  
O
O
I/O  
I/O  
I/O  
O
SHFBUSY  
PRDB(0)/EESK  
PRDB(1)/EEDI  
PRDB(2)/EEDO  
EECS  
Serial Shift Data In  
Serial Shift Data Out  
EEPROM Chip Select  
1-497  
Am79C961  
AMD  
P R E L I M I N A R Y  
PIN DESIGNATIONS: SHARED MEMORY (continued)  
Listed by Group  
Pin Name  
Pin Function  
I/O  
Driver  
Attachment Unit Interface (AUI)  
CI±  
Collision Inputs  
I
I
DI±  
Receive Data  
Transmit Data  
DO±  
O
Twisted Pair Transceiver Interface (10BASE–T)  
RXD±  
10BASE-T Receive Data  
I
TXD±  
10BASE-T Transmit Data  
10BASE-T Predistortion Control  
O
O
TXPD±  
IEEE 1149.1 Test Access Port Interface (JTAG)  
TCK  
Test Clock  
I
I
TDI  
Test Data Input  
Test Data Output  
Test Mode Select  
TDO  
O
I
TS2  
TMS  
Power Supplies  
AVDD  
AVSS  
DVDD  
DVSS  
Analog Power [1-4]  
Analog Ground [1-2]  
Digital Power [1-7]  
Digital Ground [1-13]  
Output Driver Types  
Name  
Type  
IOL (mA)  
IOH (mA)  
pF  
TS1  
Tri-State  
4
–1  
50  
50  
TS2  
TS3  
OD3  
Tri-State  
Tri-State  
12  
24  
24  
–4  
–3  
–3  
120  
120  
Open Drain  
1-498  
Am79C961  
P R E L I M I N A R Y  
AMD  
which allows for suppression of IRQ assertion. These  
flags have the following meaning:  
PIN DESCRIPTION:  
SHARED MEMORY MODE  
BABL  
Babble  
ISA Interface  
RCVCCO  
JAB  
Receive Collision Count Overflow  
Jabber  
AEN  
Address Enable  
Input  
MISS  
Missed Frame  
This signal must be driven LOW when the bus performs  
an I/O access to the device.  
MERR  
MPCO  
RINT  
Memory Error  
Missed Packet Count Overflow  
Receive Interrupt  
Initialization Done  
Transmit Start  
IOCHRDY  
I/O Channel Ready  
When the PCnet-ISA+ controller is being accessed, a  
HIGH on IOCHRDY indicates that valid data exists on  
the data bus for reads and that data has been latched for  
writes.  
Output  
IDON  
TXSTRT  
MEMR  
Memory Read  
Input  
IOCS16  
I/O Chip Select 16  
Input/Output  
MEMR goes LOW to perform a memory read operation.  
When an I/O read or write operation is performed, the  
PCnet-ISA+ controller will drive this pin LOW to indicate  
that the chip supports a 16-bit operation at this address.  
(Ifthemotherboarddoesnotreceivethissignal, thenthe  
motherboard will convert a 16-bit access to two 8-bit  
accesses.)  
MEMW  
Memory Write  
Input  
MEMW goes LOW to perform a memory write  
operation.  
RESET  
Reset  
The PCnet-ISA+ controller follows the IEEE P996 speci-  
fication that recommends this function be implemented  
as a pure decode of SA0-9 and AEN, with no depend-  
ency on IOR, or IOW; however, some PC/AT clone  
systems are not compatible with this approach. For this  
reason, the PCnet-ISA+ controller is recommended to  
be configured to run 8-bit I/O on all machines. Since  
dataismovedbymemorycyclesthereisvirtuallynoper-  
formance loss incurred by running 8-bit I/O and  
compatibility problems are virtually eliminated. The  
PCnet-ISA+ controller can be configured to run 8-bit-  
only I/O by clearing Bit 0 in Plug and Play Register F0.  
Input  
When RESET is asserted HIGH, the PCnet-ISA+ con-  
troller performs an internal system reset. RESET must  
beheldforaminimumof10XTAL1periodsbeforebeing  
deasserted. While in a reset state, the PCnet-ISA+ con-  
troller will tristate or deassert all outputs to predefined  
reset levels. The PCnet-ISA+ controller resets itself  
upon power-up.  
SA0-15  
System Address Bus  
Input  
This bus carries the address inputs from the system ad-  
dress bus. Address data is stable during command  
active cycle.  
IOR  
I/O Read  
Input  
To perform an Input/Output Read operation on the de-  
vice IOR must be asserted. IOR is only valid if the AEN  
signal is LOW and the external address matches the  
PCnet-ISA+ controller ’s predefined I/O address loca-  
tion. If valid, IOR indicates that a slave read operation is  
to be performed.  
SBHE  
System Bus High Enable  
Input  
This signal indicates the HIGH byte of the system data  
bus is to be used. There is a weak pull-up resistor on this  
pin. If the PCnet-ISA+ controller is installed in an 8-bit  
only system like the PC/XT, SBHE will always be HIGH  
and the PCnet-ISA+ controller will perform only 8-bit op-  
erations. TheremustbeatleastoneLOWgoingedgeon  
this signal before the PCnet-ISA+ controller will perform  
16-bit operations.  
IOW  
I/O Write  
Input  
To perform an Input/Output write operation on the de-  
vice IOW must be asserted. IOW is only valid if AEN  
signal is LOW and the external address matches the  
PCnet-ISA+ controller’s predefined I/O address loca-  
tion. If valid, IOW indicates that a slave write operation  
is to be performed.  
SD0-15  
System Data Bus  
Input/Output  
This bus is used to transfer data to and from the  
PCnet-ISA+ controller to system resources via the ISA  
data bus. SD0-15 is driven by the PCnet-ISA+ controller  
when performing slave read operations.  
IRQ3, 4, 5, 9, 10, 11, 15  
Interrupt Request  
Output  
Likewise, the data on SD0-15 is latched by the  
PCnet-ISA+ controller when performing slave write  
operations.  
An attention signal which indicates that one or more of  
the following status flags is set: BABL, MISS, MERR,  
RINT, IDONorTXSTRT. Allstatusflagshaveamaskbit  
1-499  
Am79C961  
AMD  
P R E L I M I N A R Y  
BOARD INTERFACE  
LED  
EADI Function  
SF/BD  
APCS/IRQ15  
1
2
3
Address PROM Chip Select  
Output  
SRD  
This signal is asserted when the external Address  
PROM is read. When an I/O read operation is per-  
formed on the first 16 bytes in the PCnet-ISA+  
controller’sI/Ospace, APCSis asserted. The outputs of  
the external Address PROM drive the PROM Data Bus.  
The PCnet-ISA+ controller buffers the contents of the  
PROM data bus and drives them on the lower eight bits  
of the System Data Bus. IOCS16 is not asserted during  
this cycle.  
SRDCLK  
PRAB0-15  
Private Address Bus  
Input/Output  
The Private Address Bus is the address bus used to  
drive the Address PROM, Remote Boot PROM, and  
SRAM. PRAB10-15arerequiredtobebufferedbyaBus  
Buffer with ABOE as its control and SA10-15 as its  
inputs.  
BPAM  
Boot PROM Address Match  
Input  
PRDB3-7  
Private Data Bus  
This pin indicates a Boot PROM access cycle. If no Boot  
PROM is installed, this pin has a default value of HIGH  
and thus may be left connected to VDD  
Input/Output  
This is the data bus for the static RAM, the Boot PROM,  
and the Address PROM.  
.
BPCS  
PRDB2/EEDO  
Private Data Bus Bit 2/Data Out Input/Output  
Boot PROM Chip Select  
Output  
This signal is asserted when the Boot PROM is read. If  
BPAM is active and MEMR is active, the BPCS signal  
will be asserted. The outputs of the external Boot  
PROM drive the PROM Data Bus. The PCnet-ISA+ con-  
troller buffers the contents of the PROM data bus and  
drives them on the System Data Bus. IOCS16 is not as-  
serted during this cycle. If 16-bit cycles are performed, it  
istheresponsibilityofexternallogictoassertMEMCS16  
signal.  
A multifunction pin which serves as PRDB2 of the pri-  
vate data bus and, when ISACSR3 bit 4 is set, changes  
to become DATA OUT from the EEPROM.  
PRDB1/EEDI  
Private Data Bus Bit 1/Data In Input/Output  
A multifunction pin which serves as PRDB1 of the pri-  
vate data bus and, when ISACSR3 bit 4 is set, changes  
to become DATA In to the EEPROM.  
DXCVR/EAR  
PRDB0/EESK  
Disable Transceiver/  
Private Data Bus Bit 0/  
External Address Reject  
Input/Output  
Serial Clock  
Input/Output  
This pin disables the transceiver. The DXCVR output is  
configured in the initialization sequence. A high level in-  
dicates the Twisted Pair Interface is active and the AUI  
is inactive, or SLEEP mode has been entered. A low  
level indicates the AUI is active and the Twisted Pair in-  
terface is inactive.  
A multifunction pin which serves as PRDB0 of the pri-  
vate data bus and, when ISACSR3 bit 4 is set, changes  
to become Serial Clock to the EEPROM.  
SHFBUSY  
Shift Busy  
Input/Output  
An output from PCnet-ISA+ which indicates that a read  
from the external EEPROM is in progress. It is active  
only when the hardware reconfigure is running (when  
data is being shifted out of the EEPROM due to a hard-  
ware RESET or the EELOAD command being issued).  
If EADI mode is selected, this pin becomes the EAR  
input.  
The incoming frame will be checked against the inter-  
nally active address detection mechanisms and the  
result of this check will be OR’d with the value on the  
EAR pin. The EAR pin is defined as REJECT. (See the  
EADI section for details regarding the function and tim-  
ing of this signal.)  
SHFBUSY should be connected to VCC with a 10K Ω  
resistor.  
EECS  
EEPROM CHIPSELECT  
LED0-3  
Output  
LED Drivers  
Output  
This signal is asserted when read or write accesses are  
being performed to the EEPROM. It is controlled by  
ISACSR3. It is driven at Reset during EEPROM Read.  
These pins sink 12 mA each for driving LEDs. Their  
meaning is software configurable (see section The ISA  
Bus Configuration Registers) and they are active LOW.  
SLEEP  
When EADI mode is selected, the pins named LED1,  
LED2, and LED3 change in function while LED0 contin-  
ues to indicate 10BASE-T Link Status. The DXCVR  
input becomes the EAR input.  
Sleep  
Input  
When SLEEP input is asserted (active LOW), the  
PCnet-ISA+ controller performs an internal system reset  
1-500  
Am79C961  
P R E L I M I N A R Y  
AMD  
and proceeds into a power savings mode. All outputs  
will be placed in their normal reset condition. All  
PCnet-ISA+ controller inputs will be ignored except for  
the SLEEP pin itself. Deassertion of SLEEP results in  
wake-up. The system must delay the starting of the  
network controller by 0.5 seconds to allow internal ana-  
log circuits to stabilize.  
When Flash boot ROM option is not selected, this pin  
becomes IRQ12.  
SRWE/WE  
Static RAM Write Enable/  
Write Enable  
Output  
This pin (SRWE) directly controls the external SRAM’s  
WE pin when  
implemented.  
a Flash memory device is not  
SMA  
Shared Memory Architecture Input  
When a Flash memory device is implemented, this pin  
becomes a global write enable (WE) pin.  
This pin is sampled after the hardware RESET se-  
quence. The pin must be pulled permanently LOW for  
operation in the shared memory mode.  
XTAL1  
Crystal Connection  
Input  
SMAM  
The internal clock generator uses a 20 MHz crystal that  
is attached to pins XTAL1 and XTAL2. Alternatively, an  
external 20 MHz CMOS-compatible clock signal can be  
used to drive this pin. Refer to the section on External  
Crystal Characteristics for more details.  
Shared Memory Address Match Input  
This pin indicates an access to shared memory when  
active. The type of access is decided by MEMR or  
MEMW.  
SROE  
XTAL2  
Static RAM Output Enable  
Output  
Crystal Connection  
Output  
This pin directly controls the external SRAM’s OE pin.  
The internal clock generator uses a 20 MHz crystal that  
is attached to pins XTAL1 and XTAL2. If an external  
clock is used, this pin should be left unconnected.  
SRCS/IRQ12  
Static RAM Chip Select  
Output  
This pin directly controls the external SRAM’s chip se-  
lect (CS) pin when the Flash boot ROM option is  
selected.  
Am79C961  
1-501  
AMD  
P R E L I M I N A R Y  
PIN DESCRIPTION:  
TDO  
Test Data Output  
Output  
NETWORK INTERFACES  
This is the test data output path from the PCnet-ISA+  
controller. TDO is tri-stated when JTAG port is inactive.  
AUI  
CI+, CI–  
TMS  
Control Input  
Input  
Test Mode Select  
Input  
This is a differential input pair used to detect Collision  
(Signal Quality Error Signal).  
This is a serial input bit stream used to define the spe-  
cific boundary scan test to be executed. If left  
unconnected, this pin has a default value of HIGH.  
DI+, DI–  
Data In  
Input  
PIN DESCRIPTION:  
POWER SUPPLIES  
This is a differential receive data input pair to the PCnet-  
ISA+ controller.  
All power pins with a “D” prefix are digital pins connected  
to the digital circuitry and digital I/O buffers. All power  
pins with an “A” prefix are analog power pins connected  
to the analog circuitry. Not all analog pins are quiet and  
special precaution must be taken when doing board lay-  
out. Some analog pins are more noisy than others and  
must be separated from the other analog pins.  
DO+, DO–  
Data Out  
Output  
This is a differential transmit data output pair from the  
PCnet-ISA+ controller.  
Twisted Pair Interface  
RXD+, RXD–  
AVDD1–4  
Analog Power (4 Pins)  
Power  
Receive Data  
Input  
Supplies power to analog portions of the PCnet-ISA+  
controller. Specialattentionshouldbepaidtotheprinted  
circuit board layout to avoid excessive noise on these  
lines.  
This is the 10BASE-T port differential receive input pair.  
TXD+, TXD–  
Transmit Data  
Output  
These are the 10BASE-T port differential transmit  
drivers.  
AVSS1–2  
Analog Ground (2 Pins)  
Power  
Supplies ground reference to analog portions of  
PCnet-ISA+ controller. Special attention should be paid  
to the printed circuit board layout to avoid excessive  
noise on these lines.  
TXP+, TXP–  
Transmit Predistortion Control Output  
These are 10BASE-T transmit waveform pre-distortion  
control differential outputs.  
DVDD1–7  
PIN DESCRIPTION:  
Digital Power (7 Pins)  
Power  
Supplies power to digital portions of PCnet-ISA+ control-  
ler. Four pins are used by Input/Output buffer drivers  
and two are used by the internal digital circuitry.  
IEEE 1149.1 (JTAG) TEST ACCESS PORT  
TCK  
Test Clock  
Input  
This is the clock input for the boundary scan test mode  
operation. TCK can operate up to 10 MHz. TCK does  
not have an internal pullup resistor and must be con-  
nected to a valid TTL level of high or low. TCK must not  
be left unconnected.  
DVSS1–13  
Digital Ground (13 Pins)  
Power  
Supplies ground reference to digital portions of  
PCnet-ISA+ controller. Ten pins are used by Input/Out-  
put buffer drivers and two are used by the internal digital  
circuitry.  
TDI  
Test Data Input  
Input  
This is the test data input path to the PCnet-ISA+ control-  
ler. If left unconnected, this pin has a default value of  
HIGH.  
1-502  
Am79C961  
P R E L I M I N A R Y  
AMD  
The PCnet-ISA+ controller’s advanced bus mastering  
architecture also provides high data throughput and low  
CPU utilization for even better performance.  
FUNCTIONAL DESCRIPTION  
The PCnet-ISA+ controller is a highly integrated system  
solution for the PC-AT ISA architecture. It provides an  
Ethernet controller, AUI port, and 10BASE-T trans-  
ceiver. The PCnet-ISA+ controller can be directly  
interfaced to an ISA system bus. The PCnet-ISA+ con-  
troller contains an ISA bus interface unit, DMA Buffer  
Management Unit, 802.3 Media Access Control func-  
tion, separate 136-byte transmit and 128-byte receive  
FIFOs, IEEE defined Attachment Unit Interface (AUI),  
and Twisted-Pair Transceiver Media Attachment Unit.  
In addition, a Sleep function has been incorporated  
which provides low standby current for power sensitive  
applications.  
To offer greater flexibility, the PCnet-ISA+ controller has  
a shared memory mode to meet varying application  
needs. The shared memory architecture is compatible  
with very low-end machines, such as PC/XTs that do not  
support bus mastering, and very high end machines  
which require local packet buffering for increased sys-  
tem latency.  
The network interface provides an Attachment Unit In-  
terface and Twisted-Pair Transceiver functions. Only  
one interface is active at any particular time. The AUI  
allows for connection via isolation transformer to  
10BASE5 and 10BASE2, thick and thin based coaxial  
cables. The Twisted-Pair Transceiver interface allows  
for connection of unshielded twisted-pair cables as  
specified by the Section 14 supplement to IEEE 802.3  
Standard (Type 10BASE-T).  
The PCnet-ISA+ controller is register compatible with  
the LANCE (Am7990) Ethernet controller and  
PCnet-ISA (Am79C960). The DMA Buffer Manage-  
ment Unit supports the LANCE descriptor software  
model and the PCnet-ISA+ controller is software com-  
patible with the Novell NE2100 and NE1500T add-in  
cards.  
Bus Master Mode  
External remote boot PROMs and Ethernet physical ad-  
dress PROMs are supported. The location of the I/O  
registers, Ethernet address PROM, and the boot PROM  
are determined by the programming of the registers in-  
ternal to PCnet-ISA+. These registers are loaded at  
RESET from the EEPROM.  
System Interface  
The PCnet-ISA+ controller has two fundamental operat-  
ing modes, Bus Master and Shared Memory. The  
selection of either the Bus Master mode or the Shared  
Memory mode must be done through hard wiring; it is  
not software configurable. The Bus Master mode pro-  
vides an Am7990 (LANCE) compatible Ethernet  
controller, an Ethernet Address EEPROM or PROM, a  
Boot PROM, and a set of device configuration registers.  
Normally, the Ethernet physical address will be stored in  
the EEPROM with the other configuration data. This re-  
duces the parts count, board space requirements, and  
powerconsumption. Theoptiontouseastandardparal-  
lel 8 bit PROM is provided to manufactures who are  
concerned about the non-volatile nature of EEPROMs.  
The optional Boot PROM is in memory address space  
and is expected to be 8–64K. On-chip address com-  
parators control device selection based on the value of  
the EEPROM.  
The PCnet-ISA+ controller’s bus master architecture  
brings to system manufacturers (adapter card and  
motherboard makers alike) something they have not  
been able to enjoy with other architectures—a low-cost  
system solution that provides the lowest parts count and  
highest performance. As a bus-mastering device, costly  
and power-hungry external SRAMs are not needed for  
packet buffering. This results in lower system cost due  
to fewer components, less real-estate and less power.  
The address PROM, board configuration registers, and  
the Ethernet controller occupy 24 bytes of I/O space and  
can be located on 16 different starting addresses.  
Data buffers are located in system memory and can be  
accessed by the PCnet-ISA+ controller when the device  
becomes the Current Master.  
Am79C961  
1-503  
AMD  
P R E L I M I N A R Y  
BPCS  
CE  
OE  
PRDB[0-7]  
D[0-7]  
16-Bit System Data  
SD[0-15]  
Boot  
PROM  
PRDB[2]/EEDO  
PRDB[1]/EEDI  
PRDB[0]/EESK  
PCnet-ISA+  
Controller  
A[0-15]  
ISA  
Bus  
24-Bit System  
Address  
DO  
DI  
SK  
CS  
SA[0-19]  
LA[17-23]  
EEPROM  
SHFBUSY  
EECS  
VCC  
ORG  
VCC  
18183B-6  
Bus Master Block Diagram  
Plug and Play Compatible  
1-504  
Am79C961  
P R E L I M I N A R Y  
AMD  
A[0-4]  
D[0-7]  
BPCS  
IEEE  
Address  
PROM  
PRDB[0-7]  
SD[0-15]  
G
16-Bit  
System  
Data  
PRDB[0]/EESK  
PRDB[1]/EEDI  
PRDB[2]/EEDO  
EECS  
PCnet-ISA+  
Controller  
A[0-15]  
D[0-7]  
WE  
CS  
SA[0-19]  
LA[17-23]  
24-Bit  
System  
Address  
Flash  
SHFBUSY  
IRQ15/APCS IRQ12/FlashWE  
ISA  
Bus  
OE  
VCC  
SK  
DI  
EEPROM  
DO  
CS  
VCC  
ORG  
18183B-7  
Bus Master Block Diagram  
Plug and Play Compatible with Flash Support  
This raises performance to more than 400% of what  
could be achieved with 8-bit cycles. Converting boot  
PROM accesses to 16-bit cycles allows the two memory  
resources to be in the same 128 Kbyte block of memory  
without a clash between two devices with different data  
widths.  
Shared Memory Mode  
System Interface  
The Shared Memory mode is the other fundamental op-  
erating mode available on the PCnet-ISA+ controller.  
ThePCnet-ISA+ controllerusesthesamedescriptorand  
buffer architecture as the LANCE, but these data struc-  
tures are stored in static RAM controlled by the  
PCnet-ISA+ controller. The static RAM is visible as a  
memory resource to the PC. The other resources look  
the same as in the Bus Master mode.  
The PCnet-ISA+ controller uses an internal address  
comparator to perform SRAM prefetches on the Private  
Data Bus; the SA0-15 signals are used internally to de-  
termine whether a SRAM read cycle prefetch is a match  
or a miss.  
The Boot PROM is selected by an external device which  
drives the Boot PROM Address Match (BPAM) input to  
the PCnet-ISA+ controller. The PCnet-ISA+ controller  
can perform two 8-bit accesses from the 8-bit Boot  
PROM and presents 16-bits of data. The shared mem-  
ory works the same way, with an external device  
generating Shared Memory Address Match and the  
PCnet-ISA+ controller performing the read or write and  
the 8 to 16-bit data conversion.  
Access to the Ethernet controller registers, board con-  
figuration registers, and Address PROM is done with  
on-chip address comparators.  
Network Interface  
The PCnet-ISA+ controller can be connected to an IEEE  
802.3 network via one of two network interface ports.  
The Attachment Unit Interface (AUI) provides an IEEE  
802.3 compliant differential interface to a remote MAU  
or an on-board transceiver. The 10BASE-T interface  
provides a twisted-pair Ethernet port. The PCnet-ISA+  
controller provides three modes of network interface  
Converting shared memory accesses from 8-bit cycles  
to 16-bit cycles allows use of the much faster 16-bit cy-  
cle timing while cutting the number of bus cycles in half.  
Am79C961  
1-505  
AMD  
P R E L I M I N A R Y  
selection: automatic selection, software selection, and  
jumper selection of AUI or 10BASE-T interface.  
both AUI and 10BASE-T interfaces are connected, the  
10BASE-T interface is selected over AUI. If the  
PCnet-ISA+ controller is initialized for software selection  
of network interface, it will read the PORTSEL [1:0] bits  
in the Mode register (CSR15.8 and CSR15.7) to deter-  
mine which interface needs to be activated.  
In the automatic selection mode, the PCnet-ISA+ con-  
troller will select the interface that is connected to the  
network by checking the Link Status state machine. If  
A[0-15]  
Boot  
PROM  
CE  
OE  
D[0-7]  
BPCS  
PRDB[0-7]  
PRAB(0:15)  
SD[0-15]  
SA[0-15]  
PCnet-ISA+  
Controller  
16-Bit  
System Data  
2
PRDB[2]/EEDO  
PRDB[1]/EEDI  
PRDB[0]/EESK  
EECS  
DO  
1
DI  
EEPROM  
24-Bit System  
Address  
0
VCC  
SK  
CS  
SMAM  
ORG  
SHFBUSY  
BPAM  
ISA  
Bus  
SROE  
SRWE  
A[0-15]  
D[0-7]  
WE  
SRAM  
CS  
OE  
VCC  
SHFBUSY  
CLK  
BPAM  
SMAM  
SIN  
External  
Glue  
SA[16]  
Logic  
LA[17-23]  
MEMCS16  
18183B-9  
Shared Memory Block Diagram  
Plug and Play Compatible  
1-506  
Am79C961  
P R E L I M I N A R Y  
AMD  
A[0-15]  
D[0-7]  
Flash  
WE  
CS  
PRDB[0-7]  
PRAB[0-15]  
OE  
BPCS  
SROE  
SD[0-15]  
PCnet-ISA+  
16-Bit  
System Data  
Controller  
PRDB[2]/EEDO  
PRDB[1]/EEDI  
DO  
DI  
24-Bit System  
Address  
EEPROM  
SA[0-19]  
SK  
CS  
VCC  
PRDB[0]/EESK  
EECS  
ORG  
SRWE  
IRQ12/SRCS  
ISA  
Bus  
SHFBUSY SRAM BPAM  
OE  
A[0-15]  
SRAM  
WE  
CS  
D[0-7]  
SIN  
MEMCS16  
CLK  
VCC  
External  
BPAM  
SRAM  
Glue  
Logic  
SHFBUSY  
SA[16]  
LA[17-23]  
18183B-10  
Shared Memory Block Diagram  
Plug and Play Compatible with Flash Memory Support  
PLUG AND PLAY  
Operation  
If the PCnet-ISA+ ethernet controller is used to boot off  
the network, the device will come up active at RESET,  
otherwise it will come up inactive. Information stored in  
the serial EEPROM is used to identify the card and to  
describe the system resources required by the card,  
such as I/O space, Memory space, IRQs and DMA  
channels. This information is stored in a standardized  
Read Only format. Operation of the Plug and Play sys-  
tem is shown as follows.  
Plug and Play is a standardized method of configuring  
jumperless adapter cards in a system. Plug and Play is a  
Microsoft standard and is based on a central software  
configuration program, either in the operating system or  
elsewhere, which is responsible for configuring all Plug  
and Play cards in a system. Plug and Play is fully sup-  
ported by the PCnet-ISA+ ethernet controller.  
For a copy of the Microsoft Plug and Play specification  
contactMicrosoftInc. Thisspecificationshouldberefer-  
enced in addition to PCnet-ISA+ Technical Reference  
Manual and this data sheet.  
Am79C961  
1-507  
AMD  
P R E L I M I N A R Y  
either reading the READ_DATA PORT or writing to the  
Isolate the Plug and Play card  
Read the cards resource data  
Identify the card  
WRITE_DATA PORT. Once the ADDRESS PORT has  
been written, any number of reads or writes can occur  
without having to rewrite the ADDRESS PORT.  
Configure its resources  
The ADDRESS PORT is also the address to which the  
initiation key is written to, which is described later.  
The Plug and Play mode of operation allows the follow-  
ing benefits to the end user.  
WRITE_DATA PORT  
Eliminates all jumpers or dip switches from the  
The WRITE_DATA PORT is the address to which all  
writes to the internal Plug and Play registers occur. The  
destination of the data written to the WRITE_DATA  
PORT is determined by the last value written to the  
ADDRESS PORT.  
adapter card  
Ease of use is greatly enhanced  
Allows the ability to uniquely address identical  
cards in a system, without conflict  
Allows the software configuration program or OS  
to read out the system resource requirements  
required by the card  
READ_DATA PORT  
The READ_DATA PORT is used to read information  
from the internal Plug and Play registers. The register to  
be read is determined by the last value of theADDRESS  
PORT.  
Defines a mechanism to set or modify the current  
configuration of each card  
Maintain backward compatability with other ISA  
The I/O address of the READ_DATA PORT is set by  
writing the chosen I/O location to Plug and Play Register  
0. The isolation protocol can determine that the address  
chosen is free from conflict with other devices I/O ports.  
bus adapters  
Auto-Configuration Ports  
Three 8 bit I/O ports are used by the Plug and Play con-  
figuration software on each Plug and Play device to  
communicate with the Plug and Play registers. The  
ports are listed in the table below. The software configu-  
ration space is defined as a set of 8 bit registers. These  
registers are used by the Plug and Play software con-  
figuration to issue commands, access the resource  
information, checkstatus, andconfigurethePCnet-ISA+  
controller hardware.  
Initiation Key  
The PCnet-ISA+ controller is disabled at reset when op-  
erating in Plug and Play mode. It will not respond to any  
memory or I/O accesses, nor will the PCnet-ISA+ con-  
troller drive any interrupts or DMA channels.  
The initiation key places the PCnet-ISA+ device into the  
configurationmode. Thisisdonebywritingapredefined  
pattern to the ADDRESS PORT. If the proper sequence  
of I/O writes are detected by the PCnet-ISA+ device, the  
Plug and Play auto-configuration ports are enabled.  
Thissequencemustbesequential, i.e., anyotherI/Oac-  
cess to this I/O port will reset the state machine which is  
checking the pattern. Interrupts should be disabled dur-  
ing this time to eliminate any extraneous I/O cycles.  
Port  
Name  
Location  
Type  
ADDRESS  
0X279 (Printer Status Port)  
Write-only  
WRITE-DATA 0xA79 (Printer status port  
+ 0x0800)  
Write-only  
Read-only  
READ-DATA  
Relocatable in range  
0x0203-0x03FF  
The exact sequence for the initiation key is listed below  
in hexadecimal.  
6A, B5, DA, ED, F6, FB, 7D, BE  
DF, 6F, 37, 1B, 0D, 86, C3, 61  
B0, 58, 2C, 16, 8B, 45, A2, D1  
E8, 74, 3A, 9D, CE, E7, 73, 39  
The address and Write_DATA ports are located at fixed,  
predefined I/O addresses. The Write_Data port is lo-  
cated at an alias of the Address port. All three  
auto-configuration ports use a 12-bit ISA address  
decode.  
The READ_DATA port is relocatable within the range  
0x203–0x3FF by  
WRITE_DATA port.  
a
command written to the  
Isolation Protocol  
A simple algorithm is used to isolate each Plug and Play  
card. This algorithm uses the signals on the ISA bus and  
requires lock-step operation between the Plug and Play  
hardware and the isolation software.  
ADDRESS PORT  
The internal Plug and Play registers are accessed by  
writing the address to the ADDRESS PORT and then  
1-508  
Am79C961  
P R E L I M I N A R Y  
AMD  
Check-  
sum  
Serial  
Number  
Vendor  
ID  
State  
Isolation  
Byte Byte Byte Byte Byte Byte Byte Byte Byte  
Shift  
0
3
2
1
0
3
2
1
0
Read from serial  
isolation register  
Get one bit from  
serial identifier  
18183B-12  
Shifting of Serial Identifier  
Yes  
No  
ID bit = “1H”  
The shift order for all Plug and Play serial isolation and  
resource data is defined as bit[0], bit[1], and so on  
through bit[7].  
Leave SD in  
high-impedance  
Drive “55H”  
on SD[7:0]  
No  
Hardware Protocol  
SD[1:0] = “01”  
Yes  
The isolation protocol can be invoked by the Plug and  
Play software at any time. The initiation key, described  
earlier, puts all cards into configuration mode. The hard-  
ware on each card expects 72 pairs of I/O read  
accessestotheREAD_DATAport. Thecard’sresponse  
to these reads depends on the value of each bit of the  
serial identifier which is being examined one bit at a time  
in the sequence shown above.  
Wait for next read from serial isolation register  
Drive “AAH”  
Leave SD in  
on SD[7:0]  
high-impedance  
If the current bit of the serial identifier is a “1”, then the  
card will drive the data bus to 0x55 to complete the first  
I/O read cycle. If the bit is “0”, then the card puts its data  
bus driver into high impedance. All cards in high imped-  
ance will check the data bus during the I/O read cycle to  
sense if another card is driving D[ 1:0] to “01”. During the  
second I/O read, the card(s) that drove the 0x55, will  
now drive a 0xAA. All high impedance cards will check  
the data bus to sense if another card is driving D[ 1:0] to  
“10”. Between pairs of Reads, the software should wait  
at least 30 µs.  
No  
SD[1:0] = “10”  
After I/O read  
ID = 0;  
completes, fetch  
next ID bit from  
serial identifier  
Yes  
other card  
ID = 1  
State  
Sleep  
Read all 72 bits  
from serial  
identifier  
No  
Yes  
If a high impedance card sensed another card driving  
the data bus with the appropriate data during both cy-  
cles, then that card ceases to participate in the current  
iteration of card isolation. Such cards, which lose out,  
will participate in future iterations of the isolation  
protocol.  
One  
Card  
Isolated  
18183B-11  
Plug and Play ISA Card  
Isolation Algorithm  
NOTE: During each read cycle, the Plug and Play hard-  
ware drives the entire 8-bit databus, but only checks the  
lower 2 bits.  
If a card was driving the bus or if the card was in high im-  
pedance and did not sense another card driving the bus,  
then it should prepare for the next pair of I/O reads. The  
card shifts the serial identifier by one bit and uses the  
shifted bit to decide its response. The above sequence  
is repeated for the entire 72-bit serial identifier.  
The key element of this mechanism is that each card  
contains a unique number, referred to as the serial iden-  
tifier for the rest of the discussion. The serial identifier is  
a 72-bit unique, non-zero, number composed of two,  
32-bit fields and an 8-bit checksum. The first 32-bit field  
is a vendor identifier. The other 32 bits can be any value,  
for example, a serial number, part of a LAN address, or a  
static number, as long as there will never be two cards in  
a single system with the same 64 bit number. The serial  
identifier is accessed bit-serially by the isolation logic  
and is used to differentiate the cards.  
At the end of this process, one card remains. This card is  
assigned a handle referred to as the Card Select Num-  
ber (CSN) that will be used later to select the card.  
Cards which have been assigned a CSN will not partici-  
pate in subsequent iterations of the isolation protocol.  
Am79C961  
1-509  
AMD  
P R E L I M I N A R Y  
Cards must be assigned a CSN before they will respond  
to the other commands defined in the specification.  
There are two other special considerations for the soft-  
ware protocol. During an iteration, it is possible that the  
0x55 and 0xAA combination is never detected. It is also  
possible that the checksum does not match If either of  
these cases occur on the first iteration, it must be as-  
sumed that the READ_DATA port is in conflict. If a  
conflict is detected, then the READ_DATA port is relo-  
cated. The above process is repeated until a non-  
conflicting location for the READ_DATA port is found.  
Theentirerangebetween0x203and0x3FFisavailable,  
however in practice it is expected that only a few loca-  
tions will be tried before software determines that no  
Plug and Play cards are present.  
It should be noted that the protocol permits the 8-bit  
checksum to be stored in non-volatile memory on the  
card or generated by the on-card logic in real-time. The  
sameLFSRalgorithmdescribedintheinitiationkeysec-  
tion of the Plug and Play specification is used in the  
checksum generation.  
Software Protocol  
The Plug and Play software sends the initiation key to all  
Plug and Play cards to place them into configuration  
mode. The software is then ready to perform the isola-  
tion protocol.  
During subsequent iterations, the occurrence of either  
of these two special cases should be interpreted as the  
absence of any further Plug and Play cards (i.e. the last  
card was found in the previous iteration). This termi-  
nates the isolation protocol.  
The Plug and Play software generates 72 pairs of l/O  
read cycles from the READ_DATA port. The software  
checks the data returned from each pair of I/O reads for  
the 0x55 and 0xAA driven by the hardware. If both 0x55  
and 0xAA are read back, then the software assumes  
that the hardware had a “1” bit in that position. All other  
results are assumed to be a “0.”  
NOTE: The software must delay 1 ms prior to starting  
the first pair of isolation reads, and must wait 250 msec  
between each subsequent pair of isolation reads. This  
delay gives the ISA card time to access information from  
possibly very slow storage devices.  
During the first 64 bits, software generates a checksum  
using the received data. The checksum is compared  
with the checksum read back in the last 8 bits of the  
sequence.  
Plug and Play Card Control Registers  
The state transitions and card control commands for the  
PCnet-ISA+ controller are shown in the following figure.  
1-510  
Am79C961  
P R E L I M I N A R Y  
AMD  
Power up  
RESET or  
Reset Command  
Set CSN = 0  
Active  
Commands  
State  
Wait for Key No active  
commands  
Initiation Key  
Active  
State  
Commands  
SLEEP  
Reset  
Wait for Key  
Wake[CSN]  
(WAKE = 0) AND (CSN = 0)  
(WAKE 0) AND (Wake = CSN)  
Lose serial  
(WAKE <> CSN)  
isolation OR  
(WAKE <> CSN)  
Active  
Commands  
Active  
Commands  
State  
State  
Isolation  
Reset  
Config  
Reset  
Wait for Key  
Set RD_Data  
Port  
Serial Isolation  
Wake[CSN]  
Wait for Key  
Wake[CSN]  
Resource Data  
Status  
Logical Device  
I/O Range Check  
Activate  
Set CSN  
Configuration  
Registers  
18183B-13  
Notes  
1. CSN = Card Select Number  
2. RESET or the Reset command  
causes a state transition from the cur-  
rent state to Wait for Key and sets all  
CSNs to zero.  
3. The Wait for Key command causes a  
state transition from the current state  
to Wait for Key.  
Plug and Play ISA Card State Transitions  
Plug and Play Registers  
The PCnet-ISA+ controller supports all of the defined  
Plug and Play card control registers. Refer to the tables  
on the following pages for detailed information.  
Am79C961  
1-511  
AMD  
P R E L I M I N A R Y  
Plug and Play Standard Registers  
Address  
Port Value  
Name  
Definition  
Set RD_DATA Port  
Serial Isolation  
Config Control  
0x00  
0x01  
0x02  
Writing to this location modifies the address of the port used for reading from the  
Plug and Play ISA cards. Bits[7:00] become I/O read port address bits [9:02].  
Reads from this register are ignored. I/O Address bits 11:10 should = 00, and 1:0 = 11.  
A read to this register causes a Plug and Play card in the Isolation state to compare  
one bit of the board’s ID. This process is fully described above. This register is  
read only.  
Bit[0] - Reset all logical devices and restore configuration registers to their  
power-up values.  
Bit[1] - Return to the Wait for Key state  
Bit[2] - Reset CSN to 0  
A write to bit[0] of this register performs a reset function on all logical devices. This  
resets the contents of configuration registers to their default state. All card’s logical  
devices enter their default state and the CSN is preserved.  
A write to bit[1] of this register causes all cards to enter the Wait for Key state but  
all CSNs are preserved and logical devices are not affected.  
A write to bit[2] of this register causes all cards to reset their CSN to zero.  
This register is write-only. The values are not sticky, that is, hardware will  
automatically clear them and there is no need for software to clear the bits.  
Wake[CSN]  
0x03  
0x04  
A write to this port will cause all cards that have a CSN that matches the write  
data[7:0] to go from the Sleep state to either the Isolation state if the write data for  
this command is zero or the Config state if the write data is not zero. This register  
is write-only. Writing to this register resets the EEPROM pointer to the beginning of  
the Plug and Play Data Structure.  
Resource Data  
A read from this address reads the next byte of resource information. The Status  
register must be polled until bit[0] is set before this register may be read. This  
register is read-only.  
Status  
0x05  
0x06  
Bit[0] when set indicates it is okay to read the next data byte from the Resource  
Data register. This register is read-only.  
Card Select Number  
A write to this port sets a card’s CSN. The CSN is a value uniquely assigned to  
each ISA card after the serial identification process so that each card may be  
individually selected during a Wake [CSN] command. This register is read/write.  
Logical Device Number  
0x07  
Selects the current logical device. This register is read only. The PCnet-ISA+ controller  
has only 1 logical device, and this register contains a value of 0x00  
is that the PCnet-ISA+ controller does not require as  
Plug and Play Logical Device  
Configuration Registers  
The PCnet-ISA+ controller supports a subset of the  
defined Plug and Play logical device control registers.  
The reason for only supporting a subset of the registers  
many system resources as Plug and Play allows. For  
instance, Memory Descriptor 2 is not used, as the  
PCnet-ISA+ controller only requires two memory de-  
scriptors, one for the Boot PROM/Flash, and one for the  
SRAM in Shared Memory Mode.  
1-512  
Am79C961  
P R E L I M I N A R Y  
AMD  
Plug and Play Logical Device Control Registers  
Address  
Port Value  
Name  
Definition  
Activate  
0x30  
For each logical device there is one activate register that controls whether or not  
the logical device is active on the ISA bus. Bit[0], if set, activates the logical device.  
Bits[7:1] are reserved and must be zero. This is a read/write register. Before a  
logical device is activated, I/O range check must be disabled.  
I/O Range Check  
0x31  
This register is used to perform a conflict check on the I/O port range programmed  
for use by a logical device.  
Bit[7:2] Reserved  
Bit 1[1] Enable I/O Range check, if set then I/O Range Check is enabled. I/O range  
check is only valid when the logical device is inactive.  
Bit[0], if set, forces the logical device to respond to I/O reads of the logical device’s  
assigned I/O range with a 0x55 when I/O range check is in operation. If clear, the  
logical device drives 0xAA. This register is read/write.  
Memory Space Configuration  
Register  
Index  
Name  
Definition  
Memory base address  
bits[23:16] descriptor 0  
0x40  
0x41  
0x42  
Read/write value indicating the selected memory base address bits[23:16] for  
memory descriptor 0. This is the Boot Prom Space.  
Memory base address  
bits[15:08] descriptor 0  
Read/write value indicating the selected memory base address bits[15:08] for  
memory descriptor 0.  
Memory control  
Bits[2:1] specifies 8/16-bit control. The encoding is identical to memory control  
(bits[4:3]) of the information field in the memory descriptor.  
Bit[0], =0, indicates the next field is used as a range length for decode  
(implies range length and base alignment of memory descriptor are equal).  
Bit[0] is read-only.  
Memory upper limit  
address;  
bits[23:16] or range  
length;  
bits[23:16] for  
descriptor 0  
0x43  
0x44  
Read/write value indicating the selected memory high address bits[23:16] for  
memory descriptor 0.  
If bit[0] of memory control is 0, this is the range length.  
If bit[0] of memory control is 1, this is considered invalid.  
Memory upper limit  
bits[15:08] or range  
length;  
Read/write value indicating the selected memory high address bits[15:08] for  
memory descriptor 0, either a memory address or a range length as described above.  
bits[15:08] for  
descriptor 0  
Memory descriptor 1  
0x48-0x4C Memory descriptor 1. This is the SRAM Space for Shared Memory.  
I/O Space Configuration  
Register  
Index  
Name  
Definition  
I/O port base address  
bits[15:08] descriptor 0  
0x60  
Read/write value indicating the selected I/O lower limit address bits[15:08] for I/O  
descriptor 0. If a logical device indicates it only uses 10 bit encoding, then bits[15:10]  
do not need to be supported.  
I/O port base address  
bits[07:00] descriptor 0  
0x61  
Read/write value indicating the selected I/O lower limit address bits[07:00] for I/O  
descriptor 0.  
Am79C961  
1-513  
AMD  
P R E L I M I N A R Y  
I/O Interrupt Configuration  
Register  
Index  
Name  
Definition  
Interrupt request level  
select 0  
0x70  
Read/write value indicating selected interrupt level. Bits[3:0] select which interrupt  
level used for Interrupt 0. One selects IRQL 1, fifteen selects IRQL fifteen. IRQL 0 is  
not a valid interrupt selection and represents no interrupt selection.  
Interrupt request type  
select 0  
0x71  
Read/write value indicating which type of interrupt is used for the Request Level  
selected above.  
Bit[1] : Level, 1 = high, 0 = low  
Bit[0] : Type, 1 = level, 0 = edge  
The PCnet-ISA+ controller only supports Edge High and Level Low Interrupts.  
DMA Channel Configuration  
Register  
Index  
Name  
Definition  
DMA channel select 0  
0x74  
Read/write value indicating selected DMA channels. Bits[2:0] select which DMA  
channel is in use for DMA 0. Zero selects DMA channel 0, seven selects DMA  
channel 7. DMA channel 4, the cascade channel is used to indicate no DMA channel  
is active.  
This is a 2-Kbit device organized as 128 x 16 bit words.  
A map of the device as used in the PCnet-ISA+ control-  
ler is below. The information stored in the EEPROM is  
as follows:  
DETAILED FUNCTIONS  
EEPROM  
Interface  
IEEE address  
6 bytes  
10 bytes  
4 bytes  
12 bytes  
19 bytes  
1 byte  
TheEEPROMsupportedbythePCnet-ISA+ controlleris  
an industry standard 93C56 2-Kbit EEPROM device  
which uses a 4-wire interface. This device directly inter-  
faces to the PCnet-ISA+ controller through a 4-wire  
interface which uses 3 of the private data bus pins for  
Data In, Data Out, and Serial Clock. The Chip Select pin  
is a dedicated pin from the PCnet-ISA+ controller.  
Reserved  
EISA ID  
ISACSRs  
Plug and Play Defaults  
8-Bit Checksum  
External Shift Chain  
Plug and Play Config Info  
Note: All data stored in the EEPROM is stored in bit-  
reversal format. Each word (16 bits) must be written into  
the EEPROM with bit 15 swapped with bit 0, bit 14  
swapped with bit 1, etc.  
2 bytes  
192 bytes  
1-514  
Am79C961  
P R E L I M I N A R Y  
AMD  
This byte map is for the case where a non-PCnet Family  
compatible software driver is implemented.  
Serial EEPROM Byte Map  
The following is a byte map of the XXC56 series of  
EEPROMs used by the PCnet-ISA+ Ethernet Controller.  
Word  
Location  
Byte 1  
Byte 0  
0
IEEE Address  
(Bytes 0–5)  
Byte 3  
Byte 2  
1
Byte 5  
Byte 4  
2
Byte 7  
Byte 6  
3
Byte 9  
Byte 8  
4
Byte 11  
Byte 13  
Byte 15  
EISA Byte 1  
EISA Byte 3  
Byte 10  
Byte 12  
Byte 14  
EISA Byte 0  
EISA Byte 2  
5
6
7
8
EISA Config Reg.  
Internal Registers  
9
MSRDA, ISACSR0  
MSWRA, ISACSR1  
A
B
MISC Config, ISACSR2  
LED1 Config, ISACSR5  
LED2 Config, ISACSR6  
LED3 Config, ISACSR7  
C
D
E
F
PnP 0x61  
PnP 0x71  
Unused  
PnP 0x60  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
1A  
1B  
1F  
20  
PnP 0x70  
PnP 0x74  
PnP 0x40  
PnP 0x42  
PnP 0x44  
PnP 0x48  
PnP 0x4A  
PnP 0x4C  
PnP 0xF0  
Plug and Play Reg.  
PnP 0x41  
PnP 0x43  
Unused  
PnP 0x49  
PnP 0x4b  
Unused  
8-bit Checksum  
External Shift Chain  
Unused Locations  
Plug and Play Starting Location  
See Appendix C  
Note:  
Checksum is calculated on words 0 through 0x1Ah (first 54 Bytes).  
Am79C961  
1-515  
AMD  
P R E L I M I N A R Y  
This byte map is for the case where a PCnet Family  
Serial EEPROM Byte Map  
The following is a byte map of the XXC56 series of  
EEPROMs used by the PCnet-ISA+ Ethernet Controller.  
compatible software driver is implemented.  
(This byte map is an application reference for use in de-  
veloping AMD software devices.)  
Word  
Location  
0
1
Byte 1  
Byte 0  
Byte 3  
Byte 2  
IEEE Address  
(Bytes 0–5)  
2
Byte 5  
Byte 4  
3
Reserved  
HWID (01H)  
Reserved  
Reserved  
4
5
User Space 1  
16-Bit Checksum 1  
6
7
ASCII W(0 x 57H)  
EISA Byte 1  
ASCII W(0 x 57H)  
EISA Byte 0  
8
EISA Config Reg.  
Internal Registers  
9
EISA Byte 3  
EISA Byte 2  
A
B
C
D
E
F
MSRDA, ISACSR0  
MSWRA, ISACSR1  
MISC Config, ISACSR2  
LED1 Config, ISACSR5  
LED2 Config, ISACSR6  
LED3 Config, ISACSR7  
10  
11  
12  
PnP 0x61  
PnP 0x71  
Unused  
PnP 0x60  
I/O Ports  
PnP 0x70  
PnP 0x74  
PnP 0x40  
PnP 0x42  
PnP 0x44  
PnP 0x48  
PnP 0x4A  
PnP 0x4C  
PnP 0xF0  
Interrupts  
DMA Channels  
ROM Memory  
Plug and Play Reg. 13  
PnP 0x41  
PnP 0x43  
Unused  
14  
15  
16  
17  
18  
19  
1A  
1B  
1F  
PnP 0x49  
PnP 0x4b  
Unused  
RAM Memory  
Vendor Byte  
8-bit Checksum 2  
External Shift Chain  
Unused Locations  
See Appendix C  
Note:  
20  
Plug and Play Starting Location  
See Appendix C  
Checksum 1 is calculated on words 0 through 5 plus word 7.  
Checksum 2 is calculated on words 0 through 0x1Ah (first 54 Bytes).  
1-516  
Am79C961  
P R E L I M I N A R Y  
AMD  
and Play operation. These registers control the configu-  
ration of the PCnet-ISA+ controller.  
Plug and Play Register Map  
The following chart and its bit descriptions show the in-  
ternal configuration registers associated with the Plug  
Plug and Play  
Register  
Bit 7  
Bit 6  
Bit 5  
Bit 4  
READ_DATA  
SERIAL ISOLATION  
Bit 3  
Bit 2  
Bit 1  
Bit 0  
0x00  
0x01  
0x02  
0
0
0
0
0
RST  
CSN  
WAIT  
KEY  
RST  
ALL  
0x03  
0x04  
0x05  
WAKE [CSN]  
RESOURCE_DATA  
0
0
0
0
0
0
0
READ  
STATUS  
0x06  
0x07  
0x30  
0x31  
CSN  
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
ACTIVATE  
IORNG  
0
IORNG  
READ_DATA  
Address of Plug and Play READ_DATA Port.  
Used in the Serial Isolation process.  
Resets CSN register to zero.  
SERIAL_ISOLATION  
RST_CSN  
WAIT_KEY  
RST_ALL  
Resets Wait for Key State.  
Resets all logical devices.  
WAKE [CSN]  
READ_STATS  
RESOURCE_DATA  
CSN  
Will wake up if write data matches CSN Register.  
Read Status of RESOURCE DATA.  
Next pending byte read from EEPROM.  
Plug and Play CSN Value.  
ACTIVATE  
Indicates that the PCnet-ISA+ device should be activated.  
IORNG  
Bits used to enable the I/O Range Check Command.  
Am79C961  
1-517  
AMD  
P R E L I M I N A R Y  
The following chart and its bit descriptions show the in-  
ternal command registers associated with the Plug and  
Play operation. These registers control the PCnet-ISA+  
controller Plug and Play operation.  
Plug and  
Play Register  
Bit 7  
Bit 6  
Bit 5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0  
0x60  
0
0
0
0
0
0
1
IOAM3  
0x61  
IOAM2  
IOAM1  
IOAM0  
0
0
0
0
0
0x70  
0
0
0
0
IRQ3  
IRQ2  
IRQ1  
IRQ0  
0x71  
0
0
0
0
0
0
IRQ_LVL  
IRQ_TYPE  
0x74  
0
0
0
0
0
DMA2  
DMA1  
DMA0  
0x40  
0
0
0
0
1
1
0
0
1
0
1
0
0
1
0
0
BPAM3  
0x41  
BPAM2  
BPAM1  
BPAM0  
0
0
0
0
0x42  
0
0
0
0
0
BP_16B  
0
0x43  
1
1
1
1
1
1
BPSZ3  
0x44  
BPSZ2  
BPSZ1  
BPSZ0  
0
0
0
0
0x48  
0
0
0
0
1
0
SRAM3  
0x49  
SRAM2  
SRAM1  
SRAM0  
0
0
0
0
0x4A  
0x4B  
0x4c  
0
0
0
0
0
SR16B  
0
SRSZ3  
0
1
SRSZ2  
0
1
SRSZ1  
0
1
SRSZ0  
0
1
0
1
0
1
0
0xF0  
FL_SEL  
BP_CS  
APROM_EN AEN_CS  
IO_MODE  
IRQ[3:0]  
IRQ selection on the ISA bus  
(PnP 0x70). Controls which inter-  
rupt will be asserted. ISA Edge  
sensitive or EISA level mode is  
controlled by IRQ_TYPE bit in  
PnP 0x71. Default is ISA Edge  
Sensitive. The IRQ signals will  
not be driven unless PnP activate  
register bit is set.  
Plug & Play Register Locations Detailed  
Description (Refer to the Plug & Play  
Register Map above.)  
IOAM[3:0]  
I/O Address Address Match to  
bits [8:5] of SA bus (PnP  
0x60–0x61). Controls the base  
address of PCnet-ISA+. The  
IOAM will be written with a value  
from the EEPROM.  
IRQ[3:0]  
ISA IRQ Pin  
IRQ3 (Default)  
IRQ4  
IOAM[3:0]  
Base Address (Hex)  
0
0
0
1
1
1
1
1
0
1
1
0
0
0
1
1
1
0
0
0
1
1
0
1
1
0
1
1
0
1
0
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
200  
220  
240  
260  
280  
2A0  
2C0  
2E0  
300  
320  
340  
360  
380  
3A0  
3C0  
3E0  
IRQ5  
IRQ9  
IRQ10  
IRQ11  
IRQ12  
IRQ15  
IRQ_TYPE  
IRQ Type (PnP 0x71). Indicates  
the type of interrupt setting; Level  
is 1, Edge is 0.  
IRQ_LVL  
IRQ Level (PnP 0x71). A read-  
only register bit that indicates the  
type of setting, active high or low.  
Always  
complement  
of  
IRQ_TYPE.  
1-518  
Am79C961  
P R E L I M I N A R Y  
DMA Channel Select (PnP  
AMD  
DMA[2:0]  
BPSZ[3:0]  
Boot PROM Size  
0x74). Controls the DRQ and  
DMA selection of PCnet-ISA+.  
The DMA[2:0] register will be  
written with a value from the  
0
1
1
1
1
x
1
1
1
0
x
1
1
0
0
x
1
0
0
0
No Boot PROM Selected  
8 K  
16 K  
32 K  
64 K  
EEPROM.  
{For Bus Master  
Mode Only} The DRQ signal will  
not be driven unless EE_VALID  
is set or Non-EEPROM sequen-  
tial write process is complete.  
SRAM[3:0]  
Static RAM Address Match to  
bits [16:13] of SA bus (PnP  
0x48–0x49). Selects the starting  
location of the Shared memory  
by using SA[16:13] for perform-  
ing address comparisons. The  
shared memory address match,  
the SMAM is asserted low.  
SRAM[3] value must reflect the  
external address match logic for  
SA[16].  
DMA[2:0]  
DMA Channel (DRQ/DACK Pair)  
0
1
1
1
1
0
1
1
1
1
0
1
Channel 3  
Channel 5  
Channel 6  
Channel 7  
BPAM[3:0]  
Boot PROM Address Match to  
bits [23:16] of SA bus (PnP  
0x40–0x41). Selects the location  
where the Boot PROM Address  
match decode is started. The  
BPAM will be written with a value  
from the EEPROM.  
SRAM[2:0]  
SA[15:13]  
SRAM Size  
(K bytes)  
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
8, 16, 32, 64  
8
BPAM[3:0]  
Address  
Location (Hex)  
C0000  
Size Supported  
(K bytes)  
8, 16  
8
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
8, 16, 32, 64  
8, 16, 32  
C2000  
C4000  
C6000  
C8000  
CA000  
CC000  
CE000  
D0000  
D2000  
D4000  
D6000  
D8000  
DA000  
DC000  
DE000  
8
8
8, 16  
8, 16  
8
8
8, 16, 32  
8
SR_16B  
Static RAM 16-bit access (PnP  
0x4A). Asserted if SRAM cycles  
should respond as an 16-bit  
device.  
8, 16  
8
8, 16, 32, 64  
SRSZ[3:0]  
Static RAM Size (PnP 0x4B–  
0x4C). Selects the size of the  
static RAM selected.  
8
8, 16  
8
SRSZ[3:0]  
Shared Memory Size  
8, 16, 32  
0
1
1
1
1
x
1
1
1
0
x
1
1
0
0
x
1
0
0
0
No Static RAM Selected  
8
8 K  
8, 16  
8
16 K  
32 K  
64 K  
BP_16B  
Boot PROM 16-bit access (PnP  
0x42). Is asserted if Boot PROM  
cycles should respond as an  
16-bit device. In Bus Master  
mode, all boot PROM cycles will  
only be 8 bits in width.  
Vendor Defined Byte (PnP 0x0F)  
IO_MODE  
I/O Mode. When set to one, the  
internal selection will respond as  
a 16-bit port, (i.e. drive IOCS16  
pin). When IO_MODE is set to  
zero, (Default), the internal I/O  
BPSZ[3:0]  
Boot  
PROM  
Size  
(PnP  
0x43–0x44). Selects the size of  
the boot PROM selected.  
Am79C961  
1-519  
AMD  
P R E L I M I N A R Y  
selection will respond as an 8-bit  
memory device. In Bus Master  
Mode, BPCS is replaced with  
Flash_OE. IRQ12 becomes  
Flash_WE. The Flash’s CS pin is  
grounded. In shared memory  
mode, BPCS is replaced with  
Flash_CS. IRQ12 becomes  
Static_RAM_CS pin. The SROE  
and SRWE signals are con-  
nected to both the SRAM and  
Flash memory devices. FL_SEL  
is cleared by a reset, which is the  
default.  
port.  
AEN_CS  
External Decode Logic for I/O  
Registers. When written with a  
one, the PCnet-ISA+ will use the  
AEN pin as I/O chip select bar, to  
allow for external decode logic  
for the upper address bit of SA  
[9:5]. The purpose of this pin is to  
allow I/O locations, not sup-  
ported with the IOAM[3:0],  
selection, to be defined outside  
the range 0x200–0x3F7. When  
set to a zero, (Default), I/O Selec-  
tion will use IOAM[3:0].  
Shared Memory Configuration Bits (Not  
Defined for Bus Master Mode)  
In Shared Memory Mode, the address comparison  
above the 15th bit must be performed by external logic.  
All address comparisons for bit 15th and below will use  
the internal compare logic.  
APROM_EN  
External Parallel IEEE Address  
PROM. When set, the IRQ15 pin  
is reconfigured to be an Address  
Chip Select low, similar to APCS  
pin in the existing PCnet-ISA  
(Am79C960) device. The pur-  
pose of this bit is to allow for both  
a serial EEPROM and parallel  
PROM to coexist. When  
APROM_EN is set, the IEEE ad-  
dress located in the serial  
EEPROM will be ignored and  
parallel access will occur over  
SRAM[3:0],  
SR_16B, SRSZ[3:0] These are not defined in bus-  
master mode. BP_16B must be  
written with a zero in bus-master  
mode.  
Note: In Bus Master Mode, the BP_16B is always con-  
sidered an 8-bit device. If SBHE signal is left uncon-  
nected, in shared memory mode (i.e. 8-bit Slot), all  
memory and I/O access will assume 8-bit accesses. It is  
the responsibility of external logic to drive MEMCS16  
signal for the appropriate 128 Kbit segment decoded  
from the LA[23:17] signals. MEMCS16 should be driven  
when accessing an 8-bit memory resource.  
the  
PRDB  
bus.  
When  
APROM_EN is cleared, default  
state, the IEEE address will be  
read in from the serial device and  
written to an internal RAM. When  
the I/O space of the IEEE PROM  
is selected, PCnet-ISA+, will ac-  
cess the contents of this RAM for  
I/O read cycles. I/O write cycles  
will be ignored.  
Checksum Failure  
After RESET, the PCnet-ISA+ controller begins reading  
the EEPROM and storing the information in registers in-  
side PCnet-ISA+ controller. PCnet-ISA+ controller does  
a checksum on word locations 0-1Ah inclusive and if the  
byte checksum = 0FFh, then the data read from the  
EEPROM is considered good. If the checksum is not  
equal to 0FFh, then the PCnet-ISA+ controller enters  
what is called software relocatable mode.  
BP_CS  
Boot PROM Chip Select. When  
BP_CS is set to one, BALE will  
act as an external chip select (ac-  
tive low) above bit 15 of the  
address bus. BALE = 0, will se-  
lect the boot PROM when MEMR  
is asserted low if the BP_CS bit is  
set and BPAM[2:0] match  
In software relocatable mode, the device functions the  
same as in Plug and Play mode, except that it does not  
respond to the same initiation key as Plug and Play sup-  
ports. Instead, a different key is used to bring  
PCnet-ISA+ controlleroutoftheWaitForKeystate. This  
key is as follows:  
SA[15:13]  
and  
BPSZ[3:0]  
matches the selected size.  
When BP_CS is set to zero.  
BALE will act as the normal ad-  
dress latch strobe to capture the  
upper address bits for memory  
access to the boot PROM.  
BP_CS is by default low. The pri-  
mary purpose of this bit is to allow  
non-ISA bus applications to sup-  
port larger Boot PROMS or  
non-standard Boot PROM/Flash  
locations.  
6B, 35, 9A, CD, E6, F3, 79, BC  
5E, AF, 57, 2B, 15, 8A, C5, E2  
F1, F8, 7C, 3E, 9F, 4F, 27, 13  
09, 84, 42, A1, D0, 68, 34, 1A  
FL_SEL  
Flash Memory Device Selected.  
When set, the Boot PROM is re-  
placed with an external Flash  
1-520  
Am79C961  
P R E L I M I N A R Y  
AMD  
the SROE and SRWE signals are connected to both the  
SRAM and Flash devices.  
Use Without EEPROM  
In some designs, especially PC motherboard applica-  
tions, it may be desirable to eliminate the EEPROM  
altogether. This would save money, space, and power  
consumption.  
Optional IEEE Address PROM  
Normally, the Ethernet physical address will be stored in  
the EEPROM with the other configuration data. This re-  
duces the parts count, board space requirements, and  
power consumption. The option to use a standard  
parallel8bitPROMisprovidedtomanufactureswhoare  
concerned about the non-volatile nature of EEPROMs.  
The operation of this mode is similar to when the  
PCnet-ISA+ controller encounters a checksum error, ex-  
cept that to enter this mode the SHFBUSY pin is left  
unconnected. The device will enter software relocatable  
mode, and the BIOS on the motherboard can wake up  
the device, configure it, load the IEEE address (possibly  
stored in Flash ROM) into the PCnet-ISA+ controller,  
and activate the device.  
To use a 8 bit parallel prom to store the IEEE address  
data instead of storing it in the EEPROM, the  
APROM_EN bit is set in the Plug and Play registers by  
the EEPROM upon RESET. IRQ15 is redefined by the  
setting of this bit to be APCS, or ADDRESS PROM  
CHIPSELECT. Thispinisconnectedtoanexternal8bit  
PROM, such as a 27LS19. The address pins of the  
PROM are connected to the lower address pins of the  
ISA bus, and the data lines are connected to the private  
data bus.  
External Scan Chain  
The External Scan Chain is a set of bits stored in the  
EEPROM which are not used in the PCnet-ISA+ control-  
ler but which can be used with external hardware to  
allow jumperless configuration of external devices.  
After RESET, the PCnet-ISA+ controller begins reading  
the EEPROM and storing the information in registers in-  
side the PCnet-ISA+ controller. SHFBUSY is held high  
during the read of the EEPROM. If external circuitry is  
added, such as a shift register, which is clocked from  
SCLK and is attached to DO from the EEPROM, data  
read out of the EEPROM will be shifted into the shift reg-  
ister. After reading the EEPROM to the end of the  
External Shift Chain, and if there is a correct checksum,  
SHFBUSY will go low. This will be used to latch the infor-  
mation from the EEPROM into the shift register. If the  
checksum is invalid, SHFBUSY will not go low, indicat-  
ing that the EEPROM may be bad.  
In this mode, any accesses to the IEEE address will be  
passed to the external PROM and the data will be  
passed through the PCnet-ISA+ controller to the system  
data bus.  
EISA Configuration Registers  
The PCnet-ISA+ controller has support for the 4-byte  
EISA Configuration Registers. These are used in EISA  
systems to identify the card and load the appropriate  
configuration file for that card. This feature is enabled  
using bit 10 of ISACSR2. When set to 1, the EISA Con-  
figuration registers will be enabled and will be read at I/O  
location 0xC80-0xC83. The contents of these 4 regis-  
ters are stored in the EEPROM and are automatically  
read in at RESET.  
For more information on the use of this function, please  
refer to the technical reference manual.  
Flash PROM  
Bus Interface Unit (BIU)  
Use  
The bus interface unit is a mixture of a 20 MHz state ma-  
chine and asynchronous logic. It handles two types of  
accesses; accesses where the PCnet-ISA+ controller is  
aslaveandaccesseswherethePCnet-ISA+ controlleris  
the Current Master.  
Instead of using a PROM or EPROM for the Boot  
PROM, it may be desirable to use a Flash or EEPROM  
type of device for storing the Boot code. This would al-  
low for in-system updates and changes to the  
information in the Boot ROM without opening up the PC.  
It may also be desirable to store statistics or drivers in  
the Flash device.  
In slave mode, signals like IOCS16 are asserted and  
deasserted as soon as the appropriate inputs are re-  
ceived. IOCHRDY is asynchronously driven LOW if the  
PCnet-ISA+ controller needs a wait state. It is released  
synchronously when the PCnet-ISA+ controller is ready.  
Interface  
To use a Flash-type device with the PCnet-ISA+ control-  
ler, Flash Select is set in register 0F0h of the Plug and  
Play registers. Flash Select is cleared by RESET (de-  
fault).  
When the PCnet-ISA+ controller is the Current Master,  
all the signals it generates are synchronous to the on-  
chip 20 MHz clock.  
DMA Transfers  
In bus master mode, BPCS becomes Flash_OE and  
IRQ12 becomes Flash_WE. The Flash ROM devices  
CS pin is connected to ground.  
The BIU will initiate DMA transfers according to the type  
of operation being performed. There are three primary  
types of DMA transfers:  
In shared memory mode, BPCS becomes Flash_ CS  
and IRQ12 becomes the static RAM Chip Select, and  
1. Initialization Block DMA Transfers  
Am79C961  
1-521  
AMD  
P R E L I M I N A R Y  
Once the BIU has been granted bus mastership, it will  
perform four data transfer cycles (eight bytes) before re-  
linquishing the bus. The four transfers within the  
mastership period will always be read cycles to  
contiguous addresses. There are 12 words to transfer  
so there will be three bus mastership periods.  
The Initialization Block is vectored by the contents of  
CSR1 (least significant 16 bits of address) and CSR2  
(most significant 8 bits of address). The block contains  
the user defined conditions for PCnet-ISA+ controller  
operation, together with the address and length  
information to allow linkage of the transmit and receive  
descriptor rings.  
2. Descriptor DMA Transfers  
There is an alternative method to initialize the  
PCnet-ISA+ controller. Instead of initialization via the  
initialization block in memory, data can be written di-  
rectly into the appropriate registers. Either method may  
be used at the discretion of the programmer. If the regis-  
ters are written to directly, the INIT bit must not be set, or  
the initialization block will be read in, thus overwriting  
the previously written information. Please refer to  
Appendix D for details on this alternative method.  
Once the BIU has been granted bus mastership, it will  
perform the appropriate number of data transfer cycles  
before relinquishing the bus. The transfers within the  
mastership period will always be of the same type  
(either all read or all write), but may be to non-  
contiguous addresses. Only the bytes which need to be  
read or written are accessed.  
3. Burst-Cycle DMA Transfers  
Once the BIU has been granted bus mastership, it will  
perform a series of consecutive data transfer cycles be-  
fore relinquishing the bus. Each data transfer will be  
performed sequentially, with the issue of the address,  
and the transfer of the data with appropriate output sig-  
nals to indicate selection of the active data bytes during  
the transfer. All transfers within the mastership cycle will  
be either read or write cycles, and will be to contiguous  
addresses. The number of data transfer cycles within  
the burst is dependent on the programming of the  
DMAPLUS option (CSR4, bit 14).  
Reinitialization  
The transmitter and receiver section of the PCnet-ISA+  
controller can be turned on via the initialization block  
(MODE Register DTX, DRX bits; CSR15[1:0]). The  
state of the transmitter and receiver are monitored  
through CSR0 (RXON, TXON bits). The PCnet-ISA+  
controller should be reinitialized if the transmitter and/or  
the receiver were not turned on during the original in-  
itialization and it was subsequently required to activate  
them, or if either section shut off due to the detection of  
an error condition (MERR, UFLO, TX BUFF error).  
If DMAPLUS = 0, a maximum of 16 transfers will be per-  
formed. This may be changed by writing to the burst  
register (CSR80), but the default takes the same  
amount of time as the Am2100 family of LANCE-based  
boards, a little over 5 µs.  
Reinitializationmaybedoneviatheinitializationblockor  
by setting the STOP bit in CSR0, followed by writing to  
CSR15, and then setting the START bit in CSR0. Note  
that this form of restart will not perform the same in the  
PCnet-ISA+ controller as in the LANCE. In particular, the  
PCnet-ISA+ controller reloads the transmit and receive  
descriptor pointers with their respective base ad-  
dresses.This means that the software must clear the  
descriptor’s own bits and reset its descriptor ring point-  
ers before the restart of the PCnet-ISA controller. The  
reload of descriptor base addresses is performed in the  
LANCE only after initialization, so a restart of the  
LANCE without initialization leaves the LANCE pointing  
at the same descriptor locations as before the restart.  
If DMAPLUS = 1, the burst will continue until the FIFO is  
filled to its high threshold (32 bytes in transmit opera-  
tion) or emptied to its low threshold (16 bytes in receive  
operation). The exact number of transfer cycles in this  
case will be dependent on the latency of the system bus  
to the BIU’s mastership request and the speed of  
bus operation.  
Buffer Management Unit (BMU)  
The buffer management unit is a micro-coded 20 MHz  
state machine which implements the initialization block  
and the descriptor architecture.  
Buffer Management  
Buffer management is accomplished through message  
descriptor entries organized as ring structures in mem-  
ory. There are two rings, a receive ring and a transmit  
ring. The size of a message descriptor entry is 4 words  
(8 bytes).  
Initialization  
PCnet-ISA+ controller initialization includes the reading  
of the initialization block in memory to obtain the operat-  
ing parameters. The initialization block is read when the  
INIT bit in CSR0 is set. The INIT bit should be set before  
or concurrent with the STRT bit to insure correct opera-  
tion. Four words at a time are read and the bus is  
released at the end of each block of reads, for a total of  
three arbitration cycles. Once the initialization block has  
been read in and processed, the BMU knows where the  
receiveandtransmitdescriptorringsare. Oncompletion  
of the read operation and after internal registers have  
been updated, IDON will be set in CSR0, and an inter-  
rupt generated if IENA is set.  
Descriptor Rings  
Each descriptor ring must be organized in a contiguous  
area of memory. At initialization time (setting the INIT bit  
in CSR0), the PCnet-ISA+ controller reads the user-de-  
fined base address for the transmit and receive  
descriptor rings, which must be on an 8-byte boundary,  
as well as the number of entries contained in the de-  
scriptor rings. By default, a maximum of 128 ring entries  
is permitted when utilizing the initialization block, which  
uses values of TLEN and RLEN to specify the transmit  
1-522  
Am79C961  
P R E L I M I N A R Y  
AMD  
and receive descriptor ring lengths. However, the ring  
lengthscanbemanuallydefined(upto65535)bywriting  
the transmit and receive ring length registers  
(CSR76,78) directly.  
relinquish ownership or to write to any field in the  
descriptor entry. A device that is not the current owner of  
a descriptor entry cannot assume ownership or change  
any field in the entry.  
Each ring entry contains the following information:  
Descriptor Ring Access Mechanism  
At initialization, the PCnet-ISA+ controller reads the  
baseaddressofboththetransmitandreceivedescriptor  
rings into CSRs for use by the PCnet-ISA+ controller  
during subsequent operation.  
The address of the actual message data buffer  
in user or host memory  
The length of the message buffer  
Status information indicating the condition of  
the buffer  
When transmit and receive functions begin, the base  
address of each ring is loaded into the current descriptor  
address registers and the address of the next descriptor  
entry in the transmit and receive rings is computed and  
loaded into the next descriptor address registers.  
Receive descriptor entries are similar (but not identical)  
totransmitdescriptorentries. Botharecomposedoffour  
registers, each 16 bits wide for a total of 8 bytes.  
To permit the queuing and de-queuing of message buff-  
ers, ownership of each buffer is allocated to either the  
PCnet-ISA+ controller or the host. The OWN bit within  
the descriptor status information, either TMD or RMD  
(see section on TMD or RMD), is used for this purpose.  
“Deadly Embrace” conditions are avoided by the owner-  
ship mechanism. Only the owner is permitted to  
Am79C961  
1-523  
AMD  
P R E L I M I N A R Y  
N
N
N
N
24-Bit Base Address  
Pointer to  
Initialization Block  
RCV Descriptor  
Ring  
1st desc.  
start  
2nd desc.  
start  
CSR2  
IADR[23:16]  
CSR1  
IADR[15:0]  
RES  
RMD0  
RMD0  
RMD3  
RMD1  
RMD2  
Initialization  
Block  
MODE  
PADR[15:0]  
Data  
Data  
Data  
Buffer  
N
RCV  
Buffers  
Buffer  
1
Buffer  
2
PADR[31:16]  
PADRF[47:32]  
LADRF[15:0]  
LADRF[31:16]  
LADRF[47:32]  
LADRF[63:48]  
RDRA[15:0]  
M
M
M
M
XMT Descriptor  
RLEN  
RES  
TDRA[15:0]  
RES  
TDRA[23:16]  
RDRA[23:16]  
Ring  
2nd desc.  
start  
1st desc.  
start  
TLEN  
TMD0  
TMD0  
TMD3  
TMD1  
TMD2  
Data  
Buffer  
1
Data  
Buffer  
2
Data  
Buffer  
M
XMT  
Buffers  
18183B-14  
Initialization Block and Descriptor Rings  
Polling  
A typical polling operation consists of the following: The  
PCnet-ISA+ controller will use the current receive de-  
scriptor address stored internally to vector to the  
appropriate Receive Descriptor Table Entry (RDTE). It  
will then use the current transmit descriptor address  
(stored internally) to vector to the appropriate Transmit  
Descriptor Table Entry (TDTE). These accesses will be  
made to RMD1 and RMD0 of the current RDTE and  
When there is no channel activity and there is no pre- or  
post-receive or transmit activity being performed by the  
PCnet-ISA+ controller then the PCnet-ISA+ controller  
will periodically poll the current receive and transmit de-  
scriptor entries in order to ascertain their ownership. If  
the DPOLL bit in CSR4 is set, then the transmit polling  
function is disabled.  
1-524  
Am79C961  
P R E L I M I N A R Y  
AMD  
TMD1 and TMD0 of the current TDTE at periodic polling  
intervals. All information collected during polling activity  
will be stored internally in the appropriate CSRs. (i.e.  
CSR18–19, CSR40, CSR20–21, CSR42, CSR50,  
CSR52). Unowned descriptor status will be internally  
ignored.  
poll time count register is never reset. Note that if a non-  
default is desired, then a strict sequence of setting the  
INIT bit in CSR0, waiting for the IDON bit in CSR0, then  
writing to CSR47, and then setting STRT in CSR0 must  
be observed, otherwise the default value will not be  
overwritten. See the CSR47 section for details.  
A typical receive poll occurs under the following  
conditions:  
Setting the TDMD bit of CSR0 will cause the microcode  
controller to exit the poll counting code and immediately  
perform a polling operation. If RDTE ownership has not  
been previously established, then an RDTE poll will be  
performed ahead of the TDTE poll.  
1) PCnet-ISA+ controller does not possess ownership  
of the current RDTE and  
the poll time has elapsed and  
RXON = 1,  
Transmit Descriptor Table Entry (TDTE)  
or  
If, after a TDTE access, the PCnet-ISA+ controller finds  
that the OWN bit of that TDTE is not set, then the  
PCnet-ISA+ controller resumes the poll time count and  
reexamines the same TDTE at the next expiration of the  
poll time count.  
2) PCnet-ISA+ controller does not possess ownership  
of the next RDTE and  
the poll time has elapsed and  
RXON = 1,  
If RXON = 0, the PCnet-ISA+ controller will never poll  
RDTE locations.  
If the OWN bit of the TDTE is set, but STP = 0, the  
PCnet-ISA+ controller will immediately request the bus  
in order to reset the OWN bit of this descriptor; this con-  
dition would normally be found following a LCOL or  
RETRY error that occurred in the middle of a transmit  
packet chain of buffers. After resetting the OWN bit of  
this descriptor, the PCnet-ISA+ controller will again im-  
mediately request the bus in order to access the next  
TDTE location in the ring.  
IfRXON=1, thesystemshouldalwayshaveatleastone  
RDTE available for the possibility of a receive event.  
When there is only one RDTE, there is no polling for next  
RDTE.  
A typical transmit poll occurs under the following  
conditions:  
1) PCnet-ISA+ controller does not possess ownership  
of the current TDTE and  
If the OWN bit is set and the buffer length is 0, the OWN  
bit will be reset. In the LANCE the buffer length of 0 is  
interpreted as a 4096-byte buffer. It is acceptable to  
have a 0 length buffer on transmit with STP = 1 or STP =  
1 and ENP = 1. It is not acceptable to have 0 length  
buffer with STP = 0 and ENP = 1.  
DPOLL = 0 and  
TXON = 1 and  
the poll time has elapsed,  
or  
If the OWN bit is set and the start of packet (STP) bit is  
set, then microcode control proceeds to a routine that  
will enable transmit data transfers to the FIFO.  
2) PCnet-ISA+ controller does not possess ownership  
of the current TDTE and  
DPOLL = 0 and  
TXON = 1 and  
a packet has just been received,  
If the transmit buffers are data chained (ENP=0 in the  
first buffer), then the PCnet-ISA+ controller will look  
ahead to the next transmit descriptor after it has  
performed at least one transmit data transfer from the  
first buffer. More than one transmit data transfer may  
possibly take place, depending upon the state of the  
transmitter. The transmit descriptor lookahead reads  
TMD0 first and TMD1 second. The contents of TMD0  
and TMD1 will be stored in Next TX Descriptor Address  
(CSR32), Next TX Byte Count (CSR66) and Next TX  
Status (CSR67) regardless of the state of the OWN bit.  
This transmit descriptor lookahead operation is per-  
formed only once.  
or  
3) PCnet-ISA+ controller does not possess ownership  
of the current TDTE and  
DPOLL = 0 and  
TXON = 1 and  
a packet has just been transmitted.  
The poll time interval is nominally defined as 32,768  
crystal clock periods, or 1.6 ms. However, the poll time  
register is controlled internally by microcode, so any  
other microcode controlled operation will interrupt the  
incrementing of the poll count register. For example,  
when a receive packet is accepted by the PCnet-ISA+  
controller, the device suspends execution of the poll-  
If the PCnet-ISA+ controller does not own the next TDTE  
(i.e. the second TDTE for this packet), then it will com-  
plete transmission of the current buffer and then update  
the status of the current (first) TDTE with the BUFF and  
UFLO bits being set. This will cause the transmitter to be  
disabled (CSR0, TXON=0). The PCnet-ISA+ controller  
will have to be restarted to restore the transmit function.  
The situation that matches this description implies that  
the system has not been able to stay ahead of the  
time-incrementing microcode so that  
a receive  
microcode routine may instead be executed. Poll-time-  
incrementing code is resumed when the receive  
operation has completely finished. Note, however, that  
following the completion of any receive or transmit op-  
eration, a poll operation will always be performed. The  
Am79C961  
1-525  
AMD  
P R E L I M I N A R Y  
PCnet-ISA+ controller in the transmit descriptor ring and  
therefore, the condition is treated as a fatal error. To  
avoid this situation, the system should always set the  
transmit chain descriptor own bits in reverse order.  
operation poll avoids inserting poll time counts between  
successive transmit packets.  
Whenever the PCnet-ISA+ controller completes a trans-  
mit packet (either with or without error) and writes the  
status information to the current descriptor, then the  
TINT bit of CSR0 is set to indicate the completion of a  
transmission. Thiscausesaninterruptsignal iftheIENA  
bit of CSR0 has been set and the TINTM bit of CSR3  
is reset.  
If the PCnet-ISA+ controller does own the second TDTE  
in a chain, it will gradually empty the contents of the first  
buffer (as the bytes are needed by the transmit opera-  
tion), perform a single-cycle DMA transfer to update the  
status (reset the OWN bit in TMD1) of the first descrip-  
tor, and then it may perform one data DMA access on  
the second buffer in the chain before executing another  
lookahead operation. (i.e. a lookahead to the third  
descriptor.)  
Receive Descriptor Table Entry (RDTE)  
If the PCnet-ISA+ controller does not own both the cur-  
rent and the next Receive Descriptor Table Entry, then  
the PCnet-ISA+ controller will continue to poll according  
to the polling sequence described above. If the receive  
descriptor ring length is 1, there is no next descriptor,  
and no look ahead poll will take place.  
The PCnet-ISA+ controller can queue up to two packets  
in the transmit FIFO. Call them packet “X” and packet  
“Y”, where “Y” is after “X”. Assume that packet “X” is  
currently being transmitted. Because the PCnet-ISA+  
controller can perform lookahead data transfer over an  
ENP, it is possible for the PCnet-ISA+ controller to up-  
date a TDTE in a buffer belonging to packet “Y” while  
packet “X” is being transmitted if packet “Y” uses data  
chaining. This operation will result in non-sequential  
TDTE accesses as packet “X” completes transmission  
and the PCnet-ISA+ controller writes out its status, since  
packet “X”’s TDTE is before the TDTE accessed as part  
of the lookahead data transfer from packet “Y”.  
If a poll operation has revealed that the current and the  
next RDTE belongs to the PCnet-ISA+ controller, then  
additional poll accesses are not necessary. Future poll  
operations will not include RDTE accesses as long as  
the PCnet-ISA+ controller retains ownership to the cur-  
rent and the next RDTE.  
When receive activity is present on the channel, the  
PCnet-ISA+ controller waits for the complete address of  
the message to arrive. It then decides whether to accept  
or reject the packet based on all active addressing  
schemes. If the packet is accepted the PCnet-ISA+ con-  
troller checks the current receive buffer status register  
CRST (CSR40) to determine the ownership of the cur-  
rent buffer.  
This should not cause any problem for properly written  
software which processes buffers in sequence, waiting  
for ownership before proceeding.  
If an error occurs in the transmission before all of the  
bytes of the current buffer have been transferred, then  
TMD2 and TMD1 of the current buffer will be written; in  
that case, data transfers from the next buffer will not  
commence. Instead, followingtheTMD2/TMD1update,  
the PCnet-ISA+ controller will go to the next transmit  
packet, if any, skipping over the rest of the packet which  
experienced an error, including chained buffers.  
If ownership is lacking, then the PCnet-ISA+ controller  
will immediately perform a (last ditch) poll of the current  
RDTE. If ownership is still denied, then the PCnet-ISA+  
controller has no buffer in which to store the incoming  
message. The MISS bit will be set in CSR0 and an inter-  
rupt will be generated if IENA = 1 (CSR0) and MISSM =  
0 (CSR3). Another poll of the current RDTE will not oc-  
cur until the packet has finished.  
This is done by returning to the polling microcode where  
it will immediately access the next descriptor and find  
theconditionOWN=1andSTP=0asdescribedearlier.  
In that case, the PCnet-ISA+ controller will reset the own  
bit for this descriptor and continue in like manner until a  
descriptor with OWN=0 (no more transmit packets in the  
ring) or OWN = 1 and STP = 1 (the first buffer of a new  
packet) is reached.  
If the PCnet-ISA+ controller sees that the last poll (either  
a normal poll or the last-ditch effort described in the  
aboveparagraph)ofthecurrentRDTEshowsvalidown-  
ership, then it proceeds to a poll of the next RDTE.  
Following this poll, and regardless of the outcome of this  
poll, transfers of receive data from the FIFO may begin.  
Attheendofanytransmitoperation, whethersuccessful  
or with errors, and the completion of the descriptor up-  
dates, the PCnet-ISA+ controller will always perform  
another poll operation. As described earlier, this poll op-  
eration will begin with a check of the current RDTE,  
unless the PCnet-ISA+ controller already owns that de-  
scriptor. Then the PCnet-ISA+ controller will proceed to  
polling the next TDTE. If the transmit descriptor OWN bit  
has a zero value, then the PCnet-ISA+ controller will re-  
sume poll time count incrementation. If the transmit  
descriptor OWN bit has a value of ONE, then the  
PCnet-ISA+ controller will begin filling the FIFO with  
transmit data and initiate a transmission. This end-of-  
Regardless of ownership of the second receive descrip-  
tor, the PCnet-ISA+ controller will continue to perform  
receive data DMA transfers to the first buffer, using  
burst-cycle DMA transfers. If the packet length exceeds  
the length of the first buffer, and the PCnet-ISA+ control-  
ler does not own the second buffer, ownership of the  
current descriptor will be passed back to the system by  
writing a zero to the OWN bit of RMD1 and status will be  
written indicating buffer (BUFF = 1) and possibly over-  
flow (OFLO = 1) errors.  
If the packet length exceeds the length of the first (cur-  
rent) buffer, and the PCnet-ISA+ controller does own the  
1-526  
Am79C961  
P R E L I M I N A R Y  
AMD  
second (next) buffer, ownership will be passed back to  
the system by writing a zero to the OWN bit of RMD1  
when the first buffer is full. Receive data transfers to the  
second buffer may occur before the PCnet-ISA+ control-  
ler proceeds to look ahead to the ownership of the third  
buffer. Such action will depend upon the state of the  
FIFO when the status has been updated on the first de-  
scriptor. In any case, lookahead will be performed to the  
thirdbufferandtheinformationgatheredwillbestoredin  
the chip, regardless of the state of the ownership bit. As  
in the transmit flow, lookahead operations are per-  
formed only once.  
This activity continues until the PCnet-ISA+ controller  
recognizes the completion of the packet (the last byte of  
this receive message has been removed from the  
FIFO). The PCnet-ISA+ controller will subsequently  
update the current RDTE status with the end of packet  
(ENP) indication set, write the message byte count  
(MCNT) of the complete packet into RMD2 and over-  
write the “current” entries in the CSRs with the “next”  
entries.  
APAD_XMT = 1 (bit 11 in CSR4), transmit messages  
will be padded with sufficient bytes (containing 00h) to  
ensure that the receiving station will observe an  
information field (destination address, source address,  
length/type, data and FCS) of 64-bytes.  
When  
ASTRP_RCV = 1 (bit 10 in CSR4), the receiver will auto-  
matically strip pad bytes from the received message by  
observing the value in the length field, and stripping ex-  
cess bytes if this value is below the minimum data size  
(46 bytes). Both features can be independently over-  
ridden to allow illegally short (less than 64 bytes of  
packet data) messages to be transmitted and/or re-  
ceived. The use of these features reduce bus bandwidth  
usage because the pad bytes are not transferred to or  
from host memory.  
Framing (frame boundary delimitation, frame  
synchronization)  
The MAC engine will autonomously handle the con-  
struction of the transmit frame. Once the Transmit FIFO  
has been filled to the predetermined threshold (set by  
XMTSP in CSR80), and providing access to the channel  
is currently permitted, the MAC engine will commence  
the 7-byte preamble sequence (10101010b, where first  
bit transmitted is a 1). The MAC engine will subse-  
quently append the Start Frame Delimiter (SFD) byte  
(10101011b) followed by the serialized data from the  
Transmit FIFO. Once the data has been completed, the  
MAC engine will append the FCS (most significant bit  
first) which was computed on the entire data portion of  
the message.  
Media Access Control  
The Media Access Control engine incorporates the es-  
sential protocol requirements for operation of a  
compliant Ethernet/802.3 node, and provides the inter-  
face between the FIFO sub-system and the Manchester  
Encoder/Decoder (MENDEC).  
The MAC engine is fully compliant to Section 4 of ISO/  
IEC8802-3(ANSI/IEEEStandard1990SecondEdition)  
and ANSI/IEEE 802.3 (1985).  
Note that the user is responsible for the correct ordering  
and content in each of the fields in the frame, including  
the destination address, source address, length/type  
and packet data.  
The MAC engine provides programmable enhanced  
features designed to minimize host supervision and pre  
or post-message processing. These features include  
the ability to disable retries after a collision, dynamic  
FCS generation on a packet-by-packet basis, and auto-  
matic pad field insertion and deletion to enforce  
minimum frame size attributes.  
The receive section of the MAC engine will detect an in-  
coming preamble sequence and lock to the encoded  
clock. The internal MENDEC will decode the serial bit  
stream and present this to the MAC engine. The MAC  
will discard the first 8 bits of information before search-  
ing for the SFD sequence. Once the SFD is detected, all  
subsequent bits are treated as part of the frame. The  
MAC engine will inspect the length field to ensure mini-  
mum frame size, strip unnecessary pad characters (if  
enabled), and pass the remaining bytes through the Re-  
ceive FIFO to the host. If pad stripping is performed, the  
MAC engine will also strip the received FCS bytes, al-  
though the normal FCS computation and checking will  
occur. Note that apart from pad stripping, the frame will  
be passed unmodified to the host. If the length field has  
a value of 46 or greater, the MAC engine will not attempt  
to validate the length against the number of bytes con-  
tained in the message.  
The two primary attributes of the MAC engine are:  
Transmit and receive message data encapsulation  
— Framing (frame boundary delimitation, frame  
synchronization)  
— Addressing (source and destination address  
handling)  
— Error detection (physical medium transmission  
errors)  
Media access management  
— Medium allocation (collision avoidance)  
— Contention resolution (collision handling)  
If the frame terminates or suffers a collision before  
64 bytes of information (after SFD) have been received,  
the MAC engine will automatically delete the frame from  
the Receive FIFO, without host intervention.  
Transmit And Receive Message Data  
Encapsulation  
The MAC engine provides minimum frame size enforce-  
ment for transmit and receive packets. When  
Am79C961  
1-527  
AMD  
P R E L I M I N A R Y  
Addressing (source and destination address  
handling)  
will ignore up to seven additional bits at the end of a  
message (dribbling bits), which can occur under normal  
network operating conditions. The reception of eight ad-  
ditional bits will cause the MAC engine to de-serialize  
the entire byte, and will result in the received message  
and FCS being modified.  
The first 6 bytes of information after SFD will be inter-  
pretedasthedestinationaddressfield. TheMACengine  
provides facilities for physical, logical, and broadcast  
address reception. In addition, multiple physical ad-  
dresses can be constructed (perfect address filtering)  
using external logic in conjunction with the EADI  
interface.  
The PCnet-ISA+ controller can handle up to 7 dribbling  
bits when a received packet terminates. During the re-  
ception, the CRC is generated on every serial bit  
(including the dribbling bits) coming from the cable, al-  
though the internally saved CRC value is only updated  
on the eighth bit (on each byte boundary). The framing  
error is reported to the user as follows:  
Error detection (physical medium transmission  
errors).  
The MAC engine provides several facilities which report  
and recover from errors on the medium. In addition, the  
network is protected from gross errors due to inability of  
the host to keep pace with the MAC engine activity.  
1. Ifthenumberofthedribblingbitsare1to7andthere  
is no CRC error, then there is no Framing error  
(FRAM = 0).  
On completion of transmission, the following transmit  
status is available in the appropriate TMD and CSR  
areas:  
2. If the number of the dribbling bits are less than 8 and  
there is a CRC error, then there is also a Framing  
error (FRAM = 1).  
The exact number of transmission retry attempts  
3. If the number of dribbling bits = 0, then there is no  
Framing error. There may or may not be a CRC  
(FCS) error.  
(ONE, MORE, or RTRY).  
Whether the MAC engine had to Defer (DEF) due  
to channel activity.  
Counters are provided to report the Receive Collision  
Count and Runt Packet Count used for network statis-  
tics and utilization calculations.  
Loss of Carrier, indicating that there was an  
interruption in the ability of the MAC engine to  
monitor its own transmission. Repeated LCAR  
errors indicate a potentially faulty transceiver or  
network connection.  
Note that if the MAC engine detects a received packet  
which has a 00b pattern in the preamble (after the first  
8 bits, which are ignored), the entire packet will be  
ignored. The MAC engine will wait for the network to go  
inactive before attempting to receive the next packet.  
Late Collision (LCOL) indicates that the  
transmission suffered a collision after the slot time.  
This is indicative of a badly configured network.  
Late collisions should not occur in a normal  
operating network.  
Media Access Management  
The basic requirement for all stations on the network is  
to provide fairness of channel allocation. The  
802.3/Ethernetprotocoldefinesamediaaccessmecha-  
nism which permits all stations to access the channel  
with equality. Any node can attempt to contend for the  
channel by waiting for a predetermined time (Inter  
Packet Gap interval) after the last activity, before trans-  
mitting on the medium. The channel is a multidrop  
communications medium (with various topological con-  
figurations permitted) which allows a single station to  
transmit and all other stations to receive. If two nodes  
simultaneously contend for the channel, their signals  
will interact, causing loss of data (defined as a collision).  
It is the responsibility of the MAC to attempt to avoid and  
recover from a collision, to guarantee data integrity for  
the end-to-end transmission to the receiving station.  
Collision Error (CERR) indicates that the  
transceiver did not respond with an SQE Test  
message within the predetermined time after a  
transmission completed. This may be due to a  
failed transceiver, disconnected or faulty trans-  
ceiver drop cable, or the fact the transceiver does  
not support this feature (or the feature is disabled).  
In addition to the reporting of network errors, the MAC  
engine will also attempt to prevent the creation of any  
network error due to the inability of the host to service  
the MAC engine. During transmission, if the host fails to  
keeptheTransmitFIFOfilledsufficiently, causinganun-  
derflow, the MAC engine will guarantee the message is  
either sent as a runt packet (which will be deleted by the  
receiving station) or has an invalid FCS (which will also  
cause the receiver to reject the message).  
Medium allocation (collision avoidance)  
The IEEE 802.3 Standard (ISO/IEC 8802-3 1990) re-  
quires that the CSMA/CD MAC monitor the medium  
traffic by looking for carrier activity. When carrier is de-  
tected the medium is considered busy, and the MAC  
should defer to the existing message.  
The status of each receive message is available in the  
appropriate RMD and CSR areas. FCS and Framing er-  
rors (FRAM) are reported, although the received frame  
is still passed to the host. The FRAM error will only be  
reported if an FCS error is detected and there are a non-  
integralnumberofbitsinthemessage. TheMACengine  
1-528  
Am79C961  
P R E L I M I N A R Y  
AMD  
The IEEE 802.3 Standard also allows optional two part  
deferral after a receive message.  
During the time period immediately after a transmission  
has been completed, the external transceiver (in the  
case of a standard AUI connected device), should gen-  
eratetheSQETestmessage(anominal10MHzburstof  
5-15 bit times duration) on the CI± pair (within 0.6 µs –  
1.6 µs after the transmission ceases). During the time  
period in which the SQE Test message is expected the  
PCnet-ISA+ controller will not respond to receive carrier  
sense.  
See ANSI/IEEE Std 802.3-1990 Edition, 4.2.3.2.1:  
“Note: It is possible for the PLS carrier sense  
indication to fail to be asserted during a collision  
on the media. If the deference process simply  
times the interpacket gap based on this indica-  
tion it is possible for a short interFrame gap to  
be generated, leading to a potential reception  
failure of a subsequent frame. To enhance sys-  
tem robustness the following optional  
measures, as specified in 4.2.8, are recom-  
mended when InterFrameSpacingPart1 is  
other than zero:  
See ANSI/IEEE Std 802.3-1990 Edition,  
7.2.4.6 (1)):  
“At the conclusion of the output function, the  
DTE opens a time window during which it ex-  
pects to see the signal_quality_error signal  
asserted on the Control In circuit. The time win-  
dow begins when the CARRIER_STATUS  
becomes CARRIER_OFF. If execution of the  
output function does not cause CARRIER_ON  
to occur, no SQE test occurs in the DTE. The  
duration of the window shall be at least 4.0 µs  
but no more than 8.0 µs. During the time win-  
dow the Carrier Sense Function is inhibited.”  
(1) Upon completing a transmission, start timing  
the interpacket gap, as soon as transmitting  
and carrierSense are both false.  
(2) When timing an interpacket gap following re-  
ception, reset the interpacket gap timing if  
carrier Sense becomes true during the first 2/3  
oftheinterpacketgaptiminginterval. Duringthe  
final 1/3 of the interval the timer shall not be re-  
set to ensure fair access to the medium. An  
initial period shorter than 2/3 of the interval is  
permissible including zero.”  
The PCnet-ISA+ controller implements a carrier sense  
“blinding” period within 0 - 4.0 µs from de-assertion of  
carrier sense after transmission. This effectively means  
that when transmit two part deferral is enabled  
(DXMT2PD is cleared) the IFS1 time is from 4 µs to 6 µs  
after a transmission. However, since IPG shrinkage be-  
low 4 µs will rarely be encountered on a correctly  
configured network, and since the fragment size will be  
larger than the 4 µs blinding window, then the IPG  
counterwillberesetbyaworstcaseIPGshrinkage/frag-  
ment scenario and the PCnet-ISA+ controller will defer  
its transmission. In addition, the PCnet-ISA+ controller  
will not restart the “blinding” period if carrier is detected  
within the 4.0 µs – 6.0 µs IFS1 period, but will com-  
mence timing of the entire IFS1 period.  
The MAC engine implements the optional receive two  
part deferral algorithm, with a first part inter-frame-spac-  
ing time of 6.0 µs. The second part of the  
inter-frame-spacing interval is therefore 3.6 µs.  
The PCnet-ISA+ controller will perform the two-part  
deferral algorithm as specified in Section 4.2.8 (Process  
Deference). The Inter Packet Gap (IPG) timer will start  
timing the 9.6 µs InterFrameSpacing after the receive  
carrier is de-asserted. During the first part deferral  
(InterFrameSpacingPart1 - IFS1) the PCnet-ISA+ con-  
trollerwilldeferanypendingtransmitframeandrespond  
to the receive message. The IPG counter will be reset to  
zero continuously until the carrier de-asserts, at which  
point the IPG counter will resume the 9.6 µs count once  
again. Once the IFS1 period of 6.0 µs has elapsed, the  
PCnet-ISA+ controller will begin timing the second part  
deferral (InterFrameSpacingPart2 - IFS2) of 3.6 µs.  
Once IFS1 has completed, and IFS2 has commenced,  
the PCnet-ISA+ controller will not defer to a receive  
packet if a transmit packet is pending. This means that  
the PCnet-ISA+ controller will not attempt to receive the  
receive packet, since it will start to transmit, and gener-  
ate a collision at 9.6 µs. The PCnet-ISA+ controller will  
guarantee to complete the preamble (64-bit) and jam  
(32-bit) sequence before ceasing transmission and in-  
voking the random backoff algorithm.  
Contention resolution (collision handling)  
Collision detection is performed and reported to the  
MAC engine by the integrated Manchester Encoder/  
Decoder (MENDEC).  
If a collision is detected before the complete preamble/  
SFD sequence has been transmitted, the MAC Engine  
will complete the preamble/SFD before appending the  
jam sequence. If a collision is detected after the pream-  
ble/SFD has been completed, but prior to 512 bits being  
transmitted, the MAC Engine will abort the transmis-  
sion, and append the jam sequence immediately. The  
jam sequence is a 32-bit all zeroes pattern.  
The MAC Engine will attempt to transmit a frame a total  
of 16 times (initial attempt plus 15 retries) due to normal  
collisions (those within the slot time). Detection of colli-  
sion will cause the transmission to be re-scheduled,  
dependent on the backoff time that the MAC Engine  
computes. If a single retry was required, the ONE bit will  
be set in the Transmit Frame Status (TMD1 in the Trans-  
mit Descriptor Ring). If more than one retry was  
In addition, transmit two part deferral is implemented as  
an option which can be disabled using the DXMT2PD bit  
(CSR3). Two-part deferral after transmission is useful  
for ensuring that severe IPG shrinkage cannot occur in  
specific circumstances, causing a transmit message to  
follow a receive message so closely as to make them  
indistinguishable.  
Am79C961  
1-529  
AMD  
P R E L I M I N A R Y  
required, the MORE bit will be set. If all 16 attempts ex-  
perienced collisions, the RTRY bit (in TMD2) will be set  
(ONE and MORE will be clear), and the transmit mes-  
sage will be flushed from the FIFO. If retries have been  
disabled by setting the DRTY bit in the MODE register  
(CSR15), the MAC Engine will abandon transmission of  
the frame on detection of the first collision. In this case,  
only the RTRY bit will be set and the transmit message  
will be flushed from the FIFO.  
External Crystal Characteristics  
When using a crystal to drive the oscillator, the crystal  
specification shown in the specification table may be  
used to ensure less than ±0.5 ns jitter at DO±.  
External Crystal Characteristics  
Parameter  
Min  
Nom Max  
Unit  
MHz  
PPM  
PPM  
pF  
1.Parallel Resonant  
Frequency  
20  
If a collision is detected after 512 bit times have been  
transmitted, the collision is termed a late collision. The  
MAC Engine will abort the transmission, append the jam  
sequence, and set the LCOL bit. No retry attempt will be  
scheduled on detection of a late collision, and the FIFO  
will be flushed.  
2.Resonant Frequency Error  
(CL = 20 pF)  
–50  
–40  
+50  
+40  
20  
3.Change in Resonant Frequency  
With Respect To Temperature  
(0° – 70° C; CL = 20 pF)*  
4.Crystal Capacitance  
The IEEE 802.3 Standard requires use of a “truncated  
binary exponential backoff” algorithm which provides a  
controlled pseudo-random mechanism to enforce the  
collision backoff interval, before re-transmission is  
attempted.  
5.Motional Crystal  
Capacitance (C1)  
0.022  
25  
pF  
6.Series Resistance  
7.Shunt Capacitance  
8.Drive Level  
7
pF  
TBD  
mW  
See ANSI/IEEE Std 802.3-1990 Edition, 4.2.3.2.5:  
* Requires trimming crystal spec; no trim is 50 ppm total  
“At the end of enforcing a collision (jamming),  
the CSMA/CD sublayer delays before attempt-  
ing to re-transmit the frame. The delay is an  
integer multiple of slotTime. The number of slot  
times to delay before the nth re-transmission at-  
tempt is chosen as a uniformly distributed  
random integer r in the range:  
External Clock Drive Characteristics  
When driving the oscillator from an external clock  
source, XTAL2 must be left floating (unconnected). An  
external clock having the following characteristics must  
be used to ensure less than ±0.5 ns jitter at DO±.  
0 r < 2k, where k = min (n,10).”  
Clock Frequency:  
20 MHz ±0.01%  
The PCnet-ISA+ controller provides an alternative algo-  
rithm, which suspends the counting of the slot time/IPG  
during the time that receive carrier sense is detected.  
This algorithm aids in networks where large numbers of  
nodes are present, and numerous nodes can be in  
collision. The algorithm effectively accelerates the  
increase in the backoff time in busy networks, and al-  
lows nodes not involved in the collision to access the  
channel while the colliding nodes await a reduction in  
channel activity. Once channel activity is reduced, the  
nodes resolving the collision time out their slot time  
counters as normal.  
Rise/Fall Time (tR/tF):  
< 6 ns from 0.5 V  
to VDD–0.5  
XTAL1 HIGH/LOW Time  
(tHIGH/tLOW):  
40 – 60%  
duty cycle  
XTAL1 Falling Edge to  
Falling Edge Jitter:  
< ±0.2 ns at  
2.5 V input (VDD/2)  
MENDEC Transmit Path  
The transmit section encodes separate clock and NRZ  
data input signals into a standard Manchester encoded  
serial bit stream. The transmit outputs (DO±) are de-  
signed to operate into terminated transmission lines.  
When operating into a 78 terminated transmission  
line, the transmit signaling meets the required output  
levels and skew for Cheapernet, Ethernet, and  
IEEE-802.3.  
Manchester Encoder/Decoder  
(MENDEC)  
The integrated Manchester Encoder/Decoder provides  
the PLS (Physical Layer Signaling) functions required  
for a fully compliant IEEE 802.3 station. The MENDEC  
providestheencodingfunctionfordatatobetransmitted  
on the network using the high accuracy on-board oscil-  
lator, driven by either the crystal oscillator or an external  
CMOS-level compatible clock. The MENDEC also pro-  
vides the decoding function from data received from the  
network. The MENDEC contains a Power On Reset  
(POR) circuit, which ensures that all analog portions of  
the PCnet-ISA+ controller are forced into their correct  
state during power-up, and prevents erroneous data  
transmission and/or reception during this time.  
Transmitter Timing and Operation  
A 20 MHz fundamental-mode crystal oscillator provides  
the basic timing reference for the MENDEC portion of  
the PCnet-ISA+ controller. The crystal input is divided by  
two to create the internal transmit clock reference. Both  
clocks are fed into the Manchester Encoder to generate  
the transitions in the encoded data stream. The internal  
transmit clock is used by the MENDEC to internally syn-  
chronize the Internal Transmit Data (ITXDAT) from the  
1-530  
Am79C961  
P R E L I M I N A R Y  
AMD  
controller and Internal Transmit Enable (ITXEN). The in-  
ternal transmit clock is also used as a stable bit-rate  
clock by the receive section of the MENDEC and con-  
troller.  
The Carrier Detection circuitry detects the presence of  
an incoming data packet by discerning and rejecting  
noise from expected Manchester data, and controls the  
stop and start of the phase-lock loop during clock acqui-  
sition. Clock acquisition requires a valid Manchester bit  
pattern of 1010b to lock onto the incoming message.  
The oscillator requires an external 0.005% crystal, or an  
external 0.01% CMOS-level input as a reference. The  
accuracy requirements, if an external crystal is used,  
are tighter because allowance for the on-chip oscillator  
must be made to deliver a final accuracy of 0.01%.  
When input amplitude and pulse width conditions are  
met at DI±, a clock acquisition cycle is initiated.  
Clock Acquisition  
Transmissionisenabledbythecontroller. Aslongasthe  
ITXEN request remains active, the serial output of the  
controller will be Manchester encoded and appear at  
DO±. When the internal request is dropped by the con-  
troller, the differential transmit outputs go to one of two  
idle states, dependent on TSEL in the Mode Register  
(CSR15, bit 9):  
When there is no activity at DI± (receiver is idle), the re-  
ceive oscillator is phase-locked to STDCLK. The first  
negative clock transition (bit cell center of first valid  
Manchester “0”) after clock acquisition begins interrupts  
the receive oscillator. The oscillator is then restarted at  
the second Manchester “0” (bit time 4) and is phase-  
locked to it. As a result, the MENDEC acquires the clock  
from the incoming Manchester bit pattern in 4 bit times  
with a “1010” Manchester bit pattern.  
TSEL LOW: The idle state of DO± yields “zero”  
differential to operate transformer-  
coupled loads.  
The internal receiver clock, IRXCLK, and the internal re-  
ceived data, IRXDAT, are enabled 1/4 bit time after  
clock acquisition in bit cell 5. IRXDAT is at a HIGH state  
when the receiver is idle (no IRXCLK). IRXDAT how-  
ever, is undefined when clock is acquired and may  
remain HIGH or change to LOW state whenever  
IRXCLK is enabled. At 1/4 bit time through bit cell 5, the  
controller portion of the PCnet-ISA+ controller sees the  
firstIRXCLKtransition. Thisalsostrobesintheincoming  
fifth bit to the MENDEC as Manchester “1”. IRXDAT  
maymakeatransitionaftertheIRXCLKrisingedgeinbit  
cell 5, but its state is still undefined. The Manchester “1”  
at bit 5 is clocked to IRXDAT output at 1/4 bit time in bit  
cell 6.  
TSEL HIGH: In this idle state, DO+ is positive  
with respect to DO– (logical HIGH).  
Receive Path  
The principal functions of the receiver are to signal the  
PCnet-ISA+ controller that there is information on the re-  
ceive pair, and to separate the incoming Manchester  
encoded data stream into clock and NRZ data.  
The receiver section (see Receiver Block Diagram) con-  
sists of two parallel paths. The receive data path is a  
zerothreshold, widebandwidthlinereceiver. Thecarrier  
path is an offset threshold bandpass detecting line re-  
ceiver. Both receivers share common bias networks to  
allow operation over a wide input common mode range.  
PLL Tracking  
After clock acquisition, the phase-locked clock is com-  
pared to the incoming transition at the bit cell center  
(BCC) and the resulting phase error is applied to a cor-  
rection circuit. This circuit ensures that the  
phase-locked clock remains locked on the received sig-  
nal. Individual bit cell phase corrections of the Voltage  
Controlled Oscillator (VCO) are limited to 10% of the  
phase difference between BCC and phase-  
locked clock.  
Input Signal Conditioning  
Transient noise pulses at the input data stream are re-  
jected by the Noise Rejection Filter. Pulse width  
rejection is proportional to transmit data rate which is  
fixed at 10 MHz for Ethernet systems but which could be  
different for proprietary networks. DC inputs more nega-  
tive than minus 100 mV are also suppressed.  
IRXDAT*  
Manchester  
Data  
Receiver  
DI±  
Decoder  
IRXCLK*  
Noise  
Reject  
Filter  
Carrier  
Detect  
Circuit  
IRXCRS*  
18183B-15  
*Internal signal  
Receiver Block Diagram  
Am79C961  
1-531  
AMD  
P R E L I M I N A R Y  
Carrier Tracking and End of Message  
Collision Detection  
The carrier detection circuit monitors the DI± inputs after  
IRXCRS is asserted for an end of message. IRXCRS  
de-asserts 1 to 2 bit times after the last positive transi-  
tion on the incoming message. This initiates the end of  
reception cycle. The time delay from the last rising edge  
of the message to IRXCRS deassert allows the last bit to  
be strobed by IRXCLK and transferred to the controller  
section, but prevents any extra bit(s) at the end of mes-  
sage. When IRXCRS de-asserts an IRXCRS hold off  
timer inhibits IRXCRS assertion for at least 2 bit times.  
A MAU detects the collision condition on the network  
and generates a differential signal at the CI± inputs. This  
collision signal passes through an input stage which de-  
tectssignallevelsandpulseduration. Whenthesignalis  
detected by the MENDEC it sets the internal collision  
signal, ICLSN, HIGH. The condition continues for ap-  
proximately 1.5 bit times after the last LOW-to-HIGH  
transition on CI±.  
Jitter Tolerance Definition  
The MENDEC utilizes a clock capture circuit to align its  
internal data strobe with an incoming bit stream. The  
clock acquisition circuitry requires four valid bits with the  
values 1010b. Clock is phase-locked to the negative  
transition at the bit cell center of the second “0” in the  
pattern.  
Data Decoding  
The data receiver is a comparator with clocked output to  
minimize noise sensitivity to the DI± inputs. Input error is  
less than ± 35 mV to minimize sensitivity to input rise  
andfalltime. IRXCLKstrobesthedatareceiveroutputat  
1/4 bit time to determine the value of the Manchester bit,  
and clocks the data out on IRXDAT on the following  
IRXCLK. The data receiver also generates the signal  
used for phase detector comparison to the internal  
MENDEC voltage controlled oscillator (VCO).  
Since data is strobed at 1/4 bit time, Manchester transi-  
tions which shift from their nominal placement through  
1/4 bit time will result in improperly decoded data. With  
this as the criteria for an error, a definition of “Jitter Han-  
dling” is:  
Differential Input Terminations  
The peak deviation approaching or crossing 1/4  
bit cell position from nominal input transition, for  
which the MENDEC section will properly de-  
code data.  
The differential input for the Manchester data (DI±)  
should be externally terminated by two 40.2 Ω ±1% re-  
sistors and one optional common-mode bypass  
capacitor, as shown in the Differential Input Termination  
diagram below. The differential input impedance, ZIDF,  
and the common-mode input impedance, ZICM, are  
specified so that the Ethernet specification for cable ter-  
mination impedance is met using standard 1% resistor  
terminators. If SIP devices are used, 39 is the nearest  
usable equivalent value. The CI± differential inputs are  
terminated in exactly the same way as the DI± pair.  
Attachment Unit Interface (AUI)  
The AUI is the PLS (Physical Layer Signaling) to PMA  
(Physical Medium Attachment) interface which con-  
nects the DTE to a MAU. The differential interface  
provided by the PCnet-ISA+ controller is fully compliant  
with Section 7 of ISO 8802-3 (ANSI/IEEE 802.3).  
After the PCnet-ISA+ controller initiates a transmission,  
it will expect to see data “looped-back” on the DI± pair  
(when the AUI port is selected). This will internally  
generate a “carrier sense”, indicating that the integrity of  
the data path to and from the MAU is intact, and that the  
MAU is operating correctly. This “carrier sense” signal  
must be asserted within sometime before end of trans-  
mission. If “carrier sense” does not become active in  
response to the data transmission, or becomes inactive  
before the end of transmission, the loss of carrier  
(LCAR) error bit will be set in the Transmit Descriptor  
Ring (TMD3, bit 11) after the packet has been  
transmitted.  
AUI Isolation  
Transformer  
DI+  
+
PCnet-ISA  
DI-  
40.2 Ω  
40.2 Ω  
0.01 µF  
to 0.1 µF  
18183B-16  
Twisted Pair Transceiver (T-MAU)  
Differential Input Termination  
The T-MAU implements the Medium Attachment Unit  
(MAU) functions for the Twisted Pair Medium, as speci-  
fied by the supplement to IEEE 802.3 standard (Type  
10BASE-T). The T-MAU provides twisted pair driver  
and receiver circuits, including on-board transmit digital  
predistortion and receiver squelch, and a number of ad-  
ditional features including Link Status indication,  
Automatic Twisted Pair Receive Polarity Detection/  
Correction and Indication, Receive Carrier Sense,  
Transmit Active and Collision Present indication.  
1-532  
Am79C961  
P R E L I M I N A R Y  
AMD  
Twisted Pair Transmit Function  
until valid data or greater than 5 consecutive link pulses  
appear on the RXD± pair. During Link Fail, the Link  
Status (LNKST indicated by LED0) signal is inactive.  
When the link is identified as functional, the LNKST sig-  
nal is asserted, and LED0 output will be activated.  
The differential driver circuitry in the TXD± and TXP±  
pins provides the necessary electrical driving capability  
and the pre-distortion control for transmitting signals  
over maximum length Twisted Pair cable, as specified  
by the 10BASE-T supplement to the IEEE 802.3 Stan-  
dard. The transmit function for data output meets the  
propagation delays and jitter specified by the standard.  
In order to inter-operate with systems which do not im-  
plement Link Test, this function can be disabled by  
setting the DLNKTST bit. With Link Test disabled, the  
Data Driver, Receiver and Loopback functions as well  
as Collision Detection remain enabled irrespective of  
the presence or absence of data or link pulses on the  
RXD± pair. Link Test pulses continue to be sent regard-  
less of the state of the DLNKTST bit.  
Twisted Pair Receive Function  
The receiver complies with the receiver specifications of  
the IEEE 802.3 10BASE-T Standard, including noise  
immunity and received signal rejection criteria (‘Smart  
Squelch’). Signals meeting these criteria appearing at  
the RXD± differential input pair are routed to the MEN-  
DEC. The receiver function meets the propagation  
delaysandjitterrequirementsspecifiedbythestandard.  
The receiver squelch level drops to half its threshold  
value after unsquelch to allow reception of minimum  
amplitude signals and to offset carrier fade in the event  
of worst case signal attenuation conditions.  
Polarity Detection and Reversal  
The T-MAU receive function includes the ability to invert  
the polarity of the signals appearing at the RXD± pair if  
the polarity of the received signal is reversed (such as in  
thecaseofawiringerror). Thisfeatureallowsdatapack-  
ets received from a reverse wired RXD± input pair to be  
corrected in the T-MAU prior to transfer to the  
MENDEC. The polarity detection function is activated  
following reset or Link Fail, and will reverse the receive  
polarity based on both the polarity of any previous link  
beat pulses and the polarity of subsequent packets with  
a valid End Transmit Delimiter (ETD).  
Note that the 10BASE-T Standard defines the receive  
input amplitude at the external Media Dependent Inter-  
face (MDI). Filter and transformer loss are not specified.  
The T-MAU receiver squelch levels are designed to ac-  
count for a 1 dB insertion loss at 10 MHz for the type of  
receive filters and transformers usually used.  
When in the Link Fail state, the T-MAU will recognize  
link beat pulses of either positive or negative polarity.  
Exit from the Link Fail state occurs at the reception of 5–  
6 consecutive link beat pulses of identical polarity. On  
entry to the Link Pass state, the polarity of the last 5 link  
beat pulses is used to determine the initial receive polar-  
ity configuration and the receiver is reconfigured to  
subsequently recognize only link beat pulses of the pre-  
viously recognized polarity.  
Normal 10BASE-T compatible receive thresholds are  
invoked when the LRT bit (CSR15, bit 9) is LOW. When  
the LRT bit is set, the Low Receive Threshold option is  
invoked, and the sensitivity of the T-MAU receiver is in-  
creased. Increasing T-MAU sensitivity allows the use of  
lines longer than the 100 m target distance of standard  
10BASE-T(assumingtypical24AWGcable). Increased  
receiver sensitivity compensates for the increased sig-  
nal attenuation caused by the additional cable distance.  
Positive link beat pulses are defined as transmitted sig-  
nal with a positive amplitude greater than 585 mV with a  
pulse width of 60 ns–200 ns. This positive excursion  
may be followed by a negative excursion. This definition  
is consistent with the expected received signal at a cor-  
rectly wired receiver, when a link beat pulse, which fits  
thetemplateofFigure14-12ofthe10BASE-TStandard,  
is generated at a transmitter and passed through 100 m  
of twisted pair cable.  
However, making the receiver more sensitive means  
that it is also more susceptible to extraneous noise, pri-  
marily caused by coupling from co-resident services  
(crosstalk). For this reason, end users may wish to in-  
voke the Low Receive Threshold option on 4-pair cable  
only. Multi-pair cables within the same outer sheath  
have lower crosstalk attenuation, and may allow noise  
emitted from adjacent pairs to couple into the receive  
pair, and be of sufficient amplitude to falsely unsquelch  
the T-MAU.  
Negative link beat pulses are defined as transmitted sig-  
nals with a negative amplitude greater than 585 mV with  
a pulse width of 60 ns–200 ns. This negative excursion  
may be followed by a positive excursion. This definition  
is consistent with the expected received signal at a re-  
verse wired receiver, when a link beat pulse which fits  
the template of Figure 14-12 in the 10BASE-T Standard  
is generated at a transmitter and passed through 100 m  
of twisted pair cable.  
Link Test Function  
The link test function is implemented as specified by  
10BASE-T standard. During periods of transmit pair in-  
activity, ’Link beat pulses’ will be periodically sent over  
the twisted pair medium to constantly monitor medium  
integrity.  
When the link test function is enabled (DLNKTST bit in  
CSR15 is cleared), the absence of link beat pulses and  
receivedataontheRXD± pairwillcausetheTMAUtogo  
into the Link Fail state. In the Link Fail state, data trans-  
mission, data reception, data loopback and the collision  
detection functions are disabled and remain disabled  
The polarity detection/correction algorithm will remain  
“armed” until two consecutive packets with valid ETD of  
identical polarity are detected. When “armed,” the re-  
ceiver is capable of changing the initial or previous  
polarity configuration according to the detected ETD  
polarity.  
Am79C961  
1-533  
AMD  
P R E L I M I N A R Y  
On receipt of the first packet with valid ETD following re-  
set or link fail, the T-MAU will use the inferred polarity  
information to configure its RXD± input, regardless of its  
previous state. On receipt of a second packet with a  
valid ETD with correct polarity, the detection/correction  
algorithm will “lock-in” the received polarity. If the sec-  
ond (or subsequent) packet is not detected as  
confirming the previous polarity decision, the most re-  
cently detected ETD polarity will be used as the default.  
Note that packets with invalid ETD have no effect on up-  
dating the previous polarity decision. Once two  
consecutive packets with valid ETD have been re-  
ceived, the T-MAU will lock the correction algorithm until  
either a Link Fail condition occurs or RESET is asserted.  
before the T-MAU deasserts COL and re-enables the  
transmit circuitry.  
Power Down  
The T-MAU circuitry can be made to go into low power  
mode. This feature is useful in battery powered or low  
duty cycle systems. The T-MAU will go into power down  
mode when RESET is active, coma mode is active, or  
the T-MAU is not selected. Refer to the Power Down  
Mode section for a description of the various power  
down modes.  
Any of the three conditions listed above resets the inter-  
nal logic of the T-MAU and places the device into power  
down mode. In this mode, the Twisted Pair driver pins  
(TXD±,TXP±) are asserted LOW, and the internal T-  
MAU status signals (LNKST, RCVPOL, XMT, RCV and  
COLLISION) are inactive.  
During polarity reversal, an internal POL signal will be  
active. During normal polarity conditions, this internal  
POL signal is inactive. The state of this signal can be  
read by software and/or displayed by LED when en-  
abled by the LED control bits in the ISA Bus  
Configuration Registers (ISACSR5, 6, 7).  
Once the SLEEP pin is deasserted, the T-MAU will be  
forced into the Link Fail state. The T-MAU will move to  
the Link Pass state only after 5–6 link beat pulses and/or  
a single received message is detected on the RXD±  
pair.  
Twisted Pair Interface Status  
Three internal signals (XMT, RCV and COL) indicate  
whether the T-MAU is transmitting, receiving, or in a col-  
lision state. These signals are internal signals and the  
behavior of the LED outputs depends on how the LED  
output circuitry is programmed.  
In Snooze mode, the T-MAU receive circuitry will re-  
main enabled even while the SLEEPpin is driven LOW.  
The T-MAU circuitry will always go into power down  
mode if RESET is asserted, coma is enabled, or the T-  
MAU is not selected.  
The T-MAU will power up in the Link Fail state and the  
normal algorithm will apply to allow it to enter the Link  
Pass state. In the Link Pass state, transmit or receive  
activity will be indicated by assertion of RCV signal go-  
ing active. If T-MAU is selected using the PORTSEL bits  
in CSR15, when moving from AUI to T-MAU selection,  
the T-MAU will be forced into the Link Fail state.  
EADI (EXTERNAL ADDRESS DETECTION  
INTERFACE)  
Thisinterfaceisprovidedtoallowexternaladdressfilter-  
ing. It is selected by setting the EADISEL bit in  
ISACSR2. This feature is typically utilized for terminal  
servers, bridges and/or router type products. The use of  
external logic is required to capture the serial bit stream  
from the PCnet-ISA+ controller, compare it with a table  
of stored addresses or identifiers, and perform the de-  
sired function.  
In the Link Fail state, XMT, RCV and COL are inactive.  
Collision Detect Function  
Activity on both twisted pair signals RXD± and TXD±  
constitutes a collision, thereby causing the COL signal  
to be asserted. (COL is used by the LED control circuits)  
COL will remain asserted until one of the two colliding  
signals changes from active to idle. COL stays active for  
2 bit times at the end of a collision.  
The EADI interface operates directly from the NRZ de-  
coded data and clock recovered by the Manchester  
decoder or input to the GPSI, allowing the external ad-  
dress detection to be performed in parallel with frame  
reception and address comparison in the MAC Station  
Address Detection (SAD) block.  
Signal Quality Error (SQE) Test  
(Heartbeat) Function  
The SQE function is disabled when the 10BASE-T port  
is selected and in Link Fail state.  
SRDCLK is provided to allow clocking of the receive bit  
stream into the external address detection logic.  
SRDCLK runs only during frame reception activity.  
Once a received frame commences and data and clock  
are available, the EADI logic will monitor the alternating  
(“1,0”) preamble pattern until the two ones of the Start  
Frame Delimiter (“1,0,1,0,1,0,1,1”) are detected, at  
which point the SF/BD output will be driven HIGH.  
Jabber Function  
The Jabber function inhibits the twisted pair transmit  
function of the T-MAU if theTXD± circuit is active for an  
excessive period (20 ms–150 ms). This prevents any  
one node from disrupting the network due to a ‘stuck-on’  
or faulty transmitter. If this maximum transmit time is ex-  
ceeded, the T-MAU transmitter circuitry is disabled, the  
JAB bit is set (CSR4, bit 1), and the COL signal as-  
serted. Once the transmit data stream to the T-MAU is  
removed, an “unjab” time of 250 ms– 750 ms will elapse  
After SF/BD is asserted the serial data from SRD should  
be de-serialized and sent to a content addressable  
memory (CAM) or other address detection device.  
1-534  
Am79C961  
P R E L I M I N A R Y  
AMD  
To allow simple serial to parallel conversion, SF/BD is  
provided as a strobe and/or marker to indicate the de-  
lineation of bytes, subsequent to the SFD. This provides  
a mechanism to allow not only capture and/or decoding  
of the physical or logical (group) address, it also facili-  
tates the capture of header information to determine  
protocol and or inter-networking information. The EAR  
pin is driven LOW by the external address comparison  
logic to reject the frame.  
address, 2 bytes for length, no data, 4 bytes for FCS)  
after the last bit of the destination address is available.  
EAR must have a pulse width of at least 200 ns.  
Note that setting the PROM bit (CSR15, bit 15) will  
cause all receive frames to be received, regardless of  
the state of the EAR input.  
If the DRCUPA bit (CSR15.B) is set and the logical  
address (LADRF) is set to zero, only frames which are  
not rejected by EAR will be received.  
If an internal address match is detected by comparison  
with either the Physical or Logical Address field, the  
frame will be accepted regardless of the condition of  
EAR. Incoming frames which do not pass the internal  
address comparison will continue to be received. This  
allows approximately 58 byte times after the last desti-  
nation address bit is available to generate the EAR  
signal, assuming the device is not configured to accept  
runt packets. EAR will be ignored after 64 byte times af-  
ter the SFD, and the frame will be accepted if EAR has  
not been asserted before this time. If Runt Packet Ac-  
cept is configured, the EAR signal must be generated  
priortothereceivemessagecompletion, whichcouldbe  
as short as 12 byte times (assuming 6 bytes for source  
The EADI interface will operate as long as the STRT bit  
in CSR0 is set, even if the receiver and/or transmitter  
are disabled by software (DTX and DRX bits in CSR15  
set). This situation is useful as a power down mode in  
that the PCnet-ISA+ controller will not perform any DMA  
operations; this saves power by not utilizing the ISA bus  
driver circuits. However, external circuitry could still re-  
spond to specific frames on the network to facilitate  
remote node control.  
The table below summarizes the operation of the EADI  
features.  
Internal/External Address Recognition Capabilities  
PROM  
EAR  
Required Timing  
No timing requirements  
Received Messages  
All Received Frames  
1
0
0
X
1
0
No timing requirements  
All Received Frames  
Low for 200 ns within 512 bits after SFD  
Physical/Logical Matches  
Am79C961  
1-535  
AMD  
P R E L I M I N A R Y  
To invoke the GPSI signals, follow the procedure below:  
General Purpose Serial Interface (GPSI)  
The PCnet-ISA+ controller contains a General Purpose  
Serial Interface (GPSI) designed for testing the digital  
portions of the chip. The MENDEC, AUI, and twisted  
pair interface are by-passed once the device is set up in  
the special “test mode” for accessing the GPSI func-  
tions. Although this access is intended only for testing  
the device, some users may find the non-encoded data  
functions useful in some special applications. Note,  
however, that the GPSI functions can be accessed only  
when the PCnet-ISA+ devices operate as a bus master.  
1. After reset or I/O read of Reset Address, write 10b  
to PORTSEL bits in CSR15.  
2. Set the ENTST bit in CSR4  
3. Set the GPSIEN bit in CSR124 (see note below)  
(The pins LA17–LA23 will change function after the  
completion of the above three steps.)  
4. Clear the ENTST bit in CSR4  
5. Clear Media Select bits in ISACSR2  
The PCnet-ISA+ GPSI signals are consistent with the  
LANCEdigitalserialinterface. SincetheGPSI functions  
can be accessed only through a special test mode, ex-  
pect some loss of functionality to the device when the  
GPSI is invoked. The AUI and 10BASE-T analog inter-  
faces are disabled along with the internal MENDEC  
logic. TheLA(unlatchedaddress)pinsareremovedand  
become the GPSI signals, therefore, only 20 bits of ad-  
dress space is available. The table below shows the  
GPSI pin configuration:  
6. Define the PORTSEL bits in the MODE register  
(CSR15) to be 10b to define GPSI port. The  
MODE register image is in the initialization block.  
Note: LA pins will be tristated before writing to GPSIEN  
bit. After writing to GPSIEN, LA[17–21] will be inputs,  
LA[22–23] will be outputs.  
GPSI Pin Configurations  
LANCE  
PCnet-ISA+  
GPSI  
Function  
GPSI  
I/O Type  
PCnet-ISA+  
Pin Number  
PCnet-ISA+  
Normal Pin Function  
GPSI Pin GPSI Pin  
Receive Data  
I
I
RX  
RXDAT  
SRDCLK  
RXCRS  
CLSN  
5
6
LA17  
LA18  
LA19  
LA20  
LA21  
LA22  
LA23  
Receive Clock  
Receive Carrier Sense  
Collision  
RCLK  
RENA  
CLSN  
TCLK  
TENA  
TX  
I
7
I
9
Transmit Clock  
Transmit Enable  
Transmit Data  
Note:  
I
STDCLK  
TXEN  
10  
11  
12  
O
O
TXDAT  
The GPSI Function is available only in the Bus Master Mode of operation.  
1-536  
Am79C961  
P R E L I M I N A R Y  
AMD  
All unused instruction codes are reserved. See the table  
below for a summary of supported instructions.  
IEEE 1149.1 Test Access Port Interface  
AnIEEE1149.1compatibleboundaryscanTestAccess  
Port is provided for board-level continuity test and diag-  
nostics. All digital input, output, and input/output pins  
are tested. Analog pins, including the AUI differential  
driver (DO±) and receivers (DI±, CI±), and the crystal in-  
put(XTAL1/XTAL2)pins, aretested. TheT-MAUdrivers  
TXD±, TXP±, and receiver RXD± are also tested.  
Instruction Register and Decoding Logic  
After hardware or software RESET, the IDCODE in-  
struction is always invoked. The decoding logic gives  
signals to control the data flow in the DATA registers ac-  
cording to the current instruction.  
The following is a brief summary of the IEEE 1149.1  
compatible test functions implemented in the  
PCnet-ISA+ controller.  
Boundary Scan Register (BSR)  
Each BSR cell has two stages. A flip-flop and a latch are  
used in the SERIAL SHIFT STAGE and the PARALLEL  
OUTPUT STAGE, respectively.  
Boundary Scan Circuit  
There are four possible operational modes in the BSR  
cell:  
The boundary scan test circuit requires four extra pins  
(TCK, TMS, TDI and TDO ), defined as the Test Access  
Port (TAP). It includes a finite state machine (FSM), an  
instruction register, a data register array, and a  
power-on reset circuit. Internal pull-up resistors are pro-  
videdfortheTDI, TCK, andTMSpins. TheTCKpinmust  
not be left unconnected. The boundary scan circuit re-  
mains active during sleep.  
1
2
3
4
Capture  
Shift  
Update  
System Function  
Other Data Registers  
TAP FSM  
(1) BYPASS REG (1 BIT)  
The TAP engine is a 16-state FSM, driven by the Test  
Clock (TCK) and the Test Mode Select (TMS) pins. This  
FSM is in its reset state at power-up or RESET. An inde-  
pendent power-on reset circuit is provided to ensure the  
FSM is in the TEST_LOGIC_RESET state at power-up.  
(2) DEV ID REG (32 bits)  
Bits 31–28:  
Bits 27–12:  
Bits 11–1:  
Version  
Part number (2260)  
Manufacturer ID. The 11 bit  
manufacturer ID code for AMD is  
00000000001 according to JEDEC  
Publication 106-A.  
Supported Instructions  
In addition to the minimum IEEE 1149.1 requirements  
(BYPASS, EXTEST and SAMPLE instructions), three  
additional instructions (IDCODE, TRIBYP and SET-  
BYP) are provided to further ease board-level testing.  
Bit 0:  
Always a logic 1  
IEEE 1149.1 Supported Instruction Summary  
Selected  
Instruction  
Name  
Instruction  
Code  
Description  
Data Reg  
Mode  
Test  
EXTEST  
IDCODE  
SAMPLE  
TRIBYP  
SETBYP  
BYPASS  
External Test  
BSR  
0000  
0001  
0010  
0011  
0100  
1111  
ID Code Inspection  
Sample Boundary  
Force Tristate  
ID REG  
BSR  
Normal  
Normal  
Normal  
Test  
Bypass  
Bypass  
Bypass  
Control Boundary to 1/0  
Bypass Scan  
Normal  
Am79C961  
1-537  
AMD  
P R E L I M I N A R Y  
separate 8-bit hardware bus cycles. The motherboard  
Power Saving Modes  
accesses the low byte before the high byte and the  
PCnet-ISA+ controller has circuitry to specifically sup-  
port this type of access.  
The PCnet-ISA+ controller supports two hardware  
power-savings modes. Both are entered by asserting  
the SLEEP pin LOW.  
The reset register causes a reset when read. Any value  
will be accepted and the cycle may be 8 or 16 bits wide.  
Writes are ignored.  
In coma mode, the PCnet-ISA+ controller will go into  
deep sleep with no support to automatically wake itself  
up. Sleep mode is enabled when the AWAKE bit in  
ISACSR2 is reset. This mode is the default power down  
mode.  
All PCnet-ISA+ controller register accesses should be  
coded as 16-bit operations.  
In Snooze mode, enabled by setting the AWAKE bit in  
ISACSR2 and driving the SLEEP pin LOW, the T-MAU  
receive circuitry will remain enabled even while the  
SLEEP pin is driven LOW. The LED0 output will also  
continue to function, indicating a good 10BASE-T link if  
there are link beat pulses or valid frames present. This  
LED0 pin can be used to drive a LED and/or external  
hardware that directly controls the SLEEP pin of the  
PCnet-ISA+ controller. This configuration effectively  
wakes the system when there is any activity on the  
10BASE-T link.  
*Note that the RAP is cleared on Reset.  
IEEE Address Access  
The address PROM may be an external memory device  
that contains the node’s unique physical Ethernet ad-  
dress and any other data stored by the board  
manufacturer. The software accesses must be 16-bit.  
This information may be stored in the EEPROM.  
Boot PROM Access  
The boot PROM is an external memory resource lo-  
cated by the address selected by the EEPROM or the  
BPAMinputinsharedmemorymode. Itmaybesoftware  
accessed as an 8- or 16-bit resource but the latter is rec-  
ommended for best performance.  
Access Operations (Software)  
We begin by describing how byte and word data are ad-  
dressed on the ISA bus, including conversion cycles  
where 16-bit accesses are turned into 8-bit accesses  
because the resource accessed did not support 16-bit  
operations. Then we describe how registers and other  
resources are accessed. This section is for the device  
programmer, while the next section (bus cycles) is for  
the hardware designer.  
Static RAM Access  
The static RAM is only present in the shared memory  
mode. It is located at the address selected by the SMAM  
input. It may be accessed as an 8- or 16-bit resource but  
the latter is recommended for best performance.  
I/O Resources  
Bus Cycles (Hardware)  
The PCnet-ISA+ controller has both I/O and memory re-  
sources. In the I/O space the resources are organized  
as indicated in the following table:  
The PCnet-ISA+ controller supports both 8- and 16-bit  
hardware bus cycles. The following sections outline  
where any limitations apply based upon the architecture  
mode and/or the resource that is being accessed  
(PCnet-ISA+ controller registers, address PROM, boot  
PROM, or shared memory SRAM). For completeness,  
the following sections are arranged by architecture (Bus  
Master Mode or Shared Memory Mode). SRAM re-  
sources apply only to Shared Memory Mode.  
Offset  
0h  
#Bytes  
Register  
16  
2
IEEE Address  
RDP  
10h  
12h  
14h  
16h  
2
RAP (shared by RDP and IDP)  
2
Reset  
IDP  
All resources (registers, PROMs, SRAM) are presented  
to the ISA bus by the PCnet-ISA+ controller. With few ex-  
ceptions, these resources can be configured for either  
8-bit or 16-bit bus cycles. The I/O resources (registers,  
address PROM) are width configured using the  
EEPROM. The memory resources (boot PROM,  
SRAM) are width configured by external hardware.  
2
The PCnet-ISA+ controller does not respond to any ad-  
dresses outside of the offset range 0-17h. I/O offsets  
18h and up are not used by the PCnet-ISA+ controller.  
I/O Register Access  
For 16-bit memory accesses, hardware external to the  
PCnet-ISA+ controller asserts MEMCS16when either of  
the two memory resources is selected. The ISA bus re-  
quires that all memory resources within a block of  
128 Kbytes be the same width, either 8- or 16-bits. The  
reason for this is that the MEMCS16 signal is generally  
a decode of the LA17-23 address lines. 16-bit memory  
capability is desirable since two 8-bit accesses take the  
same amount of time as four 16-bit accesses.  
The register address port (RAP) is shared by the regis-  
ter data port (RDP) and the ISACSR data port (IDP) to  
save registers. To access the Ethernet controller’s RDP  
or IDP, the RAP should be written first, followed by the  
read or write access to the RDP or IDP. I/O register ac-  
cesses should be coded as 16-bit accesses, even if the  
PCnet-ISA+ controller is hardware configured for 8-bit  
I/O bus cycles. It is acceptable (and transparent) for the  
motherboard to turn a 16-bit software access into two  
1-538  
Am79C961  
P R E L I M I N A R Y  
AMD  
All accesses to 8-bit resources (which do not return  
MEMCS16 or IOCS16) use SD0-7. If an odd byte is ac-  
cessed, the Current Master swap buffer turns on. During  
an odd byte read the swap buffer copies the data from  
SD0-7 to the high byte. During an odd byte write the Cur-  
rent Master swap buffer copies the data from the high  
byte to SD0-7. The PCnet-ISA+ controller can be config-  
ured to be an 8-bit I/O resource even in a 16-bit system;  
this is set by the EEPROM. It is recommended that the  
PCnet-ISA+ controller be configured for 8-bit only I/O  
bus cycles for maximum compatibility with PC/AT clone  
motherboards.  
SD8-15. It is illegal to have A0=1 and SBHE=1 in any  
bus cycle. The PCnet-ISA+ controller returns only  
IOCS16; MEMCS16 must be generated by external  
hardware if desired. The use of MEMCS16 applies only  
to Shared Memory Mode.  
The following table describes all possible types of ISA  
bus accesses, including Permanent Master as Current  
Master and PCnet-ISA+ controller as Current Master.  
The PCnet-ISA+ controller will not work with 8-bit mem-  
ory while it is Current Master. Any descriptions of 8-bit  
memory accesses are for when the Permanent Master  
is Current Master.  
When the PCnet-ISA+ controller is in an 8-bit system  
such as a PC/XT, SBHE and IOCS16 must be left un-  
connected (these signals do not exist in the PC/XT).  
This will force ALL resources (I/O and memory) to sup-  
port only 8-bit bus cycles. The PCnet-ISA+ controller will  
function in an 8-bit system only if configured for Shared  
Memory Mode.  
The two byte columns (D0–7 and D8–15) indicate  
whether the bus master or slave is driving the byte.  
CS16 is a shorthand for MEMCS16 and IOCS16.  
Bus Master Mode  
The PCnet-ISA+ controller can be configured as a Bus  
Master only in systems that support bus mastering. In  
addition, the system is assumed to support 16-bit  
memory (DMA) cycles (the PCnet-ISA+ controler does  
not use the MEMCS16signal on the ISA bus). This does  
not preclude the PCnet-ISA+ controller from doing 8-bit  
I/O transfers. The PCnet-ISA+ controller will not function  
as a bus master in 8-bit platforms such as the PC/XT.  
Accesses to 16-bit resources (which do return  
MEMCS16 or IOCS16) use either or both SD0–7 and  
SD8–15. A word access is indicated by A0=0 and  
SBHE=0 and data is transferred on all 16 data lines. An  
evenbyteaccessisindicatedbyA0=0andSBHE=1and  
data is transferred on SD0–7. An odd-byte access is in-  
dicated by A0=1 and SBHE=0 and data is transferred on  
ISA Bus Accesses  
R/W  
RD  
RD  
RD  
A0  
0
SBHE  
CS16  
D0–7  
Slave  
Slave  
Slave  
D8–15  
Float  
Comments  
Low byte RD  
1
0
0
x
1
1
1
Float*  
Float  
High byte RD with swap  
0
16-Bit RD converted to  
low byte RD  
RD  
RD  
1
0
0
1
0
0
0
1
0
0
0
0
x
1
1
Float  
Slave  
Slave  
Slave  
Float  
High byte RD  
16-Bit RD  
WR  
WR  
WR  
Master  
Float*  
Master  
Low byte WR  
Master  
Master  
High byte WR with swap  
16-Bit WR converted to  
low byte WR  
WR  
WR  
1
0
0
0
0
0
Float  
Master  
Master  
High byte WR  
16-Bit WR  
Master  
*Motherboard SWAP logic drives  
Refresh Cycles  
because some motherboards generate a false DACK at  
that time.  
Although the PCnet-ISA+ controller is neither an origina-  
tor or a receiver of refresh cycles, it does need to avoid  
unintentional activity during a refresh cycle in bus mas-  
ter mode. A refresh cycle is performed as follows: First,  
the REF signal goes active. Then a valid refresh ad-  
dress is placed on the address bus. MEMR goes active,  
the refresh is performed, and MEMR goes inactive. The  
refresh address is held for a short time and then goes  
invalid. Finally, REF goes inactive. During a refresh cy-  
cle, as indicated by REF being active, the PCnet-ISA+  
controller ignores DACK if it goes active until it goes in-  
active. It is necessary to ignore DACK during a refresh  
Address PROM Cycles External PROM  
The Address PROM is a small (16 bytes) 8-bit PROM  
connected to the PCnet-ISA+ controller Private Data  
Bus. The PCnet-ISA+ controller will support only 8-bit  
ISA I/O bus cycles for the address PROM; this limitation  
is transparent to software and does not preclude 16-bit  
software I/O accesses. An access cycle begins with the  
Permanent Master driving AEN LOW, driving the ad-  
dresses valid, and driving IOR active. The PCnet-ISA+  
controller detects this combination of signals and  
Am79C961  
1-539  
AMD  
P R E L I M I N A R Y  
arbitrates for the Private Data Bus (PRDB) if necessary.  
IOCHRDY is driven LOW during accesses to the ad-  
dress PROM.  
based family of Ethernet cards is not required but does  
not have any harmful effects. IOCS16 is not asserted in  
this cycle.  
When the Private Data Bus becomes available, the  
PCnet-ISA+ controller drives APCS active, releases  
IOCHRDY, turns on the data path from PRD0-7, and en-  
ables the SD0-7 drivers (but not SD8-15). During this  
bus cycle, IOCS16 is not driven active. This condition is  
maintained until IOR goes inactive, at which time the  
bus cycle ends. Data is removed from SD0-7 within  
30 ns.  
ISA Configuration Register Cycles  
The ISA configuration registers are accessed by placing  
the address of the desired register into the RAP and  
reading the IDP. The ISACSR bus cycles are identical  
to all other PCnet-ISA+ controller register bus cycles.  
Boot PROM Cycles  
The Boot PROM is an 8-bit PROM connected to the  
PCnet-ISA+ controllerPrivateDataBus(PRDB)andcan  
occupy up to 64K of address space. Since the  
PCnet-ISA+ controller does not generate MEMCS16,  
only 8-bit ISA memory bus cycles to the boot PROM are  
supported in Bus Master Mode; this limitation is trans-  
parent to software and does not preclude 16-bit  
software memory accesses. A boot PROM access cycle  
begins with the Permanent Master driving the ad-  
dresses valid, REF inactive, and MEMR active. (AEN is  
not involved in memory cycles). The PCnet-ISA+ con-  
troller detects this combination of signals, drives  
IOCHRDY LOW, and reads a byte out of the Boot  
PROM. The data byte read is driven onto the lower sys-  
tem data bus lines and IOCHRDY is released. This  
condition is maintained until MEMR goes inactive, at  
which time the access cycle ends.  
Address PROM Cycles Using EEPROM Data  
Default mode. In this mode, the IEEE address informa-  
tion is stored not in an external parallel PROM but in the  
EEPROM along with other configuration information.  
PCnet-ISA+ will respond to I/O reads from the IEEE ad-  
dress (the first 16 bytes of the I/O map) by supplying  
data from an internal RAM inside PCnet-ISA+. This in-  
ternal RAM is loaded with the IEEE address at RESET  
and is write protected.  
Ethernet Controller Register Cycles  
Ethernet controller registers (RAP, RDP, IDP) are natu-  
rally 16-bit resources but can be configured to operate  
with 8-bit bus cycles provided the proper protocol is fol-  
lowed. This means on a read, the PCnet-ISA+ controller  
will only drive the low byte of the system data bus; if an  
odd byte is accessed, it will be swapped down. The high  
byte of the system data bus is never driven by the  
PCnet-ISA+ controller under these conditions. On a  
write cycle, the even byte is placed in a holding register.  
An odd byte write is internally swapped up and aug-  
mented with the even byte in the holding register to  
provide an internal 16-bit write. This allows the use of  
8-bit I/O bus cycles which are more likely to be compat-  
ible with all ISA-compatible clones, but requires that  
both bytes be written in immediate succession. This is  
accomplished simply by treating the PCnet-ISA+ con-  
troller controller registers as 16-bit software resources.  
The motherboard will convert the 16-bit accesses done  
by software into two sequential 8-bit accesses, an even  
byte access followed immediately by an odd byte  
access.  
The BPCS signal generated by the PCnet-ISA+ control-  
ler is three 20 MHz clock cycles wide (300 ns). Including  
delays, the Boot PROM has 275 ns to respond to the  
BPCS signal from the PCnet-ISA+ controller. This signal  
is intended to be connected to the CS pin on the boot  
PROM, with the PROM OE pin tied to ground.  
Current Master Operation  
Current Master operation only occurs in the bus master  
mode. It does not occur in shared memory mode.  
There are three phases to the use of the bus by the  
PCnet-ISA+ controller as Current Master, the Obtain  
Phase, the Access Phase, and the Release Phase.  
Obtain Phase  
A Master Mode Transfer Cycle begins by asserting  
DRQ. When the Permanent Master asserts DACK, the  
PCnet-ISA+ controller asserts MASTER, signifying it  
has taken control of the ISA bus. The Permanent Master  
tristatestheaddress, command, anddatalineswithin60  
ns of DACK going active. The Permanent Master drives  
AEN inactive within 71 ns of MASTER going active.  
An access cycle begins with the Permanent Master driv-  
ingAENLOW, drivingtheaddressvalid, anddrivingIOR  
or IOW active. The PCnet-ISA+ controller detects this  
combination of signals and drives IOCHRDY LOW.  
IOCS16 will also be driven LOW if 16-bit I/O bus cycles  
are enabled. When the register data is ready, IOCHRDY  
will be released HIGH. This condition is maintained until  
IOR or IOW goes inactive, at which time the bus cycle  
ends.  
Access Phase  
The ISA bus requires a wait of at least 125 ns after  
MASTER is asserted before the new master is allowed  
to drive the address, command, and data lines. The  
PCnet-ISA+ controller will actually wait 3 clock cycles or  
150 ns.  
RESET Cycles  
A read to the reset address causes an PCnet-ISA+ con-  
troller reset. This has the same effect as asserting the  
RESET pin on the PCnet-ISA+ controller, such as hap-  
pens during a system power-up or hard boot. The  
subsequent write cycle needed in the NE2100 LANCE  
1-540  
Am79C961  
P R E L I M I N A R Y  
The following signals are not driven by the Permanent Master Mode Memory Write Cycle  
AMD  
After the PCnet-ISA+ controller has acquired the ISA  
bus, it can perform a memory write cycle. All timing is  
generated relative to a 20 MHz clock which happens to  
be the same as the network clock. Since there is no way  
to tell if memory is 8- or 16-bit or when it is ready, the  
PCnet-ISA+ controller by default assumes 16-bit, 1 wait  
state memory. The wait state assumption is based on  
the default value in the MSWRA register in ISACSR1.  
Master and are simply pulled HIGH: BALE, IOCHRDY,  
IOCS16, MEMCS16, SRDY. Therefore, the PCnet-ISA+  
controller assumes the memory which it is accessing is  
16 bits wide and can complete an access in the time pro-  
grammed for the PCnet-ISA+ controller MEMR and  
MEMW signals. Refer to the ISA Bus Configuration  
Register description section.  
Release Phase  
The cycle begins with SA0-19, SBHE, and LA17-23 be-  
ing presented. The ISA bus requires them to be valid at  
least 28 ns before MEMW goes active and data to be  
valid at least 22 ns before MEMW goes active. The  
PCnet-ISA+ controller provides one clock or 50 ns of  
setup time for all these signals.  
When the PCnet-ISA+ controller is finished with the bus,  
itdrivesthecommandlinesinactive. 50nslater, thecon-  
troller tri-states the command, address, and data lines  
and drives DRQ inactive. 50 ns later, the controller  
drives MASTER inactive.  
ThePermanentMasterdrivesAENactivewithin71nsof  
MASTER going inactive. The Permanent Master is al-  
lowed to drive the command lines no sooner than 60 ns  
after DACK goes inactive.  
The ISA bus requires MEMW to be active for at least  
219 ns, andthePCnet-ISA+ controllerprovidesadefault  
of 5 clocks, or 250 ns, but this can be tuned for faster  
systems with the Master Mode Write Active (MSWRA)  
register (ISACSR1). Also, if IOCHRDY is driven LOW,  
the PCnet-ISA+ controller will wait. IOCHRDY must be  
HIGH for the PCnet-ISA+ controller to continue.  
Master Mode Memory Read Cycle  
After the PCnet-ISA+ controller has acquired the ISA  
bus, it can perform a memory read cycle. All timing is  
generated relative to the 20 MHz clock (network clock).  
Since there is no way to tell if memory is 8- or 16-bit or  
when it is ready, the PCnet-ISA+ controller by default as-  
sumes 16-bit, 1 wait state memory. The wait state  
assumption is based on the default value in the MSRDA  
register in ISACSR0.  
The ISA bus requires data to be valid for at least 25 ns  
after MEMW goes inactive, and the PCnet-ISA+ control-  
ler provides one clock or 50 ns.  
The ISA bus requires all command lines to remain inac-  
tive for at least 97 ns before starting another bus cycle.  
The PCnet-ISA+ controller provides at least two clocks  
or 100 ns of inactive time when bit 4 in ISACSR2 is set.  
The EISA bus requires all command lines to remain in-  
active for at least 170 ns before starting another bus  
cycle. When bit 4 in ISACSR4 is cleared, the  
PCnet-ISA+ controller provides 200 ns of inactive time.  
The cycle begins with SA0-19, SBHE, and LA17-23 be-  
ing presented. The ISA bus requires them to be valid for  
at least 28 ns before a read command and the  
PCnet-ISA+ controller provides one clock or 50 ns of  
setup time before asserting MEMR.  
The ISA bus requires MEMR to be active for at least  
219 ns, andthePCnet-ISA+ controllerprovidesadefault  
of 5 clocks, or 250 ns, but this can be tuned for faster  
systems with the Master Mode Read Active (MSRDA)  
register (see section 2.5.2). Also, if IOCHRDY is driven  
LOW, the PCnet-ISA+ controller will wait. The wait state  
counter must expire and IOCHRDY must be HIGH for  
the PCnet-ISA+ controller to continue.  
Shared Memory Mode  
Address PROM Cycles External PROM  
The Address PROM is a small (16 bytes) 8-bit PROM  
connected to the PCnet-ISA+ controller Private Data  
Bus (PRDB). The PCnet-ISA+ controller will support  
only 8-bit ISA I/O bus cycles for the address PROM; this  
limitation is transparent to software and does not pre-  
clude 16-bit software I/O accesses. An access cycle  
begins with the Permanent Master driving AEN LOW,  
driving the addresses valid, and driving IOR active. The  
PCnet-ISA+ controller detects this combination of sig-  
nals and arbitrates for the Private Data Bus if necessary.  
IOCHRDY is always driven LOW during address PROM  
accesses.  
The PCnet-ISA+ controller then accepts the memory  
read data. The ISA bus requires all command lines to re-  
main inactive for at least 97 ns before starting another  
bus cycle and the PCnet-ISA+ controller provides at  
least two clocks or 100 ns of inactive time.  
The ISA bus requires read data to be valid no more than  
173 ns after receiving MEMR active and the PCnet-  
ISA+ controller requires 10 ns of data setup time. The  
ISA bus requires read data to provide at least 0 ns of  
hold time and to be removed from the bus within 30 ns  
after MEMR goes inactive. The PCnet-ISA+ controller  
requires 0 ns of data hold time.  
When the Private Data Bus becomes available, the  
PCnet-ISA+ controller drives APCS active, releases  
IOCHRDY, turns on the data path from PRD0-7, and en-  
ables the SD0-7 drivers (but not SD8-15). During this  
bus cycle, IOCS16 is not driven active. This condition is  
1-541  
Am79C961  
AMD  
P R E L I M I N A R Y  
maintained until IOR goes inactive, at which time the  
access cycle ends. Data is removed from SD0-7 within  
30 ns.  
ISA Configuration Register Cycles  
The ISA configuration register is accessed by placing  
the address of the desired register into the RAP and  
reading the IDP. The ISACSR bus cycles are identical  
to all other PCnet-ISA+ controller register bus cycles.  
The PCnet-ISA+ controller will perform 8-bit ISA bus cy-  
cle operation for all resources (registers, PROMs,  
SRAM) if SBHE has been left unconnected, such as in  
the case of an 8-bit system like the PC/XT.  
Boot PROM Cycles  
The Boot PROM is an 8-bit PROM connected to the  
PCnet-ISA+ controller Private Data Bus (PRDB), and  
can occupy up to 64 Kbytes of address space. In Shared  
Memory Mode, an external address comparator is re-  
sponsible for asserting BPAM to the PCnet-ISA+  
controller. BPAM is intended to be a perfect decode of  
thebootPROMaddressspace, i.e. LA17-23, SA16. The  
LA bus must be latched with BALE in order to provide  
stable signal for BPAM. REF inactive must be used by  
the external logic to gate boot PROM address decoding.  
This same logic must assert MEMCS16 to the ISA bus if  
16-bit Boot PROM bus cycles are desired.  
Ethernet Controller Register Cycles  
Ethernet controller registers (RAP, RDP, ISACSR) are  
naturally 16-bit resources but can be configured to oper-  
ate with 8-bit bus cycles provided the proper protocol is  
followed. This is programmable by the EEPROM. This  
means on a read, the PCnet-ISA+ controller will only  
drive the low byte of the system data bus; if an odd byte  
is accessed, it will be swapped down. The high byte of  
the system data bus is never driven by the PCnet-ISA+  
controller under these conditions. On a write, the even  
byte is placed in a holding register. An odd-byte write is  
internally swapped up and augmented with the even  
byte in the holding register to provide an internal 16-bit  
write. This allows the use of 8-bit I/O bus cycles which  
are more likely to be compatible with all clones, but re-  
quires that both bytes be written in immediate  
succession. This is accomplished simply by treating the  
PCnet-ISA+ controller controller registers as 16-bit soft-  
ware resources. The motherboard will convert the 16-bit  
accesses done by software into two sequential 8-bit ac-  
cesses, an even- byte access followed immediately by  
an odd-byte access.  
The PCnet-ISA+ controller assumes 16-bit ISA memory  
bus cycles for the boot PROM. A 16-bit boot PROM bus  
cycle begins with the Permanent Master driving the ad-  
dresses valid and MEMR active. (AEN is not involved in  
memory cycles). External hardware would assertBPAM  
and MEMCS16. The PCnet-ISA+ controller detects this  
combination of signals, drives IOCHRDY LOW, and  
reads two bytes out of the boot PROM. The data bytes  
read from the PROM are driven by the PCnet-ISA+ con-  
troller onto SD0-15 and IOCHRDY is released. This  
condition is maintained until MEMR goes inactive, at  
which time the access cycle ends.  
An access cycle begins with the Permanent Master driv-  
ingAENLOW, drivingtheaddressvalid, anddrivingIOR  
or IOW active. The PCnet-ISA+ controller detects this  
combination of signals and drives IOCHRDY LOW.  
IOCS16 will also be driven LOW if 16-bit I/O bus cycles  
are enabled. When the register data is ready, IOCHRDY  
will be released HIGH. This condition is maintained until  
IOR or IOW goes inactive, at which time the bus cycle  
ends.  
The PCnet-ISA+ controller will perform 8-bit ISA bus cy-  
cle operation for all resource (registers, PROMs,  
SRAM) if SBHE has been left unconnected, such as in  
the case of an 8-bit system like the PC/XT.  
The BPCS signal generated by the PCnet-ISA+ control-  
ler is three 20 MHz clock cycles wide (350 ns). Including  
delays, the Boot PROM has 275 ns to respond to the  
BPCS signal from the PCnet-ISA+ controller. This signal  
is intended to be connected to the CS pin on the boot  
PROM, with the PROM OE pin tied to ground.  
The PCnet-ISA+ controller will perform 8-bit ISA bus cy-  
cle operation for all resources (registers, PROMs,  
SRAM) if SBHE has been left unconnected, such as in  
the case of an 8-bit system like the PC/XT.  
Static RAM Cycles  
The shared memory SRAM is an 8-bit device connected  
to the PCnet-ISA+ controller Private Bus, and can oc-  
cupy up to 64 Kbytes of address space. In Shared  
Memory Mode, an external address comparator is re-  
sponsible for asserting SMAM to the PCnet-ISA+  
controller. SMAM is intended to be a perfect decode of  
the SRAM address space, i.e. LA17-23, SA16 for 64  
Kbytes of SRAM. The LA signals must be latched by  
BALE in order to provide a stable decode for SMAM.  
RESET Cycles  
A read to the reset address causes an PCnet-ISA+ con-  
troller reset. This has the same effect as asserting the  
RESET pin on the PCnet-ISA+ controller, such as hap-  
pens during a system power-up or hard boot. The  
subsequent write cycle needed in the NE2100 LANCE-  
based family of Ethernet cards is not required but does  
not have any harmful effects. IOCS16 is not asserted in  
this cycle.  
1-542  
Am79C961  
P R E L I M I N A R Y  
AMD  
The PCnet-ISA+ controller assumes 16-bit ISA memory  
bus cycles for the SRAM, so this same logic must assert  
MEMCS16 to the ISA bus if 16-bit bus cycles are to be  
supported.  
(registers, PROMs, SRAM) if SBHE has never been  
driven active since the last RESET, such as in the case  
of an 8-bit system like the PC/XT. In this case, the exter-  
nal address decode logic must not assert MEMCS16 to  
the ISA bus, which will be the case if MEMCS16 is left  
unconnected. It is possible to manufacture a dual 8/16  
bit PCnet-ISA+ controller adapter card, as the  
MEMCS16 and SBHE signals do not exist in the PC/XT  
environment.  
A 16-bit SRAM bus cycle begins with the Permanent  
Master driving the addresses valid, REF inactive, and  
either MEMR or MEMW active. (AEN is not involved in  
memory cycles). External hardware would assert  
SMAM and MEMCS16. The PCnet-ISA+ controller de-  
tects this combination of signals and initiates the SRAM  
access.  
At the memory device level, each SRAM Private Bus  
read cycle takes two 50 ns clock periods for a maximum  
read access time of 75 ns. The timing looks like this:  
In a write cycle, the PCnet-ISA+ controller stores the  
data into an internal holding register, allowing the ISA  
bus cycle to finish normally. The data in the holding reg-  
ister will then be written to the SRAM without the need  
for ISA bus control. In the event the holding register is  
already filled with unwritten SRAM data, the PCnet-ISA+  
controller will extend the ISA write cycle by driving  
IOCHRDY LOW until the unwritten data is stored in the  
SRAM. The current ISA bus cycle will then complete  
normally.  
XTAL1  
(20 MHz)  
Address  
SROE  
In a read cycle, the PCnet-ISA+ controller arbitrates for  
the Private Bus. If it is unavailable, the PCnet-ISA+ con-  
troller drives IOCHRDY LOW. The PCnet-ISA+  
controller compares the 16 bits of address on the Sys-  
tem Address Bus with that of a data word held in an  
internal pre-fetch register.  
18183B-17  
Static RAM Read Cycle  
The address and SROE go active within 20 ns of the  
clock going HIGH. Data is required to be valid 5 ns be-  
fore the end of the second clock cycle. Address and  
SROE have a 0 ns hold time after the end of the second  
clock cycle. Note that the PCnet-ISA+ controller does  
not normally provide a separate SRAM CS signal;  
SRAM CS must always be asserted.  
If the address does not match that of the prefetched  
SRAM data, then the PCnet-ISA+ controller drives  
IOCHRDY LOW and reads two bytes from the SRAM.  
The PCnet-ISA+ controller then proceeds as though the  
addressed data location had been prefetched.  
SRAM Private Bus write cycles require three 50 ns clock  
periods to guarantee non-negative address setup and  
hold times with regard to SRWE. The timing is illustrated  
as follows:  
If the internal prefetch buffer contains the correct data,  
then the pre-fetch buffer data is driven on the System  
Data bus. If IOCHRDY was previously driven LOW due  
to either Private Data Bus arbitration or SRAM access,  
then it is released HIGH. The PCnet-ISA+ controller re-  
mains in this state until MEMR is de-asserted, at which  
time the PCnet-ISA+ controller performs a new prefetch  
of the SRAM. In this way memory read wait states can  
be minimized.  
XTAL  
(20 MHz)  
Address/  
The PCnet-ISA+ controller performs prefetches of the  
SRAM between ISA bus cycles. The SRAM is  
prefetched in an incrementing word address fashion.  
Prefetched data are invalidated by any other activity on  
the Private Bus, including Shared Memory Writes by  
either the ISA bus or the network interface, and also ad-  
dress and boot PROM reads.  
Data  
SRWE  
18183B-18  
Static RAM Write Cycle  
The only way to configure the PCnet-ISA+ controller for  
8-bit ISA bus cycles for SRAM accesses is to configure  
the entire PCnet-ISA+ controller to support only 8-bit ISA  
bus cycles. This is accomplished by leaving the SBHE  
pin disconnected. The PCnet-ISA+ controller will per-  
form 8-bit ISA bus cycle operation for all resources  
Address and data are valid 20 ns after the rising edge of  
the first clock period. SRWE goes active 20 ns after the  
fallingedgeofthefirstclockperiod. SRWEgoesinactive  
20 ns after the falling edge of the third clock period.  
Address and data remain valid until the end of the third  
clock period. Rise and fall times are nominally 5 ns.  
1-543  
Am79C961  
AMD  
P R E L I M I N A R Y  
Non-negativesetupandholdtimesforaddressanddata  
with respect to SRWE are guaranteed. SRWE has a  
pulse width of typically 100 ns, minimum 75 ns.  
withthevalueof00h. ThedefaultvalueofAPAD_XMTis  
0, andthiswilldisableautopadgenerationafterRESET.  
It is the responsibility of upper layer software to correctly  
define the actual length field contained in the message  
to correspond to the total number of LLC Data bytes en-  
capsulated in the packet (length field as defined in the  
IEEE 802.3 standard). The length value contained in the  
message is not used by the PCnet-ISA+ controller to  
compute the actual number of pad bytes to be inserted.  
The PCnet-ISA+ controller will append pad bytes de-  
pendent on the actual number of bits transmitted onto  
the network. Once the last data byte of the frame has  
completed prior to appending the FCS, the PCnet-ISA+  
controller will check to ensure that 544 bits have been  
transmitted. If not, pad bytes are added to extend the  
frame size to this value, and the FCS is then added.  
Transmit Operation  
The transmit operation and features of the PCnet-ISA+  
controller are controlled by programmable options.  
Transmit Function Programming  
Automatic transmit features, such as retry on collision,  
FCS generation/transmission, and pad field insertion,  
can all be programmed to provide flexibility in the  
(re-)transmission of messages.  
Disable retry on collision (DRTY) is controlled by the  
DRTY bit of the Mode register (CSR15) in the initializa-  
tion block.  
The 544 bit count is derived from the following:  
Minimum frame size (excluding preamble,  
Automatic pad field insertion is controlled by the  
APAD_XMT bit in CSR4. If APAD_XMT is set, auto-  
matic pad field insertion is enabled, the DXMTFCS  
feature is over-ridden, and the 4-byte FCS will be added  
to the transmitted frame unconditionally. If APAD_XMT  
is cleared, no pad field insertion will take place and runt  
packet transmission is possible.  
including FCS)  
Preamble/SFD size 8 bytes  
FCS size 4 bytes  
64 bytes  
512 bits  
64 bits  
32 bits  
To be classed as a minimum-size frame at the receiver,  
the transmitted frame must contain:  
Preamble  
+
(Min Frame Size + FCS) bits  
The disable FCS generation/transmission feature can  
be programmed dynamically on a frame by frame basis.  
See the ADD_FCS description of TMD1.  
At the point that FCS is to be appended, the transmitted  
frame should contain:  
Transmit FIFO Watermark (XMTFW in CSR80) sets the  
point at which the BMU (Buffer Management Unit) re-  
quests more data from the transmit buffers for the FIFO.  
This point is based upon how many 16-bit bus transfers  
(2 bytes) could be performed to the existing empty  
space in the transmit FIFO.  
Preamble  
64  
+
+
(Min Frame Size - FCS) bits  
(512 32) bits  
-
A minimum-length transmit frame from the PCnet-ISA+  
controller will, therefore, be 576 bits after the FCS is  
appended.  
Transmit Start Point (XMTSP in CSR80) sets the point  
when the transmitter actually tries to go out on the me-  
dia. This point is based upon the number of bytes written  
to the transmit FIFO for the current frame.  
Transmit FCS Generation  
Automatic generation and transmission of FCS for a  
transmit frame depends on the value of DXMTFCS bit in  
CSR15. When DXMTFCS = 0 the transmitter will gener-  
ate and append the FCS to the transmitted frame. If the  
automatic padding feature is invoked (APAD_XMT is  
SET in CSR4), the FCS will be appended by the  
PCnet-ISA+ controller regardless of the state of  
DXMTFCS. Note that the calculated FCS is transmitted  
most-significant bit first. The default value of DXMTFCS  
is 0 after RESET.  
When the entire frame is in the FIFO, attempts at trans-  
mission of preamble will commence regardless of the  
value in XMTSP. The default value of XMTSP is 10b,  
meaning 64 bytes full.  
Automatic Pad Generation  
Transmit frames can be automatically padded to extend  
them to 64 data bytes (excluding preamble). This allows  
the minimum frame size of 64 bytes (512 bits) for  
802.3/Ethernet to be guaranteed with no software inter-  
vention from the host/controlling process. Setting the  
APAD_XMT bit in CSR4 enables the automatic padding  
feature. The pad is placed between the LLC data field  
and FCS field in the 802.3 frame. FCS is always added if  
the frame is padded, regardless of the state of  
DXMTFCS. The transmit frame will be padded by bytes  
Transmit Exception Conditions  
Exception conditions for frame transmission fall into two  
distinct categories; those which are the result of normal  
network operation, and those which occur due to abnor-  
mal network and/or host related events.  
Normal events which may occur and which are handled  
autonomously by the PCnet-ISA+ controller are  
1-544  
Am79C961  
P R E L I M I N A R Y  
AMD  
basically collisions within the slot time with automatic re-  
try. The PCnet-ISA+ controller will ensure that collisions  
which occur within 512 bit times from the start of trans-  
mission (including preamble) will be automatically  
retried with no host intervention. The transmit FIFO en-  
sures this by guaranteeing that data contained within  
the FIFO will not be overwritten until at least 64 bytes  
(512 bits) of data have been successfully transmitted  
onto the network.  
If 16 total attempts (initial attempt plus 15 retries) fail, the  
PCnet-ISA+ controller sets the RTRY bit in the current  
transmit TDTE in host memory (TMD2), gives up owner-  
ship (sets the OWN bit to zero) for this packet, and  
processes the next packet in the transmit ring for trans-  
mission.  
Preamble  
1010....1010  
SYNC  
10101011  
Dest.  
ADDR  
Srce.  
ADDR.  
LLC  
Data  
Length  
Pad  
FCS  
56  
8
6
6
2
4
Bits  
Bits  
Bytes  
Bytes  
Bytes  
Bytes  
46-1500  
Bytes  
18183B-19  
16907B-12  
ISO 8802-3 (IEEE/ANSI 802.3) Data Frame  
Abnormal network conditions include:  
The PCnet-ISA+ controller will abandon the transmit  
process for the particular frame, set Late Collision  
(LCOL) in the associated TMD3, and process the next  
transmit frame in the ring. Frames experiencing a late  
collision will not be re-tried. Recovery from thiscondition  
must be performed by upper-layer software.  
Loss of carrier  
Late collision  
SQE Test Error (Does not apply to 10BASE-T  
port.)  
These should not occur on a correctly configured 802.3  
network, and will be reported if they do.  
SQE Test Error  
During the inter packet gap time following the comple-  
tion of a transmitted message, the AUI CI± pair is  
asserted by some transceivers as a self-test. The inte-  
gral Manchester Encoder/Decoder will expect the SQE  
Test Message (nominal 10 MHz sequence) to be re-  
turned via the CI± pair within a 40 network bit time period  
after DI± pair goes inactive. If the CI± inputs are not  
asserted within the 40 network bit time period following  
the completion of transmission, then the PCnet-ISA+  
controller will set the CERR bit in CSR0. CERR will be  
asserted in 10BASE-T mode after transmit if T-MAU is  
inLinkFailstate. CERRwillnevercauseINTRtobeacti-  
vated. It will, however, set the ERR bit in CSR0.  
When an error occurs in the middle of a multi-buffer  
frame transmission, the error status will be written in the  
current descriptor. The OWN bit(s) in the subsequent  
descriptor(s) will be reset until the STP (the next frame)  
is found.  
Loss of Carrier  
A loss of carrier condition will be reported if the  
PCnet-ISA+ controller cannot observe receive activity  
while it is transmitting on the AUI port. After the  
PCnet-ISA+ controller initiates a transmission, it will  
expect to see data “looped back” on the DI± pair. This  
will internally generate a “carrier sense,” indicating that  
the integrity of the data path to and from the MAU is in-  
tact, and that the MAU is operating correctly. This  
“carrier sense” signal must be asserted before the end  
of the transmission. If “carrier sense” does not become  
active in response to the data transmission, or becomes  
inactive before the end of transmission, the loss of car-  
rier (LCAR) error bit will be set in TMD2 after the frame  
has been transmitted. The frame will not be re-tried on  
the basis of an LCAR error. In 10BASE-T mode LCAR  
will indicate that Jabber or Link Fail state has occurred.  
Host related transmit exception conditions include  
BUFF and UFLO as described in the Transmit Descrip-  
tor section.  
Receive Operation  
The receive operation and features of the PCnet-ISA+  
controller are controlled by programmable options.  
Receive Function Programming  
Late Collision  
Automatic pad field stripping is enabled by setting the  
ASTRP_RCV bit in CSR4; this can provide flexibility in  
the reception of messages using the 802.3 frame  
format.  
A late collision will be reported if a collision condition oc-  
curs after one slot time (512 bit times) after the transmit  
process was initiated (first bit of preamble commenced).  
1-545  
Am79C961  
AMD  
P R E L I M I N A R Y  
AllreceiveframescanbeacceptedbysettingthePROM  
bit in CSR15. When PROM is set, the PCnet-ISA+ con-  
troller will attempt to receive all messages, subject to  
minimum frame enforcement. Promiscuous mode over-  
rides the effect of the Disable Receive Broadcast bit on  
receiving broadcast frames.  
The number of bytes to be stripped is calculated from  
the embedded length field (as defined in the IEEE 802.3  
definition) contained in the frame. The length indicates  
the actual number of LLC data bytes contained in the  
message. Any received frame which contains a length  
field less than 46 bytes will have the pad field stripped (if  
ASTRP_RCV is set). Receive frames which have a  
length field of 46 bytes or greater will be passed to the  
host unmodified.  
The point at which the BMU will start to transfer data  
from the receive FIFO to buffer memory is controlled by  
the RCVFW bits in CSR80. The default established dur-  
ing reset is 10b, which sets the threshold flag at 64 bytes  
empty.  
Since any valid Ethernet Type field value will always be  
greater than a normal 802.3 Length field (46), the  
PCnet-ISA+ controller will not attempt to strip valid  
Ethernet frames.  
Automatic Pad Stripping  
During reception of an 802.3 frame the pad field can be  
stripped automatically. ASTRP_RCV (bit 10 in CSR4) =  
1 enables the automatic pad stripping feature. The pad  
field will be stripped before the frame is passed to the  
FIFO, thus preserving FIFO space for additional frames.  
The FCS field will also be stripped, since it is computed  
at the transmitting station based on the data and pad  
field characters, and will be invalid for a receive frame  
that has had the pad characters stripped.  
Note that for some network protocols the value passed  
in the Ethernet Type and/or 802.3 Length field is not  
compliant with either standard and may cause  
problems.  
The diagram below shows the byte/bit ordering of the re-  
ceivedlengthfieldforan802.3compatibleframeformat.  
46–1500  
Bytes  
56  
8
6
6
2
4
Bits  
Bits  
Bytes  
Bytes  
Bytes  
Bytes  
Preamble  
SYNCH  
Dest.  
Srce.  
Length  
LLC  
Pad  
FCS  
1010....1010  
10101011  
ADDR.  
ADDR.  
DATA  
1–1500  
Bytes  
45–0  
Bytes  
Start of Packet  
at Time= 0  
Bit  
0
Bit Bit  
Bit  
7
7
0
Most  
Significant  
Byte  
Least  
Significant  
Byte  
Increasing Time  
18183B-20  
IEEE/ANSI 802.3 Frame and Length Field Transmission Order  
Receive FCS Checking  
error is detected, this will be reported by the CRC bit in  
RMD1.  
Reception and checking of the received FCS is per-  
formed automatically by the PCnet-ISA+ controller. Note  
that if the Automatic Pad Stripping feature is enabled,  
the received FCS will be verified against the value com-  
puted for the incoming bit stream including pad  
characters, but it will not be passed to the host. If a FCS  
Receive Exception Conditions  
Exception conditions for frame reception fall into two  
distinct categories; those which are the result of normal  
1-546  
Am79C961  
P R E L I M I N A R Y  
AMD  
network operation, and those which occur due to abnor-  
mal network and/or host related events.  
receiver will not check for the FCS. However, the user  
can verify the FCS by software.  
Normal events which may occur and which are handled  
autonomously by the PCnet-ISA+ controller are basi-  
cally collisions within the slot time and automatic runt  
packet rejection. The PCnet-ISA+ controller will ensure  
that collisions which occur within 512 bit times from the  
start of reception (excluding preamble) will be automati-  
cally deleted from the receive FIFO with no host  
intervention. The receive FIFO will delete any frame  
which is composed of fewer than 64 bytes provided that  
the Runt Packet Accept (RPA bit in CSR124) feature  
has not been enabled. This criteria will be met regard-  
less of whether the receive frame was the first (or only)  
frame in the FIFO or if the receive frame was queued be-  
hind a previously received message.  
During loopback, the FCS logic can be allocated to the  
receiver by setting DXMTFCS = 1 in CSR15.  
If DXMTFCS=0, the MAC Engine will calculate and ap-  
pend the FCS to the transmitted message. The receive  
messagepassedtothehostwillthereforecontainanad-  
ditional 4 bytes of FCS. In this loopback configuration,  
the receive circuitry cannot detect FCS errors if  
theyoccur.  
If DXMTFCS=1, the last four bytes of the transmit mes-  
sage must contain the (software generated) FCS  
computed for the transmit data preceding it. The MAC  
Engine will transmit the data without addition of an FCS  
field, and the FCS will be calculated and verified at  
thereceiver.  
Abnormal network conditions include:  
The loopback facilities of the MAC Engine allow full op-  
eration to be verified without disturbance to the network.  
Loopback operation is also affected by the state of the  
Loopback Control bits (LOOP, MENDECL, and INTL) in  
CSR15. This affects whether the internal MENDEC is  
considered part of the internal or external loop-  
backpath.  
FCS errors  
Late collision  
These should not occur on a correctly configured 802.3  
network and will be reported if they do.  
HostrelatedreceiveexceptionconditionsincludeMISS,  
BUFF, and OFLO. These are described in the Receive  
Descriptor section.  
The multicast address detection logic uses the FCS  
generator circuit. Therefore, in the loopback mode(s),  
the multicast address detection feature of the MAC En-  
gine, programmed by the contents of the Logical  
Address Filter (LADRF [63:0] in CSRs 8–11) can onlybe  
tested when DXMTFCS=1, allocating the FCS genera-  
tor to the receiver. All other features operate identically  
in loopback as in normal operation, such as automatic  
transmit padding and receive pad stripping.  
Loopback Operation  
Loopback is a mode of operation intended for system di-  
agnostics. In this mode, the transmitter and receiver are  
both operating at the same time so that the controller re-  
ceives its own transmissions. The controller provides  
two types of internal loopback and one type of external  
loopback. In internal loopback mode, the transmitted  
data can be looped back to the receiver at one of two  
places inside the controller without actually transmitting  
any data to the external network. The receiver will move  
the received data to the next receive buffer, where it can  
beexaminedbysoftware. Alternatively, inexternalloop-  
back mode, data can be transmitted to and received  
from the external network.  
When performing an internal loopback, no frame will be  
transmitted to the network. However, when the PCnet-  
ISA+ controller is configured for internal loopback the  
receiver will not be able to detect network traffic. Exter-  
nal loopback tests will transmit frames onto the network  
if the AUI port is selected, and the PCnet-PCI controller  
will receive network traffic while configured for external  
loopback when the AUI port is selected. Runt Packet  
Accept is automatically enabled when any loopback  
mode is invoked.  
There are restrictions on loopback operation. The  
PCnet-ISA+ controller has only one FCS generator cir-  
cuit. The FCS generator can be used by the transmitter  
to generate the FCS to append to the frame, or it can be  
used by the receiver to verify the FCS of the received  
frame. It can not be used by the receiver and transmitter  
simultaneously.  
Loopback mode can be performed with any frame size.  
Runt Packet Accept is internally enabled (RPA bit in  
CSR124 is not affected) when any loopback mode is in-  
voked. This is to be backwards compatible to the  
LANCE (Am7990) software.  
If the FCS generator is connected to the receiver, the  
transmitter will not append an FCS to the frame, but the  
receiver will check for one. The user can, however, cal-  
culate the FCS value for a frame and include this  
four-byte number in the transmit buffer.  
When the 10BASE-T MAU is selected in external loop-  
back mode, the collision detection is disabled. This is  
necessary, because a collision in a 10BASE-T system is  
defined as activity on the transmitter outputs and re-  
ceiver inputs at the same time, which is exactly what  
occurs during external loopback.  
If the FCS generator is connected to the transmitter, the  
transmitter will append an FCS to the frame, but the  
1-547  
Am79C961  
AMD  
P R E L I M I N A R Y  
Since a 10BASE-T hub does not normally feed the sta-  
tion’s transmitter outputs back into the station’s receiver  
inputs, the use of external loopback in a 10BASE-T sys-  
temusuallyrequiressomesortofexternalhardwarethat  
connects the outputs of the 10BASE-T MAU to  
itsinputs.  
Each status signal is ANDed with its corresponding  
enable signal. The enabled status signals run to a com-  
mon OR gate:  
COL  
COL E  
JAB  
JAB E  
LEDs  
RCVADDM  
RCVADDM E  
The PCnet-ISA+ controller’s LED control logic allows  
programming of the status signals, which are displayed  
on 3 LED outputs. One LED (LED0) is dedicated to dis-  
playing 10BASE-T Link Status. The status signals  
available are Collision, Jabber, Receive, Receive Polar-  
ity (active when receive polarity is okay), and Transmit.  
If more than one status signal is enabled, they are ORed  
together. An optional pulse stretcher is available for  
eachprogrammableoutput. Thisallowsemulationofthe  
TPEX (Am79C98) and TPEX+ (Am79C100) LED  
outputs.  
RCV  
RCV E  
RVP  
RVP E  
XMT  
XMT E  
18183B-21  
LED Control Logic  
The output from the OR gate is run through a pulse  
stretcher, which consists of a 3-bit shift register clocked  
at 38 Hz. The data input of the shift register is at logic 0.  
The OR gate output asynchronously sets all three bits of  
the shift register when its output goes active. The output  
of the shift register controls the associated LEDx pin.  
Thus, the pulse stretcher provides an LED output of  
52 ms to 78 ms.  
Signal  
Behavior  
Active during Link OK  
LNKST  
Not active during Link Down  
RCV  
Active while receiving data  
RVPOL  
Active during receive polarity is OK  
Not active during reverse receive polarity  
RCVADDM Active during Receive with Address Match  
XMT Active while transmitting data  
Refer to the section “ISA Bus Configuration Registers”  
for information on LED control via the ISACSRs.  
1-548  
Am79C961  
P R E L I M I N A R Y  
AMD  
PCnet-ISA+ CONTROLLER REGISTERS  
by RESET or by setting the  
STOP bit.  
The PCnet-ISA+ controller implements all LANCE  
(Am7990) registers, plus a number of additional regis-  
ters. The PCnet-ISA+ controller registers are compatible  
with the original LANCE, but there are some places  
where previously reserved LANCE bits are now used by  
the PCnet-ISA+ controller. If the reserved LANCE bits  
were used as recommended, there should be no com-  
patibility problems.  
13  
CERR  
Collision Error indicates that the  
collision inputs to the AUI port  
failed to activate within 20 net-  
work bit times after the chip  
terminated transmission (SQE  
Test). This feature is a trans-  
ceiver test feature. CERR will be  
set in 10BASE-T mode during  
trasmit if in Link Fail state.  
Register Access  
CERR assertion will not result in  
an interrupt being generated.  
CERR assertion will set the ERR  
bit.  
Internal registers are accessed in a two-step operation.  
First, the address of the register to be accessed is writ-  
ten into the register address port (RAP). Subsequent  
read or write operations will access the register pointed  
to by the contents of the RAP. The data will be read from  
(or written to) the selected register through the data port,  
either the register data port (RDP) for control and status  
registers (CSR) or the ISACSR register data port (IDP)  
for ISA control and status registers (ISACSR)  
CERR is set by the MAC layer  
and cleared by writing a “1”. Writ-  
ing a “0” has no effect. CERR is  
cleared by RESET or by setting  
the STOP bit.  
12  
MISS  
Missed Frame is set when  
PCnet-ISA+ controller has lost an  
incoming receive frame because  
a Receive Descriptor was not  
available. This bit is the only  
indication that receive data has  
been lost since there is no re-  
ceive descriptor available for  
status information.  
RAP: Register Address Port  
Bit  
Name  
Description  
15-7  
RES  
Reserved locations. Read and  
written as zeroes.  
6-0  
RAP  
Register Address Port select.  
Selects the CSR or ISACSR  
location to be accessed. RAP is  
cleared by RESET.  
When MISS is set, IRQ is as-  
serted if IENA = 1 and the mask  
bit MISSM (CSR3.12) is clear.  
MISS assertion will set the ERR  
bit.  
Control and Status Registers  
CSR0: PCnet-ISA+ Controller Status Register  
MISS is set by the Buffer Man-  
agement Unit and cleared by  
writing a “1”. Writing a “0” has no  
effect. MISS is cleared by RE-  
SET or by setting the STOP bit.  
Bit  
Name  
Description  
15  
ERR  
Error is set by the ORing of  
BABL, CERR, MISS, and MERR.  
ERR remains set as long as any  
of the error flags are true. ERR is  
read only; write operations are  
ignored.  
11  
MERR  
Memory Error is set when  
PCnet-ISA+ controller is a bus  
master and has not received  
DACK assertion after 50 µs after  
DRQ assertion. Memory Error in-  
dicates that PCnet-ISA+ con-  
troller is not receiving bus mas-  
tership in time to prevent  
overflow/underflow conditions in  
the receive and transmit FIFOs.  
14  
BABL  
Babble is a transmitter time-out  
error. It indicates that the trans-  
mitter has been on the channel  
longer than the time required to  
send the maximum length frame.  
BABL will be set if 1519 bytes or  
greater are transmitted.  
(MERR indicates a slightly differ-  
ent condition for the LANCE; for  
the LANCE MERR occurs when  
READY has not been asserted  
25.6 µs after the address has  
been asserted.)  
When BABL is set, IRQ is as-  
serted if IENA = 1 and the mask  
bit BABLM (CSR3.14) is clear.  
BABL assertion will set the  
ERR bit.  
When MERR is set, IRQ is as-  
serted if IENA = 1 and the mask  
bit MERRM (CSR3.11) is clear.  
BABL is set by the MAC layer and  
cleared by writing a “1”. Writing a  
“0” has no effect. BABL is cleared  
1-549  
Am79C961  
AMD  
P R E L I M I N A R Y  
MERR assertion will set the ERR  
and INTR is set, IRQ will be  
active.  
bit.  
INTR is cleared automatically  
when the condition that caused  
interrupt is cleared.  
INTR is read only. INTR is  
cleared by RESET or by setting  
the STOP bit.  
Interrupt Enable allows IRQ to be  
active if the Interrupt Flag is set. If  
IENA = “0” then IRQ will be dis-  
abled regardless of the state of  
INTR.  
IENA is set by writing a “1” and  
cleared by writing a “0”. IENA is  
cleared by RESET or by setting  
the STOP bit.  
Receive On indicates that the  
Receive function is enabled.  
RXON is set if DRX (CSR15.0) =  
“0” after the START bit is set. If  
INIT and START are set to-  
gether, RXON will not be set until  
after the initialization block has  
been read in.  
MERR is set by the Bus Interface  
Unit and cleared by writing a “1”.  
Writing a “0” has no effect. MERR  
is cleared by RESET or by setting  
the STOP bit.  
10  
RINT  
Receive Interrupt is set after re-  
ception of a receive frame and  
toggling of the OWN bit in the last  
buffer in the Receive Descriptor  
Ring.  
6
5
IENA  
When RINT is set, IRQ is as-  
serted if IENA = 1 and the mask  
bit RINTM (CSR3.10) is clear.  
RINT is set by the Buffer Man-  
agement Unit after the last  
receive buffer has been updated  
and cleared by writing a “1”. Writ-  
ing a “0” has no effect. RINT is  
cleared by RESET or by setting  
the STOP bit.  
RXON  
9
TINT  
Transmit Interrupt is set after  
transmission of a transmit frame  
and toggling of the OWN bit in the  
last buffer in the Transmit De-  
scriptor Ring.  
RXON is read only. RXON is  
cleared by RESET or by setting  
the STOP bit.  
4
TXON  
Transmit On indicates that the  
Transmit function is enabled.  
TXON is set if DTX (CSR15.1) =  
“0” after the START bit is set. If  
INIT and START are set to-  
gether, TXON will not be set until  
after the initialization block has  
been read in.  
When TINT is set, IRQ is as-  
serted if IENA = 1 and the mask  
bit TINTM (CSR3.9) is clear.  
TINT is set by the Buffer Man-  
agement Unit after the last  
transmit buffer has been updated  
and cleared by writing a “1”.  
Writing a “0” has no effect. TINT  
is cleared by RESET or by setting  
the STOP bit.  
TXON is read only. TXON is  
cleared by RESET or by setting  
the STOP bit.  
3
TDMD  
Transmit Demand, when set,  
causes the Buffer Management  
Unit to access the Transmit  
Descriptor Ring without waiting  
for the poll-time counter to  
elapse. If TXON is not enabled,  
TDMD bit will be reset and no  
Transmit Descriptor Ring access  
will occur. TDMD is required to  
be set if the DPOLL bit in CSR4 is  
set; setting TDMD while DPOLL  
8
IDON  
Initialization Done indicates that  
the initialization sequence has  
completed. When IDON is set,  
PCnet-ISA+ controller has read  
the Initialization block from  
memory.  
When IDON is set, IRQ is as-  
serted if IENA = 1 and the mask  
bit IDONM (CSR3.8) is clear.  
IDON is set by the Buffer Man-  
agement  
Unit  
after  
the  
=
0
merely hastens the  
initialization block has been read  
from memory and cleared by  
writing a “1”. Writing a “0” has no  
effect. IDON is cleared by RE-  
SET or by setting the STOP bit.  
PCnet-ISA+  
controller’s re-  
sponse to a Transmit Descriptor  
Ring Entry.  
TDMD is set by writing a “1”. Writ-  
ing a “0” has no effect. TDMD will  
be cleared by the Buffer Manage-  
ment Unit when it fetches a  
Transmit Descriptor. TDMD is  
cleared by RESET or by setting  
the STOP bit.  
7
INTR  
Interrupt Flag indicates that one  
or more of the following interrupt  
causing conditions has occurred:  
BABL, MISS, MERR, MPCO,  
RCVCCO, RINT, TINT, IDON,  
JAB or TXSTRT; and its associ-  
ated mask bit is clear. If IENA = 1  
1-550  
Am79C961  
P R E L I M I N A R Y  
STOPassertiondisablesthechip 7-0 IADR [23:16]  
from all external activity. The chip  
remains inactive until either  
STRT or INIT are set. If STOP,  
STRT and INIT are all set to-  
gether, STOP will override STRT  
and INIT.  
AMD  
2
STOP  
Upper 8 bits of the address of the  
Initialization Block. Bit locations  
15-8 must be written with zeros.  
Whenever this register is written,  
CSR17 is updated with CSR2’s  
contents.  
Read/Write accessible only  
when the STOP bit in CSR0 is  
set. Unaffected by RESET.  
STOP is set by writing a “1” or by  
RESET. Writing a “0” has no ef-  
fect. STOP is cleared by setting  
either STRT or INIT.  
CSR3: Interrupt Masks and Deferral Control  
1
STRT  
STRT  
assertion  
enables  
PCnet-ISA+ controller to send  
and receive frames, and perform  
buffer management operations.  
Setting STRT clears the STOP  
bit. If STRT and INIT are set to-  
gether, PCnet-ISA+ controller  
initialization will be performed  
first.  
Bit  
Name  
Description  
15  
RES  
Reserved location. Written as  
zero and read as undefined.  
14  
BABLM  
Babble Mask. If BABLM is set,  
the BABL bit in CSR0 will be  
masked and will not set INTR flag  
in CSR0.  
STRT is set by writing a “1”. Writ-  
ing a “0” has no effect. STRT is  
cleared by RESET or by setting  
the STOP bit.  
BABLM is cleared by RESET and  
is not affected by STOP.  
13  
12  
RES  
Reserved location. Written as  
zero and read as undefined.  
0
INIT  
INIT assertion enables PCnet-  
ISA+ controller to begin the  
initialization procedure which  
reads in the initialization block  
from memory. Setting INIT clears  
the STOP bit. If STRT and INIT  
are set together, PCnet-ISA+  
controller initialization will be per-  
formed first. INIT is not cleared  
when the initialization sequence  
has completed.  
MISSM  
Missed Frame Mask. If MISSM is  
set, the MISS bit in CSR0 will be  
masked and will not set INTR flag  
in CSR0.  
MISSM is cleared by RESET and  
is not affected by STOP.  
11  
10  
9
MERRM  
RINTM  
TINTM  
IDONM  
RES  
Memory Error Mask. If MERRM  
is set, the MERR bit in CSR0 will  
be masked and will not set INTR  
flag in CSR0.  
INIT is set by writing a “1”. Writing  
a “0” has no effect. INIT is cleared  
by RESET or by setting the  
STOP bit.  
MERRM is cleared by RESET  
and is not affected by STOP.  
Receive Interrupt Mask. If  
RINTM is set, the RINT bit in  
CSR0 will be masked and will not  
set INTR flag in CSR0.  
CSR1: IADR[15:0]  
Bit Name  
RINTM is cleared by RESET and  
is not affected by STOP.  
Description  
Transmit Interrupt Mask. If  
TINTM is set, the TINT bit in  
CSR0 will be masked and will not  
set INTR flag in CSR0.  
15-0 IADR [15:0]  
Lower address of the Initializa-  
tion address register. Bit location  
0 must be zero. Whenever this  
register is written, CSR16 is up-  
dated with CSR1’s contents.  
TINTM is cleared by RESET and  
is not affected by STOP.  
Read/Write accessible only  
when the STOP bit in CSR0 is  
set. Unaffected by RESET.  
8
Initialization Done Mask. If  
IDONM is set, the IDON bit in  
CSR0 will be masked and will not  
set INTR flag in CSR0.  
CSR2: IADR[23:16]  
IDONM is cleared by RESET and  
is not affected by STOP.  
Bit  
Name  
Description  
7-6  
Reserved locations. Written as  
zero and read as undefined.  
15-8  
RES  
Reserved locations. Read and  
written as zero.  
1-551  
Am79C961  
AMD  
LAPPEN  
P R E L I M I N A R Y  
Look Ahead Packet Processing  
5
the PCnet-ISA+ controller, then  
the PCnet-ISA+ controller will  
stop advancing through the ring  
entries and begin periodic polling  
of this entry. When the STP bit is  
found to be true, and the descrip-  
tor that contains this setting is  
owned by the PCnet-ISA+ con-  
troller, then the PCnet-ISA+  
controller will stop advancing  
through the ring entries, store the  
descriptor information that is has  
just read, and wait for the next re-  
ceive to arrive.  
(LAPPEN) . When set to a one,  
the LAPPEN bit will cause the  
PCnet-ISA+ controller to gener-  
ate an interrupt following the  
descriptor write operation to the  
first buffer of a receive packet.  
This interrupt will be generated in  
addition to the interrupt that is  
generated following the descrip-  
tor write operation to the last  
buffer of a receive packet. The in-  
terrupt will be signaled through  
the RINT bit of CSR0.  
Setting LAPPEN to a one also  
enables the PCnet-ISA+ control-  
ler to read the STP bit of the  
receive descriptors. PCnet-ISA+  
controller will use STP informa-  
tion to determine where it should  
begin writing a receive packet’s  
data. Note that while in this  
mode, the PCnet-ISA+ controller  
can write intermediate packet  
data to buffers whose descriptors  
do not contain STP bits set to  
one. Following the write to the  
last descriptor used by a packet,  
the PCnet-ISA+ controller will  
scan through the next descriptor  
entries to locate the next STP  
bit that is set to a one. The  
PCnet-ISA+ controller will begin  
writing the next packet’s data to  
the buffer pointed to by that  
descriptor.  
This behavior allows the host  
software to pre-assign buffer  
space in such a manner that the  
“header” portion of a receive  
packet will always be written to a  
particular memory area, and the  
“data” portion of a receive packet  
will always be written to a sepa-  
rate memory area. The interrupt  
is generated when the “header”  
bytes have been written to the  
“header” memory area.  
Read/Write accessible always.  
The LAPPEN bit will be reset  
zero by RESET and will unaf-  
fected by the STOP. See  
Appendix E for more information  
on LAPP.  
4
3
DXMT2PD  
Disable Transmit Two Part  
Deferral. (Described in the Media  
Access Management section). If  
DXMT2PD is set, Transmit Two  
Part Deferral will be disabled.  
Note that because several de-  
scriptors may be allocated by the  
host for each packet, and not all  
messagesmayneedallofthede-  
scriptors that are allocated  
between descriptors that contain  
STP = one, then some descrip-  
tors/buffers may be skipped in  
the ring. While performing the  
search for the next STP bit that is  
set to one, the PCnet-ISA+ con-  
troller will advance through the  
receive descriptor ring regard-  
less of the state of ownership  
bits. If any of the entries that are  
examined during this search indi-  
cate PCnet-ISA+ will RESET the  
OWN bit to zero in these entries.  
If a scanned entry indicates host  
ownership with STP=“0”, then  
the PCnet-ISA+ controller will not  
alter the entry, but will advance to  
the next entry.  
DXMT2PD is cleared by RESET  
and is not affected by STOP.  
EMBA  
Enable  
Modified  
Back-off  
Algorithm. If EMBA is set, a modi-  
fied back-off algorithm is  
implemented as described in the  
Media Access Management  
section.  
Read/Write accessible. EMBA is  
cleared by RESET and is not af-  
fected by STOP.  
2-0  
RES  
Reserved locations. Written as  
zero and read as undefined.  
CSR4: Test and Features Control  
Bit  
Name  
Description  
15  
ENTST  
Enable Test Mode operation.  
When ENTST is set, writing to  
test mode registers CSR124 and  
CSR126 is allowed, and other  
When the STP bit is found to be  
true, but the descriptor that con-  
tains this setting is not owned by  
1-552  
Am79C961  
P R E L I M I N A R Y  
register test functions are en-  
AMD  
This bit indicates the MFC  
(CSR112) has overflowed. Can  
be cleared by writing a “1” to this  
bit. Also cleared by RESET or  
setting the STOP bit. Writing a “0”  
has no effect.  
abled. In order to set ENTST, it  
must be written with a “1” during  
the first write access to CSR4  
after RESET. Once a “0” is  
written to this bit location, ENTST  
cannot be set until after the  
PCnet-ISA+ controller is reset.  
8
MFCOM  
Missed Frame Counter Overflow  
Mask.  
ENTST is cleared by RESET.  
If MFCOM is set, MFCO will not  
set INTR in CSR0.  
14 DMAPLUS  
When DMAPLUS = “1” , the burst  
transaction counter in CSR80 is  
disabled. If DMAPLUS = “0”, the  
burst transaction counter is  
enabled.  
MFCOM is set by Reset and is  
not affected by STOP.  
7-6  
5
RES  
Reserved locations. Read and  
written as zero.  
DMA-PLUS is cleared by  
RESET.  
RCVCCO  
Receive Collision Counter Over-  
flow.  
13  
12  
TIMER  
DPOLL  
Timer Enable Register. If TIMER  
is set, the Bus Timer Register,  
CSR82, is enabled. If TIMER is  
set, CSR82 must be written with  
a value. If TIMER is cleared, the  
Bus Timer Register is disabled.  
This bit indicates the Receive  
Collision Counter (CSR114) has  
overflowed. It can be cleared by  
writing a 1 to this bit. Also cleared  
by RESET or setting the STOP  
bit. Writing a 0 has no effect.  
TIMER is cleared by RESET.  
4
3
RCVCCOM  
TXSTRT  
Receive Collision Counter Over-  
flow Mask.  
Disable Transmit Polling. If  
DPOLL is set, the Buffer Man-  
agement Unit will disable  
transmit polling. Likewise, if  
DPOLL is cleared, automatic  
transmit polling is enabled. If  
DPOLL is set, TDMD bit in CSR0  
must be periodically set in order  
to initiate a manual poll of a trans-  
mit descriptor. Transmit descrip-  
tor polling will not take place if  
TXON is reset.  
If RCVCCOM is set, RCVCCO  
will not set INTR in CSR0.  
RCVCCOM is set by RESET and  
is not affected by STOP.  
Transmit Start status is set when-  
ever  
PCnet-ISA+  
controller  
begins trans- mission of a frame.  
When TXSTRT is set, IRQ is as-  
serted if IENA = 1 and the mask  
bit TXSTRTM (CSR4.2) is clear.  
DPOLL is cleared by RESET.  
TXSTRT is set by the MAC Unit  
and cleared by writing a “1”, set-  
ting RESET or setting the STOP  
bit. Writing a “0” has no effect.  
11 APAD_XMT  
Auto Pad Transmit. When set,  
APAD_XMT enables the auto-  
matic padding feature. Transmit  
frames will be padded to extend  
them to 64 bytes, including FCS.  
The FCS is calculated for the en-  
tire frame (including pad) and  
appended after the pad field.  
APAD_XMT will override the pro-  
gramming of the DXMTFCS bit  
(CSR15.3).  
2
1
TXSTRTM  
Transmit  
Start  
Mask.  
If  
TXSTRTM is set, the TXSTRT bit  
in CSR4 will be masked and will  
not set INTR flag in CSR0.  
TXS-TRTM is set by RESET and  
is not affected by STOP.  
JAB  
Jabber Error is set when the  
PCnet-ISA+ controller Twisted-  
pair MAU function exceeds an  
allowed transmission limit. Jab-  
ber is set by the TMAU cell and  
can only be asserted in  
10BASE-T mode.  
APAD_ XMT is reset by activa-  
tion of the RESET pin.  
10 ASTRP_RCV  
ASTRP_RCV enables the auto-  
matic pad stripping feature. The  
pad and FCS fields will be  
stripped from receive frames and  
not placed in the FIFO.  
When JAB is set, IRQ is asserted  
if IENA = 1 and the mask bit  
JABM (CSR4.4) is clear.  
ASTRP_ RCV is reset by activa-  
tion of the RESET pin.  
9
MFCO  
Missed Frame Counter Overflow  
Interrupt.  
1-553  
Am79C961  
AMD  
P R E L I M I N A R Y  
The JAB bit can be reset even if CSR9: Logical Address Filter, LADRF[31:16]  
the jabber condition is still  
present.  
Bit  
Name  
Description  
JAB is set by the TMAU circuit  
and cleared by writing a “1”. Writ-  
ing a “0” has no effect. JAB is also  
cleared by RESET or setting the  
STOP bit.  
15-0 LADRF[31:16] Logical  
Address  
Filter,  
LADRF[31:16]. Undefined until  
initialized either automatically by  
loading the initialization block or  
directly by an I/O write to this  
register.  
0
JABM  
Jabber Error Mask. If JABM is  
set, the JAB bit in CSR4 will be  
masked and will not set INTR flag  
in CSR0.  
Read/write accessible only when  
STOP bit is set.  
JABM is set by RESET and is not  
affected by STOP.  
CSR10: Logical Address Filter, LADRF[47:32]  
CSR6: RCV/XMT Descriptor Table Length  
Bit  
Name  
Description  
Bit  
Name  
Description  
15-0 LADRF[47:32] Logical  
Address  
Filter,  
LADRF[47:32]. Undefined until  
initialized either automatically by  
loading the initialization block or  
directly by an I/O write to this  
register.  
15-12 TLEN  
Contains a copy of the transmit  
encoded ring length (TLEN) field  
read from the initialization block  
during PCnet-ISA+ controller in-  
itialization. This field is written  
during the PCnet-ISA+ controller  
initialization routine.  
Read/write accessible only when  
STOP bit is set.  
Read accessible only when  
STOP bit is set. Write operations  
have no effect and should not be  
performed. TLEN is only defined  
after initialization.  
CSR11: Logical Address Filter, LADRF[63:48]  
Bit  
Name  
Description  
15-0 LADRF[63:48] Logical  
Address  
Filter,  
11-8 RLEN  
Contains a copy of the receive  
encoded ring length (RLEN) read  
from the initialization block dur-  
ing PCnet-ISA+ controller initiali-  
zation. This field is written during  
the PCnet-ISA+ controller initiali-  
zation routine.  
LADRF[63:48]. Undefined until  
initialized either automatically by  
loading the initialization block or  
directly by an I/O write to this  
register.  
Read/write accessible only when  
STOP bit is set.  
Read accessible only when  
STOP bit is set. Write operations  
have no effect and should not be  
performed. RLEN is only defined  
after initialization.  
CSR12: Physical Address Register, PADR[15:0]  
Bit  
Name  
Description  
7-0  
RES  
Reserved locations. Read as  
zero. Write operations should not  
be performed.  
15-0 PADR[15:0]  
Physical Address Register,  
PADR[15:0]. Undefined until in-  
itialized either automatically by  
loading the initialization block or  
directly by an I/O write to this  
register. The PADR bits are  
transmitted PADR[0] first and  
PADR[47] last.  
CSR8: Logical Address Filter, LADRF[15:0]  
Bit Name Description  
15-0 LADRF[15:0] Logical Address Filter, LADRF  
[15:0]. Undefined until initialized  
Read/write accessible only when  
STOP bit is set.  
either automatically by loading  
the initialization block or directly  
by an I/O write to this register.  
Read/write accessible only when  
STOP bit is set.  
1-554  
Am79C961  
P R E L I M I N A R Y  
CSR13: Physical Address Register, PADR[31:16]  
Bit Name Description  
AMD  
node ID) of the PCnet-ISA+ con-  
troller will be disabled. Frames  
addressed to the nodes individ-  
ual physical address will not be  
recognized (although the frame  
may be accepted by the EADI  
mechanism).  
15-0 PADR[31:16] Physical Address Register,  
PADR[31:16]. Undefined until in-  
itialized either automatically by  
loading the initialization block or  
directly by an I/O write to this  
register. The PADR bits are  
transmitted PADR[0] first and  
PADR[47] last.  
Read/write accessible only when  
STOP bit is set.  
12 DLNKTST  
Disable Link Status. When  
DLNKTST = “1”, monitoring of  
Link Pulses is disabled. When  
DLNKTST = “0”, monitoring of  
Link Pulses is enabled. This bit  
only has meaning when the  
10BASE-T network interface is  
selected.  
Read/write accessible only when  
STOP bit is set.  
CSR14: Physical Address Register, PADR[47:32]  
Bit  
Name  
Description  
Read/write accessible only when  
STOP bit is set.  
15-0 PADR[47:32] Physical Address Register,  
PADR[47:32]. Undefined until in-  
itialized either automatically by  
loading the initialization block or  
directly by an I/O write to this  
register. The PADR bits are  
transmitted PADR[0] first and  
PADR[47] last.  
11  
DAPC  
Disable Automatic Polarity Cor-  
rection. When DAPC = “1”, the  
10BASE-T receive polarity rever-  
sal algorithm is disabled.  
Likewise, when DAPC = “0”, the  
polarity reversal algorithm is en-  
abled.  
Read/write accessible only when  
STOP bit is set.  
This bit only has meaning when  
the 10BASE-T network interface  
is selected.  
CSR15: Mode Register  
Read/write accessible only when  
STOP bit is set.  
Bit  
Name  
Description  
10 MENDECL  
MENDEC Loopback Mode. See  
the description of the LOOP bit in  
CSR15.  
This register’s fields are loaded  
during the PCnet-ISA+ controller  
initialization routine with the cor-  
responding Initialization Block  
values. The register can also be  
loaded directly by an I/O write.  
Activating the RESET pin clears  
all bits of CSR15 to zero.  
Read/write accessible only when  
STOP bit is set.  
9
LRT/TSEL  
LRT  
Low Receive Threshold (T-MAU  
Mode only)  
Transmit Mode Select (AUI  
Mode only)  
15  
14  
PROM  
Promiscuous Mode.  
When PROM = “1”, all incoming  
receive frames are accepted.  
Low Receive Threshold. When  
LRT = “1”, the internal twisted  
pair receive thresholds are re-  
duced by 4.5 dB below the  
standard 10BASE-T value (ap-  
proximately 3/5) and the  
unsquelch threshold for the RXD  
circuit will be 180-312 mV peak.  
Read/write accessible only when  
STOP bit is set.  
DRCVBC  
DisableReceiveBroadcast.When  
set, disables the PCnet-ISA+  
controller from receiving broad-  
cast messages. Used for  
protocols that do not support  
broadcast addressing, except as  
a function of multicast. DRCVBC  
is cleared by activation of the  
RESET pin (broadcast mes-  
sages will be received).  
When LRT = “0”, the unsquelch  
threshold for the RXD circuit will  
be the standard 10BASE-T  
value, 300-520 mV peak.  
In either case, the RXD circuit  
post squelch threshold will be  
one half of the unsquelch  
threshold.  
Read/write accessible only when  
STOP bit is set.  
This bit only has meaning when  
the 10BASE-T network interface  
is selected.  
13  
DRCVPA  
Disable Receive Physical Ad-  
dress. When set, the physical  
address detection (Station or  
1-555  
Am79C961  
AMD  
P R E L I M I N A R Y  
Read/write accessible only when 4  
FCOLL  
Force Collision. This bit allows  
the collision logic to be tested.  
PCnet-ISA+ controller must be in  
internal loopback for FCOLL to  
be valid. If FCOLL = “1”, a colli-  
sion will be forced during  
loopback transmission attempts;  
a Retry Error will ultimately re-  
sult. If FCOLL = “0”, the Force  
Collision logic will be disabled.  
STOP bit is set. Cleared by  
RESET.  
TSEL  
Transmit Mode Select. TSEL  
controls the levels at which the  
AUI drivers rest when the AUI  
transmit port is idle. When TSEL  
= 0, DO+ and DO- yield “zero” dif-  
ferential to operate transformer  
coupled loads (Ethernet 2 and  
802.3). When TSEL = 1, the DO+  
idles at a higher value with re-  
spect to DO- , yielding a logical  
HIGH state (Ethernet 1).  
Read/write accessible only when  
STOP bit is set.  
3
DXMTFCS  
Disable Transmit CRC (FCS).  
When DXMTFCS = 0, the trans-  
mitter will generate and append a  
FCS to the transmitted frame.  
When DXMTFCS = 1, the FCS  
logic is allocated to the receiver  
and no FCS is generated or sent  
with the transmitted frame.  
This bit only has meaning when  
the AUI network interface is  
selected. Not available under  
Auto-Select Mode.  
Read/write accessible only when  
STOP bit is set. Cleared by  
RESET.  
See also the ADD_FCS bit in  
TMD1. If DXMTFCS is set, no  
FCS will be generated. If both  
DXMTFCS is set and ADD_FCS  
is clear for a particular frame, no  
FCS will be generated. If  
ADD_FCS is set for a particular  
frame, the state of DXMTFCS is  
ignored and a FCS will be ap-  
pended on that frame by the  
transmit circuitry.  
8-7 PORTSEL  
[1:0]  
Port Select bits allow for software  
controlled selection of the net-  
work medium. PORTSEL active  
only when Media-Select Bit set to  
0 in ISACSR2.  
Read/write accessible only when  
STOP bit is set. Cleared by  
RESET.  
The network port configuration  
are as follows:  
In loopback mode, this bit deter-  
mines if the transmitter appends  
FCS or if the receiver checks the  
FCS.  
PORTSEL[1:0]  
Network Port  
AUI  
0 0  
0 1  
1 0  
1 1  
This bit was called DTCR in the  
LANCE (Am7990).  
10BASE-T  
GPSI*  
Read/write accessible only when  
STOP bit is set.  
Reserved  
*Refer to the section on General Purpose Serial Interface for  
detailed information on accessing GPSI.  
2
LOOP  
Loopback  
Enable  
allows  
PCnet-ISA+ controller to operate  
in full duplex mode for test pur-  
6
INTL  
Internal Loopback. See the de-  
scription of LOOP, CSR15.2.  
poses. When LOOP  
= “1”,  
loopback is enabled. In combina-  
tion with INTL and MENDECL,  
various loopback modes are de-  
fined as follows:  
Read/write accessible only when  
STOP bit is set.  
5
DRTY  
Disable Retry. When DRTY = “1”,  
PCnet-ISA+ controller will at-  
tempt only one transmission. If  
DRTY = “0”, PCnet-ISA+ control-  
ler will attempt to transmit 16  
times before signaling a retry  
error.  
Read/write accessible only when  
STOP bit is set.  
1-556  
Am79C961  
P R E L I M I N A R Y  
AMD  
This register is an alias of CSR2.  
Whenever this register is written,  
CSR2 is updated with CSR17’s  
contents.  
LOOP INTL MENDECL  
Loopback Mode  
Non-loopback  
0
1
1
X
0
1
X
X
0
External Loopback  
Read/Write accessible only  
when the STOP bit in CSR0 is  
set. Unaffected by RESET.  
Internal Loopback Include  
MENDEC  
1
1
1
Internal Loopback Exclude  
MENDEC  
CSR18-19: Current Receive Buffer Address  
Bit  
Name  
Description  
Read/write accessible only when  
STOP bit is set. LOOP is cleared  
by RESET.  
31-24 RES  
23-0 CRBA  
Reserved locations. Written as  
zero and read as undefined.  
Contains the current receive  
buffer address to which the  
PCnet-ISA+ controller will store  
incoming frame data.  
1
DTX  
Disable Transmit. If this bit is set,  
the PCnet-ISA+ controller will not  
access the Transmit Descriptor  
Ring and, therefore, no transmis-  
sions will occur. DTX = “0” will set  
TXON bit (CSR0.4) after STRT  
(CSR0.1) is asserted. DTX is de-  
fined after the initialization block  
is read.  
Read/write accessible only when  
STOP bit is set.  
CSR20-21: Current Transmit Buffer Address  
Read/write accessible only when  
STOP bit is set.  
Bit  
Name  
Description  
0
DRX  
Disable Receiver. If this bit is set,  
the PCnet-ISA+ controller will not  
access the Receive Descriptor  
Ring and, therefore, all receive  
frame data are ignored. DRX =  
“0” will set RXON bit (CSR0.5) af-  
ter STRT (CSR0.1) is asserted.  
DRX is defined after the initializa-  
tion block is read.  
31-24 RES  
23-0 CXBA  
Reserved locations. Written as  
zero and read as undefined.  
Contains the current transmit  
buffer address from which the  
PCnet-ISA+ controlleristransmit-  
ting.  
Read/write accessible only when  
STOP bit is set.  
Read/write accessible only when  
STOP bit is set.  
CSR22-23: Next Receive Buffer Address  
CSR16: Initialization Block Address Lower  
Bit  
Name  
Description  
Bit  
Name  
Description  
31-24 RES  
23-0 NRBA  
Reserved locations. Written as  
zero and read as undefined.  
15-0  
IADR  
Lower 16 bits of the address of  
the Initialization Block. Bit loca-  
tion 0 must be zero. This register  
is an alias of CSR1. Whenever  
this register is written, CSR1 is  
updated with CSR16’s contents.  
Contains the next receive buffer  
address to which the PCnet-ISA+  
controller will store incoming  
frame data.  
Read/write accessible only when  
STOP bit is set.  
Read/Write accessible only  
when the STOP bit in CSR0 is  
set. Unaffected by RESET.  
CSR24-25: Base Address of Receive Ring  
CSR17: Initialization Block Address Upper  
Bit  
Name  
Description  
Bit  
Name  
Description  
31-24 RES  
23-0 BADR  
Reserved locations. Written as  
zero and read as undefined.  
15-8  
RES  
Reserved locations. Written as  
zero and read as undefined.  
Contains the base address of the  
Receive Ring.  
7-0  
IADR  
Upper 8 bits of the address of the  
Initialization Block. Bit locations  
15-8 must be written with zeros.  
Read/write accessible only when  
STOP bit is set.  
1-557  
Am79C961  
AMD  
P R E L I M I N A R Y  
CSR36-37: Next Next Receive Descriptor Address  
CSR26-27: Next Receive Descriptor Address  
Bit  
Name  
Description  
Bit  
Name  
Description  
31-24 RES  
23-0 NRDA  
Reserved locations. Written as  
zero and read as undefined.  
31-0 NNRDA  
Contains the next next RDRE ad-  
dress pointer.  
Contains the next RDRE address  
pointer.  
Read/write accessible only when  
STOP bit is set.  
Read/write accessible only when  
STOP bit is set.  
CSR38-39: NextNextTransmitDescriptor Address  
Bit  
Name  
Description  
CSR28-29: Current Receive Descriptor Address  
31-0 NNXDA  
Contains the next next TDRE ad-  
dress pointer.  
Bit  
Name  
Description  
Read/write accessible only when  
STOP bit is set.  
31-24 RES  
23-0 CRDA  
Reserved locations. Written as  
zero and read as undefined.  
Contains the current RDRE ad-  
dress pointer.  
CSR40-41: Current Receive Status and Byte  
Count  
Read/write accessible only when  
STOP bit is set.  
Bit  
Name  
Description  
31-24 CRST  
Current Receive Status. This  
field is a copy of bits 15:8 of  
RMD1 of the current receive  
descriptor.  
CSR30-31: Base Address of Transmit Ring  
Bit  
Name  
Description  
Read/write accessible only when  
STOP bit is set.  
31-24 RES  
23-0 BADX  
Reserved locations. Written as  
zero and read as undefined.  
23-12 RES  
11-0 CRBC  
Reserved locations. Written as  
zero and read as undefined.  
Contains the base address of the  
Transmit Ring.  
Current Receive Byte Count.  
This field is a copy of the BCNT  
field of RMD2 of the current re-  
ceive descriptor.  
Read/write accessible only when  
STOP bit is set.  
CSR32-33: Next Transmit Descriptor Address  
Read/write accessible only when  
STOP bit is set.  
Bit  
Name  
Description  
31-24 RES  
23-0 NXDA  
Reserved locations. Written as  
zero and read as undefined.  
CSR42-43: Current Transmit Status and Byte  
Count  
Contains the next TDRE address  
pointer.  
Bit  
Name  
Description  
Read/write accessible only when  
STOP bit is set.  
31-24 CXST  
Current Transmit Status. This  
field is a copy of bits 15:8 of  
TMD1 of the current transmit  
descriptor.  
CSR34-35: Current Transmit Descriptor Address  
Read/write accessible only when  
STOP bit is set.  
Bit  
Name  
Description  
23-12 RES  
11-0 CXBC  
Reserved locations. Written as  
zero and read as undefined.  
31-24 RES  
23-0 CXDA  
Reserved locations. Written as  
zero and read as undefined.  
Current Transmit Byte Count.  
This field is a copy of the BCNT  
field of TMD2 of the current trans-  
mit descriptor.  
Contains the current TDRE ad-  
dress pointer.  
Read/write accessible only when  
STOP bit is set.  
1-558  
Am79C961  
P R E L I M I N A R Y  
Read/write accessible only when  
AMD  
polling interval of 32,768 XTAL1  
periods. The POLINT value of  
0000 is created during the  
microcode initialization routine,  
and therefore might not be seen  
when reading CSR47 after  
RESET.  
STOP bit is set.  
CSR44-45: Next Receive Status and Byte Count  
Bit  
Name  
Description  
31-24 NRST  
Next Receive Status. This field is  
a copy of bits 15:8 of RMD1 of the  
next receive descriptor.  
If the user desires to program a  
value for POLLINT other than the  
default, then the correct proce-  
dure is to first set INIT only in  
CSR0. Then, when the initializa-  
tion sequence is complete, the  
user must set STOP in CSR0.  
Then the user may write to  
CSR47 and then set STRT in  
CSR0. In this way, the default  
value of 0000 in CSR47 will be  
overwritten with the desired user  
value.  
Read/write accessible only when  
STOP bit is set.  
23-12 RES  
11-0 NRBC  
Reserved locations. Written as  
zero and read as undefined.  
Next Receive Byte Count. This  
field is a copy of the BCNT field of  
RMD2 of the next receive  
descriptor.  
Read/write accessible only when  
STOP bit is set.  
Read/write accessible only when  
STOP bit is set.  
CSR46: Poll Time Counter  
CSR48-49: Temporary Storage  
Bit  
Name  
Description  
Bit  
Name  
Description  
15-0  
POLL  
Poll Time Counter. This counter  
is  
incremented  
by  
the  
31-0 TMP0  
Temporary Storage location.  
PCnet-ISA+ controller microcode  
and is used to trigger the descrip-  
tor ring polling operation of the  
PCnet-ISA+ controller.  
Read/write accessible only when  
STOP bit is set.  
CSR50-51: Temporary Storage  
Read/write accessible only when  
STOP bit is set.  
Bit  
Name  
Description  
CSR47: Polling Interval  
Bit Name  
31-0 TMP1  
Temporary Storage location.  
Read/write accessible only when  
STOP bit is set.  
Description  
31-16 RES  
Reserved locations. Written as  
zero and read as undefined.  
CSR52-53: Temporary Storage  
15-0 POLLINT  
Polling Interval. This register  
contains the time that the  
PCnet-ISA+ controller will wait  
between successive polling op-  
erations. The POLLINT value is  
expressed as the two’s comple-  
ment of the desired interval,  
where each bit of POLLINT rep-  
resents one-half of an XTAL1  
period of time. POLLINT[3:0] are  
ignored. (POLINT[16] is implied  
to be a one, so POLLINT[15] is  
significant, and does not repre-  
sent the sign of the two’s  
complement POLLINT value.)  
Bit  
Name  
Description  
31-0 TMP2  
Temporary Storage location.  
Read/write accessible only when  
STOP bit is set.  
CSR54-55: Temporary Storage  
Bit  
Name  
Description  
31-0 TMP3  
Temporary Storage location.  
Read/write accessible only when  
STOP bit is set.  
The default value of this register  
is 0000. This corresponds to a  
1-559  
Am79C961  
AMD  
P R E L I M I N A R Y  
CSR64-65: Next Transmit Buffer Address  
CSR56-57: Temporary Storage  
Bit  
Name  
Description  
Bit  
Name  
Description  
31-0 TMP4  
Temporary Storage location.  
31-24 RES  
23-0 NXBA  
Reserved locations. Written as  
zero and read as undefined.  
Read/write accessible only when  
STOP bit is set.  
Contains the next transmit buffer  
address  
from  
which  
the  
PCnet-ISA+ controller will trans-  
mit an outgoing frame.  
CSR58-59: Temporary Storage  
Read/write accessible only when  
STOP bit is set.  
Bit  
Name  
Description  
31-0 TMP5  
Temporary Storage location.  
Read/write accessible only when  
STOP bit is set.  
CSR66-67: Next Transmit Status and Byte Count  
Bit  
Name  
Description  
CSR60-61: Previous Transmit Descriptor Address  
31-24 NXST  
Next Transmit Status. This field  
is a copy of bits 15:8 of TMD1 of  
the next transmit descriptor.  
Bit  
Name  
Description  
Read/write accessible only when  
STOP bit is set.  
31-24 RES  
23-0 PXDA  
Reserved locations. Written as  
zero and read as undefined.  
23-12 RES  
11-0 NXBC  
Reserved locations. Written as  
zero and read as undefined.  
Contains the previous TDRE ad-  
dress pointer. The PCnet-ISA+  
controller has the capability to  
stack multiple transmit frames.  
AccessibleonlywhenSTOPbitis  
set.  
Next Transmit Byte Count. This  
field is a copy of the BCNT field of  
TMD2 of the next transmit  
descriptor.  
Read/write accessible only when  
STOP bit is set.  
CSR62-63: Previous Transmit Status and Byte  
Count  
Read/write accessible only when  
STOP bit is set.  
Bit  
Name  
Description  
CSR68-69: Transmit Status Temporary Storage  
31-24 PXST  
Previous Transmit Status. This  
field is a copy of bits 15:8 of  
TMD1 of the previous transmit  
descriptor.  
Bit  
Name  
Description  
31-0 XSTMP  
Transmit Status Temporary Stor-  
age location.  
Read/write accessible only when  
STOP bit is set.  
Read/write accessible only when  
STOP bit is set.  
23-12 RES  
11-0 PXBC  
Reserved locations. Written as  
zero and read as undefined.  
CSR70-71: Temporary Storage  
AccessibleonlywhenSTOPbitis  
set.  
Bit  
Name  
Description  
Previous Transmit Byte Count.  
This field is a copy of the BCNT  
field of TMD2 of the previous  
transmit descriptor.  
31-0 TMP8  
Temporary Storage location.  
Read/write accessible only when  
STOP bit is set.  
Read/write accessible only when  
STOP bit is set.  
1-560  
Am79C961  
P R E L I M I N A R Y  
AMD  
CSR72: Receive Ring Counter  
Bit Name Description  
can be manually altered; the ac-  
tual transmit ring length is  
defined by the current value in  
this register.  
15-0 RCVRC  
Receive Ring Counter location.  
Contains a Two’s complement  
binary number used to number  
the current receive descriptor.  
This counter interprets the value  
in CSR76 as pointing to the first  
descriptor; a two’s complement  
value of -1 (FFFFh) corresponds  
to the last descriptor in the ring.  
Read/write accessible only when  
STOP bit is set.  
CSR80: Burst and FIFO Threshold Control  
Bit  
Name  
Description  
15-14 RES  
Reserved locations. Read as  
ones. Written as zero.  
Read/write accessible only when  
STOP bit is set.  
13-12RCVFW[1:0]  
Receive  
FIFO  
Watermark.  
RCVFW controls the point at  
which ISA bus receive DMA is re-  
quested in relation to the number  
of received bytes in the receive  
FIFO. RCVFW specifies the  
number of bytes which must be  
present (once the frame has  
been verified as a non-runt) be-  
fore receive DMA is requested.  
Note however that in order for re-  
ceive DMA to be performed for a  
new frame, at least 64 bytes must  
have been received. This effec-  
tively avoids having to react to  
receive frames which are runts or  
suffer a collision during the slot  
time (512 bit times). If the Runt  
Packet Accept feature is en-  
abled, receive DMA will be  
requested as soon as either the  
RCVFW threshold is reached, or  
a complete valid receive frame is  
detected (regardless of length).  
RCVFW is set to a value of 10b  
(64 bytes) after RESET.  
CSR74: Transmit Ring Counter  
Bit  
Name  
Description  
15-0 XMTRC  
Transmit Ring Counter location.  
Contains a Two’s complement  
binary number used to number  
the current transmit descriptor.  
This counter interprets the value  
in CSR78 as pointing to the first  
descriptor; a two’s complement  
value of -1 (FFFFh) corresponds  
to the last descriptor in the ring.  
Read/write accessible only when  
STOP bit is set.  
CSR76: Receive Ring Length  
Bit Name  
Description  
15-0 RCVRL  
Receive Ring Length. Contains  
the Two’s complement of the re-  
ceive descriptor ring length. This  
register is initialized during the  
PCnet-ISA+ controller initializa-  
tion routine based on the value in  
the RLEN field of the initialization  
block. This register can be manu-  
ally altered; the actual receive  
ring length is defined by the cur-  
rent value in this register.  
Read/write accessible only when  
STOP bit is set.  
RCVFW[1:0]  
Bytes Received  
00  
01  
10  
11  
16  
32  
64  
Reserved  
Read/write accessible only when  
STOP bit is set.  
11-10XMTSP[1:0]  
Transmit Start Point. XMTSP  
controls the point at which pre-  
amble transmission attempts  
commence in relation to the num-  
ber of bytes written to the  
transmit FIFO for the current  
transmit frame. When the entire  
frame is in the FIFO, transmis-  
sion will start regardless of the  
value in XMTSP. XMTSP is given  
a value of 10b (64 bytes) after  
RESET. Regardless of XMTSP,  
the FIFO will not internally over  
CSR78: Transmit Ring Length  
Bit Name  
Description  
15-0 XMTRL  
Transmit Ring Length. Contains  
the two’s complement of the  
transmit descriptor ring length.  
This register is initialized during  
the  
PCnet-ISA+  
controller  
initialization routine based on the  
value in the TLEN field of the  
initialization block. This register  
1-561  
Am79C961  
AMD  
P R E L I M I N A R Y  
write its data until at least 64  
number of transfers specified in  
DMABR have occured.  
bytes (or the entire frame if <64  
bytes) have been transmitted  
onto the network. This ensures  
that for collisions within the slot  
time window, transmit data need  
not be re-written to the transmit  
FIFO, and re-tries will be handled  
autonomously by the MAC. This  
bit is read/write accessible only  
when the STOP bit is set.  
Read/write accessible only when  
STOP bit is set.  
CSR82: Bus Activity Timer  
Bit Name  
Description  
15-0 DMABAT  
Bus Activity Timer. If the TIMER  
bit in CSR4 is set, this register  
contains the maximum allowable  
time that the PCnet-ISA+ control-  
ler will take up on the system bus  
during FIFO data transfers in  
each bus mastership period. The  
DMABAT starts counting upon  
receipt of DACK from the host  
system. The DMABAT Register  
does not limit the number of  
XMTSP[1:0]  
Bytes Written  
00  
01  
10  
11  
4
16  
64  
112  
9-8 XMTFW[1:0]  
Transmit FIFO Watermark.  
XMTFW specifies the point at  
which transmit DMA stops,  
based upon the number of write  
cycles that could be performed to  
the transmit FIFO without FIFO  
overflow. Transmit DMA is al-  
lowed at any time when the  
number of write cycles specified  
by XMTFW could be executed  
without causing transmit FIFO  
overflow. XMTFW is set to a  
value of 00b (8 cycles) after hard-  
transfers  
transfers.  
during  
Descriptor  
A value of zero will limit the  
PCnet-ISA+ controller to one bus  
cycle per mastership period. A  
non-zero value is interpreted as  
an unsigned number with a reso-  
lution of 100 ns. For instance, a  
value of 51µs would be pro-  
grammed with a value of 510.  
When the TIMER bit in CSR4 is  
set, DMABAT is enabled and  
must be initialized by the user.  
The DMABAT register is unde-  
fined until written.  
ware  
RESET.  
Read/write  
accessible only when STOP bit is  
set.  
XMTFW[1:0]  
Write Cycles  
When the Bus Activity Timer reg-  
ister (CSR82: DMABAT) is  
enabled, the PCnet-ISA+ con-  
trol- ler will relinquish the bus  
when either the time specified in  
DMABAT has elapsed or the  
number of transfers specified in  
DMABR have occured. When  
ENTST (CSR4.15) is asserted,  
all writes to this register will auto-  
matically perform a decrement  
cycle.  
00  
01  
10  
11  
8
16  
32  
Reserved  
7-0  
DMABR  
DMA Burst Register. This regis-  
ter contains the maximum  
allowable number of transfers to  
system memory that the Bus In-  
terface will perform during a  
single DMA cycle. The Burst  
Register is not used to limit the  
number of transfers during  
Descriptor transfers. A value of  
zero will be interpreted as one  
transfer. During RESET a value  
of 16 is loaded in the BURST reg-  
ister. If DMAPLUS (CSR4.14) is  
set, the DMA Burst Register is  
disabled.  
Read/write accessible only when  
STOP bit is set.  
CSR84-85: DMA Address  
Bit Name  
Description  
31-0 DMABA  
DMA Address Register.  
This register contains the ad-  
dress of system memory for the  
current DMA cycle. The Bus In-  
terface Unit controls the Address  
When the Bus Activity Timer reg-  
ister (CSR82: DMABAT) is  
enabled, the PCnet-ISA+ control-  
ler will relinquish the bus when  
either the time specified in  
DMABAT has elapsed or the  
1-562  
Am79C961  
P R E L I M I N A R Y  
Register by issuing increment  
AMD  
length, a Two’s complemented  
value is read. The RCON register  
is undefined until written.  
commands to increment the  
memory address for sequential  
operations. The DMABA register  
is undefined until the first  
PCnet-ISA+ controller DMA  
operation.  
Read/write accessible only when  
STOP bit is set.  
CSR94: Transmit Time Domain Reflectometry  
Count  
This register has meaning only if  
the PCnet-ISA+ controller is in  
Bus Master Mode.  
Bit  
Name  
Description  
Read/write accessible only when  
STOP bit is set.  
15-10 RES  
Reserved locations. Read and  
written as zero.  
CSR86: Buffer Byte Counter  
Bit Name  
9-0 XMTTDR  
Time Domain Reflectometry re-  
flects the state of an internal  
counter that counts from the start  
of transmission to the occurrence  
of loss of carrier. TDR is incre-  
mented at a rate of 10 MHz.  
Description  
15-12 RES  
Reserved, Read and written with  
ones.  
11-0 DMABC  
DMA Byte Count Register. Con-  
tains the Two’s complement of  
the current size of the remaining  
transmit or receive buffer in  
bytes. This register is incre-  
mented by the Bus Interface Unit.  
The DMABC register is unde-  
fined until written.  
Read accessible only when  
STOP bit is set. Write operations  
are ignored. XMTTDR is cleared  
by RESET.  
CSR96-97: Bus Interface Scratch Register 0  
Bit  
Name  
Description  
Read/write accessible only when  
STOP bit is set.  
31-0 SCR0  
This register is shared between  
the Buffer Management Unit and  
the Bus Interface Unit. All De-  
scriptor Data communications  
between the BIU and BMU are  
written and read through SCR0  
and SCR1 registers. The SCR0  
register is undefined until written.  
CSR88-89: Chip ID  
Bit  
Name  
Description  
31-28  
Version. This 4-bit pattern is sili-  
con revision dependent.  
27-12  
11-1  
Part number. The 16-bit code for  
the PCnet-ISA+ controller is  
0010001001100000b.  
Read/write accessible only when  
STOP bit is set.  
Manufacturer ID. The 11-bit  
manufacturer code for AMD is  
00000000001b. This code is per  
the JEDEC Publication 106-A.  
CSR98-99: Bus Interface Scratch Register 1  
Bit  
Name  
Description  
0
Always a logic 1.  
31-0 SCR1  
This register is shared between  
the Buffer Management Unit and  
the Bus Interface Unit. All De-  
scriptor Data communications  
between the BIU and BMU are  
written and read through SCR0  
and SCR1 registers.  
This register is exactly the same  
as the Chip ID register in the  
JTAG description.  
CSR92: Ring Length Conversion  
Bit  
Name  
Description  
Read/write accessible only when  
STOP bit is set.  
15-0 RCON  
Ring Length Conversion Regis-  
ter. This register performs a ring  
length conversion from an en-  
coded value as found in the  
initialization block to a Two’s  
complement value used for inter-  
nal counting. By writing bits  
15–12 with an encoded ring  
CSR104-105: SWAP  
Bit  
Name  
Description  
31-0 SWAP  
This register performs word and  
byte swapping depending upon if  
1-563  
Am79C961  
AMD  
P R E L I M I N A R Y  
32-bit or 16-bit internal write op- CSR114: Receive Collision Count  
erations are performed. This  
register is used internally by the  
BIU/BMU as a word or byte  
swapper. The swap register can  
perform 32-bit operations that  
the PC can not; the register is ex-  
ternally accessible for test  
reasons only. CSR104 holds the  
lower 16 bits and CSR105 holds  
the upper 16 bits.  
Bit  
Name  
Description  
15-0 RCVCC  
Counts the number of Receive  
collisions seen, regular and late.  
This register is always readable  
and is cleared by STOP.  
A write to this register performs  
an increment when the ENTST  
bit in CSR4 is set.  
The swap function is defined as  
follows:  
When RCVCC is all 1’s (65535)  
and a receive collision occurs,  
RCVCC increments to 0 and sets  
RCVCC0 bit (CSR4.5)  
Internal Write  
Operation  
SWAP Register Result  
32-Bit word  
SRC[31:16]  
SRC[15:0]  
SWAP[15:0]  
SWAP[31:16]  
CSR124: Buffer Management Unit Test  
Lower 16-Bit  
(CSR104)  
SRC[15:8]  
SRC[7:0]  
SWAP[ 7: 0]  
SWAP[15:8]  
Bit  
Name  
Description  
This register is used to place the  
BMU/BIU into various test modes  
to support Test/Debug. This reg-  
ister is writeable when the  
ENTST bit in CSR4 is set.  
Read/write accessible only when  
STOP bit is set.  
CSR108-109: Buffer Management Scratch  
Bit  
Name  
Description  
15-5  
4
RES  
Reserved locations. Written as  
zero and read as undefined.  
31-0 BMSCR  
The Buffer Management Scratch  
register is used for assembling  
Receive and Transmit Status.  
This register is also used as the  
primary scan register for Buffer  
GPSIEN  
This  
mode  
places  
the  
PCnet-ISA+ controller in the  
GPSI Mode. This mode will  
reconfigure the External Address  
Pins so that the GPSI port is ex-  
posed. This allows bypassing the  
MENDEC- TMAU logic. This bit  
should only be set if the external  
logic supports GPSI operation.  
Damage to the device may occur  
in a non-GPSI configuration. Re-  
fer to the GPSI section.  
Management  
Test  
Modes.  
BMSCR register is undefined un-  
til written.  
Read/write accessible only when  
STOP bit is set.  
CSR112: Missed Frame Count  
3
RPA  
RES  
Runt Packet Accept. This bit  
forces the CORE receive logic to  
accept Runt Packets. This bit al-  
lows for faster testing.  
Bit  
Name  
Description  
15-0  
MFC  
Counts the number of missed  
frames.  
2-0  
For test purposes only. Reserved  
locations. Written as zero and  
read as undefined.  
This register is always readable  
and is cleared by STOP.  
A write to this register performs  
an increment when the ENTST  
bit in CSR4 is set.  
ISA Bus Configuration Registers  
The ISA Bus Data Port (IDP) allows access to registers  
which are associated with the ISA bus. These registers  
are called ISA Bus Configuration Registers (ISACSRs),  
and are indexed by the value in the Register Address  
Port(RAP). ThetablebelowdefinestheISACSRswhich  
When MFC is all 1’s (65535) and  
a missed frame occurs, MFC in-  
crements to 0 and sets MFC0 bit  
(CSR4.9).  
1-564  
Am79C961  
P R E L I M I N A R Y  
can be accessed. All registers are 16 bits. The “Default” ISACSR2: Miscellaneous Configuration  
Bit Name Description  
AMD  
value is the value in the register after reset and is  
hexadecimal.  
15 MODE_STATUS Mode Status. This is a read-only  
register which indicates whether  
the PCnet-ISA+ is configured in  
shared memory mode. A set  
condition indicates shared-  
memory while a clear condition  
indicates bus-master condition.  
Refer to the section “LEDs” for information on LED  
control logic.  
ISACSR MNEMONIC  
Default  
Name  
0
1
2
3
MSRDA  
MSWRA  
MC  
0005H  
Master Mode  
Read Active  
0005H  
0002H  
8000H*  
Master Mode  
Write Active  
14 TMAU_LOOPE 10BASE-T External Loop back  
Enable. This bit is usable only  
when10BASE-TisselectedAND  
PCnet-ISA+ is in external loop  
back. External loop back is set  
during initialization via the MODE  
register. When TMAU_LOOPE  
is set, a board level test is en-  
abled via a loop back clip which  
ties the 10BASE-T RJ45 transmit  
pair to the receiver pair. This will  
test all external components (i.e.  
transformers, resistors, etc.) of  
the 10BASE-T path. TMAU_  
LOOPE assertion is not suitable  
for live network tests. When  
TMAU_LOOPE is deasserted,  
default condition, external loop  
back in 10BASE-T is allowed.  
Miscellaneous  
Configuration  
EC  
EEPROM  
Configuration  
4
5
6
7
8
LED0  
LED1  
LED2  
LED3  
SC  
0000H  
0084H  
0008H  
0090H  
0000H  
Link Integrity  
Default: RCV  
Default: RCVPOL  
Default: XMT  
Software  
Configuration  
(Read-Only  
register)  
*This value can be 0000H for systems that do not support  
EEPROM option.  
13  
Reserved  
Written with zero and read as un-  
defined.  
ISACSR0: Master Mode Read Active  
12  
SLOT_ID  
Slot Identification. This is a read-  
only register bit which indicates if  
PCnet-ISA+ is either in an 16 or 8  
bit slot. Reading a one indicates  
an 8 bit slot. Zero indicates a  
16-bit slot. (SLOT_ID bit is not  
valid after the INIT bit is set in  
CSR0.)  
Bit  
Name  
Description  
3-0  
MSRDA  
This register is used to tune the  
MEMR command signal active  
time. The value stored in MSRDA  
defines the number of 50 ns peri-  
ods that the command signal is  
active. The default value of 5h in-  
dicates 250 ns pulse widths. A  
value of 0 or 1 will generate 50 ns  
wide commands.  
11 ISA_PROTECT ISA Protect. When set, the  
ISACSR’s 0-2 and 4-7 are pro-  
tected from being written over by  
software drivers. When ISA_  
PROTECT is cleared, ISACSR’s  
0-7 are allowed to be written over  
by software and reset by reading  
the Software reset I/O location.  
(Default is zero)  
15-4  
RES  
Reserved locations. Written as  
zero and read as undefined.  
ISACSR1: Master Mode Write Active  
Bit  
Name  
Description  
10 EISA_DECODE EISA Decode. This control bit al-  
lows EISA product identifier  
3-0 MSWRA  
This register is used to tune the  
MEMW command signal active  
time. The value stored in  
MSWRA defines the number of  
50 ns periods that the command  
signal is active. The default value  
of 5h indicates 250 ns pulse  
widths. A value of 0 or 1 will gen-  
erate 50 ns wide commands.  
registers 12-bit decode xC80 -  
xC83 (4 Bytes). Default is zero.  
9
P&P_ACT  
Plug and Play Active. When this  
bit is set, PCnet-ISA+ will become  
active after serially reading the  
EEPROM. If check sum failure  
exist, PCnet-ISA+ will not  
beome active and alternate  
15-4  
RES  
Reserved locations. Written as  
zero and read as undefined.  
1-565  
Am79C961  
AMD  
P R E L I M I N A R Y  
access method to Plug and Play 3 EADISEL  
EADI Select. Enables EADI  
match mode.  
registers will occur. Default is  
zero.  
When EADI mode is selected,  
thepinsnamedLED1, LED2, and  
LED3 change in function while  
LED0 continues to indicate  
10BASE-T Link Status.  
8
APWEN  
Address PROM Write Enable. It  
is reset to zero by RESET. When  
asserted, this pin allows write ac-  
cess to the internal Address  
PROM RAM. APWEN is used  
also to protect the Flash device  
from write cycles. When pro-  
gramming of the Flash device is  
required, the APWEN bit needs  
to be set. When reset, this pin  
protects the internal Address  
PROM RAM, and external Flash  
device from being overwritten.  
LED  
EADI Function  
SF/BD  
1
2
3
SRD  
SRDCLK  
2
AWAKE  
Auto-Wake. If AWAKE = “1”, the  
10BASE-T receive circuitry is ac-  
tive during sleep and listens for  
Link Pulses. LED0 indicates Link  
Status and goes active if the  
10BASE-T port comes of out of  
“link fail” state. This LED0 pin can  
be used by external circuitry to  
re-enable the PCnet-ISA+ con-  
troller and/or other devices.  
7
6
EISA_LVL  
DSDBUS  
EISA Level. This bit is a read-  
only register. It indicates if the  
level or edge sensitive interrupts  
have been selected. A set condi-  
tion indicates level sensitive  
interrupts. A clear condition indi-  
cates ISA edge.  
Disable Staggered Data Bus.  
When this bit is a zero, the data  
bus driver timing is staggered  
from the address bus driver tim-  
ing in Bus Master mode. When  
this bit is a one, the data bus is  
not staggered. It is similar to the  
PCnet-ISA (Am79C960) timing.  
This bit is reset to zero. For most  
applications, this bit should not  
have to be set.  
When AWAKE = “0”, the Auto-  
Wake circuity is disabled. This bit  
only has meaning when the  
10BASE-T network interface is  
selected.  
1,0 MEDSEL  
Media Select. It was previously  
defined as ASEL (Auto Select)  
and XMAUSEL (External MAU  
Select) in the PCnet-ISA. They  
are now combined together and  
defined to be software compat-  
ible with ASEL and XMAUSEL in  
the PCnet-ISA (Am79C960).  
5 10BASE5_SEL 10BASE5 Select. When this bit is  
a one, the DC to DC converter  
will be deselected via the  
DXCVR pin. When 10BASE5_  
SEL is a zero, the DC to DC con-  
verter will be selected via the  
DXCVR bit when the AUI port is  
selected to support a DC-DC  
converter for 10BASE2 MUAs.  
When 10BASE-T port is selected  
by whatever means, DXCR pin  
will high independent of the bit  
selected by the driver software  
mode register, MEDSEL bits,  
and Auto Selection process.  
10BASE5_SEL is reset to zero.  
MEDSEL (1:0)  
Function  
Software Select (Mode Reg, CSR15)  
10BASE-T Port  
0 0  
0 1  
1 0  
1 1  
Auto Selection (Default)  
AUI Port  
ISACSR3: EEPROM Configuration  
Bit  
Name  
Description  
15 EE_VALID  
EEPROM Valid. This bit is a  
read-only register. When a one is  
read, EE_PROM has a valid  
checksum. The sum of the total  
bytes reads should equals FF  
hex. When a zero is read, check-  
sum failed, or SHFTBUSY pin  
was sampled with a zero which  
indicates no EEPROM present.  
4
ISAINACT  
ISAINACT allows for reduced in-  
active timing appropriate for  
modern  
ISA  
machines.  
ISAINACT is cleared when  
RESET is asserted. When  
ISAINACT is a zero, tMMR3 and  
tMMW3 parameters are nomi-  
nally 200 ns, which is com-  
patible with EISA system. When  
ISAINACT is set by writing a one,  
tMMR3 and tMMW3 are nomi-  
nally set to 100 ns.  
14 EE_LOAD  
EEPROM Load. When written  
with a one, the device will load  
the  
EE_PROM  
into  
the  
1-566  
Am79C961  
P R E L I M I N A R Y  
PCnet-ISA+, performing self con-  
ISACSR4: LED0 Status (Link Integrity)  
AMD  
figuration. This command must  
be last write to ISACSR3 Regis-  
ter. PCnet-ISA+ will not respond  
to any slave commands while  
loading the EE_PROM register.  
EE_LOAD will be reset with a  
zero after EE_PROM is read. It  
takes approximately, 1.4 ms for  
serial EEPROM load process to  
complete.  
Bit  
Name  
LNKST  
RES  
Description  
ISACSR4 is a non-programma-  
ble register that uses one bit to  
reflect the status of the LED0 pin.  
This pin defaults to twisted pair  
MAU Link Status (LNKST) and is  
not programmable.  
15  
LNKST is a read-only register bit  
that indicates whether the Link  
Status LED is asserted. When  
LNKST is read as zero, the Link  
Status LED is not asserted.  
When LNKST is read as one, the  
Link Status LED is asserted, indi-  
cating good 10BASE-T integrity.  
13–5  
4
N/A  
Reserved. Read and written as  
zeros.  
EE_EN  
EEPROM Enable. When EE_EN  
is written with a one, the lower  
three bits of PRDB becomes SK,  
DI and DO, respectively. EECS  
and SHFBUSY are controlled by  
the software select bits. This bit  
must be written with a one to  
write to or read from the  
EEPROM. PCnet-ISA+ should  
be in the STOP state when  
EE_EN is written. When EN_EN  
is cleared, DI/DO, SK, EECS and  
SHFBUSY have no control.  
14-0  
Reserved locations. Written as  
zero, read as undefined.  
ISACSR5: LED1 Status  
Bit  
Name  
Description  
ISACSR5 controls the func-  
tion(s) that the LED1 pin  
displays. Multiple functions can  
be simultaneously enabled on  
this LED pin. The LED display will  
indicate the logical OR of the en-  
3
SHFBUSY  
Shift Busy. SHFBUSY allows for  
the control of the SHFBUSY pin.  
When  
a
one is written,  
SHFBUSY goes high provided  
EE_EN is a 1. When a zero is  
written, SHFBUSY is held to a  
zero. When EE_EN is cleared,  
SHFBUSY will maintain the last  
value programmed. (Refer to Bit  
4 above, EE_EN, for detailed use  
of this bit.)  
abled  
functions.  
ISACSR5  
defaults to Receive Status (RCV)  
with pulse stretcher enabled  
(PSE = 1) and is fully program-  
mable.  
15  
LEDOUT  
Indicates the current (non-  
stretched) state of the function(s)  
generated. Read only.  
2
1
EECS  
SK  
EEPROM Chip Select. EECS as-  
serts the chip select to the Serial  
EEPROM. (Refer to Bit 4 above,  
EE_EN, for detailed use of this  
bit.)  
14-8  
7
RES  
PSE  
Reserved locations. Read and  
written as zero.  
Pulse Stretcher Enable. Extends  
the LED illumination for each en-  
abled function occurrence.  
Serial Shift Clock. SK controls  
the SK input to the Serial  
EEPROM and the optional Exter-  
nal Shift Logic. (Refer to Bit 4  
above, EE_EN, for detailed use  
of this bit.)  
0 is disabled, 1 is enabled.  
6
5
RES  
Reserved locations. Read and  
written as zero.  
RCVADDM  
Receive Address Match. This bit  
when set allows for LED control  
of only receive packets which  
match internal address match.  
0
DI/DO  
Serial Shift Data In and Serial  
Shift Data Out. When written, this  
bit controls the DI input of the se-  
rial EEPROM. When read, this bit  
represents the DO value of the  
serial EEPROM. (Refer to Bit 4  
above, EE_EN, for detailed use  
of this bit.)  
4
XMT E  
Enable Transmit Status Signal.  
Indicates PCnet-ISA+ controller  
transmit activity .  
1-567  
Am79C961  
AMD  
P R E L I M I N A R Y  
0 disables the signal, 1 enables  
RVPOLE LEDXOR  
Result  
the signal.  
0
1
1
X
0
1
10BASE-T polarity function  
ignored  
3
RVPOL E  
Enable Receive Polarity Signal.  
Enables LED pin assertion when  
receive polarity is correct on the  
10BASE-T port. Clearing the bit  
indicates this function is to  
be ignored.  
LED1 pin low with “Good”  
10BASE-T polarity (LED on)  
LED1 pin high with “Good”  
10BASE-T polarity (LED off)  
13-8  
7
RES  
PSE  
Reserved locations. Read and  
written as zero.  
2
1
0
RCV E  
JAB E  
COL E  
Enable Receive Status Signal.  
Indicates receive activity on the  
network.  
Pulse Stretcher Enable. Extends  
the LED illumination for each en-  
abled function occurrence.  
0 disables the signal, 1 enables  
the signal.  
0 is disabled, 1 is enabled.  
Enable Jabber Signal. Indicates  
the PCnet-ISA+ controller is jab-  
bering on the network.  
6
5
RES  
Reserved locations. Read and  
written as zero.  
0 disables the signal, 1 enables  
the signal.  
RCVADDM  
Receive Address Match. This bit  
when set allows for LED control  
of only receive packets that  
match internal address match.  
Enable Collision Signal. Indi-  
cates collision activity on the  
network.  
4
3
XMT E  
Enable Transmit Status Signal.  
Indicates PCnet-ISA+ controller  
transmit activity .  
0 disables the signal, 1 enables  
the signal.  
0 disables the signal, 1 enables  
the signal.  
ISACSR6: LED2 Status  
RVPOL E  
Enable Receive Polarity Signal.  
Bit  
Name  
Description  
Enables LED pin assertion when  
receive polarity is correct on the  
10BASE-T port. Clearing the bit  
indicates this function is to  
be ignored.  
ISACSR6 controls the func-  
tion(s) that the LED2 pin  
displays. Multiple functions can  
be simultaneously enabled on  
this LED pin. The LED display will  
indicate the logical OR of the en-  
2
1
0
RCV E  
JAB E  
COL E  
Enable Receive Status Signal.  
Indicates receive activity on the  
network.  
abled  
functions.  
ISACSR6  
0 disables the signal, 1 enables  
the signal.  
defaults to twisted pair MAU Re-  
ceive Polarity (RCVPOL) with  
pulse stretcher enabled (PSE =  
1) and is fully programmable.  
Enable Jabber Signal. Indicates  
the PCnet-ISA+ controller is jab-  
bering on the network.  
15  
14  
LEDOUT  
LEDXOR  
Indicates the current (non-  
stretched) state of the function(s)  
generated. Read only.  
0 disables the signal, 1 enables  
the signal.  
This bit when set causes LED2 to  
be an active high signal when as-  
serted. When this bit is cleared,  
LED2 will be active low when  
asserted.  
Enable Collision Signal. Indi-  
cates collision activity on the  
network.  
0 disables the signal, 1 enables  
the signal.  
(Note: This bit when used in con-  
junction with the RVPOLE bit (Bit  
3) of ISACSR5, ISACSR6, and  
ISACSR7canbeusedtocreatea  
“Polarity Bad” LED.)  
1-568  
Am79C961  
P R E L I M I N A R Y  
AMD  
ISACSR7: LED3 Status  
ISACSR8: Software Configuration Register  
(Read-Only Register)  
Bit  
Bit  
Name  
Description  
Description  
ISACSR7 controls the func-  
tion(s) that the LED3 pin  
displays. Multiple functions can  
be simultaneously enabled on  
this LED pin. The LED display will  
indicate the logical OR of the  
enabled functions. ISACSR7 de-  
faults to Transmit Status (XMT)  
with pulse stretcher enabled  
(PSE = 1) and is fully program-  
mable.  
15–12  
11–8  
7–4  
3
Read-only image of SR_AM(3:0) of P&P  
register 0x48 - 0x49.  
Read-only image of BP_AM(3:0) of P&P  
register 0x40 - 0x41.  
Read-only image of IRQSEL(3:0) of P&P  
register 0x70.  
Reserved, written with zero,  
read as undefined.  
2–0  
Read-only image of DMASEL(2:0) of  
P&P register 0x74.  
15  
LEDOUT  
Indicates the current (non-  
stretched) state of the function(s)  
generated. Read only.  
Initialization Block  
The figure below shows the Initialization Block memory  
configuration. Note that the Initialization Block must be  
based on a word (16-bit) boundary.  
14-8  
7
RES  
PSE  
Reserved locations. Read and  
written as zero.  
Pulse Stretcher Enable. Extends  
the LED illumination for each en-  
abled function occurrence.  
Bits  
15–12  
Bits  
11–8  
Bits  
7–4  
Bits  
3–0  
Address  
IADR+00  
IADR+02  
IADR+04  
IADR+06  
IADR+08  
IADR+10  
IADR+12  
IADR+14  
IADR+16  
IADR+18  
IADR+20  
IADR+22  
0 is disabled, 1 is enabled.  
MODE 15-00  
PADR 15-00  
PADR 31-16  
PADR 47-32  
LADRF 15-00  
LADRF 31-16  
LADRF 47-32  
LADRF 63-48  
RDRA 15-00  
6
5
RES  
Reserved locations. Read and  
written as zero.  
RCVADDM  
Receive Address Match. This bit  
when set allows for LED control  
of only receive packets that  
match internal address match.  
4
XMT E  
Enable Transmit Status Signal.  
Indicates PCnet-ISA+ controller  
transmit activity .  
0 disables the signal, 1 enables  
the signal.  
Enable Receive Polarity Signal.  
RLEN  
TLEN  
RES  
TDRA 15-00  
RES TDRA 23-16  
RDRA 23-16  
3
2
RVPOL E  
RCV E  
Enables LED pin assertion when  
receive polarity is correct on the  
10BASE-T port. Clearing the bit  
indicates this function is to be  
ignored.  
RLEN and TLEN  
Enable Receive Status Signal.  
Indicates receive activity on the  
network.  
The TLEN and RLEN fields in the initialization block are  
3 bits wide, occupying bits 15,14, and 13, and the value  
in these fields determines the number of Transmit and  
Receive Descriptor Ring Entries (DRE) which are used  
in the descriptor rings. Their meaning is as follows:  
0 disables the signal, 1 enables  
the signal.  
1
0
JAB E  
COL E  
Enable Jabber Signal. Indicates  
the PCnet-ISA+ controller is jab-  
bering on the network.  
0 disables the signal, 1 enables  
the signal.  
Enable Collision Signal. Indi-  
cates collision activity on the  
network.  
0 disables the signal, 1 enables  
the signal.  
1-569  
Am79C961  
AMD  
R/TLEN  
P R E L I M I N A R Y  
determine if the message is actually intended for the  
# of DREs  
nodebycomparingthedestinationaddressofthestored  
message with a list of acceptable logical addresses.  
000  
001  
010  
011  
100  
101  
110  
111  
1
2
If the Logical Address Filter is loaded with all zeroes and  
promiscuous mode is disabled, all incoming logical ad-  
dresses except broadcast will be rejected.  
4
8
16  
32  
64  
128  
The Broadcast address, which is all ones, does not go  
through the Logical Address Filter and is handled as  
follows:  
1) If the Disable Broadcast Bit is cleared, the  
broadcast address is accepted.  
If a value other than those listed in the above table is de-  
sired, CSR76 and CSR78 can be written after  
initialization is complete. See the description of the ap-  
propriate CSRs.  
2) If the Disable Broadcast Bit is set and promiscuous  
mode is enabled, the broadcast address is  
accepted.  
3) If the Disable Broadcast Bit is set and promiscous  
modeisdisabled, thebroadcastaddressisrejected.  
RDRA and TDRA  
TDRA and RDRA indicate where the transmit and re-  
ceive descriptor rings, respectively, begin. Each DRE  
must be located on an 8-byte boundary.  
If external loopback is used, the FCS logic must be allo-  
cated to the receiver (by setting the DXMTFCS bit in  
CSR15, and clearing the ADD_FCS bit in TMD1) when  
using multicast addressing.  
LADRF  
TheLogicalAddressFilter(LADRF)isa64-bitmaskthat  
is used to accept incoming Logical Addresses. If the first  
bit in the incoming address (as transmitted on the wire)  
is a “1”, the address is deemed logical. If the first bit is a  
“0”, it is a physical address and is compared against the  
physical address that was loaded through the initializa-  
tion block.  
PADR  
This 48-bit value represents the unique node address  
assigned by the IEEE and used for internal address  
comparison. PADR[0] is the first address bit transmitted  
on the wire, and must be zero. The six-hex-byte nomen-  
clature used by the IEEE maps to the PCnet-ISA+  
controller PADR register as follows: the first byte com-  
prises PADR[7:0], with PADR[0] being the least  
significant bit of the byte. The second IEEE byte maps to  
PADR[15:8], again from LSbit to MSbit, and so on. The  
sixth byte maps to PADR[47:40], the LSbit being  
PADR[40].  
A logical address is passed through the CRC generator,  
producing a 32-bit result. The high order 6 bits of the  
CRC are used to select one of the 64 bit positions in the  
Logical Address Filter. If the selected filter bit is set, the  
address is accepted and the frame is placed into  
memory.  
MODE  
The Logical Address Filter is used in multicast address-  
ing schemes. The acceptance of the incoming frame  
based on the filter value indicates that the message may  
be intended for the node. It is the node’s responsibility to  
The mode register in the initialization block is copied into  
CSR15 and interpreted according to the description of  
CSR15.  
1-570  
Am79C961  
P R E L I M I N A R Y  
AMD  
32-Bit Resultant CRC  
26  
Received Message  
Destination Address  
0
31  
47  
1
0
1
CRC  
GEN  
Logical  
Address  
Filter  
(LADRF)  
63  
0
SEL  
64  
MUX  
MATCH  
MATCH = 1: Packet Accepted  
MATCH = 0: Packet Rejected  
18183B-22  
6
Address Match Logic  
13  
FRAM  
FRAMING ERROR indicates  
that the incoming frame con-  
tained a non-integer multiple of  
eight bits and there was an FCS  
error. If there was no FCS error  
on the incoming frame, then  
FRAM will not be set even if there  
was a non integer multiple of  
eight bits in the frame. FRAM is  
not valid in internal loopback  
mode. FRAM is valid only when  
ENP is set and OFLO is not.  
FRAM is written by the  
PCnet-ISA+ controller.  
Receive Descriptors  
The Receive Descriptor Ring Entries (RDREs) are com-  
posed of four receive message fields (RMD0-3).  
Together they contain the following information:  
The address of the actual message data buffer in  
user (host) memory  
The length of that message buffer  
Status information indicating the condition of the  
buffer. The eight most significant bits of RMD1  
(RMD1[15:0]) are collectively termed the STATUS  
of the receive descriptor.  
12  
OFLO  
OVERFLOW error indicates that  
the receiver has lost all or part of  
the incoming frame, due to an in-  
ability to store the frame in a  
memory buffer before the inter-  
nal FIFO overflowed. OFLO is  
valid only when ENP is not set.  
OFLO is written by the  
PCnet-ISA+ controller.  
RMD0  
Holds LADRF [15:0]. This is combined with HADR [7:0]  
in RMD1 to form the 24-bit address of the buffer pointed  
to by this descriptor table entry. There are no restrictions  
on buffer byte alignment or length.  
RMD1  
Bit  
Name  
Description  
11  
10  
CRC  
CRC indicates that the receiver  
has detected a CRC (FCS) error  
on the incoming frame. CRC is  
valid only when ENP is set and  
OFLO is not. CRC is written by  
the PCnet-ISA+ controller.  
15  
OWN  
This bit indicates that the de-  
scriptor entry is owned by the  
host (OWN=0) or by the  
PCnet-ISA+ controller (OWN=1).  
The PCnet-ISA+ controller clears  
the OWN bit after filling the buffer  
pointed to by the descriptor entry.  
The host sets the OWN bit after  
emptying the buffer. Once the  
PCnet-ISA+ controller or host has  
BUFF  
BUFFER ERROR is set any time  
the PCnet-ISA+ controller does  
not own the next buffer while data  
chaining a received frame. This  
can occur in either of two ways:  
relinquished ownership of  
buffer, it must not change any  
field in the descriptor entry.  
a
1) The OWN bit of the next  
buffer is zero  
2) FIFO overflow occurred  
before the PCnet-ISA+  
controller polled the next  
descriptor  
14  
ERR  
ERR is the OR of FRAM, OFLO,  
CRC, or BUFF. ERR is written by  
the PCnet-ISA+ controller.  
1-571  
Am79C961  
AMD  
P R E L I M I N A R Y  
If a Buffer Error occurs, an Over-  
Transmit Descriptors  
flow Error may also occur  
internally in the FIFO, but will not  
be reported in the descriptor  
status entry unless both BUFF  
and OFLO errors occur at the  
same time. BUFF is written by  
the PCnet-ISA+ controller.  
TheTransmitDescriptorRingEntries(TDREs)arecom-  
posed of four transmit message fields (TMD0-3).  
Together they contain the following information:  
The address of the actual message data buffer in  
user or host memory  
The length of the message buffer  
9
STP  
START OF PACKET indicates  
that this is the first buffer used by  
the PCnet-ISA+ controller for this  
frame. It is used for data chaining  
buffers. STP is written by the  
PCnet-ISA+ controller in normal  
operation. In SRPINT Mode  
(CSR3.5 set to 1) this bit is writ-  
ten by the driver.  
Status information indicating the condition of the  
buffer. The eight most significant bits of TMD1  
(TMD1[15:8]) are collectively termed the STATUS  
of the transmit descriptor.  
Note that bit 13 of TMD1, which was formerly a reserved  
bit in the LANCE (Am7990), is assigned a new meaning,  
ADD_FCS.  
8
ENP  
END OF PACKET indicates that  
this is the last buffer used by the  
PCnet-ISA+ controller for this  
frame. It is used for data chaining  
buffers. If both STP and ENP are  
set, the frame fits into one buffer  
and there is no data chaining.  
ENP is written by the PCnet-ISA+  
controller.  
TMD0  
Holds LADR [15:0]. This is combined with HADR [7:0] in  
TMD1 to form a 24-bit address of the buffer pointed to by  
this descriptor table entry. There are no restrictions on  
buffer byte alignment or length.  
TMD1  
7-0  
HADR  
The HIGH ORDER 8 address  
bits of the buffer pointed to by this  
descriptor. This field is written by  
the host and is not changed by  
the PCnet-ISA+ controller.  
Bit  
Name  
Description  
15  
OWN  
This bit indicates that the de-  
scriptor entry is owned by the  
host (OWN=0) or by the  
PCnet-ISA+ controller (OWN=1).  
The host sets the OWN bit after  
filling the buffer pointed to by the  
descriptor entry. The PCnet-ISA+  
controller clears the OWN bit af-  
ter transmitting the contents of  
the buffer. Both the PCnet-ISA+  
controller and the host must not  
alter a descriptor entry after it has  
relinquished ownership.  
RMD2  
Bit  
Name  
Description  
15-12 ONES  
MUST BE ONES. This field is  
written by the host and un-  
changed by the PCnet-ISA+  
controller.  
11-0 BCNT  
BUFFER BYTE COUNT is the  
length of the buffer pointed to by  
this descriptor, expressed as the  
two’s complement of the length  
of the buffer. This field is written  
by the host and is not changed by  
the PCnet-ISA+ controller.  
14  
ERR  
ERR is the OR of UFLO, LCOL,  
LCAR, or RTRY. ERR is written  
by the PCnet-ISA+ controller.  
This bit is set in the current de-  
scriptor when the error occurs,  
and therefore may be set in any  
descriptor of a chained buffer  
transmission.  
RMD3  
Bit  
Name  
Description  
13 ADD_FCS  
ADD_FCS dynamically controls  
the generation of FCS on a frame  
by frame basis. It is valid only if  
the STP bit is set. When  
ADD_FCS is set, the state of  
DXMTFCS is ignored and trans-  
mitter FCS generation is  
activated. When ADD_FCS = 0,  
FCS generation is controlled by  
DXMTFCS. ADD_FCS is written  
15-12 RES  
11-0 MCNT  
RESERVED and read as zeros.  
MESSAGE BYTE COUNT is the  
length in bytes of the received  
message, expressed as an un-  
signed binary integer. MCNT is  
valid only when ERR is clear and  
ENP is set. MCNT is written by  
the PCnet-ISA+ controller and  
cleared by the host.  
1-572  
Am79C961  
P R E L I M I N A R Y  
AMD  
by the host, and unchanged by  
TMD2  
Bit  
the PCnet-ISA+ controller. This  
was a reserved bit in the LANCE  
(Am7990).  
Name  
Description  
15-12 ONES  
MUST BE ONES. This field is  
written by the host and un-  
changed by the PCnet-ISA+  
controller.  
12  
11  
MORE  
ONE  
MORE indicates that more than  
one re-try was needed to trans-  
mit a frame. MORE is written by  
the PCnet-ISA+ controller. This  
bit has meaning only if the ENP  
or the ERR bit is set.  
11-0 BCNT  
BUFFER BYTE COUNT is the  
length of the buffer pointed to by  
this descriptor, expressed as the  
two’s com- plement of the length  
of the buffer. This is the number  
of bytes from this buffer that will  
be transmitted by the PCnet-  
ISA+ controller. This field is  
written by the host and is not  
changed by the PCnet-ISA+  
controller. There are no minimum  
buffer size restrictions. Zero  
length buffers are allowed for  
protocols which require it.  
ONE indicates that exactly one  
re-try was needed to transmit a  
frame. ONE flag is not valid when  
LCOL is set. ONE is written by  
the PCnet-ISA+ controller. This  
bit has meaning only if the ENP  
or the ERR bit is set.  
10  
DEF  
DEFERRED indicates that the  
PCnet-ISA+ controller had to de-  
fer while trying to transmit a  
frame. This condition occurs if  
the channel is busy when the  
PCnet-ISA+ controller is ready to  
transmit. DEF is written by the  
PCnet-ISA+ controller. This bit  
has meaning only if the ENP or  
ERR bits are set.  
TMD3  
Bit  
Name  
Description  
15  
BUFF  
BUFFER ERROR is set by the  
PCnet-ISA+ controller during  
9
STP  
START OF PACKET indicates  
that this is the first buffer to be  
used by the PCnet-ISA+ control-  
ler for this frame. It is used for  
data chaining buffers. The STP  
bit must be set in the first buffer of  
the frame, or the PCnet-ISA+  
controller will skip over the de-  
scriptor and poll the next  
descriptor(s) until the OWN and  
STP bits are set.  
transmission  
when  
the  
PCnet-ISA+ controller does not  
find the ENP flag in the current  
buffer and does not own the next  
buffer. This can occur in either of  
two ways:  
1) The OWN bit of the next  
buffer is zero.  
2) FIFO underflow occurred  
before the PCnet-ISA+  
controller obtained the  
next STATUS byte  
STP is written by the host and is  
not changed by the PCnet-ISA+  
controller.  
(TMD1[15:8]).  
8
ENP  
END OF PACKET indicates that  
this is the last buffer to be used by  
the PCnet-ISA+ controller for this  
frame. It is used for data chaining  
buffers. If both STP and ENP are  
set, the frame fits into one buffer  
and there is no data chaining.  
ENP is written by the host and is  
not changed by the PCnet-ISA+  
controller.  
BUFF error will turn off the trans-  
mitter (CSR0, TXON = 0). If a  
Buffer Error occurs, an Under-  
flow Error will also occur. BUFF is  
not valid when LCOL or RTRY er-  
ror is set during transmit data  
chaining. BUFF is written by the  
PCnet-ISA+ controller.  
14  
UFLO  
UNDERFLOW ERROR indi-  
cates that the transmitter has  
truncated a message due to data  
late from memory. UFLO indi-  
cates that the FIFO has emptied  
before the end of the frame was  
7-0  
HADR  
The HIGH ORDER 8 address  
bits of the buffer pointed to by this  
descriptor. This field is written by  
the host and is not changed by  
the PCnet-ISA+ controller.  
1-573  
Am79C961  
AMD  
P R E L I M I N A R Y  
reached. Upon UFLO error, the 10  
RTRY  
RETRY ERROR indicates that  
the transmitter has failed after 16  
attempts to successfully transmit  
a message, due to repeated colli-  
sions on the medium. If DRTY = 1  
in the MODE register, RTRY will  
set after one failed transmission  
attempt. RTRY is written by the  
PCnet-ISA+ controller.  
transmitter is turned off (CSR0,  
TXON = 0). UFLO is written by  
the PCnet-ISA+ controller.  
13  
12  
RES  
RESERVED bit. The PCnet-  
ISA+ controller will write this bit  
with a “0”.  
LCOL  
LATE COLLISION indicates that  
a collision has occurred after the  
slot time of the channel has  
elapsed. The PCnet-ISA+ con-  
troller does not re-try on late  
collisions. LCOL is written by the  
PCnet-ISA+ controller.  
09-00 TDR  
TIME  
DOMAIN  
REFLEC-  
TOMETRY reflects the state of  
an internal PCnet-ISA+ controller  
counter that counts at a 10 MHz  
rate from the start of a transmis-  
sion to the occurrence of a  
collision or loss of carrier. This  
value is useful in determining the  
approximate distance to a cable  
fault. The TDR value is written by  
the PCnet-ISA+ controller and is  
valid only if RTRY is set.  
11  
LCAR  
LOSS OF CARRIER is set in AUI  
mode when the carrier is lost  
during an PCnet-ISA+ controller-  
initiated  
transmission.  
The  
PCnet-ISA+ controller does not  
stop transmission upon loss of  
carrier. It will continue to transmit  
the whole frame until done.  
LCAR is written by the PCnet-  
ISA+ controller.  
Note that 10 MHz gives very low  
resolution and in general has not  
been found to be particularly use-  
ful. This feature is here primarily  
to maintain full compatibility with  
the LANCE.  
In 10BASE-T mode, LCAR will  
be set when the T-MAU is in link  
fail state.  
1-574  
Am79C961  
P R E L I M I N A R Y  
AMD  
Register Summary  
Ethernet Controller Registers  
(Accessed via RDP Port)  
User  
RAP Addr  
Symbol  
Width  
Register  
Comments  
00  
01  
CSR0  
CSR1  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
16-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
32-bit  
Y
Y
Y
Y
Y
PCnet-ISA+ controller status  
Lower IADR: maps to location 16  
Upper IADR: maps to location 17  
Mask Register  
02  
CSR2  
03  
CSR3  
04  
CSR4  
Miscellaneous Register  
05  
CSR5  
Reserved  
06  
CSR6  
RXTX: RX/TX Encoded Ring Lengths  
Reserved  
07  
CSR7  
08  
CSR8  
Y
Y
Y
Y
Y
Y
Y
Y
LADR0: LADRF[15:0]  
09  
CSR9  
LADR1: LADRF[31:16]  
10  
CSR10  
CSR11  
CSR12  
CSR13  
CSR14  
CSR15  
CSR16  
CSR18  
CSR20  
CSR22  
CSR24  
CSR26  
CSR28  
CSR30  
CSR32  
CSR34  
CSR36  
CSR38  
CSR40  
CSR42  
CSR44  
CSR46  
CSR47  
CSR48  
CSR50  
CSR52  
CSR54  
CSR56  
CSR58  
CSR60  
CSR62  
LADR2: LADRF[47:32]  
11  
LADR3: LADRF[63:48]  
12  
PADR0: PADR[15:0]  
13  
PADR1: PADR[31:16]  
14  
PADR2: PADR[47:32]  
15  
MODE: Mode Register  
16-17  
18-19  
20-21  
22-23  
24-25  
26-27  
28-29  
30-31  
32-33  
34-35  
36-37  
38-39  
40-41  
42-43  
44-45  
46  
IADR: Base Address of INIT Block  
CRBA: Current RCV Buffer Address  
CXBA: Current XMT Buffer Address  
NRBA: Next RCV Buffer Address  
BADR: Base Address of RCV Ring  
NRDA: Next RCV Descriptor Address  
CRDA: Current RCV Descriptor Address  
BADX: Base Address of XMT Ring  
NXDA: Next XMT Descriptor Address  
CXDA: Current XMT Descriptor Address  
Next Next Receive Descriptor Address  
Next Next Transmit Descriptor Address  
CRBC: Current RCV Stat and Byte Count  
Y
Y
CXBC: Current XMT Status and Byte Count  
NRBC: Next RCV Stat and Byte Count  
POLL: Poll Time Counter  
47  
Y
Polling Interval  
48-49  
50-51  
52-53  
54-55  
56-57  
58-59  
60-61  
62-63  
TMP0: Temporary Storage  
TMP1: Temporary Storage  
TMP2: Temporary Storage  
TMP3: Temporary Storage  
TMP4: Temporary Storage  
TMP5: Temporary Storage  
PXDA: Previous XMT Descriptor Address  
PXBC: Previous XMT Status and Byte Count  
1-575  
Am79C961  
AMD  
P R E L I M I N A R Y  
Register Summary  
Ethernet Controller Registers  
(Accessed via RDP Port) (continued)  
User  
RAP Addr  
Symbol  
Width  
Register  
Comments  
64-65  
66-67  
68-69  
70-71  
72  
CSR64  
CSR66  
CSR68  
CSR70  
CSR72  
CSR74  
CSR76  
CSR78  
CSR80  
CSR82  
CSR84  
CSR86  
CSR88  
CSR92  
CSR94  
32-bit  
32-bit  
32-bit  
32-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
16-bit  
32-bit  
16-bit  
32-bit  
16-bit  
16-bit  
NXBA: Next XMT Buffer Address  
NXBC: Next XMT Status and Byte Count  
XSTMP: XMT Status Temporary  
RSTMP: RCV Status Temporary  
RCVRC: RCV Ring Counter  
XMTRC: XMT Ring Counter  
RCVRL: RCV Ring Length  
74  
76  
Y
Y
Y
Y
78  
XMTRL: XMT Ring Length  
80  
DMABR: Burst Register  
82  
DMABAT: Bus Activity Timer  
DMABA: Address Register  
84-85  
86  
DMABC: Byte Counter/Register  
Chip ID Register  
88-89  
92  
Y
RCON: Ring Length Conversion Register  
94  
XMTTDR: Transmit Time Domain  
Reflectometry  
96-97  
98-99  
104-105  
108-109  
112  
CSR96  
CSR98  
32-bit  
32-bit  
32-bit  
32-bit  
16-bit  
16-bit  
16-bit  
16-bit  
SCR0: BIU Scratch Register 0  
SCR1: BIU Scratch Register 1  
SWAP:16-bit word/byte Swap Register  
BMSCR: BMU Scratch Register  
Missed Frame Count  
CSR104  
CSR108  
CSR112  
CSR114  
CSR124  
CSR126  
Y
Y
Y
114  
Receive Collision Count  
BMU Test Register  
124  
126  
Reserved  
Note: Although the PCnet-ISA+ controller has many registers that can be accessed by software, most of these registers are  
intended for debugging and production testing purposes only. The registers with a “Y” are the only registers that should be  
accessed by network software.  
1-576  
Am79C961  
P R E L I M I N A R Y  
AMD  
Register Summary  
ISACSR—ISA Bus Configuration Registers  
(Accessed via IDP Port)  
RAP Addr  
Mnemonic  
MSRDA  
MSWRA  
MC  
Default  
0005H  
0005H  
0002H  
8000*H  
0000H  
0084H  
0008H  
0090H  
0000H  
Name  
0
1
2
3
4
5
6
7
8
Master Mode Read Active  
Master Mode Write Active  
Miscellaneous Configuration  
EEPROM Configuration  
LED0 Status (Link Integrity)  
LED1 Status (Default: RCV)  
EC  
LED0  
LED1  
LED2  
LED3  
SC  
LED2 Status (Default: RCVPOL)  
LED3 Status (Default: XMT)  
Software Configuration (Read-Only  
Register)  
*This value can be 0000H for systems that do not support EEPROM option  
I/O Address Offset  
Offset  
0h  
#Bytes  
Register  
Address PROM  
16  
2
10h  
12h  
14h  
16h  
RDP  
2
RAP (shared by RDP and IDP)  
2
Reset  
IDP  
2
1-577  
Am79C961  
AMD  
P R E L I M I N A R Y  
SYSTEM APPLICATION  
ISA Bus Interface  
as address PROM, boot PROM, RAP, and RDP are in  
the same location with the same semantics. An addi-  
tional set of registers (ISA CSR) is available to configure  
on board resources such as ISA bus timing and LED op-  
eration. However, loopback frames for the PCnet-ISA+  
controller must contain more than 64 bytes of data if the  
Runt Packet Accept feature is not enabled; this size limi-  
tationdoesnotapplytoLANCE(Am7990)basedboards  
such as the NE2100 and NE1500T.  
Compatibility Considerations  
Although 8 MHz is now widely accepted as the standard  
speed at which to run the ISA bus, many machines have  
been built which operate at higher speeds with non-  
standard timing. Some machines do not correctly  
support 16-bit I/O operations with wait states. Although  
the PCnet-ISA+ controller is quite fast, some operations  
still require an occasional wait state. The PCnet-ISA+  
controllermovesdatathroughmemoryaccesses, there-  
fore, I/O operations do not affect performance. By  
configuring the PCnet-ISA+ controller as an 8-bit I/O de-  
vice, compatibility with PC/AT-class machines is  
obtained at virtually no cost in performance. To treat the  
PCnet-ISA+ controller as an 8-bit software resource (for  
non-ISA applications), the even-byte must be accessed  
first, followed by an odd-byte access.  
Bus Master  
Bus Master mode is the preferred mode for client appli-  
cations on PC/AT or similar machines supporting 16-bit  
DMA with its unsurpassed combination of high perform-  
ance and low cost.  
Shared Memory  
The shared memory mode is recommended for file serv-  
ers or other applications where there is very high,  
average or peak latency.  
Memory cycle timing is an area where some tradeoffs  
may be necessary. Any slow down in a memory cycle  
translates directly into lower bandwidth. The  
PCnet-ISA+ controller starts out with much higher  
bandwidth than most slave type controllers and should  
continue to be superior even if an extra 50 or 100 ns are  
added to memory cycles.  
The address compare circuit has the following  
functions. It receives the 7 LA signals, generates  
MEMCS16, and compares them to the desired shared  
memory and boot PROM addresses. The logic latches  
the address compare result when BALE goes inactive  
and uses the appropriate SA signals to generate SMAM  
and BPAM.  
The memory cycle active time is tunable in 50 ns incre-  
ments with a default of 250 ns. The memory cycle idle  
time defaults to 200 ns and can be reprogrammed to  
100 ns. See register description for ISACS42. Most ma-  
chines should not need tuning.  
All these functions can be performed in one PAL device.  
To operate in an 8-bit PC/XT environment, the LA  
signals should have weak pull-down resistors con-  
nectedtothemtopresentalogic0levelwhennotdriven.  
The PCnet-ISA+ controller is compatible with NE2100  
and NE1500T software drivers. All the resources such  
BPCS  
CE  
OE  
PRDB[0-7]  
D[0-7]  
16-Bit System Data  
SD[0-15]  
Boot  
PROM  
PRDB[2]/EEDO  
PRDB[1]/EEDI  
PRDB[0]/EESK  
PCnet-ISA+  
Controller  
A[0-15]  
ISA  
Bus  
24-Bit System  
Address  
DO  
DI  
SK  
CS  
SA[0-19]  
LA[17-23]  
EEPROM  
SHFBUSY  
EECS  
VCC  
ORG  
VCC  
18183B-6  
Bus Master Block Diagram  
Plug and Play Compatible  
1-578  
Am79C961  
P R E L I M I N A R Y  
AMD  
A[0-4]  
D[0-7]  
BPCS  
IEEE  
Address  
PROM  
PRDB[0-7]  
SD[0-15]  
G
16-Bit  
System  
Data  
PRDB[0]/EESK  
PRDB[1]/EEDI  
PRDB[2]/EEDO  
EECS  
PCnet-ISA+  
Controller  
A[0-15]  
D[0-7]  
WE  
SA[0-19]  
LA[17-23]  
24-Bit  
System  
Address  
Flash  
SHFBUSY  
IRQ15/APCS IRQ12/FlashWE  
ISA  
Bus  
OE  
CS  
VCC  
SK  
DI  
EEPROM  
DO  
CS  
VCC  
ORG  
18183B-7  
Bus Master Block Diagram  
Plug and Play Compatible with Flash Support  
1-579  
Am79C961  
AMD  
P R E L I M I N A R Y  
A[0-15]  
Boot  
PROM  
CE  
OE  
D[0-7]  
PRAB(0:15)  
BPCS  
PRDB[0-7]  
SD[0-15]  
SA[0-15]  
PCnet-ISA+  
Controller  
16-Bit  
System Data  
2
1
0
PRDB[2]/EEDO  
PRDB[1]/EEDI  
PRDB[0]/EESK  
EECS  
DO  
DI  
EEPROM  
24-Bit System  
Address  
VCC  
SK  
CS  
SMAM  
ORG  
SHFBUSY  
BPAM  
ISA  
Bus  
SROE  
SRWE  
A[0-15]  
D[0-7]  
WE  
SRAM  
CS  
OE  
VCC  
SHFBUSY  
CLK  
BPAM  
SMAM  
SIN  
External  
Glue  
SA[16]  
Logic  
LA[17-23]  
MEMCS16  
18183B-9  
Shared Memory Block Diagram  
Plug and Play Compatible  
1-580  
Am79C961  
P R E L I M I N A R Y  
AMD  
A[0-15]  
D[0-7]  
FLASH  
WE  
CS  
PRDB[0-7]  
PRAB[0-15]  
OE  
BPCS  
SROE  
SD[0-15]  
PCnet-ISA+  
16-Bit  
System Data  
Controller  
PRDB[2]/EEDO  
PRDB[1]/EEDI  
DO  
DI  
24-Bit System  
Address  
EEPROM  
SA[0-19]  
SK  
CS  
VCC  
PRDB[0]/EESK  
EECS  
ORG  
SRWE  
IRQ12/SRCS  
ISA  
Bus  
SHFBUSY SRAM BPAM  
OE  
A[0-15]  
SRAM  
WE  
CS  
D[0-7]  
SIN  
MEMCS16  
CLK  
VCC  
External  
BPAM  
SRAM  
Glue  
Logic  
SHFBUSY  
SA[16]  
LA[17-23]  
18183B-10  
Shared Memory Block Diagram  
Plug and Play Compatible with Flash Memory Support  
1-581  
Am79C961  
AMD  
P R E L I M I N A R Y  
Optional Address PROM Interface  
Static RAM Interface (for Shared Memory  
Only)  
The suggested address PROM is the Am27LS19, a  
32x8 device. APCS should be connected directly to the  
device’s G input.  
The SRAM is an 8Kx8 or 32Kx8 device. The PCnet-ISA+  
controller can support 64 Kbytes of SRAM address  
space. The PCnet-ISA+ controller provides SROE and  
SRWE outputs which can go directly to the OE and WE  
pins of the SRAM, respectively. The address lines are  
connected as described in the shared memory section  
and the data lines go to the Private Data Bus.  
A4–A0  
27LS19  
32 x 8 PROM  
G
Q7–Q0  
AUI  
18183B-23  
The PCnet-ISA+ controller drives the AUI through a set  
of transformers. The DI and CI inputs should each be  
terminated with a pair of matched 39 or 40.2 resis-  
tors connected in series with the middle node bypassed  
to ground with a .01 µF to 0.1 µF capacitor. Refer to the  
PCnet-ISA Technical Manual (PID #16850B) for net-  
work interface design and refer to Appendix A for a list of  
compatible AUI isolation transformers.  
Address PROM Example  
Boot PROM Interface  
The boot PROM is a 8K64K EPROM. Its OE pin  
shouldbetiedtoground, andchipenableCEtoBPCSto  
minimize power consumption at the expense of speed.  
Shown below is a 27C128.  
EEPROM Interface  
Higher density EPROMs place an address line on the  
pin that is defined for lower density EPROMs as the VPP  
(programming voltage) pin. For READ only operation on  
an EPROM, the VPP pin can assume any logic level, as  
long as the voltage on the VPP pin does not exceed the  
programming voltage threshold (typically 7 V to 12 V).  
Therefore, a socket with a 27512 pinout will also support  
2764 and 27128 EPROM devices.  
The suggested EEPROM is the industry standard  
93C56 2 Kbit serial EEPROM. This is used in the 16-bit  
mode to provide 128 x 16-bit EEPROM locations to  
store configuration information as well as the Plug and  
Play information.  
93C56  
EECS  
PRDB2/EEDO  
PRDB1/EEDI  
PRDB0/EESK  
CS  
DO  
DI  
A13-A0  
DQ7-DQ0  
VCC  
27C128  
16K x 8 EPROM  
ORG  
CLK  
CE  
OE  
18183B-25  
18183B-24  
Boot PROM Example  
1-582  
Am79C961  
P R E L I M I N A R Y  
AMD  
Technical Manual (PID #18216A) for more design de-  
tails, and refer to Appendix A for a list of compatible  
10BASE-T filter/transformer modules.  
10BASE-T Interface  
The diagram below shows the proper 10BASE-T net-  
work interface design. Refer to the PCnet Family  
Filter &  
Transformer  
Module  
RJ45  
Connector  
61.9  
TXD+  
422.0  
1:1  
TXP+  
TD+  
TD-  
1
2
XMT  
Filter  
1.21 K  
61.9  
PCnet-ISA+  
TXD-  
TXP-  
Controller  
422.0  
1:1  
RD+  
RD-  
3
6
RXD+  
RXD-  
RCV  
Filter  
100  
18183B-26  
Note: All resistors are ±1%  
10BASE-T External Components and Hookup  
Am79C961  
1-583  
AMD  
P R E L I M I N A R Y  
ABSOLUTE MAXIMUM RATINGS  
OPERATING RANGES  
Storage Temperature . . . . . . . . . . . –65°C to +150°C  
Commercial (C) Devices  
Ambient Temperature  
Temperature (TA) . . . . . . . . . . . . . . 0°C to +70°C  
Under Bias . . . . . . . . . . . . . . . . . . . . . . 0°C to +70°C  
Supply Voltages  
(AVDD, DVDD) . . . . . . . . . . . . . . . . . . . . . 5 V ±5%  
Supply Voltage to AVss  
or DVSS (AVDD, DVDD) . . . . . . . . . . . –0.3 V to +6.0 V  
All inputs within the range: . . AVSS – 0.5 V Vin ≤  
AVDD + 0.5 V, or  
Stresses above those listed under Absolute Maximum Rat-  
ings may cause permanent device failure. Functionality at or  
above these limits is not implied. Exposure to Absolute Maxi-  
mum Ratings for extended periods may affect device  
reliability. Programming conditions may differ.  
DVSS – 0.5 V Vin ≤  
DVDD + 0.5 V  
Operating ranges define those limits between which the func-  
tionality of the device is guaranteed.  
DC CHARACTERISTICS over COMMERCIAL operating ranges unless otherwise  
specified (refer to page 19 for driver types)  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
Digital Input Voltage  
VIL  
VIH  
Input LOW Voltage  
Input HIGH Voltage  
0.8  
V
V
2.0  
DVDD + 0.5  
Digital Ouput Voltage  
VOL  
VOH  
Output LOW Voltage  
Output HIGH Voltage  
0.5  
10  
V
V
(Note 1)  
2.4  
Digital Input Leakage Current  
IIX Input Leakage Current  
VDD = 5 V, VIN = 0 V  
(Note 2)  
–10  
µA  
Digital Ouput Leakage Current  
IOZL  
Output Low Leakage  
Current (Note 3)  
VOUT = 0 V  
VOUT = VDD  
–10  
µA  
µA  
IOZH  
Output High Leakage  
Current (Note 3)  
10  
Crystal Input Current  
VILX  
VILHX  
IILX  
XTAL1 Input LOW  
Threshold Voltage  
VIN = External Clock  
VIN = External Clock  
VIN = DVSS  
–0.5  
3.5  
0.8  
V
V
XTAL1 Input HIGH  
Threshold Voltage  
VDD + 0.5  
Active  
Sleep  
Active  
µA  
µA  
µA  
µA  
XTAL1 Input LOW Current  
–120  
–10  
0
0
+10  
120  
400  
IIHX  
XTAL1 Input HIGH Current  
VIN = VDD  
Sleep  
Attachment Unit Interface  
IIAXD Input Current at DI+  
AVSS < VIN < AVDD  
AVSS < VIN < AVDD  
RL = 78 Ω  
–500  
–500  
630  
+500  
+500  
1200  
+40  
µA  
µA  
and DI–  
IIAXC  
Input current at  
CI+ and CI–  
VAOD  
Differential Output Voltage  
|(DO+)–(DO–)|  
mV  
mV  
VAODOFF  
Transmit Differential Output  
Idle Voltage  
RL = 78 (Note 5)  
–40  
1-584  
Am79C961  
P R E L I M I N A R Y  
AMD  
DC CHARACTERISTICS over COMMERCIAL operating ranges unless otherwise  
specified (continued)  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
Attachment Unit Interface (continued)  
IAODOFF  
VCMT  
VODI  
Transmit Differential  
Output Idle Current  
RL = 78 (Note 4)  
RL = 78 Ω  
–1  
+1  
AVDD  
25  
mA  
V
Transmit Output Common  
Mode Voltage  
2.5  
DO± Transmit Differential  
Output Voltage Imbalance  
RL = 78 (Note 5)  
(Note 5)  
mV  
mV  
mV  
V
VATH  
Receive Data Differential  
Input Threshold  
–35  
–275  
35  
VASQ  
VIRDVD  
VICM  
DI± and CI± Differential  
Input Threshold (Squelch)  
–160  
+1.5  
DI± and CI± Differential  
Mode Input Voltage Range  
–1.5  
DI± and CI± Input Bias  
Voltage  
IIN = 0 mA  
(Note 5)  
AVDD–3.0  
AVDD–1.0  
–100  
V
VOPD  
DO± Undershoot Voltage  
at Zero Differential on  
Transmit Return to  
Zero (ETD)  
mV  
Twisted Pair Interface  
IIRXD  
Input Current at RXD±  
AVSS < VIN < AVDD  
(Note 5)  
–500  
10  
500  
µA  
RRXD  
RXD± Differential Input  
KΩ  
Resistance  
VTIVB  
RXD+, RXD– Open Circuit  
Input Voltage (Bias)  
IIN = 0 mA  
AVDD – 3.0  
–3.1  
AVDD – 1.5  
+3.1  
V
V
VTIDV  
Differential Mode Input  
AVDD = +5 V  
Voltage Range (RXD±)  
VTSQ+  
VTSQ–  
VTHS+  
VTHS–  
VLTSQ+  
VLTSQ–  
VLTHS+  
VLTHS–  
RXD Positive Squelch  
Threshold (Peak)  
Sinusoid  
5 MHz f 10 MHz  
300  
–520  
150  
520  
–300  
293  
mV  
mV  
mV  
RXD Negative Squelch  
Threshold (Peak)  
Sinusoid  
5 MHz f 10 MHz  
RXD Post-Squelch  
Positive Threshold (Peak)  
Sinusoid  
5 MHz f 10 MHz  
RXD Post-Squelch  
Negative Threshold (Peak)  
Sinusoid  
5 MHz f 10 MHz  
–293  
180  
–150  
312  
mV  
mV  
RXD Positive Squelch  
Threshold (Peak)  
LRT = 1 (Note 6)  
LRT = 1 (Note 6)  
LRT = 1 (Note 6)  
LRT = 1 (Note 6)  
RXD Negative Squelch  
Threshold (Peak)  
–312  
90  
–180  
156  
mV  
mV  
mV  
RXD Post-Squelch Positive  
Threshold (Peak)  
RXD Post-Squelch  
–156  
–90  
Negative Threshold (Peak)  
Am79C961  
1-585  
 
AMD  
P R E L I M I N A R Y  
DC CHARACTERISTICS over COMMERCIAL operating ranges unless otherwise  
specified (continued)  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
Twisted Pair Interface (continued)  
VRXDTH  
VTXH  
RXD Switching Threshold  
(Note 5)  
–35  
35  
mV  
V
TXD± and TXP± Output  
DVSS = 0 V  
DVDD – 0.6  
DVDD  
HIGH Voltage  
VTXL  
TXD± and TXP± Output  
LOW Voltage  
DVDD = +5 V  
DVSS  
–40  
DVSS + 0.6  
+40  
V
VTXI  
TXD± and TXP±  
Differential Output  
Voltage Imbalance  
mV  
VTXOFF  
TXD± and TXP± Idle  
DVDD = +5 V  
–40  
+40  
mV  
Output Voltage  
RTX  
TXD± Differential Driver  
Output Impedance  
(Note 5)  
(Note 5)  
40  
80  
TXP± Differential Driver  
Output Impedance  
IEEE 1149.1 (JTAG) Test Port  
VIL  
VIH  
VOL  
VOH  
IIL  
TCK, TMS, TDI  
TCK, TMS, TDI  
TDO  
0.8  
0.4  
V
V
2.0  
2.4  
IOL = 2.0 mA  
V
TDO  
IOH = –0.4 mA  
V
TCK, TMS, TDI  
TCK, TMS, TDI  
TDO  
VDD = 5.5 V, VI = 0.5 V  
VDD =5.5 V, VI = 2.7 V  
0.4 V < VOUT < VDD  
–200  
–100  
+10  
µA  
µA  
µA  
IIH  
IOZ  
–10  
Power Supply Current  
IDD  
Active Power Supply Current  
XTAL1 = 20 MHz  
75  
mA  
IDDCOMA  
Coma Mode Power  
Supply Current  
SLEEP active  
200  
µA  
IDDSNOOZE Snooze Mode Mall Power  
Supply Current  
Awake bit set active  
10  
mA  
Notes:  
1. VOH does not apply to open-drain output pins.  
2. IIX applies to all input only pins except DI±, CI±, XTAL1 and PRDB[7:0].  
3. IOZL applies to all three-state output pins and bi-directional pins, except PRDB[7:0]. IOZH applies to pins PRDB[7:0].  
4. Correlated to other tested parameters—not tested directly.  
5. Parameter not tested.  
6. LRT is bit 9 of Mode register (CSR15)  
1-586  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING CHARACTERISTICS: BUS MASTER MODE  
Parameter  
Symbol  
Input/Output Write Timing  
tIOW1 AEN, SBHE, SA0–9 Setup  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
10  
5
ns  
ns  
to IOW  
tIOW2  
AEN, SBHE,SA0–9 Hold  
After IOW  
tIOW3  
tIOW4  
tIOW5  
tIOW6  
tIOW7  
tIOW8  
tIOW9  
IOW Assertion  
100  
55  
10  
10  
0
ns  
ns  
ns  
ns  
ns  
ns  
ns  
IOW Inactive  
SD Setup to IOW  
SD Hold After IOW  
IOCHRDY Delay From IOW  
IOCHRDY Inactive  
IOCHRDY to IOW  
35  
125  
0
Input/Output Read Timing  
tIOR1 AEN, SBHE, SA0–9 Setup  
15  
5
ns  
ns  
to IOR  
tIOR2  
AEN, SBHE,SA0–9 Hold  
After IOR  
tIOR3  
tIOR4  
tIOR5  
tIOR6  
tIOR7  
tIOR8  
IOR Inactive  
55  
0
ns  
ns  
ns  
ns  
ns  
ns  
SD Hold After IOR  
SD Valid From IOR  
IOCHRDY Delay From IOR  
IOCHRDY Inactive  
20  
110  
35  
0
0
125  
–130  
SD Valid From IOCHRDY  
10  
I/O To Memory Command Inactive  
tIOM1 IOW/MEMW to (S)MEMR/IOR  
tIOM2 (S)MEMR/IOR to IOW/MEMW  
IOCS16 Timing  
tIOCS1 AEN, SBHE, SA0–9 to IOCS16  
tIOCS2  
55  
55  
ns  
ns  
0
0
35  
25  
ns  
ns  
AEN, SBHE, SA0–9 to IOCS16  
Tristated  
Master Mode Bus Acquisition  
tMMA1  
tMMA2  
tMMA3  
tMMA4  
tMMA5  
REF Inactive to DACK  
5
0
ns  
ns  
ns  
ns  
ns  
DRQ to DACK  
DACK Inactive  
55  
DACK to MASTER  
35  
MASTER to Active Command,  
SBHE, SA0–19, LA17–23  
125  
185  
Am79C961  
1-587  
AMD  
P R E L I M I N A R Y  
SWITCHING CHARACTERISTICS: BUS MASTER MODE (continued)  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
Master Mode Bus Release  
tMMBR1  
tMMBR2  
tMMBR3  
tMMBR4  
Command Deassert to DRQ  
45  
0
65  
ns  
ns  
ns  
ns  
DRQ to DACK  
DRQ to MASTER  
40  
–15  
60  
0
DRQ to Command, SBHE,  
SA0–19, LA17–23 Tristated  
Master Write Cycles  
tMMW1  
SBHE, SA0–19, LA17–23,  
Active to MEMW  
(Note 1)  
EXTIME + 45  
MSWRA – 10  
EXTIME + 65  
MSWRA + 5  
ns  
tMMW2  
tMMW3  
tMMW4  
MEMW Active  
(Note 2)  
(Note 1)  
ns  
ns  
ns  
MEMW Inactive  
EXTIME + 97 EXTIME + 105  
MEMW to SBHE, SA0–19,  
45  
55  
LA17–23,SD Inactive  
tMMW5  
tMMW6  
tMMW7  
SBHE, SA0–19, LA17–23, SD  
Hold After MEMW  
45  
60  
ns  
ns  
ns  
SBHE, SA0–19, LA17–23,  
SD Setup to MEMW  
(Note 1)  
EXTIME + 45  
tMMW2 – 175  
EXTIME + 55  
IOCHRDY Delay  
From MEMW  
tMMW8  
tMMW9  
tMMW10  
tMMW11  
IOCHRDY Inactive  
55  
ns  
ns  
ns  
ns  
IOCHRDY to MEMW  
SD Active to MEMW  
SD Setup to MEMW  
130  
(Note 1)  
(Note 1)  
EXTIME + 20  
EXTIME + 20  
EXTIME + 60  
EXTIME + 60  
Master Read Cycles  
tMMR1  
SBHE, SA0–19, LA17–23,  
Active to MEMR  
(Note 1)  
EXTIME + 45  
MSRDA – 10  
EXTIME + 60  
MSRDA + 5  
ns  
tMMR2  
tMMR3  
tMMR4  
MEMR Active  
(Note 2)  
(Note 1)  
ns  
ns  
ns  
MEMR Inactive  
EXTIME + 97 EXTIME + 105  
MEMR to SBHE, SA0–19,  
45  
55  
LA17–23 Inactive  
tMMR5  
tMMR6  
tMMR7  
SBHE, SA0–19, LA17–23  
Hold After MEMW  
45  
55  
ns  
ns  
ns  
SBHE, SA0–19, LA17–23  
Setup to MEMR  
(Note 1)  
EXTIME + 45  
tMMR2 – 175  
EXTIME + 55  
IOCHRDY Delay From  
MEMR  
tMMR8  
tMMR9  
tMMR10  
tMMR11  
IOCHRDY Inactive  
55  
130  
30  
0
ns  
ns  
ns  
ns  
IOCHRDY to MEMR  
SD Setup to MEMR  
SD Hold After MEMR  
1-588  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING CHARACTERISTICS: BUS MASTER MODE (continued)  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
Master Mode Address PROM Read  
tMA1  
tMA2  
tMA3  
tMA4  
tMA5  
tMA6  
IOR to APCS  
125  
140  
20  
0
260  
155  
ns  
ns  
ns  
ns  
ns  
ns  
APCS Active  
PRDB Setup to APCS  
PRDB Hold After APCS  
APCS to IOCHRDY  
SD Valid From IOCHRDY  
45  
0
65  
10  
Master Mode Boot PROM Read  
tMB1  
tMB2  
tMB3  
REF, SBHE,SA0–19 Setup  
to SMEMR  
10  
5
ns  
ns  
ns  
REF, SBHE,SA0–19 Hold  
SMEMR  
IOCHRDY Delay  
From SMEMR  
0
35  
tMB4  
tMB5  
SMEMR Inactive  
55  
125  
290  
45  
20  
0
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
SMEMR to BPCS  
BPCS Active  
260  
305  
65  
tMB6  
tMB7  
BPCS to IOCHRDY  
PRDB Setup to BPCS  
PRDB Hold After BPCS  
SD Valid From IOCHRDY  
SD Hold After SMEMR  
LA20–23 Hold From BALE  
LA20–23 Setup to MEMR  
BALE Setup to MEMR  
tMB8  
tMB9  
tMB10  
tMB11  
tMB12  
tMB13  
tMB14  
0
10  
20  
0
10  
10  
10  
Notes:  
1. EXTIME is 100 ns when ISACSR2, bit 4, is cleared (default). EXTIME is 0 ns when ISACSR2, bit 4, is set.  
2. MSRDA and MSWDA are parameters which are defined in registers ISACSR0 and ISACSR1, respectively.  
Am79C961  
1-589  
AMD  
P R E L I M I N A R Y  
SWITCHING CHARACTERISTICS: BUS MASTER MODE—FLASH READ CYCLE  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
tMFR1  
REF, SBHE,SA0–19 Setup  
10  
ns  
to MEMR  
tMFR2  
REF, SBHE,SA0–19 Hold From  
5
ns  
MEMR  
tMFR3  
tMFR4  
tMFR5  
tMFR6  
tMFR7  
tMFR8  
tMFR9  
tMFR10  
tMFR11  
tMFR12  
tMFR13  
tMFR14  
IOCHRDY to MEMR  
MEMR Inactive  
0
55  
125  
190  
45  
20  
0
35  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
MEMR to BPCS  
260  
205  
65  
BPCS Active  
BPCS to IOCHRDY  
PRDB Setup to of BPCS  
PRDB Hold to of BPCS  
SD Valid From IOCHRDY  
SD Tristate to MEMR  
LA20–23 Hold From BALE  
LA20–23 Setup to MEMR  
BALE Setup to MEMR  
0
10  
20  
0
10  
10  
15  
SWITCHING CHARACTERISTICS: BUS MASTER MODE—FLASH WRITE CYCLE  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
tMFW1  
SBHE, SA0–19 Setup  
to MEMW  
10  
ns  
tMFW2  
SBHE, SA0–19 Hold  
From MEMW  
5
ns  
tMFW3  
tMFW4  
tMFW5  
tMFW6  
tMFW7  
tMFW8  
tMFW9  
tMFW10  
tMFW11  
tMFW12  
tMFW13  
tMFW14  
tMFW15  
IOCHRDY to MEMW  
MEMW Inactive  
0
50  
20  
0
35  
90  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
FL_WE to IOCHRDY  
MEMW Hold From IOCHRDY  
SD Valid From MEMW  
SD Hold From MEMW  
PRDB Valid From MEMW  
PRDB Setup to FL_WE  
FL_WE Active  
175  
175  
155  
0
15  
140  
15  
PRDB Hold From FL_WE  
LA20–23 Hold From BALE  
LA20–23 Setup to MEMW  
BALE Setup to MEMW  
10  
ns  
ns  
ns  
10  
15  
1-590  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING CHARACTERISTICS: SHARED MEMORY MODE  
Parameter  
Symbol  
Input/Output Write Timing  
tIOW1 AEN, SBHE, SA0–9 Setup  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
10  
5
ns  
ns  
to IOW  
tIOW2  
AEN, SBHE,SA0–9 Hold  
From IOW  
tIOW3  
tIOW4  
tIOW5  
tIOW6  
tIOW7  
tIOW8  
tIOW9  
IOW Assertion  
150  
55  
10  
10  
0
ns  
ns  
ns  
ns  
ns  
ns  
ns  
IOW Inactive  
SD Setup to IOW  
SD Hold After IOW  
IOCHRDY Delay From IOW  
IOCHRDY Inactive  
IOCHRDY to IOW  
35  
125  
0
Input/Output Read Timing  
tIOR1 AEN, SBHE, SA0–9 Setup  
15  
5
ns  
ns  
to IOR  
tIOR2  
AEN, SBHE,SA0–9 Hold  
After IOR  
tIOR3  
tIOR4  
tIOR5  
tIOR6  
tIOR7  
tIOR8  
IOR Inactive  
55  
0
ns  
ns  
ns  
ns  
ns  
ns  
SD Hold From IOR  
SD Valid From IOR  
IOCHRDY Delay From IOR  
IOCHRDY Inactive  
20  
110  
35  
0
0
125  
–130  
SD Valid From IOCHRDY  
10  
Memory Write Timing  
tMW1 SA0–15, SBHE, SMAM Setup  
10  
5
ns  
ns  
to MEMW  
tMW2  
SA0–15, SBHE, SMAM Hold  
From MEMW  
tMW3  
tMW4  
tMW5  
tMW6  
tMW7  
MEMW Assertion  
150  
55  
10  
10  
0
ns  
ns  
ns  
ns  
ns  
MEMW Inactive  
SD Setup to MEMW  
SD Hold From MEMW  
IOCHRDY Delay From  
MEMW  
35  
tMW8  
tMW9  
IOCHRDY Inactive  
125  
0
ns  
ns  
MEMW to IOCHRDY  
Am79C961  
1-591  
AMD  
P R E L I M I N A R Y  
SWITCHING CHARACTERISTICS: SHARED MEMORY MODE (continued)  
Parameter  
Symbol  
Memory Read Timing  
tMR1 SA0–15, SBHE, SMAM/BPAM  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
10  
5
ns  
ns  
Setup to MEMR  
tMR2  
SA0–15, SBHE, SMAM/BPAM  
Hold From MEMR  
tMR3  
tMR4  
tMR5  
tMR6  
tMR7  
tMR8  
MEMR Inactive  
55  
0
ns  
ns  
ns  
ns  
ns  
ns  
SD Hold From MEMR  
SD Valid From MEMR  
IOCHRDY Delay From MEMR  
IOCHRDY Inactive  
20  
110  
35  
0
0
125  
–130  
SD Valid From IOCHRDY  
10  
I/O To Memory Command Inactive  
tIOM1 IOW/MEMW to (S)MEMR/IOR  
tIOM2 (S)MEMR/IOR to IOW/MEMW  
IOCS16 Timing  
tIOCS1 AEN, SBHE, SA0–9 to IOCS16  
tIOCS2  
55  
55  
ns  
ns  
0
0
35  
25  
ns  
ns  
AEN, SBHE, SA0–9 to IOCS16  
Tristated  
SRAM Read/Write, Boot PROM Read, Address PROM Read on Private Bus  
tPR4  
tPR5  
tPR6  
tPR7  
PRAB Change to PRAB  
Change, SRAM Access  
95  
20  
0
105  
ns  
ns  
ns  
ns  
PRDB Setup to PRAB  
Change, SRAM Access  
PRDB Hold From PRAB  
Change, SRAM Access  
PRAB Change to PRAB  
Change, APROM Access  
145  
155  
1-592  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING CHARACTERISTICS: SHARED MEMORY MODE (continued)  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
SRAM Read/Write, Boot PROM Read, Address PROM Read on Private Bus (continued)  
tPR8  
PRDB Setup to PRAB  
Change, APROM Access  
20  
0
ns  
ns  
ns  
ns  
ns  
ns  
tPR9  
PRDB Hold After PRAB  
Change, APROM Access  
tPR10  
tPR11  
tPR12  
tPR13  
PRAB Change to PRAB  
Change, BPROM Access  
290  
20  
0
305  
155  
PRDB Setup to PRAB  
Change, BPROM Access  
PRDB Hold After PRAB  
Change, BPROM Access  
PRAB Change to PRAB  
Change, SRAM Write  
145  
tPR14  
tPR15  
tPR16  
PRAB Change to SRWE  
PRAB Change to SRWE  
20  
30  
ns  
ns  
ns  
120  
190  
130  
205  
PRAB Change to PRAB Change,  
Flash Access  
tPR17  
PRAB Change to PRAB Change,  
Flash Write  
190  
170  
205  
180  
ns  
ns  
tPR18  
PRAB Change toSRWE  
Am79C961  
1-593  
AMD  
P R E L I M I N A R Y  
SWITCHING CHARACTERISTICS: SHARED MEMORY MODE—FLASH READ CYCLE  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
tMFR1  
BPAM, REF, SBHE, SA0–19  
10  
ns  
Setup to MEMR  
tMFR2  
BPAM, REF, SBHE, SA0–19 Hold  
5
ns  
From MEMR  
tMFR3  
tMFR4  
tMFR5  
tMFR6  
tMFR7  
tMFR8  
IOCHRDY to MEMR  
MEMR Inactive  
0
35  
ns  
ns  
ns  
ns  
ns  
ns  
55  
MEMR to BPCS/SROE  
BPCS/SROE Active  
125  
190  
45  
260  
205  
65  
BPCS/SROE to IOCHRDY  
PRDB Setup to  
20  
of BPCS/SROE  
tMFR9  
PRDB Hold to  
0
ns  
of BPCS/SROE  
tMFR10  
tMFR11  
SD Valid From IOCHRDY  
SD Tristate to MEMR  
0
0
10  
20  
ns  
ns  
SWITCHING CHARACTERISTICS: SHARED MEMORY MODE—FLASH WRITE CYCLE  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
tMFW1  
BPAM, SBHE, SA0–19  
10  
ns  
Setup to MEMW  
tMFW2  
BPAM, SBHE, SA0–19  
5
ns  
Hold After MEMW  
tMFW3  
tMFW4  
tMFW5  
tMFW6  
tMFW7  
tMFW8  
tMFW9  
IOCHRDY to MEMW  
MEMW Inactive  
0
50  
20  
0
35  
90  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
SRWE to IOCHRDY  
MEMW Hold From IOCHRDY  
SD Valid From MEMW  
SD Hold From MEMW  
175  
175  
0
BPCS/PRDB Valid From  
MEMW  
tMFW10  
tMFW11  
tMFW12  
BPCS/PRDB Setup to SRWE  
SRWE Active  
15  
140  
15  
ns  
ns  
ns  
155  
BPCS/PRDB Hold From SRWE  
1-594  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING CHARACTERISTICS: EADI  
Parameter  
Symbol  
Parameter Description  
SRD Setup to SRDCLK  
SRD Hold to SRDCLK  
Test Conditions  
Min  
40  
Max  
Unit  
tEAD1  
tEAD2  
tEAD3  
tEAD4  
ns  
ns  
ns  
ns  
40  
SF/BD Change to SRDCLK  
–15  
50  
+15  
EAR Deassertion to ↑  
SRDCLK (First Rising Edge)  
tEAD5  
EAR Assertion From SFD  
Event (Packet Rejection)  
0
51,090  
ns  
ns  
tEAD6  
EAR Assertion  
110  
Note: External Address Detection interface is invoked by setting bit 3 in ISACSR2 and resetting bit 0 in ISACSR2. External  
MAU select is not available when EADISEL bit is set.  
SWITCHING CHARACTERISTICS: JTAG (IEEE 1149.1) INTERFACE  
Parameter  
Symbol  
tJTG1  
tJTG2  
tJTG3  
tJTG4  
tJTG5  
tJTG6  
tJTG7  
tJTG8  
Parameter Description  
TCK HIGH Assertion  
TCK Period  
Test Conditions  
Min  
20  
50  
5
Max  
Unit  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
TDI Setup to TCK  
TDI, TMS Hold From TCK  
TMS Setup to TCK  
TDO Active From TCK  
TDO Change From TCK  
TDO Tristate From TCK  
5
8
0
30  
30  
25  
0
0
Note: JTAG logic is reset with an internal Power-On Reset circuit independent of Sleep Modes.  
Am79C961  
1-595  
AMD  
P R E L I M I N A R Y  
SWITCHING CHARACTERISTICS: GPSI  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
Transmit Timing  
tGPT1  
tGPT2  
tGPT3  
tGPT4  
tGPT5  
tGPT6  
tGPT7  
STDCLK Period (802.3 Compliant)  
STDCLK HIGH Time  
99.99  
40  
100.01  
60  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
TXDAT and TXEN Delay from TCLK  
RXCRS Setup to STDCLK(Last Bit)  
RXCRS Hold From TENA  
0
70  
210  
0
CLSN Active Time to Trigger Collision  
(Note 1)  
110  
0
CLSN Active to RXCRS to Prevent  
LCAR Assertion  
tGPT8  
CLSN Active to RXCRS for SQE  
Hearbeat Window  
0
0
4.0  
µs  
µs  
tGPT9  
CLSN Active to RXCRS for Normal Collision  
51.2  
Receive Timing  
tGPR1  
SRDCLK Period  
(Note 2)  
(Note 2)  
(Note 2)  
80  
30  
30  
15  
15  
0
120  
80  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
tGPR2  
SRDCLK High Time  
tGPR3  
SRDCLK Low Time  
80  
tGPR4  
RXDAT and RXCRS Setup to SRDCLK  
RXDAT Hold From RCLK  
RXCRS Hold From SRDCLK  
tGPR5  
tGPR6  
tGPR7  
CLSN Active to First SRDCLK  
0
(Collision Recognition)  
tGPR8  
CLSN Active to SRDCLKfor  
Address Type Designation Bit  
(Note 3)  
51.2  
210  
µs  
tGPR9  
CLSN Setup to last SRDCLKfor  
ns  
Collision Recognition  
tGPR10  
tGPR11  
CLSN Active  
110  
300  
300  
ns  
ns  
ns  
CLSN Inactive Setup to First RCLK  
CLSN Inactive Hold to Last RCLK  
tGPR12  
Notes:  
1. CLSN must be asserted for a continuous period of 110 ns or more. Assertion for less than 110 ns period may or may  
not result in CLSN recognition.  
2. RCLK should meet jitter requirements of IEEE 802.3 specification.  
3. CLSN assertion before 51.2 µs will be indicated as a normal collision. CLSN assertion after 51.2 µs will be  
considered as a Late Receive Collision.  
1-596  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING CHARACTERISTICS: AUI  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
AUI Port  
tDOTR  
DO+,DO- Rise Time (10% to 90%)  
DO+,DO- Fall Time (90% to 10%)  
DO+,DO- Rise and fall Time Mismatch  
DO+/- End of Transmission  
2.5  
2.5  
5.0  
5.0  
1.0  
375  
45  
ns  
ns  
ns  
ns  
ns  
tDOTF  
tDORM  
tDOETD  
tPWODI  
200  
15  
DI Pulse Width Accept/Reject  
Threshold  
|VIN| > |VASQ  
(Note 1)  
|
|
|
|
tPWKDI  
tPWOCI  
tPWKCI  
DI Pulse Width Maintain/Turn-Off  
Threshold  
|VIN| > |VASQ  
(Note 2)  
136  
10  
200  
26  
ns  
ns  
ns  
CI Pulse Width Accept/Reject  
Threshold  
|VIN| > |VASQ  
(Note 3)  
CI Pulse Width Maintain/Turn-Off  
Threshold  
|VIN| > |VASQ  
(Note 4)  
90  
160  
Internal MENDEC Clock Timing  
tX1  
XTAL1 Period  
VIN = External Clock  
VIN = External Clock  
VIN = External Clock  
VIN = External Clock  
VIN = External Clock  
49.995  
20  
50.005  
ns  
ns  
ns  
ns  
ns  
tX1H  
tX1L  
tX1R  
tX1F  
XTAL1 HIGH Pulse Width  
XTAL1 LOW Pulse width  
XTAL1 Rise Time  
20  
5
5
XTAL1 Fall Time  
Notes:  
1. DI pulses narrower than tPWODI (min) will be rejected; pulses wider than tPWODI (max) will turn internal DI carrier sense on.  
2. DI pulses narrower than tPWKDI (min) will maintain internal DI carrier sense on; pulses wider than tPWKDI (max) will turn  
internal DI carrier sense off.  
3. CI pulses narrower than tPWOCI (min) will be rejected; pulses wider than tPWOCI (max) will turn internal CI carrier sense on.  
4. CI pulses narrower than tPWKCI (min) will maintain internal CI carrier sense on; pulses wider than tPWKCI (max) will turn  
internal CI carrier sense off.  
Am79C961  
1-597  
AMD  
P R E L I M I N A R Y  
SWITCHING CHARACTERISTICS: 10BASE-T INTERFACE  
Parameter  
Symbol  
Parameter Description  
Test Conditions  
Min  
Max  
Unit  
Transmit Timing  
tTETD  
tTR  
Transmit Start of Idle  
Transmitter Rise Time  
Transmitter Fall Time  
250  
350  
5.5  
5.5  
2
ns  
ns  
ns  
ns  
(10% to 90%)  
tTF  
(90% to 10%)  
tTM  
Transmitter Rise and Fall  
Time Mismatch  
tPERLP  
tPWLP  
Idle Signal Period  
8
24  
120  
55  
ms  
ns  
ns  
Idle Link Pulse Width  
(Note 1)  
(Note 1)  
75  
45  
tPWPLP  
Predistortion Idle Link Pulse  
Width  
tJA  
tJR  
Receive Timing  
Transmit Jabber Activation Time  
20  
150  
750  
ms  
ms  
Transmit Jabber Reset Time  
250  
tPWNRD  
RXD Pulse Width Not to Turn  
Off Internal Carrier Sense  
VIN > VTHS (min)  
VIN > VTHS (min)  
136  
ns  
ns  
tPWROFF  
RXD Pulse Width to Turn Off  
200  
Note:  
1. Not tested; parameter guaranteed by characterization.  
SWITCHING CHARACTERISTICS: SERIAL EEPROM  
Parameter  
Symbol  
Parameter Description  
EESK High Time  
Test Conditions  
Min  
790  
790  
-15  
Max  
Unit  
ns  
tSR1  
tSR2  
EESK Low Time  
ns  
tSR3  
EECS EEDI From EESK  
15  
15  
ns  
tSR4  
EECS, EEDI and SHFBUSY  
From EESK  
-15  
ns  
tSR5  
tSR6  
tSR7  
tSL1  
tSL2  
tSL3  
EECS Low Time  
1590  
35  
ns  
ns  
ns  
ns  
ns  
ns  
EEDO Setup to EESK  
EEDO Hold From EESK  
EEDO Setup to IOR  
EEDO Setup to IOCHRDY  
0
95  
140  
160  
EESK, EEDI, EECS and  
235  
SHFBUSY Delay FromIOW  
1-598  
Am79C961  
P R E L I M I N A R Y  
AMD  
KEY TO SWITCHING WAVEFORMS  
WAVEFORM  
INPUTS  
OUTPUTS  
Must be  
Steady  
Will be  
Steady  
May  
Change  
from H to L  
Will be  
Changing  
from H to L  
May  
Change  
from L to H  
Will be  
Changing  
from L to H  
Don’t Care,  
Any Change  
Permitted  
Changing,  
State  
Unknown  
Does Not  
Apply  
Center  
Line is High-  
Impedance  
“Off” State  
KS000010  
Am79C961  
1-599  
AMD  
P R E L I M I N A R Y  
SWITCHING TEST CIRCUITS  
IOL  
Sense Point  
VTHRESHOLD  
CL  
IOH  
18183B-26  
Normal and Three-State Outputs  
AVDD  
52.3 Ω  
DO+  
DO–  
Test Point  
154 Ω  
100 pF  
AVSS  
18183B-27  
AUI DO Switching Test Circuit  
1-600  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING TEST CIRCUITS  
DVDD  
294 Ω  
TXD+  
TXD–  
Test Point  
294 Ω  
100 pF  
Includes Test  
Jig Capacitance  
DVSS  
18183B-28  
TXD Switching Test Circuit  
DVDD  
715 Ω  
TXP+  
TXP–  
Test Point  
715 Ω  
100 pF  
Includes Test  
Jig Capacitance  
DVSS  
18183B-29  
TXP Outputs Test Circuit  
Am79C961  
1-601  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: BUS MASTER MODE  
AEN, SBHE,  
Stable  
tIOW3  
SA0–9  
tIOW1  
tIOW2  
IOW  
tIOW4  
tIOW6  
tIOW5  
SD  
18183B-30  
I/O Write without Wait States  
AEN, SBHE,  
Stable  
SA0–9  
tIOW1  
tIOW2  
IOW  
tIOW4  
tIOW7  
tIOW8  
tIOW9  
IOCHRDY  
SD  
tIOW5  
tIOW6  
18183B-31  
I/O Write with Wait States  
1-602  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: BUS MASTER MODE  
EESK  
(PRDB0)  
EECS  
0
1
1
0
0
A6 A5 A4 A3 A2 A1 A0  
EEDI  
(PRDB1)  
EEDO  
(PRDB2)  
D0 D1 D2  
D14 D15  
Falling transition at 26th Word, if checksum is 0xFF.  
18183B-32  
SHFBUSY  
Serial Shift EEPROM Interface Read Timing  
tSR1  
tSR2  
EESK  
(PRDB0)  
tSR3  
tSR4  
tSR5  
EECS  
EEDI  
(PRDB1)  
SHFBSY  
EED0  
(PRDB2)  
Stable  
tSR6 tSR7  
18183A-33  
Serial EEPROM Control Timing  
Am79C961  
1-603  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: BUS MASTER MODE  
EED0  
(PRDB2)  
tSL1  
IOR  
tSL2  
IOCHRDY  
IOW  
tSL3  
EESK, EEDI,  
EECS,  
SHFBUSY  
18183B-34  
Slave Serial EEPROM Latency Timing  
AEN, SBHE,  
Stable  
SA0–9  
tIOR1  
tIOR2  
IOR  
tIOR3  
tIOR4  
tIOR5  
Stable  
SD  
18183B-35  
I/O Read without Wait States  
1-604  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: BUS MASTER MODE  
AEN, SBHE,  
Stable  
SA0–9  
tIOR1  
tIOR2  
IOR  
tIOR3  
tIOR6  
tIOR7  
IOCHRDY  
SD  
tIOR8  
tIOR4  
Stable  
18183B-36  
I/O Read with Wait States  
IOW, MEMW  
MEMR, IOR  
tIOM1  
tIOM2  
18183B-37  
I/O to Memory Command Inactive Time  
Am79C961  
1-605  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: BUS MASTER MODE  
AEN, SBHE,  
SA0–9  
tIOCS1  
tIOCS2  
IOCS16  
18183B-38  
IOCS16 Timings  
REF  
tMMA1  
DRQ  
tMMA2  
DACK  
tMMA3  
MASTER  
tMMA4  
MEMR/MEMW  
tMMA5  
SBHE,  
SA0–19,  
LA17–23  
18183B-39  
Bus Acquisition  
1-606  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: BUS MASTER MODE  
DRQ  
tMMBR1  
tMMBR2  
DACK  
tMMBR3  
MASTER  
MEMR/MEMW  
tMMBR4  
SBHE, SA0–19,  
LA17–23  
18183B-40  
Bus Release  
(Non Wait)  
(Wait States Added)  
tMMW5  
tMMW6  
SBHE, SA0–19,  
LA17–23  
tMMW4  
tMMW1  
tMMW2  
tMMW3  
MEMW  
tMMW7  
tMMW8 tMMW9  
IOCHRDY  
tMMW11  
tMMW10  
SD0–15  
18183B-41  
Write Cycles  
Am79C961  
1-607  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: BUS MASTER MODE  
(Non Wait)  
(Wait States Added)  
Stable  
tMMR5  
tMMR6  
SBHE, SA0–19,  
Stable  
LA17–23  
tMMR4  
tMMR1  
tMMR2  
tMMR3  
MEMR  
tMMR7  
tMMR8 tMMR9  
IOCHRDY  
tMMR10  
tMMR11  
tMMR10  
tMMR11  
Stable  
Stable  
SD0–15  
18183B-42  
Read Cycles  
AEN, SBHE,  
Stable  
SA0–9  
tIOR2  
tIOR1  
IOR  
tIOR3  
tIOR6  
tMA5  
IOCHRDY  
tMA1  
tMA2  
APCS  
(IRQ15)  
tMA3  
tMA4  
PRDB0–7  
SD0–7  
tMA6  
tIOR4  
Stable  
18183B-43  
External Address PROM Read Cycle  
1-608  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: BUS MASTER MODE  
BALE  
tMB12  
Stable  
LA20–23  
tMB13  
REF, SBHE,  
Stable  
SA0–19  
tMB1  
tMB2  
MEMR  
tMB14  
tMB3  
tMB4  
tMB7  
IOCHRDY  
tMB5  
tMB6  
BPCS  
tMB8  
tMB9  
PRDB0–7  
SD0–7  
tMB10  
tMB11  
Stable  
18183B-44  
Boot PROM Read Cycle  
Am79C961  
1-609  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: BUS MASTER MODE  
BALE  
tMFR12  
Stable  
LA20–23  
tMFR13  
REF, SBHE,  
Stable  
SA0–19  
tMFR2  
tMFR1  
MEMR  
tMFR14  
tMFR3  
tMFR4  
tMFR7  
IOCHRDY  
tMFR5  
tMFR6  
BPCS  
tMFR8  
tMFR9  
PRDB0–7  
SD0–7  
tMFR10  
tMFR11  
Stable  
18183B-45  
Flash Read Cycle  
1-610  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: BUS MASTER MODE  
BALE  
tMFW13  
Stable  
LA20–23  
tMFW14  
SBHE,  
SA0–19  
Stable  
tMFW1  
tMFW2  
MEMW  
tMFW15  
tMFW3  
tMFW6  
tMFR4  
IOCHRDY  
tMFW5  
tMFW7  
tMFW8  
SD0-7  
Stable  
tMFW11  
tMFW10  
FL_WE (IRQ12)  
tMFW12  
tMFW9  
Stable  
PRDB0-7  
18183B-46  
Flash Write Cycle  
Am79C961  
1-611  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
AEN, SBHE,  
Stable  
tIOW3  
SA0–9  
tIOW1  
tIOW2  
IOW  
tIOW4  
tIOW5  
tIOW6  
SD  
18183B-47  
I/O Write without Wait States  
AEN, SBHE,  
Stable  
SA0–9  
tIOW1  
tIOW2  
IOW  
tIOW4  
tIOW7  
tIOW8  
tIOW9  
IOCHRDY  
tIOW5  
tIOW6  
SD  
18183B-48  
I/O Write with Wait States  
1-612  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
AEN, SBHE,  
Stable  
SA0–9  
tIOR1  
tIOR2  
IOR  
tIOR3  
tIOR5  
tIOR4  
SD  
Stable  
18183B-49  
I/O Read without Wait States  
AEN, SBHE,  
Stable  
SA0–9  
tIOR1  
tIOR2  
IOR  
tIOR3  
tIOR6  
tIOR7  
IOCHRDY  
tIOR8  
tIOR4  
Stable  
SD  
18183B-50  
I/O Read with Wait States  
Am79C961  
1-613  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
SA0–15,  
SBHE  
Stable  
SMAM  
tMW1  
tMW3  
tMW2  
MEMW  
tMW4  
tMW5  
tMW6  
SD  
18183B-51  
Memory Write without Wait States  
SA0–15,  
SBHE  
Stable  
SMAM  
tMW1  
tMW2  
MEMW  
tMW4  
tMW7  
tMW8  
tMW9  
IOCHRDY  
tMW5  
tMW6  
SD  
18183B-52  
Memory Write with Wait States  
1-614  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
SA0–15,  
SBHE  
Stable  
SMAM  
tMR1  
tMR2  
MEMR  
tMR3  
tMR4  
tMR5  
Stable  
SD  
18183B-53  
Memory Read without Wait States  
SA0–15,  
SBHE  
Stable  
SMAM/BPAM  
tMR1  
tMR2  
MEMR  
tMR3  
tMR6  
tMR7  
IOCHRDY  
SD  
tMR8  
tMR4  
Stable  
18183B-54  
Memory Read with Wait States  
Am79C961  
1-615  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
IOW, MEMW  
tIOM1  
tIOM2  
MEMR, IOR  
18183B-55  
I/O to Memory Command Inactive Time  
AEN, SBHE,  
SA0–9  
tIOCS1  
tIOCS2  
IOCS16  
18183B-56  
IOCS16 Timings  
1-616  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
SBHE,  
SA0–15,  
Stable  
BPAM  
tSFW1  
tSFW2  
MEMW  
tSFW3  
tSFW6  
tSFR4  
IOCHRDY  
tSFW5  
tSFW7  
tSFW8  
SD0-7  
Stable  
tSFW11  
tSFW10  
SRWE  
BPCS  
tSFW12  
tSFW9  
Stable  
PRDB0-7  
18183B-57  
Flash Write Cycle  
Am79C961  
1-617  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
REF,  
Stable  
SBHE  
SA0-15  
tSFR1  
tSFR2  
MEMR  
tSFR3  
tSFR4  
IOCHRDY  
tSFR7  
tSFR5  
SROE  
tSFR6  
BPCS  
tSFR8  
tSFR9  
PRDB0–7  
tSFR10  
tSFR11  
SD0–7  
Stable  
18183B-58  
Flash Read Cycle  
1-618  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
tPR13  
tPR13  
PRAB  
tPR14  
tPR14  
tPR15  
tPR15  
SRWE  
PRDB  
SRCS  
(IRQ12)  
18183B-59  
SRAM Write on Private Bus (When FL_Sel is Enabled)  
tPR4  
tPR4  
PRAB  
SROE  
tPR5  
tPR6  
tPR5  
tPR6  
PRDB  
SRCS  
(IRQ12)  
18183B-60  
SRAM Read on Private Bus (When FL_Sel is Enabled)  
Am79C961  
1-619  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
tPR10  
tPR10  
PRAB  
BPCS  
tPR11  
tPR12  
tPR11  
tPR12  
PRDB  
18183B-61  
Boot PROM Read on Private Bus  
tPR7  
PRAB0–9  
APCS  
(IRQ15)  
tPR8  
tPR9  
PRDB  
18183B-62  
Address PROM Read on Private Bus  
1-620  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: SHARED MEMORY MODE  
tPR17  
tPR17  
PRAB0  
tPR14  
tPR14  
tPR18  
tPR18  
SRWE  
PRDB  
FLCS  
18183B-63  
Flash Write on Private Bus  
tPR16  
tPR16  
PRAB0  
FLOE  
FLCS  
tPR11  
tPR12  
tPR11  
tPR12  
PRDB  
18183B-64  
Flash Read on Private Bus  
Am79C961  
1-621  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: GPSI  
(First Bit Preamble)  
(Last Bit )  
tGPT1  
tGPT2  
Transmit  
Clock  
(STDCLK)  
tGPT3  
Transmit  
Data  
(TXDAT)  
tGPT3  
tGPT3  
Transmit  
Enable  
(TXEN)  
tGPT4  
Carrier  
Present  
tGPT5  
(RXCRS)  
(Note 1)  
tGPT6  
tGPT9  
Collision  
(CLSN)  
(Note 2)  
tGPT7  
tGPT8  
18183B-65  
Notes:  
1. If RXCRS is not present during transmission, LCAR bit in TMD3 will be set.  
2. If CLSN is not present during or shortly after transmission, CERR in CSR0 will be set.  
Transmit Timing  
(First Bit Preamble)  
(Address Type Designation Bit) (Last Bit)  
tGPR1  
tGPR2  
tGPR3  
Receive  
Clock  
(SRDCLK)  
tGPR4  
tGPR4  
tGPR5  
tGPR5  
Receive  
Data  
(RXDAT)  
tGPR6  
Carrier  
Present  
(RXCRS)  
tGPR8  
tGPR9  
tGPR10  
tGPR7  
Collision  
(CLSN),  
Active  
tGPR11  
tGPR12  
Collision  
(CLSN),  
Inactive  
(No Collision)  
18183B-66  
Receive Timing  
1-622  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: EADI  
Preamble  
Data Field  
SRDCLK (LED3)  
SRD (LED2)  
One Zero One  
tEAD2  
SFD  
Bit 0 Bit 1 Bit 2 Bit 3 Bit 4  
Bit 8 Bit 0  
Bit 7 Bit 8  
tEAD1  
SF/BD (LED1)  
tEAD4  
tEAD3  
tEAD3  
Accept  
EAR (MAUSEL)  
Reject  
tEAD6  
tEAD5  
18183B-67  
EADI Reject Timing  
SWITCHING WAVEFORMS: JTAG (IEEE 1149.1) INTERFACE  
tJTG1  
TCK  
tJTG2  
tJTG3  
tJTG4  
TDI  
TMS  
TDO  
tJTG5  
tJTG6  
tJTG7  
tJTG8  
18183B-68  
Test Access Port Timing  
Am79C961  
1-623  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: AUI  
tX1H  
XTAL1  
tX1L  
tX1F  
tX1R  
tXI  
ISTDCLK  
(Note 1)  
ITXEN  
(Note 1)  
1
1
1
1
ITXDAT+  
(Note 1)  
0
0
tDOTR  
tDOTF  
DO+  
DO–  
1
DO±  
18183B-69  
Note:  
1. Internal signal and is shown for clarification only.  
Transmit Timing—Start of Packet  
XTAL1  
ISTDCLK  
(Note 1)  
ITXEN  
(Note 1)  
1
1
ITXDAT+  
(Note 1)  
0
0
DO+  
DO–  
tDOETD  
Typical > 200 ns  
DO±  
1
0
0
Bit (n–2)  
Bit (n–1)  
Bit (n)  
18183B-70  
Note:  
1. Internal signal and is shown for clarification only.  
Transmit Timing—End of Packet (Last Bit = 0)  
1-624  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: AUI  
XTAL1  
ISTDCLK  
(Note 1)  
ITXEN  
(Note 1)  
1
1
1
ITXDAT+  
(Note 1)  
0
DO+  
DO–  
tDOETD  
DO±  
Typical > 250 ns  
1
0
Bit (n–2)  
Bit (n–1) Bit (n)  
18183B-71  
Note:  
1. Internal signal and is shown for clarification only.  
Transmit Timing—End of Packet (Last Bit = 1)  
Am79C961  
1-625  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: AUI  
tPWKDI  
DI+/–  
VASQ  
tPWKDI  
tPWODI  
18183B-72  
Receive Timing Diagram  
tPWKCI  
CI+/–  
VASQ  
tPWOCI  
18183B-73  
tPWKCI  
Collision Timing Diagram  
tDOETD  
40 mV  
DO+/–  
0 V  
100 mV max.  
80 Bit Times  
18183B-74  
Port DO ETD Waveform  
1-626  
Am79C961  
P R E L I M I N A R Y  
AMD  
SWITCHING WAVEFORMS: 10BASE-T INTERFACE  
tTR  
tTF  
TXD+  
tTETD  
TXP+  
TXD–  
TXP–  
XMT  
18183B-75  
Transmit Timing  
tPWPLP  
TXD+  
TXP+  
TXD–  
TXP–  
tPWLP  
tPERLP  
18183B-76  
Idle Link Test Pulse  
Am79C961  
1-627  
AMD  
P R E L I M I N A R Y  
SWITCHING WAVEFORMS: 10BASE-T INTERFACE  
VTSQ+  
VTHS+  
VTHS–  
RXD±  
VTSQ–  
18183B-77  
Receive Thresholds (LRT = 0 in CSR15 bit 9)  
VLTSQ+  
VLTHS+  
VLTHS–  
RXD±  
VLTSQ–  
18183B-78  
Receive Thresholds (LRT = 1 in CSR15 bit 9)  
1-628  
Am79C961  
APPENDIX A  
PCnet-ISA+ Compatible Media  
Interface Modules  
PCnet-ISA+ COMPATIBLE 10BASE-T  
FILTERS AND TRANSFORMERS  
The table below provides a sample list of PCnet-ISA+  
compatible 10BASE-T filter and transformer modules  
available from various vendors. Contact the respective  
manufacturer for a complete and updated listing of  
components.  
Filters  
and  
Filters  
Filters  
Filters  
Transformers Transformers Transformers  
Manufacturer  
Bel Fuse  
Part No.  
Package  
Transformers and Choke  
Dual Choke Dual Chokes  
A556-2006-DE 16-pin 0.3” DIL  
0556-2006-00 14-pin SIP  
0556-2006-01 14-pin SIP  
0556-6392-00 16-pin 0.5” DIL  
Bel Fuse  
Bel Fuse  
Bel Fuse  
Halo Electronics  
Halo Electronics  
Halo Electronics  
PCA Electronics  
PCA Electronics  
PCA Electronics  
Pulse Engineering  
Pulse Engineering  
Pulse Engineering  
Pulse Engineering  
Valor Electronics  
Valor Electronics  
FD02-101G  
FD12-101G  
FD22-101G  
EPA1990A  
EPA2013D  
EPA2162  
PE-65421  
PE-65434  
PE-65445  
PE-65467  
PT3877  
16-pin 0.3” DIL  
16-pin 0.3” DIL  
16-pin 0.3” DIL  
16-pin 0.3” DIL  
16-pin 0.3” DIL  
16-pin 0.3” SIP  
16-pin 0.3” DIL  
16-pin 0.3” SIL  
16-pin 0.3” DIL  
12-pin 0.5” SMT  
16-pin 0.3” DIL  
16-pin 0.3” DIL  
FL1043  
PCnet-ISA+ Compatible AUI Isolation  
Transformers  
various vendors. Contact the respective manufacturer  
for a complete and updated listing of components.  
The table below provides a sample list of PCnet-ISA+  
compatible AUI isolation transformers available from  
Manufacturer  
Bel Fuse  
Part No.  
A553-0506-AB  
S553-0756-AE  
TD01-0756K  
TG01-0756W  
EP9531-4  
Package  
Description  
50 µH  
16-pin 0.3” DIL  
16-pin 0.3” SMD  
16-pin 0.3” DIL  
16-pin 0.3” SMD  
16-pin 0.3” DIL  
16-pin 0.3” DIL  
16-pin 0.3” SMT  
16-pin 0.3” DIL  
16-pin 0.3” SMD  
Bel Fuse  
75 µH  
Halo Electronics  
Halo Electronics  
PCA Electronics  
Pulse Engineering  
Pulse Engineering  
Valor Electronics  
Valor Electronics  
75 µH  
75 µH  
50 µH  
PE64106  
50 µH  
PE65723  
75 µH  
LT6032  
75 µH  
ST7032  
75 µH  
Am79C961  
1-629  
AMD  
PCnet-ISA+ Compatible DC/DC Converters  
The table below provides a sample list of PCnet-ISA+  
compatible DC/DC converters available from various  
vendors. Contact the respective manufacturer for a  
complete and updated listing of components.  
Manufacturer  
Halo Electronics  
Halo Electronics  
PCA Electronics  
PCA Electronics  
PCA Electronics  
Valor Electronics  
Valor Electronics  
Part No.  
DCU0-0509D  
DCU0-0509E  
EPC1007P  
EPC1054P  
EPC1078  
Package  
24-pin DIP  
24-pin DIP  
24-pin DIP  
24-pin DIP  
24-pin DIP  
24-pin DIP  
24-pin DIP  
Voltage  
5/-9  
Remote On/Off  
No  
Yes  
No  
5/-9  
5/-9  
5/-9  
Yes  
Yes  
No  
5/-9  
PM7202  
5/-9  
PM7222  
5/-9  
Yes  
MANUFACTURER CONTACT  
INFORMATION  
Contact the following companies for further infor-  
mation on their products:  
Company  
Bel Fuse  
U.S. and Domestic  
Asia  
Europe  
Phone:  
FAX:  
(201) 432-0463  
(201) 432-9542  
852-328-5515  
852-352-3706  
33-1-69410402  
33-1-69413320  
Halo Electronics  
Phone:  
FAX:  
(415) 969-7313  
(415) 367-7158  
65-285-1566  
65-284-9466  
PCA Electronics  
(HPC in Hong Kong)  
Phone:  
FAX:  
818-892-0761  
818-894-5791  
852-553-0165  
852-873-1550  
33-1-44894800  
33-1-42051579  
Pulse Engineering  
Phone:  
FAX:  
(619) 674-8100  
(619) 675-8262  
852-425-1651  
852-480-5974  
353-093-24107  
353-093-24459  
Valor Electronics  
Phone:  
FAX:  
(619) 537-2500  
(619) 537-2525  
852-513-8210  
852-513-8214  
49-89-6923122  
49-89-6926542  
1-630  
Am79C961  
APPENDIX B  
Layout Recommendations  
for Reducing Noise  
via to VDD plane  
DECOUPLING LOW-PASS R/C  
FILTER DESIGN  
The PCnet-ISA+ controller is an integrated, single-chip  
Ethernet controller, which contains both digital and ana-  
log circuitry. The analog circuitry contains a high speed  
Phase-Locked Loop (PLL) and Voltage Controlled  
Oscillator (VCO). Because of the mixed signal charac-  
teristics of this chip, some extra precautions must be  
taken into account when designing with this device.  
VDD Pin  
VSS Pin  
PCnet-ISA+  
via to VSS plane  
Described in this section is a simple decoupling low-  
pass R/C filter that can significantly increase noise im-  
munity of the PLL circuit, thus, prevent noise from  
disrupting the VCO. Bit error rate, a common measure-  
ment of network performance, as a result can be  
drastically reduced. In certain cases the bit error rate  
can be reduced by orders of magnitude.  
AMD recommends that at least one low-frequency bulk  
decoupling capacitor be used in the area of the  
PCnet-ISA+ controller. 22 µF capacitors have worked  
well for this. In addition, a total of four or five 0.1 µF ca-  
pacitors have proven sufficient around the DVSS and  
DVDD pins that supply the drivers of the ISA bus  
output pins.  
Implementation of this filter is not necessary to achieve  
a functional product that meets the IEEE 802.3 specifi-  
cation and provides adequate performance. However,  
this filter will help designers meet those specifications  
with more margin.  
Analog Decoupling  
The most critical pins are the analog supply and ground  
pins. All of the analog supply and ground pins are lo-  
cated in one corner of the device. Specific requirements  
of the analog supply pins are listed below.  
Digital Decoupling  
AVSS1 and AVDD3  
The DVSS pins that are sinking the most current are  
those that provide the ground for the ISA bus output sig-  
nals since these outputs require 24 mA drivers. The  
DVSS10 and DVSS12 pins provide the ground for the  
internal digital logic. In addition, DVSS11 provides  
ground for the internal digital and for the Input and  
I/O pins.  
These pins provide the power and ground for the  
Twisted Pair and AUI drivers. Hence, they are very  
noisy. A dedicated 0.1 µF capacitor between these pins  
is recommended.  
AVSS2 and AVDD2  
These pins are the most critical pins on the PCnet-ISA+  
controller because they provide the power and ground  
for the PLL portion of the chip. The VCO portion of the  
PLL is sensitive to noise in the 60 kHz–200 kHz. range.  
To prevent noise in this frequency range from disrupting  
the VCO, AMD strongly recommends that the low-pass  
filter shown below be implemented on these pins. Tests  
using this filter have shown significantly increased noise  
immunity and reduced Bit Error Rate (BER) statistics in  
designs using the PCnet-ISA+ controller.  
The CMOS technology used in fabricating the  
PCnet-ISA+ controller employs an n-type substrate. In  
this technology, all VDD pins are electrically connected to  
eachotherinternally. Hence, inafour-layerboard, when  
decoupling between VDD and critical VSS pins, the spe-  
cific VDD pin that you connect to is not critical. In fact, the  
VDD connection of the decoupling capacitor can be  
made directly to the power plane, near the closest VDD  
pin to the VSS pin of interest. However, we recommend  
that the VSS connection of the decoupling capacitor be  
made directly to the VSS pin of interest as shown.  
Am79C961  
1-631  
 
AMD  
voltage drop across the resistor, the R value should not  
be more than 20 .  
33 µF to 6.8 µF  
VDD Plane  
AVDD2  
Pin 108  
R
C
2.7 Ω  
33 µF  
AVSS2  
Pin 98  
R1  
4.3 Ω  
6.8 Ω  
10 Ω  
20 Ω  
22 µF  
15 µF  
10 µF  
6.8 µF  
1 to 20 Ω  
PCnet-ISA+  
To determine the value for the resistor and capacitor,  
the formula is:  
AVSS2 and AVDD2/AVDD4  
R * C 88  
These pins provide power and ground for the AUI and  
twisted pair receive circuitry. No specific decoupling  
has been necessary on these pins.  
Where R is in ohms and C is in microfarads. Some pos-  
sible combinations are given below. To minimize the  
1-632  
Am79C961  
APPENDIX C  
Sample  
Configuration File  
that is an ethernet controller. There are no compatible  
devices with this logical device. The following record  
should be returned by the card during the identification  
process.  
SAMPLE CONFIGURATION FILE  
The following is a sample configuration file for the  
PCnet-ISA+ device used in an AMD Ethernet card. This  
card requires one DMA channel, one interrupt, one I/O  
port in the 0x200-0x3FF range (0x20 bytes aligned).  
The vendor ID of AMD is AMD. The vendor assigned  
part number for this card is 2100 and the serial number  
is 0x12345678. The card has only one logical device,  
Note: All data stored in the EEPROM is stored in bit-  
reversal format. Each word (16 bits) must be written  
into the EEPROM with bit 15 swapped with bit 0, bit  
14 swapped with bit 1, etc.  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
; Plug and Play Header  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
DB 0x04  
DB 0x43  
DB 0x00  
DB 0x21  
DB 0x78  
DB 0x56  
DB 0x34  
DB 0x12  
DB Checksum  
; Vendor EISA ID Byte 0  
; Vendor EISA ID Byte 1  
; Vendor Assigned ID Byte 0  
; Vendor Assigned ID Byte 1  
; Serial Number byte 0  
; Serial Number byte 1  
; Serial Number byte 2  
; Serial Number byte 3  
; Checksum calculated on above bits  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
; Plug and Play Version  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
DB 0x0A  
DB 0x10  
; Small Item, Plug and Play version  
; BCD major version [7:4] = 1  
; BCD minor version [3:0] = 0  
; Vendor specific version number  
DB 0x00  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
; Identifier String  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
DB 0x82  
; Large Item, Type Identifier string (ANSI)  
; Length Byte 0 (28 bytes)  
; Length Byte 1  
DB 0x1c  
DB 0x00  
DB ”AMD Ethernet Network Adapter”  
; Identifier String  
Am79C961  
1-633  
AMD  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
; Logical Device ID  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
DB 0x15  
DB 0x11  
DB 0x11  
DB 0x22  
DB 0x22  
DB 0x01  
; Small Item, Type Logical Device ID  
; Logical Device ID byte 0  
; Logical Device ID byte 1  
; Logical Device ID byte 2  
; Logical Device ID byte 3  
; Logical Device Flags [0] – required for boot  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
; I/O Port Descriptor  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
DB 0x47  
DB 0x00  
DB 0x00  
DB 0x02  
DB 0xE0  
DB 0x03  
DB 0x20  
DB 0x18  
; Small Item, type I/O Port  
; Information, [0] = 0, 10 bit Decode  
; Minimum Base Address [07:00]  
; Minimum Base Address [15:08]  
; Maximum Base Address [07:00]  
; Maximum Base Address [15:08]  
; Base Address Increment (32 ports)  
; Number of ports required  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
; DMA Descriptor  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
DB 0x2A  
DB 0xE8  
DB 0x06  
; Small Item, type DMA Format  
; DMA channel mask ch 3, 5, 6, 7  
; 16–Bit only, Bus Master  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
;IRQ Format  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
DB 0x23  
DB 0x38  
DB 0x9E  
DB 0x01  
; Small Item, type IRQ Format  
; IRQs supported [7:0]  
; IRQs supported [15:8]  
3, 4, 5  
9, 10, 11, 12, 15  
; Information: High true, edge  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
; End Tag  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
DB 0x78  
; Small item, type END TAG  
; Checksum  
DB Checksum  
1-634  
Am79C961  
APPENDIX D  
Alternative Method  
for Initialization  
ThePCnet-ISA+ controllermaybeinitializedbyperform-  
ing I/O writes only. That is, data can be written directly to  
the appropriate control and status registers (CSR)  
instead of reading from the Initialization Block in  
memory. The registers that must be written are shown in  
the table below. These are followed by writing the  
START bit in CSR0.  
Control and  
Status Register  
Comment  
LADRF[15:0]  
LADRF[31:16]  
LADRF[47:32]  
LADRF[63:48]  
PADR[15:0]  
PADR[31:16]  
PADR[47:32]  
Mode  
CSR8  
CSR9  
CSR10  
CSR11  
CSR12  
CSR13  
CSR14  
CSR15  
CSR24-25  
CSR30-31  
CSR47  
BADR  
BADX  
POLLINT  
CSR76  
RCVRL  
CSR78  
XMTRL  
Note: The INIT bit must not be set or the initialization block will  
be accessed instead.  
Am79C961  
1-635  
APPENDIX E  
Introduction of the  
Look Ahead Packet Processing (LAPP) Concept  
A driver for the PCnet-ISA+ controller would normally  
require that the CPU copy receive frame data from the  
controller’s buffer space to the application’s buffer  
space after the entire frame has been received by the  
controller. For applications that use a ping-pong win-  
dowing style, the traffic on the network will be halted  
until the current frame has been completely processed  
by the entire application stack. This means that the time  
between last byte of a receive frame arriving at the  
client’s Ethernet controller and the client’s transmission  
of the first byte of the next outgoing frame will be sepa-  
rated by:  
the reception of the frame actually ends at the network,  
and how can the CPU be instructed to perform these  
tasks during the network reception time?  
The answer depends upon exactly what is happening in  
thedriverandapplicationcode, butthestepsthatcanbe  
performed at the same time as the receive data  
are arriving include as much as the first three steps and  
part of the fourth step shown in the sequence  
above. By performing these steps before the entire  
frame has arrived, the frame throughput can be sub-  
stantially increased.  
A good increase in performance can be expected when  
the first three steps are performed before the end of the  
network receive operation. A much more significant per-  
formance increase could be realized if the PCnet-ISA+  
controller could place the frame data directly into the  
application’s buffer space; (i.e. eliminate the need for  
step four.) In order to make this work, it is necessary  
that the application buffer pointer be determined before  
the frame has completely arrived, then the buffer pointer  
in the next desriptor for the receive frame would need to  
be modified in order to direct the PCnet-ISA+ controller  
to write directly to the application buffer. More details on  
this operation will be given later.  
1) the time that it takes the client’s CPU’s interrupt  
proceduretopasssoftwarecontrolfromthecurrent  
task to the driver  
2) plus the time that it takes the client driver to pass  
the header data to the application and request an  
application buffer  
3) plus the time that it takes the application to gener-  
ate the buffer pointer and then return the buffer  
pointer to the driver  
4) plus the time that it takes the client driver to transfer  
all of the frame data from the controller’s buffer  
space into the application’s buffer space and then  
call the application again to process the complete  
frame  
An alternative modification to the existing system can  
gain a smaller, but still significant improvement in per-  
formance. This alternative leaves step four unchanged  
in that the CPU is still required to perform the copy  
operation, but it allows a large portion of the copy opera-  
tion to be done before the frame has been completely  
received by the controller, (i.e. the CPU can perform the  
copy operation of the receive data from the PCnet-ISA+  
controller’s buffer space into the application buffer  
space before the frame data has completely arrived  
from the network.) This allows the copy operation of  
step four to be performed concurrently with the arrival of  
network data, rather than sequentially, following the end  
of network receive activity.  
5) plus the time that it takes the application to process  
the frame and generate the next outgoing frame  
6) plus the time that it takes the client driver to set up  
the descriptor for the controller and then write a  
TDMD bit to CSR0  
The sum of these times can often be about the same as  
the time taken to actually transmit the frames on the  
wire, thereby yielding a network utilization rate of less  
than 50%.  
AnimportantthingtonoteisthatthePCnet-ISA+ control-  
ler’s data transfers to its buffer space are such that the  
system bus is needed by the PCnet-ISA+ controller for  
approximately 4% of the time. This leaves 96% of the  
sytem bus bandwidth for the CPU to perform some of  
the inter–frame operations in advance of the completion  
of network receive activity, if possible. The question  
then becomes: how much of the tasks that need to be  
Outline of the LAPP Flow:  
This section gives a suggested outline for a driver that  
utilizes the LAPP feature of the PCnet-ISA+ controller.  
Note: The labels in the following text are used as refer-  
ences in the timeline diagram that follows.  
performed between reception of  
a frame and  
transmission of the next frame can be performed before  
1-636  
Am79C961  
AMD  
SETUP:  
message into that space. Only when the message  
does not fit will it signal a buffer error condition—  
there is no need to panic at the point that it discov-  
ers that it does not yet own descriptor number 3.]  
The driver should set up descriptors in groups of 3, with  
theOWNandSTPbitsofeachsetofthreedescriptorsto  
read as follows: 11b, 10b, 00b.  
S2: The first task of the driver’s interrupt service routine  
is to collect the header information from the  
PCnet-ISA+ controller’s first buffer and pass it to  
the application.  
An option bit (LAPPEN) exists in CSR3, bit position 5.  
The software should set this bit. When set, the LAPPEN  
bit directs the PCnet-ISA+ to generate an INTERRUPT  
when STP has been written to a receive descriptor by  
the PCnet-ISA+ controller.  
S3: The application will return an application buffer  
pointer to the driver. The driver will add an offset to  
the application data buffer pointer, since the  
PCnet-ISA+ controller will be placing the first por-  
tion of the message into the first and second buff-  
ers. (The modified application data buffer pointer  
willonlybedirectlyusedbythePCnet-ISA+ control-  
ler when it reaches the third buffer.) The driver will  
place the modified data buffer pointer into the final  
descriptor of the group (#3) and will grant owner-  
ship of this descriptor to the PCnet-ISA+ controller.  
FLOW:  
The PCnet-ISA+ controller polls the current receive de-  
scriptor at some point in time before a message arrives.  
The PCnet-ISA+ controller determines that this receive  
buffer is OWNed by the PCnet-ISA+ controller and it  
stores the descriptor information to be used when a  
message does arrive.  
N0: Frame preamble appears on the wire, followed by  
SFD and destination address.  
C5: Interleaved with S2, S3 and S4 driver activity, the  
PCnet-ISA+ controller will write frame data to buffer  
number 2.  
N1: The 64th byte of frame data arrives from the wire.  
This causes the PCnet-ISA+ controller to begin  
frame data DMA operations to the first buffer.  
S4: The driver will next proceed to copy the contents of  
the PCnet-ISA+ controller’s first buffer to the begin-  
ning of the application space. This copy will be to  
the exact (unmodified) buffer pointer that was  
passed by the application.  
C0: When the 64th byte of the message arrives, the  
PCnet-ISA+ controller performs a lookahead op-  
eration to the next receive descriptor. This descrip-  
tor should be owned by the PCnet-ISA+ controller.  
C1: The PCnet-ISA+ controller intermittently requests  
the bus to transfer frame data to the first buffer as it  
arrives on the wire.  
S5: After copying all of the data from the first buffer into  
the beginning of the application data buffer, the  
driver will begin to poll the ownership bit of the sec-  
ond descriptor. The driver is waiting for the PCnet-  
ISA+ controller to finish filling the second buffer.  
S0: The driver remains idle.  
C2: When the PCnet-ISA+ controller has completely  
filled the first buffer, it writes status to the first  
descriptor.  
C6: At this point, knowing that it had not previously  
owned the third descriptor, and knowing that the  
current message has not ended (there is more data  
in the fifo), the PCnet-ISA+ controller will make a  
“last ditch lookahead” to the final (third) descriptor;  
This time, the ownership will be TRUE (i.e. the de-  
scriptor belongs to the controller), because the  
driver wrote the application pointer into this de-  
scriptor and then changed the ownership to give  
the descriptor to the PCnet-ISA+ controller back at  
S3. Note that if steps S1, S2 and S3 have not com-  
pleted at this time, a BUFF error will result.  
C3: When the first descriptor for the frame has been  
written, changing ownership from the PCnet-ISA+  
controllertotheCPU, thePCnet-ISA+ controllerwill  
generate an SRP INTERRUPT. (This interrupt ap-  
pears as a RINT interrupt in CSR0.)  
S1: The SRP INTERRUPT causes the CPU to switch  
tasks to allow the PCnet-ISA+ controller’s driver to  
run.  
C4: During the CPU interrupt-generated task switch-  
ing, the PCnet-ISA+ controller is performing a  
lookahead operation to the third descriptor. At this  
point in time, the third descriptor is owned by the  
CPU. [Note: Even though the third buffer is not  
owned by the PCnet-ISA+ controller, existing AMD  
Ethernet controllers will continue to perform data  
DMA into the buffer space that the controller al-  
ready owns (i.e. buffer number 2). The controller  
does not know if buffer space in buffer number 2  
will be sufficient or not, for this frame, but it has no  
way to tell except by trying to move the entire  
C7: After filling the second buffer and performing the  
last chance lookahead to the next descriptor, the  
PCnet-ISA+ controller will write the status and  
change the ownership bit of descriptor number 2.  
S6: After the ownership of descriptor number 2 has  
been changed by the PCnet-ISA+ controller, the  
next driver poll of the 2nd descriptor will show  
ownership granted to the CPU. The driver now  
copies the data from buffer number 2 into the “mid-  
dle section” of the application buffer space. This  
Am79C961  
1-637  
AMD  
operation is interleaved with the C7 and C8  
operations.  
C9: When the PCnet-ISA+ controller has finished all  
data DMA operations, it writes status and changes  
ownership of descriptor number 3.  
C8: The PCnet-ISA+ controller will perform data DMA  
to the last buffer, whose pointer is pointing to appli-  
cation space. Data entering the last buffer will not  
needtheinfamousdoublecopythatisrequiredby  
existing drivers, since it is being placed directly into  
the application buffer space.  
S8: The driver sees that the ownership of descriptor  
number 3 has changed, and it calls the application  
to tell the application that a frame has arrived.  
S9: The application processes the received frame and  
generates the next TX frame, placing it into a TX  
buffer.  
N2: The message on the wire ends.  
S7: When the driver completes the copy of buffer num-  
ber 2 data to the application buffer space, it begins  
polling descriptor number 3.  
S10:The driver sets up the TX descriptor for the  
PCnet-ISA+ controller.  
Ethernet  
Wire  
activity:  
Ethernet  
Controller  
activity:  
Software  
activity:  
S10: Driver sets up TX descriptor.  
S9: Application processes packet, generates TX packet.  
S8: Driver calls application  
to tell application that  
{
packet has arrived.  
C9: Controller writes descriptor #3.  
S7: Driver polls descriptor of buffer #3.  
C8: Controller is performing intermittent  
bursts of DMA to fill data buffer #3.  
N2: EOM  
Buffer  
#3  
S6: Driver copies data from buffer #2 to the application buffer.  
C7: Controller writes descriptor #2.  
S5: Driver polls descriptor #2.  
C6: "Last chance" lookahead to  
descriptor #3 (OWN).  
S4: Driver copies data from buffer #1 to the application buffer.  
S3: Driver writes modified application  
C5: Controller is performing intermittent  
bursts of DMA to fill data buffer #2.  
pointer to descriptor #3.  
Buffer  
#2  
} {  
S2: Driver call to application to  
get application buffer pointer.  
C4: Lookahead to descriptor #3 (OWN).  
S1: Interrupt latency.  
C3: SRP interrupt  
}
is generated.  
C2: Controller writes descriptor #1.  
S0: Driver is idle.  
Buffer  
#1  
C1: Controller is performing intermittent  
bursts of DMA to fill data buffer #1.  
C0: Lookahead to descriptor #2.  
N1: 64th byte of packet  
data arrives.  
{
N0: Packet preamble, SFD  
and destination address  
are arriving.  
18183B-79  
Figure 1. Look Ahead Packet Processing (LAPP) Timeline  
Am79C961  
1-638  
AMD  
LAPP Enable Software Requirements  
LAPP Enable Rules for Parsing of  
Descriptors  
Software needs to set up a receive ring with descriptors  
formed into groups of 3. The first descriptor of each  
group should have OWN = 1 and STP = 1, the second  
descriptor of each group should have OWN = 1 and STP  
= 0. The third descriptor of each group should have  
OWN = 0 and STP = 0. The size of the first buffer (as  
indicated in the first descriptor), should beat least equal  
to the largest expected header size; However, for maxi-  
mum efficiency of CPU utilization, the first buffer size  
shouldbelargerthantheheadersize. Itshouldbeequal  
to the expected number of message bytes, minus the  
time needed for Interrupt latency and minus the applica-  
tion call latency, minus the time needed for the driver to  
write to the third descriptor, minus the time needed for  
the driver to copy data from buffer #1 to the application  
bufferspace, andminusthetimeneededforthedriverto  
copy data from buffer #2 to the application buffer space.  
Note that the time needed for the copies performed by  
the driver depends upon the sizes of the 2nd and 3rd  
buffers, and that the sizes of the second and third buff-  
ers need to be set accoring to the time needed for the  
data copy operations! This means that an iterative self–  
adjusting mechanism needs to be placed into the soft-  
ware to determine the correct buffer sizing for optimal  
operation. Fixed values for buffer sizes may be used; In  
such a case, the LAPP method will still provide a signifi-  
cant performance increase, but the performance in-  
crease will not be maximized.  
When using the LAPP method, software must use a  
modified form of descriptor parsing as follows:  
Software will examine OWN and STP to determine  
where a RCV frame begins. RCV frames will only begin  
in buffers that have OWN = 0 and STP = 1.  
Software shall assume that a frame continues until it  
finds either ENP = 1 or ERR= 1.  
Software must discard all descriptors with OWN = 0 and  
STP=0andmovetothenextdescriptorwhensearching  
for the beginning of a new frame; ENP and ERR should  
be ignored by software during this search.  
Software cannot change an STP value in the receive  
descriptor ring after the initial setup of the ring is com-  
plete, even if software has ownership of the STP de-  
scriptor unless the previous STP descriptor in the ring is  
also OWNED by the software.  
When LAPPEN = 1, then hardware will use a modified  
form of descriptor parsing as follows:  
The controller will examine OWN and STP to determine  
where to begin placing a RCV frame. A new RCV frame  
will only begin in a buffer that has OWN = 1 and STP = 1.  
The controller will always obey the OWN bit for deter-  
mining whether or not it may use the next buffer for a  
chain.  
The following diagram illustrates this setup for a receive  
ring size of 9:  
The controller will always mark the end of a frame with  
either ENP = 1 or ERR= 1.  
Descriptor  
#9  
OWN = 0 STP = 0  
SIZE = S6  
Descriptor  
#8  
OWN = 1 STP = 0  
SIZE = S1+S2+S3+S4  
A
= Expected message size in bytes  
S1 = Interrupt latency  
S2 = Application call latency  
S3 =Time needed for driver to write  
to third descriptor  
Descriptor  
#7  
OWN = 1 STP = 1  
SIZE = A-(S1+S2+S3+S4+S6)  
S4 = Time needed for driver to copy  
data from buffer #1 to  
Descriptor  
#6  
OWN = 0 STP = 0  
SIZE = S6  
application buffer space  
S6 = Time needed for driver to copy  
data from buffer #2 to  
Descriptor  
#5  
OWN = 1 STP = 0  
SIZE = S1+S2+S3+S4  
application buffer space  
Descriptor  
#4  
OWN = 1 STP = 1  
SIZE = A-(S1+S2+S3+S4+S6)  
Note that the times needed for tasks S1, S2, S3,  
Descriptor  
#3  
OWN = 0 STP = 0  
SIZE = S6  
S4, and S6 should be divided by 0.8 ms to yield  
an equivalent number of network byte times  
before subtracting these quantities from the  
Descriptor  
#2  
OWN = 1 STP = 0  
SIZE = S1+S2+S3+S4  
expected message size A.  
Descriptor  
#1  
OWN = 1 STP = 1  
SIZE = A-(S1+S2+S3+S4+S6)  
18183B-80  
Figure 2. LAPP 3 Buffer Grouping  
Am79C961  
1-639  
AMD  
The controller will discard all descriptors with OWN = 1  
and STP = 0 and move to the next descriptor when  
searching for a place to begin a new frame. It dis-  
cards these desciptors by simply changing the owner-  
ship bit from OWN=1 to OWN = 0. Such a descriptor is  
unused for receive purposes by the controller, and the  
driver must recognize this. (The driver will recognize  
this if it follows the software rules.)  
Some Examples of LAPP Descriptor  
Interaction  
Choose an expected frame size of 1060 bytes.  
Choose buffer sizes of 800, 200 and 200 bytes.  
1) Assume that a 1060 byte frame arrives correctly,  
and that the timing of the early interrupt and the  
software is smooth. The descriptors will have  
changed from:  
The controller will ignore all descriptors with OWN = 0  
and STP = 0 and move to the next descriptor when  
searching for a place to begin a new frame. In other  
words, the controller is allowed to skip entries in the ring  
that it does not own, but only when it is looking for a  
place to begin a new frame.  
Before the  
After the  
Descriptor  
Number  
Frame Arrived  
STP  
Frame Has Arrived  
Comments  
(After Frame Arrival)  
OWN  
ENP*  
OWN  
STP  
ENP*  
1
2
3
4
1
1
0
1
1
0
0
1
X
X
X
X
0
0
0
1
1
0
0
1
0
0
1
X
Bytes 1–800  
Bytes 801–1000  
Bytes 1001–1060  
Controller’s current  
location  
5
6
1
0
1
0
0
1
X
X
X
1
0
1
0
0
1
X
X
X
Not yet used  
Not yet used  
Not yet used  
etc.  
*ENP or ERR  
1-640  
Am79C961  
AMD  
2) Assume that instead of the expected 1060 byte  
frame, a 900 byte frame arrives, either because  
there was an error in the network, or because this is  
the last frame in a file transmission sequence.  
Before the  
After the  
Descriptor  
Number  
Frame Arrived  
STP  
Frame Has Arrived  
Comments  
(After Frame Arrival)  
OWN  
ENP*  
OWN  
STP  
ENP*  
1
2
3
4
1
1
0
1
1
0
0
1
X
X
X
X
0
0
0
1
1
0
0
1
0
1
Bytes 1–800  
Bytes 801–900  
Discarded buffer  
?**  
X
Controller’s current  
location  
5
6
1
0
1
0
0
1
X
X
X
1
0
1
0
0
1
X
X
X
Not yet used  
Not yet used  
Not yet used  
etc.  
*ENP or ERR  
** Note that the PCnet-ISA+ controller might write a ZERO to ENP location in the 3rd descriptor. Here are the two possibilities:  
1) If the controller finishes the data transfers into buffer number 2 after the driver writes the application’s modified buffer pointer  
into the third descriptor, then the controller will write a ZERO to ENP for this buffer and will write a ZERO to OWN and STP.  
2) If the controller finishes the data transfers into buffer number 2 before the driver writes the application’s modified buffer  
pointer into the third descriptor, then the controller will complete the frame in buffer number two and then skip the then un-  
owned third buffer. In this case, the PCnet-ISA+ controller will not have had the opportunity to RESET the ENP bit in this  
descriptor, and it is possible that the software left this bit as ENP=1 from the last time through the ring. Therefore, the soft-  
ware must treat the location as a don’t care; The rule is, after finding ENP=1 (or ERR=1) in descriptor number 2, the software  
must ignore ENP bits until it finds the next STP=1.  
Am79C961  
1-641  
AMD  
3) Assume that instead of the expected 1060 byte  
frame, a 100 byte frame arrives, because there  
was an error in the network, or because this is the  
last frame in a file transmission sequence, or per-  
haps because it is an acknowledge frame.  
Before the  
After the  
Descriptor  
Number  
Frame Arrived  
STP  
Frame Has Arrived  
Comments  
(After Frame Arrival)  
OWN  
ENP*  
OWN  
STP  
ENP*  
1
2
3
4
1
1
0
1
1
0
0
1
X
X
X
X
0
0
0
1
1
0
0
1
1
0***  
?**  
X
Bytes 1–100  
Discarded buffer  
Discarded buffer  
Controller’s current  
location  
5
6
1
0
1
0
0
1
X
X
X
1
0
1
0
0
1
X
X
X
Not yet used  
Not yet used  
Not yet used  
etc.  
*ENP or ERR  
** Same as note in case 2 above, except that in this case, it is very unlikely that the driver can respond to the interrupt and get the  
pointer from the application before the PCnet-ISA+ controller has completed its poll of the next descriptors. This means that  
for almost all occurrences of this case, the PCnet-ISA+ controller will not find the OWN bit set for this descriptor and therefore,  
the ENP bit will almost always contain the old value, since the PCnet-ISA+ controller will not have had an opportunity to modify  
it.  
***Note that even though the PCnet-ISA+ controller will write a ZERO to this ENP location, the software should treat the location  
as a don’t care, since after finding the ENP=1 in descriptor number 2, the software should ignore ENP bits until it finds the next  
STP=1.  
Buffer Size Tuning  
perfectly timed system will have the values for S5 and  
S7 at a minimum.  
For maximum performance, buffer sizes should be ad-  
justed depending upon the expected frame size and the  
values of the interrupt latency and application call la-  
tency. The best driver code will minimize the CPU utili-  
zation while also minimizing the latency from frame end  
on the network to frame sent to application from driver  
(frame latency). These objectives are aimed at increas-  
ing throughput on the network while decreasing CPU  
utilization.  
An average increase in performance can be achieved if  
the general guidelines of buffer sizes in Figure 2 is fol-  
lowed. However, as was noted earlier, the correct sizing  
forbufferswilldependupontheexpectedmessagesize.  
Therearetwoproblemswithrelatingexpectedmessage  
size with the correct buffer sizing:  
1) Message sizes cannot always be accurately pre-  
dicted, since a single application may expect differ-  
ent message sizes at different times, therefore, the  
buffer sizes chosen will not always maximize  
throughput.  
Note that the buffer sizes in the ring may be altered at  
any time that the CPU has ownership of the correspond-  
ing descriptor. The best choice for buffer sizes will  
maximize the time that the driver is swapped out, while  
minimizing the time from the last byte written by the  
PCnet-ISA+ controller to the time that the data is passed  
from the driver to the application. In the diagram, this  
corresponds to maximizing S0, while minimizing the  
time between C9 and S8. (The timeline happens to  
show a minimal time from C9 to S8.)  
2) Within a single application, message sizes might  
be somewhat predicatable, but when the same  
driver is to be shared with multiple applications,  
there may not be a common predictable message  
size.  
Additional problems occur when trying to define the cor-  
rect sizing because the correct size also depends upon  
the interrupt latency, which may vary from system to  
system, depending upon both the hardware and the  
software installed in each system.  
Note that by increasing the size of buffer number 1, we  
increase the value of S0. However, when we increase  
the size of buffer number 1, we also increase the value  
of S4. If the size of buffer number 1 is too large, then the  
driver will not have enough time to perform tasks S2, S3,  
S4, S5 and S6. The result is that there will be delay from  
the execution of task C9 until the execution of taskS8. A  
In order to deal with the unpredictable nature of the  
message size, the driver can implement a self tuning  
1-642  
Am79C961  
AMD  
mechanism that examines the amount of time spent in  
tasks S5 and S7 as such: While the driver is polling for  
each descriptor, it could count the number of poll opera-  
tions performed and then adjust the number 1 buffer  
size to a larger value, by adding “t” bytes to the buffer  
count, if the number of poll operations was greater than  
“x”. If fewer than “x” poll operations were needed for  
each of S5 and S7, then the software should adjust the  
buffer size to a smaller value by, subtracting “y” bytes  
from the buffer count. Experiments with such a tuning  
mechanism must be performed to determine the best  
values for “X” and “y.”  
The time from the end of frame arrival on the wire to  
delivery of the frame to the application is labeled as  
frame latency. For the one-interrupt method, frame la-  
tency is minimized, while CPU utilization increases. For  
the two-interrupt method, frame latency becomes  
greater, while CPU utilization decreases.  
Note that some of the CPU time that can be applied to  
non-Ethernet tasks is used for task switching in the  
CPU. One task switch is required to swap a non-  
Ethernet task into the CPU (after S7A) and a second  
taskswitchisneededtoswaptheEthernetdriverbackin  
again (at S8A). If the time needed to perform these task  
switches exceeds the time saved by not polling descrip-  
tors, then there is a net loss in performance with this  
method. Therefore, the NEW WORD method imple-  
mented should be carefully chosen.  
Note whenever the size of buffer number 1 is adjusted,  
buffer sizes for buffer number 2 and buffer 3 should also  
be adjusted.  
In some systems the typical mix of receive frames on a  
network for a client application consists mostly of large  
data frames, with very few small frames. In this case, for  
maximum efficiency of buffer sizing, when a frame ar-  
rives under a certain size limit, the driver should not  
adjust the buffer sizes in response to the short frame.  
Figure 3 shows the event flow for the two-interrupt  
method.  
Figure 4 shows the buffer sizing for the two-interrupt  
method. Note that the second buffer size will be about  
the same for each method.  
An Alternative LAPP Flow – the TWO Interrupt  
Method  
There is another alternative which is a marriage of the  
two previous methods. This third possibility would use  
the buffer sizes set by the two-interrupt method, but  
would use the polling method of determining frame end.  
This will give good frame latency but at the price of very  
high CPU utilization.  
An alternative to the above suggested flow is to use two  
interrupts, one at the start of the Receive frame and the  
other at the end of the receive frame, instead of just  
looking for the SRP interupt as was described above.  
This alternative attempts to reduce the amount of time  
that the software “wastes” while polling for descriptor  
own bits. This time would then be available for other  
CPU tasks. It also minimizes the amount of time the  
CPU needs for data copying. This savings can be ap-  
plied to other CPU tasks.  
Andstill, thereareevenmorecompromisepositionsthat  
use various fixed buffer sizes and effectively, the flow of  
the one-interrupt method. All of these compromises will  
reduce the complexity of the one-interrupt method by  
removing the heuristic buffer sizing code, but they all  
become less efficient than heuristic code would allow.  
Am79C961  
1-643  
AMD  
Ethernet  
Ethernet  
Controller  
activity:  
Wire  
Software  
activity:  
activity:  
S10: Driver sets up TX descriptor.  
S9: Application processes packet, generates TX packet.  
S8: Driver calls application  
to tell application that  
{
packet has arrived.  
S8A: Interrupt latency.  
C10: ERP interrupt  
}
is generated.  
C9: Controller writes descriptor #3.  
S7: Driver is swapped out, allowing a non-Etherenet  
application to run.  
C8: Controller is performing intermittent  
bursts of DMA to fill data buffer #3.  
S7A: Driver Interrupt Service  
Routine executes  
{
RETURN.  
N2: EOM  
Buffer  
#3  
S6: Driver copies data from buffer #2 to the application buffer.  
C7: Controller writes descriptor #2.  
S5: Driver polls descriptor #2.  
C6: "Last chance" lookahead to  
descriptor #3 (OWN).  
S4: Driver copies data from buffer #1 to the application buffer.  
S3: Driver writes modified application  
C5: Controller is performing intermittent  
bursts of DMA to fill data buffer #2.  
pointer to descriptor #3.  
Buffer  
#2  
} {  
S2: Driver call to application to  
get application buffer pointer.  
C4: Lookahead to descriptor #3 (OWN).  
S1: Interrupt latency.  
C3: SRP interrupt  
}
is generated.  
C2: Controller writes descriptor #1.  
S0: Driver is idle.  
Buffer  
#1  
C1: Controller is performing intermittent  
bursts of DMA to fill data buffer #1.  
C0: Lookahead to descriptor #2.  
N1: 64th byte of packet  
data arrives.  
{
N0: Packet preamble, SFD  
and destination address  
are arriving.  
18183B-81  
Figure 3. LAPP Timeline for TWO-INTERRUPT Method  
1-644  
Am79C961  
AMD  
Descriptor  
#9  
OWN = 0  
STP = 0  
SIZE = 1518 - (S1+S2+S3+S4+HEADER_SIZE)  
Descriptor  
#8  
OWN = 1  
SIZE = S1+S2+S3+S4  
STP = 0  
STP = 1  
A
= Expected message size in bytes  
S1 = Interrupt latency  
S2 = Application call latency  
S3 =Time needed for driver to write  
to third descriptor  
S4 = Time needed for driver to copy  
data from buffer #1 to  
Descriptor  
#7  
OWN = 1  
SIZE = HEADER_SIZE (minimum 64 bytes)  
Descriptor  
#6  
OWN = 0  
STP = 0  
SIZE = 1518 - (S1+S2+S3+S4+HEADER_SIZE)  
application buffer space  
S6 = Time needed for driver to copy  
data from buffer #2 to  
Descriptor  
#5  
OWN = 1  
SIZE = S1+S2+S3+S4  
STP = 0  
STP = 1  
application buffer space  
Descriptor  
#4  
OWN = 1  
SIZE = HEADER_SIZE (minimum 64 bytes)  
Note that the times needed for tasks S1, S2, S3,  
Descriptor  
#3  
OWN = 0  
STP = 0  
S4, and S6 should be divided by 0.8 ms to yield  
SIZE = 1518 - (S1+S2+S3+S4+HEADER_SIZE)  
an equivalent number of network byte times  
before subtracting these quantities from the  
Descriptor  
#2  
OWN = 1  
SIZE = S1+S2+S3+S4  
STP = 0  
expected message size A.  
Descriptor  
#1  
OWN = 1  
STP = 1  
SIZE = HEADER_SIZE (minimum 64 bytes)  
18183B-82  
Figure 4. LAPP 3 Buffer Grouping for TWO-INTERRUPT Method  
Am79C961  
1-645  
 
APPENDIX F  
Some Characteristics of the  
XXC56 Serial EEPROMs  
SWITCHING CHARACTERISTICS of a TYPICAL XXC56 SERIAL EEPROM INTERFACE  
Applicable over recommended operating range from TA = –40C to +85C, VCC = +1.8 V to  
+5.5 V, CL = 1 TTL Gate and 100 pF (unless otherwise noted)  
Parameter  
Symbol  
Parameter Description  
SK Clock Frequency  
SK High Time  
Test Conditions  
Min  
0
Max  
Unit  
MHz  
ns  
fSK  
0.5  
tSKH  
tSKL  
tCS  
(Note 1)  
500  
500  
500  
100  
200  
0
SK Low Time  
(Note 1)  
ns  
Minimum CS Low Time  
CS Setup Time  
(Note 2)  
ns  
tCSS  
tDIS  
Relative to SK  
Relative to SK  
Relative to SK  
Relative to SK  
AC Test  
ns  
DI Setup Time  
ns  
tCSH  
tDIH  
CS Hold Time  
ns  
DI Hold Time  
200  
ns  
tPD1  
tPD0  
tSV  
Output Delay to ‘1’  
Output Delay to ‘0’  
CS to Status Valid  
CS to DO in High Impedance  
Write Cycle Time  
Endurance  
1000  
1000  
1000  
200  
ns  
AC Test  
ns  
AC Test  
ns  
tDF  
AC Test; CS = VIL  
ns  
tWP  
10  
ms  
Cycles  
Number of Data Changes  
per Bit  
Typical  
100,000  
Notes:  
1. The SK frequency specifies a minimum SK clock period of 2 ms, therefore in an SK clock cycle tSKH + tSKL must be greater than  
or equal to 2 ms. For example, if the tSKL = 500 ns then the minimum tSKH = 1.5 ms in order to meet the SK frequency  
specification.  
2. CS must be brought low for a minimum of 500 ns (tCS) between consecutive instruction cycles.  
INSTRUCTION SET FOR THE XXC56 SERIES OF EEPROMs  
Op  
Code  
10  
Address  
Data  
Instruction  
SB  
x8  
x16  
x8  
x16  
Comments  
READ  
1
A8–A0  
A7–A0  
Reads data stored in  
memory, at specified address  
EWEN  
1
00  
11XXXXXXX  
11XXXXXX  
Write enable must precede all  
programming modes  
ERASE  
WRITE  
ERAL  
1
1
1
11  
01  
00  
A8–A0  
A0–A0  
A7–A0  
A7–A0  
Erases memory location An–A0  
Writes memory location An–A0  
D7–D0  
D7–D0  
D15–D0  
D15–D0  
10XXXXXXX  
10XXXXXX  
Erases all memory locations.  
Valid only at VCC = 4.5 V to 5.5 V  
WRAL  
EWDS  
1
1
00  
00  
01XXXXXXX  
00XXXXXXX  
01XXXXXX  
00XXXXXX  
Writes all memory locations.  
Valid when VCC = 5.0 V ± 10%  
and Disable Register cleared  
Disables all programming  
instructions  
1-646  
Am79C961  
AMD  
VIH  
VIL  
CS  
1 µs (1)  
tCSH  
tCSS  
tDIS  
tSKH  
tSKL  
VIH  
VIL  
SK  
DI  
tDIH  
VIH  
VIL  
tPDO  
tPDI  
tDF  
VOH  
VOL  
DO (READ)  
tDF  
tSV  
VOH  
VOL  
Status Valid  
DO (PROGRAM)  
Note:  
1. This is the minimum SK period.  
18183B-57  
Typical XXC56 Series  
Serial EEPROM Control Timing  
Am79C961  
1-647  

相关型号:

AM79C961KC/W

PCnetTM-ISA+ Jumperless Single-Chip Ethernet Controller for ISA
AMD

AM79C965?

Am79C965? 1.64MB (PDF) PCnet-32 Single-Chip 3-Bit Ethernet Controller ?
ETC

AM79C965A

PCnet?-32 Single-Chip 32-Bit Ethernet Controller
AMD

AM79C970

PCnetTM-PCI Single-Chip Ethernet Controller for PCI Local Bus
AMD

AM79C970A

PCnet-PCI II Single-Chip Full-Duplex Ethernet Controller for PCI Local Bus Product
AMD

AM79C970A?

Am79C970A? 2.52MB (PDF) PCnet PCI II Single-Chip Full-Duplex Ethernet Controller for PCI Local Bus ?
ETC

AM79C970AKC

PCnet-PCI II Single-Chip Full-Duplex Ethernet Controller for PCI Local Bus Product
AMD

AM79C970AKCW

PCnet-PCI II Single-Chip Full-Duplex Ethernet Controller for PCI Local Bus Product
AMD

AM79C970AVC

Rochester Manufactured 79C970, Ethernet Controller, 144 LQFP Package, Commercial Temp spec.
ROCHESTER

AM79C970AVC/W

LAN Controller, 2 Channel(s), CMOS, PQFP144, TQFP-144
ROCHESTER

AM79C970AVCW

PCnet-PCI II Single-Chip Full-Duplex Ethernet Controller for PCI Local Bus Product
AMD

AM79C970KC

LAN Node Controller
ETC