Scalable ATM network interface design using parallel RISC processors architecture

https://doi.org/10.1016/j.micpro.2004.04.001Get rights and content

Abstract

In this work, a high-speed scalable ATM network interface has been designed and simulated. The interface has two processing engines, one for the transmission and the other for receiving side. Two specialized single-issue RISC cores supported with three stages pipeline and forwarding engine, have been used to process the network interface functions and ATM protocols. In addition, the interface architecture has Content Addressable Memory, five First-In-First-Out buffers, two simple Direct Memory Access units, two dual-port RAM, host interface, and transmission lines interface. The performance evaluation of the network interface has been measured through the development of a VHDL-based cycle accurate simulator. The results have shown that such network interface is scalable and could support a wire-speed of 2.4 Gb/s when the RISC cores run at a clock rate of about 170 MHz.

Introduction

In the early stages of the high-speed network interfaces development, the design approach using off-the-shelf components integrated over the Printed Circuit Boards were used for implementing network interface cards [1]. The technology advances in chip designs and specifically in the area of Application Specific Integrated Circuits (ASICs) have made possible to integrate most, if not all, discrete components that required for network interface on a single chip [2]. Clearly, using ASICs in implementing network interfaces have reduced design cost and complexity; improve their reliability, and performance. Generally, these ASICs used specialized engines to process the interface and the protocols functions. Such specialized engines are constructed from sequential machines and discrete logic [3], [8], [9]. However, using the specialized engine has made the design change costly and time consuming. Such design change could occur often when it is required to change the communications protocols, adding new network interface functions, or enhancing the existing one.

The network interfaces designers avoid using the general purpose embedded processor cores in their ASICs. Different reasons are behind such decision, such as the specialized engines could run at higher clock rates than the embedded cores and do not occupy a large space on the ASIC chip. In addition, licensing the commercially available embedded cores in order to be used as the processing cores on the ASICs is costly and they are not designed specifically for high-speed network interface processing. These cores, however, have some important advantages such as providing an easy way to support the interface to adapt a protocol revision or even a new protocol by changing the software that processed by the interface's engine. In addition, using these cores would lower development cost and simplify interface's datapath [3].

The recent advances in the area of CAD tools and the Hardware Description Language has made developing a specialized embedded RISC core, and other components required for the network interface design, a relatively easy task. In addition, the new development in the area of System-On-Chip technology has made easy to accommodate all the hardware required for the network interface in one chip [4]. In addition, there are many cost effective embedded cores that become available and can be easily ported to a network interface chip. These advances have directed this research to investigate the evaluation of the use of RISC embedded cores in high-speed network interfaces design and to measure their performance and scalability for high-speed network interfaces applications.

This work is focused on evaluating the use of simple RISC cores in performing the processing required by the high-speed network interfaces. We have used RISC cores in Asynchronous Transfer Mode (ATM) network interface design. Generally, the ATM network interfaces supports wide range of wire speed. Conducting ATM protocols processing using RISC cores will show the performance of using such cores in supporting the ATM scalable network interfaces. The RISC core performance is measured for performing the processing of the network interface functions, such as Segmentation and Reassembly (SAR) functions. Such functions are considered as a real processing challenge, especially when the network interfaces support high-speed communications lines.

This paper organized as follows: Section 2 discusses the architectural consideration for the design of the ATM network interface. In Section 3, the RISC core architecture has been investigated and the core design has been highlighted. The SAR functions processing are discussed in Section 4. Section 5 describes the approach that we have used to improve the data movement processing. The VHDL-based cycle-accurate simulator has been discussed in Section 6. The simulation results of the network interface that support different wire-speeds and the system-level simulation have been discussed in Section 7.

Section snippets

Network interface architectural considerations

In ATM networks, all information has to be transferred into packets of fixed-size called cells. These cells have a 48-octet information field and a five-octet header. The information field is available to transfer the user's information while the cell header is to define and recognize individual communications. The ATM protocol consists of several layers: physical, ATM, and adaptation. Each layer is responsible for performing certain functions. Since this work is about the network interface

Specialized embedded RISC core

There are many general-purpose embedded RISC cores are available and can be licensed and used in the network interface design. However, these cores designs are not optimized for network interface applications, where only portion of their architectures is required for network interface processing. We have decided to design a RISC core that has three pipeline stages and it has similar basic architecture of the MIPS RISC processor and specifically the MIPS R3000 architecture [5]. The RISC core

Segmentation and reassembly (SAR) functions processing

The SAR units are independent from each other and they run in parallel. Each unit is a single bus architecture where a RISC core, DMA, and the local memory are used as the main components of each unit. However, the reassembly unit has more processing resources than the segmentation unit, i.e. the use of the CAM and four FIFOs. The RISC cores used in SAR units has the same architecture, where each supported with three pipeline stages and forwarding mechanism [6], [7].

When the ATM cells arrive to

The data movement

The data movement is performed by simple DMA controller that exists at each unit of the network interface. In general applications, the DMA operations require the size of the block to be transferred, the address of the source block, and the address of destination place where the block will be stored. As the ATM network interface transferring only the ATM cells, there is no need for the size of the packet to be delivered to the DMA by the network interface's RISC processing core since the size

Cycle accurate simulator

A VHDL cycle-accurate network interface simulator has been developed during this work to evaluate the processing of the ATM cells using the cost-effective and specialized embedded RISC cores. Other components that are required in the interface such as the DMA, FIFOs, CAM, the transmission line interface and the host interface, have also been simulated by developing a VHDL model for each component. The simulation process provides answer for:

  • (a)

    The scalability issue of using a network interface

Simulation results

The simulation process has quantified the performance of the network interface architecture that processing the ATM network interface protocol, data movement operation, and interface-related operations. The network interface processing is traced cycle-by-cycle. Such tracing process is a lengthy and difficult one. Also, this simulation has shown that all parts of the network interface are working properly and according to the specifications. The simulation for the cells type of AAL 5 is carried

Conclusions

We have presented ATM network interface design that uses two embedded RISC cores runs in parallel, where one core is used for segmentation and the other for reassembly function processing. A VHDL cycle-accurate simulator has been developed to evaluate the processing for the SAR functions of both AAL 3/4 and AAL 5 protocols.

The simulation results have shown that a RISC core can efficiently used to provide the processing required for variety of transmission line rates. For example, using a RISC

References (10)

  • B. Davie

    A host–network interface architecture for ATM

    (September 1991)
  • C. Georgiou et al.

    Scalable protocol engine for high-bandwidth communications

    (June 1997)
  • C. Kim

    Design and implementation of a high-speed ATM host interface controller

    Proceedings of ICOIN

    (1998)
  • C. Cranor

    Architecture considerations for CPU and network interface integration

    IEEE Micro

    (2000)
  • D. Patterson et al.

    Computer Organization and Design the Hardware/Software Interface

    (1998)
There are more references available in the full text version of this article.

Cited by (0)

View full text