Patent ID: 8184760
Filing Date: 2012-05-22
Classification: H04J

Abstract:
1. A method for performing an elastic buffer of virtual depth M, wherein M is a positive integer, comprising: providing a data buffer of a physical depth not more than half of depth M; providing a recovery clock pointer indicating an available data buffer location to be stuffed with a received data word; providing a system clock pointer indicating a data buffer location having a data word to be fetched by a receiver; providing a clock and data recovery circuit for receiving data and clock signals transmitted over a communications channel; stuffing received data in the location in the data buffer indicated by the recovery clock pointer; increasing the recovery clock pointer to point to another available data buffer location; continuing storing received data in the data buffer at the location indicated by the recovery clock pointer and increasing the recovery clock pointer as data signals are received; detecting when a predetermined condition occurs and enabling a data fetch operation; responsive to the enabling, fetching stored received data from a buffer location indicated by the system clock pointer; and increasing the system clock pointer to indicate another data buffer location containing data to be fetched.