AGING CONTROL OF A SYSTEM ON CHIP
20170269151 · 2017-09-21
Assignee
Inventors
Cpc classification
G01R31/2856
PHYSICS
G01R31/31725
PHYSICS
International classification
G06F21/57
PHYSICS
Abstract
A method to control aging of a system on chip comprising one or more devices including semiconductor circuit components and at least one aging controller monitoring electrical signals circulating inside the system on chip. The method comprises steps of stressing at least one device of the system on chip by varying hardware parameters related to its operating mode, comparing at least one parameter associated with an electrical signal produced by the at least one device with a reference parameter to determine a difference corresponding to an operating age value of the at least one device, if the operating age value equals or exceeds a threshold age value, determining a stress state value and modifying the operating mode of the at least one device according to the stress state value. A system on chip performing the method is also disclosed.
Claims
1. A method to control aging of a system on chip comprising one or more devices including semiconductor circuit components and at least one aging controller monitoring electrical signals circulating inside the system on chip, each device having at least one operating mode, the method comprising: stressing, by the aging controller, at least one device of the system on chip by varying hardware parameters related to the at least one operating mode of said at least one device; comparing, by the aging controller, at least one parameter associated with an electrical signal produced by the at least one device with a reference parameter to determine a difference corresponding to an operating age value of the at least one device; determining, by the aging controller, a stress state value when the operating age value equals or exceeds a predetermined threshold age value; and encoding the stress state value as a binary value associated with each device, and restricting or disabling one or more functions in the at least one operating mode of the system on chip according to an array of values formed by one or more binary values.
2. The method according to claim 1, wherein the aging controller comprises an oscillator circuit associated with at least one device, generating a signal having a frequency that decreases with the device operating time and applied stress, said frequency being compared with a reference frequency for determining a difference corresponding to an operating age value of the at least one device.
3. The method according to claim 2, wherein the oscillator circuit comprises a ring oscillator made up of a chain including an odd number of CMOS inverters connected in series where the output of the last inverter is fed back as input of the first inverter.
4. The method according to claim 2, wherein the oscillator circuit is stressed, during a predetermined time or within time periods, with commands managing hardware parameters variations comprising a DC over-voltage, an AC voltage bias, a current increase in a resistor inducing a higher temperature than a normal operating temperature or a combination thereof.
5. The method according to claim 2, wherein a value of the reference frequency is either initially stored in a non-volatile set up memory of the system on chip or provided by a clock signal generated by a reference generator, said generator being placed inside or outside the system on chip.
6. The method according to claim 1 wherein the array of values forms a binary string representing the stress state values associated with a set of devices, the binary string being stored in a secure memory monitored by the aging controller and used to form a unique key to perform cryptographic computations.
7. The method according to claim 1, the aging controller controls signal timing parameters comprising transition time or propagation time of signals produced by at least one device of the system on chip, said signal timing parameters increasing with the device operating time and applied stress, said signal timing parameters of a stressed device being compared with a reference signal for determining a difference corresponding to an operating age value of the at least one device.
8. A system on chip configured to control aging of one or more devices comprising semiconductor circuit components, and at least one aging controller configured to monitor electrical signals circulating inside the system on chip, each device having at least one operating mode, the aging controller being further configured to: stress at least one device of the system on chip, by varying hardware parameters related to the at least one operating mode of said at least one device; compare at least one parameter associated with an electrical signal produced by the at least one device with a reference parameter to determine a difference corresponding to an operating age value of the at least one device; determine a stress state value when the operating age value equals or exceeds a predetermined threshold age value; and encode the stress state value as a binary value associated with each device, and restrict or disable one or more functions in the at least one operating mode of the system on chip according to an array of values formed by one or more binary values.
9. The system on chip according to claim 8, wherein the aging controller comprises an oscillator circuit associated with at least one device configured to generate a signal having a frequency decreasing with the device operating time and applied stress, the aging controller being further configured to compare said frequency with a reference frequency and to determine a difference corresponding to an operating age value of the at least one device associated with at least one device.
10. The system on chip according to claim 9, wherein the oscillator circuit comprises a ring oscillator made up of a chain including an odd number of CMOS inverters connected in series where the output of the last inverter is fed back as input of the first inverter.
11. The system on chip according to claim 9 wherein the stress of the oscillator circuit includes commands acting, during a predetermined time or within time periods, on hardware parameters variations comprising a DC over-voltage, an AC voltage bias, a current increase in a resistor inducing a higher temperature than a normal operating temperature or a combination thereof.
12. The system on chip according to claim 9, wherein a value of the reference frequency is initially stored in a non-volatile set up memory of the system on chip or provided by a clock signal generated by a reference generator placed inside or outside the system on chip.
13. The system on chip according to claim 9, wherein the array of values forms a binary string representing the stress state values associated with a set of devices, the binary string, being stored in a secure memory monitored by the aging controller, is configured to be used as a unique key to perform cryptographic computations.
14. The system on chip according to claim 8, wherein that the aging controller is configured to control signal timing parameters comprising transition time or propagation time of signals produced by at least one device of the system on chip, said signal timing parameters increasing with the device operating time and stress applied during a predetermined time or within time periods, the aging controller being further configured to compare signal timing parameters of a stressed device with the signal timing parameters of a reference signal and determine a difference corresponding to an operating age value of the at least one device.
15. The system on chip according to claim 10, wherein the aging controller further comprises: an input interface configured to receive stressing commands acting on hardware parameters related to at least one operating mode of the ring oscillator circuit; a first comparator configured to compare the signal frequency with a reference frequency and to determine a difference showing a decrease of the signal frequency corresponding to an operating age value of the ring oscillator; and a second comparator configured to compare the operating age value with a threshold age value and to output a stress state value.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0028] The following detailed description refers to the attached drawings in which:
[0029]
[0030]
[0031]
DETAILED DESCRIPTION
[0032] According to a preferred configuration, the aging controller is based on ring oscillator RO circuits implemented in the system on chip SOC for measuring the devices aging. A ring oscillator RO circuit comprises at least one inverting element or inverter and a delay element consisting of a buffer, capacitance or an even number of inverters. A well known configuration includes a chain of an odd number of CMOS inverters connected in series where the output of the last inverter is fed back as input of the first inverter forming thus a ring.
[0033] A real ring oscillator RO only requires power to operate; above a certain threshold voltage, oscillations begin spontaneously. To increase the frequency of oscillation, two methods are commonly used. Firstly, the applied voltage may be increased; this increases both the frequency of the oscillation and the current consumed. The maximum permissible voltage applied to the circuits limits the speed of a given oscillator. Secondly, a smaller number of inverters in the ring results in a higher frequency of oscillation for a given power consumption. The fundamental frequency F.sub.osc at a given supply voltage is calculated by F.sub.osc=1/(N*T) where N represents the number of inverters in the ring and T the time delay for a single inverter.
[0034] As the effects of aging impact the switching speed of transistors by rendering them slower, a ring oscillator RO with 10 to 100 MOSFET transistors will see its fundamental frequency slowing with time. The variation with time is thus directly proportional to number of transistors respectively inverters included in the ring oscillator. The variation may be increased by stressing the ring oscillator RO circuit in different ways, such as applying a DC over-voltage, an AC voltage bias, a current increase in a resistor inducing a higher temperature than a normal operating temperature or a combination thereof. The interesting part is that the aging of transistors cannot be reversed.
[0035] The documents below describe aging causes and effects observed in CMOS process technology:
[0036] [1] “Transistor Aging”—IEEE Spectrum of July 2013 (http://spectrum.ieee.org/semiconductors/processors/transistor-aging/0)
[0037] [2] Radic: A Standard-Cell-Based Sensor for On-Chip Aging and Flip-Flop Metastability Measurements, Xiaoxiao Wang et al., University of Connecticut (www.engr.uconn.edu/˜tehrani/publications/itc-2012-1.pdf)
[0038] [3] On-Chip Circuits for Characterizing Transistor Aging Mechanisms in Advanced CMOS Technologies” by John Patrick Keane, University of Minnesota, April 2010 (conservancy.umn.edu/bitstream/123382/1/Keane_umn_0130E_10992.pdf)
[0039] [4] ANALYSIS OF IMPACT OF TRANSISTOR AGING EFFECTS ON CLOCK SKEW IN NANO-SCALE CMOS by Mandeep Singh Randhawa, San Francisco State University, California, May 2011 (userwww.sfsu.edu/necrc/files/thesis/thesis_report_Mandeep.pdf)
[0040] [5] An On-Chip Test Clock Control Scheme for Circuit Aging Monitoring by Hyunbean Yi, JOURNAL OF SEMICONDUCTOR TECHNOLOGY AND SCIENCE, VOL. 13, NO. 1, FEBRUARY, 2013 (www.jsts.org/html/journal/journal_files/2013/02/Year2013Volume13_01_11.pdf)
[0041] There are several causes for gate aging including Hot Carrier Injection (HCI), Bias Temperature Instability (BTI) and Time Dependent Dielectric Breakdown (TDDB) or Oxide Breakdown. All these phenomena contribute to the variation of the threshold voltage of MOS transistors used in a large scale in integrated circuits, and have the global effect of gradually slowing down the gate speed over its lifetime. This slow-down may be directly measured with on-chip sensors, for example to optimize the circuit clock speed as suggested by document [1]. Measurement of gate aging may be realized by observing the speed of ring oscillators.
[0042] The system on chip according to one embodiment of the invention represented by the diagram of
[0043] The system on chip SOC operates within operating modes depending on required functionalities. Most preferably in the example of a pay-TV set top box, the system on chip may be included in a security module involved in data encryption/decryption operations, user rights validity time checking, credit and debit management for content viewing, etc.
[0044] The aging of selected devices is accelerated according to their functions by increased stress application through a higher supply voltage in relation to the other devices. Particular commands may thus manage the stress of the ring oscillators associated with the selected devices by increasing their activity rate, power supply voltage or current values contributing also to increase operating temperature. In a stand-by mode of the system on chip, some devices may still fully operate while others are switched off so that devices having, for example, a sophisticated security function will expire faster than the ones having only basic functions.
[0045] According to a preferred embodiment, each device D1, D2, D3 may be associated with a specific oscillator circuit called hereafter ring oscillator fuse ROF. The term “fuse” means that the ring oscillator is capable to modify or disable some features of a device when a given operating age value is reached.
[0046] The oscillator circuit, preferably in form of a ring oscillator composed by an odd number N of inverters IN.sub.1 . . . IN.sub.N, generates a signal having a frequency F.sub.osc during operating of the system on chip SOC. The ring oscillator operates as well as under normal or unstressed operating conditions as under stressed conditions according to the commands SI1, Si2, SI3 received from the aging controller AGC.
[0047] A first comparator CP1 compares a value of the F.sub.osc with a reference frequency value F.sub.ref stored for example in a non-volatile set up memory of the system on chip SOC during an initialization or personalization phase.
[0048] The reference frequency F.sub.ref may be common to all devices D1, D2, D3 or specific to each device or a predefined group of devices depending on their activity rate.
[0049] According to an embodiment, the reference frequency value F.sub.ref may correspond to a frequency of a clock signal generated by a reference generator placed inside or outside the system on chip SOC.
[0050] When the oscillator signal frequency F.sub.osc value differs with the reference frequency value F.sub.ref, the first comparator CP1 determines a difference value ΔF corresponding to an operating age of the concerned device D1. Each device D1, D2, D3 of the system on chip SOC may be preferably associated with its own ring oscillator fuse device ROF to enable aging devices selectively. As each device D1, D2, D3 has its specific activity rate, aging effects measured by decrease of the oscillator signal frequency F.sub.osc, in relation to the reference frequency F.sub.ref, are also device specific.
[0051] The operating age value at the output of the first comparator CP1 is compared by a second comparator CP2 with a threshold operating age value TA specific to the device to which the ring oscillator is associated. This threshold operating age value TA is initially stored in a set up memory of the system on chip SOC in a similar way than the reference frequency value F.sub.ref according to the concerned embodiment.
[0052] Using two comparators has the advantage to allow specific comparisons between different values of reference frequency as well as different values of threshold age according to the functionalities of the different devices composing the system on chip SOC.
[0053] If the operating age value is equal or greater than the threshold operating age value TA, the second comparator CP2 outputs for example a binary value 0 or 1 corresponding to a stress state value ST. In a preferred embodiment a stress state value bit set at 1 corresponds to a reached operating age value, i.e. the operating age value represented by ΔF is equal or higher than the threshold age value TA.
[0054] According to an embodiment, the frequency difference value ΔF corresponding to an operating age value may be compared to more than one threshold operating age value to provide differentiated stress state values. For example, depending on applied stress, the operating age value reaches a first threshold value TA1 indicated by a first state ST1, then after certain time and stress applied, the operating age value reaches a second threshold value TA2 indicated by a second state ST2, and so on until to a final threshold operating age value TAn. The granularity, i.e. the number of threshold values and the intervals between the threshold operating age values depends on the required information about aging progress in function of device activity rate and applied stress. The operating mode of the concerned device may thus also depend on the different reached threshold age value. In this case, a stress state values table may be established showing the different threshold age value and time period needed to reach them under predefined stress conditions and device operating mode.
STRING OF BITS
[0055] According to an embodiment, the stress state value associated with each device may form a bit in a string of bits where for example each bit set at 1 corresponds to a reached or exceeded operating age value of said device. In another embodiment, the stress state value may be encoded by a set of bits 0 and 1 and the string results from a concatenation of the sets representing each device stress state value.
GLOBAL COUNTER
[0056] A counter can be used to determine the general state of the chip. Before a verification process, the counter is initialized. At each device verification, the counter is updated if the age value equals or exceeds a predetermined threshold age value. At the end of the process, the value of the counter represents the number of devices exceeding the threshold showing a global state of the system on chip. Appropriate actions can be taken if the counter reaches a predefined threshold.
DEVICE COUNTER
[0057] According to a further embodiment, a counter associated with each device may be updated when an operating age value is reached or exceeded. An update of the counter means that the counter is incremented from a start value (in general set up to zero) or decremented from a predetermined value set up during an initialization or personalization phase of the system on chip. In this case, each stress state value corresponds to the value of the counter which may be used to form a string of values by concatenation as in the string of bits embodiment for example.
DUAL THRESHOLDS
[0058] According to a further embodiment, a threshold stress state value may be attributed to each device. During the comparison with the predetermined threshold age value, the difference between the operating age value and the predetermined threshold age value is stored as a device state stress value. Once all devices are stressed, the array of values represents the behavior of the chip. A further global aging value can be determined for example by summing all stress state values to obtain a global stress state value. The difference of this approach is to give a different weight per device. In the bit approach (see above), each device has the same weight and the global state value is determined according to the number of bits (i.e. device) exceeding the threshold. In the dual threshold approach, in case that a stress state value exceeds the threshold by a high difference, this difference only can trig the modification of the operating mode.
EXAMPLE
[0059] The table below shows an example with 3 devices D1, D2, D3 having each an individual threshold age value DTA. The current stress state value ST of a current device is compared with this threshold DTA to determine the threshold exceeding value TE. In case that the current stress state value ST is below the threshold DTA, the result TE is set to zero. In the other cases, the result value TE can be further normalized in respect with the device threshold age value DTA to take into account the absolute variation of each threshold DTA. In the example, a threshold exceeding rate TER in percent relatively to the device threshold age value DTA is calculated to allow stress intensity evaluation of each device. The normalized threshold exceeding value TE therefore produces a value (the threshold exceeding rate TER) which is in the same scale for each device and can be then compared to each other.
[0060] The next step is to determine a global stress state value by summing all threshold exceeding rates TER (or calculating an average of the threshold exceeding rates TER). This global stress state value can be then compared with a global threshold value to determine the global stress state of the system on chip.
TABLE-US-00001 Device Current Threshold Threshold Devices/ threshold stress state exceeding exceeding system age value value value rate on chip DTA ST TE TER D1 20 15 0 0 D2 35 40 5 14% D3 80 120 40 50% Sum 64% (chip)
[0061] The binary values or the string of binary values representing the stress state values of several devices or the global system on chip stress state value may be stored in a secure memory M such as a non volatile memory, a random access memory or a register monitored by the aging controller AGC. These values may be used for cryptographic purposes to form a unique key to perform cryptographic computations that allow for example the chip to acquire rights in a conditional access system.
[0062] The ring oscillator fuse ROF of one embodiment of the invention operates according to three operating modes as illustrated by
[0066] According to
[0067] A system on chip may feature several thousand ring oscillator fuses ROF which may be used to determine a large number of data bits indicating the stress status of each devices associated with a ring oscillator fuse ROF. Since ring oscillators may be implemented using standard library cells (elementary CMOS inverters), their integration is seamless and may be freely combined with other available cores.
[0068] According to the diagram of
[0069] The binary value of the string obtained after a certain operating time and stress, corresponding to a global stress state value of the system on chip, may be exploited by a management center or a client support service which may act on the behavior of the apparatus using the system on chip. The global stress state may also be used to determine for example devices stress levels for system or apparatus usage history allowing defining necessity of a hardware and/or software update.
[0070] According to an embodiment, the aging controller AGC may control signal timing parameters such as transition time or propagation time of signals produced by a device of the system on chip instead a frequency of a signal generated by an oscillator associated with the device. The transition time of a digital signal corresponds to the time taken by the signal to pass from a low to a high state or vice versa. The propagation time corresponds to the time taken by a digital signal to flow from a first location in a circuit to a second location, this time being measured as a time shift between the two locations. Beside the decrease of an oscillator frequency, a consequence of the aging of a circuit including semiconductors is an increase of the signal transition time or the signal propagation time in relation with a corresponding reference signal.
[0071] In this case, the aging controller stresses devices, during a predetermined time or periodically, by increasing their activity rate with a higher power supply voltage or current for example. Instead of frequency values, the aging controller compares signal timing measured in a stressed device with corresponding timing of a reference signal produced by a device not submitted to stress.
[0072] The method and the aging controller as described above are applicable in an efficient way in many kinds of apparatuses wherein expiries of devices or functionalities have to be managed selectively for security purposes.
[0073] According to an embodiment of the method of the invention, each device comprises an individual threshold age value DTA, the encoding of each device stress state value comprises steps of: [0074] comparing a current stress state value ST of each device with the threshold age value DTA of said device, [0075] if the current stress state value ST is lower than the threshold age value DTA, setting a threshold exceeding value TE to zero, [0076] if the current stress state value ST is equal or higher than the threshold age value DTA, producing a threshold exceeding value TE, [0077] normalizing the threshold exceeding value TE in respect to the threshold age value DTA to obtain a threshold exceeding rate TER for each device, [0078] determining a global stress state value by calculating a sum or an average value of the threshold exceeding rates TER of each device, [0079] comparing the global stress state value with a global threshold value to determine a global stress state of the system on chip, and modifying the global behavior of said system on chip if the global stress state value is equal or higher than the global threshold value.
[0080] Although embodiments of the present disclosure have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader scope of these embodiments. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. The accompanying drawings that form a part hereof, show by way of illustration, and not of limitation, specific embodiments in which the subject matter may be practiced. The embodiments illustrated are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed herein. Other embodiments may be utilized and derived there from, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. This Detailed Description, therefore, is not to be taken in a limiting sense, and the scope of various embodiments is defined only by the appended claims, along with the full range of equivalents to which such claims are entitled.
[0081] Such embodiments of the inventive subject matter may be referred to herein, individually and/or collectively, by the term “invention” merely for convenience and without intending to voluntarily limit the scope of this application to any single inventive concept if more than one is in fact disclosed. Thus, although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the above description.