IP Library › Granted Patent US 12,634,119
Granted Patent B2
US 12,634,119 · App. 18/496,278 · Granted May 19, 2026

Bitstream initialization for reconfigurable hardware

Inventors: Swarup Bhunia (Gainesville, FL); Pravin Dasharth Gaikwad (Gainesville, FL)
Assignee: University of Florida Research Foundation, Incorporated
H04L9/065G06F11/1004G06F21/602G06N3/08
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,634,119
App. No.
18/496,278
Granted
May 19, 2026
Kind
B2
Abstract

A method and system are directed to generating on-chip bitstreams on reconfigurable hardware. The system comprises a built-in bitstream initialization (BIBI) module configured to generate one or more bitstreams on a semiconductor device. The BIBI module comprising a sequence generator configured to generate a sequence of values for each of the one or more bitstreams, a masking module configured to convert the sequence of values to a given precision of bits, an encryption module configured to apply an encryption scheme to the sequence of values, and an error correction module configured to apply error correction on the sequence of values, wherein the one or more bitstreams are transmitted to a routing network configured to map the one or more bitstreams to input positions of one or more compute blocks.

Claims (45)

1 . A semiconductor device comprising:

a compute block; and

a built-in bitstream initialization (BIBI) module that is coupled to the compute block via a routing network, wherein:

(i) the BIBI module comprises:

a sequence generator configured to generate a sequence of values by performing an operation on a set of one or more seed configuration bits in accordance with a set of one or more sequence generator configuration bits,

a masking module configured to convert the sequence of values to a masked sequence of values by applying a mask corresponding to a given precision of bits to the sequence of values,

an encryption module configured to generate an encrypted masked sequence of values by applying an encryption scheme to the masked sequence of values, and

an error correction module configured to generate an error-corrected encrypted masked sequence of values by adding a set of one or more check-bits to the encrypted masked sequence of values,

(ii) the BIBI module is configured to generate a bitstream based on the error-corrected encrypted masked sequence of values,

(iii) the bitstream is transmitted to the routing network, and

(iv) the routing network is configured to map the bitstream to one or more input positions associated with the compute block.

2 . The semiconductor device of claim 1 , wherein the bitstream comprises data representative of a description of hardware, logic, routing, and initial values associated with one or more registers and on-chip memory comprising one or more look-up tables.

3 . The semiconductor device of claim 2 , wherein the data configures the semiconductor device to perform one or more programmable functionalities.

4 . The semiconductor device of claim 1 , wherein the semiconductor device comprises a field-programmable gate array or an application-specific integrated circuit.

5 . The semiconductor device of claim 1 , wherein the sequence generator comprises a linear feedback shift register or a non-linear feedback shift register.

6 . The semiconductor device of claim 1 , wherein the sequence generator is configured to generate the sequence of values based on one or more sequence generating parameters associated with seed, structure, and size.

7 . The semiconductor device of claim 1 , wherein the BIBI module is further configured to:

generate the bitstream at a time of design; and

generate one or more connections to one or more configurable logic blocks comprising the compute block.

8 . The semiconductor device of claim 1 , wherein the BIBI module is further configured to:

generate one or more weights for a neural network associated with one or more computing operations.

9 . A computer-implemented method comprising:

generating, by one or more processors, a sequence of values by performing an operation on a set of one or more seed configuration bits in accordance with a set of one or more sequence generator configuration bits;

converting, by the one or more processors, the sequence of values to a masked sequence of values by applying a mask corresponding to a given precision of bits to the sequence of values;

generating, by the one or more processors, an encrypted masked sequence of values by applying an encryption scheme to the masked sequence of values;

generating, by the one or more processors, an error-corrected encrypted masked sequence of values by adding a set of one or more check-bits to the encrypted masked sequence of values;

generating, by the one or more processors, a final bitstream based on the error-corrected encrypted masked sequence of values; and

transmitting, by the one or more processors, the final bitstream to a routing network, the routing network configured to map the final bitstream to one or more input positions associated with one or more compute blocks.

10 . The computer-implemented method of claim 9 further comprising generating the sequence of values based on one or more sequence generating parameters.

11 . The computer-implemented method of claim 10 wherein the one or more sequence generating parameters comprise a seed configuration or a linear feedback shift register configuration.

12 . The computer-implemented method of claim 9 wherein the one or more compute blocks comprise one or more configurable logic blocks.

13 . The computer-implemented method of claim 9 wherein the sequence of values corresponds to data representative of a description of hardware, logic, routing, and initial values associated with one or more registers and on-chip memory comprising one or more look-up tables.

14 . The computer-implemented method of claim 9 , wherein the final bitstream configures a semiconductor device associated with the one or more compute blocks to perform one or more programmable functionalities.

15 . One or more non-transitory computer-readable storage media storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:

generating a sequence of values by performing an operation on a set of one or more seed configuration bits in accordance with a set of one or more sequence generator configuration bits;

converting, by the one or more processors, the sequence of values to a masked sequence of values by applying a mask corresponding to a given precision of bits to the sequence of values;

generating an encrypted masked sequence of values by applying an encryption scheme to the masked sequence of values;

generating an error-corrected encrypted masked sequence of values by adding a set of one or more check-bits to the encrypted masked sequence of values;

generating a final bitstream based on the error-corrected encrypted masked sequence of values; and

transmitting the final bitstream to a routing network, the routing network configured to map the final bitstream to one or more input positions associated with one or more compute blocks.

16 . The one or more non-transitory computer-readable storage media of claim 15 , wherein the operations further comprise generating the sequence of values based on one or more sequence generating parameters.

17 . The one or more non-transitory computer-readable storage media of claim 16 , wherein the one or more sequence generating parameters comprise a seed configuration or a linear feedback shift register configuration.

18 . The one or more non-transitory computer-readable storage media of claim 15 , wherein the one or more compute blocks comprise one or more configurable logic blocks.

19 . The one or more non-transitory computer-readable storage media of claim 15 , wherein the sequence of values corresponds to data representative of a description of hardware, logic, routing, and initial values associated with one or more registers and on-chip memory comprising one or more look-up tables.

20 . The one or more non-transitory computer-readable storage media of claim 15 , wherein the final bitstream configures a semiconductor device associated with the one or more compute blocks to perform one or more programmable functionalities.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2023
From: BHUNIA, SWARUP; GAIKWAD, PRAVIN DASHARTH
To: UNIVERSITY OF FLORIDA RESEARCH FOUNDATION, INCORPORATED
Reel/Frame 065720/0343 →
Continuity (2)
Provisional Application 63421385 · Nov 1, 2022
Related Publication 20240154788A1 · May 9, 2024
References Cited (3)
US 8415974B1 · Lysaght · 2013 [cited by examiner]
US 20190286973A1 · Kovvuri · 2019 [cited by examiner]
US 20190305927A1 · Bhunia · 2019 [cited by examiner]