SONET (Synchronous Optical NETwork) is a North American transmission standard for optical communication systems. SDH (Synchronous Digital Hierarchy), a European transmission standard, is a minor variant of SONET.
SONET defines a hierarchy of electrical signals referred to as Synchronous Transport Signals (STS). The STS hierarchy is built upon a basic signal termed STS-1 having a data rate of 51.84 Mbps. Other signals of the STS hierarchy, termed STS-N, employ data rates that are N times higher than the basic-signal data rate, where N=3, 12, 48, and 192. Each STS-N signal can be generated by multiplexing lower-rate signals. For example, an STS-48 signal having a data rate of 2488.32 Mbps can be generated by multiplexing 48 STS-1, 16 STS-3, or 4 STS-12 signals. The corresponding hierarchy of electrical signals for SDH is referred to as STM-N (Synchronous Transfer Modules-N), where N=1, 4, 16, and 64. STM-1 has a data rate of 155.52 Mbps, which is equivalent to that of STS-3. Optical equivalents of STS and STM signals are referred to as optical carrier (OC) signals.
FIG. 1 shows schematically the format of an STS-1 data frame. An STS-1 frame is a sequence of 810 bytes organized into a matrix having 9 rows and 90 columns numbered 0 to 8 and 0 to 89, respectively. The order of transmission is row by row from top to bottom, left to right. Each STS-1 frame has a Transport Overhead (TOH) portion and a Synchronous Payload Envelope (SPE) portion. The TOH portion includes the bytes in the first three columns, i.e., columns 0, 1, and 2, and is used for framing, error detection, and various Operations, Administration, Maintenance, and Provisioning (OAM&P) functions. The SPE portion includes the bytes in the next 87 columns, i.e., columns 3 through 89, and is used for transmission of SPE envelope data. Each SPE envelope is 783 (=87×9) bytes long and includes 9 Path Overhead (POH) bytes and 774 payload bytes. An SPE envelope can start at any byte location within the SPE portion, which location is identified by pointer bytes in the TOH portion.
FIG. 2 shows schematically two adjacent STS-1 data frames 200 and 204, in which a representative SPE envelope 210 spans across a frame boundary 202. Pointer bytes H1 and H2 in the TOH portion of frame 200 indicate the location of the first byte (J1) of SPE envelope 210. The 9 POH bytes of SPE envelope 210 form a POH column 212 and the remaining bytes of SPE envelope 210 are payload bytes.
FIG. 3 shows schematically the format of pointer bytes H1 and H2. The first six bits of byte H1 are typically empty. A pointer value identifying the location of byte J1 (FIG. 2) is represented by bits P9 through P0, where bits P9 and P0 are the most significant bit (MSB) and the least significant bit (LSB), respectively, of that value. The pointer value can range from 0 to 782 and pointer processing typically includes conversion of the pointer value into the row and column numbers corresponding to the location of byte J1 within the data frame.
One problem with conventional pointer processing is that conversion of a pointer value into the corresponding row and column numbers may include up to 18 comparison operations, which are onerous to implement, for example, in terms of the required logic circuitry. This problem is exacerbated at the upper levels of the STS hierarchy, where processing of multiple pointer values per data frame is performed.