US 12,470,221 B2
Programmable application-specific array for protecting confidentiality and integrity of hardware IPS
Swarup Bhunia, Gainesville, FL (US); Aritra Dasgupta, Gainesville, FL (US); Pravin Gaikwad, Gainesville, FL (US); Md Moshiur Rahman, Gainesville, FL (US); Aritra Bhattacharyay, Gainesville, FL (US); Nij Dorairaj, Santa Clara, CA (US); and David Kehlet, Santa Clara, CA (US)
Assigned to University of Florida Research Foundation, Incorporated, Gainesville, FL (US); and Intel Corporation, Santa Clara, CA (US)
Filed by University of Florida Research Foundation, Incorporated, Gainesville, FL (US); and Intel Corporation, Santa Clara, CA (US)
Filed on Jun. 22, 2022, as Appl. No. 17/808,179.
Claims priority of provisional application 63/216,971, filed on Jun. 30, 2021.
Prior Publication US 2023/0006674 A1, Jan. 5, 2023
Int. Cl. G06F 9/30 (2018.01); G06F 9/448 (2018.01); H03K 19/17728 (2020.01); H03K 19/21 (2006.01)
CPC H03K 19/17728 (2013.01) [G06F 9/30134 (2013.01); G06F 9/4498 (2018.02); H03K 19/21 (2013.01)] 19 Claims
OG exemplary drawing
 
1. A method of protecting an integrated circuit design against confidentiality and integrity attacks, the method comprising:
receiving, by a computing device, a file including data comprising a hardware netlist;
converting, by the computing device, the data into a hypergraph, wherein the hypergraph comprises (i) a plurality of nodes representative of a plurality of logic gates and (ii) one or more edges representative of one or more connections of the plurality of logic gates;
replacing, by the computing device, a node from the plurality of nodes in the hypergraph with a configurable lookup table (LUT);
inserting, by the computing device, a first programmable component into the hypergraph based on the configurable LUT, wherein the first programmable component comprises a programmable interconnect that is inserted at an output of the configurable LUT; and
generating, by the computing device, a redacted design output file based on the hypergraph including the configurable LUT and the first programmable component.