Apparatus and method for SerDes rate matching using symbol interleaving
AssigneeCisco Technology, Inc.
InventorsYuval Bachar, Gopakumar Parameswaran
Life of this patent
Estimating the term…
Abstract
A system and method for interleaving symbols to facilitate compatibility between serializer/deserializer (SerDes) units operating at different data rates multiplexes duplicates of a parallel data stream into a fast data rate serial data stream to form a serial data steam at a psuedo-slow data rate which can be received by a SerDes unit operating at the slow data rate. The psuedo-slow data rate serial data stream can also be received by a SerDes operating at the fast data rate by sampling each bit multiple times and demultiplexing the samples into duplicates of the parallel data stream.
Claims17
A method for transferring data between first and second serial/deserializer (SerDes) units, coupled by a serial link and operating, respectively, at a fast and a slow data rate, with the fast data rate equal to the slow data rate multiplied by N, where N is an integer, with the first SerDes unit coupled to a first data source/sink by a parallel interface, operating at the slow data rate, and having N parallel channels, and with the second SerDes unit coupled to a second data/source sink by a parallel interface, operating at the slow data rate, and having at least one parallel channel said method comprising the acts of:
- at the first data source/sink, transmitting duplicates of a first data stream from the data source/sink to the first SerDes unit, on each of the N parallel channels, with the first data stream transmitted at the slow data rate;
- at the first SerDes unit, interleaving the duplicates of the first data stream received from the N channels into a first serial interleaved data stream transmitted at the fast data rate;
- at the first SerDes unit, transmitting the first serial interleaved data stream to the second SerDes unit over the serial link;
- at the second SerDes unit, sampling the first serial interleaved data stream as the slow data rate to recover duplicates of the first parallel data stream;
- and
- at the second data source sink, receiving the first data stream from the second SerDes.
A system for transferring data between serial/deserializer (SerDes) units operating at different data rates, said system comprising:
- a first ASIC, having N parallel Tx ports, N being a positive integer, operating at a slow data rate, with the first ASIC configured to output duplicates of a first data stream on each of the N Tx ports;
- a serial link,
- a first SerDes unit, having N parallel ports operating at the slow data rate coupled to the N Tx ports of the first ASIC, and a serial port, operating at a fast data rate equal to the slow data rate multiplied by N, coupled to the serial link, with the first SerDes unit multiplexing N data streams received at the parallel ports into a first serial data stream for transmission at the serial port, with the first serial data stream transmitted at the fast data rate to interleave the bits from the N parallel channels onto the serial data stream;
- a second SerDes unit, having a parallel port operating at the slow data rate and a serial port, operating at the slow data rate, with the second SerDes unit sampling the first serial data stream at the slow data rate to recover the first data stream and outputting the first data stream at the parallel port at the slow data rate;
- and
- a second ASIC, having a parallel Rx port coupled to the serial port of the second SerDes unit to receive the first data stream.
A system for transferring data between serial/deserializer (SerDes) units operating at different data rates, said system comprising:
- a first ASIC, having N parallel Rx ports and N, N being a positive integer, parallel Tx ports operating at a slow data rate, with the first ASIC configured so that a single Rx port is connected to all N Tx ports;
- a first SerDes unit, operating at a fast data rate equal to the slow data rate multiplied by N, and coupled to the N Tx ports of the first ASIC, with the first SerDes unit for multiplexing N duplicates of a first data stream onto a first serial data stream transmitted at the fast data rate to interleave the bits from the N parallel channels onto the serial data stream;
- a second SerDes unit, having a parallel port operating at the slow data rate and a serial port, operating at the slow data rate, with the second SerDes unit sampling the first serial data stream at the slow data rate to recover the first data stream and outputting the first data stream at the parallel port at the slow data rate;
- and
- a second ASIC, having a parallel Rx port, operating at the slow data rate, coupled to parallel port of the second ASIC to receive the first data stream.
A method for transferring data between first and second serial/deserializer (SerDes) units, coupled by a serial link and clocking serial data at, respectively, a fast and a slow data rate, with the fast data rate equal to the slow data rate multiplied by N, where N is an integer, method comprising the acts of:
- at the first SerDes unit, receiving N duplicates of a first data stream transmitted a the slow data rate and interleaving the N duplicates into a first serial interleaved data stream transmitted at the fast data rate;
- at the first SerDes unit, transmitting the first serial interleaved data stream to the second SerDes unit over the serial link;
- at the second SerDes unit, sampling the first serial interleaved data stream as the slow data rate to recover and output the first data stream.
A system for transferring data between serial/deserializer (SerDes) units operating at different data rates, said system comprising:
- a serial link,
- a first SerDes unit, having N parallel ports operating at the slow data rate, and a serial port, operating at a fast data rate equal to the slow data rate multiplied by N, coupled to the serial link, with the first SerDes unit multiplexing N duplicates of a first data stream received at the parallel ports into a first serial data stream for transmission at the serial port, with the first serial data stream transmitted at the fast data rate to interleave the bits from the N parallel channels onto the serial data stream;
- a second SerDes unit, having a parallel port operating at the slow data rate and a serial port, operating at the slow data rate, with the second SerDes unit sampling the first serial data stream at the slow data rate to recover the first data stream transmitted at the slow data rate and outputting the first data stream on the parallel port.
A system for transferring data between first and second serial/deserializer (SerDes) units, coupled by a serial link and clocking serial data at, respectively, a fast and a slow data rate, with the fast data rate equal to the slow data rate multiplied by N, where N is an integer, said system comprising:
- means, at the first SerDes unit, for receiving N duplicates of a first parallel data stream transmitted a the slow data rate and interleaving the N duplicates into a first serial interleaved data stream transmitted at the fast data rate;
- means, at the first SerDes unit, for transmitting the first serial interleaved data stream to the second SerDes unit over the serial link;
- means, at the second SerDes unit, for sampling the first serial interleaved data stream as the slow data rate to recover and output the first data stream.
Dependencies are inferred from the claim text.