Field Programmable Gate Array With External Phase-Locked Loop

Patent No. US11575381 (titled "Field Programmable Gate Array With External Phase-Locked Loop") was filed by Hft Solutions Llc on Apr 18, 2022.

What is this patent about?

’381 is related to the field of field-programmable gate arrays (FPGAs) , specifically addressing the challenge of synchronizing receiver and transmitter clock signals within the FPGA to minimize latency. Traditional FPGAs often employ clock domain crossing (CDC) circuits to achieve this synchronization, but these circuits introduce undesirable delays, particularly problematic in high-frequency trading applications where microsecond-level accuracy is crucial.

The underlying idea behind ’381 is to eliminate the need for a clock domain crossing circuit by actively phase-aligning the receiver and transmitter clock signals. This is achieved by using an external phase control circuit that monitors the phase difference between the receiver and transmitter clocks and adjusts the transmitter clock's phase to match the receiver clock's phase. This adjustment is performed outside the FPGA, minimizing latency within the FPGA's processing path.

The claims of ’381 focus on a method for processing a serial data stream using an FPGA system to generate a second serial data stream, comprising the steps of receiving a clock signal and the first serial data stream by a deserializer, generating a receiver side clock signal, converting the first serial data stream into parallel data streams, transmitting the parallel data streams to computational circuitry, transmitting the receiver side clock signal to an external phase-locked loop, generating a second clock signal using the phase-locked loop, generating a transmitter side clock signal derived from the second clock signal, performing operations on the parallel data streams to generate a second set of parallel data streams, and transmitting the second serial data stream derived from the second set of parallel data streams, without using clock domain crossing operations .

In practice, the invention involves feeding a reference clock signal into the FPGA, where a deserializer converts incoming serial data into parallel streams and generates a receiver-side clock. Simultaneously, an external phase control circuit, including a phase detector and adjustable oscillator, monitors and adjusts the transmitter-side clock. The phase detector compares the receiver and transmitter clock phases, and the phase controller uses this information to adjust the adjustable oscillator, which in turn influences the transmitter clock signal. This feedback loop ensures that the transmitter and receiver clocks are phase-aligned, enabling direct data transfer between clock domains without the latency penalty of a CDC circuit.

This approach differs significantly from prior solutions that rely on internal clock domain crossing circuits within the FPGA. By moving the phase alignment mechanism outside the FPGA and employing a feedback loop to actively synchronize the clocks, ’381 achieves a significant reduction in latency . This is particularly beneficial in applications like high-frequency trading, where even small delays can have a substantial impact on performance. The external phase control allows for fine-grained adjustment of the transmitter clock, ensuring optimal synchronization and minimizing the need for complex and time-consuming clock domain crossing procedures.

How does this patent fit in bigger picture?

Technical landscape at the time

In the late 2010s when ’381 was filed, FPGAs were increasingly used in high-speed data processing applications, at a time when clock synchronization between receiver and transmitter sides was typically implemented using clock domain crossing circuits. However, these circuits introduced undesirable latency, and when hardware or software constraints made sub-microsecond processing with high throughput non-trivial, alternative synchronization methods were needed.

Novelty and Inventive Step

The examiner approved the patent because the prior art did not teach or suggest a method for processing a serial data stream using an FPGA system that includes transmitting a receiver-side clock signal from a deserializer to a phase-lock loop external to the FPGA. The examiner also noted that the prior art does not teach generating a transmitter-side clock signal within the FPGA derived from a second clock signal, performing operations on parallel data streams, and transmitting a second serial data stream derived from the parallel data streams, without using clock domain crossing operations that delay processing.

Claims

The patent includes 12 claims, with claim 1 being the only independent claim. Independent claim 1 is directed to a method for processing a first serial data stream to generate a second serial data stream using a field programmable gate array system. The dependent claims elaborate on the specifics of the data streams, operations performed, and clock signal generation within the method.

Key Claim Terms New

Definitions of key terms used in the patent claims.

Term (Source)Support for SpecificationInterpretation
Clock domain crossing operations
(Claim 1)
“In embodiments, the first set of operations does not include clock domain crossing operations that delays processing of the first set of parallel data streams.”Operations that are avoided in the method to prevent delays in processing the first set of parallel data streams.
Computational circuitry
(Claim 1)
“In embodiments, a field programmable gate array system includes (a) a field programmable gate array comprising (3) computational circuitry operationally connected to the deserializer to receive the first plurality of parallel data streams and the first receiver side clock signal, wherein the computational circuitry is configured to perform a first set of operations on the first plurality of parallel data streams to generate a second plurality of parallel processed data streams having a second amount of data streams;”Circuitry within the FPGA that performs operations on the first plurality of parallel data streams to generate a second plurality of parallel data streams.
First plurality of parallel data streams
(Claim 1)
“In embodiments, a field programmable gate array system includes (a) a field programmable gate array comprising (2) a deserializer operationally connected to: (x) the first reference clock pin to receive as a first input the first clock signal and (y) the first plurality of data pins to receive as a second input the first serial data stream, and wherein the deserializer is configured to: (A) convert the first serial data stream into a first plurality of parallel data streams having a first amount of data streams, and (B) generate a first receiver side clock signal based on the first clock signal, wherein the first receiver side clock signal has a third frequency and a third phase; and (C) transmit the first plurality of parallel data streams and the first receiver side clock signal within the field programmable gate array;”A set of parallel data streams resulting from the deserialization of the first serial data stream. These streams are transmitted to computational circuitry within the FPGA.
Receiver side clock signal
(Claim 1)
“In embodiments, a field programmable gate array system includes (a) a field programmable gate array comprising (2) a deserializer operationally connected to: (x) the first reference clock pin to receive as a first input the first clock signal and (y) the first plurality of data pins to receive as a second input the first serial data stream, and wherein the deserializer is configured to: (B) generate a first receiver side clock signal based on the first clock signal, wherein the first receiver side clock signal has a third frequency and a third phase; and (C) transmit the first plurality of parallel data streams and the first receiver side clock signal within the field programmable gate array; (5) a second interface including: (A) a first clock output pin configured to transmit the first receiver side clock signal, wherein the first clock output pin is operationally connected to the deserializer”A clock signal generated by the deserializer based on an input clock signal. This signal is transmitted to computational circuitry within the FPGA and to a phase lock loop outside the FPGA.
Transmitter side clock signal
(Claim 1)
“In embodiments, a field programmable gate array system includes (a) a field programmable gate array comprising (4) a serializer operationally connected to: (z) the computational circuitry, wherein the serializer receives the second plurality of parallel processed data streams from the computational circuitry and the serializer transmits to the computational circuitry a first transmitter side clock signal including a fifth frequency and a fifth phase; and wherein the serializer is configured to: (B) generate the first transmitter side clock signal based on the first wire rate signal, wherein the first transmitter side clock signal has the fifth frequency and the fifth phase, wherein the fifth frequency is different than and less than the fourth frequency;”A clock signal generated within the FPGA, derived from a second clock signal generated by a phase lock loop outside of the FPGA.

Patent Family

Patent Family

File Wrapper

The dossier documents provide a comprehensive record of the patent's prosecution history - including filings, correspondence, and decisions made by patent offices - and are crucial for understanding the patent's legal journey and any challenges it may have faced during examination.

  • Date

    Description

  • Get instant alerts for new documents

US11575381

HFT SOLUTIONS LLC
Application Number
US17723145
Filing Date
Apr 18, 2022
Status
Granted
Expiry Date
Nov 1, 2039
External Links
Slate, USPTO, Google Patents