System Packet Interface

The System Packet Interface family of Interoperability Agreements from the Optical Internetworking Forum specify chip-to-chip, channelized, packet interfaces commonly used in synchronous optical networking and ethernet applications. A typical application of such a packet level interface is between a framer (for optical network) or a MAC (for IP network) and a network processor. Another application of this interface might be between a packet processor ASIC and a traffic manager device.

Context

There are two broad categories of chip-to-chip interfaces. The first, exemplified by PCI-Express and HyperTransport, supports reads and writes of memory addresses. The second broad category carries user packets over 1 or more channels and is exemplified by the IEEE 802.3 family of Media Independent Interfaces and the Optical Internetworking Forum family of System Packet Interfaces. Of these last two, the family of System Packet Interfaces is optimized to carry user packets from many channels. The family of System Packet Interfaces is the most important packet-oriented, chip-to-chip interface family used between devices in the Packet over SONET and Optical Transport Network, which are the principal protocols used to carry the internet between cities.

The term SPI may also refer to a set of low-rate serial communications protocols, not related to optical communications, usually used for transferring data between devices on a printed circuit board; more information may be found here: Serial Peripheral Interface.

Specifications

The agreements are:

History of the specifications

These agreements grew out of the POS-PHY interface definitions PL-3 and PL-4 which themselves came from the ATM Forum's Utopia definitions which had included:

System Packet Interface or SPI as it is widely known is a protocol for packet and cell transfers between PHY and LINK layer devices in multi-gigabit applications. This protocol has been developed by Optical Internetworking Forum (OIF) and is fast emerging as one of the most important integration standards in the history of telecommunications and data networking. Devices implementing SPI are typically specified with line rates of 700~800 Mbit/s and in some cases up to 1 Gbit/s. The latest version is SPI 4 Phase 2 also known as SPI 4.2 delivers bandwidth of up to 16 Gbit/s for a 16 bit interface.

Applications

An example usage of SPI interface is in connecting Network Processors to PHY layer devices. i.e. connecting the MSF of IXP2800 (LINK layer) with IXF framer (PHY layer).

Example:

GigEth---SPI----Network Processor

Technical details

SPI 4.2

The SPI 4.2 interface is composed of high speed clock, control, and data lines and lower speed FIFO buffer status lines. The high speed data line include a 16-bit data bus, a 1 bit control line and a double data rate (DDR) clock. The clock can run up to 500 MHz, supporting up to 1 GigaTransfer per second. The FIFO buffer status portion consists of a 2 bit status channel and a clock. SPI 4.2 supports a data width of 16 bits and can be PHY-link, link-link, link-PHY or PHY-PHY connection. The SPI 4.2 interface supports up to 256 port addresses with independent flow control for each.

To ensure optimal use of the rx/tx buffers in devices connected with SPI interface, the RBUF/TBUF element size in those devices should match the SPI-4.2 data burst size.

SPI 4.2 at enhanced rates

At these high data rates, it becomes more challenging to manage the skew between the clock and data signals. The SPI-4.2 protocol specifies a training sequence which can be used by receivers to correct skew up to +/- 1 bit period. This function is commonly referred to as dynamic phase alignment (DPA).