Abstract:
The invention relates to an electronic circuit having configurable cells piloted by control signals to either adopt a standard operating mode in which they are integrated into a logic circuit, or a test mode in which they supply information to this logic circuit. The circuit of the invention includes a spy circuit designed to detect an abnormal excitation of some of the conductors along which the control signals pass, thus preventing fraudulent extraction of data from the configurable cells.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     1. Field of the Invention  
         [0002]     Overall, the invention relates to synchronized electronic integrated circuits equipped with means for combinational logic, with flip-flops, and with means for testing.  
         [0003]     More precisely, the invention relates to an electronic circuit comprising: a number of logic cells; a number of configurable cells each comprising at least a multiplexer and a flip-flop; and a number of control conductors connected, for some of them at least, to the configurable cells and on which control signals, selectively circulate, received and/or emitted during the operating of a control circuit such as an access control, the configurable cells selectively adopting, depending on the control signals, a standard operating mode in which they are operationally connected to at least some of the logic cells with which they co-operate to create a logic circuit, and a test mode in which these configurable cells are operationally connected in chains to create a shift register equipped with a data input and output.  
         [0004]     2. Discussion of the Related Art  
         [0005]     Nowadays it is common knowledge that the proper working order of the operating elements of an integrated circuit should be checked by imposing and/or by determining, at pre-set times, the data at certain internal points of this integrated circuit.  
         [0006]     Such a test technique of the internal paths of an integrated circuit (designated “scanpath” or “internal scan method”) is for example disclosed in the document by M. Williams and J. Angel, entitled “Enhancing Testability of LSI Circuits Via Test Points and Additional Logic, IEEE Transactions on Computers”, vol. C-22, No. 1. January 1973, which is incorporated herein by reference.  
         [0007]     According to this technique, each of the flip-flops of the logic circuit, for which it is useful to know the state and/or to impose the contents during the standard operating of the integrated circuit, is equipped with a multiplexer at its input.  
         [0008]     The different flip-flops and the multiplexers which are connected to them thus constitute the equivalent number of configurable cells whose access is controlled by these multiplexers.  
         [0009]     The multiplexers of these different configurable cells are jointly controlled by an access controller or “TAP controller” (Test Access Port) which, according to a chosen operating mode, uses this set of configurable cells either as a standard operating circuit integrated into the logic circuit which it creates with the logic cells, or as a test circuit.  
         [0010]     To accomplish this, the TAP controller receives control signals on different control conductors, and/or consigns control signals on different control conductors by which it is connected to the different configurable cells, such as a mode control signal, a chain control signal or a data propagation control signal, which permit the modifying and/or modify the data circulation paths within the integrated circuit and thus allow entry of this data, for future analysis, via the controller.  
         [0011]     In the standard operating mode, the TAP controller therefore pilots the multiplexers of the configurable cells in such a way that the flip-flops of these cells are connected to the surrounding logic cells in order to define one or several operational sub-sets of the integrated circuit.  
         [0012]     In the test mode, which is generally triggered off when the TAP controller receives an impulse control signal in test mode, this controller generates a chain control signal in order to connect, in series, the flip-flops of the configurable cells so as to create a shift register.  
         [0013]     This register includes a serial input and a serial output respectively connected to an output and an input of the TAP controller, as well as a clock input receiving a clock signal in order to give rhythm to the flow of data.  
         [0014]     Initially, the TAP controller loads, in series, the data in the flip-flops of the configurable cells via the shift register input that creates these cells.  
         [0015]     Then, the TAP controller changes the switching of the multiplexers in order to create the operational circuit, and controls the running of one or several clock cycles via this operational circuit. In this stage, the data loaded in the flip-flops of the configurable cells is handled by the operational circuit.  
         [0016]     The controller then, once again, changes the switching of the multiplexers in order to, once again, create the shift register and restores, in series on the output of this shift register, the data stored in the flip-flops of the configurable cells during the last clock cycle.  
         [0017]     Despite the proven interest of this test technique, its practical application can under certain circumstances prove to be problematic, notably on integrated circuits which handle secret data.  
         [0018]     Indeed, as the actuating of the test mode can allow a fraudulent operator to read the contents of the flip-flops of the configurable cells, this test technique has, in principle, the inconvenience of rendering such circuits very vulnerable to fraudulent activity.  
         [0019]     For example, by stopping, at different moments, an internal secret data loading process in the integrated circuit and by off-loading the contents of the shift register, a fraudulent operator can obtain information from the secret data, even reconstitute it.  
         [0020]     By actuating the test mode, a fraudulent operator can also gain write access to the flip-flops of the configurable cells so as to insert fraudulent data, or to put the integrated circuit into an unauthorized configuration. The person can thus, for example, gain access to a register that controls a security element such as a sensor in order to deactivate it. The person can also input erroneous data with the aim of obtaining information on secret data.  
         [0021]     The fraud can have two different strategies; the first consists in taking control of the TAP controller and observing on the external contacts the contents of the shift register cells, and the second consists in taking control of the configurable cells by exciting them via microprobing in order to simulate the piloting of these cells by the control signals that the TAP controller emits.  
         [0022]     Attempted fraud as per the first strategy can be stopped via a technique which is covered by an application being filed at this same time by the holder.  
         [0023]     One purpose of the invention is to propose an electronic circuit designed to foul attempts at fraud in compliance with the aforementioned second strategy.  
       SUMMARY OF THE INVENTION  
       [0024]     The electronic circuit in accordance with the invention, comprises a spy circuit connected to control conductors, running a logic combination of the signals passing through these control conductors, and delivering an output signal selectively adopting a state representative of no faults or a state representative of attempted intrusion, depending on whether the combination of signals passing through the control conductors corresponds, or not, to a combination of control signals visible in an operating state authorized by the electronic circuit.  
         [0025]     For example, it is possible to envisage that the spy circuit runs a combination of signals circulating through a first set of control conductors of which each is assigned to the transmitting of the chain control signal configuring the configurable cells in shift register, and that the spy circuit delivers at least an output signal of a first type adopting a state representative of no faults if, and only if, the signals circulating through the first set of control conductors are simultaneously in the same state.  
         [0026]     It is however also possible, in replacement of or in addition to the previous measure, to envisage that the spy circuit runs a combination of signals circulating through a second set of control conductors of which at least a first one is assigned to the transmitting of the chain control signal, of which at least a second one is assigned to the transmitting of the passing control signal in test mode which actuates the control circuit, and of which at least a third one is assigned to the transmitting of the data propagation control signal in the configurable cells, and that the spy circuit delivers at least an output signal of a second type adopting a state representative of attempted intrusion if one or other of the passing control signals in test mode and propagation control signals is inactive, whereas the chain control signal is active.  
         [0027]     Irrespective of the chosen embodiment, it is advantageous to envisage that the output signal of the spy circuit is guided to the configurable cells and resets the flip-flops of these configurable cells to zero when it adopts its state representative of attempted intrusion. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0028]     Other features and advantages of the invention will become clearer from the following description, given, by way of a non-restrictive example, in reference to the sole annexed FIGURE which is a drawing illustrating an electronic circuit in accordance with two embodiments of the invention, that can be used either separately or jointly, and simultaneously represented. 
     
    
     DETAILED DESCRIPTION  
       [0029]     As discussed above, the invention relates to an electronic circuit equipped with means for internal testing.  
         [0030]     Such a circuit normally comprises a number of logic cells such as cells  10  to  15 , a number of configurable cells such as cells  2   a,    2   w  and  2   z,  a number of control conductors such as conductors K 1  to K 4  and K 21  to K 23 , possibly as well as a control circuit such as an access controller CTAP, which can however also be out with the electronic circuit in question.  
         [0031]     Each of the configurable cells such as  2   a,    2   w  and  2   z  comprises at least a multiplexer  21  and at least a flip-flop  22 .  
         [0032]     The control conductors K 1  to K 4  and K 21  to K 23 , of which at least some are connected to the configurable cells  2   a,    2   w  and  2   z,  perform the transmitting of control signals selectively received and/or emitted during the operating of the control circuit CTAP, such as a passing control signal Test_enable in test mode which actuates the control circuit CTAP, a chain control signal Scan_enable which chains the configurable cells in the form of a shift register, and a control signal Shift_DR which propagates the data in the configurable cells.  
         [0033]     Depending on these control signals or at least some of them, the configurable cells  2   a,    2   w  and  2   z  either adopt a standard operating mode, in which they are operationally connected to at least some of the logic cells  10  to  15  with which they co-operate to create a logic circuit LOG, or a test mode in which these configurable cells  2   a,    2   w  and  2   z  are operationally chain connected to each other to create a shift register.  
         [0034]     The switching of the configurable cells from the standard operating mode to the test mode is performed via the piloting of the multiplexers  21  by means of at least some of the control signals delivered by the control circuit CTAP.  
         [0035]     The shift register  2   a  to  2   z  notably has a data input SRI piloted by a control circuit CTAP output, a data output SRO, connected to a control circuit CTAP input, and a clock input (not specifically represented) in order to receive a clock signal Clk designed to give rhythm to the flow of data in this shift register.  
         [0036]     So as to launch the test, a passing control signal Test_enable in test mode must first of all be consigned to the control circuit CTAP on the control conductor K 4 .  
         [0037]     The control circuit CTAP then configures the configurable cells  2   a  to  2   z  in shift register via the emitting of the chain control signal Scan_enable.  
         [0038]     Then, by emitting the propagation control signal Shift_DR, the control circuit CTAP loads, in series, the test data in the flip-flops  22  of these configurable cells through the SRI input of the shift register.  
         [0039]     Then, by deactivating the chain control signal Scan_enable, the control circuit CTAP reconfigures the configurable cells  2   a  to  2   z  into an operational element of the logic circuit LOG and controls the running of one or several clock cycles via this operational element, which handles the test data.  
         [0040]     By reactivating the chain control signal Scan_enable, the control circuit CTAP once again reconfigures the configurable cells  2   a  to  2   z  in shift register.  
         [0041]     Finally, by emitting the propagation control signal Shift_DR, the control circuit CTAP recuperates, at the SRO output of this register, the data stored in the flip-flops  22  and derived from the handling of the test data by the logic circuit LOG.  
         [0042]     To prevent particularly a fraudulent operator from simulating such a test process by directly applying control signals to the conductors K 1  to K 4  and K 21  to K 23 , and/or data to the SRI input, and from thus fraudulently obtaining the data stored in the flip-flops  22  and derived from the handling of the test data by the logic circuit LOG, the electronic circuit of the invention comprises a spy circuit SPY connected to control conductors such as K 1  to K 4  and K 21  to K 23 .  
         [0043]     This spy circuit SPY, which runs a logic combination of the signals passing through the different control conductors, has the role of delivering an output signal such as SS 1  or SS 2  whose state is representative of no faults or on the contrary of attempted intrusion.  
         [0044]     More precisely, the output signal SS 1  or SS 2  of the spy circuit SPY adopts a state representative of no faults or attempted intrusion depending on whether the combination of signals passing through the spy control conductors corresponds, or not, to a combination of control signals visible in an operating state authorized by the electronic circuit.  
         [0045]     For example, in one of the illustrated embodiments of the invention, the spy circuit SPY runs a combination of signals passing through a first set of control conductors K 21  to K 23  each of which is assigned to the transmitting of the chain control signal Scan_enable which configures the configurable cells in shift register.  
         [0046]     The spy circuit SPY comprises logic gates ET  31  or  32  or EXCLUSIVE  33  and a flip-flop  34  interconnected as illustrated and thus delivers an output signal SS 1  which adopts a state representative of no faults if, and only if, the signals circulating on the control conductors K 21  to K 23  are simultaneously in the same state.  
         [0047]     The spy circuit SPY is thus capable of detecting if one or other of the control conductors K 21  to K 23 , on which the same signal normally circulates, has been attacked with the aim of changing its value.  
         [0048]     In the second illustrated embodiment, and possibly concurrently with the first embodiment, the spy circuit SPY runs a combination of signals circulating on a second set of control conductors K 23 , K 3  and K 4  whose first one, K 23 , is assigned to transmitting the chain control signal Scan_enable configuring the configurable cells in shift register, whose second one, K 4 , is assigned to transmitting the passing control signal Test_enable in test mode which actuates the control circuit, and whose third one, K 3 , is assigned to transmitting the data propagation control signal Shift_DR in the configurable cells.  
         [0049]     This spy circuit SPY comprises logic gates NON-OU  41  and ET  42  interconnected as illustrated and thus delivers an output signal SS 2  which adopts a state representative of attempted intrusion if one or other of the passing control signals Test_enable in test mode and propagation control signals Shift_enable is inactive, whereas the chain control signal Scan_enable is active.  
         [0050]     The spy circuit SPY utilizes the coherence normally existing between the states taken through time by the different internal control signals of the electronic circuit to give warning, in the event of detecting a breakage in this coherence, that one of the control conductors, on which a control signal compelled to this coherence normally passes, has been attacked with the aim of giving it a different value to that envisaged by this same coherence.  
         [0051]     In any event, the output signal SS 1  and/or SS 2  of the spy circuit SPY is advantageously guided to the configurable cells  2   a,    2   w  and  2   z  and resets the flip-flops  22  of these configurable cells to zero when it adopts its state representative of attempted intrusion.  
         [0052]     Having thus described at least one illustrative embodiment of the invention, various alterations, modifications, and improvements will readily occur to those skilled in the art. Such alterations, modifications, and improvements are intended to be within the spirit and scope of the invention. Accordingly, the foregoing description is by way of example only and is not intended as limiting. The invention is limited only as defined in the following claims and the equivalents thereto.