AM79C970A Advanced Micro Devices, AM79C970A Datasheet - Page 205
![no-image](/images/manufacturer_photos/0/0/14/advanced_micro_devices_sml.jpg)
AM79C970A
Manufacturer Part Number
AM79C970A
Description
PCnet-PCI II Single-Chip Full-Duplex Ethernet Controller for PCI Local Bus Product
Manufacturer
Advanced Micro Devices
Datasheet
1.AM79C970A.pdf
(219 pages)
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
AM79C970ACK
Manufacturer:
AMD
Quantity:
271
Company:
Part Number:
AM79C970AKC
Manufacturer:
AMtek
Quantity:
11
Part Number:
AM79C970AKC
Manufacturer:
AMD
Quantity:
20 000
Company:
Part Number:
AM79C970AKC/W
Manufacturer:
AMD
Quantity:
226
Part Number:
AM79C970AKC/W
Manufacturer:
AMD
Quantity:
20 000
Company:
Part Number:
AM79C970AKCW
Manufacturer:
AMD
Quantity:
6 557
Part Number:
AM79C970AVC
Manufacturer:
AMD
Quantity:
20 000
Look-Ahead Packet Processing (LAPP) Concept
INTRODUCTION OF THE LAPP CONCEPT
A driver for the PCnet-PCI II controller would normally
require that the CPU copy receive frame data from the
controllers buffer space to the applications buffer space
after the entire frame has been received by the control-
ler. For applications that use a ping-pong windowing
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 be-
tween last byte of a receive frame arriving at the clients
Ethernet controller and the clients transmission of the
first byte of the next outgoing frame will be separated by:
1. The time that it takes the clients CPUs interrupt
2. plus the time that it takes the client driver to pass
3. plus the time that it takes the application to gener-
4. plus the time that it takes the client driver to trans-
5. plus the time that it takes the application to proc-
6. plus the time that it takes the client driver to set up
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%.
An important thing to note is that the PCnet-PCI II con-
trollers data transfers to its buffer space are such that
the system bus is needed by the PCnet-PCI II controller
for approximately 4% of the time. This leaves 96% of the
system bus bandwidth for the CPU to perform some of
procedure to pass software control from the cur-
rent task to the driver
the header data to the application and request an
application buffer
ate the buffer pointer and then return the buffer
pointer to the driver
fer all of the frame data from the controllers buffer
space into the applications buffer space and then
call the application again to process the complete
frame
ess the frame and generate the next outgoing
frame
the descriptor for the controller and then write a
TDMD bit to CSR0
APPENDIX D
Am79C970A
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
performed between reception of a frame and transmis-
sion of the next frame can be performed before the re-
ception 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
the driver and application code, but the steps that can be
performed at the same time as the receive data are ar-
riving include as much as the first 3 steps and part of the
4
these steps before the entire frame has arrived, the
frame throughput can be substantially increased.
A good increase in performance can be expected when
the first 3 steps are performed before the end of the net-
work receive operation. A much more significant per-
formance increase could be realized if the PCnet-PCI II
controller could place the frame data directly into the ap-
plications buffer space; (i.e., eliminate the need for step
4.) In order to make this work, it is necessary that the ap-
plication buffer pointer be determined before the frame
has completely arrived, then the buffer pointer in the
next descriptor for the receive frame would need to be
modified in order to direct the PCnet-PCI II controller to
write directly to the application buffer. More details on
this operation will be given later.
An alternative modification to the existing system can
gain a smaller, but still significant improvement in per-
formance. This alternative leaves step 4 unchanged in
that the CPU is still required to perform the copy opera-
tion, but it allows a large portion of the copy operation to
be done before the frame has been completely received
by the controller; i.e., the CPU can perform the copy op-
eration of the receive data from the PCnet-PCI II control-
lers buffer space into the application buffer space before
the frame data has completely arrived from the network.
This allows the copy operation of step 4 to be performed
concurrently with the arrival of network data, rather
than sequentially, following the end of network
receive activity.
th
step shown in the sequence above. By performing
D-1