IP Library Granted Patent US 12,615,049
Granted Patent B2
US 12,615,049 · App. 18/635,489 · Granted Apr 28, 2026

Field Programmable Gate Array system

Inventors: Kyeongryeol Bong (Seongnam-si, KR); Juyeong Yoon (Seongnam-si, KR)
Assignee: REBELLIONS INC.
H03K19/1774
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,615,049
App. No.
18/635,489
Granted
Apr 28, 2026
Kind
B2
Abstract

A Field Programmable Gate Array (FPGA) system includes a main FPGA and one or more sub-FPGAs connected to the main FPGA. The main FPGA is configured to detect a positive edge of a pulse included in a user clock using a sampling clock of the main FPGA, generate a flag using the detected positive edge, generate a clock packet indicating the generated flag, and provide the generated clock packet to any one of the one or more sub-FPGAs.

Claims (55)

1 . A Field Programmable Gate Array (FPGA) configured to:

detect a positive edge of a pulse included in a user clock using a sampling clock of the FPGA;

generate a flag using the detected positive edge;

generate a clock packet indicating the generated flag; and

provide the generated clock packet to any one of one or more sub-FPGAs connected to the FPGA.

2 . The FPGA according to claim 1 , wherein the FPGA includes a communication unit including a transmitter and a receiver, and

the FPGA is further configured to transmit the generated clock packet through the transmitter of the communication unit and receive the generated clock packet through the receiver of the communication unit.

3 . The FPGA according to claim 2 , wherein the FPGA is further configured to:

generate a gated user clock for the FPGA based on the received clock packet;

generate a plurality of data items using the gated user clock; and

generate a data packet including the generated plurality of data items.

4 . The FPGA according to claim 3 , wherein the FPGA further includes a user design logic and a packetization unit,

the generating the plurality of data items using the gated user clock includes:

receiving, by the user design logic, the gated user clock; and

generating, by the user design logic, the plurality of data items using the gated user clock, and

the generating the data packet including the plurality of data items includes:

receiving, by the packetization unit, the generated plurality of data items; and

generating, by the packetization unit, one or more data packets including the plurality of data items.

5 . The FPGA according to claim 4 , wherein the communication unit is configured to operate according to a serial communication protocol,

the FPGA is further configured to provide the generated one or more data packets to any one of the one or more sub-FPGAs through the transmitter of the communication unit, and

a number of the one or more data packets is determined based on a size of the plurality of data items and a size of data included in one data packet.

6 . The FPGA according to claim 5 , wherein a frequency of the user clock is predetermined based on a frequency of the sampling clock of the FPGA, the number of the one or more data packets, and a data transfer time between any two FPGAs of the FPGA and the one or more sub-FPGAs.

7 . The FPGA according to claim 5 , wherein a cycle of the user clock is equal to or greater than a resultant number obtained by adding a product of multiplying a cycle of the sampling clock of the FPGA by a number obtained by adding a number of clock packets to the number of the one or more data packets, and data transmission and reception time between any two FPGAs of the FPGA and the one or more sub-FPGAs.

8 . The FPGA according to claim 3 , wherein each of the clock packet and the data packet is formed in a format that includes a bit representing an operation mode, a set of bits representing a packet number, and a set of bits representing at least some of a plurality of data items.

9 . The FPGA according to claim 8 , wherein the clock packet has the set of bits representing the packet number and the set of bits representing at least some of the plurality of data items, which are empty or set to 0.

10 . The FPGA according to claim 8 , wherein the clock packet is a packet that includes, as a bit representing the operation mode, a bit representing the generated flag, and

if the clock packet is provided to any one of the one or more sub-FPGAs, a gated user clock is generated for any one of the one or more sub-FPGAs provided with the clock packet, using a sampling clock of any one of the one or more sub-FPGAs provided with the clock packet.

11 . A Field Programmable Gate Array (FPGA) configured to:

receive, from a main-FPGA connected to the FPGA, a clock packet indicating a flag,

wherein the flag is generated, using a positive edge of a pulse included in a user clock, and

the positive edge is detected, using a sampling clock of the main-FPGA.

12 . The FPGA according to claim 11 , wherein the main-FPGA includes a communication unit including a transmitter and a receiver, and

the main-FPGA is configured to transmit the clock packet through the transmitter of the communication unit and receive the clock packet through the receiver of the communication unit.

13 . The FPGA according to claim 12 , wherein the main-FPGA is further configured to:

generate a gated user clock for the main-FPGA based on the clock packet received through the receiver;

generate a plurality of data items using the gated user clock; and

generate a data packet including the generated plurality of data items.

14 . The FPGA according to claim 13 , wherein the main-FPGA further includes a user design logic and a packetization unit,

the generating the plurality of data items using the gated user clock includes:

receiving, by the user design logic, the gated user clock; and

generating, by the user design logic, the plurality of data items using the gated user clock, and

the generating the data packet including the plurality of data items includes:

receiving, by the packetization unit, the generated plurality of data items; and

generating, by the packetization unit, one or more data packets including the plurality of data items.

15 . The FPGA according to claim 14 , wherein the communication unit is configured to operate according to a serial communication protocol,

the main-FPGA is further configured to provide the generated one or more data packets to the FPGA through the transmitter of the communication unit, and

a number of the one or more data packets is determined based on a size of the plurality of data items and a size of data included in one data packet.

16 . The FPGA according to claim 15 , wherein a frequency of the user clock is predetermined based on a frequency of the sampling clock of the main-FPGA, the number of the one or more data packets, and a data transfer time between any two FPGAs of the main-FPGA and one or more sub-FPGAs connected to the main-FPGA, and

the FPGA is one of the one or more sub-FPGAs.

17 . The FPGA according to claim 15 , wherein a cycle of the user clock is equal to or greater than a resultant number obtained by adding a product of multiplying a cycle of the sampling clock of the main-FPGA by a number obtained by adding a number of clock packets to the number of the one or more data packets, and data transmission and reception time between any two FPGAs of the main-FPGA and one or more sub-FPGAs connected to the main-FPGA, and

the FPGA is one of the one or more sub-FPGAs.

18 . The FPGA according to claim 13 , wherein each of the clock packet and the data packet is formed in a format that includes a bit representing an operation mode, a set of bits representing a packet number, and a set of bits representing at least some of a plurality of data items.

19 . The FPGA according to claim 18 , wherein the clock packet has the set of bits representing the packet number and the set of bits representing at least some of the plurality of data items, which are empty or set to 0.

20 . The FPGA according to claim 18 , wherein the clock packet is a packet that includes, as a bit representing the operation mode, a bit representing the generated flag, and

a gated user clock is generated for the FPGA, using a sampling clock of the FPGA.

Assignments (1)
MERGER AND CHANGE OF NAME Recorded May 22, 2025
From: REBELLIONS INC.; SAPEON KOREA INC.
To: REBELLIONS INC.
Reel/Frame 071355/0107 →
Priority Claims (1)
KR 10-2023-0145104 · Oct 26, 2023 · national
Continuity (2)
Continuation 18391407 · Dec 20, 2023
Related Publication 20250141453A1 · May 1, 2025
References Cited (5)
US 8595683B1 · de Buren · 2013 [cited by examiner]
US 9148152B1 · Joung · 2015 [cited by examiner]
US 9959375B2 · Larzul · 2018 [cited by examiner]
US 10763865B1 · Badizadegan · 2020 [cited by examiner]
US 20220382944A1 · Yin · 2022 [cited by examiner]