System and method for anti reverse engineering for analog integrated circuit
10460061 ยท 2019-10-29
Inventors
Cpc classification
H01L23/522
ELECTRICITY
International classification
Abstract
Systems and methods of restraining reverse engineering process for analog integrated circuit use techniques of adding dummy devices, device fragmentation, increasing bus width, employing different layouts for the same circuit element and mixing different types of passive devices increase complexity and makes the layout floorplan more difficult to be extracted for the reverse engineering. The system adds dummy devices and ensures the extra devices and capacitance do not affect the target circuit performance.
Claims
1. A method for designing an integrated circuit (IC), comprising: adding anti-reverse engineering for the IC by expanding complexity of one or more circuits or disguising a selected circuit; checking if a functional block is an open-loop static circuitry and adding dummy devices on signal nets for open loop static circuits and otherwise separating static signals from dynamic signals and adding dummy devices on static signals; and rendering a layout of the IC with the anti-reverse engineering design.
2. The method of claim 1, wherein the expanding complexity comprises adding one or more dummy devices.
3. The method of claim 2, comprising inserting the dummy devices in a middle in addition to placing the dummy devices on one or more sides of one or more functional devices of the IC.
4. The method of claim 1, wherein the expanding the complexity comprises device fragmentation.
5. The method of claim 4, comprising implementing an analog circuit floorplan to resemble a digital circuitry layout format by using multiple small device layouts.
6. The method of claim 4, wherein active devices are broken down into multiple smaller devices to add complexity against reverse engineering.
7. The method of claim 4, wherein passive devices including resistors or capacitors are implemented by a bank of multiple resistors or capacitors in parallel or in serial format to add complexity against reverse engineering.
8. The method of claim 1, comprising disguising a circuit by increasing a bus width.
9. The method of claim 8, wherein the bus signal width of circuitry is increased with inserted dummy signals to add complexity and restrain reverse engineering.
10. The method of claim 1, wherein the circuit disguise employs different layouts for the same circuit element.
11. The method of claim 10, wherein different layout realizations are used for the same circuit to misguide the reverse engineering.
12. The method of claim 1, wherein the circuit disguise mixes different types of passive devices.
13. The method of claim 12, wherein forming a resistor or a capacitor by using different type of resistors or capacitors to mislead the reverse engineering process intentionally.
14. The method of claim 1, comprising adding dummy devices to reinforce a target circuit, and meeting a predetermined performance with added devices and associated extra capacitance of the dummy devices.
15. The method of claim 14, wherein the dummy devices are added based on the criteria of static circuit or dynamic circuit.
16. The method of claim 14, wherein the signals of circuits are categorized into static signals and dynamic signals, further comprising adding dummy devices on the static signals and only selected dynamic signals.
17. The method of claim 1, comprising fabricating the IC.
18. A system to design an integrated circuit (IC), comprising: a processor to receive an IC design with one or more circuits thereon; code for adding anti-reverse engineering for the IC by expanding a complexity of one or more circuits or disguising a selected circuit; code for checking if a functional block is an open-loop static circuitry and adding dummy devices on signal nets for open loop static circuits and otherwise separating static signals from dynamic signals and adding dummy devices on static signals; and code for rendering a layout of the IC with the anti-reverse engineering design.
19. An integrated circuit, comprising: a plurality of functioning circuits on a substrate; a disguised circuit on the substrate or one or more complexity adding circuits on the substrate to foil piracy by checking if a functional block is an open-loop static circuitry and adding dummy devices on signal nets for open loop static circuits and otherwise separating static signals from dynamic signals and adding dummy devices on static signals; and, wherein the disguised circuit or the complexity adding circuit meets a predetermined performance with added devices and associated extra capacitance of the dummy devices.
20. The IC of claim 19, wherein the signals of circuitry are categorized into static signals and dynamic signals, further comprising adding dummy devices on the static signals and only selected dynamic signals.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
DETAILED DESCRIPTION
(16) The present invention will be described with respect to particular embodiments and with reference to certain drawings but the invention is not limited thereto but only by the claims. The drawings described are only schematic and are non-limiting. In the drawings, the size of some of the elements may be exaggerated and not drawn on scale for illustrative purposes.
(17) The terms first, second, third and the like in the description and in the claims, are used for distinguishing between similar elements and not necessarily for describing a sequential or chronological order. It is to be understood that the terms so used are interchangeable under appropriate circumstances and that the embodiments of the invention described herein are capable of operation in other sequences than described or illustrated herein.
(18) Furthermore, it is to be noticed that the term comprising, used in the claims, should not be interpreted as being restricted to the means listed thereafter; it does not exclude other elements or steps. Thus, the scope of the expression a device comprising means A and B should not be limited to devices consisting only of components A and B. It means that with respect to the present invention, the only relevant components of the device are A and B.
(19) Similarly, it is to be noticed that the term coupled discloses both direct and indirect coupling and should not be interpreted as being restricted to direct connections only. Thus, the scope of the expression a device A coupled to a device B should not be limited to devices or systems wherein an output of device A is directly connected to an input of device B. It means that there exists a path between an output of A and an input of B which may be a path including other devices or means.
(20) Two methods have been developed to restrain reverse engineering on integrated circuit. They are (1) Complexity Expansion and (2) Circuit Disguise respectively. Complexity Expansion is to increase the complication and complexity of the circuitry such that reversing and extracting the circuitry becomes very difficult and challenging. Circuit Disguise is to implement the physical layout in such a way that it misleads the reverse engineering process and finishes up with incorrect extracted circuitry.
(21) The reason that digital circuit is much more difficult for reverse engineering is that digital circuit is more complicated in terms of the number of connection and the device dimension is smaller. By making the analog circuit and floorplan toward digital implementation will increase the difficulty for reverse process. The proposed techniques of Complexity Expansion are (A) adding dummy devices and (B) device fragmentation. Adding dummy devices attaches extra devices to the main functional devices in such a way that the number of devices and the number of connection nets are increased. Device fragmentation is to break down devices to many smaller devices, which increase the difficulty of extracting the circuitry.
(22) The invented techniques of Circuit Disguise are (C) increasing bus width, (D) employing different layouts for the same circuit element and (E) mixing different types of passive devices. Often there are multiple bits for data signals or calibration signals in analog circuit like data converters. Increasing bus width creates more complication and makes the circuitry more unfavorable to be extracted. Employing different layouts for the same circuit element is to use multiple layout implementations for one same circuit, which misleads the reverse process that they are different circuit elements. Mixing different types of passive devices is to misguide the reverse process by placing different types or resistors or capacitors together. The mentioned five techniques of (A) adding dummy devices, (B) device fragmentation, (C) increasing bus width, (D) employing different layout for the same circuit element and (E) mixing different types of passive devices are summarized in the following table and will be explained and elaborated respectively.
(23) TABLE-US-00001 Methods Techniques 1. Complexity Expansion (A) Adding dummy devices (B) Device fragmentation 2. Circuit Disguise (C) Increasing bus width (D) Employing different layouts for the same circuit element (E) Mixing different types of passive devices
(24)
(25) Adding dummy devices makes the layout not as straightforward and restrains reverse engineering.
(26)
(27) Adding dummy is a recommended practice for analog circuit layout to minimize the etch effect during fabrication and achieve better matching. For advanced technology process, the design rule even requires adding enough dummy devices on two sides to minimize the LOD (length of diffusion) and STI (shallow trench isolation) effect. To make the layout more difficult to be reversed, the dummy devices are inserted in the middle or center in additional to the dummy on two sides.
(28) Nevertheless, adding dummy devices could create extra capacitance that changes the circuit behavior. An algorithm procedure on
(29) Another Complexity Expansion technique is device fragmentation. By breaking down one device into multiple smaller devices, it creates more connection nets and makes the devices unfavorable to be recognized for reverse engineering. This technique applies to both active devices like transistors and passive devices like resistors and capacitors.
(30)
(31) Another technique of Circuit Disguise is (D) employing different layouts for the same circuit element.
(32) Another technique of Circuit Disguise is (E) mixing different types of passive devices. The foundry design kits offer different types of resistors and capacitors with varying characteristics. For example, the resistor type can be low-resistive poly silicide or high-resistive poly non-silicide. Silicide is a process to lower the sheet resistance. The silicide process is implemented in the front-end based layers instead of back-end metal layers during manufacturing. Therefore, the reverse engineering cannot differentiate which type of resistor since this based process layer is not extracted during reverse process.
(33) Similarly,
(34) Two methods of Complexity Expansion and Circuit Disguise have been developed to restrain reverse engineering on analog integrated circuit. Five techniques: (A) adding dummy devices, (B) device fragmentation, (C) increasing bus width, D) employing different layouts for the same circuit element and (E) mixing different types of passive devices have been presented to make the layout floorplan more complicated and more difficult to analyze. These methods and techniques intentionally mislead the reverse engineering process and the extracted netlist can be false presentation of the actual circuitry.