Cambridge Backbone Ring Hardware

Olivetti Research and University of Cambridge, Computer Laboratory

The Cambridge Backbone Ring was designed at the University of Cambridge Computer Laboratory and at Olivetti Research Cambridge and funded by Olivetti. It was fibre-optic ring network that operated with a line rate of 503 Mbps using a 32 byte cell payload size with a 4 byte header. In the header, a VCI value of zero indicated an empty slot. The ring started operation in 1989 with a set of five stations. It was designed to cover a whole campus and so was termed a metropolitan-area network (MAN).

The integrated circuits were designed using the local 'Cambridge HDL' hardware description language, itself written in Modula-2 and running on Microvax Ultrix (donated by Digital Equipment Corp).

Each of the original five stations consisted of four extended depth, double height eurocards fitted into an extended depth VME rack. This view shows the second generation of ring cards, engineered by David Milway, where only three cards were needed to form a VME station. The Backbone Ring did not have the success that the previous CR and CFR enjoyed, since switched ATM systems were being developed at the same time in our labs, and attracted more attention. The largest Backbone Ring deployed had just under 20 stations situated in five different buildings within the University. Optical fibre from the Granta Fibre Network provided the interconnection and we were about the first users of the monomode part of Granta.

The three ring cards in this view are the station, the repeater and the optical and telemetry unit.

Also pictured to the left of the station are a Motorola 68K processor card and a Turbochannel to VME adaptor card. Pictured to the right of the station is a serial break-out panel for the Motorola card and an electro-mechanical optical switch unit that could split or combine the ring into one large or two small rings.

Cambridge Backbone Ring Repeater Card

The repeater card contains the ECL repeater chip, a pair of CMOS ring access chips, one for transmit and one for receive, and the buffer memory. A 64K by 4 SRAM is also present. This was used for a direct lookup of each passing VCI field and selected which VCI values to receive. Two daughter PCB cards contain the receive clock recovery unit and the transmit clock generator.

The repeater chip contained the line code modulators and logic for operating the various flags in the frame format. Like the CFR, it brought the ring data out on an 8 bit paralell bus that could be chained through a number of CMOS chips. The CMOS chips converted the data to 32 bit wide for the memory banks and selected which channel was being copied to or from memory a cell at a time.

The Backbone Ring operated with a number of channels and the intention was that different numbers of CMOS chips could be added along with different configurations of buffer memory banks so that stations of various complexity could be constructed. Illustrated is the most simple form of station, which was half-duplex and could access only one channel at a time.

Cambridge Backbone Ring Station Card

The station card was constructed from a dozen or so 24V12 PALs along with 74HC MSI blocks. The main function of the station card was to generate the addresses for the buffer memory bank on the repeater card. It maintained a number of FIFO queues of cells that were wating for transmission or had just been received. Per-channel transmit queues were needed and each channel had a high and low priority queue.

The station card also contains a small SRAM indexed by the current slot number. This contained information about what the station did in that slot last time it passed the ring. A main difference from the protocol of the CR and CFR was that the Backbone Ring needed to be able to transmit in multiple slots per ring revolution since there were many more slots at the MAN geometry.

Cambridge Backbone Ring Optical and Telemetry Card

This card housed three separate components. The optical to electric converter, the electric to optical converter and the control microprocessor. The control processor had a number of A-to-D converters connected via the I2C bus to monitor system parameters, including power supplies and RX power level, AGC and so on. Digital outputs from the repeater for line code violations and CRC errors were filtered in an RC network and these values were measured with the ADC as well. The control processor provided the ring start-up function by measuring the ring length with a trial frame and then writing out the correct number of frames that circulated indefinately.

Each control processor was in communication with each other using a low-rate telemetry system. This consisted of sending and receiving 1200 baud, Manchester encoded, HDLC frames from one station to the next using mean power modulation of the lasers in the electrical to optical section. This system could also be used to generate a remote reset of the host attached to any station, which was a useful feature when stations were dotted about the town and while early host software was flakey.

Cambridge Backbone Ring Monitor Station

No picture needed.

Any station could become the active ring monitor, with the election being done in software over the telemetry link. The monitor station also broke the clock distribution system into a chain since it used a crystal-locked PLL for its transmit clock, whereas the other stations operated by locking their transmit PLL to the received clock. An elastic buffer in the repeater ECL chip accommodated any slowly changing phase difference between transmit and receive clocks.