Unique binary identifier using existing state elements

Information

  • Patent Application
  • 20080052029
  • Publication Number
    20080052029
  • Date Filed
    August 24, 2006
    18 years ago
  • Date Published
    February 28, 2008
    16 years ago
Abstract
A method of retrieving a unique, repeatable identification value from an integrated circuit by identifying a plurality of state elements within the integrated circuit, where the state elements are part of standard functional circuitry within the integrated circuit, and are not part of a specialized circuit designed to primarily produce the unique, repeatable identification value, performing an initializing process on the state elements to bring the state elements to repeatable states, where the repeatable states of different state elements are dependent at least in part on differences between the different state elements, reading the repeatable states on the state elements, and joining the repeatable states into a binary number as the unique, repeatable identification value.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

Further advantages of the invention are apparent by reference to the detailed description when considered in conjunction with the figures, which are not to scale so as to more clearly show the details, wherein like reference numbers indicate like elements throughout the several views, and wherein:



FIG. 1 is a circuit diagram of one embodiment of an existing state element for use in a chip identification circuit.



FIG. 2 is a flow diagram for obtaining a unique binary identifier from existing state holding elements.





DETAILED DESCRIPTION

According to the present invention, existing state elements within the design of an integrated circuit are selectively used to produce a repeatable, substantially random series of preferably binary digits that is used as an identification for the integrated circuit. The random nature of the series is produced by subjecting one or more state elements to a specific protocol of voltage or frequency fluctuations. Small differences in the state elements from one integrated circuit to another cause the identification to differ from one integrated circuit to another. These small differences are caused by slight and minute differences in materials and processing that are used during the fabrication of the integrated circuits, even as between integrated circuits that are fabricated on the same wafer. While these differences in the state elements, such as voltage threshold, are typically too small to cause a given integrated circuit to malfunction or not perform according to specification, they can be used for the purposes as described herein.


With reference now to FIG. 1, there is depicted a circuit diagram of a digital flip flop 10, which serves as an example of a state element. Such flip flops 10 are typically extensively used in integrated circuit design, and thus there would be no need to add such circuitry to an integrated circuit design in order to utilize the circuit 10 as an identification circuit as described herein.


It is appreciated that the flip flop 10 is merely one example of a state element, or in other words, a state holding device, and that any such state element could be used as a part of the preferred embodiments of the invention as described herein. For example, any accessible storage element will suffice if it can be stated properly. Some examples are scan flip-flops, memory arrays, and JTAG boundary scan cells.


Advances in structural testing of integrated circuits have made it possible to gain direct access to these state elements. Specifically in the case of the flip flops 10, it is routine to daisy chain these elements into what is called a scan chain. Binary streams of data can be shifted into and out of these scan chains, making it possible to access the binary state of any given flip flop in the design.


In standard CMOS technology, flip flops 10 are created using a feedback network such as that shown in the logic diagram of FIG. 1, for example. The initial state of the flip flop 10 upon power up is in part determined by the individual transistor threshold voltages that are involved in the feedback network. Local threshold voltage variations that are essentially random in nature will dictate the power up state of each flip flop 10, which results in a unique bit state in these elements. The test scan chain structure enables the bit stream signature to be shifted out and recorded, thus producing the identification value of the integrated circuit.


The method 100 of using the state elements to obtain a unique device identifier is depicted in FIG. 2. In step 101, the state element is preferably preconditioned either in a powered up or powered down mode. The preconditioning tends to ensure that the state of the element after step 102 is most repeatable. The preconditioning preferably includes applying states to the inputs of the device, as well as shifting known values into the state elements.


In step 102, a power sequence is preferably followed that results in the states changing in a manner according to the specific processing that the devices in the state element have undergone. This sequence can be either very simple or more complex. On the simple end, the sequence can be a full power down where supply voltage is taken fully to zero volts, followed by a full power up. On the more elaborate end, it can be a sequence of partial power down and time dependant power up ramps, for example. All such power sequences are anticipated.


In step 103, under full power up conditions, the modified binary data is accessed via scan chains or other structural approaches to obtain the unique device identifier.


Another variation is the way in which the part is stated. Any way that random values can be applied to the state elements will generate a unique signature. Some examples are powering the part up from an off-state, and reducing the voltage at a known state.


The foregoing description of preferred embodiments for this invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Obvious modifications or variations are possible in light of the above teachings. The embodiments are chosen and described in an effort to provide the best illustrations of the principles of the invention and its practical application, and to thereby enable one of ordinary skill in the art to utilize the invention in various embodiments and with various modifications as are suited to the particular use contemplated. All such modifications and variations are within the scope of the invention as determined by the appended claims when interpreted in accordance with the breadth to which they are fairly, legally, and equitably entitled.

Claims
  • 1. A method of retrieving a unique, repeatable identification value from an integrated circuit, the method comprising the steps of: identifying a plurality of state elements within the integrated circuit, where the state elements are part of standard functional circuitry within the integrated circuit, and are not part of a specialized circuit designed to primarily produce the unique, repeatable identification value,performing an initializing process on the state elements to bring the state elements to repeatable states, where the repeatable states of different state elements are dependent at least in part on differences between the different state elements,reading the repeatable states on the state elements, andjoining the repeatable states into a binary number as the unique, repeatable identification value.
  • 2. The method of claim 1, wherein the differences between the different state elements comprise threshold voltage.
  • 3. The method of claim 1, wherein the state elements comprise at least one of memory cells, flip flops, and JTAG boundary scan cells.
  • 4. A method of retrieving a unique, repeatable identification value from an integrated circuit, the method comprising the steps of: identifying a state element within the integrated circuit, where the state element is a part of standard functional circuitry within the integrated circuit, and is not part of a specialized circuit designed to primarily produce the unique, repeatable identification value,performing an initializing process on the state element to bring the state element to a repeatable state,reading the repeatable state on the state element, anditeratively applying additional, set processes to the state element and reading the state on the state element to produce the unique, repeatable identification value.