Cambridge Ring Hardware

University of Cambridge, Computer Laboratory

The Cambridge Ring was one of the first local area networks (LANs). It operated with a line rate of 10 Mbps using a slot size of 38 bits. Two address bytes and two bytes of data were carried in each slot. This view shows the ring cards commonly in use to make a station when I became a PhD student at the Computer Laboratory in 1984. At this time, there were three rings in operation, connected using bridges, providing network service for a total of 100 or so hosts.

The three cards in this view are the repeater, the station and the Z80 tiny server. A fourth slot in the backplane was often fitted with an 8-port serial card to create a terminal concentrator. Other stations were connected to a pair of VAX machines and to a bank of LSI-4 machines. Later, further stations were connected to VME backplanes and 68k processors. The 68k processors became the main processor bank.

Cambridge Ring Repeater Card

The repeater card took its power from the ring and could work in isolation without a station card. In the absence of a station card, it simply retimed the data whereas with a station card the data was routed through the station for filling or emptying slots.

Cambridge Ring Station Card

The station card provided the means to send and receive data. The station would place data in an empty slot and the slot would circulate until it arrived at the receiver. There the receiver would have a number of options which it would flag in a response field. It could take out the data or not, thus providing flow control back to the transmitter. The transmitter would always empty the slot and pass it on free for another station to use in a fair way.

Unlike the ATM systems that followed, the 16 bits of data per cell were too small to efficiently contain upper-layer addressing information, such as port numbers, so the stations had to use source addresses to demultiplex incoming blocks, and only one flow, or segmentation and reassembly operation, between a pair of hosts could be supported at one time. Indeed, to avoid the host device driver from having to perform multiplexed reassembly, a hardware autoselect system could be used so that a new transmitter received the busy response from the destination if the destination was mid-block from another source.

Cambridge Ring Z80 Tiny Server Card

This Z80 with 64Kbytes of RAM provided a cheap and simple host that could be used for various management issues in the Cambridge Distributed System. For instance, it might act as a resource manager that keeps track of which servers are in use with which terminal sessions.

My contribution to the cards shown on this page was the small chip piggy-backed in the centre of the tiny server. I fitted this gate to prevent the tiny-server making a spurious I/O cycle access into my own attached hardware during interrupt acknowledge cycles.

Imagine asking a modern programmer to get all of the program code and data buffers for an 8 port terminal concentrator into 64 Kbyte address map!

Cambridge Ring Monitor Station

This view shows the monitor and logging station for one of the three rings operational in 1985. The monitor station is screwed to the wall of the Titan Room. The three main sections are the repeater, station and tiny server. Each was wire-wrapped. A serial cable connects to a printer where the system log was printed.

Cambridge Ring Station Inside CAP Computer

The CAP computer was an experimental computer with capability-based access control implemented in hardware. This view of the CAP shows one of the covers open, with a wire-wrapped Cambridge Ring station mounted inside the cover. Indeed, the whole of CAP was wire-wrapped. See R. Needham and R. Walker "The Cambridge CAP computer and its protection system" in ACM Symposium on OS Principles, pages 1--10, 1977.