Background

In addition to the development of workstation-based ATM software, we have begun research on interfaces to non-computer based devices. During the Fall of 1994 we have built a direct hardware interface to the iPOINT switch. This interface allows arbitrary devices to send and receive ATM cells to and from the network. Future uses of this interface may include interfaces for data collection from laboratory equipment, custom video encoder/decoders, etc. The first device to use this interface is an ATM telephone that has been constructed as a senior design project for ECE345 by Arpeet Patel and Anupam Singh, under the direction of John Lockwood.

The ATM Phone

The ATM telephone consists of three major components. An input amplifier and analog-digital converter (ADC) is used to sample the input voice signal. A digital-analog converter (DAC), followed by an output amplifier is used for the output voice signal. A Motorola 68HC11 is used for call setup (i.e., dialing numbers and confirming that a connection has been established). The voice data does not pass through the microcontroller. This self-sustained subsystem allows a user to place a call to another such box, or to make a call to any workstation equipped with an audio device. Using multicast, it is possible to conduct a conference call over the digital network to any users attached to the ATM network.

The interface logic to the iPOINT switch is implemented using extra gates within the XC4013 FPGA iPOINT switch. This logic performs the ATM cell header assembly and header stripping. The raw data is passed along to the ATM Phone. A control signal from the ATM phone is used to indicate which virtual circuit is to be used (one VPI/VCI pair is used for call setup commands, while another is used for the voice data)

The protocol for a call setup is as follows. The numbers are entered via the keypad on the ATM phone. The 68HC11 constructs the sequence of button presses to a dialing string, which is then transmitted to the iPOINT switch as control information. The iPOINT switch generates an ATM cell, and transmits the call setup message to a designed call processing host. This host (a workstation) resolves the dialing string to a workstation address. A call setup request message is then forwarded to the switch controller (the i486). This processor then sends a command to the iPOINT switch to establish a virtual circuit for the voice data. One the connection has been established, the ATM phone begins sampling and playing the voice data.

The ATM phone is only one application that can use the hardware interface to the iPOINT switch. As mentioned earlier, future work may include the constuction of custom ATM hardware for purposes of data collection, video encoding/decoding, etc.

A photograph of the working ATM phone


J. W. Lockwood