3094

3094 is the Ethernet II controller (ND number 110063).

Introduction
It is an ethernet interface for ND-100 machines. The controller conforms to IEEE 802.3, ECMA 80/81/82 and ISO/DIS 8802/3 standards. ND-100 based systems can drive a maximum of four Ethernet II controllers. The Ethernet controller implements the three lower layers of the OSI seven layer model (OSI model) for system communication.

Switches and indicators
Indicators on the card, from the top of the card Thumbwheel switches, from top of the card These thumbwheels selects the memory bank accessible to the controller, as follows: etc.
 * "8" - yellow LED - external 12V transceiver
 * "2" - red LED - 68000 halt
 * "1" - red LED - 68000 reset
 * "3" - yellow LED - active memory cycle
 * "5" - red LED - memory parity error
 * 12J - Ethernet number, An ND-100 can control four Ethernet controllers. The device address of a controller in the system is set by this switch. Position of the switch as follows:
 * 0 - ethernet number 1 - device number 140360 (octal) - ident code 140034 (octal)
 * 1 - ethernet number 2 - device number 140364 (octal) - ident code 140035 (octal)
 * 2 - ethernet number 3 - device number 140370 (octal) - ident code 140036 (octal)
 * 3 - ethernet number 3 - device number 140374 (octal) - ident code 140037 (octal)
 * 9J - memory bank number
 * 7J - memory bank number
 * 7J: 0, 9J: 0-3, bank number: 0, PIOC address space: 0 - 512 Kbytes, physical page: 0 - FF (hex)
 * 7J: 0, 9J: 4-7, bank number: 4, PIOC address space: 512 - 1024 Kbytes, physical page: 100 - 1FF (hex)
 * 7J: 0, 9J: 8-11, bank number: 8, PIOC address space: 1024 - 1536 Kbytes, physical page: 200 - 2FF (hex)
 * 7J: 0, 9J: 12-15, bank number: 12, PIOC address space: 1536 - 2048 Kbytes, physical page: 300 - 3FF (hex)
 * 7J: 1, 9J: 0, bank number: 16, PIOC address space: 2048 - 2560 Kbytes, physical page: 400 - 4FF (hex)

Connectors
The A and B connectors are used for I/O, the C connector is used for the ND-100 Bus.

Ethernet control register
address: device address + 1 (or 3)

This is a 16-bit register controlling the following functions A Master Clear pulse from the ND-100 (or power-on) will set the controller RESET and HALT signals and reset any local I/O activity.
 * bit 15-9 - not used
 * bit 8 - disable check bit
 * bit 7 - not used
 * bit 6 - power low
 * bit 5 - halt
 * bit 4 - reset
 * bit 3 - start OPCOM
 * bit 2 - ND interrupt
 * bit 1 - not used
 * bit 0 - enable SCIP interrupt

The ND-100 starts controller activity by writing to the control register with the halt and reset bits cleared (zero).

The ND-100 writes to this register using an IOXT instruction. The device address of the controller + 1 (or 3) must be loaded into the T register before an IOXT is executed.

Ethernet status register
address: device address + 0 (or 2)

It has the following format Bit 8 and 9 are always zero as the controller must start on a half-megabyte boundary i.e. the bank number is always a multiple of four. The ND-100 reads this register using an IOXT instruction. The device address of the controller + 0 (or 2) must be loaded into the T register before an IOXT is executed.
 * bit 15-8 - bank number
 * bit 6 - memory is 512 Kbytes (always zero)
 * bit 5 - halt
 * bit 4 - reset active
 * bit 2 - interrupt set for ND-100 on level 12
 * bit 0 - interrupt enabled onto ND-100 bus

Hardware architecture
The controller is implemented on a single ND-100 card, featuring the following blocks.

68000 local processor
The 68000 is a 10 Mhz, 16-bit processor dedicated to the I/O processing required by the Ethernet controller. Its basic controls signals - HALT and RESET - are directly set by the ND-100.

Interrupt Levels
The 68000 interrupt levels are assigned as follows Interrupt level 7 has the highest priority and level 0 the lowest.
 * 7 - ND-100 power low
 * 6 - ND-100 OPCOM
 * 5 - parity error
 * 4 - test console (PTC)
 * 3 - MFP (and ND-100)
 * 2 - LANCE interrupt
 * 1 - not used
 * 0 - indicates no interrupt

LANCE
The Am7990 LANCE is a single integrated circuit featuring The LANCE operates in two modes In transmit mode, the LANCE directly accesses data in memory and formats it into a packet for transmission. The packet consists of The LANCE transmits the packet to the SIA. It loads the first byte of data into its Silo. Then, as the LANCE transmits the preamble to the SIA, it simultaneously loads the Silo with the remaining data.
 * onboard DMA and buffer management (48 byte FIFO known as a Silo)
 * network and packet error reporting
 * back-to-back packet reception
 * network diagnostics
 * internal / external loopback
 * CRC logic check
 * time domain reflectometer
 * transmit
 * receive
 * preamble
 * sync pattern
 * data
 * 32-bit CRC

In receive mode, packets are loaded into the Silo via the SIA. The CRC of the received data is calculated and and compared and appended to CRC field given by the packet. If the CRCs do not match, an error bit is set.

Error reporting
System errors reported by the LANCE includes Packet errors include:
 * babbling transmitter (the transmitter attempts to send more than 1518 data bytes)
 * collision (collision detection malfunctions)
 * missed packet (insufficient buffer space)
 * memory timeout (25.6 microseconds)
 * CRC (data invalid)
 * framing (the end of the packet was not on a byte boundary). This is also known as octet or alignment error.
 * overflow / underflow (slow response to a DMA request)
 * buffer (insufficient buffer space)

SIA
The SIA (Am7992B) is a single integrated circuit featuring For transmission the SIA encodes the separate clock and NRZ data packet into a standard Manchester II serial bit stream.
 * a Manchester encoder / decoder
 * collision detection

For reception the SIA indicates to the LANCE that data is being received and separates the incoming Manchester-encoded data stream into clock and NRZ data.

Any collisions on the network are detected and signaled to the LANCE.

local memory
The local memory consists of
 * 512 Kbyte DRAM (dynamic RAM)
 * 1 Kbit SRAM (static RAM)
 * 128 Kbyte EPROM (future option)

local DRAM
The local DRAM is accessible from the ND-100 as if it were any other ND-100 memory bank. The location of the DRAM in the ND-100 address space is set by two thumbwheels, see the Switches and indicators section. The bank number of the card can be read back to the ND-100 using the IOXT instruction.

Messages between the controller and ND-100 can be transferred via special mailbox ares in the DRAM.

To pass messages the Ethernet controller can interrupt the ND-100 and vice versa. The controller's control and status registers are under the direct control of the ND-100.

EPROM
The 128K by 16 bit EPROM can only be accessed by the 68000. the EPROM is currently not used by the controller, so the boards are delivered with empty EPROM sockets. Future developments may implement EPROM.

Ethernet transceiver power control
A current switch monitors the DC current supplied to the transceiver from the ND-100 via the controller card. The current switch will disconnect the supply on controller command or when the current level could harm hardware or data integrity.

Hardware needed

 * The 3094 controller card
 * Ethernet/GPIB plug panel
 * internal cable between controller and plug panel
 * an ethernet transceiver

ethernet transceiver
The transceiver is powered by the ND-100's 12 V DC power supply via the Ethernet controller. A current switch will disconnect the power to the transceiver in case of
 * short circuit or excessive transceiver current consumption
 * low 5 Volt supply
 * a power off command from the controller. A power-off command is issued:
 * after jabber (data transmitted to jam the network)
 * as a result of a hanging transmitter
 * if the heartbeat is missing

Ethernet accessories
The listing below has the ND number, followed by the product description.
 * 107700 - transceiver cable, 5m
 * 107710 - transceiver cable, 15m
 * 107720 - Ethernet 50 ohm terminator
 * 107730 - Ethernet cable splice
 * 107740 - Ethernet transceiver
 * 107750 - local repeater package (includes 1 repeater, 2 transceivers and 2 transceiver cables)
 * 107760 - Ethernet coaxial cable, 23.4m
 * 107770 - Ethernet coaxial cable, 70.2m
 * 107780 - Ethernet coaxial cable, 117m
 * 107790 - remote repeater package (includes 2 repeaters, 2 transceivers and 2 15m transceiver cables)
 * 107830 - fan out package