# US 7,613,125 B2 · Method and apparatus for temporal alignment of multiple parallel data streams

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,613,125 B2
- Document ID: US7613125B2
- Status: Granted
- Kind: B2
- Application number: 11/306,425
- Filed: 2005-12-28
- Published: 2007-12-20
- Granted: 2009-11-03
- Earliest claimed: 2005-12-28
- Assignees: Alcatel-Lucent USA Inc.
- Inventors: Franz Fidler; Praveen Kasireddy; Peter J. Winzer
- Web page: https://patentgrep.com/patent/US7613125B2

## CPC

- H04L 25/14: Channel dividing arrangements {, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver}
- H04L 43/50: Testing arrangements
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Methods and apparatus for aligning the transmitters of two or more bidirectional ports of an integrated circuit (IC), particularly an application-specific IC (ASIC) or field-programmable gate array (FPGA). Misalignment of two or more transmitters is determined by the IC itself without the use of external test equipment. Receivers of the bidirectional ports whose transmitters are to be aligned are used by the IC to detect misalignment. Any misalignment of the receivers is also determined and either eliminated or taken into account when aligning the associated transmitters. Variants for ICs with and without internal loop-back capability and for ICs with and without differential outputs are described.

## Claims

### Claim 1

A method of aligning data streams output by two or more bidirectional ports of a circuit, comprising:
determining a receive path misalignment between a first receiver associated with a first transmitter and a second receiver associated with a second transmitter;
aligning the first and second receivers by shifting at least one of the first and second receivers in accordance with the receive path misalignment so as to offset the receive path misalignment;
determining a transmit path misalignment between the first transmitter and the second transmitter by:
looping-back a test pattern via the first transmitter and the first receiver to a first receive buffer,
looping-back the test pattern via the second transmitter and the second receiver to a second receive buffer, and
comparing the contents of the first and second receive buffers; and
shifting a data stream output by at least one of the first and second transmitters in accordance with the transmit path misalignment so as to offset the transmit path misalignment.

### Claim 2 (depends on 1)

The method of claim 1, wherein the step of determining the receive path misalignment includes:
looping-back a test pattern via the first transmitter and the first receiver to a first receive buffer,
looping-back the test pattern via the first transmitter and the second receiver to a second receive buffer, and
comparing the contents of the first and second receive buffers so that if the contents are the same, a determination is made that the first and second receivers are in alignment, and if the contents are not the same, determining the receive path misalignment.

### Claim 3 (depends on 2)

The method of claim 2, wherein determining the receive path misalignment includes:
rotating at least one of the contents of the first and second receive buffers,
comparing the contents of the first and second receive buffers,
repeating the rotating and comparing steps until the contents of the first and second receive buffers are the same, and
determining the receive path misalignment based on the amount that the contents of the first and second receive buffers have been rotated relative to each other.

### Claim 4 (depends on 2)

The method of claim 2, wherein determining the receive path misalignment includes:
rotating the test pattern,
looping-back the rotated test pattern via the first transmitter and the second receiver to the second receive buffer,
comparing the contents of the first and second receive buffers,
repeating the rotating, looping-back and comparing steps until the contents of the first and second receive buffers are the same, and
determining the receive path misalignment based on the amount that the test pattern has been rotated.

### Claim 5 (depends on 1)

The method of claim 1, wherein at least one of looping-back a test pattern via the first transmitter and the first receiver to a first receive buffer, and looping-back the test pattern via the second transmitter and the second receiver to a second receive buffer, is performed external to the circuit.

### Claim 6 (depends on 1)

The method of claim 1, wherein the first transmitter and the first receiver are each part of a first bidirectional port of the circuit and wherein the second transmitter and the second receiver are each part of a second bidirectional port of the circuit.

### Claim 7 (depends on 2)

The method of claim 2, wherein determining the transmit path misalignment includes:
rotating at least one of the contents of the first and second receive buffers,
comparing the contents of the first and second receive buffers,
repeating the rotating and comparing steps until the contents of the first and second receive buffers are the same, and
determining the transmit path misalignment based on the amount that the contents of the first and second receive buffers have been rotated relative to each other.

### Claim 8 (depends on 2)

The method of claim 2, wherein determining the transmit path misalignment includes:
rotating the test pattern,
looping-back the rotated test pattern via the second transmitter and the second receiver to the second receive buffer,
comparing the contents of the first and second receive buffers,
repeating the rotating, looping-back and comparing steps until the contents of the first and second receive buffers are the same, and
determining the transmit path misalignment based on the amount that the test pattern has been rotated.

### Claim 9

A method of aligning data streams output by two or more bidirectional ports of a circuit, comprising:
looping-back a test pattern via a first transmitter and a receiver associated with a second transmitter to a receive buffer;
storing the contents of the receive buffer;
looping-back the test pattern via the second transmitter and the receiver to the receive buffer;
comparing the contents of the receive buffer with the stored previous contents of the receive buffer so that if the contents are the same, a determination is made that the first and second transmitters are in alignment, and if the contents are not the same, determining a misalignment between the first and second transmitters and shifting a data stream output by at least one of the first and second transmitters in accordance with the misalignment so as to offset the misalignment.

### Claim 10 (depends on 9)

The method of claim 9, wherein determining the misalignment between the first and second transmitters includes:
rotating the test pattern,
looping-back the rotated test pattern via the second transmitter and the receiver,
comparing the contents of the receive buffer with the stored previous contents of the receive buffer,
repeating the rotating, looping-back and comparing steps until the contents of the receive buffer are the same as the stored previous contents of the receive buffer, and
determining the misalignment between the first and second transmitters based on the amount that the test pattern has been rotated.

### Claim 11 (depends on 9)

The method of claim 9, wherein determining the misalignment between the first and second transmitters includes:
rotating at least one of the contents of the receive buffer and the stored previous contents of the receive buffer,
comparing the contents of the receive buffer with the stored previous contents of the receive buffer,
repeating the rotating and comparing steps until the contents of the receive buffer are the same as the stored previous contents of the receive buffer, and
determining the misalignment between the first and second transmitters based on the amount that the contents of the receive buffer and the stored previous contents of the receive buffer have been rotated relative to each other.

### Claim 12 (depends on 9)

The method of claim 9, wherein looping-back the test pattern via the second transmitter and the receiver to the receive buffer is performed external to the circuit.

### Claim 13 (depends on 9)

The method of claim 9, wherein the second transmitter and the receiver are each part of a bidirectional port of the circuit.

### Claim 14

A method of aligning data streams output by two or more bidirectional ports of a circuit, comprising:
determining a receive path misalignment between a first receiver associated with a first transmitter of a first port and a second receiver associated with a second transmitter of a second port;
determining a combined path misalignment between the first port and the second port by:
looping-back a test pattern via the first transmitter and the first receiver to a first receive buffer,
looping-back the test pattern via the second transmitter and the second receiver to a second receive buffer, and
comparing the contents of the first and second receive buffers;
determining a transmit path misalignment between the first transmitter and the second transmitter as a function of the combined path misalignment and the receive path misalignment; and
shifting a data stream output by at least one of the first and second transmitters in accordance with the transmit path misalignment so as to offset the transmit path misalignment.

### Claim 15 (depends on 14)

The method of claim 14, wherein the step of determining the receive path misalignment includes:
looping-back a test pattern via the first transmitter and the first receiver to a first receive buffer,
looping-back the test pattern via the first transmitter and the second receiver to a second receive buffer, and
comparing the contents of the first and second receive buffers so that if the contents are the same, a determination is made that the first and second receivers are in alignment, and if the contents are not the same, determining the receive path misalignment.

### Claim 16 (depends on 14)

The method of claim 14, wherein determining the receive path misalignment includes:
rotating at least one of the contents of the first and second receive buffers,
comparing the contents of the first and second receive buffers,
repeating the rotating and comparing steps until the contents of the first and second receive buffers are the same, and
determining the receive path misalignment based on the amount that the contents of the first and second receive buffers have been rotated relative to each other.

### Claim 17 (depends on 15)

The method of claim 15, wherein determining the receive path misalignment includes:
rotating the test pattern,
looping-back the rotated test pattern via the first transmitter and the second receiver to the second receive buffer,
comparing the contents of the first and second receive buffers,
repeating the rotating, looping-back and comparing steps until the contents of the first and second receive buffers are the same, and
determining the receive path misalignment based on the amount that the test pattern has been rotated.

### Claim 18 (depends on 14)

The method of claim 14, wherein at least one of looping-back a test pattern via the first transmitter and the first receiver to a first receive buffer, and looping-back the test pattern via the second transmitter and the second receiver to a second receive buffer, is performed external to the circuit.

### Claim 19 (depends on 14)

The method of claim 14, wherein the first transmitter and the first receiver are each part of a first bidirectional port of the circuit and wherein the second transmitter and the second receiver are each part of a second bidirectional port of the circuit.

### Claim 20 (depends on 15)

The method of claim 15, wherein determining the combined path misalignment includes:
rotating at least one of the contents of the first and second receive buffers,
comparing the contents of the first and second receive buffers,
repeating the rotating and comparing steps until the contents of the first and second receive buffers are the same, and
determining the combined path misalignment based on the amount that the contents of the first and second receive buffers have been rotated relative to each other.

### Claim 21 (depends on 15)

The method of claim 15, wherein determining the combined path misalignment includes:
rotating the test pattern,
looping-back the rotated test pattern via the second transmitter and the second receiver to the second receive buffer,
comparing the contents of the first and second receive buffers,
repeating the rotating, looping-back and comparing steps until the contents of the first and second receive buffers are the same, and
determining the combined path misalignment based on the amount that the test pattern has been rotated.
