WO2004057472A1 - Processor - Google Patents
Processor Download PDFInfo
- Publication number
- WO2004057472A1 WO2004057472A1 PCT/JP2002/013312 JP0213312W WO2004057472A1 WO 2004057472 A1 WO2004057472 A1 WO 2004057472A1 JP 0213312 W JP0213312 W JP 0213312W WO 2004057472 A1 WO2004057472 A1 WO 2004057472A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- memory cell
- cell
- bit
- control signal
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30105—Register structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30141—Implementation provisions of register files, e.g. ports
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
Definitions
- the present invention relates to a processor in which a CPU core, a register block, an instruction memory, a data memory, and peripheral circuits are mounted on an LSI, and more particularly to a processor having a non-volatile storage structure for saving data in a register block or a memory block.
- the method of saving data in non-volatile memory requires a processor to save internal information in several hundred cycles or more, and the saving process takes too long. Although it is possible, most use the method of stopping the clock. As described above, there is no easy way to realize a sleep mode that does not consume power in a system LSI such as a processor. The reason for this is that the storage devices that can be used in the system LSI are volatile storage devices. It seems that there is a cause. In other words, if the flip-flop SRAM has a data backup function, that is, non-volatility, the power supply can be turned off, so that there are no problems such as a leak current and a problem of saving internal information.
- Volatile storage devices include flip-flops, SRAMs, and DRAMs.
- Non-volatile storage devices include flash memory and ferroelectric memory.
- flip-flops and SRAMs which are volatile storage devices, have a high affinity with the system LSI having a CM ⁇ S configuration, but non-volatile flash memories have no affinity with the system LSI.
- Non-volatile ferroelectric memories are not as good as flip-flop SRAMs, but have high affinity with system LSIs to some extent.
- ferroelectric memory has a slower read / write speed than flip-flops and SRAMs, and is not suitable for storage devices in system LSIs that require high-speed processing.
- it has a one-to-one nonvolatile cell with the previously proposed volatile cell, saves the volatile cell data to the nonvolatile cell at the same time for each cell, and restores the nonvolatile cell when returning.
- a memory that returns the data to volatile cells is very promising.
- An object of the present invention is to provide a processor capable of simultaneously performing a high-speed task switching and a sleep mode by powering off while maintaining high-speed reading and writing of a volatile memory cell.
- the present invention is directed to a processor 10 in which a CPU core, a register block, an instruction memory, a data memory, and peripheral circuits are mounted on an LSI.
- a volatile storage cell for storing the register data bits of the currently executing task in the multi-task processing of the CPU core is provided in the register block, and a maximum number m of the tasks is provided in the register block.
- a task switching memory control unit that reads data by a read control signal and writes data to volatile memory cells by a data write control signal is provided. It is characterized in.
- a set of volatile memory cells and a plurality of non-volatile memory cells is provided for each bit of the register to configure a register having a predetermined bit length.
- cash register In the star block, a set of a volatile memory cell and a plurality of nonvolatile memory cells provided for each register bit selects external input data or output data read from one of the nonvolatile memory cells.
- a first selector for inputting to a volatile memory cell, inputting output lines of a plurality of nonvolatile memory cells, selecting corresponding output data based on a restoration read control signal for a specific nonvolatile memory cell, and A second selector for inputting to one selector is provided.
- the sunset switching storage control unit saves, for example, the task 1 register data bit stored in the volatile storage cell to the corresponding nonvolatile storage cell until the power supply voltage drops to the operable voltage or less due to the power supply cutoff. It is written and saved by the write control signal.
- the power-off register data bit saved in the non-volatile memory cell is read out by the restoration read control signal and the data write control signal is written to the volatile memory cell.
- the volatile memory cell of the register block is a flip-flop or SRAM cell
- the non-volatile memory cell is a ferroelectric memory cell.
- the ferroelectric memory is a CMOS flip-flop or SRAM cell. Therefore, a volatile memory cell and a plurality of nonvolatile memory cells can be integrated into the same register block.
- the present invention also provides a volatile memory cell for storing an externally input data bit in a data memory of a processor, a nonvolatile memory cell for saving the data bit of the volatile memory cell when power is turned off, Until the power supply voltage falls below the operating voltage, the data bits stored in the volatile memory cells are written to the nonvolatile memory cells by the save write control signal and saved, and when the power is turned on again, the nonvolatile memory cells are saved. And a data memory control unit for reading the saved data bits by a restoration read control signal and writing the data bits to a volatile memory cell by a data write control signal.
- a set of a volatile memory cell and a nonvolatile memory cell is provided for each bit of the data memory, and a data memory having a predetermined bit capacity is configured.
- the present invention provides, for a data memory of a processor, a volatile storage cell that stores an instruction bit executed by a CPU core, a nonvolatile storage cell that saves an instruction bit of the volatile storage cell when power is turned off, The power supply voltage becomes lower than the operable voltage when the power is turned off.
- the save write control signal By the save write control signal, the instruction bit stored in the volatile memory cell is written to the nonvolatile memory cell before saving, and saved when the power is turned on again.
- An instruction memory control unit for reading bits by a restoration read control signal and writing the bits in a volatile memory cell by a data write control signal.
- a set of a volatile memory cell and a nonvolatile memory cell is provided for each bit of the instruction memory to configure an instruction memory having a predetermined bit capacity.
- the volatile memory cells of the data memory and the instruction memory are SRAM cells, and the nonvolatile memory cells are ferroelectric memory cells.
- the processor of the present invention counts the number of rewrites to a nonvolatile memory cell when the number of rewrites in the nonvolatile memory cell is limited, and calculates the lifespan output when the predetermined number of rewrites is reached. It is provided in each of the register block, the data memory and the instruction memory.
- the lifetime of memory rewriting in a normal storage device can be up to about 10 15 times, and in this case, the lifetime does not matter.
- the life of memory rewriting is about 101 Q times to 101 2 times, and the number of times of rewriting is limited.
- the life counter is set up to detect that the specified number of rewrites has been reached and notify the necessity of replacing the processor.
- the life counter is a 1-bit counter that outputs a carry in one rewrite cycle, which consists of evacuation writing to nonvolatile storage cells, restoration reading from nonvolatile storage cells, and data writing to volatile memory. Multiple stages are provided according to the rewrite limit, and the carry output of the preceding 1-bit counter is connected to the carry input of the subsequent 1-bit counter.
- the 1-bit counter that constitutes this life counter stores the input data by the data write control signal and outputs the output data as the counter output, and writes and saves the input data by the save write control signal.
- a non-volatile memory cell from which data saved by the restoration read control signal is read, a data output of the volatile memory cell, and a carry output of the preceding 1-bit counter are input-connected, and an added output is output to the non-volatile memory cell.
- an adder with a carry that outputs the carry output at the subsequent stage of 1-bit counting is provided with a selector for selecting output data from the non-volatile storage cell for the volatile storage cell and external input data from the outside.
- the volatile memory cell is reset or the counter initial value is preset by selecting the external input data by the selector.
- the life counter can be reset, and if the rewrite limit count is smaller than the full count value of the counter, the counter initial value obtained by subtracting the rewrite limit count from the full count value can be preset. It is possible to accurately count the rewrite limit times and output that the life has been reached.
- Figure 1 is an illustration of a processor according to the invention
- FIG. 2 is an explanatory diagram of a schematic configuration of the register block of FIG. 1;
- FIG. 3 is an explanatory view of an embodiment of the register bit section in FIG. 2;
- Fig. 4 is a memory control diagram of Fig. 3 accompanying task switching
- FIG. 5 is an explanatory view of a schematic configuration of the data memory of FIG. 1;
- FIG. 6 is an explanatory view of an embodiment of the memory bit unit in FIG. 5;
- Figure 7 is a time chart of the memory control of Figure 6 with power off and on;
- FIG. 8 is an explanatory diagram of a schematic configuration of the instruction memory of FIG. 1;
- FIG. 9 is an explanatory view of the life force counter provided in the register block of FIG. 2;
- Figure 10 is an illustration of 1-bit counter in Figure 9;
- FIG. 11 is an explanatory diagram of the 1-bit counter of FIG. 9 that can be reset and preset;
- FIG. 1 is an explanatory diagram of a processor to which the present invention is applied.
- a processor 10 has a CPU core 12, a register block 14, an instruction memory 16, a data memory 18, and a peripheral circuit 20 integrally mounted on an LSI.
- the CPU 37 12 and the peripheral circuit 20 are a random logic unit, and the register block 14, the instruction memory 16, and the data memory 18 are configured as a memory unit.
- such a processor 10 saves register data in the register block 14 during task switching in multitask processing for executing a plurality of applications, and sleep mode by turning off the power.
- instruction memory 16 and data memory 18 A memory structure consisting of one volatile cell and a non-volatile memory cell with a maximum number of tasks of m is applied for blocks 14 and one volatile memory cell and 1 for instruction memory 16 and data memory 18. Apply the memory structure of a set of two non-volatile storage cells. As described above, in the register block 14, the instruction memory 16 and the data memory 18 constituting the memory section, the nonvolatile memory cell is provided in addition to the volatile memory cell which is usually used, so that the sleeve mode is provided. By executing a power-off sequence to save the data of the volatile memory cells to the non-volatile memory cells when moving to a non-volatile memory cell, a sleep mode by power-off can be realized.
- the instruction execution process of the processor when the instruction mode is shifted to the sleep mode, if the instruction fetch is stopped and all the fetched instructions are completed, the random access in the CPU core 12 and the peripheral circuit 20 is performed. There is no need to store data in the storage device of the magic unit, generally a flip-flop, and there is no need to make it non-volatile.
- the instruction memory 16 ⁇ data memory 18 can be used by dividing the memory area, so the only data that must be saved when switching tasks is the data in the register block 14 . Therefore, in the processor 10, the minimum configuration in which the memory configuration of the volatile storage cell and one or a plurality of nonvolatile storage cells is applied for task switching and sleep mode switching is as follows.
- Non-volatility is not applied to storage devices in the random logic section including the CPU cores 12 and peripheral circuits 20, that is, flip-flops in general.
- FIG. 2 is an explanatory diagram of a schematic configuration of the register block 14 in the processor 10 of FIG.
- the register block 14 is provided with a number of register bit sections 30-1 to 30-n corresponding to the number n of register bits. For example, referring to the first register bit section 30-1 in the register bit section 30-1 to 30-0-n, one volatile storage cell 22-1 and the maximum task for multitask processing There are provided m nonvolatile memory cells 24-11 to 24-lm corresponding to several m. this The same applies to the remaining resist bits 32-2 to 32-n.
- the register block 14 is provided with a task switching storage control unit 26.
- the volatile storage cells 22_1 to Data is read from and written to an n-bit register consisting of 22-n.
- the n-bit register data written to the volatile memory cells 22-1 to 22-n is stored in a nonvolatile memory cell corresponding to the task currently being executed. If the task currently being executed is task 1, the non-volatile storage cell 24-11-11-24 is saved to In, and if the task to be switched to is task 2, the corresponding non-volatile memory cell is saved.
- the resist data stored in the volatile memory cells 24-12 to 24-2n is read out and written to the volatile memory cells 22_1 to 22-n.
- flip-flops or SRAMs are used as the volatile memory cells 22-1 to 22-n used for the register block 14.
- the nonvolatile memory cells 24_ As 24-mn, for example, a ferroelectric memory cell having high affinity with the processor 10 using CMOS is used.
- the following table summarizes the read speed, write speed, and compatibility with non-volatile CMOS processors for currently available storage devices.
- the ferroelectric memory cell used as the nonvolatile memory cell 24-1 to 24-nm has a limit on the number of rewrites.
- the rewriting number is 1 0 1 twice (1 0 0 million times) of about from 1 0 1 G times (100 million), the 1 0 1 5 times generally rewrite count is treated as an unlimited Not reached.
- the service life of the register block 14, instruction memory 16 ', and data memory 18 using ferroelectric memory cells as nonvolatile storage cells comes first. Become. Therefore, a lifetime counter 28 is provided in the register block 14 of FIG.
- Fig. 3 shows one of the register bit sections 30-1 to 30-n provided in the register block 14 of Fig. 2 as the register bit section 30. 2 shows a configuration of a storage device.
- the resist bit section 30 is provided with one volatile memory cell 22 and m nonvolatile memory cells 24-1 to 24-m corresponding to the maximum number m of tasks. ing.
- the register evening bit section 30 is provided with a first selector 32, a second selector 34, and an OR circuit 36.
- the first selector 32 includes the external input data D 1 obtained from the data bus for the task switching storage controller 26 and the non-volatile memory cell 24 selected by the second selector 34. m, the output data D2 read from any one of the input circuits is input, and the external input data D1 is normally selected when the output of the ⁇ R circuit 36 is not obtained. Overnight D 3 is provided to volatile storage cell 22. Writing of the input data D 3 to the volatile storage cell 22 is performed by the data write control signal E 2 from the task switching storage control unit 26. This data write control signal E 2 is output in response to a register write instruction to the task switching storage control unit 26 by the control bus.
- the writing of the save data corresponding to the task to the nonvolatile memory cells 24-1 to 24-m is performed by the save write control signal E 3.
- the reading of the register data saved in the nonvolatile memory cells 24-1 to 24-m is performed by the restoration read control signal E 4.
- the restoration read control signal E 4 simultaneously switches the output of the first selector 32 to the output of the second selector 34 via the OR circuit 36.
- the restoration read control signal E 4 is also used for selecting and outputting output data from the read target cell among the nonvolatile memory cells 24-1 to 24-m in the second selector 34.
- the control bus for the task switching memory control unit 26 includes a task switching instruction signal E1 which is taken out and shown to the outside, and at the same time, the task number of the switching destination is notified by the control bus.
- FIG. 4 is a time chart at the time of power-on interruption in the register bit section 30 of FIG. 3 and also at the time of task switching.
- this time chart an example is shown in which task 1 is executed at the start of the power-on, and then the task 1 is switched to task 2.
- the power is turned on as shown in FIG. 4 (A)
- the non-volatile storage cell 24-1 corresponding to task 1 is designated by the task switching storage control unit 26 as shown in FIG.
- a recovery read control signal E 41 for task 1 of (C) is output, whereby the output data D 51 of task 1 is output from the nonvolatile memory cell 24 _ 1 as shown in FIG. 4 (D).
- the second selector 34 selects the output of the nonvolatile memory cell 24-1 by the restoration read control signal E 4, and the output data D 51 from the nonvolatile memory cell 24-1 is the second data. SEREC From evening 34, it is given to first selector 32 as output data D2. In addition, the first selector 32 is switched to the selected state of the second selector 34 by the output of the OR circuit 36 of the restoration read control signal E 4, so that the restoration read operation of the nonvolatile memory cell 24-1 is performed.
- the evacuation data of task 1 output in is passed through the second selector 34 and the first selector 32 and input to the volatile memory cell 22 as input data D 3.
- the data write control signal E 2 is output from the task switching storage controller 26 as shown in FIG.
- the volatile storage cell 22 reads from the nonvolatile storage cell 24-1.
- the saved data of task 1 is written and output as external output data D 4 as shown in Fig. 4 (H).
- a task switching instruction signal E 1 from task 1 to task 2 is input to the task switching storage controller 26 at time t 2.
- the task switching storage control unit 26 first outputs the save write control signal E31 that designates the nonvolatile storage cell 24-1, as shown in FIG.
- the external output data D 4 held in the volatile memory cell 22 is saved to the nonvolatile memory cell 24-1.
- the task switching storage control unit 26 specifies the non-volatile storage cell 24-2 of the task 2 to which the task is to be switched, and sets the restoration read control signal E 4 for the sunset 2 in FIG. 2 is output, whereby the output data D52 is output by reading out the save data of task 2 in FIG. 4 (G).
- the second selector 34 selects the output of the nonvolatile memory cell 24-2 by the restoration read control signal E 4, and the first selector 32 selects the output of the second selector 32 by the output from the OR circuit 36.
- the selector 34 is switched to the selector 34 side, and the save data of the task 2 read from the nonvolatile memory cell 24-2 is given to the volatile memory cell 22 as input data D 3.
- the task switching storage control unit 26 outputs a data write control signal E 2 to the volatile storage cell 22, and the evacuation read from the nonvolatile storage cell 24-2 is performed.
- the data is written to the volatile storage cell 22 and this is output as the external output data D 4, and the first register rate is set to start the task 2 application.
- the data of the currently executing task is saved to the corresponding nonvolatile memory cell, and then the saved data is saved from the nonvolatile memory cell corresponding to the next task to be switched to.
- the task switching storage control that reads and writes to the volatile storage cell 22 is repeated. Next, an evacuation operation in the power-off sequence for shifting to the sleep mode will be described.
- the register data of the volatile memory cell 22 is, for example, the register data associated with the execution of the application of the task 2, and in this state, the power-off sequence for shifting to the sleep mode is started.
- the task switching memory control unit 26 outputs an evacuation write control signal E32 designating the nonvolatile memory cell 24-2 corresponding to the task 2, and outputs the task 2 output from the volatile memory cell 22.
- External output data D4 is written to nonvolatile memory cell 24-2 and saved.
- the saving of the register data in the power-off sequence is performed until the power supply voltage falls to the operable voltage or lower by a capacitor or the like after the power supply is cut off.
- a ferroelectric memory cell is used as the non-volatile memory cell 24-1 to 24 _m in FIG. 3
- reading, writing, and holding by the task switching storage control unit 26 are specifically as follows. Become.
- FIG. 5 is a schematic configuration of the data memory 18 in the processor 10 of FIG.
- the data memory 18 has, for example, memory bit sections 40—11 to 40—mn arranged in n rows and m columns, and further includes a data memory control section 46 and a lifetime counter 4. 8 are provided.
- the memory bit section 40 — 11 to 40 — mn has a volatile memory cell 42 and a non-volatile memory cell 44, for example, taking the first memory bit section 40 — 11 as an example.
- the volatile memory cell 42 the SRAM cell shown in the above table is used.
- the nonvolatile memory cell 44 the ferroelectric memory cell shown in the above table is used.
- the memory bit section 40 is provided with a volatile storage cell 42, a nonvolatile storage cell 44, and a selector 45.
- the data bus, address bus, and control path from the CPU core 12 are connected to the memory controller 46, and the power on / off signal El1 in the controller bus is separately extracted. Is represented.
- the volatile memory cell 42 receives the external input data D11 from the data memory controller 46 or the output data D12 read from the nonvolatile memory cell 44.
- the input data D11 is selected, and when the power is turned on, the nonvolatile memory cell 44 is selected based on the restoration read control signal E14.
- the external output data D 14 of the volatile storage cell 42 is input to the nonvolatile storage cell 44, and the power-off sequence is performed by using the external output data D 14 as save data by the save write control signal E 13. Write through.
- the power is turned on, the data saved in the nonvolatile memory cell 44 by the restoration read control signal E 14 is read out as the output data D 12, and the data is read out through the selector 45.
- the data is written to the memory cell 42 by the overnight write control signal E12.
- FIG. 7 is a time chart of the memory control in the memory bit section 40 in FIG. 6 when the power is turned on, at the time of normal operation, and when the power is turned off.
- the memory control unit 46 when the power is turned on at time t1, the memory control unit 46 outputs a restoration read control signal E14 as shown in FIG.
- the saved data in cell 44 is read as output data D14 as shown in Fig. 7 (C).
- the selector 45 is switched to the non-volatile memory cell 44 by the restoration read control signal E 14, the output data D 12 from the non-volatile memory cell 44 is transferred to the selector 45 via the selector 45.
- FIG. 7 (D) it is given as input data D 13 to the volatile memory cell 42.
- the data memory control unit 46 outputs the data write control signal E 12 as shown in FIG. 7 (F), and the data memory control unit 46 obtains the volatile memory cell 42 via the selector 45.
- the read data from the nonvolatile memory cell 44 is written and output as external output data D14 as shown in Fig. 7 (H).
- the external input data D11 is output from the data memory control unit 46 as shown in FIG.
- the data is input to the volatile memory cell 42 via the selector 45 as the input data D 13, and the data write control signal E 12 is output as shown in FIG. 7 (F).
- the input data D13 is written to the volatile memory cell 42, and the external output data D14 is switched to the newly input external input data D11 as shown in Fig. 7 (H) and output. .
- the data memory control unit 46 transmits the save write control signal E 1 as shown in FIG. 7 (G). 3 is output to the nonvolatile memory cell 44.
- the external output data D14 from the volatile memory cell 42 is written to the nonvolatile memory cell 44 and saved.
- the power-off sequence from time t3 is performed until the power supply voltage by the capacitor becomes lower than the operable voltage due to the power-off.
- the data saved in the non-volatile memory cell 44 in the power-off sequence in this manner is stored in the non-volatile memory cell at the subsequent power-on in the same manner as the power-on at time t1 in FIG.
- the data is read from the memory cell 44 and input to the volatile memory cell 42 via the selector 45.
- the data is received and stored, and the saved data is restored by turning off the power.
- data is written from the volatile memory cell 42 to the nonvolatile memory cell 44 and saved and held, so that the sleep mode can be turned off and the leak for holding the memory in the sleep mode can be achieved. Since no current flows at all, power savings can be achieved effectively.
- FIG. 8 is a schematic configuration of the instruction memory 20 of FIG.
- the instruction memory 20 has a memory bit portion 50--11 to 50-mn of the matrix mxn. Taking the memory bit portion 50--11 as an example, it is the same as the data memory 18 in FIG.
- a volatile storage cell 52 using a SRAM cell and a nonvolatile storage cell 54 using a ferroelectric memory cell are provided.
- an instruction memory control unit 56 and a life counter 58 are provided.
- the specific configurations of the instruction memory control unit 56 and the memory bit units 50-111 to 50-mn are the same as those of the data memory of FIG.
- the instruction memory control unit 56 also saves the data of the volatile memory cell 52 to the nonvolatile memory cell 54 through the power-off sequence in the sleep mode, and when the power is turned on again, A restoration process of reading the data saved in the nonvolatile storage cell 54 and writing the data in the volatile storage cell 52 is performed. Note that the embodiment of the memory overnight in FIG. Although an example is described in which the write control signal and the read control signal operate at the signal level of the positive polarity, writing and reading may be controlled by a pulse signal or the like, and the present invention is not limited to the signal format.
- the configuration of the life counter 28 is the same as that of the life counter 48 of the memory 18 in Fig. 5 and the life counter 58 of the instruction memory 16 in Fig. 9 and used for counter control.
- Data write control signal, save write control signal, and restoration read control signal to be used are unique signals created in each of the register block 14, the data memory 18 and the instruction memory 16. Only the difference.
- FIG. 9 shows an embodiment of the life counter 28 provided in the registration block 14 of FIG.
- the lifetime counter 28 is the register bit section 30 of the register evening block 14 in FIG.
- the number of 1-bit counters 60-1 to 60-m is determined as follows. Now, assuming that the number of times of rewriting of a nonvolatile memory cell, for example, a ferroelectric memory cell is n,
- the 1-bit counters 60—1 to 60—m have a counter output, a carry input, and a carry output, and the counter control is performed by a data register output from the task switching storage controller 26 of the register block in FIG.
- the write control signal E2, the restoration read control signal E4, and the save write control signal E3 are used.
- the restoration read control signal E 4 and the save write control signal E 3 have a signal line for each of the nonvolatile memory cells 24-1 to 24-m provided in FIG. , 6 4.
- 0-i i- 6 o- m are entered.
- the number of 1-bit counters is represented by m
- the limited number of times of writing of the nonvolatile memory cell is represented by n.
- the value m has a meaning different from m indicating the number of the memory cells 24-1 to 24-m and m rows and n columns in the data memory 18 in FIG. 6 and the instruction memory 16 in FIG. 9.
- the 1-bit counters 60 — 1 to 60 _m that make up the life counter 28 sequentially connect the carry output of the counter located at the preceding stage to the carry input of the counter located at the subsequent stage.
- the carry input C0 for the first-stage 1-bit counter 60-1 is fixedly set to "1" from the outside.
- the carry output C m-1 at the 1-bit counter 60-m at the final stage is an output indicating that the life counter 28 has reached a predetermined limit number of times of rewriting.
- the counter output bl-b m of 1 pit count 60-1-60-m indicates the binary value of the actual rewrite count at that time.
- FIG. 10 shows a configuration in which one of the m 1-bit counts constituting the lifetime count 28 of FIG. 9 is taken out as a 1-bit count 60 and is shown.
- the 1-bit counter 60 includes a volatile memory cell 66, a nonvolatile memory cell 68, and a 2-input adder 70 with a carry output.
- the volatile memory cell 66 the same volatile memory cell 22 provided in the resist block shown in FIG. 3, for example, an SRAM cell is used.
- the nonvolatile memory cell the same nonvolatile memory cell 24-1 to 24-m provided in the resist block shown in FIG. 3, for example, a ferroelectric memory cell is used.
- Data writing to the volatile memory cell 66 is performed by a data write control signal E2.
- Overnight writing to the nonvolatile memory cell 68 is performed by the save write control signal E3.
- Data reading from the nonvolatile memory cell 68 is performed by the restoration read control signal E4.
- the adder 70 To the adder 70, the output of the volatile memory cell 66 and an external carry input are connected. The output of the adder 70 becomes the input of the nonvolatile memory cell 68. The carry output of the adder 70 is taken out to the outside.
- the rewriting operation of the nonvolatile memory cell in the register bit section 30 of FIG. 3 is performed through the following three processing cycles.
- the counter operation of the 1-bit counter 60 of FIG. 10 is performed simultaneously.
- the operation will now be described on the assumption that the 1-bit counter 60 is a 1-bit counter 60-1 in the first stage of FIG.
- the carry input C i-1 to the adder 70 is "1"
- the contents of the nonvolatile memory cell 68 and the volatile memory cell 66 initially Is "0”.
- the output of the first-stage 1-bit counter 60-1 is the carry input of the second-stage 1-bit counter 60-2, as shown in Figure 10, so the 1st bit of the 2nd stage Counter 60-2 is used for rewriting the nonvolatile memory cell twice.
- the carry output C 2 repeats “0” and “1”.
- the output of the m 1-bit counters 60-1 to 60-m is such that the binary number increases by one each time the number of rewrites is increased.
- the carry output C m is output as “1” from the last 1-bit counter 60-m, which indicates that the nonvolatile memory cell has reached the replacement time. be able to.
- FIG. 11 shows an embodiment in which another embodiment of the 1-bit counters 60-1 to 60-m used in the life counter 28 of FIG. 9 is shown as a 1-bit counter 60.
- the 1-bit counter 60 of this embodiment is characterized in that the volatile memory cell 66 can be externally reset and can be externally preset to “0” or “1”. .
- a new selector 72 is provided, and the selector 72 receives the external input data D 22 and the output read from the nonvolatile memory cell 68 by a reset no-preset signal.
- Data D 21 is selected and given to volatile storage cell 66 as input data D 23.
- Other configurations are the same as those of the 1-bit counter 60 of FIG.
- the 1-bit counter 60 with reset and preset function can be used to preset a specific initial value at the time of shipment for the life counter 28 of FIG. That is, the life counter 28 indicates the replacement time by the carry output Cm based on the full count of the 1-pit counter 60-1 to 60-m, and the number of full counts of the 1-bit counter 60-1 to 60-m. m does not always coincide with the maximum number of times that indicates the next scheduled replacement. Therefore, the value (2 m — n) obtained by subtracting the limited number of rewrites n to indicate the scheduled replacement time from the full count value 2 m of the life counter 28 is set as the external input data D 2 2 of the initial value.
- FIGS. 9 to 11 are examples of the lifetime counter 28 provided in the register block 14 in FIG. 3, but are provided in the data memory 18 in FIG.
- the life counter 58 and the life counter 58 provided in the instruction memory 16 of FIG. 9 can have exactly the same count configuration. In this case, the only difference is that the data write control signal E 2, the save write control signal E 3, and the restoration read control signal E 4 in FIG. 9 are used. E 12, save write control signal E 13 and restoration read control signal E 14 may be replaced. This is the same for the instruction memory 16 in FIG.
- the lifetime counter is provided for each of the register block 14, the instruction memory 16 and the data memory 18 in which the nonvolatile memory cells are provided for evacuation in FIG.
- a life counter is not necessary to provide a life counter only in the most frequently rewritten part, for example, only the register block 14, and a counter is output when the number of times of the non-volatile memory in the frequently rewritten register block 14 reaches the limit number. It may be made to recognize from the fact that it has reached the exchange time.
- a ferroelectric memory cell is taken as an example of a nonvolatile memory cell provided in combination with a volatile memory in the register block 14, the instruction memory 16 and the data memory 18 of the processor 10.
- any suitable nonvolatile memory cell can be used as long as the nonvolatile memory cell has a high affinity for the processor 10 having the CMOS configuration.
- An example of such a nonvolatile memory is MRAM.
- MR AM has high affinity with C MO S, moreover the number of rewriting life is also 1 0 1 8, no life counter must. Further rewriting number of ferroelectric memory cells to be used as a non-volatile memory cells is improved, it is not necessary to provide life counter when it reaches the 1 0 1 5 times.
- the nonvolatile memory for data saving is used for all of the register block 14, the instruction memory 16 and the data memory 18 in the processor 10 of FIG.
- a storage device is provided with storage cells corresponding to volatile storage cells, but only the register block 14 saves data temporarily in response to task switching in multitask processing.
- an embodiment in which only the configuration of the storage device of FIG. 3 may be provided. In this case, there is no function to save data in the power-off sequence in the sleep mode, but the processor performance can be sufficiently improved in that high-speed task switching in multitask processing can be realized.
- the present invention includes appropriate modifications that do not impair the objects and advantages thereof, and is not limited by the numerical values shown in the above embodiments. Industrial potential
- a non-volatile storage cell is increased in number of bits corresponding to the maximum number of tasks in multitask processing in correspondence with a volatile storage cell of a resist block in a processor. Eliminates the need to save register data to external memory when switching, and saves register data to non-volatile memory cells within the register block, enabling multi-task processing tasks to execute multiple applications instantly Switching can be realized, and the processing performance of the processor in multitask processing can be greatly improved.
- the non-volatile memory cell is provided for the instruction memory and data memory as compared to the volatile memory cell, enabling switching to sleep mode.
- the data is saved from the volatile cells to the non-volatile cells, thereby enabling the power to be turned off in the sleep mode and realizing the power saving function by turning off the power in the sleep mode.
- a non-volatile memory cell with a rewrite limit is used for the memory section including the register block, instruction memory, and data memory, the number of rewrites of the non-volatile memory cell is counted and the rewrite limit is reached. Provision of an output life counter enables accurate recognition of the processor replacement time due to the non-volatile memory cell reaching the end of its life cycle, and appropriate countermeasures until device replacement.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
A register block includes a volatile storage cell for storing a register data bit of a task being executed in the CPU core multi-task processing and a non-volatile storage cell (2) for the maximum number m of tasks for saving the register data bit for each of the tasks of the multi-task processing. For example, when switching from task 1 to task 2, a task switching storage control unit writes and saves the register bit of the volatile storage cell in the non-volatile storage cell of task 1 before switching by a save/write control signal, after which the task switching storage control unit reads out the register data bit saved in the non-volatile storage cell of task 2 after switching by a restoration/read control signal and writes the register data bit in the volatile storage cell by a data write control signal.
Description
明 細 書 プロセッサ 技術分野 Description Processor Technology
本発明は、 C P Uコア、 レジスタブロック、 命令メモリ、 データメモリ及び周 辺回路を L S I上に実装したプロセッサに関し、 特にレジス夕ブロックやメモリ ブロックにデータ退避用の不揮発性記憶構造を備えたプロセッサに関する。 背景技術 The present invention relates to a processor in which a CPU core, a register block, an instruction memory, a data memory, and peripheral circuits are mounted on an LSI, and more particularly to a processor having a non-volatile storage structure for saving data in a register block or a memory block. Background art
近年にあっては、 携帯電話等の電池駆動の端末の増加に伴い、 マイクロコンビ ユー夕や D S P等のプロセッサの機能として、 スリープモードと |1乎ばれる省電力 機能を搭載することが必須となってきている。 この省電力機能の実現方法として は、 クロックを止めて内部データ情報を保持したまま、 プロセッサ内部のフリツ プフロップゃ S R AMの動作を停止させる方法、 あるいはプロセッサ内部で値を 保持しなければならない部分のフリップフ口ップゃ S R AMの内容を外部のデー 夕を保持できる不揮発メモリや電源をオフしない揮発性メモリに退避し、 プロセ ッサ内部のフリップフ口ップゃ S R AMの内容を破棄しても構わない状態にして 電源オフし、 電源オンの復帰時に退避したデータを取り込んでから通常動作に戻 る方法などがとられている。 クロックを止める方法は、 電源はオン状態であるた めプロセッサ内部状態のデ一夕スィツチングによる電流は流れないが、 トランジ ス夕としてはリーク電流が流れて僅かながら電力を消費する。 例えば富士通株式 会社製の DSP H i—P e r i o nファミリにおいても、 スリープに相当するス タンバイモードがあり、 クロックを停止させることで電力を削減しているが、 ス タンバイ時に 5 0 Aの電流が流れている。 特に最先端の微細化されたテクノロ ジでは、動作電圧の低下などにより、 リーク電流の増加が問題視されているので、 スタンバイ時の電流は無視できない傾向にある。 In recent years, as the number of battery-powered terminals such as mobile phones has increased, it has become essential to incorporate sleep modes and power-saving functions | 1 as processor functions such as micro-computers and DSPs. Is coming. As a method of realizing this power saving function, there is a method of stopping the operation of the flip-flop / SRAM inside the processor while stopping the clock and keeping the internal data information, or a method of holding the value inside the processor. Save the contents of the flip-flop ゃ SRAM to a non-volatile memory that can hold external data or volatile memory that does not turn off the power, and destroy the contents of the flip-flop ゃ SRAM inside the processor. There is a method in which the power is turned off with no problem, the saved data is retrieved when the power is restored, and then the operation returns to normal operation. In the method of stopping the clock, since the power is on, no current flows due to switching of the internal state of the processor. However, as a transistor, a small amount of power is consumed due to leakage current. For example, the DSP Hi-Perion family manufactured by Fujitsu Limited also has a standby mode equivalent to sleep, which reduces power by stopping the clock, but a current of 50 A flows during standby. ing. In particular, in the state-of-the-art miniaturized technology, an increase in leakage current is considered to be a problem due to a decrease in operating voltage, etc., so the current during standby tends to be not negligible.
また不揮発性メモリにデ一夕を退避する方法は、 プロセッサでは内部情報の退 避は数百サイクル以上を要し、 退避処理に時間がかかり過ぎることから、 理論的
には可能であるが、 殆どはクロックを止める方法を用いている。 このようにプロ セッサなどのシステム L S Iでは、 電力を消費しないスリープモードを容易に実 現する方法がなく、 その原因は、 システム L S Iで利用可能な記憶デバイスは、 揮発性の記憶デバイスであることに原因があると考えられる。 つまり、 フリップ フロップゃ S R AMにデータパックアップ機能すなわち不揮発性があれば、 電源 をオフすることができるため、 リーク電流の問題や内部情報の退避等の問題がな くなる。 In addition, the method of saving data in non-volatile memory requires a processor to save internal information in several hundred cycles or more, and the saving process takes too long. Although it is possible, most use the method of stopping the clock. As described above, there is no easy way to realize a sleep mode that does not consume power in a system LSI such as a processor.The reason for this is that the storage devices that can be used in the system LSI are volatile storage devices. It seems that there is a cause. In other words, if the flip-flop SRAM has a data backup function, that is, non-volatility, the power supply can be turned off, so that there are no problems such as a leak current and a problem of saving internal information.
従来、 メモリ単体あるいは、 システム L S Iに実装される読出し書込み可能な 記憶デバイスは、 揮発性のものと不揮発性のものとに分類される。 揮発性の記憶 デバイスとしては、 フリップフロップ、 S R AM、 D R AMなどがある。 不揮発 性の記憶デバィスとしては、 フラッシュメモリ、強誘電体メモリなどがある。この うち、 揮発性の記憶デバィスであるフリップフロップや S R AMは C M〇 S構成 をとるシステム L S Iとの親和性が高いが、 不揮発性のフラッシュメモリはシス テム L S Iとの親和性はない。 また不揮発性の強誘電体メモリはフリップフロッ ' プゃ S R AMほどではないが、 システム L S Iとの親和性がある程度高い。 しか し、 強誘電体メモリは、 フリップフロップや S R AMに比べると読出し書込みの 速度が遅く、 高速処理が要求されるシステム L S Iの記憶デバイスには向いてい ない。 これに対して、 従来から提案されている揮発性セルと 1対 1に不揮発性セ ルを持ち、 各セル一斉に、 揮発性セルのデータを不揮発性セルへ退避し、 復帰時 に不揮発性セルのデータを揮発性セルに戻すメモリというものが非常に期待でき る。 Conventionally, readable and writable storage devices mounted on a single memory or a system LSI are classified into volatile and non-volatile storage devices. Volatile storage devices include flip-flops, SRAMs, and DRAMs. Non-volatile storage devices include flash memory and ferroelectric memory. Among them, flip-flops and SRAMs, which are volatile storage devices, have a high affinity with the system LSI having a CM〇S configuration, but non-volatile flash memories have no affinity with the system LSI. Non-volatile ferroelectric memories are not as good as flip-flop SRAMs, but have high affinity with system LSIs to some extent. However, ferroelectric memory has a slower read / write speed than flip-flops and SRAMs, and is not suitable for storage devices in system LSIs that require high-speed processing. On the other hand, it has a one-to-one nonvolatile cell with the previously proposed volatile cell, saves the volatile cell data to the nonvolatile cell at the same time for each cell, and restores the nonvolatile cell when returning. A memory that returns the data to volatile cells is very promising.
しかしながら、 近年のプロセッサにあっては、 複数のアプリケーションを実行 するためにマルチタスク処理が行われる傾向にあり、 スリープモード以外にもデ 一夕を退避するという状態があり、 退避するデータはタスク数だけ異なるデータ になる。 このタスク切替えの方法として、 タスク数だけレジスタを持たせること で、 タスク切り替え処理を瞬時に行うことができる。 そこで、 電源オフ状態まで のスリープモード機能および高速タスク切り替え機能の両方を兼ね備えようとす ると、 揮発性記憶セルと不揮発性記憶セルをペアにした記憶デバィスを最大タス ク数だけレジスタブロックに搭載する方法が考えられるが、 実装面積上のデメリ
ットがかなり大きくなる。 また、 通常の揮発性セルの記憶デバイスについて、 揮 発性記憶セルをペアにして最大タスク数だけレジスタブロックに搭載する方法と した場合には、 レジス夕ブロックが不揮発でないためにスリープモード機能での データ退避に時間がかかる問題がある。 発明の開示 However, recent processors tend to perform multi-task processing to execute multiple applications, and in some cases besides sleep mode, save data overnight. Only different data. As a method of task switching, task switching processing can be performed instantaneously by providing registers for the number of tasks. In order to provide both the sleep mode function until the power is turned off and the high-speed task switching function, the storage block consisting of a pair of volatile storage cells and nonvolatile storage cells is installed in the register block as many as the maximum number of tasks. Can be considered. The size is considerably larger. In addition, for a normal volatile cell storage device, if the volatile memory cells are paired and mounted in the register block for the maximum number of tasks, the sleep mode function is not used because the register block is not nonvolatile. There is a problem that it takes time to save data. Disclosure of the invention
本発明は、 揮発性記憶セルの読み書きの高速性を維持しつつ、 タスク高速切替 えと電源オフによるスリープモードを同時に可能とするプロセッサを提供するこ とを目的とする。 An object of the present invention is to provide a processor capable of simultaneously performing a high-speed task switching and a sleep mode by powering off while maintaining high-speed reading and writing of a volatile memory cell.
本発明は、 C P Uコア、 レジスタブロック、 命令メモリ、 データメモリ及び周 辺回路を L S I上に実装したプロセッサ 1 0を対象とする。 このようなプロセッ サにっき本発明にあっては、 レジスタブロックに、 C P Uコアのマルチタスク処 理における現在実行中のタスクのレジスタデータビットを記憶する揮発性記憶セ ルと、 最大タスク数 m分設けられ、 マルチタスク処理のタスク別にレジスタデ一 夕ビットを退避する複数の不揮発性記憶セルと、 タスク切替え時に、 退避書込み 制御信号により揮発性記憶セルに保持されているレジス夕デ一夕ビットを切替前 のタスク処理、 例えばタスク 1に対応した不揮発性記憶セルに書込んで退避させ た後に、 切替後のタスク処理、 例えばタスク 2に対応した不揮発性記憶セルに退 避しているレジスタデータビットを復元読出制御信号により読出し、 揮発性記憶 セルにデータ書込制御信号により書込むタスク切替記憶制御部とを設けたことを 特徴とする。 このようにレジスタブロックの揮発性記憶セルに対応して不揮発性 記憶セルを最大タスク数分多ビット化することで、 マルチタスク処理における夕 スク切替え時のレジス夕退避処理が高速に実施できる。 また、 スリープモードへ の切替えで電源が突然切られた場合にも、 コンデンサ等により揮発性記憶セルか ら不揮発性記憶セルへのデ一夕書込み分を保証する電力を供給できれば、 レジス タブ口ック内でタスクデータを退避して保持することが可能になり、 スリープモ ードでの電源のオフによる省電力機能が実現できる。 The present invention is directed to a processor 10 in which a CPU core, a register block, an instruction memory, a data memory, and peripheral circuits are mounted on an LSI. According to the present invention, a volatile storage cell for storing the register data bits of the currently executing task in the multi-task processing of the CPU core is provided in the register block, and a maximum number m of the tasks is provided in the register block. Before and after switching the non-volatile memory cells that save the register data bit for each task in multitask processing and the register data bit that is held in the volatile memory cell by the save write control signal when switching tasks Task processing, for example, writing to the nonvolatile memory cell corresponding to task 1 and saving it, and then switching the task processing, for example, restoring the register data bits saved in the nonvolatile memory cell corresponding to task 2 A task switching memory control unit that reads data by a read control signal and writes data to volatile memory cells by a data write control signal is provided. It is characterized in. In this manner, by increasing the number of bits in the nonvolatile memory cell corresponding to the volatile memory cell of the register block by the maximum number of tasks, it is possible to carry out the register saving process at the time of switching the evening in the multitask process. Also, even if the power is suddenly turned off by switching to the sleep mode, if the power that guarantees the data writing from the volatile memory cell to the nonvolatile memory cell can be supplied by a capacitor, etc. Task data can be saved and saved in the network, and a power saving function can be realized by turning off the power in sleep mode.
レジスタブ口ックにおいては、 揮発性記憶セルと複数の不揮発性記憶セルの組 をレジス夕のビット毎に設けることで所定ビット長のレジスタを構成する。 レジ
スタブロックにおいてレジス夕ビット毎に設けた揮発性記憶セルと複数の不揮発 性記憶セルの組は、 外部入力データ又は複数の不揮発性記憶セルのいずれか 1つ から読み出された出力データを選択して揮発性記憶セルに入力する第 1セレクタ と、 複数の不揮発性記憶セルの出力ラインを入力し、 特定の不揮発性記憶セルに 対する復元読出制御信号に基づいて対応する出力データを選択して第 1セレクタ に入力する第 2セレクタとを設けたことを特徴とする。夕スク切替記憶制御部は、 電源切断により電源電圧が動作可能電圧以下に低下するまでに、 揮発性記憶セル に記憶されている例えばタスク 1のレジスタデータビットを対応する不揮発性記 憶セルに退避書込制御信号により書込んで退避させ、 電源再投入時には不揮発性 記憶セルに退避している電源切断時のレジス夕データビットを復元読出制御信号 により読出して揮発性記憶セルにデータ書込制御信号により書込む。 ( レジスタブ ロックの揮発性記憶セルはフリップフ口ップ又は S R AMセルであり、 不揮発性 記憶セルは強誘電体メモリセルである。 強誘電体メモリは、 C MO S構成のフリ ップフロップ又は S R A Mセルとの親和性が高く、 これによつて同じレジスタブ ロック内に揮発性記憶セルと複数の不揮発性記憶セルを一体に組込むことができ る。 In the register block, a set of volatile memory cells and a plurality of non-volatile memory cells is provided for each bit of the register to configure a register having a predetermined bit length. cash register In the star block, a set of a volatile memory cell and a plurality of nonvolatile memory cells provided for each register bit selects external input data or output data read from one of the nonvolatile memory cells. A first selector for inputting to a volatile memory cell, inputting output lines of a plurality of nonvolatile memory cells, selecting corresponding output data based on a restoration read control signal for a specific nonvolatile memory cell, and A second selector for inputting to one selector is provided. The sunset switching storage control unit saves, for example, the task 1 register data bit stored in the volatile storage cell to the corresponding nonvolatile storage cell until the power supply voltage drops to the operable voltage or less due to the power supply cutoff. It is written and saved by the write control signal. When the power is turned on again, the power-off register data bit saved in the non-volatile memory cell is read out by the restoration read control signal and the data write control signal is written to the volatile memory cell. Write by ( The volatile memory cell of the register block is a flip-flop or SRAM cell, and the non-volatile memory cell is a ferroelectric memory cell. The ferroelectric memory is a CMOS flip-flop or SRAM cell. Therefore, a volatile memory cell and a plurality of nonvolatile memory cells can be integrated into the same register block.
また本発明はプロセッサのデ一タメモリに、 外部から入力されたデータビット を記憶する揮発性記憶セルと、 電源切断時に前記揮発性記憶セルのデータビッ卜 を退避する不揮発性記憶セルと、 電源切断により電源電圧が動作電圧以下に低下 するまでに、 退避書込制御信号により揮発性記憶セルに記憶されているデータビ ットを不揮発性記憶セルに書込んで退避させ、 電源再投入時に不揮発性記憶セル に退避しているデータビットを復元読出制御信号により読出し、 揮発性記憶セル にデ一夕書込制御信号により書込むデータメモリ制御部とを備えたことを特徴と する。 データメモリにおいては、 揮発性記憶セルと不揮発性記憶セルの組をデー 夕メモリのビット毎に設けたス夕のビット毎に設けることで所定ビット容量のデ 一夕メモリを構成する。 The present invention also provides a volatile memory cell for storing an externally input data bit in a data memory of a processor, a nonvolatile memory cell for saving the data bit of the volatile memory cell when power is turned off, Until the power supply voltage falls below the operating voltage, the data bits stored in the volatile memory cells are written to the nonvolatile memory cells by the save write control signal and saved, and when the power is turned on again, the nonvolatile memory cells are saved. And a data memory control unit for reading the saved data bits by a restoration read control signal and writing the data bits to a volatile memory cell by a data write control signal. In the data memory, a set of a volatile memory cell and a nonvolatile memory cell is provided for each bit of the data memory, and a data memory having a predetermined bit capacity is configured.
更に本発明は、 プロセッサのデ一タメモリにつき、 C P Uコアで実行される命 令ビットを記憶する揮発性記憶セルと、 電源切断時に揮発性記憶セルの命令ビッ トを退避する不揮発性記憶セルと、 電源切断により電源電圧が動作可能電圧以下
に低下するまでに、 退避書込制御信号により揮発性記憶セルに記憶されている命 令ビットを不揮発性記憶セルに書込んで退避させ、 電源再投入時に不揮発性記憶 セルに退避している命令ビットを復元読出し制御信号により読出し、 揮発性記憶 セルにデータ書込制御信号により書込む命令メモリ制御部とを備えたことを特徴 とする。 命令メモリにおいては、 揮発性記憶セルと不揮発性記憶セルの組を命令 メモリのビット毎に設けることで所定ビット容量の命令メモリを構成する。 デー タメモリ及び命令メモリの揮発性記憶セルは S R AMセルであり、 不揮発性記憶 セルは強誘電体メモリセルである。 Further, the present invention provides, for a data memory of a processor, a volatile storage cell that stores an instruction bit executed by a CPU core, a nonvolatile storage cell that saves an instruction bit of the volatile storage cell when power is turned off, The power supply voltage becomes lower than the operable voltage when the power is turned off. By the save write control signal, the instruction bit stored in the volatile memory cell is written to the nonvolatile memory cell before saving, and saved when the power is turned on again. An instruction memory control unit for reading bits by a restoration read control signal and writing the bits in a volatile memory cell by a data write control signal. In the instruction memory, a set of a volatile memory cell and a nonvolatile memory cell is provided for each bit of the instruction memory to configure an instruction memory having a predetermined bit capacity. The volatile memory cells of the data memory and the instruction memory are SRAM cells, and the nonvolatile memory cells are ferroelectric memory cells.
本発明のプロセッサは、 不揮発性記憶セルに書替え回数の制限がある場合、 不 揮発性記憶セルへの書替え回数を計数し、 所定の書替え制限回数に達したときに 出力する寿命力ゥン夕をレジスタブロック、 データメモリ及び命令メモリの各々 に設けたことを特徴とする。 通常の記憶デバィスにおけるメモリ書替えの寿命は 1 0 1 5回くらいまで可能であり、 この場合に寿命は問題にならない。 し力 し、 本 発明で不揮発性記憶セルとして強誘電体メモリセルを用いた場合、 メモリ書替え の寿命は 1 0 1 Q回〜 1 0 1 2乗回程度であり、書替え回数に制限がある。そこで寿 命カウン夕を設け、 所定の書替え制限回数に達したことを検知してプロセッサの 交換の必要性を知らせるようにする。 寿命カウンタは、 不揮発性記憶セルへの退 避書込み、 不揮発性記憶セルからの復元読出し、 及び揮発性メモリへのデータ書 込みとなる 1回の書替えサイクルでキヤリ一を出力する 1ビットカウン夕を書替 え制限回数に応じて複数段備え、 前段の 1ビットカウンタのキヤリ一出力を後段 の 1ビットカウン夕のキヤリー入力に接続する。 この寿命カウンタを構成する 1 ビットカウンタは、 データ書込制御信号により入力データを記憶して出力データ をカウンタ出力とする揮発性記憶セルと、 退避書込制御信号により入力データを 書込んで退避し、 復元読出制御信号により退避したデータを読出す不揮発性記憶 セルと、 揮発性記憶セルのデータ出力と前段の 1ビットカウン夕のキャリー出力 を入力接続して加算出力を不揮発性記憶セルに出力すると共にキャリー出力を後 段の 1ビットカウン夕に出力するキャリー付き加算器とを備える。 更に、 寿命力 ゥンタを構成する 1ビットカウン夕の各々は、 揮発性記憶セルに対する不揮発性 記憶セルからの出力データと外部からの外部入力データを選択するセレクタを備
え、 セレクタによる外部入力デ一夕の選択により揮発性記憶セルのリセッ卜又は カウンタ初期値のプリセットを行う。 これによつて寿命カウンタのリセットを可 能とし、 また書替制限回数がカウンタのフルカウント値より小さい場合、 フル力 ゥント値から書替制限回数を差し引いて求めたカウンタ初期値のプリセットを可 能とし、 書替制限回数を正確に計数して寿命に達したことを出力できる。 図面の簡単な説明 The processor of the present invention counts the number of rewrites to a nonvolatile memory cell when the number of rewrites in the nonvolatile memory cell is limited, and calculates the lifespan output when the predetermined number of rewrites is reached. It is provided in each of the register block, the data memory and the instruction memory. The lifetime of memory rewriting in a normal storage device can be up to about 10 15 times, and in this case, the lifetime does not matter. However, when a ferroelectric memory cell is used as the non-volatile memory cell in the present invention, the life of memory rewriting is about 101 Q times to 101 2 times, and the number of times of rewriting is limited. Therefore, a life counter is set up to detect that the specified number of rewrites has been reached and notify the necessity of replacing the processor. The life counter is a 1-bit counter that outputs a carry in one rewrite cycle, which consists of evacuation writing to nonvolatile storage cells, restoration reading from nonvolatile storage cells, and data writing to volatile memory. Multiple stages are provided according to the rewrite limit, and the carry output of the preceding 1-bit counter is connected to the carry input of the subsequent 1-bit counter. The 1-bit counter that constitutes this life counter stores the input data by the data write control signal and outputs the output data as the counter output, and writes and saves the input data by the save write control signal. A non-volatile memory cell from which data saved by the restoration read control signal is read, a data output of the volatile memory cell, and a carry output of the preceding 1-bit counter are input-connected, and an added output is output to the non-volatile memory cell. And an adder with a carry that outputs the carry output at the subsequent stage of 1-bit counting. In addition, each of the 1-bit counters constituting the lifetime counter is provided with a selector for selecting output data from the non-volatile storage cell for the volatile storage cell and external input data from the outside. The volatile memory cell is reset or the counter initial value is preset by selecting the external input data by the selector. As a result, the life counter can be reset, and if the rewrite limit count is smaller than the full count value of the counter, the counter initial value obtained by subtracting the rewrite limit count from the full count value can be preset. It is possible to accurately count the rewrite limit times and output that the life has been reached. BRIEF DESCRIPTION OF THE FIGURES
図 1は本発明によるプロセッサの説明図; Figure 1 is an illustration of a processor according to the invention;
図 2は図 1のレジスタブロックにおける概略構成の説明図; FIG. 2 is an explanatory diagram of a schematic configuration of the register block of FIG. 1;
図 3は図 2におけるレジスタビット部の実施形態の説明図; FIG. 3 is an explanatory view of an embodiment of the register bit section in FIG. 2;
図 4はタスク切替に伴う図 3.の記憶制御の夕ィムチヤ一ト; Fig. 4 is a memory control diagram of Fig. 3 accompanying task switching;
図 5は図 1のデータメモリにおける概略構成の説明図; FIG. 5 is an explanatory view of a schematic configuration of the data memory of FIG. 1;
図 6は図 5におけるメモリビット部の実施形態の説明図; FIG. 6 is an explanatory view of an embodiment of the memory bit unit in FIG. 5;
図 7は電源切断と再投入に伴う図 6の記憶制御のタイムチャート; Figure 7 is a time chart of the memory control of Figure 6 with power off and on;
図 8は図 1の命令メモリにおける概略構成の説明図; FIG. 8 is an explanatory diagram of a schematic configuration of the instruction memory of FIG. 1;
図 9は図 2のレジスタブロックに設けた寿命力ゥンタの説明図; FIG. 9 is an explanatory view of the life force counter provided in the register block of FIG. 2;
図 1 0は図 9の 1ビットカウン夕の説明図; Figure 10 is an illustration of 1-bit counter in Figure 9;
図 1 1はリセットとプリセット可能な図 9の 1ビットカウン夕の説明図; 発明を実施するための最良の形態 FIG. 11 is an explanatory diagram of the 1-bit counter of FIG. 9 that can be reset and preset;
図 1は、 本発明が適用されるプロセッサの説明図である。 図 1において、 プロ セッサ 1 0は、 C P Uコア 1 2、 レジスタブロック 1 4、 命令メモリ 1 6、 デー タメモリ 1 8及び周辺回路 2 0を L S I上に一体に実装している。 C P U 37 1 2や周辺回路 2 0はランダムロジック部であり、 レジスタブロック 1 4、 命令メ モリ 1 6及びデ一夕メモリ 1 8はメモリ部として構成されている。 このようなプ 口セッサ 1 0に対し本発明にあっては、 複数のアプリケーションを実行させるマ ルチタスク処理におけるタスク切替時のレジス夕ブロック 1 4でのレジスタデー 夕の退避と、 電源オフによるスリープモードに移行する際のレジス夕ブロック 1 4、 命令メモリ 1 6及びデータメモリ 1 8でのデータ退避のため、 レジスタブ口
ック 1 4については 1つの揮発性セルと最大タスク数 mの不揮発性メモリセルの 組のメモリ構造を適用し、 命令メモリ 1 6 びデータメモリ 1 8については 1つ の揮発性記憶セルと 1つの不揮発性記憶セルの組のメモリ構造を適用する。 このようにメモリ部を構成するレジスタブロック 1 4、 命令メモリ 1 6及びデ 一夕メモリ 1 8について、 通常使用されている揮発性記憶セルに加え不揮発性記 憶セルが設けられることで、 スリーブモードに移動する際に揮発性記憶セルのデ 一夕を不揮発性記憶セルに退避する電源オフのシーケンスを実行することで電源 オフによるスリープモードを実現できる。 一方、 プロセッサの命令実行処理につ いては、 スリープモードへの移行に際し、 命令フェッチを停止してフェッチ済み の命令を全て実行完了させれば、 C P Uコア 1 2及び周辺回路 2 0におけるラン ダム口ジック部の記憶デバイス、 一般的にはフリップフ口ップにはデータを保存 する必要がなく、 不揮発性とする必要はない。 またマルチタスク処理において、 命令メモリ 1 6ゃデ一タメモリ 1 8についてはメモリ領域を分割して利用すれば よいため、 タスク切替時に退避しなければならないデータはレジス夕ブロック 1 4のデータのみである。 したがってプロセッサ 1 0において、 タスク切替え及び スリ一プモード切替えのために揮発性記憶セルと 1又は複数の不揮発性記憶セル のメモリ構成を適用する最小構成としては次のようになる。 FIG. 1 is an explanatory diagram of a processor to which the present invention is applied. In FIG. 1, a processor 10 has a CPU core 12, a register block 14, an instruction memory 16, a data memory 18, and a peripheral circuit 20 integrally mounted on an LSI. The CPU 37 12 and the peripheral circuit 20 are a random logic unit, and the register block 14, the instruction memory 16, and the data memory 18 are configured as a memory unit. According to the present invention, such a processor 10 saves register data in the register block 14 during task switching in multitask processing for executing a plurality of applications, and sleep mode by turning off the power. To save the data in the register block 14, instruction memory 16 and data memory 18 A memory structure consisting of one volatile cell and a non-volatile memory cell with a maximum number of tasks of m is applied for blocks 14 and one volatile memory cell and 1 for instruction memory 16 and data memory 18. Apply the memory structure of a set of two non-volatile storage cells. As described above, in the register block 14, the instruction memory 16 and the data memory 18 constituting the memory section, the nonvolatile memory cell is provided in addition to the volatile memory cell which is usually used, so that the sleeve mode is provided. By executing a power-off sequence to save the data of the volatile memory cells to the non-volatile memory cells when moving to a non-volatile memory cell, a sleep mode by power-off can be realized. On the other hand, in the instruction execution process of the processor, when the instruction mode is shifted to the sleep mode, if the instruction fetch is stopped and all the fetched instructions are completed, the random access in the CPU core 12 and the peripheral circuit 20 is performed. There is no need to store data in the storage device of the magic unit, generally a flip-flop, and there is no need to make it non-volatile. In the multitasking process, the instruction memory 16 ゃ data memory 18 can be used by dividing the memory area, so the only data that must be saved when switching tasks is the data in the register block 14 . Therefore, in the processor 10, the minimum configuration in which the memory configuration of the volatile storage cell and one or a plurality of nonvolatile storage cells is applied for task switching and sleep mode switching is as follows.
( 1 ) C P Uコア 1 2及び周辺回路 2 0を含むランダムロジック部における記 憶デバイス、 即ち一般的にはフリップフ口ップには不揮発性は未適用。 (1) Non-volatility is not applied to storage devices in the random logic section including the CPU cores 12 and peripheral circuits 20, that is, flip-flops in general.
( 2 ) レジスタブロック 1 4は実行する最大タスク数 m分のデータ退避用の不 揮発性記憶セルを持った構成の記憶デバィスを適用。 (2) For the register block 14, a storage device with a nonvolatile storage cell for saving data for the maximum number m of tasks to be executed is applied.
( 3 ) 命令メモリ 1 6及びデータメモリ 1 8は、 1つのデータ退避用の不揮発 性記憶セルを持つた構成の記憶デバィスを適用。 (3) For the instruction memory 16 and the data memory 18, a storage device configured with one non-volatile storage cell for data saving is applied.
図 2は、 図 1のプロセッサ 1 0におけるレジスタブロック 1 4の概略構成の説 明図である。 図 3において、 レジスタブロック 1 4には、 レジス夕ビット数 nに 対応した数のレジスタビット部 3 0— 1〜3 0—nが設けられる。 レジス夕ビッ ト部 3 0— 1〜3 0— nには、 例えば先頭のレジスタビット部 3 0— 1を参照す ると、 1つの揮発性記憶セル 2 2 - 1とマルチタスク処理の最大タスク数 mに対 応した m個の不揮発性記憶セル 2 4 - 1 1〜2 4— l mが設けられている。 この
点は、 残りのレジス夕ビット部 32— 2〜32—nについても同様である。 また レジスタブロック 14にはタスク切替記憶制御部 26が設けられ、 CPUコア 1 2側における複数のアプリケーションの中の 1つの実行中のあるタスクの処理に あっては、 揮発性記憶セル 22 _ 1〜22—nで構成される nビッ卜のレジスタ を対象にデータの読み書きを行っている。 また CPUコア 12側でタスク切替え を行う際には、 揮発性記憶セル 22— 1〜22— nに書き込んでいる nビットの レジスタデ一夕を現在実行中のタスクに対応した不揮発性記憶セル、 例えば現在 実行中のタスクがタスク 1であった場合には不揮発性記憶セル 24— 1 1〜24 一 I nに退避した後に、 切替先のタスクがタスク 2である場合には、 これに対応 した不揮発性記憶セル 24— 12〜24— 2 nに退避しているレジス夕データを 読み出し、 揮発性記憶セル 22 _ 1〜22— nに書き込む。 ここで、 レジスタブ ロック 14に使用する揮発性記憶セル 22— 1〜 22— nとしてはフリップフロ ップまたは SRAMを用いる。 一方、 不揮発性記憶セル 24_:!〜 24—mnと しては、 CMOSを用いたプロセッサ 10との親和性の高い例えば強誘電体メモ リセルを使用する。 現在、 実用化されている記憶デバイスについて、 読出速度、 書込速度、 不揮発性 CMOS構成のプロセッサとの親和性をまとめると、 次表の ようになる。 FIG. 2 is an explanatory diagram of a schematic configuration of the register block 14 in the processor 10 of FIG. In FIG. 3, the register block 14 is provided with a number of register bit sections 30-1 to 30-n corresponding to the number n of register bits. For example, referring to the first register bit section 30-1 in the register bit section 30-1 to 30-0-n, one volatile storage cell 22-1 and the maximum task for multitask processing There are provided m nonvolatile memory cells 24-11 to 24-lm corresponding to several m. this The same applies to the remaining resist bits 32-2 to 32-n. The register block 14 is provided with a task switching storage control unit 26. In the processing of one executing task of a plurality of applications on the CPU core 12 side, the volatile storage cells 22_1 to Data is read from and written to an n-bit register consisting of 22-n. When task switching is performed on the CPU core 12, the n-bit register data written to the volatile memory cells 22-1 to 22-n is stored in a nonvolatile memory cell corresponding to the task currently being executed. If the task currently being executed is task 1, the non-volatile storage cell 24-11-11-24 is saved to In, and if the task to be switched to is task 2, the corresponding non-volatile memory cell is saved. The resist data stored in the volatile memory cells 24-12 to 24-2n is read out and written to the volatile memory cells 22_1 to 22-n. Here, flip-flops or SRAMs are used as the volatile memory cells 22-1 to 22-n used for the register block 14. On the other hand, the nonvolatile memory cells 24_ :! As 24-mn, for example, a ferroelectric memory cell having high affinity with the processor 10 using CMOS is used. The following table summarizes the read speed, write speed, and compatibility with non-volatile CMOS processors for currently available storage devices.
* 2 :破壊読出しであるため、 読出し時も書込み時と同様の処理が行われ、 且 つ書込み回数に制限あり。 * 2: Since it is a destructive read, the same processing is performed at the time of read as at the time of write, and the number of writes is limited.
* 3: DRAM混在テクノロジが存在するが、一般的には製造歩留まりが悪く、 CMOSとの親和性は低いとされる。 * 3: Although there is DRAM mixed technology, manufacturing yield is generally low and affinity with CMOS is said to be low.
* 4 : CMOSとの親和性には問題がないものの、 読み書きの速度が低いこと
及び書込み回数に制限あり。 この表から明らかなように、 現在、 プロセッサを構成している C MO Sとの親 和性が高い不揮発性の記憶デバィスとしては強誘電体メモリが最適であることが 分かる。 しかしながら、 強誘電体メモリは C M O Sとの親和性には問題がないも のの、 読出速度と書込速度が低いことから、 タスク切替時や電源切断時の退避用 には利用できるが、 通常のプロセッサ処理におけるメモリとしては不適切である ことから、 別途、 揮発性記憶セル 2 2— 1〜2 2— nを設けており、 この揮発性 記憶セル 2 2 _ 1〜2 2— nとしてはフリップフロップや S R AMセルを用いる。 また、 不揮発性記憶セル 2 4— 1〜2 4— n mとして使用する強誘電体メモリセ ルは書替回数に制限があることが知られている。 この書替回数は 1 0 1 G回 (1億 回) から 1 0 1 2回 (1 0 0億回) 程度であり、 一般的に書替回数が無制限として 扱われる 1 0 1 5回には達していない。 即ち、 プロセッサ 1 0全体からみると、 不 揮発性記憶セルとして強誘電体メモリセルを採用したレジス夕ブロック 1 4、 命 令メモリ 1 6'及びデータメモリ 1 8について、 先に寿命が来ることになる。 そこ で、 図 2のレジスタブロック 1 4には寿命カウン夕 2 8が設けられる。 寿命カウ ンタ 2 8は、 揮発性記憶セルの書替回数が予め設定した制限書替回数に達したと きに出力し、 プロセッサ 1 0が交換時期に達したことをユーザに知らせる。 この 点は後に説明する命令メモリ 1 6及びデータメモリ 1 8についても同様である。 図 3は、 図 2のレジス夕ブロック 1 4に設けているレジスタビット部 3 0— 1 〜3 0—nの 1つをレジスタビット部 3 0として取り出して、 タスク切替制御部 2 6と共に、 その記憶デバイスの構成を示している。 図 3において、 レジス夕ビ ット部 3 0には 1つの揮発性記憶セル 2 2と最大タスク数 mに対応した m個の不 揮発性記憶セル 2 4— 1〜2 4— mが設けられている。 更にレジス夕ビット部 3 0には、 第 1セレクタ 3 2、 第 2セレクタ 3 4及び O R回路 3 6が設けられる。 第 1セレクタ 3 2には、 タスク切替記憶制御部 2 6に対するデータバスから得ら れた外部入力データ D 1と第 2セレクタ 3 4で選択された不揮発性記憶セル 2 4 一 1〜2 4— mのいずれかから読み出された出力データ D 2が入力され、 〇R回 路 3 6の出力が得られていない通常時は外部入力データ D 1が選択され、 入力デ
一夕 D 3として揮発性記憶セル 2 2に与えられる。 揮発性記憶セル 2 2に対する 入力データ D 3の書込みは、 タスク切替記憶制御部 2 6からのデータ書込制御信 号 E 2により行われる。 このデータ書込制御信号 E 2は、 タスク切替記憶制御部 2 6に対するコントロールバスによるレジスタ書込指示に対応して出力される。 不揮発性記憶セル 2 4— 1〜2 4— mに対するタスクに対応した退避デ一夕の書 込みは、 退避書込制御信号 E 3により行われる。 また不揮発性記憶セル 2 4― 1 〜 2 4— mに退避したレジスタデータの読出しは復元読出制御信号 E 4により行 われる。 復元読出制御信号 E 4は同時に O R回路 3 6を介して、 第 1セレクタ 3 2の出力を第 2セレクタ 3 4からの出力に切り替える。 また復元読出制御信号 E 4は、 第 2セレクタ 3 4における不揮発性記憶セル 2 4— 1〜2 4— mの中の読 出対象となったセルからの出力データの選択出力にも使用される。 タスク切替記 憶制御部 2 6に対するコントロールバスの中には外部に取り出して示すタスク切 替指示信号 E 1が含まれており、 同時にコントロールバスによって切替先のタス ク番号が通知されることで、 揮発性記憶セル 2 2に保持している現在実行中の夕 スクのレジスタデ一夕を対応する不揮発性記憶セル、 例えばタスク 1の実行中で あれば不揮発性記憶セル 2 4— 1に退避した後、 次のタスク切替えがタスク 2で あった場合には不揮発性記憶セル 2 4— 2に退避しているタスク 2のレジスタデ 一夕を読み出し、 第 2セレクタ 3 4及び第 1セレクタ 3 2を介して揮発性記憶セ ル 2 2に書き込むようになる。 * 4: Low read / write speed, although there is no problem with compatibility with CMOS And the number of times of writing is limited. As is clear from this table, it is clear that a ferroelectric memory is most suitable as a nonvolatile storage device that is highly compatible with the CMOS that constitutes the processor at present. However, although the ferroelectric memory has no problem with the affinity with CMOS, it can be used for evacuation at the time of task switching or power-off because of its low read speed and write speed. Since it is not suitable as a memory in processor processing, a volatile storage cell 22-1 to 22-n is provided separately, and the volatile storage cell 22-1 to 22-n is a flip-flop. Or a SRAM cell. Further, it is known that the ferroelectric memory cell used as the nonvolatile memory cell 24-1 to 24-nm has a limit on the number of rewrites. The rewriting number is 1 0 1 twice (1 0 0 million times) of about from 1 0 1 G times (100 million), the 1 0 1 5 times generally rewrite count is treated as an unlimited Not reached. In other words, from the perspective of the entire processor 10, the service life of the register block 14, instruction memory 16 ', and data memory 18 using ferroelectric memory cells as nonvolatile storage cells comes first. Become. Therefore, a lifetime counter 28 is provided in the register block 14 of FIG. The life counter 28 outputs when the number of rewrites of the volatile memory cell reaches a preset limit number of rewrites, and notifies the user that the processor 10 has reached the replacement time. This applies to the instruction memory 16 and the data memory 18 described later. Fig. 3 shows one of the register bit sections 30-1 to 30-n provided in the register block 14 of Fig. 2 as the register bit section 30. 2 shows a configuration of a storage device. In FIG. 3, the resist bit section 30 is provided with one volatile memory cell 22 and m nonvolatile memory cells 24-1 to 24-m corresponding to the maximum number m of tasks. ing. Further, the register evening bit section 30 is provided with a first selector 32, a second selector 34, and an OR circuit 36. The first selector 32 includes the external input data D 1 obtained from the data bus for the task switching storage controller 26 and the non-volatile memory cell 24 selected by the second selector 34. m, the output data D2 read from any one of the input circuits is input, and the external input data D1 is normally selected when the output of the 〇R circuit 36 is not obtained. Overnight D 3 is provided to volatile storage cell 22. Writing of the input data D 3 to the volatile storage cell 22 is performed by the data write control signal E 2 from the task switching storage control unit 26. This data write control signal E 2 is output in response to a register write instruction to the task switching storage control unit 26 by the control bus. The writing of the save data corresponding to the task to the nonvolatile memory cells 24-1 to 24-m is performed by the save write control signal E 3. The reading of the register data saved in the nonvolatile memory cells 24-1 to 24-m is performed by the restoration read control signal E 4. The restoration read control signal E 4 simultaneously switches the output of the first selector 32 to the output of the second selector 34 via the OR circuit 36. The restoration read control signal E 4 is also used for selecting and outputting output data from the read target cell among the nonvolatile memory cells 24-1 to 24-m in the second selector 34. . The control bus for the task switching memory control unit 26 includes a task switching instruction signal E1 which is taken out and shown to the outside, and at the same time, the task number of the switching destination is notified by the control bus. After saving the register data of the currently executing disk held in the volatile memory cell 22 to the corresponding non-volatile memory cell, for example, if the task 1 is being executed, save it to the non-volatile memory cell 24-1 If the next task switching is the task 2, the register data of the task 2 saved in the non-volatile memory cell 24-2 is read out, and is read through the second selector 34 and the first selector 32. It will write to volatile storage cell 22.
図 4は、 図 3のレジスタビット部 3 0におけるパワーオンス夕一ト時と、 更に タスク切替時のタイムチャートである。 なお、 このタイムチャートにあっては、 パヮ一オンスタートで最初にタスク 1を実行し、 その後、 タスク 1からタスク 2 に切り替える場合を例に取っている。 いま図 4 (A) のように電源をオンしたと すると、 その後の時刻 t 1において、 タスク切替記憶制御部 2 6よりタスク 1に 対応した不揮発性記憶セル 2 4— 1を指定した図 4 ( C) のタスク 1に対する復 元読出制御信号 E 4 1が出力され、 これによつて不揮発性記憶セル 2 4 _ 1より タスク 1の出力データ D 5 1が図 4 (D) のように出力される。 このとき、 復元 読出制御信号 E 4により第 2セレクタ 3 4は不揮発性記憶セル 2 4— 1の出力を 選択しており、 不揮発性記憶セル 2 4— 1からの出力データ D 5 1は第 2セレク
夕 3 4から出力データ D 2として第 1セレクタ 3 2に与えられる。 また第 1セレ クタ 3 2は復元読出制御信号 E 4の O R回路 3 6による出力で第 2セレクタ 3 4 側の選択状態に切り替わっており、 したがつて不揮発性記憶セル 2 4— 1の復元 読出しで出力されたタスク 1の退避データは、 第 2セレクタ 3 4、 第 1セレクタ 3 2を通って、 揮発性記憶セル 2 2に入力データ D 3として入力される。 この状 態で、 図 4 ( E ) のようにタスク切替記憶制御部 2 6よりデータ書込制御信号 E 2が出力され、 揮発性記憶セル 2 2に不揮発性記憶セル 2 4— 1から読み出され たタスク 1の退避データが書き込まれ、 図 4 (H) のように外部出力データ D 4 として出力される。 続いて時刻 t 2で、 タスク切替記憶制御部 2 6に対しタスク 1からタスク 2へのタスク切替指示信号 E 1が入力したとする。 このタスク切替 指示に対しタスク切替記憶制御部 2 6は、 まず図 4 ( B ) のように不揮発性記憶 セル 2 4— 1を指定した退避書込制御信号 E 3 1を出力し、 現在処理中のタスク 1について、 揮発性記憶セル 2 2に保持している外部出力データ D 4を不揮発性 記憶セル 2 4— 1に退避する。 同時に時刻 t 2でタスク切替記憶制御部 2 6は、 切替先となるタスク 2の不揮発性記憶セル 2 4— 2を指定して、 図 4 ( F ) の夕 スク 2に対する復元読出制御信号 E 4 2を出力し、 これによつて図 4 ( G) のタ スク 2の退避デ一夕の読出しによる出力データ D 5 2が出力される。 このとき、 復元読出制御信号 E 4により第 2セレクタ 3 4は不揮発性記憶セル 2 4— 2の出 力を選択しており、 また O R回路 3 6からの出力で第 1セレクタ 3 2は第 2セレ クタ 3 4側に切り替わつており、 不揮発性記憶セル 2 4— 2から読み出されたタ スク 2の退避デ一夕は入力データ D 3として揮発性記憶セル 2 2に与えられる。 このため図 4 ( E ) のように、 タスク切替記憶制御部 2 6は揮発性記憶セル 2 2 に対するデータ書込制御信号 E 2を出力し、 不揮発性記憶セル 2 4— 2から読み 出した退避データを揮発性記憶セル 2 2に書き込み、 これを外部出力データ D 4 として出力し、 タスク 2のアプリケーションを開始するための最初のレジスタレ ートのセットが行われる。 以下同様にして、 タスク切替指示があるごとに、 現在 実行中のタスクのデータを対応する不揮発性記憶セルに退避した後、 次の切替先 のタスクに対応した不揮発性記憶セルから退避デー夕を読み出して揮発性記憶セ ル 2 2に書き込むタスク切替記憶制御を繰り返す。
次に、 スリープモードへ移行するための電源オフシーケンスにおける退避動作 を説明する。 揮発性記憶セル 2 2のレジスタデータが例えばタスク 2のアプリケ —ションの実行に伴うレジスタデータであり、 この状態でスリ一プモードに移行 するための電源オフシーケンスが開始されたとする。 タスク切替記憶制御部 2 6 はタスク 2に対応した不揮発性記憶セル 2 4 - 2を指定した退避書込制御信号 E 3 2を出力し、 揮発性記憶セル 2 2から出力されているタスク 2の外部出力デー 夕 D 4を不揮発性記憶セル 2 4 - 2に書き込んで退避する。 この電源オフシ一ケ ンスにおけるレジスタデータの退避は、 電源が切断されてコンデンサなどにより 電源電圧が動作可能電圧以下に下がるまでの間に行われることになる。 ここで図 3の不揮発性記憶セル 2 4— 1〜2 4 _mとして強誘電体メモリセルを使用した 場合、 タスク切替記憶制御部 2 6による読出し、 書込み及び保持は具体的には次 のようになる。 FIG. 4 is a time chart at the time of power-on interruption in the register bit section 30 of FIG. 3 and also at the time of task switching. In this time chart, an example is shown in which task 1 is executed at the start of the power-on, and then the task 1 is switched to task 2. Now, assuming that the power is turned on as shown in FIG. 4 (A), at a subsequent time t1, the non-volatile storage cell 24-1 corresponding to task 1 is designated by the task switching storage control unit 26 as shown in FIG. A recovery read control signal E 41 for task 1 of (C) is output, whereby the output data D 51 of task 1 is output from the nonvolatile memory cell 24 _ 1 as shown in FIG. 4 (D). You. At this time, the second selector 34 selects the output of the nonvolatile memory cell 24-1 by the restoration read control signal E 4, and the output data D 51 from the nonvolatile memory cell 24-1 is the second data. SEREC From evening 34, it is given to first selector 32 as output data D2. In addition, the first selector 32 is switched to the selected state of the second selector 34 by the output of the OR circuit 36 of the restoration read control signal E 4, so that the restoration read operation of the nonvolatile memory cell 24-1 is performed. The evacuation data of task 1 output in is passed through the second selector 34 and the first selector 32 and input to the volatile memory cell 22 as input data D 3. In this state, the data write control signal E 2 is output from the task switching storage controller 26 as shown in FIG. 4 (E), and the volatile storage cell 22 reads from the nonvolatile storage cell 24-1. The saved data of task 1 is written and output as external output data D 4 as shown in Fig. 4 (H). Subsequently, it is assumed that a task switching instruction signal E 1 from task 1 to task 2 is input to the task switching storage controller 26 at time t 2. In response to the task switching instruction, the task switching storage control unit 26 first outputs the save write control signal E31 that designates the nonvolatile storage cell 24-1, as shown in FIG. For task 1 of the above, the external output data D 4 held in the volatile memory cell 22 is saved to the nonvolatile memory cell 24-1. At the same time, at time t 2, the task switching storage control unit 26 specifies the non-volatile storage cell 24-2 of the task 2 to which the task is to be switched, and sets the restoration read control signal E 4 for the sunset 2 in FIG. 2 is output, whereby the output data D52 is output by reading out the save data of task 2 in FIG. 4 (G). At this time, the second selector 34 selects the output of the nonvolatile memory cell 24-2 by the restoration read control signal E 4, and the first selector 32 selects the output of the second selector 32 by the output from the OR circuit 36. The selector 34 is switched to the selector 34 side, and the save data of the task 2 read from the nonvolatile memory cell 24-2 is given to the volatile memory cell 22 as input data D 3. Therefore, as shown in FIG. 4 (E), the task switching storage control unit 26 outputs a data write control signal E 2 to the volatile storage cell 22, and the evacuation read from the nonvolatile storage cell 24-2 is performed. The data is written to the volatile storage cell 22 and this is output as the external output data D 4, and the first register rate is set to start the task 2 application. Similarly, every time a task switching instruction is issued, the data of the currently executing task is saved to the corresponding nonvolatile memory cell, and then the saved data is saved from the nonvolatile memory cell corresponding to the next task to be switched to. The task switching storage control that reads and writes to the volatile storage cell 22 is repeated. Next, an evacuation operation in the power-off sequence for shifting to the sleep mode will be described. It is assumed that the register data of the volatile memory cell 22 is, for example, the register data associated with the execution of the application of the task 2, and in this state, the power-off sequence for shifting to the sleep mode is started. The task switching memory control unit 26 outputs an evacuation write control signal E32 designating the nonvolatile memory cell 24-2 corresponding to the task 2, and outputs the task 2 output from the volatile memory cell 22. External output data D4 is written to nonvolatile memory cell 24-2 and saved. The saving of the register data in the power-off sequence is performed until the power supply voltage falls to the operable voltage or lower by a capacitor or the like after the power supply is cut off. Here, when a ferroelectric memory cell is used as the non-volatile memory cell 24-1 to 24 _m in FIG. 3, reading, writing, and holding by the task switching storage control unit 26 are specifically as follows. Become.
( 1 ) 強誘電体メモリセルの読出し (1) Reading of ferroelectric memory cell
プレート線に 5 Vを印加し、 ワード線をオンすることにより、 キャパシタの分極 方向に応じた 「1」 又は 「0」 の信号を読み出す。 By applying 5 V to the plate line and turning on the word line, a “1” or “0” signal corresponding to the polarization direction of the capacitor is read.
( 2 ) 強誘電体メモリセルの書込み (2) Writing of ferroelectric memory cell
信号 「1」 の書込みは、 プレート線に 0 V、 ビット線に 5 Vを印加し、 ビット線 をオンする。 信号 「0」 の書込みは、 プレート線に 5 V、 ビット線に 0 Vを印加 し、 ビット線をオンする。 To write signal “1”, apply 0 V to the plate line and 5 V to the bit line to turn on the bit line. To write signal “0”, apply 5 V to the plate line and 0 V to the bit line to turn on the bit line.
( 3 ) 強誘電体メモリセルの記録保持 (3) Record retention of ferroelectric memory cells
ワード線をオフし、 キャパシ夕の中に信号を保持する。 Turn off the word line and hold the signal during the capacity evening.
図 5は、 図 1のプロセッサ 1 0におけるデータメモリ 1 8の概略構成である。 図 5において、 デ一夕メモリ 1 8は、 例えば n行 m列にメモリビット部 4 0— 1 1〜4 0— m nを配置しており、 更にデ一タメモリ制御部 4 6と寿命カウン夕 4 8を設けている。 メモリビット部 4 0 _ 1 1〜4 0—m nは、 先頭のメモリビッ ト部 4 0— 1 1を例に取ると、 揮発性記憶セル 4 2と不揮発性記憶セル 4 4を備 えている。 揮発性記憶セル 4 2としては、 前記表に示した S R AMセルが使用さ れる。 一方、 不揮発性記憶セル 4 4としては、 前記表に示した強誘電体メモリセ ルが使用される。
図 6は、 図 5のメモリビット部 4 0— 1 1〜4 0— m nの 1つをメモリビット 部 4 0としてデータメモリ制御部 4 6と共に示している。 メモリビット部 4 0に は揮発性記憶セル 4 2、 不揮発性記憶セル 4 4及びセレクタ 4 5が設けられてい る。 デ一夕メモリ制御部 4 6に対しては、 C P Uコア 1 2側からのデータバス、 アドレスバス及びコントロールパスが接続され、 このうちコント口一ルバスの中 の電源オンオフ信号 E l 1を別途取り出して表わしている。 揮発性記憶セル 4 2 には、 データメモリ制御部 4 6からの外部入力デ一夕 D 1 1または不揮発性記憶 セル 4 4から読み出された出力データ D 1 2が入力され、 通常時は外部入力デ一 夕 D l 1が選択され、 電源投入時には不揮発性記憶セル 4 4側が復元読出制御信 号 E 1 4に基づいて選択される。 不揮発性記憶セル 4 4に対しては揮発性記憶セ ル 4 2の外部出力データ D 1 4が入力され、 退避書込制御信号 E 1 3により外部 出力データ D 1 4を退避データとして電源オフシーケンスを通じて書き込む。 ま た電源投入時にあっては、 復元読出制御信号 E 1 4により不揮発性記憶セル 4 4 に退避されていたデ一夕が出力データ D 1 2として読み出され、 セレクタ 4 5を 介して揮発性記憶セル 4 2にデ一夕書込制御信号 E 1 2によって書き込まれるこ とになる。 FIG. 5 is a schematic configuration of the data memory 18 in the processor 10 of FIG. In FIG. 5, the data memory 18 has, for example, memory bit sections 40—11 to 40—mn arranged in n rows and m columns, and further includes a data memory control section 46 and a lifetime counter 4. 8 are provided. The memory bit section 40 — 11 to 40 — mn has a volatile memory cell 42 and a non-volatile memory cell 44, for example, taking the first memory bit section 40 — 11 as an example. As the volatile memory cell 42, the SRAM cell shown in the above table is used. On the other hand, as the nonvolatile memory cell 44, the ferroelectric memory cell shown in the above table is used. FIG. 6 shows one of the memory bit units 40-11 to 40-mn in FIG. 5 as the memory bit unit 40 together with the data memory control unit 46. The memory bit section 40 is provided with a volatile storage cell 42, a nonvolatile storage cell 44, and a selector 45. The data bus, address bus, and control path from the CPU core 12 are connected to the memory controller 46, and the power on / off signal El1 in the controller bus is separately extracted. Is represented. The volatile memory cell 42 receives the external input data D11 from the data memory controller 46 or the output data D12 read from the nonvolatile memory cell 44. The input data D11 is selected, and when the power is turned on, the nonvolatile memory cell 44 is selected based on the restoration read control signal E14. The external output data D 14 of the volatile storage cell 42 is input to the nonvolatile storage cell 44, and the power-off sequence is performed by using the external output data D 14 as save data by the save write control signal E 13. Write through. When the power is turned on, the data saved in the nonvolatile memory cell 44 by the restoration read control signal E 14 is read out as the output data D 12, and the data is read out through the selector 45. The data is written to the memory cell 42 by the overnight write control signal E12.
図.7は、 図 6のメモリビット部 4 0における電源投入時、 通常時、 更に電源切 断時のメモリ制御のタイムチャートである。 図 7 (A) において、 時刻 t 1で電 源を投入すると、 図 7 ( B ) のようにデ一夕メモリ制御部 4 6は復元読出制御信 号 E 1 4を出力して、 不揮発性記憶セル 4 4の退避データを出力データ D 1 4と して図 7 ( C ) のように読み出す。 このときセレクタ 4 5は復元読出制御信号 E 1 4により不揮発性記憶セル 4 4側に切り替わつているため、 不揮発性記憶セル 4 4からの出力データ D 1 2はセレクタ 4 5を介して、 図 7 (D) のように揮発 性記憶セル 4 2に対する入力データ D 1 3として与えられる。 この状態で、 図 7 ( F ) のようにデータメモリ制御部 4 6はデ一夕書込制御信号 E 1 2を出力し、 揮発性記憶セル 4 2にセレクタ 4 5を介して得られている不揮発性記憶セル 4 4 からの読出データが書き込まれ, 外部出力データ D 1 4として図 7 (H) のよう に出力される。 図 7の時刻 t 2〜t 3における通常動作時にあっては、 デ一タメ モリ制御部 4 6より図 7 ( E) のように外部入力データ D 1 1が出力されると、
セレクタ 4 5を介して揮発性記憶セル 4 2に図 7 (D) のように入力データ D 1 3として入力され、 図 7 ( F ) のようにデータ書込制御信号 E 1 2が出力されて 揮発性記憶セル 4 2に入力デ一夕 D 1 3を書き込み、 図 7 (H) のように外部出 力データ D 1 4は新たに入力された外部入力データ D 1 1に切り替わって出力さ れる。 更に、 時刻 t 3でスリープモードの切替操作などによりデータメモリ制御 部 4 6に電源オフが通知されると、 データメモリ制御部 4 6は図 7 ( G) のよう に退避書込制御信号 E 1 3を不揮発性記憶セル 4 4に出力し、 このとき揮発性記 憶セル 4 2からの外部出力データ D 1 4を不揮発性記憶セル 4 4に書き込んで退 避する。 この時刻 t 3からの電源オフシーケンスは、 電源切断によってコンデン サによる電源電圧が動作可能電圧以下となるまでの間に行われることになる。 こ のように電源オフシーケンスにおいて不揮発性記憶セル 4 4に退避されたデータ は、 その後の電源再投入時の際に、 図 7の時刻 t 1の電源投入時と同様にして不 揮発性記憶セル 4 4から読み出され、 セレクタ 4 5を介して揮発性記憶セル 4 2 に入力された状態でデータ書き込みを受けて記憶され、 電源切断により、 退避し たデータの復元が行われる。 また電源切断時に揮発性記憶セル 4 2から不揮発性 記憶セル 4 4にデータを書き込んで退避保持しているため、 スリープモードを電 源オフ状態とでき、 スリープモードにおいてメモリの記憶保持のためのリーク電 流などが一切流れないことから、 省電力を効果的に達成できる。 FIG. 7 is a time chart of the memory control in the memory bit section 40 in FIG. 6 when the power is turned on, at the time of normal operation, and when the power is turned off. In FIG. 7 (A), when the power is turned on at time t1, the memory control unit 46 outputs a restoration read control signal E14 as shown in FIG. The saved data in cell 44 is read as output data D14 as shown in Fig. 7 (C). At this time, since the selector 45 is switched to the non-volatile memory cell 44 by the restoration read control signal E 14, the output data D 12 from the non-volatile memory cell 44 is transferred to the selector 45 via the selector 45. As shown in FIG. 7 (D), it is given as input data D 13 to the volatile memory cell 42. In this state, the data memory control unit 46 outputs the data write control signal E 12 as shown in FIG. 7 (F), and the data memory control unit 46 obtains the volatile memory cell 42 via the selector 45. The read data from the nonvolatile memory cell 44 is written and output as external output data D14 as shown in Fig. 7 (H). During the normal operation from time t2 to t3 in FIG. 7, when the external input data D11 is output from the data memory control unit 46 as shown in FIG. As shown in FIG. 7 (D), the data is input to the volatile memory cell 42 via the selector 45 as the input data D 13, and the data write control signal E 12 is output as shown in FIG. 7 (F). The input data D13 is written to the volatile memory cell 42, and the external output data D14 is switched to the newly input external input data D11 as shown in Fig. 7 (H) and output. . Further, at time t3, when the power is turned off to the data memory control unit 46 by a sleep mode switching operation or the like, the data memory control unit 46 transmits the save write control signal E 1 as shown in FIG. 7 (G). 3 is output to the nonvolatile memory cell 44. At this time, the external output data D14 from the volatile memory cell 42 is written to the nonvolatile memory cell 44 and saved. The power-off sequence from time t3 is performed until the power supply voltage by the capacitor becomes lower than the operable voltage due to the power-off. The data saved in the non-volatile memory cell 44 in the power-off sequence in this manner is stored in the non-volatile memory cell at the subsequent power-on in the same manner as the power-on at time t1 in FIG. The data is read from the memory cell 44 and input to the volatile memory cell 42 via the selector 45. The data is received and stored, and the saved data is restored by turning off the power. In addition, when the power is turned off, data is written from the volatile memory cell 42 to the nonvolatile memory cell 44 and saved and held, so that the sleep mode can be turned off and the leak for holding the memory in the sleep mode can be achieved. Since no current flows at all, power savings can be achieved effectively.
図 8は、 図 2の命令メモリ 2 0の概略構成である。 命令メモリ 2 0は行列 m x nのメモリビット部 5 0— 1 1〜5 0— m nを有し、 メモリビット部 5 0— 1 1 を例に取ると、 図 6のデータメモリ 1 8の場合と同様に、 S R AMセルを用いた 揮発性記憶セル 5 2と強誘電体メモリセルを用いた不揮発性記憶セル 5 4を備え ている。 更に命令メモリ制御部 5 6と寿命カウン夕 5 8を備えている。 命令メモ リ制御部 5 6及び各メモリビット部 5 0— 1 1〜 5 0— m nの具体的構成は、 図 7のデータメモリの場合と同じである。 このため命令メモリ制御部 5 6について も、 スリ一プモードの際の電源オフシーケンス'を通じて揮発性記憶セル 5 2のデ 一夕が不揮発性記憶セル 5 4に退避され、 その後の電源再投入時に、 不揮発性記 憶セル 5 4に退避しているデータを読み出して揮発性記憶セル 5 2に書き込む復 元処理が行われることになる。 尚、 図 6のデ一夕メモリの実施形態については書
込制御信号及び読出制御信号として正極性の信号レベルで動作する例をとつてい るが、 パルス信号などによって書込と読出を制御するものであってもよく、 信号 形式に限定されない。 FIG. 8 is a schematic configuration of the instruction memory 20 of FIG. The instruction memory 20 has a memory bit portion 50--11 to 50-mn of the matrix mxn. Taking the memory bit portion 50--11 as an example, it is the same as the data memory 18 in FIG. In addition, a volatile storage cell 52 using a SRAM cell and a nonvolatile storage cell 54 using a ferroelectric memory cell are provided. Further, an instruction memory control unit 56 and a life counter 58 are provided. The specific configurations of the instruction memory control unit 56 and the memory bit units 50-111 to 50-mn are the same as those of the data memory of FIG. Therefore, the instruction memory control unit 56 also saves the data of the volatile memory cell 52 to the nonvolatile memory cell 54 through the power-off sequence in the sleep mode, and when the power is turned on again, A restoration process of reading the data saved in the nonvolatile storage cell 54 and writing the data in the volatile storage cell 52 is performed. Note that the embodiment of the memory overnight in FIG. Although an example is described in which the write control signal and the read control signal operate at the signal level of the positive polarity, writing and reading may be controlled by a pulse signal or the like, and the present invention is not limited to the signal format.
次に図 2のレジスタブロック 1 4に設けている寿命カウンタ 2 8を説明する。 この寿命カウン夕 2 8の構成は図 5のデ一夕メモリ 1 8の寿命カウン夕 4 8及び 図 9の命令メモリ 1 6の寿命カウンタ 5 8についてもカウント構成は同じであり、 カウンタ制御に使用するデータ書込制御信号、 退避書込制御信号及び復元読出制 御信号がレジスタブロック 1 4、 データメモリ 1 8及び命令メモリ 1 6のそれぞ れで作りだされている固有の信号となる点で相違するだけである。 図 9は、 図 2 のレジス夕ブロック 1 4に設けた寿命カウンタ 2 8の実施形態である。 寿命カウ ン夕 2 8は図 2のレジス夕ブロック 1 4のレジスタビット部 3 0—:!〜 3 0— n に設けている書替え回数に制限がある不揮発性記憶セル 2 4— l l〜2 4— n m の書替え回数をカウントし、 予め設定した書替え制限回数に達した時に交換時期 に達したことを示すカウンタ出力を使用する。 このため寿命カウンタ 2 8には n 個の 1ビットカウンタ 6 0—;!〜 6 0—mが設けられている。 この 1ビットカウ ンタ 6 0— 1〜6 0— mの数は mは次のようにして定まる。 いま不揮発性記憶セ ル、 例えば強誘電体メモリセルの書替え制限回数を n回とすると、 Next, the life counter 28 provided in the register block 14 of FIG. 2 will be described. The configuration of the life counter 28 is the same as that of the life counter 48 of the memory 18 in Fig. 5 and the life counter 58 of the instruction memory 16 in Fig. 9 and used for counter control. Data write control signal, save write control signal, and restoration read control signal to be used are unique signals created in each of the register block 14, the data memory 18 and the instruction memory 16. Only the difference. FIG. 9 shows an embodiment of the life counter 28 provided in the registration block 14 of FIG. The lifetime counter 28 is the register bit section 30 of the register evening block 14 in FIG. Non-volatile memory cell 24-ll-24-nm with limited number of rewrites provided in ~ 30-n Counts the number of rewrites and reaches the replacement time when the preset number of rewrites is reached Use the counter output to indicate that Therefore, the life counter 28 has n 1-bit counters 60-;! ~ 60-m is provided. The number of 1-bit counters 60-1 to 60-m is determined as follows. Now, assuming that the number of times of rewriting of a nonvolatile memory cell, for example, a ferroelectric memory cell is n,
2 m - 1≥n 2 m -1≥n
となり、 従って 1ビットカウン夕の数 mは Therefore, several meters of 1-bit count is
m≥ 1 o g 2 ( n + 1 ) m≥ 1 o g 2 (n + 1)
として定めることができる。 例えば不揮発性記憶セルの書替え回数を 1 0 1 Q ( 1 億回) とすると、 1ビットカウンタの数 mは m≥ 3 4、 即ち寿命カウン夕 2 8の 最小構成は 3 4ビットの 1ビットカウンタ多段構成とすればよい。 1ビットカウ ンタ 6 0— 1〜6 0— mはカウンタ出力、キャリー入力及びキャリー出力を有し、 更にカウンタ制御は図 4のレジス夕ブロックのタスク切替記憶制御部 2 6より出 力されるデータ書込制御信号 E 2、 復元読出制御信号 E 4及び退避書込制御信号 E 3を使用している。このうち復元読出制御信号 E 4と退避書込制御信号 E 3は、 図 3に設けている不揮発性記憶セル 2 4— 1〜2 4— mごとに信号線を持つこと から、 O R回路 6 2 , 6 4により論理和として取り出して、 1ビットカウンタ 6
0一 i〜6 o— mに入力している。 尚、 この寿命カウンタ 2 8の説明において、 1ビットカウンタの数を m、 不揮発性記憶セルの制限書込回数を nで表している が、 この m, nはすでに説明して図 4の不揮発性記憶セル 2 4— 1〜2 4— mの 数を示す mや、 図 6のデータメモリ 1 8及び図 9の命令メモリ 1 6における m行 n列とは異なった意味をもつ値である。 Can be defined as For example, when the rewriting number of nonvolatile memory cells 1 0 1 Q (1 million times) and the number m of 1 bit counter M≥ 3 4, i.e. the minimum configuration of the life counter evening 2 8 3 4 1-bit counter Bit A multi-stage configuration may be used. The 1-bit counters 60—1 to 60—m have a counter output, a carry input, and a carry output, and the counter control is performed by a data register output from the task switching storage controller 26 of the register block in FIG. The write control signal E2, the restoration read control signal E4, and the save write control signal E3 are used. Of these, the restoration read control signal E 4 and the save write control signal E 3 have a signal line for each of the nonvolatile memory cells 24-1 to 24-m provided in FIG. , 6 4. 0-i i- 6 o- m are entered. In the description of the life counter 28, the number of 1-bit counters is represented by m, and the limited number of times of writing of the nonvolatile memory cell is represented by n. The value m has a meaning different from m indicating the number of the memory cells 24-1 to 24-m and m rows and n columns in the data memory 18 in FIG. 6 and the instruction memory 16 in FIG. 9.
寿命カウンタ 2 8を構成する 1ビットカウン夕 6 0— 1〜6 0 _mは、 前段に 位置するカウンタのキャリー出力を後段に位置するカウン夕のキャリー入力に順 次接続している。 ここで、 1段目の 1ビットカウンタ 6 0— 1に対するキヤリ一 入力 C 0は固定的に外部より 「1」 を設定している。 また最終段の 1ビットカウ ンタ 6 0—mにおけるキヤリ一出力 C m— 1が寿命カウンタ 2 8において、 所定 の制限書替え回数に達したことを示す出力となる。 もちろん 1ピットカウン夕 6 0— 1〜6 0— mのカウンタ出力 b l〜b mはその時点における実際の書替回数 の計数値を 2進数で表している。 The 1-bit counters 60 — 1 to 60 _m that make up the life counter 28 sequentially connect the carry output of the counter located at the preceding stage to the carry input of the counter located at the subsequent stage. Here, the carry input C0 for the first-stage 1-bit counter 60-1 is fixedly set to "1" from the outside. In addition, the carry output C m-1 at the 1-bit counter 60-m at the final stage is an output indicating that the life counter 28 has reached a predetermined limit number of times of rewriting. Of course, the counter output bl-b m of 1 pit count 60-1-60-m indicates the binary value of the actual rewrite count at that time.
図 1 0は、 図 9の寿命カウン夕 2 8を構成している m個の 1ビットカウン夕の 1つを 1ビットカウン夕 6 0として取り出して、 その構成を示している。 1ビッ トカウンタ 6 0には揮発性記憶セル 6 6、 不揮発性記憶セル 6 8、 キャリー出力 付の 2入力の加算器 7 0が設けられている。 揮発性記憶セル 6 6としては、 図 3 のレジス夕ブロックに設けている揮発性記憶セル 2 2と同じ、 例えば S R AMセ ルを用いる。 また不揮発性記憶セルとしては、 図 3のレジス夕ブロックに設けて いる不揮発性記憶セル 2 4— 1〜2 4— mと同じ、 例えば強誘電体メモリセルを 使用する。 揮発性記憶セル 6 6に対するデータ書込はデータ書込制御信号 E 2に より行われる。 不揮発性記憶セル 6 8に対するデ一夕書込は退避書込制御信号 E 3により行われる。 不揮発性記憶セル 6 8からのデータ読出は復元読出制御信号 E 4で行われる。 加算器 7 0には揮発性記憶セル 6 6の出力と、 外部からのキヤ リ一入力が接続される。加算器 7 0の出力は不揮発性記憶セル 6 8の入力となる。 また加算器 7 0のキャリー出力は外部に取り出されている。 FIG. 10 shows a configuration in which one of the m 1-bit counts constituting the lifetime count 28 of FIG. 9 is taken out as a 1-bit count 60 and is shown. The 1-bit counter 60 includes a volatile memory cell 66, a nonvolatile memory cell 68, and a 2-input adder 70 with a carry output. As the volatile memory cell 66, the same volatile memory cell 22 provided in the resist block shown in FIG. 3, for example, an SRAM cell is used. As the nonvolatile memory cell, the same nonvolatile memory cell 24-1 to 24-m provided in the resist block shown in FIG. 3, for example, a ferroelectric memory cell is used. Data writing to the volatile memory cell 66 is performed by a data write control signal E2. Overnight writing to the nonvolatile memory cell 68 is performed by the save write control signal E3. Data reading from the nonvolatile memory cell 68 is performed by the restoration read control signal E4. To the adder 70, the output of the volatile memory cell 66 and an external carry input are connected. The output of the adder 70 becomes the input of the nonvolatile memory cell 68. The carry output of the adder 70 is taken out to the outside.
図 3のレジスタビット部 3 0における不揮発性記憶セルの書替え動作は次の 3 つの処理サイクルを通じて行われる。 The rewriting operation of the nonvolatile memory cell in the register bit section 30 of FIG. 3 is performed through the following three processing cycles.
( 1 ) 退避書込制御信号 E 3による揮発性記憶セルから不揮発性記憶セルに対す
るデ一夕書込による退避。 (1) A volatile memory cell to a nonvolatile memory cell by the save write control signal E3 Save by writing overnight.
( 2 ) 復元読出制御信号 E 4による不揮発性記憶セルからの退避データの読出。 (2) Reading saved data from the nonvolatile memory cell by the restoration read control signal E4.
( 3 ) 揮発性記憶セルに対する読出、 退避データの書込。 (3) Reading volatile memory cells and writing saved data.
このようなレジス夕ビット部 3 0における揮発性記憶セル及び不揮発性記憶セ ルに対する一連の書替サイクルに伴って、 図 1 0の 1ビットカウンタ 6 0のカウ ンタ動作が同時に行われる。 いま 1ビットカウンタ 6 0を図 9の第 1段目の 1ピ ットカウン夕 6 0— 1であるとして動作を説明する。 第 1段目の 1ビットカウン 夕 6 0— 1では加算器 7 0に対するキヤリ一入力 C i— 1が 「 1」 であり、 最初 は不揮発性記憶セル 6 8、 揮発性記憶セル 6 6の内容が 「0」 である。 この状態 で退避書込み制御信号 E 3が与えられると、 このとき加算器 7 0は揮発性記憶セ ル 6 6の出力データ D 2 4 = 0、 キヤリー入力 C i - l = lの加算により加算出 力 「1」 を生じており、 このため不揮発性記憶セル 6 8に 「1」 が書き込まれる。 次に復元読出制御信号 E 4が与えられると、 不揮発性記憶セル 6 8から出力デ 一夕 D 2 1として 「1」 が読み出され、 これが入力デ一タ D 2 1として揮発性記 憶セル 6 6に与えられる。 続いてデータ書込制御信号 E 2が与えられることで、 揮発性記憶セル 6 6に 「1」 が書き込まれ、 出力データ D 2 4が 「1」 となる。 次の書替サイクルにあっては、 加算器 7 0に対する出力デ一タ D 2 4及びキヤリ —入力 C i 一 1が共に 「1」 であることから、 キヤリー出力 C iが「1」 となり、 不揮発性記憶セル 6 8に対する加算出力は 「0」 となっている。 このため退避書 込制御信号 E 3が与えられると、 不揮発性記憶セル 6 8には「 0」が書き込まれ、 続いて復元読出制御信号 E 4が与えられると不揮発性記憶セル 6 8から 「0」 が 読み出され、 更にデータ書込制御信号 E 2が与えられることで揮発性記憶セル 6 6に 「0」 が書き込まれ、 出力データ D 2 4は 「0」 となる。 このとき加算器 7 0は出力データ D 2 4として 「0」 を入力し、 キャリー入力 C i 一 1が 「1」 で あれば、 最初の状態に戻る。 これが第 1段目の 1ビットカウン夕 6 0— 1の動作 であり、不揮発性記憶セル 6 8の書替サイクルごとに交互にキヤリ一出力が「 0」, 「1」 を繰り返すことになる。 第 1段目の 1ビットカウンタ 6 0— 1の出力は図 1 0のように第 2段目の 1ビットカウンタ 6 0— 2のキャリー入力となっており、 従って第' 2段目の 1ビットカウンタ 6 0— 2は不揮発性記憶セルの 2回の書替ご
とにキャリー出力 C 2を 「0」, 「1」 を繰り返すことになる。 この結果、 m個の 1ビットカウンタ 6 0— 1〜6 0—mの出力は書替回数ごとに 2進数がひとつづ つ増加することになる。 そしてフルカウントに達すると最終段の 1ビットカウン 夕 6 0—mからキャリー出力 C mが 「1」 となって出力され、 これによつて不揮 発性記憶セルが交換時期に達したことを知らせることができる。 With such a series of rewriting cycles for the volatile memory cell and the nonvolatile memory cell in the register bit section 30, the counter operation of the 1-bit counter 60 of FIG. 10 is performed simultaneously. The operation will now be described on the assumption that the 1-bit counter 60 is a 1-bit counter 60-1 in the first stage of FIG. In the first-stage 1-bit counter 60-1, the carry input C i-1 to the adder 70 is "1", and the contents of the nonvolatile memory cell 68 and the volatile memory cell 66 initially Is "0". In this state, when the save write control signal E 3 is given, the adder 70 adds and outputs the output data D 24 of the volatile memory cell 66 by 0 and the carry input C i−l = l. As a result, a "1" is generated in the nonvolatile memory cell 68. Next, when the restoration read control signal E4 is applied, "1" is read out from the nonvolatile memory cell 68 as the output data D21, and this is read as the input data D21. 6 given to 6. Subsequently, by applying the data write control signal E2, "1" is written to the volatile memory cell 66, and the output data D24 becomes "1". In the next rewrite cycle, the output data D 24 to the adder 70 and the carrier — input C i 11 are both “1”, so that the carry output C i becomes “1”, The addition output to the nonvolatile memory cell 68 is “0”. Therefore, when the save write control signal E3 is applied, "0" is written to the nonvolatile memory cell 68, and subsequently, when the restoration read control signal E4 is applied, "0" is output from the nonvolatile memory cell 68. Is read, and the data write control signal E2 is applied, so that "0" is written to the volatile memory cell 66, and the output data D24 becomes "0". At this time, the adder 70 inputs “0” as the output data D 24 and returns to the initial state if the carry input C i 11 is “1”. This is the operation of the first stage 1-bit counter 60-1. The carry output alternates between "0" and "1" alternately in each rewrite cycle of the nonvolatile memory cell 68. The output of the first-stage 1-bit counter 60-1 is the carry input of the second-stage 1-bit counter 60-2, as shown in Figure 10, so the 1st bit of the 2nd stage Counter 60-2 is used for rewriting the nonvolatile memory cell twice. At this time, the carry output C 2 repeats “0” and “1”. As a result, the output of the m 1-bit counters 60-1 to 60-m is such that the binary number increases by one each time the number of rewrites is increased. When the full count is reached, the carry output C m is output as “1” from the last 1-bit counter 60-m, which indicates that the nonvolatile memory cell has reached the replacement time. be able to.
図 1 1は、 図 9の寿命カウン夕 2 8に使用している 1ビットカウン夕 6 0— 1 〜6 0— mの他の実施形態を 1ビットカウンタ 6 0として示した実施形態である。 この実施形態の 1ビットカウンタ 6 0は、 揮発性記憶セル 6 6に対し外部より リセットをかけることができ、 更に外部から 「0」 または 「1」 をプリセットで きるようにしたことを特徵とする。 このようにリセット、 プリセットを実現する ため、 新たにセレクタ 7 2が設けられ、 セレクタ 7 2はリセットノプリセット信 号により外部入力データ D 2 2と、 不揮発性記憶セル 6 8から読み出された出力 データ D 2 1を選択して、 入力データ D 2 3として揮発性記憶セル 6 6に与える ようにしている。 他の構成は図 1 0の 1ビットカウンタ 6 0と同じである。 リセ ット及びプリセット機能を備えた 1ビットカウンタ 6 0は、 図 9の寿命カウンタ 2 8について出荷時に特定の初期値をプリセットするために利用できる。 即ち、 寿命カウンタ 2 8は 1ピットカウンタ 6 0— 1〜6 0—mのフルカウントによる キャリー出力 Cmで交換時期を示しており、 1ビットカウン夕 6 0— 1〜6 0— mのフルカウント回数 2 mが必ずしも予定して交換次期を示す最大制限回数と一 致することはない。 そこで寿命カウンタ 2 8のフルカウント値 2 mから予定する 交換時期を示すための書替制限回数 nを差し引いた値 (2 m— n ) を初期値の外 部入力データ D 2 2として各 1ビットカウンタ 6 0— 1〜6 0— mに入力し、 同 時にプリセット信号をセレクタ 7 2に入力することで外部入力データ D 2 2を選 択し、 入力データ D 2 3として揮発性記憶セル 6 6に与え、 この状態でデ一夕書 込制御信号を与えて、 初期値の対応するデータビットを揮発性記憶セル 6 6に書 込んでプリセットする。 このようなプリセット機能によって、 予め定めた特定の 書替制限回!に達した時に、 最終段の 1ビットカウンタ 6 0一 mのキヤリ一出力 C mとして交換時期を示すカウンタ出力を正確に得ることができる。 また状態に よっては 1ビッ卜カウンタ 6 0—:!〜 6 0—mの値をクリアすることも必要にな
ることから、 この場合には外部入力データをオール 0としてリセッ卜信号を入力 して、 セレクタ 7 2を選択することで、 1ビットカウンタ 6 0— 1〜6 0—mの 全ての揮発性記憶セル 6 6の内容をォ一ル 「0」 に書替えるクリアができる。 ここで、 図 9〜図 1 1は、 図 3のレジス夕ブロック 1 4に設けている寿命カウ ン夕 2 8を例にとるものであつたが、 図 6のデータメモリ 1 8に設けている寿命 カウンタ 4 8及び図 9の命令メモリ 1 6設けている寿命カウン夕 5 8についても、 全く同じカウン夕構成をとることができる。 この場合、 相違するのは図 9におけ るデータ書込制御信号 E 2、退避書込制御信号 E 3及び復元読出制御信号 E 4を、 データメモリの場合には図 6におけるデータ書込制御信号 E 1 2、 退避書込制御 信号 E 1 3及び復元読出制御信号 E 1 4に換えれば良い。 この点は図 8の命令メ モリ 1 6についても同じである。 FIG. 11 shows an embodiment in which another embodiment of the 1-bit counters 60-1 to 60-m used in the life counter 28 of FIG. 9 is shown as a 1-bit counter 60. The 1-bit counter 60 of this embodiment is characterized in that the volatile memory cell 66 can be externally reset and can be externally preset to “0” or “1”. . To realize reset and preset in this way, a new selector 72 is provided, and the selector 72 receives the external input data D 22 and the output read from the nonvolatile memory cell 68 by a reset no-preset signal. Data D 21 is selected and given to volatile storage cell 66 as input data D 23. Other configurations are the same as those of the 1-bit counter 60 of FIG. The 1-bit counter 60 with reset and preset function can be used to preset a specific initial value at the time of shipment for the life counter 28 of FIG. That is, the life counter 28 indicates the replacement time by the carry output Cm based on the full count of the 1-pit counter 60-1 to 60-m, and the number of full counts of the 1-bit counter 60-1 to 60-m. m does not always coincide with the maximum number of times that indicates the next scheduled replacement. Therefore, the value (2 m — n) obtained by subtracting the limited number of rewrites n to indicate the scheduled replacement time from the full count value 2 m of the life counter 28 is set as the external input data D 2 2 of the initial value. 6 0— 1 to 6 0—m and input the preset signal to the selector 72 at the same time to select the external input data D 22, and input it to the volatile memory cell 66 as the input data D 23. In this state, a data write control signal is applied, and the data bit corresponding to the initial value is written to the volatile memory cell 66 for presetting. With such a preset function, the specific rewriting limit times determined in advance! When the value reaches, the counter output indicating the replacement time can be accurately obtained as the carry output C m of the 1-bit counter 60 1 m at the last stage. Depending on the state, 1-bit counter 60 ::! It is also necessary to clear the value of ~ 60m Therefore, in this case, by setting the external input data to all 0s and inputting a reset signal and selecting the selector 72, all the volatile memories of the 1-bit counter 60-1 to 60-m You can clear the contents of cell 6 6 by rewriting it to a "0". Here, FIGS. 9 to 11 are examples of the lifetime counter 28 provided in the register block 14 in FIG. 3, but are provided in the data memory 18 in FIG. The life counter 58 and the life counter 58 provided in the instruction memory 16 of FIG. 9 can have exactly the same count configuration. In this case, the only difference is that the data write control signal E 2, the save write control signal E 3, and the restoration read control signal E 4 in FIG. 9 are used. E 12, save write control signal E 13 and restoration read control signal E 14 may be replaced. This is the same for the instruction memory 16 in FIG.
更に、 この実施形態にあっては図 1で不揮発性記憶セルを退避用に設けている レジスタブロック 1 4、 命令メモリ 1 6及びデータメモリ 1 8のそれぞれについ て寿命カウン夕を設けているが、 このようにそれぞれに設ける必要はなく、 最も 書替え頻度の高い部分、例えばレジスタブロック 1 4のみに寿命カウンタを設け、 書替え頻度の高いレジスタブロック 1 4における不揮発性メモリの制限回数への 到達をカウンタ出力から認識して交換時期に達したことを知らせるようにしても 良い。 Further, in this embodiment, the lifetime counter is provided for each of the register block 14, the instruction memory 16 and the data memory 18 in which the nonvolatile memory cells are provided for evacuation in FIG. In this way, it is not necessary to provide a life counter only in the most frequently rewritten part, for example, only the register block 14, and a counter is output when the number of times of the non-volatile memory in the frequently rewritten register block 14 reaches the limit number. It may be made to recognize from the fact that it has reached the exchange time.
更に上記の実施形態にあっては、 プロセッサ 1 0のレジスタブロック 1 4、 命 令メモリ 1 6及びデータメモリ 1 8に揮発性メモリと組み合わせて設ける不揮発 性記憶セルとして強誘電体メモリセルを例にとるものであつたが、 本発明はこれ に限定されず C MO S構成をとるプロセッサ 1 0との親和性が高い不揮発性メモ リセルであれば、 適宜の不揮発性記憶セルを用いることができる。 このような不 揮発性メモリとしては、 M R AMがある。 M R AMは C MO Sとの親和性が高く、 しかも書替え寿命回数が 1 0 1 8もあり、 寿命カウンタは必要ない。 更に不揮発性 記憶セルとして使用する強誘電体メモリセルの書替回数が改善され、 1 0 1 5回に 達した場合には寿命カウンタを設ける必要はない。 Further, in the above embodiment, a ferroelectric memory cell is taken as an example of a nonvolatile memory cell provided in combination with a volatile memory in the register block 14, the instruction memory 16 and the data memory 18 of the processor 10. Although the present invention is not limited to this, any suitable nonvolatile memory cell can be used as long as the nonvolatile memory cell has a high affinity for the processor 10 having the CMOS configuration. An example of such a nonvolatile memory is MRAM. MR AM has high affinity with C MO S, moreover the number of rewriting life is also 1 0 1 8, no life counter must. Further rewriting number of ferroelectric memory cells to be used as a non-volatile memory cells is improved, it is not necessary to provide life counter when it reaches the 1 0 1 5 times.
また上記の実施形態は図 1のプロセッサ 1 0におけるレジスタブロック 1 4、 命令メモリ 1 6及びデータメモリ 1 8の全てについて、 データ退避用の不揮発性
記憶セルを揮発性記憶セルに対応して設けた記憶デバイスを例にとるものであつ たが、 レジスタブロック 1 4についてのみマルチタスク処理のタスク切替えに対 応したデ一夕退避のみを行う図 2, 図 3の記憶デバィスの構成のみを設けた実施 形態であつてもよいことはもちろんである。 この場合にはスリ一プモードにおけ る電源オフシーケンスでのデータ退避の機能はないが、 マルチタスク処理におけ る高速タスク切替を実現できる点でプロセッサ性能を十分に高めることができる。 更に本発明はその目的と利点を損なわない適宜の変形を含み、 更に上記の実施 形態に示した数値による限定は受けない。 産業上の利用の可能性 In the above embodiment, the nonvolatile memory for data saving is used for all of the register block 14, the instruction memory 16 and the data memory 18 in the processor 10 of FIG. In this example, a storage device is provided with storage cells corresponding to volatile storage cells, but only the register block 14 saves data temporarily in response to task switching in multitask processing. Of course, an embodiment in which only the configuration of the storage device of FIG. 3 may be provided. In this case, there is no function to save data in the power-off sequence in the sleep mode, but the processor performance can be sufficiently improved in that high-speed task switching in multitask processing can be realized. Further, the present invention includes appropriate modifications that do not impair the objects and advantages thereof, and is not limited by the numerical values shown in the above embodiments. Industrial potential
以上説明してきたように本発明によれば、 プロセッサにおけるレジス夕ブロッ クの揮発性記憶セルに対応して、 不揮発性記憶セルをマルチタスク処理における 最大タスク数分の多ビット化を図ることでタスク切替えの際のレジスタデータの 外部メモリへの退避を不要にし、 レジスタブロック内で不揮発性記憶セルへのレ ジス夕データの退避が可能なため、 瞬時に複数のアプリケーションを実行するマ ルチタスク処理のタスク切替が実現でき、 マルチタスク処理におけるプロセッサ の処理性能を大幅に向上することができる。 As described above, according to the present invention, a non-volatile storage cell is increased in number of bits corresponding to the maximum number of tasks in multitask processing in correspondence with a volatile storage cell of a resist block in a processor. Eliminates the need to save register data to external memory when switching, and saves register data to non-volatile memory cells within the register block, enabling multi-task processing tasks to execute multiple applications instantly Switching can be realized, and the processing performance of the processor in multitask processing can be greatly improved.
またスリ一プモ一ドへの切替で電源が切られた場合でも、 コンデンサなどによ り、 電源電圧が動作電圧に下がるまでの間に揮発性記憶セルから不揮発性記憶セ ルへのデータ書込が保証できる電力が供給されることで、 レジス夕ブロック内で のタスクデータを不揮発性記憶セルに退避して保持することが可能となり、 スリ —プモードでのレジス夕ブロックに対する電源オフを可能とし、 電源オフによる 省電力が実現できる。 Even when the power is turned off by switching to the sleep mode, data is written from the volatile memory cell to the nonvolatile memory cell until the power supply voltage falls to the operating voltage by a capacitor. As a result, the task data in the register block can be saved and stored in the non-volatile memory cell, and the power to the register block in sleep mode can be turned off. Power saving by turning off the power can be realized.
またレジスタブロックに対する不揮発性記憶セルの最大タスク数分の多ビット 化に加え、 命令メモリやデータメモリについて揮発性記憶セルに対し、 不揮発性 記憶セルを設けていることで、 スリープモードへの切替えで電源が切られた際に 揮発性セルから不揮発性セルへデー夕を退避し、 これによつてスリープモードで の電源オフを可能とし、 スリープモードでの電源オフによる省電力機能を実現で さる。
更にレジスタブロック、 命令メモリ、 データメモリを含むメモリ部に書替え制 限のある不揮発性記憶セルを使用していた場合に、 不揮発性記憶セルの書替え回 数を計数して書替え制限回数に達した時に出力する寿命カウンタを設けることで 不揮発性記憶セルが寿命回数に達することによるプロセッサの交換時期を正確に 認識して、 デバイス交換までの適切な対応策をとることができる。
In addition to increasing the number of bits for the maximum number of non-volatile memory cells in the register block, the non-volatile memory cell is provided for the instruction memory and data memory as compared to the volatile memory cell, enabling switching to sleep mode. When the power is turned off, the data is saved from the volatile cells to the non-volatile cells, thereby enabling the power to be turned off in the sleep mode and realizing the power saving function by turning off the power in the sleep mode. In addition, if a non-volatile memory cell with a rewrite limit is used for the memory section including the register block, instruction memory, and data memory, the number of rewrites of the non-volatile memory cell is counted and the rewrite limit is reached. Provision of an output life counter enables accurate recognition of the processor replacement time due to the non-volatile memory cell reaching the end of its life cycle, and appropriate countermeasures until device replacement.
Claims
1 . C P Uコア、 レジスタブロック、 命令メモリ、 データメモリ及び周辺回路を L S I上に実装したプロセッサに於いて、 1. In a processor in which a CPU core, a register block, an instruction memory, a data memory, and peripheral circuits are mounted on an LSI,
前記レジスタブロックに、 In the register block,
前記 C P Uコアのマルチタスク処理における現在実行中のタスクのレジスタデ 一夕ピットを記憶する揮発性記憶セルと、 A volatile storage cell for storing a register pit of the currently executing task in the multi-task processing of the CPU core;
最大タスク数分設けられ、.前記マルチタスク処理のタスク別にレジスタデータ ビットを退避する複数の不揮発性記憶セルと、 A plurality of nonvolatile storage cells provided for the maximum number of tasks, for saving register data bits for each task of the multitask processing;
タスク切替え時に、 前記揮発性記憶セルに保持されているレジスタデータビッ トを退避書込み制御信号により切替前のタスク処理に対応した不揮発性記憶セル に書込んで退避させた後に、 切替後のタスク処理に対応した不揮発性記憶セルに 退避しているレジスタデ一夕ビットを復元読出制御信号により読出し、 前記揮発 性記憶セルにデー夕書込制御信号により書込むタスク切替記憶制御部と、 を設けたことを特徴とするプロセッサ。 At the time of task switching, the register data bit held in the volatile storage cell is written to a nonvolatile storage cell corresponding to the task processing before switching by a save write control signal and saved, and then the task processing after switching is performed. A task switching storage control unit that reads a register data bit saved in a nonvolatile memory cell corresponding to the above by a restoration read control signal and writes the volatile storage cell into the volatile storage cell by a data write control signal. A processor characterized by the above-mentioned.
2 . 請求の範囲 1のプロセッサに於いて、 前記レジス夕ブロックは、 前記揮発性 記憶セルと複数の不揮発性記憶セルの組をレジス夕のビット毎に設けて所定ビッ ト長のレジスタを構成したことを特徴とするプロセッサ。 2. The processor according to claim 1, wherein the register block comprises a register having a predetermined bit length by providing a set of the volatile memory cell and a plurality of nonvolatile memory cells for each bit of the register. A processor, characterized in that:
3 . 請求の範囲 2のプロセッサに於いて、 前記レジス夕のビット毎に設けた前記 揮発性記憶セルと複数の不揮発性記憶セルの組毎に、 3. The processor according to claim 2, wherein for each set of the volatile storage cell and the plurality of nonvolatile storage cells provided for each bit of the register,
外部入力データ又は前記複数の不揮発性記憶セルのいずれか 1つから読み出さ れた出力データを選択して前記揮発性記憶セルに入力する第 1セレクタと、 前記複数の不揮発性記憶セルの出力ラインを入力し、 特定の不揮発性記憶セル に対する復元読出制御信号に基づいて対応する出力データを選択して前記第 1セ レクタに入力する第 2セレクタと、 A first selector for selecting external input data or output data read from any one of the plurality of nonvolatile memory cells and inputting the selected data to the volatile memory cells; andan output line of the plurality of nonvolatile memory cells. A second selector for inputting and selecting corresponding output data based on a restoration read control signal for a specific nonvolatile memory cell and inputting the selected output data to the first selector;
を設けたことを特徴とするプロセッサ。
A processor comprising:
4. 請求の範囲 1のプロセッサに於いて、 前記タスク切替記憶制御部は、 電源切 断により電源電圧が動作可能電圧以下に低下するまでに、 退避書込制御信每によ り前記揮発性記憶セルに記憶されているレジスタデ一夕ビットを対応する不揮発 性記憶セルに書込んで退避させ、 電源再投入時には前記不揮発性記憶セルに退避 している電源切断時のレジスタデ一夕ビットを復元読出制御信号により読出して 前記揮発性記憶セルにデータ書込制御信号により書込むことを特徴とするプロセ ッサ。 4. In the processor according to claim 1, the task switching storage control unit uses the save write control signal until the power supply voltage falls to an operable voltage or less due to a power supply cutoff, and the volatile storage is performed by the save switching control signal. The register data overnight bit stored in the cell is written to the corresponding nonvolatile memory cell and saved, and when power is turned on again, the power-off register data overnight bit saved in the nonvolatile memory cell is restored and read out. A processor which reads by a signal and writes to the volatile memory cell by a data write control signal.
5 . 請求の範囲 1のプロセッサに於いて、 前記レジスタブロックの前記揮発性記 憶セルはフリップフロップ又は S R AMセルであり、 前記不揮発セルは強誘電体 メモリセルであることを特徴とするプロセッサ。 5. The processor according to claim 1, wherein the volatile storage cell of the register block is a flip-flop or an SRAM cell, and the nonvolatile cell is a ferroelectric memory cell.
6 . 請求の範囲 1のプロセッサに於いて、 前記データメモリに、 6. The processor of claim 1, wherein the data memory comprises:
' 外部から入力されたデ一夕ビットを記憶する揮発性記憶セルと、 '' A volatile storage cell that stores externally input data bits,
電源切断時に前記揮発性記憶セルのデータビットを退避する不揮発性記憶セル と、 A nonvolatile memory cell that saves data bits of the volatile memory cell when power is turned off;
電源切断により電源電圧が動作可能電圧以下に低下するまでに、 退避書込制御 信号により前記揮発性記憶セルに記憶されているデータビットを前記不揮発性記 憶セルに書込んで退避させ、 電源再投入時に前記不揮発性記憶セルに退避してい るデータビットを復元読出制御信号により読出し、 前記揮発性記憶セルにデータ 書込制御信号により書込むデ一夕メモリ制御部と、 By the save write control signal, the data bits stored in the volatile storage cells are written to the nonvolatile storage cells and saved until the power supply voltage falls to the operable voltage or lower by the power-off, and the power supply is restarted. A memory control unit for reading a data bit saved in the nonvolatile memory cell at the time of power-on by a restoration read control signal and writing the data bit to the volatile memory cell by a data write control signal;
を備えたことを特徴とするプロセッサ。 A processor comprising:
7 . 請求の範囲 6のプロセッサに於いて、 前記データメモリは、 前記揮発性記憶 セルと不揮発性記憶セルの組をメモリビット毎に設けて所定ビット容量のデータ メモリを構成したことを特徴とするプロセッサ。 7. The processor according to claim 6, wherein the data memory comprises a set of the volatile storage cell and the nonvolatile storage cell for each memory bit to constitute a data memory having a predetermined bit capacity. Processor.
8 . 請求の範囲 1のプロセッサに於いて、 前記命令メモリに、 8. The processor of claim 1, wherein the instruction memory comprises:
前記 C P Uコアで実行される命令ビットを記憶する揮発性記憶セルと、
電源切断時に前記揮発性記憶セルの命令ビットを退避する不揮発性記憶セルと、 電源切断により電源電圧が動作可能電圧以下に低下するまでに、 退避書込制御 信号により前記揮発性記憶セルに記憶されている命令ビットを前記不揮発性記憶 セルに書込んで退避させ、 電源再投入時に前記不揮発性記憶セルに退避している 命令ビットを復元読出し制御信号により読出し、 前記揮発性記憶セルにデータ書 込制御信号により書込む命令メモリ制御部と、 A volatile storage cell for storing an instruction bit executed by the CPU core; A nonvolatile memory cell that saves an instruction bit of the volatile memory cell when the power is turned off, and is stored in the volatile memory cell by an evacuation write control signal until the power supply voltage drops to an operable voltage or less due to the power off. The instruction bits stored in the nonvolatile memory cell are written and saved in the nonvolatile memory cell, and when the power is turned on again, the instruction bit saved in the nonvolatile memory cell is read by the restoration read control signal, and the data is written in the volatile memory cell. An instruction memory control unit for writing by a control signal,
を備えたことを特徴とするプロセッサ。 A processor comprising:
9 . 請求の範囲 8のプロセッサに於いて、 前記命令メモリは、 前記揮発性記憶セ ルと不揮発性記憶セルの組をメモリビット毎に設けて所定ビット容量の命令メモ リを構成したことを特徴とするプロセッサ。 9. The processor according to claim 8, wherein the instruction memory comprises a set of the volatile storage cell and the nonvolatile storage cell for each memory bit to constitute an instruction memory having a predetermined bit capacity. And processor.
1 0 . 請求の範囲 6又は 8のプロセッサに於いて、 前記命令メモリの前記揮発性 記憶セルは S R AMセルであり、 前記不揮発性記憶セルは強誘電体メモリセルで あることを特徵とするプロセッサ。 10. The processor according to claim 6, wherein the volatile memory cell of the instruction memory is a SRAM cell, and the nonvolatile memory cell is a ferroelectric memory cell. .
1 1 . 請求の範囲 1のプロセッサに於いて、 前記不揮発性記憶セルに書替え回数 の制限がある場合、 前記不揮発性記憶セルへの書替え回数を計数し、 所定の書替 え制限回数に達したときに出力する寿命カウン夕を前記レジスタブロック、 デー 夕メモリ及び命令メモリの各々に設けたことを特徴とするプロセッサ。 11. In the processor according to claim 1, when the number of times of rewriting is limited in the nonvolatile memory cell, the number of times of rewriting to the nonvolatile memory cell is counted, and a predetermined number of times of rewriting is reached. A processor characterized in that a lifetime count output at times is provided in each of the register block, the data memory, and the instruction memory.
1 2 . 請求の範囲 1 1のプロセッサに於いて、 前記寿命カウンタは、 前記不揮発 性記憶セルへの退避書込み、 前記不揮発性記憶セルからの復元読出し、 及び前記 揮発性メモリへのデータ書込みとなる 1回の書替えサイクルでキャリーを出力す る 1ビットカウンタを書替え制限回数に応じて複数段備え、 前段の 1ビットカウ' ン夕のキャリー出力を後段の 1ビットカウンタのキャリー入力に接続したことを 特徴とするプロセッサ。 12. The processor according to claim 11, wherein the life counter includes a save write to the nonvolatile memory cell, a restore read from the nonvolatile memory cell, and a data write to the volatile memory. A 1-bit counter that outputs a carry in one rewrite cycle is provided in multiple stages according to the rewrite limit, and the carry output of the previous 1-bit counter is connected to the carry input of the subsequent 1-bit counter. And processor.
3 . 請求の範囲 1 2のプロセッサに於いて、 前記 1ビットカウンタは、
前記データ書込制御信号により入力データを記憶して出力データをカウンタ出 力とする揮発性記憶セルと、 3. The processor according to claim 1, wherein the 1-bit counter is: A volatile storage cell that stores input data by the data write control signal and outputs data as a counter output;
前記退避書込制御信号により入力データを書込んで退避し、 前記復元読出制御 信号により退避したデータを読出す不揮発性記憶セルと、 A nonvolatile memory cell that writes and saves input data according to the save write control signal and reads the saved data according to the restoration read control signal;
前記揮発性記憶セルのデータ出力と前段の 1ビットカウン夕のキャリー出力を 入力接続して加算出力を前記不揮発性記憶セルに出力すると共にキヤリ一出力を 後段の 1ビットカウンタに出力するキャリー付き加算器と、 The data output of the volatile memory cell is connected to the carry output of the preceding 1-bit counter to output an addition output to the nonvolatile memory cell and a carry output to output the carry output to the subsequent 1-bit counter. Container,
を備えたことを特徴とするプロセッサ。 A processor comprising:
1 4 . 請求の範囲 1 3のプロセッサに於いて、 前記 1ビットカウン夕の各々は、 前記揮発性記憶セルに対する前記不揮発性記憶セルからの出力データと外部から の外部入力データを選択するセレクタを備え、 前記セレクタによる外部入力デー 夕の選択により前記揮発性記憶セルのリセット又はカウンタ初期値のプリセット を行うことを特徴とするプロセッサ。
14. The processor according to claim 13, wherein each of the 1-bit counters includes a selector for selecting output data from the nonvolatile storage cell for the volatile storage cell and external input data from the outside. A processor for resetting the volatile memory cell or presetting an initial counter value by selecting external input data by the selector.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2002/013312 WO2004057472A1 (en) | 2002-12-19 | 2002-12-19 | Processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2002/013312 WO2004057472A1 (en) | 2002-12-19 | 2002-12-19 | Processor |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2004057472A1 true WO2004057472A1 (en) | 2004-07-08 |
Family
ID=32676916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2002/013312 WO2004057472A1 (en) | 2002-12-19 | 2002-12-19 | Processor |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2004057472A1 (en) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US569657A (en) * | 1896-10-20 | Charles niyison | ||
JPS4924050A (en) * | 1972-06-23 | 1974-03-04 | ||
JPH03266125A (en) * | 1990-03-16 | 1991-11-27 | Nec Corp | Register file |
JPH04251317A (en) * | 1991-01-09 | 1992-09-07 | Kyushu Nippon Denki Software Kk | System for protecting and reproducing status of task |
JPH04267448A (en) * | 1991-02-22 | 1992-09-24 | Nec Ic Microcomput Syst Ltd | Microcomputer |
JPH05113888A (en) * | 1991-04-24 | 1993-05-07 | Toshiba Corp | Microprocessor unit |
JPH05325593A (en) * | 1992-05-27 | 1993-12-10 | Sharp Corp | Controller of flash type eeprom |
US6166944A (en) * | 1998-04-20 | 2000-12-26 | Kyoto University | Data storing apparatus including integrated magnetic memory cells and semiconductor devices |
-
2002
- 2002-12-19 WO PCT/JP2002/013312 patent/WO2004057472A1/en not_active Application Discontinuation
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US569657A (en) * | 1896-10-20 | Charles niyison | ||
JPS4924050A (en) * | 1972-06-23 | 1974-03-04 | ||
JPH03266125A (en) * | 1990-03-16 | 1991-11-27 | Nec Corp | Register file |
JPH04251317A (en) * | 1991-01-09 | 1992-09-07 | Kyushu Nippon Denki Software Kk | System for protecting and reproducing status of task |
JPH04267448A (en) * | 1991-02-22 | 1992-09-24 | Nec Ic Microcomput Syst Ltd | Microcomputer |
JPH05113888A (en) * | 1991-04-24 | 1993-05-07 | Toshiba Corp | Microprocessor unit |
JPH05325593A (en) * | 1992-05-27 | 1993-12-10 | Sharp Corp | Controller of flash type eeprom |
US6166944A (en) * | 1998-04-20 | 2000-12-26 | Kyoto University | Data storing apparatus including integrated magnetic memory cells and semiconductor devices |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8270226B2 (en) | Memory module having a plurality of phase change memories, buffer RAM and NAND flash memory | |
KR100806284B1 (en) | High Energy Efficiency Processor Using Dynamic Voltage Scaling | |
WO2015141821A1 (en) | Cache memory which saves redundancy codes | |
US7863930B2 (en) | Programmable device, control method of device and information processing system | |
RU2616171C2 (en) | Low power electronic system architecture using non-volatile magnetic memory | |
US7895466B2 (en) | DMA assisted data backup and restore | |
CN103064503B (en) | SOC (system on a chip) and buffer thereof | |
US20170068304A1 (en) | Low-power memory-access method and associated apparatus | |
WO2005069148A2 (en) | Memory management method and related system | |
JP5294304B2 (en) | Reconfigurable electronic circuit device | |
CN103902013A (en) | Memory control device and method | |
RU2400804C2 (en) | Method and system for provision of power-efficient register file | |
JP2005158061A (en) | Memory recovery method and memory device with recovery capability | |
JP5999097B2 (en) | Semiconductor integrated circuit and control method thereof | |
US20070094454A1 (en) | Program memory source switching for high speed and/or low power program execution in a digital processor | |
WO2013035836A1 (en) | Semiconductor device and control method thereof | |
US10998073B2 (en) | Systems and methods to wake up memory array | |
US9910823B2 (en) | Stack processor using a ferroelectric random access memory (F-RAM) having an instruction set optimized to minimize memory fetch | |
JP2007066118A (en) | Memory controller, flash memory system and control method of flash memory | |
CN101526922A (en) | Flash data access method and device thereof | |
JP2010026674A (en) | Semiconductor integrated circuit | |
JP2009265880A (en) | Microcomputer, and external register data processing method therefor | |
WO2004057472A1 (en) | Processor | |
US8949514B2 (en) | Stack processor using a ferroelectric random access memory (F-RAM) for both code and data space | |
JP2004078772A (en) | Microcomputer device processing method during standby, and microcomputer device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP US |
|
NENP | Non-entry into the national phase |
Ref country code: JP |
|
WWW | Wipo information: withdrawn in national office |
Country of ref document: JP |