Elastic buffers
AssigneeNXP USA, Inc.
InventorsArindam Dasgupta, Ranjan Kumar Sahoo, Anand Shirwal
Life of this patent
Estimating the term…
Abstract
An elastic buffer module includes: a memory unit configured as an array of memory elements; a write index control module that specifies a range of the memory elements into which a write word from a sequence of input words within input data is to be written into the memory unit; and a read index control module that specifies a range of the memory elements from which a read word is to be read from the memory unit and output as part of a sequence of read words in output data. The input words have a first bit width, the read words have a second bit width, the second bit width is a non-integer multiple of the first bit width, and the first bit width is a non-integer multiple of the second bit width.
Claims18
An elastic buffer module, comprising:
- a memory unit configured as an array of memory elements;
- a write index control module that specifies a range of the memory elements into which a write word from a sequence of input words within input data is to be written into the memory unit;
- and
- a read index control module that specifies a range of the memory elements from which a read word is to be read from the memory unit and output as part of a sequence of read words in output data,
- wherein the input words have a first bit width, the read words have a second bit width, the second bit width is a non-integer multiple of the first bit width, and the first bit width is a non-integer multiple of the second bit width;
- wherein the input words are sequentially written into the memory unit at a first clock rate,
- the read words are sequentially read from the memory unit at a second clock rate,
- the second clock rate is a non-integer multiple of the first clock rate, and
- the first clock rate is a non-integer multiple of the second clock rate.
An elastic buffer module, comprising:
- a memory unit configured as an array of separately addressable single-bit memory elements;
- a write index control module that specifies a range of the single-bit memory elements into which a write word from a sequence of input words within input data is to be written into the memory unit;
- a read index control module that specifies a range of the single-bit memory elements from which a read word is to be read from the memory unit and output as part of a sequence of read words in output data;
- and
- a central control unit that detects low-buffer-fill and high-buffer-fill conditions and, in response, causes clock-skew-correction symbols to be inserted or deleted, in order to maintain a desired buffer-fill-level range.
An elastic buffer module, comprising:
- a memory unit configured as an array of memory elements;
- a write index control module that specifies a write range of the memory elements into which a write word from a sequence of input words within input data is to be written into the memory unit;
- a first read index control module that specifies a first range of the memory elements from which a first read word is to be read from the memory unit and output as part of a first sequence of read words in output data;
- and
- a second read index control module that specifies a second range of the memory elements from which a second read word is to be read from the memory unit as part of a second sequence of read words,
- wherein the write word has a write bit width, the first read word has a first read bit width, and the second read word has a second read bit width, and
- wherein at least one of the first and second read bit widths is a non-integer multiple of the write bit width, and
- the write bit width is a non-integer multiple said at least one of the first and second read bit widths.
Dependencies are inferred from the claim text.