Ethernet; Programming Characteristics - Xerox Alto I Hardware Manual

A personal computer system alto series
Table of Contents

Advertisement

Alto Hardware Manual
Section 7: Ethernet
49
7.0 ETHERNET
An Ethernet is the principal means of communications between an Alto and the outside world. The
object was to design a communication system which could grow smoothly to accommodate several
buildings full of personal computers and the facilities needed for their support.
The Ethernet is a
broadcast, multi-drop, packet-switching, bit serial, digital communications network: it connects up to
256
nodes, separated by as much as 1 kilometer, with a
2.94
megabits/sec channel. Control of the Ethernet is
distributed among the communicating computers to eliminate the reliability problems of an active central
controller, to avoid a bottleneck in a system rich in parallelism, and to reduce the flxed costs which make
small systems uneconomical.
The Ethernet is intended to be an· efficient, low-level ·packet transport mechanism which gives its best
efforts to delivering packets, but it is not error free.
Even when transmitted without source-detected
interference, a packet may not reach its destination without error; thus, packets are delivered only with
high probability. Stations requiring a residual error rate lower than that provided by this bare packet
transport mechanism must follow mutually agreed upon packet protocols.
Alto Ethernets come in three pieces: the transceiver, the interface, and the microcode. The transceiver is
a small device which taps into the passing Ether, inserting and extracting bits under the control of the
interface while disturbing the Ether as little as possible. The same device is used to connect all types of
Ethernet interfaces to the Ether, so the transceiver design is not specific to the Alto, and will not be
described here. The following sections describe the programming characteristics of the Alto Ethernet,
and then the implementations. of the interface a..'ld microprogram.
7.1
Programming
Characteristics
Programs communicate with the interface and the microcode via the emulator instruction
SIO
and 9
reserved locations in page
1.
Word counts, buffer addresses, etc., are put in the appropriate locations and
then
SIO
is executed with an Ethernet command in
ACO.
The special page 1
EPLOC
=
600B:
EBLOC
=
601B:
EELOC
=
602B:
ELLOC
=
603B:
EICLOC
=
604B:
EIPLOC
=
605B:
memory locations and their functions are:
~ost
location. Microcode and interface status information is posted in this
location when a command completes.
Interrupt Qit location. The contents of this location is
ORed
into
NWW
when
a command completes, thereby causing interrupt(s) on the channels
corresponding to the one bits in
EBLOC.
gnd count location. The number of words remaining in the main memory
buffer at command completion is stored here as part of the posting
operation.
Load location. This location is used by the microcode to hold a mask of
ones shifted in from the right for generating random retransmission intervals.
ELLOC
should be zeroed before starting the transmitter.
Input fount location. The emulator program should put the size of the
input buffer (in words) into this location before starting the receiver. If a
packet arrives that is longer than
EICLOC,
the receiver will post an Input
Buffer Overrun error status.
Input 120inter location. The emulator program should put a pointer to the
beginning of the input buffer into this location before starting the receiver.

Advertisement

Table of Contents
loading

This manual is also suitable for:

Alto ii

Table of Contents