WO2018066246A1 - 半導体回路、半導体回路の制御方法、および電子機器 - Google Patents
半導体回路、半導体回路の制御方法、および電子機器 Download PDFInfo
- Publication number
- WO2018066246A1 WO2018066246A1 PCT/JP2017/030087 JP2017030087W WO2018066246A1 WO 2018066246 A1 WO2018066246 A1 WO 2018066246A1 JP 2017030087 W JP2017030087 W JP 2017030087W WO 2018066246 A1 WO2018066246 A1 WO 2018066246A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- period
- memory
- circuit
- unit
- Prior art date
Links
- 239000004065 semiconductor Substances 0.000 title claims abstract description 142
- 238000000034 method Methods 0.000 title claims description 17
- 238000007689 inspection Methods 0.000 claims description 98
- 238000012937 correction Methods 0.000 claims description 79
- 238000012360 testing method Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 description 23
- 230000004048 modification Effects 0.000 description 21
- 238000012986 modification Methods 0.000 description 21
- 238000012805 post-processing Methods 0.000 description 19
- 238000007781 pre-processing Methods 0.000 description 18
- 230000005415 magnetization Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000005291 magnetic effect Effects 0.000 description 4
- 230000000630 rising effect Effects 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000002347 injection Methods 0.000 description 3
- 239000007924 injection Substances 0.000 description 3
- 230000007257 malfunction Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000004888 barrier function Effects 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 239000003302 ferromagnetic material Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C19/00—Digital stores in which the information is moved stepwise, e.g. shift registers
- G11C19/02—Digital stores in which the information is moved stepwise, e.g. shift registers using magnetic elements
- G11C19/08—Digital stores in which the information is moved stepwise, e.g. shift registers using magnetic elements using thin films in plane structure
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3177—Testing of logic operation, e.g. by logic analysers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C14/00—Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C19/00—Digital stores in which the information is moved stepwise, e.g. shift registers
- G11C19/28—Digital stores in which the information is moved stepwise, e.g. shift registers using semiconductor elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C29/30—Accessing single arrays
- G11C29/32—Serial access; Scan testing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
- G11C29/4401—Indication or identification of errors, e.g. for repair for self repair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/70—Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
- H01L21/77—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate
- H01L21/78—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices
- H01L21/82—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components
- H01L21/822—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components the substrate being a semiconductor, using silicon technology
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L27/00—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
- H01L27/02—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
- H01L27/04—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C29/30—Accessing single arrays
- G11C2029/3202—Scan chain
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C2029/5004—Voltage
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01F—MAGNETS; INDUCTANCES; TRANSFORMERS; SELECTION OF MATERIALS FOR THEIR MAGNETIC PROPERTIES
- H01F10/00—Thin magnetic films, e.g. of one-domain structure
- H01F10/32—Spin-exchange-coupled multilayers, e.g. nanostructured superlattices
- H01F10/324—Exchange coupling of magnetic film pairs via a very thin non-magnetic spacer, e.g. by exchange with conduction electrons of the spacer
- H01F10/3286—Spin-exchange coupled multilayers having at least one layer with perpendicular magnetic anisotropy
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01F—MAGNETS; INDUCTANCES; TRANSFORMERS; SELECTION OF MATERIALS FOR THEIR MAGNETIC PROPERTIES
- H01F10/00—Thin magnetic films, e.g. of one-domain structure
- H01F10/32—Spin-exchange-coupled multilayers, e.g. nanostructured superlattices
- H01F10/324—Exchange coupling of magnetic film pairs via a very thin non-magnetic spacer, e.g. by exchange with conduction electrons of the spacer
- H01F10/329—Spin-exchange coupled multilayers wherein the magnetisation of the free layer is switched by a spin-polarised current, e.g. spin torque effect
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10B—ELECTRONIC MEMORY DEVICES
- H10B61/00—Magnetic memory devices, e.g. magnetoresistive RAM [MRAM] devices
- H10B61/20—Magnetic memory devices, e.g. magnetoresistive RAM [MRAM] devices comprising components having three or more electrodes, e.g. transistors
- H10B61/22—Magnetic memory devices, e.g. magnetoresistive RAM [MRAM] devices comprising components having three or more electrodes, e.g. transistors of the field-effect transistor [FET] type
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N—ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N50/00—Galvanomagnetic devices
- H10N50/80—Constructional details
Definitions
- the present disclosure relates to a semiconductor circuit having a nonvolatile memory element, a method for controlling such a semiconductor circuit, and an electronic device including such a semiconductor circuit.
- a nonvolatile memory element may be deteriorated over time due to rewriting over many years. Therefore, it is desired that the influence on the circuit operation can be suppressed even when such aged deterioration occurs.
- a semiconductor circuit includes a sequential circuit unit and a first memory.
- the sequential circuit portion includes a plurality of logic circuit portions each including a flip-flop and a nonvolatile memory element.
- the memory elements in the plurality of logic circuit portions indicate voltage states in the plurality of logic circuit portions.
- a store operation for storing each of them and a shift operation in which flip-flops in a plurality of logic circuit sections operate as shift registers are performed.
- the first memory stores the first data output from the shift register by the shift operation or the second data corresponding to the first data in the first period.
- the first memory stores the first data output from the shift register by the shift operation or the second data corresponding to the first data in the first period.
- a method for controlling a semiconductor circuit includes: a plurality of logic circuits in a sequential circuit unit each having a plurality of logic circuit units each including a flip-flop and a nonvolatile memory element;
- the storage element in each unit performs a store operation in which the voltage states in the plurality of logic circuit units are respectively stored, and a shift operation in which the flip-flops in the plurality of logic circuit units operate as a shift register.
- the first data output from the shift register or the second data corresponding to the first data is stored in the first memory.
- An electronic apparatus includes a semiconductor circuit and a battery that supplies a power supply voltage to the semiconductor circuit.
- the semiconductor circuit includes a sequential circuit unit and a first memory.
- the sequential circuit portion includes a plurality of logic circuit portions each including a flip-flop and a nonvolatile memory element.
- the memory elements in the plurality of logic circuit portions indicate voltage states in the plurality of logic circuit portions.
- a store operation for storing each of them and a shift operation in which flip-flops in a plurality of logic circuit sections operate as shift registers are performed.
- the first memory stores the first data output from the shift register by the shift operation or the second data corresponding to the first data in the first period.
- the first memory stores the first data output from the shift register by the shift operation or the second data corresponding to the first data in the first period.
- the store operation and the shift operation are performed in the sequential circuit unit in the first period.
- the voltage states in the plurality of logic circuit units are stored by the storage elements in the plurality of logic circuit units, respectively.
- flip-flops in a plurality of logic circuit portions operate as shift registers. Then, the first data output from the shift register by the shift operation or the second data corresponding to the first data is stored in the first memory.
- each logic circuit unit is provided with a nonvolatile memory element, and the first output from the shift register by the shift operation Since the first data or the second data is stored in the first memory, the influence on the circuit operation can be suppressed even when the non-volatile storage element is deteriorated over time.
- the effect described here is not necessarily limited, and there may be any effect described in the present disclosure.
- FIG. 2 is a circuit diagram illustrating a configuration example of a sequential circuit unit illustrated in FIG. 1.
- FIG. 3 is a circuit diagram illustrating a configuration example of a flip-flop and a storage unit illustrated in FIG. 2.
- FIG. 2 is an explanatory diagram illustrating an example of normal operation of the semiconductor circuit illustrated in FIG. 1.
- FIG. 3 is an explanatory diagram illustrating an example of a sleep operation of the semiconductor circuit illustrated in FIG. 1.
- FIG. 3 is an explanatory diagram illustrating an example of a scan test operation of the semiconductor circuit illustrated in FIG. 1. It is a flowchart showing an example of the pre-processing operation
- FIG. 15 is a flowchart illustrating an example of a preprocessing operation of the semiconductor circuit illustrated in FIG. 15 is a flowchart illustrating an example of a post-processing operation of the semiconductor circuit illustrated in FIG. It is a flowchart showing an example of the post-processing operation
- FIG. 1 illustrates a configuration example of a semiconductor circuit (semiconductor circuit 1) according to an embodiment.
- the semiconductor circuit 1 is configured to facilitate evaluation by performing a so-called scan test. Note that a method for controlling a semiconductor circuit according to an embodiment of the present disclosure is embodied by the present embodiment and will be described together.
- the semiconductor circuit 1 includes a power transistor 51, N combinational circuit units 10 (combination circuit units 10 (1) to 10 (N)), and (N ⁇ 1) sequential circuit units 20 (sequential circuit units 20 ( 1) to 20 (N-1)), selection units 52 and 53, an inspection unit 54, a memory 55, and a control unit 56.
- the power transistor 51 is a P-type MOS (Metal Oxide Semiconductor) transistor, a gate is supplied with a control signal, a source is supplied with a power supply voltage VDD, and a drain is provided with N combinational circuit units. 10. Connected to (N ⁇ 1) sequential circuit units 20, selection units 52 and 53, and inspection unit 54.
- P-type MOS Metal Oxide Semiconductor
- the semiconductor circuit 1 can realize the sleep operation. That is, in the sleep operation, the power supply transistor 51 is turned off to supply power to the N combinational circuit units 10, the (N ⁇ 1) sequential circuit units 20, the selection units 52 and 53, and the inspection unit 54. Stop. In normal operation, the power supply transistor 51 is turned on to supply the power supply voltage VDD to these circuits. In the semiconductor circuit 1, power consumption can be reduced by such so-called power gating.
- the combinational circuit unit 10 is configured by a so-called combinational circuit in which an output signal is uniquely determined only by a signal input at that time.
- the combinational circuit unit 10 generates a plurality of signals based on the supplied plurality of signals.
- the combinational circuit unit 10 (1) generates M signals DI (1) to DI (M) based on a plurality of signals supplied from the outside of the semiconductor circuit 1,
- the signals DI (1) to DI (M) are supplied to the sequential circuit unit 20 (1).
- the combinational circuit unit 10 (2) generates a plurality of signals based on the M signals DO (1) to DO (M) supplied from the sequential circuit unit 20 (1), and generates the generated plurality of signals. Is supplied to the sequential circuit section 20 (2).
- the combinational circuit unit 10 (N) generates a plurality of signals based on the plurality of signals supplied from the sequential circuit unit 20 (N ⁇ 1), and supplies the generated plurality of signals to the outside of the semiconductor circuit 1. It is supposed to be. Thus, in the semiconductor circuit 1, the combinational circuit units 10 (1) to 10 (N) and the sequential circuit units 20 (1) to 20 (N ⁇ 1) are alternately arranged.
- the sequential circuit unit 20 is configured by a so-called sequential circuit that generates an output signal based on not only a signal input at that time but also a previously input signal.
- the sequential circuit section 20 performs different operations according to the scan enable signal SE.
- the sequential circuit unit 20 when the scan enable signal SE is “0” (inactive), the sequential circuit unit 20 includes a plurality of signals and clock signals supplied from the preceding combinational circuit unit 10. A plurality of signals are generated based on CLK, and the generated plurality of signals are supplied to the subsequent combinational circuit unit 10.
- the sequential circuit unit 20 (1) includes a plurality of signals DI (1) to DI (M) and a clock signal CLK supplied from the preceding combinational circuit unit 10 (1). Signals DO (1) to DO (M) are generated, and the plurality of signals DO (1) to DO (M) are supplied to the subsequent combinational circuit unit 10 (2).
- the sequential circuit unit 20 (2) generates a plurality of signals based on the plurality of signals and the clock signal CLK supplied from the combination circuit unit 10 (2) at the previous stage, and generates the plurality of signals as a combination circuit at the subsequent stage. Supply to section 10 (3). The same applies to the sequential circuit units 20 (3) to 20 (N-2). Then, the sequential circuit unit 20 (N ⁇ 1) generates a plurality of signals based on the plurality of signals and the clock signal CLK supplied from the preceding combinational circuit unit 10 (N ⁇ 1), and generates the generated plurality of signals. Are supplied to the subsequent combinational circuit unit 10 (N).
- the sequential circuit unit 20 performs a scan shift operation when the scan enable signal SE is “1” (active). Specifically, for example, the sequential circuit unit 20 (1) receives the signal S (1) supplied from the selection unit 52 and generates a signal S (2) by operating as a shift register. S (2) is supplied to the subsequent sequential circuit section 20 (2). The sequential circuit unit 20 (2) receives the signal S (2) and operates as a shift register to generate the signal S (3). The sequential circuit unit 20 (3) ). The same applies to the sequential circuit units 20 (3) to 20 (N-2). Then, the sequential circuit unit 20 (N ⁇ 1) receives the signal S (N ⁇ 1) supplied from the sequential circuit unit 20 (N ⁇ 2) and operates as a shift register to generate the signal S (N). The signal S (N) is generated and supplied to the selection unit 53.
- FIG. 2 shows a configuration example of the sequential circuit unit 20 (1).
- the sequential circuit unit 20 (1) includes M selectors 21 (selectors 21 (1) to 21 (M)), M flip-flops 22 (flip-flops 22 (1) to 22 (M)), M Storage units 23 (storage units 23 (1) to 23 (M)).
- the M selectors 21, the M flip-flops 22, and the M storage units 23 are provided corresponding to the M signals DI (1) to DI (M).
- the selector 21 selects one of the signal input to the first input terminal and the signal input to the second input terminal based on the scan enable signal SE, and outputs the selected signal. Is. Specifically, for example, when the scan enable signal SE is “0” (inactive), the selector 21 (1) selects the signal DI (1) and outputs it as the signal D (1). When the scan enable signal SE is “1” (active), the signal S (1) is selected and output as the signal D (1). When the scan enable signal SE is “0” (inactive), the selector 21 (2) selects the signal DI (2) and outputs it as the signal D (2), and the scan enable signal SE is “1”. In the case of “(active)”, the signal DO (1) is selected and output as the signal D (2).
- the selector 21 (M) selects the signal DI (M) and outputs it as the signal D (M).
- the signal DO (M ⁇ 1) is selected and output as the signal D (M).
- the flip-flop 22 is a D-type flip-flop, and samples the signal input to the data input terminal D based on the rising edge of the clock signal CLK and outputs the sampling result from the data output terminal Q. .
- the flip-flop 22 (1) samples the output signal D (1) of the selector 21 (1) based on the rising edge of the clock signal CLK, and outputs the sampling result as the signal DO (1).
- the flip-flop 22 (2) samples the output signal D (2) of the selector 21 (2) based on the rising edge of the clock signal CLK, and outputs the sampling result as the signal DO (2).
- the flip-flop 22 (M) samples the output signal D (M) of the selector 21 (M) based on the rising edge of the clock signal CLK, and outputs the sampling result as a signal DO (M).
- the signal S (2) is output.
- the storage unit 23 is a nonvolatile storage unit, and stores the voltage state of the corresponding flip-flop 22 based on the signals SR and CTRL. Specifically, the storage unit 23 (1) stores the voltage state of the flip-flop 22 (1) based on the signals SR and CTRL (store operation) or based on the stored information. The voltage state is set (restoration operation). The same applies to the storage units 23 (2) to 23 (M).
- FIG. 3 shows a configuration example of the flip-flop 22 (1) and the storage unit 23 (1). The same applies to the flip-flops 22 (2) to 22 (M) and the storage units 23 (2) to 23 (M).
- the flip-flop 22 (1) includes inverters 24 and 25, a master latch 30, and a slave latch 40.
- the storage unit 23 (1) includes transistors 46 and 47 and storage elements 48 and 49.
- the inverter 24 generates the clock signal CB by inverting the clock signal CLK.
- the inverter 25 generates the clock signal C by inverting the clock signal CB.
- the master latch 30 has an inverter 31, a transmission gate 32, inverters 33 and 34, and a transmission gate 35.
- the input terminal of the inverter 31 is connected to the data input terminal D of the flip-flop 22 (1) and the signal D (1) is supplied, and the output terminal is connected to one end of the transmission gate 32.
- One end of the transmission gate 32 is connected to the output terminal of the inverter 31, and the other end is connected to the node N31.
- the transmission gate 32 turns on between one end and the other end when the clock signal C is at a low level, and turns off between one end and the other end when the clock signal C is at a high level. Is.
- the input terminal of the inverter 33 is connected to the node N31, and the output terminal is connected to the node N32.
- the input terminal of the inverter 34 is connected to the node N 32, and the output terminal is connected to one end of the transmission gate 35.
- One end of the transmission gate 35 is connected to the output terminal of the inverter 34, and the other end is connected to the node N31.
- the transmission gate 35 turns on between one end and the other end when the clock signal C is at a high level, and turns off between one end and the other end when the clock signal C is at a low level. Is.
- the slave latch 40 has a transmission gate 41, inverters 42 and 43, a transmission gate 44, and an inverter 45.
- One end of the transmission gate 41 is connected to the node N32, and the other end is connected to the node N41.
- the transmission gate 41 turns on between one end and the other end when the clock signal C is at a high level, and turns off between one end and the other end when the clock signal C is at a low level. Is.
- the input terminal of the inverter 42 is connected to the node N41, and the output terminal is connected to the node N42.
- the input terminal of the inverter 43 is connected to the node N 42, and the output terminal is connected to one end of the transmission gate 44.
- One end of the transmission gate 44 is connected to the output terminal of the inverter 43, and the other end is connected to the node N41.
- the transmission gate 44 turns on between one end and the other end when the clock signal C is at a low level, and turns off between one end and the other end when the clock signal C is at a high level. Is.
- the input terminal of the inverter 45 is connected to the node N42, the output terminal is connected to the data output terminal Q of the flip-flop 22 (1), and the inverter 45 outputs the signal DO (1).
- Transistors 46 and 47 are N-type MOS transistors in this example.
- the drain of the transistor 46 is connected to the node N 41, the signal SR is supplied to the gate, and the source is connected to one end of the storage element 48.
- the drain of the transistor 47 is connected to the node N 42, the signal SR is supplied to the gate, and the source is connected to one end of the storage element 49.
- the storage elements 48 and 49 are non-volatile storage elements.
- spin injection magnetization reversal type STT that stores information by changing the direction of magnetization of a free layer F (described later) by spin injection.
- a Spin Transfer Torque magnetic tunnel junction (MTJ) element One end of the memory element 48 is connected to the source of the transistor 46, and the signal CTRL is supplied to the other end.
- One end of the memory element 49 is connected to the source of the transistor 47, and the signal CTRL is supplied to the other end.
- the memory element 48 includes a pinned layer P, a tunnel barrier layer I, and a free layer F.
- the pinned layer P is composed of a ferromagnetic material in which the direction of the magnetization PJ is fixed, for example, in the direction perpendicular to the film surface.
- the free layer F is composed of a ferromagnetic material whose magnetization FJ direction changes, for example, in the direction perpendicular to the film surface in accordance with the inflowing spin-polarized current.
- the tunnel barrier layer I functions to cut the magnetic coupling between the pinned layer P and the free layer F and to cause a tunnel current to flow.
- the memory element 48 for example, when a current is passed from the free layer F to the pinned layer P, polarized electrons having a moment (spin) in the same direction as the magnetization PJ of the pinned layer P are transferred from the pinned layer P to the free layer F.
- the direction of the magnetization FJ of the free layer F becomes the same direction (parallel state) as the direction of the magnetization PJ of the pinned layer P.
- the resistance value between both ends is low (low resistance state RL).
- the resistance state changes between the high resistance state RH and the low resistance state RL by changing the direction of the magnetization FJ of the free layer F in accordance with the direction in which the current flows.
- the storage elements 48 and 49 can store information by setting the resistance state in this way.
- the storage unit 23 is provided corresponding to each flip-flop 22.
- the storage unit 23 stores the voltage state of the flip-flop 22 by performing a store operation immediately before stopping the power supply in the sleep operation.
- storage part 23 sets the voltage state of the flip-flop 22 based on the information memorize
- the voltage state of each flip-flop 22 can be returned to the voltage state before the power supply is stopped in a short time after the power supply is resumed.
- the selection unit 52 selects one of the signal SI supplied from the outside of the semiconductor circuit 1 and the signal SA supplied from the inspection unit 54 based on the control signal supplied from the control unit 56.
- the selected signal is output as the signal S (1).
- the selection unit 53 supplies the signal S (N) supplied from the sequential circuit unit 20 (N-1) to the inspection unit 54 as the signal SB, or The signal is output to the outside of the semiconductor circuit 1 as a signal SO.
- the inspection unit 54 resumes power supply in the sleep operation, and each storage unit 23 in the sequential circuit units 20 (1) to 20 (N-1) performs a restore operation, and then stored in each flip-flop 22. Information is examined. Specifically, as will be described later, the inspection unit 54 first acquires information stored in each flip-flop 22 before stopping power supply, and based on the acquired information, an ECC (ErrorrectCorrecting Code ) To generate an error correction code CODE1. Then, the inspection unit 54 stores the error correction code CODE1 in the memory 55. Then, after the power supply is restarted and each storage unit 23 performs the restore operation, the inspection unit 54 acquires the information stored in each flip-flop 22 again, and the error correction code CODE2 based on the acquired information. Is generated.
- ECC ErrorrectCorrecting Code
- the inspection unit 54 inspects information stored in each flip-flop 22 by comparing the error correction code CODE2 with the error correction code CODE1 stored in the memory 55. When the error correction code CODE2 does not match the error correction code CODE1, the inspection unit 54 generates information stored in each flip-flop 22 before the power supply is stopped based on the error correction code CODE1. This information is supplied to each flip-flop 22.
- the memory 55 is configured using SRAM (Static Random Access Memory), and stores the error correction code CODE1 generated by the inspection unit 54.
- the memory 55 is configured so that the power supply voltage VDD is supplied even when the power supply transistor 51 is turned off.
- the memory 55 is configured using SRAM.
- the present invention is not limited to this. Instead, the memory 55 is configured using volatile memory such as DRAM (Dynamic Random Access Memory). May be. Moreover, you may comprise using a non-volatile memory.
- the control unit 56 controls the operations of the sequential circuit units 20 (1) to 20 (N-1), the selection units 52 and 53, the inspection unit 54, the memory 55, and the power transistor 51.
- the control unit 56 may be configured by hardware, or may be configured by using a processor capable of executing a program.
- the selector 21, the flip-flop 22, and the storage unit 23 correspond to a specific example of “logic circuit unit” in the present disclosure.
- the sequential circuit unit 20 corresponds to a specific example of “sequential circuit unit” in the present disclosure.
- the combinational circuit unit 10 corresponds to a specific example of “first combinational circuit unit” and “second combinational circuit unit” in the present disclosure.
- the memory 55 corresponds to a specific example of “first memory” in the present disclosure.
- the error correction code CODE1 corresponds to a specific example of “first error correction code” in the present disclosure.
- the error correction code CODE2 corresponds to a specific example of “second error correction code” in the present disclosure.
- FIG. 4 shows the operation of the semiconductor circuit 1 when the normal operation OP1 is performed.
- main signals in the normal operation OP1 are indicated by thick lines.
- the combinational circuit unit 10 (1) generates M signals DI (1) to DI (M) based on a plurality of signals supplied from the outside of the semiconductor circuit 1.
- the sequential circuit unit 20 (1) includes a plurality of signals DO (1) to DO (M) based on the plurality of signals DI (1) to DI (M) and the clock signal CLK supplied from the combinational circuit unit 10 (1). ) Is generated.
- the combinational circuit unit 10 (2) generates a plurality of signals based on the M signals DO (1) to DO (M) supplied from the sequential circuit unit 20 (1).
- the sequential circuit unit 20 (N ⁇ 1) generates a plurality of signals based on the plurality of signals and the clock signal CLK supplied from the combinational circuit unit 10 (N ⁇ 1).
- the combinational circuit unit 10 (N) generates a plurality of signals based on the plurality of signals supplied from the sequential circuit unit 20 (N ⁇ 1), and supplies the generated plurality of signals to the outside of the semiconductor circuit 1. To do.
- FIG. 5 shows the operation of the semiconductor circuit 1 when the sleep operation OP2 is performed.
- main signals in the sleep operation OP2 are indicated by thick lines.
- the semiconductor circuit 1 performs the preprocessing operation OP21 before stopping the power supply, and then stops the power supply. Then, the semiconductor circuit 1 performs the post-processing operation OP22 after restarting the power supply.
- the sequential circuit units 20 (1) to 20 (N-1) perform a scan shift operation.
- the selection unit 53 supplies the signal S (N) supplied from the sequential circuit unit 20 (N ⁇ 1) to the inspection unit 54 as the signal SB.
- the inspection unit 54 generates an error correction code CODE1 by performing ECC processing based on the signal SB, and stores the error correction code CODE1 in the memory 55.
- each storage unit 23 of the sequential circuit units 20 (1) to 20 (N-1) stores the voltage state of the corresponding flip-flop 22 by performing a store operation.
- the power transistor 51 is turned off based on a control signal from the control unit 56. As a result, the supply of power to the N combinational circuit units 10, the (N ⁇ 1) sequential circuit units 20, the selection units 52 and 53, and the inspection unit 54 is stopped.
- the power transistor 51 is turned on based on a control signal from the control unit 56.
- the supply of power to the N combinational circuit units 10, the (N ⁇ 1) sequential circuit units 20, the selection units 52 and 53, and the inspection unit 54 is resumed.
- each storage unit 23 of the sequential circuit units 20 (1) to 20 (N-1) performs a restore operation, so that a response can be made based on the information stored in the storage unit 23.
- the voltage state of the flip-flop 22 to be set is set.
- the sequential circuit units 20 (1) to 20 (N ⁇ 1) perform a scan shift operation.
- the selection unit 53 supplies the signal S (N) supplied from the sequential circuit unit 20 (N ⁇ 1) to the inspection unit 54 as the signal SB.
- the inspection unit 54 generates an error correction code CODE2 by performing ECC processing based on the signal SB, and compares the error correction code CODE2 with the error correction code CODE1 stored in the memory 55. The information stored in each flip-flop 22 is examined. When the error correction code CODE2 does not match the error correction code CODE1, the inspection unit 54 generates information stored in each flip-flop 22 before the sleep operation based on the error correction code CODE1. Output as signal SA.
- the selection unit 52 supplies the signal SA supplied from the inspection unit 54 to the sequential circuit unit 20 (1) as the signal S (1). Then, the sequential circuit units 20 (1) to 20 (N-1) perform a scan shift operation.
- FIG. 6 shows the operation of the semiconductor circuit 1 when the scan test operation OP3 is performed.
- main signals in the scan test operation OP3 are indicated by bold lines.
- the selection unit 52 supplies the signal SI supplied from the outside (for example, a tester) as the signal S (1) to the sequential circuit unit 20 (1).
- the sequential circuit units 20 (1) to 20 (N-1) perform a scan shift operation. As a result, information included in the signal supplied from the outside is set in each flip-flop 22 of the sequential circuit units 20 (1) to 20 (N-1).
- the semiconductor circuit 1 performs the normal operation OP1 (FIG. 4) and is supplied with a clock signal CLK for one pulse from the outside. Thereafter, the sequential circuit units 20 (1) to 20 (N ⁇ 1) perform the scan shift operation again.
- the selection unit 53 supplies the signal S (N) supplied from the sequential circuit unit 20 (N ⁇ 1) to the outside (for example, a tester) as the signal SO.
- the tester sets the input data of each combinational circuit unit 10 and acquires the output data of each combinational circuit unit 10.
- the tester compares the output data with the expected data.
- the inspection of the semiconductor circuit 1 can be efficiently performed by individually inspecting the combinational circuit units 10 (1) to 10 (N) in this way.
- FIG. 7 shows an example of the preprocessing operation OP21.
- the inspection unit 54 generates an error correction code CODE1 based on the information stored in each flip-flop 22, stores the error correction code CODE1 in the memory 55, and the storage unit 23 stores the error correction code CODE1. Perform the action. This operation will be described in detail below.
- the inspection unit 54 acquires information stored in each flip-flop 22 and generates an error correction code CODE1 based on the acquired information (step S1). Specifically, first, the sequential circuit units 20 (1) to 20 (N ⁇ 1) perform a scan shift operation based on the control signal supplied from the control unit 56. Then, based on the control signal supplied from the control unit 56, the selection unit 53 supplies the signal S (N) supplied from the sequential circuit unit 20 (N-1) to the inspection unit 54 as the signal SB. Then, the inspection unit 54 generates an error correction code CODE1 by performing ECC processing based on the signal SB.
- the inspection unit 54 outputs the signal SB as it is as the signal SA. Then, based on the control signal supplied from the control unit 56, the selection unit 52 supplies this signal SA to the sequential circuit unit 20 (1) as a signal S (1).
- the sequential circuit units 20 (1) to 20 (N ⁇ 1) continue the scan shift operation until the information stored in each flip-flop 22 becomes the same information as before the scan shift operation is started.
- the inspection unit 54 stores the error correction code CODE1 generated in step S1 in the memory 55 based on the control signal supplied from the control unit 56 (step S2).
- control unit 56 turns on the transistors 46 and 47 of each storage unit 23 in the sequential circuit units 20 (1) to 20 (N ⁇ 1) by setting the signal SR to a high level (step S3). Accordingly, each storage unit 23 is electrically connected to the corresponding flip-flop 22.
- each storage unit 23 in the sequential circuit units 20 (1) to 20 (N-1) performs a store operation (step S4).
- 8A and 8B show an operation example of the slave latch 40 of the flip-flop 22 and the storage unit 23 in the store operation. 8A and 8B, the transmission gates 41 and 44 and the transistors 46 and 47 are depicted as switches indicating their operating states.
- the clock signal CLK is stopped and fixed at a low level.
- the clock signal C becomes low level and the clock signal CB becomes high level.
- the transmission gate 41 is turned off and the transmission gate 44 is turned on.
- the inverter 42 inverts the voltage of the node N41 and outputs the inverted result to the node N42
- the inverter 43 inverts the voltage of the node N42, and the inverted result is transmitted to the transmission gate 44.
- the slave latch 40 functions as a so-called bistable circuit.
- the control unit 56 sets the voltage of the signal CTRL to the low level voltage VL (ground level) (FIG. 8A).
- VL low level voltage
- the control unit 56 sets the voltage of the signal CTRL to the low level voltage VL (ground level) (FIG. 8A).
- VN41 at the node N41 is the high level voltage VH
- the voltage VN42 at the node N42 is the low level voltage VL. Therefore, the store current Istore1 flows in the order of the inverter 43, the transmission gate 44, the transistor 46, and the storage element 48.
- the store current Istore1 flows from the pinned layer P to the free layer F, so that the direction of the magnetization FJ of the free layer F is opposite to the direction of the magnetization PJ of the pinned layer P (anti-parallel state).
- the resistance state of the memory element 48 becomes the high resistance state RH.
- the control unit 56 sets the voltage of the signal CTRL to the high level voltage VH (FIG. 8B).
- a current flows to the other of the storage elements 48 and 49 according to the information stored in the slave latch 40.
- the store current Istore2 flows in the order of the storage element 49, the transistor 47, the transmission gate 44, and the inverter 42.
- the store current Istore2 flows from the free layer F to the pinned layer P, so the direction of the magnetization FJ of the free layer F is the same direction (parallel state) as the direction of the magnetization PJ of the pinned layer P.
- the resistance state of the memory element 49 becomes the low resistance state RL.
- each storage unit 23 stores the voltage state of the corresponding flip-flop 22.
- control unit 56 turns off the transistors 46 and 47 of each storage unit 23 in the sequential circuit units 20 (1) to 20 (N ⁇ 1) by setting the signal SR to a low level (step S5). ). Thereby, each storage unit 23 is electrically disconnected from the corresponding flip-flop 22.
- control unit 56 turns off the power transistor 51 (step S6).
- the supply of power to the N combinational circuit units 10, the (N ⁇ 1) sequential circuit units 20, the selection units 52 and 53, and the inspection unit 54 is stopped.
- the power supply to the memory 55 and the control unit 56 is maintained.
- the preprocessing operation OP21 is completed.
- the semiconductor circuit 1 performs a post-processing operation OP22 after a lapse of time.
- FIG. 9 shows an example of the post-processing operation OP22.
- the storage unit 23 performs a restore operation, and thereafter the inspection unit 54 inspects information stored in each flip-flop 22. This operation will be described in detail below.
- control unit 56 turns on the transistors 46 and 47 of each storage unit 23 in the sequential circuit units 20 (1) to 20 (N ⁇ 1) by setting the signal SR to a high level (step S11). Accordingly, each storage unit 23 is electrically connected to the corresponding flip-flop 22.
- control unit 56 turns on the power supply transistor 51 (step S12). As a result, the supply of power to the N combinational circuit units 10, the (N ⁇ 1) sequential circuit units 20, the selection units 52 and 53, and the inspection unit 54 is resumed.
- each storage unit 23 in the sequential circuit units 20 (1) to 20 (N-1) performs a restore operation (step S13).
- FIG. 10 illustrates an operation example of the slave latch 40 of the flip-flop 22 and the storage unit 23 in the restore operation.
- the clock signal CLK is stopped and fixed at a low level.
- the transmission gate 41 is turned off and the transmission gate 44 is turned on.
- the control unit 56 sets the voltage of the signal CTRL to the low level voltage VL (ground level).
- the node N41 is grounded via the transistor 46 and the storage element 48, and the node N42 is grounded via the transistor 47 and the storage element 49.
- the voltage state in the slave latch 40 is determined according to the resistance state of the storage elements 48 and 49.
- the resistance state of the memory element 48 is the high resistance state RH
- the resistance state of the memory element 49 is the low resistance state RL. Therefore, since the node N41 is pulled down by a high resistance value and the node N42 is pulled down by a low resistance value, the voltage VN41 of the node N41 becomes the high level voltage VH, and the voltage VN42 of the node N42 becomes the low level voltage VL.
- each storage unit 23 sets the voltage state of the corresponding flip-flop 22 based on the stored information.
- control unit 56 turns off the transistors 46 and 47 of each storage unit 23 in the sequential circuit units 20 (1) to 20 (N ⁇ 1) by setting the signal SR to a low level (step S14). ). Thereby, each storage unit 23 is electrically disconnected from the corresponding flip-flop 22.
- the inspection unit 54 acquires information stored in each flip-flop 22 and generates an error correction code CODE2 based on the acquired information (step S15). Specifically, first, the sequential circuit units 20 (1) to 20 (N ⁇ 1) perform a scan shift operation based on the control signal supplied from the control unit 56. Then, based on the control signal supplied from the control unit 56, the selection unit 53 supplies the signal S (N) supplied from the sequential circuit unit 20 (N-1) to the inspection unit 54 as the signal SB. Then, the inspection unit 54 generates an error correction code CODE2 by performing ECC processing based on the signal SB.
- the inspection unit 54 outputs the signal SB as it is as the signal SA. Then, based on the control signal supplied from the control unit 56, the selection unit 52 supplies this signal SA to the sequential circuit unit 20 (1) as a signal S (1).
- the sequential circuit units 20 (1) to 20 (N ⁇ 1) continue the scan shift operation until the information stored in each flip-flop 22 becomes the same information as before the scan shift operation is started.
- the inspection unit 54 compares the error correction code CODE2 generated in step S15 with the error correction code CODE1 stored in the memory 55 (step S16). If the error correction codes CODE1, CODE2 match ("Y" in step S17), this flow ends.
- the inspection unit 54 stores each flip-flop 22 based on the error correction code CODE1 before the power supply is stopped.
- the generated information is generated, and the generated information is supplied to the sequential circuit units 20 (1) to 20 (N-1) (step S18).
- the inspection unit 54 outputs the generated information as a signal SA.
- the selection unit 52 supplies the signal SA supplied from the inspection unit 54 to the sequential circuit unit 20 (1) as the signal S (1).
- the sequential circuit units 20 (1) to 20 (N-1) perform a scan shift operation.
- the semiconductor circuit 1 sets the flip-flops 22 of the sequential circuit units 20 (1) to 20 (N ⁇ 1) based on the information generated by the inspection unit 54.
- the storage unit 23 for storing the voltage state of each flip-flop 22 since the storage unit 23 for storing the voltage state of each flip-flop 22 is provided, the voltage state of each flip-flop 22 can be obtained in a short time and with less energy after the power supply is resumed. Can be returned to the voltage state before the power supply is stopped. That is, for example, the storage unit 23 is not provided, and the information stored in each flip-flop 22 before the power supply is stopped is generated based on the error correction code CODE1 stored in the memory 55 in the post-processing operation OP22. However, when the generated information is supplied to the sequential circuit units 20 (1) to 20 (N ⁇ 1), it may take time and energy to return the voltage state of each flip-flop 22. On the other hand, in the semiconductor circuit 1, since the storage unit 23 for storing the voltage state of each flip-flop 22 is provided, the voltage state of each flip-flop 22 can be returned in a short time and with less energy.
- the normal operation OP1 in the post-processing operation OP22, when the error correction code CODE1 and the error correction code CODE2 match, the normal operation OP1 is performed immediately.
- the normal operation OP1 can be started with time and less energy.
- the power supply is resumed, and the information stored in each flip-flop 22 is stored after each storage unit 23 in the sequential circuit units 20 (1) to 20 (N ⁇ 1) performs the restore operation. I tried to check.
- the storage elements 48 and 49 of each storage unit 23 are deteriorated over time, the influence on the circuit operation can be suppressed. That is, in general, non-volatile memory elements may deteriorate over time due to rewriting over many years. In this case, for example, even if information is stored in the storage element, there is a possibility that correct information cannot be stored.
- the error correction code CODE1 is generated in the pre-processing operation OP21
- the error correction code CODE2 is generated in the post-processing operation OP22
- the error correction code CODE1 and the error correction code CODE2 are compared to each flip-flop.
- the information stored in the program 22 is inspected. Thereby, when the error correction codes CODE1 and CODE2 do not coincide with each other, the inspection unit 54 determines that the information has not been correctly stored in the storage elements 48 and 49 due to aging deterioration in the preprocessing operation OP21. Based on the error correction code CODE1, information stored in each flip-flop 22 before the power supply is stopped is generated. Thereby, in the semiconductor circuit 1, even when the storage elements 48 and 49 are deteriorated with time, the influence on the circuit operation can be suppressed.
- step S4 the storage unit 23 performs a store operation. Therefore, the possibility that the circuit malfunctions can be reduced. That is, when the storage unit 23 performs a store operation, store currents Istore1 and Istore2 flow as shown in FIGS. 8A and 8B. When the current values of the store currents Istore1 and Istore2 are large, for example, information stored in the slave latch 40 is lost, and so-called disturbance may occur.
- the inspection unit 54 acquires the information of each flip-flop 22 and generates the error correction code CODE1 after the storage unit 23 performs the store operation, the inspection unit 54 is based on the erroneous information. May generate the error correction code CODE1.
- the storage unit 23 performs the store operation (step S4) after the inspection unit 54 acquires the information of each flip-flop 22 and generates the error correction code CODE1.
- the error correction code CODE1 is stored in the memory 55, the storage capacity of the memory 55 is increased as compared with the case where the information stored in each flip-flop 22 is stored in the memory 55 as it is. Can be suppressed.
- the information stored in each flip-flop 22 is inspected in the sleep operation OP2 by using a mechanism of inspection (scan test operation OP3) after the semiconductor circuit 1 is manufactured. Thereby, the information stored in each flip-flop 22 can be inspected while simplifying the circuit configuration.
- the normal operation in the post-processing operation, when the error correction codes match each other, the normal operation is performed immediately. Therefore, after the power supply is resumed, the normal operation is performed in a short time and with less energy. Can start.
- each flip-flop performs a restore operation
- the information stored in each flip-flop is inspected, so even when the storage element has deteriorated over time, The influence on the circuit operation can be suppressed.
- the storage unit performs the store operation after the inspection unit acquires the information of each flip-flop and generates the error correction code CODE1, so that the circuit may malfunction. Can be reduced.
- the error correction code CODE1 since the error correction code CODE1 is stored in the memory, the storage capacity of the memory can be suppressed.
- the drain of the power transistor 51 is connected to the N combinational circuit units 10, the (N ⁇ 1) sequential circuit units 20, the selection units 52 and 53, and the inspection unit 54.
- the drain of the power transistor 51 may be further connected to the memory 55A as in the semiconductor circuit 1A shown in FIG.
- the memory 55A is nonvolatile such as a magnetoresistive memory (MRAM), a phase change memory (PCRAM), and a resistance random access memory (ReRAM). It is configured using the memory.
- MRAM magnetoresistive memory
- PCRAM phase change memory
- ReRAM resistance random access memory
- the semiconductor circuit 1A in the sleep operation, by turning off the power transistor 51, N combinational circuit units 10, (N-1) sequential circuit units 20, selection units 52 and 53, and an inspection unit 54 In addition, the power supply to the memory 55A is stopped. Thereby, power consumption can be reduced in the semiconductor circuit 1A.
- a memory 57B and a control unit 56B may be provided.
- the memory 57B stores various information and is configured using the same type of nonvolatile memory as the memory 55A.
- the memory 57B is supplied with the power supply voltage VDD when the power supply transistor 51 is turned on.
- the control unit 56B controls the operation of the semiconductor circuit 1B.
- the memory 57B corresponds to a specific example of “second memory” in the present disclosure.
- the size of the memory element of the memory 55A is preferably larger than the size of the memory element of the memory 57B. That is, since the memory 55A stores the error correction code CODE1, it is desired that the write error rate is low. By making the size of the storage element of the memory 55A larger than the size of the storage element of the memory 57B, a reduction in the write error rate is expected.
- the inspection unit 54 and the memory 55 are provided separately, but the present invention is not limited to this.
- an inspection unit 54C may be provided inside the memory 55C as in the semiconductor circuit 1C shown in FIG. That is, in general, since a block for performing ECC processing is provided in the memory, the configuration can be simplified by using such a memory as the memory 55C.
- the inspection unit 54 generates the error correction codes CODE1 and CODE2 by performing the ECC process, but the present invention is not limited to this.
- the semiconductor circuit 1D according to the present modification will be described in detail.
- FIG. 14 shows a configuration example of the semiconductor circuit 1D according to the present modification.
- the semiconductor circuit 1D includes an inspection unit 54D and a memory 55D.
- the inspection unit 54D stores the information acquired from each flip-flop 22 in the preprocessing operation OP21 in the memory 55D as the save data DATA, and the information acquired from each flip-flop 22 and the save data DATA in the post-processing operation OP22. Are compared.
- the memory 55D stores save data DATA.
- FIG. 15 shows an example of the preprocessing operation OP21.
- the inspection unit 54D acquires information stored in each flip-flop 22 (step S21). Specifically, first, the sequential circuit units 20 (1) to 20 (N ⁇ 1) perform a scan shift operation based on the control signal supplied from the control unit 56. Based on the control signal supplied from the control unit 56, the selection unit 53 supplies the signal S (N) supplied from the sequential circuit unit 20 (N-1) to the inspection unit 54D as the signal SB. Next, based on the control signal supplied from the control unit 56, the inspection unit 54D stores the information acquired in step S21 in the memory 55D as saved data DATA (step S22).
- control unit 56 turns on the transistors 46 and 47 of each storage unit 23 in the sequential circuit units 20 (1) to 20 (N ⁇ 1) (step S3), and each storage unit 23 performs a store operation ( In step S4), the control unit 56 turns off the transistors 46 and 47 of each storage unit 23 (step S5), and the control unit 56 turns off the power transistor 51 (step S6).
- FIG. 16 shows an example of the post-processing operation OP22.
- the control unit 56 turns on the transistors 46 and 47 of each storage unit 23 in the sequential circuit units 20 (1) to 20 (N ⁇ 1) (step S11), and turns on the power transistor 51 (step S12). ), Each storage unit 23 performs a restore operation (step S13), and the control unit 56 turns off the transistors 46 and 47 of each storage unit 23 (step S14).
- the inspection unit 54D acquires information stored in each flip-flop 22 (step S35). Specifically, first, the sequential circuit units 20 (1) to 20 (N ⁇ 1) perform a scan shift operation based on the control signal supplied from the control unit 56. Based on the control signal supplied from the control unit 56, the selection unit 53 supplies the signal S (N) supplied from the sequential circuit unit 20 (N-1) to the inspection unit 54D as the signal SB.
- the inspection unit 54D compares the information acquired in step S35 with the saved data DATA stored in the memory 55D (step S36). When the information acquired in step S35 matches the saved data DATA (“Y” in step S37), this flow ends.
- the inspection unit 54D uses the sequential data units 20 (1) to 20 (N ⁇ 1) to store the saved data DATA. (Step S38). Specifically, the inspection unit 54D outputs the save data DATA as a signal SA. Based on the control signal supplied from the control unit 56, the selection unit 52 supplies the signal SA supplied from the inspection unit 54D to the sequential circuit unit 20 (1) as the signal S (1). Then, the sequential circuit units 20 (1) to 20 (N-1) perform a scan shift operation. As a result, the semiconductor circuit 1D sets the flip-flops 22 of the sequential circuit units 20 (1) to 20 (N ⁇ 1) based on the save data DATA. Then, this flow ends.
- the configuration of the inspection unit 54D can be simplified.
- the inspection unit 54 performs the ECC process to generate the error correction codes CODE1 and CODE2, and compares the error correction code CODE1 and the error correction code CODE2.
- the present invention is not limited to this. .
- the semiconductor circuit 1E according to this modification will be described in detail.
- the semiconductor circuit 1E includes an inspection unit 54E.
- the inspection unit 54E operates in the preprocessing operation OP21 in the same manner as in the above-described embodiment (FIG. 7), and in the postprocessing operation OP22, before the power supply is stopped based on the error correction code CODE1.
- Information stored in the flip-flop 22 is generated, and the generated information is compared with information acquired from each flip-flop 22.
- FIG. 17 shows an example of the post-processing operation OP22 related to the semiconductor circuit 1E.
- the control unit 56 turns on the transistors 46 and 47 of each storage unit 23 in the sequential circuit units 20 (1) to 20 (N ⁇ 1) (step S11), and turns on the power transistor 51 (step S12). ), Each storage unit 23 performs a restore operation (step S13), and the control unit 56 turns off the transistors 46 and 47 of each storage unit 23 (step S14).
- the inspection unit 54E generates information (data DATA1) stored in each flip-flop 22 before the power supply is stopped based on the error correction code CODE1 stored in the memory 55 (step S45). ).
- the inspection unit 54E acquires information (data DATA2) stored in each flip-flop 22 (step S46). Specifically, first, the sequential circuit units 20 (1) to 20 (N ⁇ 1) perform a scan shift operation based on the control signal supplied from the control unit 56. Based on the control signal supplied from the control unit 56, the selection unit 53 supplies the signal S (N) supplied from the sequential circuit unit 20 (N-1) to the inspection unit 54E as the signal SB.
- the inspection unit 54E compares the data DATA1 generated in step S45 with the data DATA2 acquired in step S46 (step S47). When the data DATA1 and the data DATA2 match (“Y” in step S48), this flow ends.
- step S48 If the data DATA1 and the data DATA2 do not match (“N” in step S48), the inspection unit 54E supplies the data DATA1 to the sequential circuit units 20 (1) to 20 (N ⁇ 1) (step S38). . Then, this flow ends.
- the storage unit 23 performs the store operation after the inspection unit 54 acquires the information of each flip-flop 22 and generates the error correction code CODE1. It is not limited. Instead of this, for example, in the case of a configuration in which disturbance is unlikely to occur in the store operation, as shown in FIG. 18, after the storage unit 23 performs the store operation (step S4), the inspection unit 54 The error correction code CODE1 may be generated (step S1) by acquiring the information of the group 22.
- the storage elements 48 and 49 are configured using spin injection magnetization reversal type magnetic tunnel junction elements.
- the present invention is not limited to this, and the storage elements 48 and 49 can store the voltage state of the flip-flop 22.
- Any memory element may be used.
- a current-driven storage element or a voltage-driven storage element may be used.
- a storage element used in a phase change memory (PCRAM) or a storage element used in a resistance change memory (ReRAM) can be applied in addition to an MTJ element.
- PCRAM phase change memory
- ReRAM resistance change memory
- These storage elements may be a unipolar type or a bipolar type.
- As the voltage-driven storage element for example, a storage element used in a ferroelectric memory (FeRAM; Ferroelectric Random Access Memory) or a magnetic memory (MeRAM: Magnetoelectric Random Access Memory) can be applied.
- the sequential circuit unit 20 is configured using the flip-flop 22, but the present invention is not limited to this, and various logic circuits are used instead.
- a sequential circuit unit can be configured. Specifically, for example, in FIG. 2, a set of circuits including the selector 21, the flip-flop 22, and the storage unit 23 is replaced with a circuit described in Patent Document 1 (for example, the logic circuit 60 shown in FIG. 19). May be.
- the logic circuit 60 includes an NMOS logic circuit 61, flip-flops 62 and 63, a through current control circuit 64, nonvolatile resistance elements R1 and R2, and transistors P1 to P8.
- the signal Din corresponds to the signal DI (1) input to the selector 21 (1) shown in FIG. 2, for example.
- the signals TDin and / TDin correspond to, for example, the signal S (1) input to the selector 21 (1) shown in FIG.
- Signal CLK corresponds to clock signal CLK shown in FIG.
- Signals TE and / TE correspond to scan enable signal SE shown in FIG.
- Signals Q, / Q, TDout, and / TDout correspond to the signal DO (1) shown in FIG.
- the logic circuit 60 corresponds to a specific example of “logic circuit unit” in the present disclosure.
- signals Dout, / Dout, Q, and / Q corresponding to the logic of the NMOS logic circuit 61 are generated based on the signal Din.
- signals TDout and / TDout are generated based on the signals TDin and / TDin.
- the sequential circuit unit 20 can perform various operations according to the NMOS logic circuit 61 and can increase the degree of freedom of operation.
- FIG. 20 shows the appearance of a smartphone to which the semiconductor circuit of the above-described embodiment or the like is applied.
- This smartphone has, for example, a main body part 310, a display part 320, and a battery 330.
- the semiconductor circuits in the above embodiments and the like can be applied to electronic devices in various fields such as a digital camera, a notebook personal computer, a portable game machine, and a video camera in addition to such a smartphone.
- the present technology is effective when applied to a portable electronic device having a battery.
- the power supply transistor 51 is provided and the supply of the power supply voltage VDD is controlled by turning on and off, but the present invention is not limited to this.
- a transistor may be provided on the ground side, and the supply of the voltage VSS may be controlled by turning on and off.
- a regulator circuit that supplies a power supply voltage to an internal circuit may be provided, and the supply of the power supply voltage may be controlled by turning on and off the operation of the regulator circuit.
- Each of the plurality of logic circuit portions each including a flip-flop and a nonvolatile memory element has a voltage state in the plurality of logic circuit portions in the first period.
- a sequential circuit unit that performs a store operation for storing each of the above and a shift operation in which the flip-flops in the plurality of logic circuit units operate as shift registers, And a first memory that stores first data output from the shift register by the shift operation or second data corresponding to the first data in the first period.
- the inspection unit In the second period, the inspection unit outputs a third output from the shift register by the shift operation based on the first data or the second data stored in the first memory.
- the semiconductor circuit according to (1) wherein data is inspected.
- the inspection unit In the second period, the inspection unit generates fourth data based on a result of inspecting the third data, and supplies the fourth data to the shift register.
- the sequential circuit unit sets the fourth data as initial data of the flip-flops in the plurality of logic circuit units by performing the shift operation in the second period.
- the sequential circuit unit performs a processing operation of generating the sixth data based on the fifth data in a third period after the second period.
- the first memory stores the second data
- the inspection unit generates a first error correction code based on the first data in the first period;
- the semiconductor circuit according to (3) or (4), wherein the second data is the first error correction code.
- the inspection unit obtains a second error correction code based on the third data in the second period, and compares the first error correction code and the second error correction code
- the inspection unit generates the fourth data based on the first error correction code when the first error correction code and the second error correction code do not match.
- the inspection unit generates the first data based on the first error correction code in the second period, and compares the first data with the third data.
- the inspection unit supplies the first data to the shift register as the fourth data when the first data and the third data do not match.
- Semiconductor circuit (10)
- the first memory stores the first data;
- the inspection unit inspects the third data by comparing the third data with the first data stored in the first memory in the second period.
- the inspection unit uses the first data as the fourth data and performs the shift
- the semiconductor circuit according to (10) wherein the semiconductor circuit is supplied to a register.
- (12) In the first period and the second period, power is supplied to the sequential circuit unit, and in the fourth period between the first period and the second period, the order is supplied.
- the semiconductor circuit according to any one of (1) to (12) wherein in the first period, the sequential circuit unit performs the store operation after performing the shift operation.
- the sequential circuit unit In the first period, the sequential circuit unit performs the shift operation after performing the store operation.
- the flip-flop has a master latch and a slave latch, The semiconductor circuit according to any one of (1) to (14), wherein the storage element is configured to be connectable to the slave latch.
- the slave latch is A first circuit configured to generate an inverted voltage of the voltage based on the voltage at the first node and to apply the inverted voltage to the second node; A second circuit configured to generate an inverted voltage of the voltage based on the voltage at the second node and to apply the inverted voltage to the first node;
- the storage element includes a first storage element configured to be connectable to the first node, and a second storage element configured to be connectable to the second node.
- each of the plurality of logic circuit units includes a plurality of logic circuit units including a plurality of logic circuit units each including a flip-flop and a nonvolatile memory element.
- a store operation for storing each of the voltage states and a shift operation in which the flip-flops in the plurality of logic circuit units operate as shift registers,
- a method for controlling a semiconductor circuit wherein in the first period, first data output from the shift register by the shift operation or second data corresponding to the first data is stored in a first memory.
- the sequential circuit section has a voltage state of the plurality of logic circuit sections based on information stored in the memory element in the plurality of logic circuit sections.
- the inspection unit is configured to inspect the third data output from the shift register by the shift operation based on the data stored in the first memory.
- the semiconductor circuit is: Each of the plurality of logic circuit portions each including a flip-flop and a non-volatile memory element stores the voltage state in each of the plurality of logic circuit portions in the first period.
- a sequential circuit unit that performs a store operation and a shift operation in which the flip-flops in the plurality of logic circuit units operate as a shift register;
- An electronic apparatus comprising: a first memory that stores first data output from the shift register by the shift operation or second data corresponding to the first data in the first period.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Quality & Reliability (AREA)
- Manufacturing & Machinery (AREA)
- Semiconductor Integrated Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
- Retry When Errors Occur (AREA)
Abstract
本開示の半導体回路は、それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有し、第1の期間において、複数の論理回路部における記憶素子が複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、複数の論理回路部におけるフリップフロップがシフトレジスタとして動作するシフト動作とを行う順序回路部と、第1の期間において、シフト動作によりシフトレジスタから出力された第1のデータまたは第1のデータに対応する第2のデータを記憶する第1のメモリとを備える。
Description
本開示は、不揮発性の記憶素子を有する半導体回路、そのような半導体回路の制御方法、およびそのような半導体回路を備えた電子機器に関する。
電子機器は、エコロジーの観点から消費電力が低いことが望まれている。半導体回路では、例えば、一部の回路への電源供給を選択的に停止することにより消費電力の低減を図る、いわゆるパワーゲーティングという技術がしばしば用いられる。このように電源供給が停止された回路では、電源供給が再開された後に、すぐに、電源供給が停止される前の動作状態に復帰することが望まれる。そのような短時間での復帰動作を実現する方法の一つに、回路に不揮発性の記憶素子を内蔵する方法がある(例えば特許文献1など)。
ところで、不揮発性の記憶素子は、長年にわたり書き換えを続けることにより、いわゆる経年劣化が生じるおそれがある。そこで、このような経年劣化が生じた場合でも、回路動作への影響を抑えることができることが望まれる。
不揮発性の記憶素子に経年劣化が生じた場合でも、回路動作への影響を抑えることができる半導体回路、半導体回路の制御方法、および電子機器を提供することが望ましい。
本開示の一実施の形態に係る半導体回路は、順序回路部と、第1のメモリとを備えている。順序回路部は、それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有し、第1の期間において、複数の論理回路部における記憶素子が複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、複数の論理回路部におけるフリップフロップがシフトレジスタとして動作するシフト動作とを行うものである。第1のメモリは、第1の期間において、シフト動作によりシフトレジスタから出力された第1のデータまたは第1のデータに対応する第2のデータを記憶するものである。第1のメモリは、第1の期間において、シフト動作によりシフトレジスタから出力された第1のデータまたは第1のデータに対応する第2のデータを記憶するものである。
本開示の一実施の形態に係る半導体回路の制御方法は、第1の期間において、それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有する順序回路部に、複数の論理回路部における記憶素子が複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、複数の論理回路部におけるフリップフロップがシフトレジスタとして動作するシフト動作とを行わせ、第1の期間において、シフト動作によりシフトレジスタから出力された第1のデータまたは第1のデータに対応する第2のデータを第1のメモリに記憶させるものである。
本開示の一実施の形態に係る電子機器は、半導体回路と、半導体回路に電源電圧を供給するバッテリとを備えたものである。半導体回路は、順序回路部と、第1のメモリとを有している。順序回路部は、それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有し、第1の期間において、複数の論理回路部における記憶素子が複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、複数の論理回路部におけるフリップフロップがシフトレジスタとして動作するシフト動作とを行うものである。第1のメモリは、第1の期間において、シフト動作によりシフトレジスタから出力された第1のデータまたは第1のデータに対応する第2のデータを記憶するものである。第1のメモリは、第1の期間において、シフト動作によりシフトレジスタから出力された第1のデータまたは第1のデータに対応する第2のデータを記憶するものである。
本開示の一実施の形態に係る半導体回路、半導体回路の制御方法、および電子機器では、第1の期間において、順序回路部において、ストア動作と、シフト動作とが行われる。ストア動作では、複数の論理回路部における記憶素子により、複数の論理回路部における電圧状態がそれぞれ記憶される。シフト動作では、複数の論理回路部におけるフリップフロップがシフトレジスタとして動作する。そして、このシフト動作によりシフトレジスタから出力された第1のデータまたは第1のデータに対応する第2のデータが、第1のメモリに記憶される。
本開示の一実施の形態に係る半導体回路、半導体回路の制御方法、および電子機器によれば、各論理回路部に不揮発性の記憶素子を設けるとともに、シフト動作によりシフトレジスタから出力された第1のデータまたは第2のデータを第1のメモリに記憶するようにしたので、不揮発性の記憶素子に経年劣化が生じた場合でも、回路動作への影響を抑えることができる。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれの効果があってもよい。
以下、本開示の実施の形態について、図面を参照して詳細に説明する。なお、説明は以下の順序で行う。
1.実施の形態
2.適用例
1.実施の形態
2.適用例
<1.実施の形態>
[構成例]
図1は、一実施の形態に係る半導体回路(半導体回路1)の一構成例を表すものである。半導体回路1は、いわゆるスキャンテストを行うことにより、評価の容易化を図ることができるように構成されたものである。なお、本開示の実施の形態に係る半導体回路の制御方法は、本実施の形態により具現化されるので、併せて説明する。
[構成例]
図1は、一実施の形態に係る半導体回路(半導体回路1)の一構成例を表すものである。半導体回路1は、いわゆるスキャンテストを行うことにより、評価の容易化を図ることができるように構成されたものである。なお、本開示の実施の形態に係る半導体回路の制御方法は、本実施の形態により具現化されるので、併せて説明する。
半導体回路1は、電源トランジスタ51と、N個の組み合わせ回路部10(組み合わせ回路部10(1)~10(N))と、(N-1)個の順序回路部20(順序回路部20(1)~20(N-1))と、選択部52,53と、検査部54と、メモリ55と、制御部56とを備えている。
電源トランジスタ51は、この例では、P型のMOS(Metal Oxide Semiconductor)トランジスタであり、ゲートには制御信号が供給され、ソースには電源電圧VDDが供給され、ドレインは、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54に接続されている。
この構成により、半導体回路1では、スリープ動作を実現することができるようになっている。すなわち、スリープ動作では、電源トランジスタ51をオフ状態にして、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54への電源供給を停止する。また、通常動作では、電源トランジスタ51をオン状態にして、これらの回路に電源電圧VDDを供給する。半導体回路1では、このようないわゆるパワーゲーティングにより、消費電力を低減することができるようになっている。
組み合わせ回路部10は、そのときに入力されている信号だけで出力信号が一意的に定まる、いわゆる組み合わせ回路により構成されるものである。この例では、組み合わせ回路部10は、供給された複数の信号に基づいて複数の信号を生成する。具体的には、例えば、組み合わせ回路部10(1)は、半導体回路1の外部から供給された複数の信号に基づいてM個の信号DI(1)~DI(M)を生成して、その信号DI(1)~DI(M)を順序回路部20(1)に供給する。また、組み合わせ回路部10(2)は、順序回路部20(1)から供給されたM個の信号DO(1)~DO(M)に基づいて複数の信号を生成し、生成した複数の信号を順序回路部20(2)に供給する。組み合わせ回路部10(3)~10(N-1)についても同様である。そして、組み合わせ回路部10(N)は、順序回路部20(N-1)から供給された複数の信号に基づいて複数の信号を生成し、生成した複数の信号を半導体回路1の外部に供給するようになっている。このように、半導体回路1では、組み合わせ回路部10(1)~10(N)と、順序回路部20(1)~20(N-1)とが、交互に配置されている。
順序回路部20は、そのときに入力されている信号だけでなく、以前に入力された信号にも基づいて出力信号を生成する、いわゆる順序回路により構成されるものである。この順序回路部20は、スキャンイネーブル信号SEに応じて異なる動作を行うようになっている。
具体的には、後述するように、順序回路部20は、スキャンイネーブル信号SEが“0”(非アクティブ)である場合には、前段の組み合わせ回路部10から供給された複数の信号およびクロック信号CLKに基づいて複数の信号を生成し、生成した複数の信号を、後段の組み合わせ回路部10に供給する。具体的には、例えば、順序回路部20(1)は、前段の組み合わせ回路部10(1)から供給された複数の信号DI(1)~DI(M)およびクロック信号CLKに基づいて複数の信号DO(1)~DO(M)を生成し、その複数の信号DO(1)~DO(M)を、後段の組み合わせ回路部10(2)に供給する。順序回路部20(2)は、前段の組み合わせ回路部10(2)から供給された複数の信号およびクロック信号CLKに基づいて複数の信号を生成し、生成した複数の信号を、後段の組み合わせ回路部10(3)に供給する。順序回路部20(3)~20(N-2)についても同様である。そして、順序回路部20(N-1)は、前段の組み合わせ回路部10(N-1)から供給された複数の信号およびクロック信号CLKに基づいて複数の信号を生成し、生成した複数の信号を、後段の組み合わせ回路部10(N)に供給するようになっている。
また、順序回路部20は、スキャンイネーブル信号SEが“1”(アクティブ)である場合には、スキャンシフト動作を行う。具体的には、例えば、順序回路部20(1)は、選択部52から供給された信号S(1)を受け取るとともに、シフトレジスタとして動作することにより信号S(2)を生成し、その信号S(2)を後段の順序回路部20(2)に供給する。順序回路部20(2)は、この信号S(2)を受け取るとともに、シフトレジスタとして動作することにより信号S(3)を生成し、その信号S(3)を後段の順序回路部20(3)に供給する。順序回路部20(3)~20(N-2)についても同様である。そして、順序回路部20(N-1)は、順序回路部20(N-2)から供給された信号S(N-1)を受け取るとともに、シフトレジスタとして動作することにより信号S(N)を生成し、その信号S(N)を選択部53に供給するようになっている。
図2は、順序回路部20(1)の一構成例を表すものである。なお、順序回路部20(2)~20(N-1)についても同様である。順序回路部20(1)は、M個のセレクタ21(セレクタ21(1)~21(M))と、M個のフリップフロップ22(フリップフロップ22(1)~22(M))と、M個の記憶部23(記憶部23(1)~23(M))とを有している。M個のセレクタ21、M個のフリップフロップ22、およびM個の記憶部23は、M個の信号DI(1)~DI(M)に対応して設けられている。
セレクタ21は、スキャンイネーブル信号SEに基づいて、第1の入力端子に入力された信号および第2の入力端子に入力された信号のうちの一方を選択して、その選択された信号を出力するものである。具体的には、例えば、セレクタ21(1)は、スキャンイネーブル信号SEが“0”(非アクティブ)である場合には、信号DI(1)を選択して信号D(1)として出力し、スキャンイネーブル信号SEが“1”(アクティブ)である場合には、信号S(1)を選択して信号D(1)として出力する。セレクタ21(2)は、スキャンイネーブル信号SEが“0”(非アクティブ)である場合には、信号DI(2)を選択して信号D(2)として出力し、スキャンイネーブル信号SEが“1”(アクティブ)である場合には、信号DO(1)を選択して信号D(2)として出力する。セレクタ21(3)~21(M-1)についても同様である。そして、セレクタ21(M)は、スキャンイネーブル信号SEが“0”(非アクティブ)である場合には、信号DI(M)を選択して信号D(M)として出力し、スキャンイネーブル信号SEが“1”(アクティブ)である場合には、信号DO(M-1)を選択して信号D(M)として出力するようになっている。
フリップフロップ22は、D型フリップフロップであり、クロック信号CLKの立ち上がりエッジに基づいて、データ入力端子Dに入力された信号をサンプリングして、そのサンプリング結果をデータ出力端子Qから出力するものである。具体的には、フリップフロップ22(1)は、クロック信号CLKの立ち上がりエッジに基づいて、セレクタ21(1)の出力信号D(1)をサンプリングし、そのサンプリング結果を信号DO(1)として出力する。フリップフロップ22(2)は、クロック信号CLKの立ち上がりエッジに基づいて、セレクタ21(2)の出力信号D(2)をサンプリングし、そのサンプリング結果を信号DO(2)として出力する。フリップフロップ22(3)~22(M-1)についても同様である。そして、フリップフロップ22(M)は、クロック信号CLKの立ち上がりエッジに基づいて、セレクタ21(M)の出力信号D(M)をサンプリングし、そのサンプリング結果を信号DO(M)として出力するとともに、信号S(2)として出力するようになっている。
記憶部23は、不揮発性の記憶部であり、信号SR,CTRLに基づいて、対応するフリップフロップ22の電圧状態を記憶するものである。具体的には、記憶部23(1)は、信号SR,CTRLに基づいて、フリップフロップ22(1)の電圧状態を記憶し(ストア動作)、または記憶している情報に基づいてフリップフロップ22の電圧状態を設定する(リストア動作)ようになっている。記憶部23(2)~23(M)についても同様である。
図3は、フリップフロップ22(1)および記憶部23(1)の一構成例を表すものである。なお、フリップフロップ22(2)~22(M)および記憶部23(2)~23(M)についても同様である。フリップフロップ22(1)は、インバータ24,25と、マスタラッチ30と、スレーブラッチ40とを有している。記憶部23(1)は、トランジスタ46,47と、記憶素子48,49とを有している。
インバータ24は、クロック信号CLKを反転することによりクロック信号CBを生成するものである。インバータ25は、クロック信号CBを反転することによりクロック信号Cを生成するものである。
マスタラッチ30は、インバータ31と、トランスミッションゲート32と、インバータ33,34と、トランスミッションゲート35とを有している。インバータ31の入力端子はフリップフロップ22(1)のデータ入力端子Dに接続されるとともに信号D(1)が供給され、出力端子はトランスミッションゲート32の一端に接続されている。トランスミッションゲート32の一端はインバータ31の出力端子に接続され、他端はノードN31に接続されている。このトランスミッションゲート32は、クロック信号Cが低レベルであるときに一端と他端との間をオン状態にし、クロック信号Cが高レベルであるときに一端と他端との間をオフ状態にするものである。インバータ33の入力端子はノードN31に接続され、出力端子はノードN32に接続されている。インバータ34の入力端子はノードN32に接続され、出力端子はトランスミッションゲート35の一端に接続されている。トランスミッションゲート35の一端はインバータ34の出力端子に接続され、他端はノードN31に接続されている。このトランスミッションゲート35は、クロック信号Cが高レベルであるときに一端と他端との間をオン状態にし、クロック信号Cが低レベルであるときに一端と他端との間をオフ状態にするものである。
スレーブラッチ40は、トランスミッションゲート41と、インバータ42,43と、トランスミッションゲート44と、インバータ45とを有している。トランスミッションゲート41の一端はノードN32に接続され、他端はノードN41に接続されている。このトランスミッションゲート41は、クロック信号Cが高レベルであるときに一端と他端との間をオン状態にし、クロック信号Cが低レベルであるときに一端と他端との間をオフ状態にするものである。インバータ42の入力端子はノードN41に接続され、出力端子はノードN42に接続されている。インバータ43の入力端子はノードN42に接続され、出力端子はトランスミッションゲート44の一端に接続されている。トランスミッションゲート44の一端はインバータ43の出力端子に接続され、他端はノードN41に接続されている。このトランスミッションゲート44は、クロック信号Cが低レベルであるときに一端と他端との間をオン状態にし、クロック信号Cが高レベルであるときに一端と他端との間をオフ状態にするものである。インバータ45の入力端子はノードN42に接続され、出力端子はフリップフロップ22(1)のデータ出力端子Qに接続され、インバータ45は信号DO(1)を出力するものである。
トランジスタ46,47は、この例ではN型のMOSトランジスタである。トランジスタ46のドレインはノードN41に接続され、ゲートには信号SRが供給され、ソースは記憶素子48の一端に接続されている。トランジスタ47のドレインはノードN42に接続され、ゲートには信号SRが供給され、ソースは記憶素子49の一端に接続されている。
記憶素子48,49は、不揮発性の記憶素子であり、この例では、スピン注入により、フリー層F(後述)の磁化の向きを変えることにより情報の記憶を行う、スピン注入磁化反転型(STT;Spin Transfer Torque)の磁気トンネル接合(MTJ;Magnetic Tunnel Junction)素子である。記憶素子48の一端はトランジスタ46のソースに接続され、他端には信号CTRLが供給されている。記憶素子49の一端はトランジスタ47のソースに接続され、他端には信号CTRLが供給されている。
以下、記憶素子48を例に説明する。なお、記憶素子49についても同様である。記憶素子48は、ピンド層Pと、トンネルバリア層Iと、フリー層Fとを有している。ピンド層Pは、磁化PJの方向が、例えば膜面垂直方向に固定された強磁性体により構成されるものである。フリー層Fは、磁化FJの方向が、流入するスピン偏極電流に応じて、例えば膜面垂直方向において変化する強磁性体により構成されるものである。トンネルバリア層Iは、ピンド層Pとフリー層Fとの間の磁気的結合を切るとともに、トンネル電流を流すように機能するものである。
この構成により、記憶素子48では、例えば電流をフリー層Fからピンド層Pに流すと、ピンド層Pの磁化PJと同じ方向のモーメント(スピン)を有する偏極電子がピンド層Pからフリー層Fへ注入され、フリー層Fの磁化FJの方向がピンド層Pの磁化PJの方向と同じ方向(平行状態)になる。記憶素子48は、このような平行状態になった場合には、両端間の抵抗値が低くなる(低抵抗状態RL)。
また、例えば電流をピンド層Pからフリー層Fに流すと、電子がフリー層Fからピンド層Pへ注入される。その際、注入された電子のうち、ピンド層Pの磁化PJと同じ方向のモーメントを有する偏極電子はピンド層Pを透過し、ピンド層Pの磁化PJと反対の方向のモーメントを有する偏極電子は、ピンド層Pで反射され、フリー層Fへ注入される。これにより、フリー層Fの磁化FJの方向は、ピンド層Pの磁化PJの方向と反対の方向(反平行状態)になる。記憶素子48は、このような反平行状態になった場合には、両端間の抵抗値が高くなる(高抵抗状態RH)。
このように、記憶素子48,49では、電流を流す方向に応じて、フリー層Fの磁化FJの方向が変化することにより、抵抗状態が高抵抗状態RHと低抵抗状態RLとの間で変化する。記憶素子48,49は、このようにして抵抗状態を設定することにより、情報を記憶することができるようになっている。
このように、半導体回路1では、各フリップフロップ22に対応して記憶部23を設けるようにした。これにより、例えば、記憶部23は、スリープ動作において、電源供給を停止する直前にストア動作を行うことにより、フリップフロップ22の電圧状態を記憶する。そして、記憶部23は、電源供給を再開した後にリストア動作を行うことにより、記憶部23に記憶された情報に基づいてフリップフロップ22の電圧状態を設定する。これにより、半導体回路1では、電源供給を再開した後に、短い時間で、各フリップフロップ22の電圧状態を、電源供給を停止する前の電圧状態に戻すことができるようになっている。
選択部52(図1)は、制御部56から供給された制御信号に基づいて、半導体回路1の外部から供給された信号SI、および検査部54から供給された信号SAのうちの一方を選択し、選択された信号を信号S(1)として出力するものである。
選択部53は、制御部56から供給された制御信号に基づいて、順序回路部20(N-1)から供給された信号S(N)を、検査部54に信号SBとして供給し、あるいは、半導体回路1の外部に信号SOとして出力するものである。
検査部54は、スリープ動作において、電源供給を再開し、順序回路部20(1)~20(N-1)における各記憶部23がリストア動作を行った後に、各フリップフロップ22に記憶された情報を検査するものである。具体的には、後述するように、検査部54は、まず、電源供給を停止する前に、各フリップフロップ22に記憶された情報を取得し、取得した情報に基づいて、ECC(Error Correcting Code)処理を行うことにより、誤り訂正コードCODE1を生成する。そして、検査部54は、その誤り訂正コードCODE1を、メモリ55に記憶させる。そして、検査部54は、電源供給が再開し、各記憶部23がリストア動作を行った後に、再度、各フリップフロップ22に記憶された情報を取得し、取得した情報に基づいて誤り訂正コードCODE2を生成する。そして、検査部54は、この誤り訂正コードCODE2と、メモリ55に記憶された誤り訂正コードCODE1とを比較することにより、各フリップフロップ22に記憶された情報を検査する。そして、検査部54は、誤り訂正コードCODE2が誤り訂正コードCODE1と一致しない場合には、誤り訂正コードCODE1に基づいて、電源供給が停止する前に各フリップフロップ22に記憶されていた情報を生成し、この情報を各フリップフロップ22にそれぞれ供給するようになっている。
メモリ55は、この例では、SRAM(Static Random Access Memory)を用いて構成されたものであり、検査部54が生成した誤り訂正コードCODE1を記憶するものである。メモリ55は、この例では、電源トランジスタ51がオフ状態になったときでも電源電圧VDDが供給されるように構成されている。なお、この例では、メモリ55を、SRAMを用いて構成したが、これに限定されるものではなく、これに代えて、DRAM(Dynamic Random Access Memory)など、揮発性のメモリを用いて構成してもよい。また、不揮発性のメモリを用いて構成してもよい。
制御部56は、順序回路部20(1)~20(N-1)、選択部52,53、検査部54、メモリ55、および電源トランジスタ51の動作を制御するものである。制御部56は、例えば、ハードウェアにより構成してもよいし、プログラムを実行可能なプロセッサを用いて構成してもよい。
ここで、セレクタ21、フリップフロップ22、および記憶部23は、本開示における「論理回路部」の一具体例に対応する。順序回路部20は、本開示における「順序回路部」の一具体例に対応する。組み合わせ回路部10は、本開示における「第1の組み合わせ回路部」および「第2の組み合わせ回路部」の一具体例に対応する。メモリ55は、本開示における「第1のメモリ」の一具体例に対応する。誤り訂正コードCODE1は、本開示における「第1の誤り訂正コード」の一具体例に対応する。誤り訂正コードCODE2は、本開示における「第2の誤り訂正コード」の一具体例に対応する。
[動作および作用]
続いて、本実施の形態の半導体回路1の動作および作用について説明する。
続いて、本実施の形態の半導体回路1の動作および作用について説明する。
(全体動作概要)
まず、図1を参照して、半導体回路1の全体動作概要を説明する。以下に、通常動作OP1を行う場合、スリープ動作OP2を行う場合、および、半導体回路1を製造した後の検査(スキャンテスト動作OP3)を行う場合について説明する。
まず、図1を参照して、半導体回路1の全体動作概要を説明する。以下に、通常動作OP1を行う場合、スリープ動作OP2を行う場合、および、半導体回路1を製造した後の検査(スキャンテスト動作OP3)を行う場合について説明する。
図4は、通常動作OP1を行うときの半導体回路1の動作を表すものである。この図4では、通常動作OP1における主要な信号を太線で示している。組み合わせ回路部10(1)は、半導体回路1の外部から供給された複数の信号に基づいてM個の信号DI(1)~DI(M)を生成する。順序回路部20(1)は、組み合わせ回路部10(1)から供給された複数の信号DI(1)~DI(M)およびクロック信号CLKに基づいて複数の信号DO(1)~DO(M)を生成する。組み合わせ回路部10(2)は、順序回路部20(1)から供給されたM個の信号DO(1)~DO(M)に基づいて複数の信号を生成する。組み合わせ回路部10(3)~10(N-1)、および順序回路部20(2)~20(N-2)についても同様である。順序回路部20(N-1)は、組み合わせ回路部10(N-1)から供給された複数の信号およびクロック信号CLKに基づいて複数の信号を生成する。そして、組み合わせ回路部10(N)は、順序回路部20(N-1)から供給された複数の信号に基づいて複数の信号を生成し、生成した複数の信号を半導体回路1の外部に供給する。
図5は、スリープ動作OP2を行うときの半導体回路1の動作を表すものである。この図5では、スリープ動作OP2における主要な信号を太線で示している。スリープ動作OP2では、半導体回路1は、電源供給を停止する前に、前処理動作OP21を行い、その後に電源供給を停止する。そして、半導体回路1は、電源供給を再開した後に、後処理動作OP22を行う。
前処理動作OP21では、まず、順序回路部20(1)~20(N-1)は、スキャンシフト動作を行う。選択部53は、順序回路部20(N-1)から供給された信号S(N)を、信号SBとして検査部54に供給する。検査部54は、信号SBに基づいて、ECC処理を行うことにより、誤り訂正コードCODE1を生成し、その誤り訂正コードCODE1を、メモリ55に記憶させる。また、順序回路部20(1)~20(N-1)の各記憶部23は、ストア動作を行うことにより、対応するフリップフロップ22の電圧状態を記憶する。そして、電源トランジスタ51が、制御部56からの制御信号に基づいてオフ状態になる。これにより、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54への電源供給が停止される。
そして、後処理動作OP22では、まず、電源トランジスタ51が、制御部56からの制御信号に基づいてオン状態になる。これにより、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54への電源供給が再開される。そして、この電源供給の再開に伴い、順序回路部20(1)~20(N-1)の各記憶部23がリストア動作を行うことにより、記憶部23に記憶された情報に基づいて、対応するフリップフロップ22の電圧状態を設定する。その後、順序回路部20(1)~20(N-1)は、スキャンシフト動作を行う。選択部53は、順序回路部20(N-1)から供給された信号S(N)を、信号SBとして検査部54に供給する。検査部54は、信号SBに基づいて、ECC処理を行うことにより、誤り訂正コードCODE2を生成し、この誤り訂正コードCODE2と、メモリ55に記憶された誤り訂正コードCODE1とを比較することにより、各フリップフロップ22に記憶された情報を検査する。そして、検査部54は、誤り訂正コードCODE2が誤り訂正コードCODE1と一致しない場合には、誤り訂正コードCODE1に基づいて、スリープ動作の前に各フリップフロップ22に記憶されていた情報を生成し、信号SAとして出力する。選択部52は、検査部54から供給された信号SAを、信号S(1)として順序回路部20(1)に供給する。そして、順序回路部20(1)~20(N-1)は、スキャンシフト動作を行う。
図6は、スキャンテスト動作OP3を行うときの半導体回路1の動作を表すものである。この図6では、スキャンテスト動作OP3における主要な信号を太線で示している。選択部52は、外部(例えばテスタ)から供給された信号SIを信号S(1)として順序回路部20(1)に供給する。順序回路部20(1)~20(N-1)は、スキャンシフト動作を行う。これにより、外部から供給された信号に含まれる情報が、順序回路部20(1)~20(N-1)の各フリップフロップ22に設定される。そして、半導体回路1は、通常動作OP1(図4)を行うとともに、外部から1パルス分のクロック信号CLKが供給される。その後、順序回路部20(1)~20(N-1)は、再度スキャンシフト動作を行う。そして、選択部53は、順序回路部20(N-1)から供給された信号S(N)を、信号SOとして外部(例えばテスタ)に供給する。このようにして、テスタは、各組み合わせ回路部10の入力データを設定するとともに、各組み合わせ回路部10の出力データを取得する。そして、テスタは、出力データを期待されるデータと比較する。半導体回路1では、このようにして、組み合わせ回路部10(1)~10(N)の検査を個別に行うことにより、半導体回路1の検査を効率的に行うことができる。
(スリープ動作OP2について)
次に、スリープ動作OP2における、前処理動作OP21および後処理動作OP22について詳細に説明する。
次に、スリープ動作OP2における、前処理動作OP21および後処理動作OP22について詳細に説明する。
図7は、前処理動作OP21の一例を表すものである。前処理動作OP21では、検査部54が、各フリップフロップ22に記憶された情報に基づいて、誤り訂正コードCODE1を生成し、その誤り訂正コードCODE1をメモリ55に記憶させるとともに、記憶部23がストア動作を行う。以下に、この動作について、詳細に説明する。
まず、検査部54は、各フリップフロップ22に記憶された情報を取得し、取得した情報に基づいて誤り訂正コードCODE1を生成する(ステップS1)。具体的には、まず、順序回路部20(1)~20(N-1)が、制御部56から供給された制御信号に基づいて、スキャンシフト動作を行う。そして、選択部53が、制御部56から供給された制御信号に基づいて、順序回路部20(N-1)から供給された信号S(N)を、信号SBとして検査部54に供給する。そして、検査部54は、信号SBに基づいて、ECC処理を行うことにより、誤り訂正コードCODE1を生成する。
このとき、検査部54は、信号SBを信号SAとしてそのまま出力する。そして、選択部52は、制御部56から供給された制御信号に基づいて、この信号SAを、信号S(1)として順序回路部20(1)に供給する。そして、順序回路部20(1)~20(N-1)は、各フリップフロップ22に記憶された情報が、スキャンシフト動作を始める前と同じ情報になるまで、スキャンシフト動作を続ける。
次に、検査部54は、制御部56から供給された制御信号に基づいて、ステップS1において生成した誤り訂正コードCODE1をメモリ55に記憶させる(ステップS2)。
次に、制御部56は、信号SRを高レベルにすることにより、順序回路部20(1)~20(N-1)における各記憶部23のトランジスタ46,47をオン状態にする(ステップS3)。これにより、各記憶部23は、対応するフリップフロップ22に電気的に接続される。
次に、順序回路部20(1)~20(N-1)における各記憶部23は、ストア動作を行う(ステップS4)。
図8A,8Bは、ストア動作における、フリップフロップ22のスレーブラッチ40、および記憶部23の一動作例を表すものである。この図8A,8Bにおいて、トランスミッションゲート41,44、トランジスタ46,47は、その動作状態を示すスイッチとして描いている。
このストア動作では、クロック信号CLKは停止され、低レベルに固定される。これにより、クロック信号Cは低レベルになり、クロック信号CBは高レベルになる。その結果、トランスミッションゲート41はオフ状態になり、トランスミッションゲート44はオン状態になる。これにより、スレーブラッチ40では、インバータ42が、ノードN41の電圧を反転し、その反転結果をノードN42に出力し、インバータ43が、ノードN42の電圧を反転し、その反転結果を、トランスミッションゲート44を介してノードN41に出力する。すなわち、スレーブラッチ40は、いわゆる双安定回路として機能している。
まず、制御部56は、信号CTRLの電圧を低レベル電圧VL(接地レベル)にする(図8A)。これにより、記憶部23では、スレーブラッチ40に記憶された情報に応じて、記憶素子48,49の一方に電流が流れる。この例では、ノードN41の電圧VN41は、高レベル電圧VHであり、ノードN42の電圧VN42は、低レベル電圧VLである。よって、インバータ43、トランスミッションゲート44、トランジスタ46、および記憶素子48の順にストア電流Istore1が流れる。このとき、記憶素子48では、ストア電流Istore1がピンド層Pからフリー層Fに流れるので、フリー層Fの磁化FJの方向がピンド層Pの磁化PJの方向と反対の方向(反平行状態)になり、その結果、記憶素子48の抵抗状態は、高抵抗状態RHになる。
次に、制御部56は、信号CTRLの電圧を高レベル電圧VHにする(図8B)。これにより、記憶部23では、スレーブラッチ40に記憶された情報に応じて、記憶素子48,49の他方に電流が流れる。この例では、記憶素子49、トランジスタ47、トランスミッションゲート44、インバータ42の順にストア電流Istore2が流れる。このとき、記憶素子49では、ストア電流Istore2がフリー層Fからピンド層Pに流れるので、フリー層Fの磁化FJの方向がピンド層Pの磁化PJの方向と同じ方向(平行状態)になり、その結果、記憶素子49の抵抗状態は、低抵抗状態RLになる。
このようにして、順序回路部20(1)~20(N-1)において、各記憶部23は、対応するフリップフロップ22の電圧状態を記憶する。
次に、制御部56は、信号SRを低レベルにすることにより、順序回路部20(1)~20(N-1)における各記憶部23のトランジスタ46,47をオフ状態にする(ステップS5)。これにより、各記憶部23は、対応するフリップフロップ22から電気的に切断される。
次に、制御部56は、電源トランジスタ51をオフ状態にする(ステップS6)。これにより、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54への電源供給が停止される。なお、メモリ55および制御部56への電源供給は維持される。
以上で、前処理動作OP21は終了する。そして、半導体回路1は、時間が経過した後に後処理動作OP22を行う。
図9は、後処理動作OP22の一例を表すものである。後処理動作OP22では、記憶部23がリストア動作を行い、その後に、検査部54が、各フリップフロップ22に記憶された情報を検査する。以下に、この動作について、詳細に説明する。
まず、制御部56は、信号SRを高レベルにすることにより、順序回路部20(1)~20(N-1)における各記憶部23のトランジスタ46,47をオン状態にする(ステップS11。これにより、各記憶部23は、対応するフリップフロップ22に電気的に接続される。
次に、制御部56は、電源トランジスタ51をオン状態にする(ステップS12)。これにより、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54への電源供給が再開される。
そして、この電源供給の再開に伴い、順序回路部20(1)~20(N-1)における各記憶部23は、リストア動作を行う(ステップS13)。
図10は、リストア動作における、フリップフロップ22のスレーブラッチ40、および記憶部23の一動作例を表すものである。リストア動作では、ストア動作と同様に、クロック信号CLKは停止され、低レベルに固定される。これにより、トランスミッションゲート41はオフ状態になり、トランスミッションゲート44はオン状態になる。また、制御部56は、信号CTRLの電圧を低レベル電圧VL(接地レベル)にする。
これにより、ノードN41は、トランジスタ46および記憶素子48を介して接地され、ノードN42は、トランジスタ47および記憶素子49を介して接地される。このとき、記憶素子48,49の抵抗状態は互いに異なるので、記憶素子48,49の抵抗状態に応じて、スレーブラッチ40における電圧状態が定まる。この例では、記憶素子48の抵抗状態は高抵抗状態RHであり、記憶素子49の抵抗状態は低抵抗状態RLである。よって、ノードN41が高い抵抗値によりプルダウンされ、ノードN42が低い抵抗値によりプルダウンされるため、ノードN41の電圧VN41は高レベル電圧VHになり、ノードN42の電圧VN42が低レベル電圧VLになる。
このようにして、順序回路部20(1)~20(N-1)において、各記憶部23は、記憶された情報に基づいて、対応するフリップフロップ22の電圧状態を設定する。
次に、制御部56は、信号SRを低レベルにすることにより、順序回路部20(1)~20(N-1)における各記憶部23のトランジスタ46,47をオフ状態にする(ステップS14)。これにより、各記憶部23は、対応するフリップフロップ22から電気的に切断される。
次に、検査部54は、各フリップフロップ22に記憶された情報を取得し、取得した情報に基づいて誤り訂正コードCODE2を生成する(ステップS15)。具体的には、まず、順序回路部20(1)~20(N-1)が、制御部56から供給された制御信号に基づいて、スキャンシフト動作を行う。そして、選択部53が、制御部56から供給された制御信号に基づいて、順序回路部20(N-1)から供給された信号S(N)を、信号SBとして検査部54に供給する。そして、検査部54は、信号SBに基づいて、ECC処理を行うことにより、誤り訂正コードCODE2を生成する。
このとき、検査部54は、信号SBを信号SAとしてそのまま出力する。そして、選択部52は、制御部56から供給された制御信号に基づいて、この信号SAを、信号S(1)として順序回路部20(1)に供給する。そして、順序回路部20(1)~20(N-1)は、各フリップフロップ22に記憶された情報が、スキャンシフト動作を始める前と同じ情報になるまで、スキャンシフト動作を続ける。
次に、検査部54は、ステップS15において生成した誤り訂正コードCODE2を、メモリ55が記憶している誤り訂正コードCODE1と比較する(ステップS16)。そして、誤り訂正コードCODE1,CODE2が一致する場合(ステップS17において“Y”)には、このフローは終了する。
また、誤り訂正コードCODE1,CODE2が一致しない場合(ステップS17において“N”)には、検査部54は、誤り訂正コードCODE1に基づいて、電源供給が停止する前に各フリップフロップ22が記憶していた情報を生成し、生成した情報を順序回路部20(1)~20(N-1)に供給する(ステップS18)。具体的には、検査部54は、生成した情報を信号SAとして出力する。そして、選択部52が、制御部56から供給された制御信号に基づいて、検査部54から供給された信号SAを、信号S(1)として順序回路部20(1)に供給する。そして、順序回路部20(1)~20(N-1)は、スキャンシフト動作を行う。これにより、半導体回路1は、検査部54が生成した情報に基づいて、順序回路部20(1)~20(N-1)の各フリップフロップ22を設定する。
以上で、後処理動作OP22は終了する。この後、半導体回路1は、通常動作OP1を行う。
このように、半導体回路1では、各フリップフロップ22の電圧状態を記憶する記憶部23を設けるようにしたので、電源供給を再開した後に、短い時間かつ少ないエネルギーで、各フリップフロップ22の電圧状態を、電源供給を停止する前の電圧状態に戻すことができる。すなわち、例えば、記憶部23を設けず、後処理動作OP22において、メモリ55に記憶された誤り訂正コードCODE1に基づいて、電源供給が停止する前に各フリップフロップ22が記憶していた情報を生成し、生成した情報を順序回路部20(1)~20(N-1)に供給するようにした場合には、各フリップフロップ22の電圧状態を戻す処理に時間およびエネルギーを要するおそれがある。一方、半導体回路1では、各フリップフロップ22の電圧状態を記憶する記憶部23を設けるようにしたので、短い時間かつ少ないエネルギーで、各フリップフロップ22の電圧状態を戻すことができる。
また、半導体回路1では、後処理動作OP22において、誤り訂正コードCODE1と誤り訂正コードCODE2とが一致する場合には、すぐに通常動作OP1を行うようにしたので、電源供給を再開した後に、短い時間かつ少ないエネルギーで、通常動作OP1を開始することができる。
また、半導体回路1では、電源供給を再開し、順序回路部20(1)~20(N-1)における各記憶部23がリストア動作を行った後に、各フリップフロップ22に記憶された情報を検査するようにした。これにより、例えば、各記憶部23の記憶素子48,49に経年劣化が生じた場合でも、回路動作への影響を抑えることができる。すなわち、一般に、不揮発性の記憶素子は、長年にわたり書き換えを続けることにより、経年劣化が生じるおそれがある。この場合には、例えば、記憶素子に情報を記憶させようとしても、正しい情報を記憶させることができなくなるおそれがある。半導体回路1では、前処理動作OP21において誤り訂正コードCODE1を生成するとともに、後処理動作OP22において誤り訂正コードCODE2を生成し、誤り訂正コードCODE1と誤り訂正コードCODE2とを比較することにより、各フリップフロップ22に記憶された情報を検査するようにした。これにより、検査部54は、誤り訂正コードCODE1,CODE2が互いに一致しない場合には、前処理動作OP21において、経年劣化により記憶素子48,49に正しく情報を記憶させることができなかったと判断し、誤り訂正コードCODE1に基づいて、電源供給が停止する前に各フリップフロップ22が記憶していた情報を生成する。これにより、半導体回路1では、記憶素子48,49に経年劣化が生じた場合でも、回路動作への影響を抑えることができる。
また、半導体回路1では、前処理動作OP21において、検査部54が各フリップフロップ22の情報を取得して誤り訂正コードCODE1を生成(ステップS1)した後に、記憶部23がストア動作(ステップS4)を行うようにしたので、回路が誤動作するおそれを低減することができる。すなわち、記憶部23がストア動作を行う際には、図8A,8Bに示したように、ストア電流Istore1,Istore2が流れる。このストア電流Istore1,Istore2の電流値が大きい場合には、例えば、スレーブラッチ40に記憶された情報が失われてしまい、いわゆるディスターブが生じるおそれがある。よって、仮に、記憶部23がストア動作を行った後に、検査部54が各フリップフロップ22の情報を取得して誤り訂正コードCODE1を生成する場合には、検査部54は、誤った情報に基づいて誤り訂正コードCODE1を生成してしまうおそれがある。一方、半導体回路1では、検査部54が各フリップフロップ22の情報を取得して誤り訂正コードCODE1を生成した後に、記憶部23がストア動作(ステップS4)を行うようにした。これにより、ストア動作において仮にディスターブが生じた場合でも、誤り訂正コードCODE1は、そのディスターブの影響を受けないので、回路が誤動作するおそれを低減することができる。
また、半導体回路1では、誤り訂正コードCODE1をメモリ55に記憶させるようにしたので、各フリップフロップ22に記憶されていた情報をそのままメモリ55に記憶させる場合に比べて、メモリ55の記憶容量を抑えることができる。
また、半導体回路1では、半導体回路1を製造した後の検査(スキャンテスト動作OP3)の仕組みを利用して、スリープ動作OP2において、各フリップフロップ22に記憶された情報を検査するようにした。これにより、回路構成をシンプルにしつつ、各フリップフロップ22に記憶された情報を検査することができる。
[効果]
以上のように本実施の形態では、各フリップフロップの電圧状態を記憶する記憶部を設けるようにしたので、電源供給を再開した後に、短い時間かつ少ないエネルギーで、各フリップフロップの電圧状態を、電源供給を停止する前の電圧状態に戻すことができる。
以上のように本実施の形態では、各フリップフロップの電圧状態を記憶する記憶部を設けるようにしたので、電源供給を再開した後に、短い時間かつ少ないエネルギーで、各フリップフロップの電圧状態を、電源供給を停止する前の電圧状態に戻すことができる。
本実施の形態では、後処理動作において、誤り訂正コードが互いに一致する場合には、すぐに通常動作を行うようにしたので、電源供給を再開した後に、短い時間かつ少ないエネルギーで、通常動作を開始することができる。
本実施の形態では、電源供給を再開し、各フリップフロップがリストア動作を行った後に、各フリップフロップに記憶された情報を検査するようにしたので、記憶素子に経年劣化が生じた場合でも、回路動作への影響を抑えることができる。
本実施の形態では、前処理動作において、検査部が各フリップフロップの情報を取得して誤り訂正コードCODE1を生成した後に、記憶部がストア動作を行うようにしたので、回路が誤動作するおそれを低減することができる。
本実施の形態では、誤り訂正コードCODE1をメモリに記憶させるようにしたので、メモリの記憶容量を抑えることができる。
[変形例1]
上記実施の形態では、電源トランジスタ51のドレインを、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54に接続したが、これに限定されるものではなく、これに代えて、図11に示す半導体回路1Aのように、電源トランジスタ51のドレインを、さらにメモリ55Aに接続してもよい。メモリ55Aは、この例では、磁気抵抗メモリ(MRAM;Magnetoresistive Random Access Memory)、相変化メモリ(PCRAM;Phase Change Random Access Memory)、抵抗変化型メモリ(ReRAM;Resistive Random Access Memory)のような不揮発性のメモリを用いて構成されたものである。メモリ55Aは、電源トランジスタ51がオン状態になることにより電源電圧VDDが供給される。半導体回路1Aでは、スリープ動作において、電源トランジスタ51をオフ状態にすることにより、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54に加えて、さらにメモリ55Aへの電源供給を停止する。これにより、半導体回路1Aでは、消費電力を低減することができる。
上記実施の形態では、電源トランジスタ51のドレインを、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54に接続したが、これに限定されるものではなく、これに代えて、図11に示す半導体回路1Aのように、電源トランジスタ51のドレインを、さらにメモリ55Aに接続してもよい。メモリ55Aは、この例では、磁気抵抗メモリ(MRAM;Magnetoresistive Random Access Memory)、相変化メモリ(PCRAM;Phase Change Random Access Memory)、抵抗変化型メモリ(ReRAM;Resistive Random Access Memory)のような不揮発性のメモリを用いて構成されたものである。メモリ55Aは、電源トランジスタ51がオン状態になることにより電源電圧VDDが供給される。半導体回路1Aでは、スリープ動作において、電源トランジスタ51をオフ状態にすることにより、N個の組み合わせ回路部10、(N-1)個の順序回路部20、選択部52,53、および検査部54に加えて、さらにメモリ55Aへの電源供給を停止する。これにより、半導体回路1Aでは、消費電力を低減することができる。
また、図12に示す半導体回路1Bのように、メモリ57Bと、制御部56Bとを備えてもよい。メモリ57Bは、様々な情報を記憶するものであり、メモリ55Aと同じ種類の不揮発性のメモリを用いて構成されている。メモリ57Bは、電源トランジスタ51がオン状態になることにより電源電圧VDDが供給される。制御部56Bは、半導体回路1Bの動作を制御するものである。ここで、メモリ57Bは、本開示における「第2のメモリ」の一具体例に対応する。
この半導体回路1Bでは、メモリ55Aの記憶素子のサイズは、メモリ57Bの記憶素子のサイズよりも大きいことが望ましい。すなわち、メモリ55Aは、誤り訂正コードCODE1を記憶するため、書込エラーレートが低いことが望まれる。メモリ55Aの記憶素子のサイズを、メモリ57Bの記憶素子のサイズよりも大きくすることにより、書込エラーレートの低減が期待される。
[変形例2]
上記実施の形態では、検査部54と、メモリ55とを別々に設けたが、これに限定されるものではない。これに代えて、例えば、図13に示す半導体回路1Cのように、メモリ55Cの内部に検査部54Cを設けてもよい。すなわち、一般に、メモリの内部には、ECC処理を行うブロックが設けられているので、このようなメモリをメモリ55Cとして用いることにより、構成をシンプルにすることができる。
上記実施の形態では、検査部54と、メモリ55とを別々に設けたが、これに限定されるものではない。これに代えて、例えば、図13に示す半導体回路1Cのように、メモリ55Cの内部に検査部54Cを設けてもよい。すなわち、一般に、メモリの内部には、ECC処理を行うブロックが設けられているので、このようなメモリをメモリ55Cとして用いることにより、構成をシンプルにすることができる。
[変形例3]
上記実施の形態では、検査部54は、ECC処理を行うことにより、誤り訂正コードCODE1,CODE2を生成したが、これに限定されるものではない。以下に、本変形例に係る半導体回路1Dについて詳細に説明する。
上記実施の形態では、検査部54は、ECC処理を行うことにより、誤り訂正コードCODE1,CODE2を生成したが、これに限定されるものではない。以下に、本変形例に係る半導体回路1Dについて詳細に説明する。
図14は、本変形例に係る半導体回路1Dの一構成例を表すものである。半導体回路1Dは、検査部54Dと、メモリ55Dとを備えている。検査部54Dは、前処理動作OP21において、各フリップフロップ22から取得した情報を退避データDATAとして、メモリ55Dに記憶させるとともに、後処理動作OP22において、各フリップフロップ22から取得した情報と退避データDATAとを比較するものである。メモリ55Dは、退避データDATAを記憶するものである。
次に、半導体回路1Dに係るスリープ動作OP2における、前処理動作OP21および後処理動作OP22について詳細に説明する。
図15は、前処理動作OP21の一例を表すものである。まず、検査部54Dは、各フリップフロップ22に記憶された情報を取得する(ステップS21)。具体的には、まず、順序回路部20(1)~20(N-1)が、制御部56から供給された制御信号に基づいて、スキャンシフト動作を行う。そして、選択部53が、制御部56から供給された制御信号に基づいて、順序回路部20(N-1)から供給された信号S(N)を、信号SBとして検査部54Dに供給する。次に、検査部54Dは、制御部56から供給された制御信号に基づいて、ステップS21において取得した情報を、退避データDATAとしてメモリ55Dに記憶させる(ステップS22)。そして、制御部56は、順序回路部20(1)~20(N-1)における各記憶部23のトランジスタ46,47をオン状態にし(ステップS3)、各記憶部23はストア動作を行い(ステップS4)、制御部56は、各記憶部23のトランジスタ46,47をオフ状態にし(ステップS5)、制御部56は、電源トランジスタ51をオフ状態にする(ステップS6)。
図16は、後処理動作OP22の一例を表すものである。まず、制御部56は、順序回路部20(1)~20(N-1)における各記憶部23のトランジスタ46,47をオン状態にし(ステップS11)、電源トランジスタ51をオン状態し(ステップS12)、各記憶部23はリストア動作を行い(ステップS13)、制御部56は、各記憶部23のトランジスタ46,47をオフ状態にする(ステップS14)。
次に、検査部54Dは、各フリップフロップ22に記憶された情報を取得する(ステップS35)。具体的には、まず、順序回路部20(1)~20(N-1)が、制御部56から供給された制御信号に基づいて、スキャンシフト動作を行う。そして、選択部53が、制御部56から供給された制御信号に基づいて、順序回路部20(N-1)から供給された信号S(N)を、信号SBとして検査部54Dに供給する。
次に、検査部54Dは、ステップS35において取得した情報を、メモリ55Dが記憶している退避データDATAと比較する(ステップS36)。そして、ステップS35において取得した情報と退避データDATAが一致する場合(ステップS37において“Y”)には、このフローは終了する。
また、ステップS35において取得した情報と退避データDATAが一致しない場合(ステップS37において“N”)には、検査部54Dは、退避データDATAを順序回路部20(1)~20(N-1)に供給する(ステップS38)。具体的には、検査部54Dは、退避データDATAを信号SAとして出力する。そして、選択部52が、制御部56から供給された制御信号に基づいて、検査部54Dから供給された信号SAを、信号S(1)として順序回路部20(1)に供給する。そして、順序回路部20(1)~20(N-1)は、スキャンシフト動作を行う。これにより、半導体回路1Dは、退避データDATAに基づいて、順序回路部20(1)~20(N-1)の各フリップフロップ22を設定する。そして、このフローは終了する。
このように、半導体回路1Dでは、検査部54DがECC処理を行わないようにしたので、検査部54Dの構成をシンプルにすることができる。
[変形例4]
上記実施の形態では、検査部54は、ECC処理を行うことにより、誤り訂正コードCODE1,CODE2を生成し、誤り訂正コードCODE1および誤り訂正コードCODE2を比較したが、これに限定されるものではない。以下に、本変形例に係る半導体回路1Eについて詳細に説明する。
上記実施の形態では、検査部54は、ECC処理を行うことにより、誤り訂正コードCODE1,CODE2を生成し、誤り訂正コードCODE1および誤り訂正コードCODE2を比較したが、これに限定されるものではない。以下に、本変形例に係る半導体回路1Eについて詳細に説明する。
半導体回路1Eは、検査部54Eを備えている。検査部54Eは、前処理動作OP21において、上記実施の形態の場合(図7)と同様に動作するとともに、後処理動作OP22において、誤り訂正コードCODE1に基づいて、電源供給が停止する前に各フリップフロップ22に記憶されていた情報を生成し、この生成した情報と、各フリップフロップ22から取得した情報とを比較するものである。
図17は、半導体回路1Eに係る後処理動作OP22の一例を表すものである。まず、制御部56は、順序回路部20(1)~20(N-1)における各記憶部23のトランジスタ46,47をオン状態にし(ステップS11)、電源トランジスタ51をオン状態し(ステップS12)、各記憶部23はリストア動作を行い(ステップS13)、制御部56は、各記憶部23のトランジスタ46,47をオフ状態にする(ステップS14)。
次に、検査部54Eは、メモリ55が記憶している誤り訂正コードCODE1に基づいて、電源供給が停止する前に各フリップフロップ22が記憶していた情報(データDATA1)を生成する(ステップS45)。
次に、検査部54Eは、各フリップフロップ22に記憶された情報(データDATA2)を取得する(ステップS46)。具体的には、まず、順序回路部20(1)~20(N-1)が、制御部56から供給された制御信号に基づいて、スキャンシフト動作を行う。そして、選択部53が、制御部56から供給された制御信号に基づいて、順序回路部20(N-1)から供給された信号S(N)を、信号SBとして検査部54Eに供給する。
次に、検査部54Eは、ステップS45において生成したデータDATA1と、ステップS46において取得したデータDATA2とを比較する(ステップS47)。そして、データDATA1とデータDATA2が一致する場合(ステップS48において“Y”)には、このフローは終了する。
また、データDATA1とデータDATA2一致しない場合(ステップS48において“N”)には、検査部54Eは、データDATA1を順序回路部20(1)~20(N-1)に供給する(ステップS38)。そして、このフローは終了する。
このように構成しても、上記実施の形態の場合と同様の効果を得ることができる。
[変形例5]
上記実施の形態では、前処理動作OP21において、検査部54が各フリップフロップ22の情報を取得して誤り訂正コードCODE1を生成した後に、記憶部23がストア動作を行うようにしたが、これに限定されるものではない。これに代えて、例えば、ストア動作においてディスターブが生じにくい構成である場合には、図18に示したように、記憶部23がストア動作(ステップS4)を行った後に、検査部54が各フリップフロップ22の情報を取得して誤り訂正コードCODE1を生成(ステップS1)してもよい。
上記実施の形態では、前処理動作OP21において、検査部54が各フリップフロップ22の情報を取得して誤り訂正コードCODE1を生成した後に、記憶部23がストア動作を行うようにしたが、これに限定されるものではない。これに代えて、例えば、ストア動作においてディスターブが生じにくい構成である場合には、図18に示したように、記憶部23がストア動作(ステップS4)を行った後に、検査部54が各フリップフロップ22の情報を取得して誤り訂正コードCODE1を生成(ステップS1)してもよい。
[変形例6]
上記実施の形態では、スピン注入磁化反転型の磁気トンネル接合素子を用いて記憶素子48,49を構成したが、これに限定されるものではなく、フリップフロップ22の電圧状態を記憶できるものであれば、どのような記憶素子を用いてもよい。具体的には、例えば、電流駆動型の記憶素子を用いてもよいし、電圧駆動型の記憶素子を用いてもよい。電流駆動型の記憶素子は、例えば、MTJ素子の他、相変化メモリ(PCRAM)において用いられる記憶素子や、抵抗変化型メモリ(ReRAM)において用いられる記憶素子を適用可能である。これらの記憶素子は、ユニポーラ型であってもよいし、バイポーラ型であってもよい。電圧駆動型の記憶素子は、例えば、強誘電体メモリ(FeRAM;Ferroelectric Random Access Memory)において用いられる記憶素子や、磁性メモリ(MeRAM;Magnetoelectric Random Access Memory)を適用可能である。
上記実施の形態では、スピン注入磁化反転型の磁気トンネル接合素子を用いて記憶素子48,49を構成したが、これに限定されるものではなく、フリップフロップ22の電圧状態を記憶できるものであれば、どのような記憶素子を用いてもよい。具体的には、例えば、電流駆動型の記憶素子を用いてもよいし、電圧駆動型の記憶素子を用いてもよい。電流駆動型の記憶素子は、例えば、MTJ素子の他、相変化メモリ(PCRAM)において用いられる記憶素子や、抵抗変化型メモリ(ReRAM)において用いられる記憶素子を適用可能である。これらの記憶素子は、ユニポーラ型であってもよいし、バイポーラ型であってもよい。電圧駆動型の記憶素子は、例えば、強誘電体メモリ(FeRAM;Ferroelectric Random Access Memory)において用いられる記憶素子や、磁性メモリ(MeRAM;Magnetoelectric Random Access Memory)を適用可能である。
[変形例7]
上記実施の形態では、図2に示したように、フリップフロップ22を用いて順序回路部20を構成したが、これに限定されるものではなく、これに代えて、様々な論理回路を用いて順序回路部を構成することができる。具体的には、例えば、図2において、セレクタ21、フリップフロップ22、記憶部23とからなる一組の回路を、特許文献1に記載の回路(例えば、図19に示す論理回路60)に置き換えてもよい。
上記実施の形態では、図2に示したように、フリップフロップ22を用いて順序回路部20を構成したが、これに限定されるものではなく、これに代えて、様々な論理回路を用いて順序回路部を構成することができる。具体的には、例えば、図2において、セレクタ21、フリップフロップ22、記憶部23とからなる一組の回路を、特許文献1に記載の回路(例えば、図19に示す論理回路60)に置き換えてもよい。
この論理回路60は、NMOS論理回路61と、フリップフロップ62,63と、貫通電流制御回路64と、不揮発性抵抗素子R1,R2と、トランジスタP1~P8とを有している。以下に、上記実施の形態におけるセレクタ21(1)、フリップフロップ22(1)、および記憶部23(1)を置き換えた場合における対応関係を説明する。信号Dinは、例えば図2に示したセレクタ21(1)に入力される信号DI(1)に対応する。信号TDin,/TDinは、例えば図2に示したセレクタ21(1)に入力される信号S(1)に対応する。信号CLKは、図2に示したクロック信号CLKに対応する。信号TE,/TEは、図2に示したスキャンイネーブル信号SEに対応する。信号Q,/Q,TDout,/TDoutは、図2に示した信号DO(1)に対応する。ここで、論理回路60は、本開示における「論理回路部」の一具体例に対応する。
通常動作OP1では、信号Dinに基づいて、NMOS論理回路61の論理に応じた信号Dout,/Dout、Q,/Qが生成される。また、スリープ動作OP2およびスキャンテスト動作OP3では、信号TDin,/TDinに基づいて、信号TDout,/TDoutが生成される。
このように構成することにより、順序回路部20は、NMOS論理回路61に応じた様々な演算を行うことができ、動作の自由度を高めることができる。
[その他の変形例]
また、これらの変形例のうちの2以上を組み合わせてもよい。
また、これらの変形例のうちの2以上を組み合わせてもよい。
<2.適用例>
次に、上記実施の形態および変形例で説明した半導体回路の適用例について説明する。
次に、上記実施の形態および変形例で説明した半導体回路の適用例について説明する。
図20は、上記実施の形態等の半導体回路が適用されるスマートフォンの外観を表すものである。このスマートフォンは、例えば、本体部310、表示部320、およびバッテリ330を有している。
上記実施の形態等の半導体回路は、このようなスマートフォンの他、デジタルカメラ、ノート型パーソナルコンピュータ、携帯型ゲーム機、ビデオカメラなどのあらゆる分野の電子機器に適用することが可能である。特に、本技術は、バッテリを有する携帯型の電子機器に適用すると効果的である。
以上、いくつかの実施の形態および変形例、ならびにそれらの具体的な応用例および電子機器への適用例を挙げて本技術を説明したが、本技術はこれらの実施の形態等には限定されず、種々の変形が可能である。
例えば、上記の実施の形態等では、電源トランジスタ51を設け、オンオフすることにより電源電圧VDDの供給を制御するようにしたが、これに限定されたものではない。これに代えて、例えば、接地側にトランジスタを設け、オンオフすることにより電圧VSSの供給を制御するようにしてもよい。また、例えば、内部回路に電源電圧を供給するレギュレータ回路を設け、レギュレータ回路の動作をオンオフすることにより、電源電圧の供給を制御するようにしてもよい。
なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
なお、本技術は以下のような構成とすることができる。
(1)それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有し、第1の期間において、前記複数の論理回路部における前記記憶素子が前記複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、前記複数の論理回路部における前記フリップフロップがシフトレジスタとして動作するシフト動作とを行う順序回路部と、
前記第1の期間において、前記シフト動作により前記シフトレジスタから出力された第1のデータまたは前記第1のデータに対応する第2のデータを記憶する第1のメモリと
を備えた半導体回路。
(2)検査部をさらに備え、
前記順序回路部は、前記第1の期間の後の第2の期間において、前記複数の論理回路部における前記記憶素子に記憶された情報に基づいて前記複数の論理回路部の電圧状態を設定するリストア動作と、前記シフト動作とをこの順で行い、
前記検査部は、前記第2の期間において、前記第1のメモリに記憶された前記第1のデータまたは前記第2のデータに基づいて、前記シフト動作により前記シフトレジスタから出力された第3のデータを検査する
前記(1)に記載の半導体回路。
(3)前記検査部は、前記第2の期間において、前記第3のデータを検査した結果に基づいて第4のデータを生成し、その第4のデータを前記シフトレジスタに供給し、
前記順序回路部は、前記第2の期間において、前記シフト動作を行うことにより、前記第4のデータを前記複数の論理回路部における前記フリップフロップの初期データとして設定する
前記(2)に記載の半導体回路。
(4)前記順序回路部に対して第5のデータを供給する第1の組み合わせ回路と、
第6のデータに基づいて動作する第2の組み合わせ回路と
をさらに備え、
前記順序回路部は、前記第2の期間の後の第3の期間において、前記第5のデータに基づいて前記第6のデータを生成する処理動作を行う
前記(2)または(3)に記載の半導体回路。
(5)前記第1のメモリは、前記第2のデータを記憶し、
前記検査部は、前記第1の期間において、前記第1のデータに基づいて第1の誤り訂正コードを生成し、
前記第2のデータは、前記第1の誤り訂正コードである
前記(3)または(4)に記載の半導体回路。
(6)前記検査部は、前記第2の期間において、前記第3のデータに基づいて第2の誤り訂正コードを求め、前記第1の誤り訂正コードと前記第2の誤り訂正コードとを比較することにより、前記第3のデータを検査する
前記(5)に記載の半導体回路。
(7)前記検査部は、前記第1の誤り訂正コードと前記第2の誤り訂正コードとが一致しない場合に、前記第1の誤り訂正コードに基づいて前記第4のデータを生成する
前記(6)に記載の半導体回路。
(8)前記検査部は、前記第2の期間において、前記第1の誤り訂正コードに基づいて前記第1のデータを生成し、前記第1のデータと前記第3のデータとを比較することにより、前記第3のデータを検査する
前記(5)に記載の半導体回路。
(9)前記検査部は、前記第1のデータと前記第3のデータとが一致しない場合に、前記1のデータを前記第4のデータとして、前記シフトレジスタに供給する
前記(8)に記載の半導体回路。
(10)前記第1のメモリは、前記第1のデータを記憶し、
前記検査部は、前記第2の期間において、前記第3のデータと、前記第1のメモリに記憶された前記第1のデータとを比較することにより、前記第3のデータを検査する
前記(3)または(4)に記載の半導体回路。
(11)前記検査部は、前記第3のデータと、前記第1のメモリに記憶された前記第1のデータとが一致しない場合に、前記1のデータを前記第4のデータとして、前記シフトレジスタに供給する
前記(10)に記載の半導体回路。
(12)前記第1の期間および前記第2の期間において、前記順序回路部への電源供給を行い、前記第1の期間と前記第2の期間との間の第4の期間において、前記順序回路部への電源供給を停止するように電源制御を行う制御部をさらに備えた
前記(2)から(11)のいずれかに記載の半導体回路。
(13)前記第1の期間において、前記順序回路部は、前記シフト動作を行った後に前記ストア動作を行う
前記(1)から(12)のいずれかに記載の半導体回路。
(14)前記第1の期間において、前記順序回路部は、前記ストア動作を行った後に前記シフト動作を行う
前記(1)から(12)のいずれかに記載の半導体回路。
(15)前記フリップフロップは、マスタラッチとスレーブラッチとを有し、
前記記憶素子は、前記スレーブラッチに接続可能に構成された
前記(1)から(14)のいずれかに記載の半導体回路。
(16)前記スレーブラッチは、
第1のノードにおける電圧に基づいて、その電圧の反転電圧を生成し、その反転電圧を第2のノードに印加可能に構成された第1の回路と、
前記第2のノードにおける電圧に基づいて、その電圧の反転電圧を生成し、その反転電圧を前記第1のノードに印加可能に構成された第2の回路と
を有し、
前記記憶素子は、前記第1のノードに接続可能に構成された第1の記憶素子と、前記第2のノードに接続可能に構成された第2の記憶素子とを含む
前記(15)に記載の半導体回路。
(17)前記記憶素子は、印加される電流に基づいて情報を記憶する
前記(1)から(16)のいずれかに記載の半導体回路。
(18)前記記憶素子は、ユニポーラ型またはバイポーラ型の素子である
前記(17)に記載の半導体回路。
(19)前記記憶素子は、印加される電圧に基づいて情報を記憶する
前記(1)から(16)のいずれかに記載の半導体回路。
(20)前記第1のメモリの記憶素子と同じ種類の記憶素子を有する第2のメモリをさらに備え、
前記第1のメモリの記憶素子のサイズは、前記第2のメモリの記憶素子のサイズよりも大きい
前記(1)から(19)のいずれかに記載の半導体回路。
(21)第1の期間において、それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有する順序回路部に、前記複数の論理回路部における前記記憶素子が前記複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、前記複数の論理回路部における前記フリップフロップがシフトレジスタとして動作するシフト動作とを行わせ、
前記第1の期間において、前記シフト動作により前記シフトレジスタから出力された第1のデータまたは前記第1のデータに対応する第2のデータを第1のメモリに記憶させる
半導体回路の制御方法。
(22)前記第1の期間の後の第2の期間において、前記順序回路部に、前記複数の論理回路部における前記記憶素子に記憶された情報に基づいて前記複数の論理回路部の電圧状態を設定するリストア動作と、前記シフト動作とをこの順で行わせ、
前記第2の期間において、検査部に、前記第1のメモリに記憶されたデータに基づいて、前記シフト動作により前記シフトレジスタから出力された第3のデータを検査させる
前記(21)に記載の半導体回路の制御方法。
(23)半導体回路と、
前記半導体回路に電源電圧を供給するバッテリと
を備え、
前記半導体回路は、
それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有し、第1の期間において、前記複数の論理回路部における前記記憶素子が前記複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、前記複数の論理回路部における前記フリップフロップがシフトレジスタとして動作するシフト動作とを行う順序回路部と、
前記第1の期間において、前記シフト動作により前記シフトレジスタから出力された第1のデータまたは前記第1のデータに対応する第2のデータを記憶する第1のメモリと
を有する
電子機器。
前記第1の期間において、前記シフト動作により前記シフトレジスタから出力された第1のデータまたは前記第1のデータに対応する第2のデータを記憶する第1のメモリと
を備えた半導体回路。
(2)検査部をさらに備え、
前記順序回路部は、前記第1の期間の後の第2の期間において、前記複数の論理回路部における前記記憶素子に記憶された情報に基づいて前記複数の論理回路部の電圧状態を設定するリストア動作と、前記シフト動作とをこの順で行い、
前記検査部は、前記第2の期間において、前記第1のメモリに記憶された前記第1のデータまたは前記第2のデータに基づいて、前記シフト動作により前記シフトレジスタから出力された第3のデータを検査する
前記(1)に記載の半導体回路。
(3)前記検査部は、前記第2の期間において、前記第3のデータを検査した結果に基づいて第4のデータを生成し、その第4のデータを前記シフトレジスタに供給し、
前記順序回路部は、前記第2の期間において、前記シフト動作を行うことにより、前記第4のデータを前記複数の論理回路部における前記フリップフロップの初期データとして設定する
前記(2)に記載の半導体回路。
(4)前記順序回路部に対して第5のデータを供給する第1の組み合わせ回路と、
第6のデータに基づいて動作する第2の組み合わせ回路と
をさらに備え、
前記順序回路部は、前記第2の期間の後の第3の期間において、前記第5のデータに基づいて前記第6のデータを生成する処理動作を行う
前記(2)または(3)に記載の半導体回路。
(5)前記第1のメモリは、前記第2のデータを記憶し、
前記検査部は、前記第1の期間において、前記第1のデータに基づいて第1の誤り訂正コードを生成し、
前記第2のデータは、前記第1の誤り訂正コードである
前記(3)または(4)に記載の半導体回路。
(6)前記検査部は、前記第2の期間において、前記第3のデータに基づいて第2の誤り訂正コードを求め、前記第1の誤り訂正コードと前記第2の誤り訂正コードとを比較することにより、前記第3のデータを検査する
前記(5)に記載の半導体回路。
(7)前記検査部は、前記第1の誤り訂正コードと前記第2の誤り訂正コードとが一致しない場合に、前記第1の誤り訂正コードに基づいて前記第4のデータを生成する
前記(6)に記載の半導体回路。
(8)前記検査部は、前記第2の期間において、前記第1の誤り訂正コードに基づいて前記第1のデータを生成し、前記第1のデータと前記第3のデータとを比較することにより、前記第3のデータを検査する
前記(5)に記載の半導体回路。
(9)前記検査部は、前記第1のデータと前記第3のデータとが一致しない場合に、前記1のデータを前記第4のデータとして、前記シフトレジスタに供給する
前記(8)に記載の半導体回路。
(10)前記第1のメモリは、前記第1のデータを記憶し、
前記検査部は、前記第2の期間において、前記第3のデータと、前記第1のメモリに記憶された前記第1のデータとを比較することにより、前記第3のデータを検査する
前記(3)または(4)に記載の半導体回路。
(11)前記検査部は、前記第3のデータと、前記第1のメモリに記憶された前記第1のデータとが一致しない場合に、前記1のデータを前記第4のデータとして、前記シフトレジスタに供給する
前記(10)に記載の半導体回路。
(12)前記第1の期間および前記第2の期間において、前記順序回路部への電源供給を行い、前記第1の期間と前記第2の期間との間の第4の期間において、前記順序回路部への電源供給を停止するように電源制御を行う制御部をさらに備えた
前記(2)から(11)のいずれかに記載の半導体回路。
(13)前記第1の期間において、前記順序回路部は、前記シフト動作を行った後に前記ストア動作を行う
前記(1)から(12)のいずれかに記載の半導体回路。
(14)前記第1の期間において、前記順序回路部は、前記ストア動作を行った後に前記シフト動作を行う
前記(1)から(12)のいずれかに記載の半導体回路。
(15)前記フリップフロップは、マスタラッチとスレーブラッチとを有し、
前記記憶素子は、前記スレーブラッチに接続可能に構成された
前記(1)から(14)のいずれかに記載の半導体回路。
(16)前記スレーブラッチは、
第1のノードにおける電圧に基づいて、その電圧の反転電圧を生成し、その反転電圧を第2のノードに印加可能に構成された第1の回路と、
前記第2のノードにおける電圧に基づいて、その電圧の反転電圧を生成し、その反転電圧を前記第1のノードに印加可能に構成された第2の回路と
を有し、
前記記憶素子は、前記第1のノードに接続可能に構成された第1の記憶素子と、前記第2のノードに接続可能に構成された第2の記憶素子とを含む
前記(15)に記載の半導体回路。
(17)前記記憶素子は、印加される電流に基づいて情報を記憶する
前記(1)から(16)のいずれかに記載の半導体回路。
(18)前記記憶素子は、ユニポーラ型またはバイポーラ型の素子である
前記(17)に記載の半導体回路。
(19)前記記憶素子は、印加される電圧に基づいて情報を記憶する
前記(1)から(16)のいずれかに記載の半導体回路。
(20)前記第1のメモリの記憶素子と同じ種類の記憶素子を有する第2のメモリをさらに備え、
前記第1のメモリの記憶素子のサイズは、前記第2のメモリの記憶素子のサイズよりも大きい
前記(1)から(19)のいずれかに記載の半導体回路。
(21)第1の期間において、それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有する順序回路部に、前記複数の論理回路部における前記記憶素子が前記複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、前記複数の論理回路部における前記フリップフロップがシフトレジスタとして動作するシフト動作とを行わせ、
前記第1の期間において、前記シフト動作により前記シフトレジスタから出力された第1のデータまたは前記第1のデータに対応する第2のデータを第1のメモリに記憶させる
半導体回路の制御方法。
(22)前記第1の期間の後の第2の期間において、前記順序回路部に、前記複数の論理回路部における前記記憶素子に記憶された情報に基づいて前記複数の論理回路部の電圧状態を設定するリストア動作と、前記シフト動作とをこの順で行わせ、
前記第2の期間において、検査部に、前記第1のメモリに記憶されたデータに基づいて、前記シフト動作により前記シフトレジスタから出力された第3のデータを検査させる
前記(21)に記載の半導体回路の制御方法。
(23)半導体回路と、
前記半導体回路に電源電圧を供給するバッテリと
を備え、
前記半導体回路は、
それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有し、第1の期間において、前記複数の論理回路部における前記記憶素子が前記複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、前記複数の論理回路部における前記フリップフロップがシフトレジスタとして動作するシフト動作とを行う順序回路部と、
前記第1の期間において、前記シフト動作により前記シフトレジスタから出力された第1のデータまたは前記第1のデータに対応する第2のデータを記憶する第1のメモリと
を有する
電子機器。
本出願は、日本国特許庁において2016年10月3日に出願された日本特許出願番号2016-195757号を基礎として優先権を主張するものであり、この出願のすべての内容を参照によって本出願に援用する。
当業者であれば、設計上の要件や他の要因に応じて、種々の修正、コンビネーション、サブコンビネーション、および変更を想到し得るが、それらは添付の請求の範囲やその均等物の範囲に含まれるものであることが理解される。
Claims (23)
- それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有し、第1の期間において、前記複数の論理回路部における前記記憶素子が前記複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、前記複数の論理回路部における前記フリップフロップがシフトレジスタとして動作するシフト動作とを行う順序回路部と、
前記第1の期間において、前記シフト動作により前記シフトレジスタから出力された第1のデータまたは前記第1のデータに対応する第2のデータを記憶する第1のメモリと
を備えた半導体回路。 - 検査部をさらに備え、
前記順序回路部は、前記第1の期間の後の第2の期間において、前記複数の論理回路部における前記記憶素子に記憶された情報に基づいて前記複数の論理回路部の電圧状態を設定するリストア動作と、前記シフト動作とをこの順で行い、
前記検査部は、前記第2の期間において、前記第1のメモリに記憶された前記第1のデータまたは前記第2のデータに基づいて、前記シフト動作により前記シフトレジスタから出力された第3のデータを検査する
請求項1に記載の半導体回路。 - 前記検査部は、前記第2の期間において、前記第3のデータを検査した結果に基づいて第4のデータを生成し、その第4のデータを前記シフトレジスタに供給し、
前記順序回路部は、前記第2の期間において、前記シフト動作を行うことにより、前記第4のデータを前記複数の論理回路部における前記フリップフロップの初期データとして設定する
請求項2に記載の半導体回路。 - 前記順序回路部に対して第5のデータを供給する第1の組み合わせ回路と、
第6のデータに基づいて動作する第2の組み合わせ回路と
をさらに備え、
前記順序回路部は、前記第2の期間の後の第3の期間において、前記第5のデータに基づいて前記第6のデータを生成する処理動作を行う
請求項2に記載の半導体回路。 - 前記第1のメモリは、前記第2のデータを記憶し、
前記検査部は、前記第1の期間において、前記第1のデータに基づいて第1の誤り訂正コードを生成し、
前記第2のデータは、前記第1の誤り訂正コードである
請求項3に記載の半導体回路。 - 前記検査部は、前記第2の期間において、前記第3のデータに基づいて第2の誤り訂正コードを求め、前記第1の誤り訂正コードと前記第2の誤り訂正コードとを比較することにより、前記第3のデータを検査する
請求項5に記載の半導体回路。 - 前記検査部は、前記第1の誤り訂正コードと前記第2の誤り訂正コードとが一致しない場合に、前記第1の誤り訂正コードに基づいて前記第4のデータを生成する
請求項6に記載の半導体回路。 - 前記検査部は、前記第2の期間において、前記第1の誤り訂正コードに基づいて前記第1のデータを生成し、前記第1のデータと前記第3のデータとを比較することにより、前記第3のデータを検査する
請求項5に記載の半導体回路。 - 前記検査部は、前記第1のデータと前記第3のデータとが一致しない場合に、前記1のデータを前記第4のデータとして、前記シフトレジスタに供給する
請求項8に記載の半導体回路。 - 前記第1のメモリは、前記第1のデータを記憶し、
前記検査部は、前記第2の期間において、前記第3のデータと、前記第1のメモリに記憶された前記第1のデータとを比較することにより、前記第3のデータを検査する
請求項3に記載の半導体回路。 - 前記検査部は、前記第3のデータと、前記第1のメモリに記憶された前記第1のデータとが一致しない場合に、前記1のデータを前記第4のデータとして、前記シフトレジスタに供給する
請求項10に記載の半導体回路。 - 前記第1の期間および前記第2の期間において、前記順序回路部への電源供給を行い、前記第1の期間と前記第2の期間との間の第4の期間において、前記順序回路部への電源供給を停止するように電源制御を行う制御部をさらに備えた
請求項2に記載の半導体回路。 - 前記第1の期間において、前記順序回路部は、前記シフト動作を行った後に前記ストア動作を行う
請求項1に記載の半導体回路。 - 前記第1の期間において、前記順序回路部は、前記ストア動作を行った後に前記シフト動作を行う
請求項1に記載の半導体回路。 - 前記フリップフロップは、マスタラッチとスレーブラッチとを有し、
前記記憶素子は、前記スレーブラッチに接続可能に構成された
請求項1に記載の半導体回路。 - 前記スレーブラッチは、
第1のノードにおける電圧に基づいて、その電圧の反転電圧を生成し、その反転電圧を第2のノードに印加可能に構成された第1の回路と、
前記第2のノードにおける電圧に基づいて、その電圧の反転電圧を生成し、その反転電圧を前記第1のノードに印加可能に構成された第2の回路と
を有し、
前記記憶素子は、前記第1のノードに接続可能に構成された第1の記憶素子と、前記第2のノードに接続可能に構成された第2の記憶素子とを含む
請求項15に記載の半導体回路。 - 前記記憶素子は、印加される電流に基づいて情報を記憶する
請求項1に記載の半導体回路。 - 前記記憶素子は、ユニポーラ型またはバイポーラ型の素子である
請求項17に記載の半導体回路。 - 前記記憶素子は、印加される電圧に基づいて情報を記憶する
請求項1に記載の半導体回路。 - 前記第1のメモリの記憶素子と同じ種類の記憶素子を有する第2のメモリをさらに備え、
前記第1のメモリの記憶素子のサイズは、前記第2のメモリの記憶素子のサイズよりも大きい
請求項1に記載の半導体回路。 - 第1の期間において、それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有する順序回路部に、前記複数の論理回路部における前記記憶素子が前記複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、前記複数の論理回路部における前記フリップフロップがシフトレジスタとして動作するシフト動作とを行わせ、
前記第1の期間において、前記シフト動作により前記シフトレジスタから出力された第1のデータまたは前記第1のデータに対応する第2のデータを第1のメモリに記憶させる
半導体回路の制御方法。 - 前記第1の期間の後の第2の期間において、前記順序回路部に、前記複数の論理回路部における前記記憶素子に記憶された情報に基づいて前記複数の論理回路部の電圧状態を設定するリストア動作と、前記シフト動作とをこの順で行わせ、
前記第2の期間において、検査部に、前記第1のメモリに記憶されたデータに基づいて、前記シフト動作により前記シフトレジスタから出力された第3のデータを検査させる
請求項21に記載の半導体回路の制御方法。 - 半導体回路と、
前記半導体回路に電源電圧を供給するバッテリと
を備え、
前記半導体回路は、
それぞれがフリップフロップおよび不揮発性の記憶素子を含む複数の論理回路部を有し、第1の期間において、前記複数の論理回路部における前記記憶素子が前記複数の論理回路部における電圧状態をそれぞれ記憶するストア動作と、前記複数の論理回路部における前記フリップフロップがシフトレジスタとして動作するシフト動作とを行う順序回路部と、
前記第1の期間において、前記シフト動作により前記シフトレジスタから出力された第1のデータまたは前記第1のデータに対応する第2のデータを記憶する第1のメモリと
を有する
電子機器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020197007473A KR102414605B1 (ko) | 2016-10-03 | 2017-08-23 | 반도체 회로, 반도체 회로의 제어 방법, 및 전자 기기 |
US16/336,815 US10818369B2 (en) | 2016-10-03 | 2017-08-23 | Semiconductor circuit, control method of semiconductor circuit, and electronic apparatus |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016-195757 | 2016-10-03 | ||
JP2016195757A JP2018060277A (ja) | 2016-10-03 | 2016-10-03 | 半導体回路、半導体回路の制御方法、および電子機器 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018066246A1 true WO2018066246A1 (ja) | 2018-04-12 |
Family
ID=61831723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/030087 WO2018066246A1 (ja) | 2016-10-03 | 2017-08-23 | 半導体回路、半導体回路の制御方法、および電子機器 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10818369B2 (ja) |
JP (1) | JP2018060277A (ja) |
KR (1) | KR102414605B1 (ja) |
TW (1) | TWI744384B (ja) |
WO (1) | WO2018066246A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11169899B2 (en) * | 2019-04-15 | 2021-11-09 | Toyota Motor Engineering & Manufacturing North America, Inc. | Mitigating data offsets for machine learning |
TWI750856B (zh) * | 2020-10-21 | 2021-12-21 | 大陸商合肥沛睿微電子股份有限公司 | 快速恢復工作狀態的方法及電子裝置 |
JP2022080162A (ja) * | 2020-11-17 | 2022-05-27 | ソニーセミコンダクタソリューションズ株式会社 | 半導体回路 |
US11495315B1 (en) * | 2021-08-11 | 2022-11-08 | Siemens Industry Software Inc. | Configurable built-in self-repair chain for fast repair data loading |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004126932A (ja) * | 2002-10-02 | 2004-04-22 | Handotai Rikougaku Kenkyu Center:Kk | 集積回路装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5912937A (en) * | 1997-03-14 | 1999-06-15 | Xilinx, Inc. | CMOS flip-flop having non-volatile storage |
JP3986393B2 (ja) * | 2002-08-27 | 2007-10-03 | 富士通株式会社 | 不揮発性データ記憶回路を有する集積回路装置 |
DE102005023118B3 (de) * | 2005-05-19 | 2006-12-21 | Infineon Technologies Ag | Schaltungsanordnung zum Zuführen von Konfigurationsdaten in FPGA-Einrichtungen |
US7386775B2 (en) * | 2005-08-18 | 2008-06-10 | International Business Machines Corporation | Scan verification for a scan-chain device under test |
JP4372068B2 (ja) * | 2005-09-06 | 2009-11-25 | 株式会社東芝 | プログラマブルゲートアレイ装置及び回路切替方法 |
WO2007097039A1 (ja) * | 2006-02-27 | 2007-08-30 | Fujitsu Limited | プロセッサのデバッグ機構 |
KR101611416B1 (ko) * | 2009-12-09 | 2016-04-12 | 삼성전자주식회사 | 비휘발성 논리 회로, 상기 비휘발성 논리 회로를 포함하는 집적 회로 및 상기 집적 회로의 동작 방법 |
JP5807287B2 (ja) | 2011-05-20 | 2015-11-10 | 日本電気株式会社 | 試験可能な不揮発論理ゲート |
US20140149773A1 (en) * | 2012-11-29 | 2014-05-29 | Agency For Science, Technology And Research | Latch circuit and data processing system |
KR102112367B1 (ko) * | 2013-02-12 | 2020-05-18 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 반도체 장치 |
-
2016
- 2016-10-03 JP JP2016195757A patent/JP2018060277A/ja active Pending
-
2017
- 2017-08-23 US US16/336,815 patent/US10818369B2/en active Active
- 2017-08-23 KR KR1020197007473A patent/KR102414605B1/ko active IP Right Grant
- 2017-08-23 WO PCT/JP2017/030087 patent/WO2018066246A1/ja active Application Filing
- 2017-09-21 TW TW106132382A patent/TWI744384B/zh active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004126932A (ja) * | 2002-10-02 | 2004-04-22 | Handotai Rikougaku Kenkyu Center:Kk | 集積回路装置 |
Non-Patent Citations (2)
Title |
---|
KIMIYOSHI USAMI ET AL.: "Store/Restore Dos a no Robustness 0 Kojo saseta MTJ Riyo Fukihatsusei Flip-Flop Kairo", DAI 63 KAI JSAP SPRING MEETING KOEN YOKOSHU, THE JAPAN SOCIETY OF APPLIED PHYSICS, 3 March 2016 (2016-03-03), pages 11-056 * |
TADAHIKO SUGIBAYASHI ET AL.: "MRAM Gijutsu tono Kino Yugo: Fukihatsu Jiki Flip-Flop no Shisaku to Kento", DAI 70 KAI EXTENDED ABSTRACTS; THE JAPAN SOCIETY OF APPLIED PHYSICS, THE JAPAN SOCIETY OF APPLIED PHYSICS, 10 December 2009 (2009-12-10), pages 55 * |
Also Published As
Publication number | Publication date |
---|---|
KR20190060988A (ko) | 2019-06-04 |
TW201814721A (zh) | 2018-04-16 |
TWI744384B (zh) | 2021-11-01 |
US20190228829A1 (en) | 2019-07-25 |
US10818369B2 (en) | 2020-10-27 |
JP2018060277A (ja) | 2018-04-12 |
KR102414605B1 (ko) | 2022-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018066246A1 (ja) | 半導体回路、半導体回路の制御方法、および電子機器 | |
US8289759B2 (en) | Non-volatile memory cell with precessional switching | |
JP5010700B2 (ja) | 半導体集積回路 | |
JP5238430B2 (ja) | 記憶装置 | |
JP5274670B2 (ja) | 不揮発性状態保持ラッチ | |
US9299411B2 (en) | Hybrid read scheme for spin torque MRAM | |
US20150036415A1 (en) | Non-volatile memory cell | |
US10802827B2 (en) | Memory device having in-situ in-memory stateful vector logic operation | |
JP2004247018A (ja) | 磁気ランダムアクセスメモリとその読み出し方法 | |
US20160071587A1 (en) | C-element with non-volatile back-up | |
CN101814314A (zh) | 使用可能性写入对mram单元进行编程 | |
US9368208B1 (en) | Non-volatile latch using magneto-electric and ferro-electric tunnel junctions | |
JP2017208146A (ja) | 半導体回路、駆動方法、および電子機器 | |
JPWO2017122497A1 (ja) | 半導体回路、駆動方法、および電子機器 | |
WO2016185903A1 (ja) | 不揮発性記憶回路 | |
JPWO2017150028A1 (ja) | 半導体回路、半導体回路の駆動方法、および電子機器 | |
JP2018195366A (ja) | 半導体回路、駆動方法、および電子機器 | |
Wang et al. | A 1.0 V 45nm nonvolatile magnetic latch design and its robustness analysis | |
US10311931B2 (en) | Semiconductor memory device | |
JP6801654B2 (ja) | 半導体装置 | |
TWI790497B (zh) | 半導體記憶裝置 | |
US20170131910A1 (en) | Register having non-volatile memory for backing up and restoring volatile memory | |
JP2008217842A (ja) | 不揮発性記憶装置 | |
US20240105261A1 (en) | Non-volatile storage circuit | |
JP5807287B2 (ja) | 試験可能な不揮発論理ゲート |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17858086 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 20197007473 Country of ref document: KR Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17858086 Country of ref document: EP Kind code of ref document: A1 |