IP Library Granted Patent US 11,163,930
Granted Patent B2
US 11,163,930 · App. 16/905,724 · Granted Nov 2, 2021

Secure logic locking and configuration with camouflaged programmable micro netlists

Inventors: Lap Wai Chow (South Pasadena, CA); Bryan J. Wang (South Lake Tahoe, CA); James P. Baukus (Westlake Village, CA); Ronald P. Cocchi (Huntington Beach, CA)
Assignee: RAMBUS INC.
G06F30/392G06F21/14G06F30/39G06F30/394H01L27/0207H01L27/11807H03K19/17736G06F30/34
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 11,163,930
App. No.
16/905,724
Granted
Nov 2, 2021
Kind
B2
Abstract

The camouflage technique described herein introduces programmed configuration inputs to Micro Netlists, creating Programmable Micro Netlists (PMNLs). PMNLs are a group of camouflaged and non-camouflaged cells that may be configured to perform one of several possible logic functions. They retain all the protective properties of non-programmable MNLs, but also allow for secure post-manufacture configuration of their aggregate logic function.

Claims (38)

1. A semiconductor chip comprising:

a plurality of interconnected logic cells for performing a core logic function of the chip;

at least a portion of non-volatile memory (NVM) for storing at least configuration data for the chip;

a programmable micro netlist (PMNL) circuit, including at least one programming input, wherein:

the PMNL circuit is constructed using at least one uncamouflaged logic gate and at least one camouflaged logic gate;

the programming input is operationally coupled to the configuration data stored in the NVM; and

wherein an operational function of the PMNL circuit contributes to the core logic function of the chip when the programming input is in a first logical state, and does not contribute to the core logic function when the programming input is in a second logical state.

2. The chip of claim 1 , wherein the camouflaged logic gate performs a first logical cell function and has a physical layout substantially indistinguishable from a physical layout of an uncamouflaged logic gate performing a second logical cell function.

3. The chip of claim 1 , wherein a physical layout of the camouflaged logic gate differs from a physical layout of the uncamouflaged logic gate by an eliminated structure.

4. The chip of claim 1 , wherein a physical layout of the camouflaged logic gate differs from a physical layout of the uncamouflaged logic gate by an additional structure.

5. The chip of claim 1 , wherein an input of the camouflaged logic gate is connected to at least one of another of the plurality of interconnected logic cells.

6. The chip of claim 1 , wherein the PMNL circuit comprises a storage element communicatively coupled between the NVM and the programming input to store the configuration data for the chip.

7. The chip of claim 6 , wherein the storage element is initialized at boot time from the NVM.

8. The chip of claim 7 , wherein the configuration data is secret and cannot be read or written without permission.

9. The chip of claim 1 , further comprising an address decoder, communicatively coupled between the NVM and a storage element, wherein the address decoder further comprises another camouflaged logic cell.

10. The chip of claim 1 , wherein at least a portion of the configuration data comprises programming data for programming the camouflaged logic gate.

11. A method of fabricating a semiconductor chip, comprising:

defining core logic having a plurality of interconnected logic cells that perform a core logic function of the chip;

defining a programmable micro netlist (PMNL) circuit, the PMNL circuit having a plurality of interconnected logic gates, the PMNL comprising:

an uncamouflaged logic gate, and a camouflaged logic gate;

a programming input communicatively coupleable to a non-volatile memory (NVM) to receive configuration data to configure the PMNL to perform an operational function of the PMNL that contributes to the core logic function of the chip when the programming input is in a first logical state, and does not contribute to the core logic function of the chip when the programming input is in a second logical state;

substituting the PMNL for a subset of the plurality of interconnected logic cells.

12. The method of claim 11 , wherein the camouflaged logic gate performs a first logical cell function and has a physical layout substantially indistinguishable from a physical layout of an uncamouflaged logic gate performing a second logical cell function.

13. The method of claim 11 , wherein a physical layout of the camouflaged logic gate differs from a physical layout of the uncamouflaged logic gate by an eliminated structure.

14. The method of claim 11 , wherein a physical layout of the camouflaged logic gate differs from a physical layout of the uncamouflaged logic gate by an additional structure.

15. The method of claim 11 , wherein an input of the camouflaged logic gate is connected to at least one of the plurality of interconnected logic cells.

16. The method of claim 11 , wherein the PMNL circuit comprises a storage element communicatively coupled between the NVM and the programming input to store the configuration data for the chip.

17. The method of claim 16 , wherein the storage element is initialized at boot time from the NVM.

18. The method of claim 17 , wherein the configuration data is secret and cannot be read or written without permission.

19. The method of claim 11 , further comprising an address decoder, communicatively coupled between the NVM and a storage element, wherein the address decoder further comprises another camouflaged logic cell.

20. A semiconductor chip manufactured by performing steps comprising the steps of:

defining core logic having a plurality of interconnected logic cells that perform a core logic function of the chip;

defining a programmable micro netlist (PMNL) circuit, the PMNL circuit having a plurality of interconnected logic gates, the PMNL comprising:

an uncamouflaged logic gate, and a camouflaged logic gate;

a programming input communicatively coupleable to a non-volatile memory (NVM) to receive configuration data to configure the PMNL to perform an operational function of the PMNL that contributes to the core logic function of the chip when the programming input is in a first logical state, and does not contribute to the core logic function of the chip when the programming input is in a second logical state;

substituting the PMNL for a subset of the plurality of interconnected logic cells, wherein the plurality of interconnected logic gates comprise:

an uncamouflaged logic gate for performing a first logic gate function and having a first physical layout; and

a camouflaged logic gate for performing a second logic gate function and having a second physical layout substantially indistinguishable from the first physical layout.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2021
From: CHOW, LAP WAI; WANG, BRYAN J.; BAUKUS, JAMES P.; COCCHI, RONALD P.
To: INSIDE SECURE
Reel/Frame 057217/0511 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2021
From: VERIMATRIX
To: RAMBUS INC.
Reel/Frame 057220/0930 →
CHANGE OF NAME Recorded Aug 18, 2021
From: INSIDE SECURE
To: VERIMATRIX
Reel/Frame 057221/0048 →
Continuity (11)
Continuation 16056268 · Aug 6, 2018
Continuation In Part 15791260 · Oct 23, 2017
Continuation In Part 15675418 · Aug 11, 2017
Continuation In Part 14382539
Continuation In Part 13940585 · Jul 12, 2013
Division 13370118 · Feb 9, 2012
Continuation In Part 12578441 · Oct 13, 2009
Continuation In Part 12380094 · Feb 24, 2009
Provisional Application 62542049 · Aug 7, 2017
Provisional Application 61606260 · Mar 2, 2012
Related Publication 20210004515A1 · Jan 7, 2021