US10484165B2 - Latency buffer circuit with adaptable time shift - Google Patents

Latency buffer circuit with adaptable time shift Download PDF

Info

Publication number
US10484165B2
US10484165B2 US15/846,560 US201715846560A US10484165B2 US 10484165 B2 US10484165 B2 US 10484165B2 US 201715846560 A US201715846560 A US 201715846560A US 10484165 B2 US10484165 B2 US 10484165B2
Authority
US
United States
Prior art keywords
values
master clock
data words
sequence
clock signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
US15/846,560
Other versions
US20190190688A1 (en
Inventor
Rupesh Singh
Ankur Bal
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
STMICROELECTRONICS INTERNATIONAL NV
STMicroelectronics International NV
Original Assignee
STMicroelectronics International NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by STMicroelectronics International NV filed Critical STMicroelectronics International NV
Priority to US15/846,560 priority Critical patent/US10484165B2/en
Assigned to STMICROELECTRONICS INTERNATIONAL N.V. reassignment STMICROELECTRONICS INTERNATIONAL N.V. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BAL, ANKUR, SINGH, RUPESH
Priority to CN201811475014.3A priority patent/CN110034768B/en
Priority to CN201822024699.1U priority patent/CN209313821U/en
Publication of US20190190688A1 publication Critical patent/US20190190688A1/en
Application granted granted Critical
Publication of US10484165B2 publication Critical patent/US10484165B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/005Correction by an elastic buffer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M9/00Parallel/series conversion or vice versa
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/04Distributors combined with modulators or demodulators
    • H04J3/047Distributors with transistors or integrated circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0685Clock or time synchronisation in a node; Intranode synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • H04L7/0012Synchronisation information channels, e.g. clock distribution lines by comparing receiver clock with transmitter clock

Definitions

  • the present invention relates to a serializer circuit configured to serialize a plurality of parallel data words into a serial stream of data words with an adaptable time shift operation to achieve temporal alignment.
  • FIG. 1A shows three communications channels 10 , 12 and 14 feeding three corresponding inputs of an application circuit 18 .
  • Each communications channel 10 , 12 and 14 may, for example, be a data bus that is n-bits wide.
  • the communications channels 10 , 12 and 14 carry blocks 20 , 22 and 24 , respectively, of serially transmitted n-bit data words in a stream. However, the blocks may not be temporally aligned.
  • the block 24 (with serially transmitted n-bit data words C 1 -CN) on communications channel 14 temporally leads the block 20 (with serially transmitted n-bit data words A 1 -AN) on communications channel 10
  • the block 20 on communications channel 10 temporally leads the block 22 (with serially transmitted n-bit data words B 1 -BN) on communications channel 12
  • the system clock (CLK) is shown in relation to the temporal offsets to illustrate that the extent of the offset to be addressed may be more than one cycle of the system clock (wherein one data word is transmitted over the channel for each cycle of the system clock).
  • This temporal offset of the blocks 20 , 22 and 24 can cause problems with the operation of the application circuit 18 . For example, if the application circuit 18 relates to a beam forming system, the temporal offset can cause a corresponding offset of the formed transmit beam. Other applications such as with parallel data processing may require temporal alignment of the multiple channels of input data words.
  • a transmitter TX is provided for each of the three communications channels 10 , 12 and 14 .
  • a control circuit 40 operates to detect 42 the existence of a temporal misalignment and respond thereto by generating control signals 44 applied to the transmitters TX to effectuate a temporal adjustment of the blocks 20 , 22 and 24 of serially transmitted n-bit data words X 1 -XN output from the transmitters TX.
  • the control signals 44 cause the block 22 to be shifted forward in time (reference 32 ) relative to block 22 by the transmitter TX for channel 12 and cause the block 24 to be shifted backward in time (reference 34 ) relative to block 22 by the transmitter TX for channel 14 .
  • transmitter TX solutions There are a number of transmitter TX solutions known to those skilled in the art which can respond to control signals 44 specifying a forward shift (FwS) and/or backward shift (BwS) in connection with the generation of a block of serially transmitted n-bit data words to achieve temporal alignment.
  • FwS forward shift
  • BwS backward shift
  • each of these known solutions utilizes a relatively large memory space and complicated control logic for accessing the memory space.
  • the large memory space is attributed to the need to store multiple data words from past inputs in order to be able to re-align the temporal output with respect to a transmitter TX having a maximal latency. This may be accomplished with a circuit of the type shown in FIG.
  • 1C which uses a very large parallel in/serial out first-in first-out (FIFO) circuit 70 designed to store and selectively address (using address control and pointer circuitry 72 ) the multiple data words from past inputs in response to forward shift (pp) and backward shift (mm) commands processed by a calibration logic circuit to generate an offset (off) signal generated by a counter circuit which controls the offsetting of the address pointer (RD_PTR) for reading from the circuit 70 as well as the operation for shifting the circuit 70 by N.
  • FIFO parallel in/serial out first-in first-out
  • a circuit comprises: a multiplexer having a plurality of inputs configured to receive data words in parallel and having an output configured to output selected ones of the received data words in series in response to a select signal; a first-in first-out (FIFO) circuit configured to supply the data words in parallel in response to an edge of a master clock signal; and a timing control circuit configured to generate the select signal and the master clock signal in response to a temporal shift signal and a system clock signal, wherein the timing control circuit responds to an assertion of the temporal shift signal by modifying a duty cycle of the master clock signal and controlling a sequence of values for the select signal.
  • FIFO first-in first-out
  • a circuit comprises: a multiplexer having a plurality of inputs configured to receive data words in parallel and having an output configured to output selected ones of the received data words in series in response to a select signal; a first-in first-out (FIFO) circuit configured to supply the data words in parallel in response to an edge of a master clock signal; and a timing control circuit configured to generate the select signal and the master clock signal in response to a temporal shift signal and a system clock signal, wherein the timing control circuit responds to an assertion of the temporal shift signal by shifting timing of said edge of the master clock signal and controlling a sequence of values for the select signal that are generated within one cycle of the master clock signal.
  • FIFO first-in first-out
  • a method comprises: providing a plurality of data words in parallel in response to an edge of a master clock signal; serially selecting ones of the received plurality of data words in response to a sequence of values of a select signal; outputting the serially selecting ones of the received plurality of data words in a serial stream of data words; detecting a temporal offset of said serial stream of data words; controlling the sequence of values for the select signal that are generated within one cycle of the master clock signal to: skip at least one count value in the sequence of values if the detected temporal offset is a backward temporal offset; and hold at least one count value in the sequence of values for a longer period of time if the detected temporal offset is a forward temporal offset; and shifting timing of the edge of the master clock signal to account for the controlled sequence of values for the select signal.
  • FIGS. 1A and 1B illustrate an operation for temporally aligning multiple serial streams of data words
  • FIG. 1C is a block diagram of a transmitter operating to serialize parallel received data words to generate a block of serial data words with temporal adjustment;
  • FIG. 2 is a block diagram of a transmitter operating to serialize parallel received data words to generate a block of serial data words with temporal adjustment
  • FIGS. 3A-3C are timing diagrams illustrating operation of the transmitter of FIG. 2 in different operational modes relating to providing temporal adjustment.
  • FIG. 2 showing a block diagram of a transmitter TX 100 .
  • the transmitter TX 100 may be utilized, for example, for each of the transmitters TX shown in FIG. 1A and is responsive to the control signals 44 generated by the control circuit 40 for the purpose of effectuating forward/backward shifts in time with respect to the generation of the serialized data word output.
  • the transmitter TX 100 includes a plurality of data word lanes 104 ( 1 )- 104 (N) that are coupled to outputs of a synchronizing multi-lane first-in first-out (FIFO) circuit of a digital circuit 106 .
  • Each data word lane 104 may, for example, carry an n-bit data word X, and the FIFO is accordingly an N lane, with n-bits per lane, FIFO circuit.
  • the FIFO of the digital circuit 106 receives n-bit data words X 1 -XN in parallel and operates to store and then output those n-bit data words X 1 -XN in parallel.
  • the digital circuit 106 may comprise a digital signal processing (DSP) circuit that operates as a slave device with the transmitter TX 100 functioning as a master device.
  • the transmitter TX 100 generates a master clock signal MST_CLK that is applied to the digital circuit 106 .
  • the slave response of the digital circuit 106 to a particular edge of the master clock signal MST_CLK, for example, the leading edge, is to cause the FIFO to output a plurality of n-bit data words X 1 -XN in parallel on the data word lanes 104 ( 1 )- 104 (N) at a first frequency related to the frequency of the master clock signal MST_CLK.
  • the transmitter TX 100 further includes an N ⁇ 1 multiplexer circuit (MUX) 110 having N n-bit inputs coupled to the data word lanes 104 ( 1 )- 104 (N) and one n-bit output coupled to a communications channel 116 (corresponding to a channel 10 , 12 or 14 of FIG. 1A ). Operation of the MUX 110 is controlled by a selection signal SEL. The data value of the selection signal SEL chooses a particular one of the N n-bit inputs of the MUX 110 to be connected to the one n-bit output of the MUX 110 .
  • MUX N ⁇ 1 multiplexer circuit
  • the master clock signal MST_CLK and selection signal SEL are generated by a timing control circuit 150 in response to a system clock CLK and two shift control signals (forward shift FwS and backward shift BwS) generated by the control circuit 40 in response to detection of the existence of a temporal misalignment (see, FIG. 1A ).
  • the system clock CLK operates at a second frequency (wherein the second frequency may be N times the first frequency).
  • Operation of the transmitter TX 100 in a normal mode of operation, where neither the forward shift FwS control signal nor the backward shift BwS control signal are asserted (reference 210 ), may be better understood with reference to the timing diagram of FIG. 3A .
  • N 10 and thus there are ten cycles of the system clock CLK for each single cycle of the master clock signal MST_CLK.
  • the duty cycle of the master clock signal MST_CLK is nominally 50%, so there are five cycles of the system clock CLK in the positive phase of the master clock signal MST_CLK and five cycles of the system clock CLK in the negative phase of the master clock signal MST_CLK.
  • the timing control circuit 150 includes a circuit, such as multi-bit ring counter circuit, that receives the system clock CLK and generates the master clock signal MST_CLK in phase and with the appropriate fractional frequency relationship of 1/N and duty cycle.
  • the slave response of the FIFO within the DSP is to present, in parallel, ten n-bit data words X 1 -X 10 on the corresponding data word lanes 104 ( 1 )- 104 ( 10 ).
  • the timing control circuit 150 increments (reference 202 ) the selection signal SEL so that the selection signal SEL counts from 1 to 10.
  • the MUX 110 selects (reference 204 ) the corresponding data word lane 104 ( 1 )- 104 ( 10 ) for connection to the one n-bit output and passes the n-bit data word on the selected data word lane for output on the communications channel 116 .
  • the result of this operation is the serialization of the ten parallel n-bit data words X 1 -X 10 presented by the FIFO to produce a block (reference 206 ) of ten serial n-bit data words X 1 -X 10 .
  • the FIFO presents, in parallel, the next ten n-bit data words X 1 next-X 10 next on the corresponding data word lanes 104 ( 1 )- 104 ( 10 ) and the process repeats.
  • Operation of the transmitter TX 100 in a forward shift mode of operation, where the forward shift FwS control signal is asserted (reference 310 ), may be better understood with reference to the timing diagram of FIG. 3B .
  • N 10
  • there will be one less cycle of the system clock CLK for a current single cycle of the master clock signal MST_CLK i.e., there will only be nine cycles of the system clock CLK).
  • the master clock signal MST_CLK has a duty cycle that is different from 50%, and in this example is less than 50%.
  • the dotted lines show the master clock signal MST_CLK for the FIG. 3A operational mode.
  • the timing control circuit 150 receives the system clock CLK and generates the master clock signal MST_CLK in phase and with the appropriate duty cycle.
  • the slave response of the FIFO within the DSP is to present, in parallel, ten n-bit data words X 1 -X 10 on the corresponding data word lanes 104 ( 1 )- 104 ( 10 ).
  • the timing control circuit 150 increments (reference 302 ) the selection signal SEL. Rather than have the selection signal SEL count from 1 to 10, however, the assertion 310 of the forward shift FwS control signal, along with the reduced duty cycle of the master clock signal MST_CLK, causes the timing control circuit 150 to skip one of the count increments. In this example, count 1 is skipped; although it will be understood that any selected one of the counts from 1 to 10 could be selected to be skipped.
  • the selection signal SEL counts from 2 to 10 (with four cycles of the system clock CLK in the positive phase of the master clock signal MST_CLK and five cycles of the system clock CLK in the negative phase of the master clock signal MST_CLK). With each count of the selection signal SEL, the MUX 110 selects (reference 304 ) the corresponding data word lane 104 ( 2 )- 104 ( 10 ) for connection to the one n-bit output and passes the n-bit data word on the selected data word lane for output on the communications channel 116 .
  • the result of this operation is the serialization of the nine selected parallel n-bit data words X 2 -X 10 presented by the FIFO to produce a block (reference 306 ) of nine serial n-bit data words X 2 -X 10 .
  • the effective result of the forward shift mode of operation shown in FIG. 3B is to advance the serialization of the ten parallel n-bit data words X 1 -X 10 by one cycle of the system clock CLK (reference 32 , FIG. 1A ) at the expense of losing one of the n-bit data words (in this example n-bit data word X 1 ). It is not anticipated that loss of one n-bit data word will have any adverse effect of application circuit (reference 18 , FIG.
  • Reference 312 shows that the effect of this operation on the master clock signal MST_CLK is to cause the next subsequent leading edge to occur earlier in time than with respect to the normal mode of FIG. 3A ; thus, the next FIFO presentation, in parallel, of the next ten n-bit data words X 1 -X 10 will occur sooner in time.
  • the FIFO presents, in parallel, the next ten n-bit data words X 1 next-X 10 next on the corresponding data word lanes 104 ( 1 )- 104 ( 10 ) and the process of FIG. 3A is performed (or if the forward shift FwS control signal is asserted again then the process of FIG. 3B repeats).
  • block 20 (with serially transmitted n-bit data words A 1 -AN) on communications channel 10 temporally leads the block 22 (with serially transmitted n-bit data words B 1 -BN) on communications channel 12 .
  • the transmitter TX for channel 10 sets the desired temporal alignment (reference 28 , FIG. 1B )
  • the transmitter TX 100 for channel 12 is transmitting with a backward offset of four cycles of the system clock CLK. This backward offset is detected by the control circuit 40 , and the control circuit 40 will assert the forward shift FwS control signal (reference 310 , FIG. 3B ) four times in connection with four performances of the operation shown in FIG. 3B to shift the n-bit data words B 1 -BN forwards (reference 32 ) by four cycles of the system clock CLK. This achieves the temporal alignment shown in FIG. 1B .
  • the master clock signal MST_CLK has a duty cycle that is different from 50%, and in this example is greater than 50%.
  • the dotted lines show the master clock signal MST_CLK for the FIG. 3A operational mode.
  • the timing control circuit 150 receives the system clock CLK and generates the master clock signal MST_CLK in phase and with the appropriate duty cycle.
  • the slave response of the FIFO within the DSP is to present, in parallel, ten n-bit data words X 1 -X 10 on the corresponding data word lanes 104 ( 1 )- 104 ( 10 ).
  • the timing control circuit 150 increments (reference 402 ) the selection signal SEL.
  • the selection signal SEL still counts from 1 to 10
  • the assertion 410 of the backward shift BwS control signal along with the increased duty cycle of the master clock signal MST_CLK, causes the timing control circuit 150 to hold one of the count increments for two complete cycles of the system clock CLK.
  • count 1 is held for two cycles of the system clock CLK; although it will be understood that any selected one of the counts from 1 to 10 could be selected to be held.
  • the selection signal SEL counts from 1 to 10 (with six cycles of the system clock CLK in the positive phase of the master clock signal MST_CLK and five cycles of the system clock CLK in the negative phase of the master clock signal MST_CLK). With each count of the selection signal SEL, the MUX 110 selects (reference 404 ) the corresponding data word lane 104 ( 2 )- 104 ( 10 ) for connection to the one n-bit output and passes the n-bit data word on the selected data word lane for output on the communications channel 116 .
  • the result of this operation is the serialization of the ten selected parallel n-bit data words X 1 -X 10 presented by the FIFO to produce a block (reference 406 ) of ten serial n-bit data words X 1 -X 10 .
  • the effective result of the backward shift mode of operation shown in FIG. 3C is to delay the serialization of the ten parallel n-bit data words X 1 -X 10 by one cycle of the system clock CLK (reference 34 , FIG. 1A ) at the expense of presenting one of the n-bit data words (in this example n-bit data word X 1 ) for an extended period of time.
  • the FIFO presents, in parallel, the next ten n-bit data words X 1 next-X 10 next on the corresponding data word lanes 104 ( 1 )- 104 ( 10 ) and the process of FIG. 3A is performed (or if the backward shift BwS control signal is asserted again then the process of FIG. 3C repeats).
  • block 24 (with serially transmitted n-bit data words C 1 -CN) on communications channel 14 temporally leads the block 20 (with serially transmitted n-bit data words A 1 -AN) on communications channel 10 .
  • the transmitter TX for channel 10 sets the desired temporal alignment (reference 28 , FIG. 1B )
  • the transmitter TX 100 for channel 14 is transmitting with a forward offset of three cycles of the system clock CLK.
  • This forward offset is detected by the control circuit 40 , and the control circuit 40 will assert the backward shift BwS control signal (reference 410 , FIG. 3C ) three times in connection with three performances of the operation shown in FIG. 3C to shift the n-bit data words C 1 -CN backwards (reference 34 ) by three cycles of the system clock CLK.

Abstract

Data words are received in parallel in response to an edge of a master clock signal and selected for serial output in response to a select signal. For a detected temporal offset of the serially output data words, the generation of the select signal and the master clock signal are controlled to correct for the temporal offset by shifting timing of the edge of the master clock signal and adjusting a sequence of values for the select signal that are generated within one cycle of the master clock signal. For a backward temporal offset, at least one count value in the sequence of values is skipped and the edge of the master clock signal occurs earlier in time. For a forward temporal offset, at least one count value in the sequence of values is held and the edge of the master clock signal occurs later in time.

Description

TECHNICAL FIELD
The present invention relates to a serializer circuit configured to serialize a plurality of parallel data words into a serial stream of data words with an adaptable time shift operation to achieve temporal alignment.
BACKGROUND
There are many applications where it is critical to temporally align multiple serial streams of data words. FIG. 1A shows three communications channels 10, 12 and 14 feeding three corresponding inputs of an application circuit 18. Each communications channel 10, 12 and 14 may, for example, be a data bus that is n-bits wide. The communications channels 10, 12 and 14 carry blocks 20, 22 and 24, respectively, of serially transmitted n-bit data words in a stream. However, the blocks may not be temporally aligned. As illustrated, the block 24 (with serially transmitted n-bit data words C1-CN) on communications channel 14 temporally leads the block 20 (with serially transmitted n-bit data words A1-AN) on communications channel 10, and the block 20 on communications channel 10 temporally leads the block 22 (with serially transmitted n-bit data words B1-BN) on communications channel 12. The system clock (CLK) is shown in relation to the temporal offsets to illustrate that the extent of the offset to be addressed may be more than one cycle of the system clock (wherein one data word is transmitted over the channel for each cycle of the system clock). This temporal offset of the blocks 20, 22 and 24 can cause problems with the operation of the application circuit 18. For example, if the application circuit 18 relates to a beam forming system, the temporal offset can cause a corresponding offset of the formed transmit beam. Other applications such as with parallel data processing may require temporal alignment of the multiple channels of input data words.
A transmitter TX is provided for each of the three communications channels 10, 12 and 14. Each transmitter TX operates as a serializer circuit that receives the n-bit data words X1-XN (where X=A, B or C) in parallel at a first frequency related to clock MST_CLK and generates the block 20, 22 or 24 of serially transmitted n-bit data words X1-XN for transmission over the corresponding communications channel 10, 12 or 14 at a second frequency (wherein the second frequency may be N times the first frequency) associated with the system clock CLK.
A control circuit 40 operates to detect 42 the existence of a temporal misalignment and respond thereto by generating control signals 44 applied to the transmitters TX to effectuate a temporal adjustment of the blocks 20, 22 and 24 of serially transmitted n-bit data words X1-XN output from the transmitters TX. To achieve a desired temporal alignment 28 as shown in FIG. 1B, the control signals 44 cause the block 22 to be shifted forward in time (reference 32) relative to block 22 by the transmitter TX for channel 12 and cause the block 24 to be shifted backward in time (reference 34) relative to block 22 by the transmitter TX for channel 14.
There are a number of transmitter TX solutions known to those skilled in the art which can respond to control signals 44 specifying a forward shift (FwS) and/or backward shift (BwS) in connection with the generation of a block of serially transmitted n-bit data words to achieve temporal alignment. However, each of these known solutions utilizes a relatively large memory space and complicated control logic for accessing the memory space. The large memory space is attributed to the need to store multiple data words from past inputs in order to be able to re-align the temporal output with respect to a transmitter TX having a maximal latency. This may be accomplished with a circuit of the type shown in FIG. 1C which uses a very large parallel in/serial out first-in first-out (FIFO) circuit 70 designed to store and selectively address (using address control and pointer circuitry 72) the multiple data words from past inputs in response to forward shift (pp) and backward shift (mm) commands processed by a calibration logic circuit to generate an offset (off) signal generated by a counter circuit which controls the offsetting of the address pointer (RD_PTR) for reading from the circuit 70 as well as the operation for shifting the circuit 70 by N. For example, a latency of 20 words (plus/minus 10 temporal shifts possible) for an N=10 parallel lane communications channel 74 would mandate a storage minimum (N+2*Cmax+2) of 30 words for the circuit 70 and 30:1 multiplexers with related control logic. The implemented integrated circuit for such a prior art transmitter as shown in FIG. 1C occupies a large amount of circuit area and consumes a large amount of power. There is a need in the art for a transmitter that addresses the foregoing and other problems.
SUMMARY
In an embodiment, a circuit comprises: a multiplexer having a plurality of inputs configured to receive data words in parallel and having an output configured to output selected ones of the received data words in series in response to a select signal; a first-in first-out (FIFO) circuit configured to supply the data words in parallel in response to an edge of a master clock signal; and a timing control circuit configured to generate the select signal and the master clock signal in response to a temporal shift signal and a system clock signal, wherein the timing control circuit responds to an assertion of the temporal shift signal by modifying a duty cycle of the master clock signal and controlling a sequence of values for the select signal.
In an embodiment, a circuit comprises: a multiplexer having a plurality of inputs configured to receive data words in parallel and having an output configured to output selected ones of the received data words in series in response to a select signal; a first-in first-out (FIFO) circuit configured to supply the data words in parallel in response to an edge of a master clock signal; and a timing control circuit configured to generate the select signal and the master clock signal in response to a temporal shift signal and a system clock signal, wherein the timing control circuit responds to an assertion of the temporal shift signal by shifting timing of said edge of the master clock signal and controlling a sequence of values for the select signal that are generated within one cycle of the master clock signal.
In an embodiment, a method comprises: providing a plurality of data words in parallel in response to an edge of a master clock signal; serially selecting ones of the received plurality of data words in response to a sequence of values of a select signal; outputting the serially selecting ones of the received plurality of data words in a serial stream of data words; detecting a temporal offset of said serial stream of data words; controlling the sequence of values for the select signal that are generated within one cycle of the master clock signal to: skip at least one count value in the sequence of values if the detected temporal offset is a backward temporal offset; and hold at least one count value in the sequence of values for a longer period of time if the detected temporal offset is a forward temporal offset; and shifting timing of the edge of the master clock signal to account for the controlled sequence of values for the select signal.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the principles of the invention.
In the drawings:
FIGS. 1A and 1B illustrate an operation for temporally aligning multiple serial streams of data words;
FIG. 1C is a block diagram of a transmitter operating to serialize parallel received data words to generate a block of serial data words with temporal adjustment;
FIG. 2 is a block diagram of a transmitter operating to serialize parallel received data words to generate a block of serial data words with temporal adjustment; and
FIGS. 3A-3C are timing diagrams illustrating operation of the transmitter of FIG. 2 in different operational modes relating to providing temporal adjustment.
DETAILED DESCRIPTION
Reference is now made to FIG. 2 showing a block diagram of a transmitter TX 100. The transmitter TX 100 may be utilized, for example, for each of the transmitters TX shown in FIG. 1A and is responsive to the control signals 44 generated by the control circuit 40 for the purpose of effectuating forward/backward shifts in time with respect to the generation of the serialized data word output.
The transmitter TX 100 includes a plurality of data word lanes 104(1)-104(N) that are coupled to outputs of a synchronizing multi-lane first-in first-out (FIFO) circuit of a digital circuit 106. Each data word lane 104 may, for example, carry an n-bit data word X, and the FIFO is accordingly an N lane, with n-bits per lane, FIFO circuit. The FIFO of the digital circuit 106 receives n-bit data words X1-XN in parallel and operates to store and then output those n-bit data words X1-XN in parallel.
The digital circuit 106 may comprise a digital signal processing (DSP) circuit that operates as a slave device with the transmitter TX 100 functioning as a master device. The transmitter TX 100 generates a master clock signal MST_CLK that is applied to the digital circuit 106. The slave response of the digital circuit 106 to a particular edge of the master clock signal MST_CLK, for example, the leading edge, is to cause the FIFO to output a plurality of n-bit data words X1-XN in parallel on the data word lanes 104(1)-104(N) at a first frequency related to the frequency of the master clock signal MST_CLK.
The transmitter TX 100 further includes an N×1 multiplexer circuit (MUX) 110 having N n-bit inputs coupled to the data word lanes 104(1)-104(N) and one n-bit output coupled to a communications channel 116 (corresponding to a channel 10, 12 or 14 of FIG. 1A). Operation of the MUX 110 is controlled by a selection signal SEL. The data value of the selection signal SEL chooses a particular one of the N n-bit inputs of the MUX 110 to be connected to the one n-bit output of the MUX 110.
The master clock signal MST_CLK and selection signal SEL are generated by a timing control circuit 150 in response to a system clock CLK and two shift control signals (forward shift FwS and backward shift BwS) generated by the control circuit 40 in response to detection of the existence of a temporal misalignment (see, FIG. 1A). The system clock CLK operates at a second frequency (wherein the second frequency may be N times the first frequency).
Operation of the transmitter TX 100 in a normal mode of operation, where neither the forward shift FwS control signal nor the backward shift BwS control signal are asserted (reference 210), may be better understood with reference to the timing diagram of FIG. 3A. For purposes of this illustration, by example only, N=10 and thus there are ten cycles of the system clock CLK for each single cycle of the master clock signal MST_CLK. The duty cycle of the master clock signal MST_CLK is nominally 50%, so there are five cycles of the system clock CLK in the positive phase of the master clock signal MST_CLK and five cycles of the system clock CLK in the negative phase of the master clock signal MST_CLK. The timing control circuit 150 includes a circuit, such as multi-bit ring counter circuit, that receives the system clock CLK and generates the master clock signal MST_CLK in phase and with the appropriate fractional frequency relationship of 1/N and duty cycle. At the leading edge 200 of the master clock signal MST_CLK, the slave response of the FIFO within the DSP is to present, in parallel, ten n-bit data words X1-X10 on the corresponding data word lanes 104(1)-104(10). Responsive to each cycle of the system clock CLK within one cycle of the master clock signal MST_CLK, the timing control circuit 150 increments (reference 202) the selection signal SEL so that the selection signal SEL counts from 1 to 10. With each count of the selection signal SEL, the MUX 110 selects (reference 204) the corresponding data word lane 104(1)-104(10) for connection to the one n-bit output and passes the n-bit data word on the selected data word lane for output on the communications channel 116. The result of this operation is the serialization of the ten parallel n-bit data words X1-X10 presented by the FIFO to produce a block (reference 206) of ten serial n-bit data words X1-X10. At the next subsequent leading edge 200′ of the master clock signal MST_CLK, the FIFO presents, in parallel, the next ten n-bit data words X1next-X10next on the corresponding data word lanes 104(1)-104(10) and the process repeats.
Operation of the transmitter TX 100 in a forward shift mode of operation, where the forward shift FwS control signal is asserted (reference 310), may be better understood with reference to the timing diagram of FIG. 3B. Again, for purposes of this illustration, by example only, N=10. As noted above with respect to FIG. 3A, there are normally ten cycles of the system clock CLK for each single cycle of the master clock signal MST_CLK. However, in the context of a forward shift as indicated by assertion of the forward shift FwS control signal, there will be one less cycle of the system clock CLK for a current single cycle of the master clock signal MST_CLK (i.e., there will only be nine cycles of the system clock CLK). So, in the forward shift mode of operation, the master clock signal MST_CLK has a duty cycle that is different from 50%, and in this example is less than 50%. For context, the dotted lines show the master clock signal MST_CLK for the FIG. 3A operational mode. The timing control circuit 150 receives the system clock CLK and generates the master clock signal MST_CLK in phase and with the appropriate duty cycle. At the leading edge 300 of the master clock signal MST_CLK, the slave response of the FIFO within the DSP is to present, in parallel, ten n-bit data words X1-X10 on the corresponding data word lanes 104(1)-104(10). Responsive to each cycle of the system clock CLK within the current one cycle of the master clock signal MST_CLK, the timing control circuit 150 increments (reference 302) the selection signal SEL. Rather than have the selection signal SEL count from 1 to 10, however, the assertion 310 of the forward shift FwS control signal, along with the reduced duty cycle of the master clock signal MST_CLK, causes the timing control circuit 150 to skip one of the count increments. In this example, count 1 is skipped; although it will be understood that any selected one of the counts from 1 to 10 could be selected to be skipped. As a result, the selection signal SEL counts from 2 to 10 (with four cycles of the system clock CLK in the positive phase of the master clock signal MST_CLK and five cycles of the system clock CLK in the negative phase of the master clock signal MST_CLK). With each count of the selection signal SEL, the MUX 110 selects (reference 304) the corresponding data word lane 104(2)-104(10) for connection to the one n-bit output and passes the n-bit data word on the selected data word lane for output on the communications channel 116. The result of this operation is the serialization of the nine selected parallel n-bit data words X2-X10 presented by the FIFO to produce a block (reference 306) of nine serial n-bit data words X2-X10. The effective result of the forward shift mode of operation shown in FIG. 3B is to advance the serialization of the ten parallel n-bit data words X1-X10 by one cycle of the system clock CLK (reference 32, FIG. 1A) at the expense of losing one of the n-bit data words (in this example n-bit data word X1). It is not anticipated that loss of one n-bit data word will have any adverse effect of application circuit (reference 18, FIG. 1A) operation, and any adverse effect is outweighed by the advantage of moving the serialization of the n-bit data words closer to temporal alignment (reference 28, FIG. 1B). Reference 312 shows that the effect of this operation on the master clock signal MST_CLK is to cause the next subsequent leading edge to occur earlier in time than with respect to the normal mode of FIG. 3A; thus, the next FIFO presentation, in parallel, of the next ten n-bit data words X1-X10 will occur sooner in time. At the next leading edge 300′ of the master clock signal MST_CLK, the FIFO presents, in parallel, the next ten n-bit data words X1next-X10next on the corresponding data word lanes 104(1)-104(10) and the process of FIG. 3A is performed (or if the forward shift FwS control signal is asserted again then the process of FIG. 3B repeats).
With reference once again to the scenario depicted in FIG. 1A, it is noted that block 20 (with serially transmitted n-bit data words A1-AN) on communications channel 10 temporally leads the block 22 (with serially transmitted n-bit data words B1-BN) on communications channel 12. If we assume that the transmitter TX for channel 10 sets the desired temporal alignment (reference 28, FIG. 1B), then the transmitter TX 100 for channel 12 is transmitting with a backward offset of four cycles of the system clock CLK. This backward offset is detected by the control circuit 40, and the control circuit 40 will assert the forward shift FwS control signal (reference 310, FIG. 3B) four times in connection with four performances of the operation shown in FIG. 3B to shift the n-bit data words B1-BN forwards (reference 32) by four cycles of the system clock CLK. This achieves the temporal alignment shown in FIG. 1B.
Operation of the transmitter TX 100 in a backward shift mode of operation, where the backward shift BwS control signal is asserted (reference 410), may be better understood with reference to the timing diagram of FIG. 3C. Again, for purposes of this illustration, by example only, N=10. As noted above with respect to FIG. 3A, there are normally ten cycles of the system clock CLK for each single cycle of the master clock signal MST_CLK. However, in the context of a backward shift as indicated by assertion of the backward shift BwS control signal, there will be one more cycle of the system clock CLK for a current single cycle of the master clock signal MST_CLK (i.e., there will be eleven cycles of the system clock CLK). So, in the backward shift mode of operation, the master clock signal MST_CLK has a duty cycle that is different from 50%, and in this example is greater than 50%. For context, the dotted lines show the master clock signal MST_CLK for the FIG. 3A operational mode. The timing control circuit 150 receives the system clock CLK and generates the master clock signal MST_CLK in phase and with the appropriate duty cycle. At the leading edge 400 of the master clock signal MST_CLK, the slave response of the FIFO within the DSP is to present, in parallel, ten n-bit data words X1-X10 on the corresponding data word lanes 104(1)-104(10). Responsive to each cycle of the system clock CLK within the current one cycle of the master clock signal MST_CLK, the timing control circuit 150 increments (reference 402) the selection signal SEL. In this scenario, the selection signal SEL still counts from 1 to 10, however, the assertion 410 of the backward shift BwS control signal, along with the increased duty cycle of the master clock signal MST_CLK, causes the timing control circuit 150 to hold one of the count increments for two complete cycles of the system clock CLK. In this example, count 1 is held for two cycles of the system clock CLK; although it will be understood that any selected one of the counts from 1 to 10 could be selected to be held. As a result, the selection signal SEL counts from 1 to 10 (with six cycles of the system clock CLK in the positive phase of the master clock signal MST_CLK and five cycles of the system clock CLK in the negative phase of the master clock signal MST_CLK). With each count of the selection signal SEL, the MUX 110 selects (reference 404) the corresponding data word lane 104(2)-104(10) for connection to the one n-bit output and passes the n-bit data word on the selected data word lane for output on the communications channel 116. The result of this operation is the serialization of the ten selected parallel n-bit data words X1-X10 presented by the FIFO to produce a block (reference 406) of ten serial n-bit data words X1-X10. The effective result of the backward shift mode of operation shown in FIG. 3C is to delay the serialization of the ten parallel n-bit data words X1-X10 by one cycle of the system clock CLK (reference 34, FIG. 1A) at the expense of presenting one of the n-bit data words (in this example n-bit data word X1) for an extended period of time. It is not anticipated that extended presentation of one n-bit data word will have any adverse effect of application circuit (reference 18, FIG. 1A) operation, and any adverse effect is outweighed by the advantage of moving the serialization of the n-bit data words closer to temporal alignment (reference 28, FIG. 1B). Reference 412 shows that the effect of this operation on the master clock signal MST_CLK is to cause the next leading edge to occur later in time than with respect to the normal mode of FIG. 3A; thus, the next FIFO presentation, in parallel, of the next ten n-bit data words X1-X10 will occur later in time. At the next leading edge 400′ of the master clock signal MST_CLK, the FIFO presents, in parallel, the next ten n-bit data words X1next-X10next on the corresponding data word lanes 104(1)-104(10) and the process of FIG. 3A is performed (or if the backward shift BwS control signal is asserted again then the process of FIG. 3C repeats).
With reference once again to the scenario depicted in FIG. 1A, it is noted that block 24 (with serially transmitted n-bit data words C1-CN) on communications channel 14 temporally leads the block 20 (with serially transmitted n-bit data words A1-AN) on communications channel 10. If we assume that the transmitter TX for channel 10 sets the desired temporal alignment (reference 28, FIG. 1B), then the transmitter TX 100 for channel 14 is transmitting with a forward offset of three cycles of the system clock CLK. This forward offset is detected by the control circuit 40, and the control circuit 40 will assert the backward shift BwS control signal (reference 410, FIG. 3C) three times in connection with three performances of the operation shown in FIG. 3C to shift the n-bit data words C1-CN backwards (reference 34) by three cycles of the system clock CLK. This achieves the temporal alignment shown in FIG. 1B.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention. Thus, it is intended that the present invention cover the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents.

Claims (25)

The invention claimed is:
1. A circuit, comprising:
a multiplexer having a plurality of inputs configured to receive data words in parallel and having an output configured to output selected ones of the received data words in series in response to a select signal;
a first-in first-out (FIFO) circuit configured to supply the data words in parallel in response to an edge of a master clock signal; and
a timing control circuit configured to generate the select signal and the master clock signal in response to a temporal shift signal and a system clock signal, wherein the timing control circuit responds to an assertion of the temporal shift signal by modifying a duty cycle of the master clock signal and controlling a sequence of values for the select signal.
2. The circuit of claim 1, wherein the temporal shift signal is a forward shift signal and wherein the sequence of values for the select signal is controlled by the timing control circuit to skip at least one count value in the sequence of values for the select signal.
3. The circuit of claim 2, wherein the timing control circuit reduces the duty cycle of the master clock signal to account for the skipping of said at least one count value in the sequence of values for the select signal.
4. The circuit of claim 2, wherein modification of the duty cycle of the master clock signal comprises a reduction of a length of phase of the master clock signal to account for the skipping of said at least one count value in the sequence of values for the select signal.
5. The circuit of claim 2, wherein modification of the duty cycle of the master clock signal causes a next edge of the master clock signal causing the FIFO circuit to supply the data words in parallel to occur earlier in time so as to advance multiplexer output of the selected ones of the received data words in series.
6. The circuit of claim 2, further comprising a control circuit configured to detect a backward temporal offset of a series of data words output from the multiplexer and assert the forward shift signal.
7. The circuit of claim 1, wherein the temporal shift signal is a backward shift signal and wherein the sequence of values for the select signal is controlled by the timing control circuit to hold at least one count value in the sequence of values for the select signal for a longer time than other count values in the sequence of values for the select signal.
8. The circuit of claim 7, wherein the timing control circuit increases the duty cycle of the master clock signal to account for the holding of said at least one count value in the sequence of values for the select signal.
9. The circuit of claim 7, wherein modification of the duty cycle of the master clock signal comprises an increase of a length of phase of the master clock signal to account for the holding of said at least one count value in the sequence of values for the select signal.
10. The circuit of claim 7, wherein modification of the duty cycle of the master clock signal causes a next edge of the master clock signal causing the FIFO circuit to supply the data words in parallel to occur later in time so as to delay multiplexer output of the selected ones of the received data words in series.
11. The circuit of claim 7, further comprising a control circuit configured to detect a forward temporal offset of a series of data words output from the multiplexer and assert the temporal shift signal.
12. A circuit, comprising:
a multiplexer having a plurality of inputs configured to receive data words in parallel and having an output configured to output selected ones of the received data words in series in response to a select signal;
a first-in first-out (FIFO) circuit configured to supply the data words in parallel in response to an edge of a master clock signal; and
a timing control circuit configured to generate the select signal and the master clock signal in response to a temporal shift signal and a system clock signal, wherein the timing control circuit responds to an assertion of the temporal shift signal by shifting timing of said edge of the master clock signal and controlling a sequence of values for the select signal that are generated within one cycle of the master clock signal.
13. The circuit of claim 12, wherein the temporal shift signal is a forward shift signal and wherein the sequence of values for the select signal is controlled by the timing control circuit to skip at least one count value in the sequence of values for the select signal that are generated within one cycle of the master clock signal.
14. The circuit of claim 13, wherein the timing control circuit causes the edge of the master clock signal causing the FIFO circuit to supply the data words in parallel to occur earlier in time due to the skipping of said at least one count value in the sequence of values for the select signal.
15. The circuit of claim 13, further comprising a control circuit configured to detect a backward temporal offset of a series of data words output from the multiplexer and assert the forward shift signal.
16. The circuit of claim 12, wherein the temporal shift signal is a backward shift signal and wherein the sequence of values for the select signal is controlled by the timing control circuit to hold at least one count value in the sequence of values for the select signal for a longer time than other count values in the sequence of values for the select signal.
17. The circuit of claim 16, wherein the timing control circuit causes the edge of the master clock signal causing the FIFO circuit to supply the data words in parallel to occur later in time due to the holding of said at least one count value in the sequence of values for the select signal.
18. The circuit of claim 16, further comprising a control circuit configured to detect a forward temporal offset of a series of data words output from the multiplexer and assert the backward shift signal.
19. A method, comprising:
providing a plurality of data words in parallel in response to an edge of a master clock signal;
serially selecting ones of the received plurality of data words in response to a sequence of values of a select signal;
outputting the serially selecting ones of the received plurality of data words in a serial stream of data words;
detecting a temporal offset of said serial stream of data words;
controlling the sequence of values for the select signal that are generated within one cycle of the master clock signal to:
skip at least one count value in the sequence of values if the detected temporal offset is a backward temporal offset; and
hold at least one count value in the sequence of values for a longer period of time if the detected temporal offset is a forward temporal offset; and
shifting timing of the edge of the master clock signal to account for the controlled sequence of values for the select signal.
20. The method of claim 19, wherein shifting timing causes the edge of the master clock signal causing the plurality of data words to be provided in parallel to occur earlier in time due to the skipping of said at least one count value in the sequence of values for the select signal.
21. The method of claim 19, wherein shifting timing causes the edge of the master clock signal causing the plurality of data words to be provided in parallel to occur later in time due to the holding of said at least one count value in the sequence of values for the select signal.
22. A method, comprising:
providing a plurality of data words in parallel in response to an edge of a master clock signal;
serially selecting ones of the received plurality of data words in response to a sequence of values of a select signal;
outputting the serially selecting ones of the received plurality of data words in a serial stream of data words;
detecting a temporal offset of said serial stream of data words;
controlling the sequence of values for the select signal that are generated within one cycle of the master clock signal to skip at least one count value in the sequence of values if the detected temporal offset is a backward temporal offset; and
shifting timing of the edge of the master clock signal to account for the controlled sequence of values for the select signal.
23. The method of claim 22, wherein shifting timing comprises skipping of said at least one count value in the sequence of values for the select signal in order to cause the edge of the master clock signal to occur earlier in time.
24. A method, comprising:
providing a plurality of data words in parallel in response to an edge of a master clock signal;
serially selecting ones of the received plurality of data words in response to a sequence of values of a select signal;
outputting the serially selecting ones of the received plurality of data words in a serial stream of data words;
detecting a temporal offset of said serial stream of data words;
controlling the sequence of values for the select signal that are generated within one cycle of the master clock signal to hold at least one count value in the sequence of values for a longer period of time if the detected temporal offset is a forward temporal offset; and
shifting timing of the edge of the master clock signal to account for the controlled sequence of values for the select signal.
25. The method of claim 24, wherein shifting timing comprises holding of said at least one count value in the sequence of values for the select signal in order to cause the edge of the master clock signal to occur later in time.
US15/846,560 2017-12-19 2017-12-19 Latency buffer circuit with adaptable time shift Active US10484165B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US15/846,560 US10484165B2 (en) 2017-12-19 2017-12-19 Latency buffer circuit with adaptable time shift
CN201811475014.3A CN110034768B (en) 2017-12-19 2018-12-04 Delay buffer circuit with adaptive time shift
CN201822024699.1U CN209313821U (en) 2017-12-19 2018-12-04 Serializer circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US15/846,560 US10484165B2 (en) 2017-12-19 2017-12-19 Latency buffer circuit with adaptable time shift

Publications (2)

Publication Number Publication Date
US20190190688A1 US20190190688A1 (en) 2019-06-20
US10484165B2 true US10484165B2 (en) 2019-11-19

Family

ID=66816498

Family Applications (1)

Application Number Title Priority Date Filing Date
US15/846,560 Active US10484165B2 (en) 2017-12-19 2017-12-19 Latency buffer circuit with adaptable time shift

Country Status (2)

Country Link
US (1) US10484165B2 (en)
CN (2) CN110034768B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10484165B2 (en) * 2017-12-19 2019-11-19 Stmicroelectronics International N.V. Latency buffer circuit with adaptable time shift
CN113204504B (en) * 2020-01-31 2024-03-12 瑞昱半导体股份有限公司 Serial data processing apparatus and data offset correction method

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6748039B1 (en) * 2000-08-11 2004-06-08 Advanced Micro Devices, Inc. System and method for synchronizing a skip pattern and initializing a clock forwarding interface in a multiple-clock system
US6917662B2 (en) * 2003-09-11 2005-07-12 International Business Machines Corporation Programmable low-power high-frequency divider
US6924684B1 (en) * 2003-07-11 2005-08-02 Xilinx, Inc. Counter-based phase shifter circuits and methods with optional duty cycle correction
US7287105B1 (en) * 2005-01-12 2007-10-23 Advanced Micro Devices, Inc. Asynchronous-mode sync FIFO having automatic lookahead and deterministic tester operation
US7519747B1 (en) * 2003-09-11 2009-04-14 Xilinx, Inc. Variable latency buffer and method of operation
US7573932B2 (en) * 2003-09-08 2009-08-11 Samsung Electronics Co., Ltd. Spread spectrum clock generator
US8873606B2 (en) * 2012-11-07 2014-10-28 Broadcom Corporation Transceiver including a high latency communication channel and a low latency communication channel
US8958517B2 (en) * 2011-12-30 2015-02-17 Oracle International Corporation Clock phase adjustment for a low-latency FIFO
US9509640B2 (en) * 2014-12-05 2016-11-29 Xilinx, Inc. Latency control in a transmitter/receiver buffer
US10063365B1 (en) * 2017-03-10 2018-08-28 Keyssa Systems, Inc. Re-timer network insertion
US10110334B2 (en) * 2016-04-25 2018-10-23 Macom Connectivity Solutions, Llc High speed serializer using quadrature clocks

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BRPI0511783A (en) * 2004-06-04 2008-01-15 Qualcomm Inc High data speed interface method and equipment
JP5038449B2 (en) * 2010-03-09 2012-10-03 キヤノン株式会社 Image forming apparatus
US10484165B2 (en) * 2017-12-19 2019-11-19 Stmicroelectronics International N.V. Latency buffer circuit with adaptable time shift

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6748039B1 (en) * 2000-08-11 2004-06-08 Advanced Micro Devices, Inc. System and method for synchronizing a skip pattern and initializing a clock forwarding interface in a multiple-clock system
US6924684B1 (en) * 2003-07-11 2005-08-02 Xilinx, Inc. Counter-based phase shifter circuits and methods with optional duty cycle correction
US7573932B2 (en) * 2003-09-08 2009-08-11 Samsung Electronics Co., Ltd. Spread spectrum clock generator
US6917662B2 (en) * 2003-09-11 2005-07-12 International Business Machines Corporation Programmable low-power high-frequency divider
US7519747B1 (en) * 2003-09-11 2009-04-14 Xilinx, Inc. Variable latency buffer and method of operation
US7287105B1 (en) * 2005-01-12 2007-10-23 Advanced Micro Devices, Inc. Asynchronous-mode sync FIFO having automatic lookahead and deterministic tester operation
US8958517B2 (en) * 2011-12-30 2015-02-17 Oracle International Corporation Clock phase adjustment for a low-latency FIFO
US8873606B2 (en) * 2012-11-07 2014-10-28 Broadcom Corporation Transceiver including a high latency communication channel and a low latency communication channel
US9509640B2 (en) * 2014-12-05 2016-11-29 Xilinx, Inc. Latency control in a transmitter/receiver buffer
US10110334B2 (en) * 2016-04-25 2018-10-23 Macom Connectivity Solutions, Llc High speed serializer using quadrature clocks
US10063365B1 (en) * 2017-03-10 2018-08-28 Keyssa Systems, Inc. Re-timer network insertion

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Zabolotny, Wojciech M.: "Automatic Latency Balancing in VHDL-Implemented Complex Pipelined Systems," Journal of Systems Architecture, Nov. 24, 2015 (16 pages).

Also Published As

Publication number Publication date
CN209313821U (en) 2019-08-27
US20190190688A1 (en) 2019-06-20
CN110034768B (en) 2023-09-08
CN110034768A (en) 2019-07-19

Similar Documents

Publication Publication Date Title
US6279073B1 (en) Configurable synchronizer for double data rate synchronous dynamic random access memory
US10025345B2 (en) System on chip and integrated circuit for performing skew calibration using dual edge and mobile device including the same
US7710799B2 (en) Circuit for generating data strobe in DDR memory device, and method therefor
US7394722B2 (en) Method for controlling data output timing of memory device and device therefor
US20150364176A1 (en) Electronic system generating multi-phase clocks and training method thereof
US8392744B2 (en) Clock distribution apparatus, systems, and methods
US20100310029A1 (en) Semiconductor memory apparatus and method for operating the same
US8305838B2 (en) Semiconductor memory device for guaranteeing reliability of data transmission and semiconductor system including the same
KR102305470B1 (en) Image signal processing device performing image signal processing in parallel through plurality of image processing channels
JPH11316706A (en) Data fast transfer synchronous system and data fast transfer synchronizing method
US20050001655A1 (en) Phase correction circuit
US10484165B2 (en) Latency buffer circuit with adaptable time shift
US9030907B2 (en) Semiconductor device and semiconductor system with the same
US8504865B2 (en) Dynamic phase alignment
CN110246529B (en) Delay circuit
US20060227029A1 (en) Analog-to-digital interfacing device and method of analog-to-digital interfacing
US8581654B2 (en) Method of compensating clock skew, clock skew compensating circuit for realizing the method, and input/output system including the clock skew compensating circuit
US7245239B2 (en) Synchronous parallel/serial converter
US10027316B2 (en) Low power clock buffer circuit for integrated circuit with multi-voltage design
US9654114B2 (en) Transmission circuit, integrated circuit, and parallel-to-serial conversion method
US20230205257A1 (en) Asynchronous asic
US9374096B2 (en) Semiconductor apparatus and semiconductor system including the same, and method of operating the same
US10057524B2 (en) Image capturing apparatus
CN106847319B (en) FPGA circuit and window signal adjusting method
US20180166112A1 (en) Semiconductor device

Legal Events

Date Code Title Description
AS Assignment

Owner name: STMICROELECTRONICS INTERNATIONAL N.V., NETHERLANDS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SINGH, RUPESH;BAL, ANKUR;REEL/FRAME:044432/0273

Effective date: 20171219

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4