US20150055405A1 - Memory device and memory system with sensor - Google Patents
Memory device and memory system with sensor Download PDFInfo
- Publication number
- US20150055405A1 US20150055405A1 US14/460,021 US201414460021A US2015055405A1 US 20150055405 A1 US20150055405 A1 US 20150055405A1 US 201414460021 A US201414460021 A US 201414460021A US 2015055405 A1 US2015055405 A1 US 2015055405A1
- Authority
- US
- United States
- Prior art keywords
- address
- memory
- data
- command
- write
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1697—Power supply circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1653—Address circuits or decoders
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1675—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1693—Timing circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
- G11C11/417—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
- G11C11/418—Address circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/12—Programming voltage switching circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/148—Details of power up or power down circuits, standby circuits or recovery circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/10—Decoders
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/61—Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
- H03M13/611—Specific encoding aspects, e.g. encoding by means of decoding
Abstract
According to one embodiment, a memory device includes a first address memory storing a first address; a controller which is based on a first interface which transmits a signal serially and outputs a first command in accordance with the first interface; and a memory which stores data in a nonvolatile manner, is based on the first interface, and stores received write data in an address based on the first address when the memory receives the first command.
Description
- This is a Continuation-in-part application of U.S. patent application Ser. No. 14/198,398, filed Mar. 5, 2014, which claims the benefit of U.S. Provisional Application No. 61/869,293, filed Aug. 23, 2013, the entire contents all of which are incorporated herein by reference.
- Embodiments described herein relate generally to a memory device and a memory system with a sensor.
- An MRAM (Magnetic Random Access Memory) is known as a nonvolatile semiconductor memory.
-
FIG. 1 is a block diagram of a memory system according to a first embodiment; -
FIG. 2 is a block diagram of an MRAM; -
FIG. 3 is a circuit diagram of one memory cell; -
FIG. 4 is a block diagram of an address memory and address memory controller; -
FIG. 5 is a diagram showing one example of a Gray code; -
FIG. 6 is a timing chart showing signals supplied to a memory device; -
FIG. 7 is a block diagram of an address memory and an address memory controller according to a second embodiment; -
FIG. 8 is a block diagram of an address memory and address memory controller according to a third embodiment; -
FIG. 9 is a diagram showing the relationship between an input and output of an MSB extractor obtained when an address is formed of four bits; -
FIG. 10 is a block diagram of an address memory and address memory controller according to a fourth embodiment; -
FIG. 11 is a waveform diagram of write clock CLK and clock CLKR; -
FIG. 12 is a diagram showing the relationship between an input and output of an MSB extractor obtained when an address is formed of four bits; -
FIG. 13 is a circuit diagram showing one example of the MSB extractor; -
FIG. 14 is a circuit diagram showing another example of the MSB extractor; -
FIG. 15 is a block diagram of an address memory and address memory controller according to a modification; -
FIG. 16 is a block diagram of an address memory and address memory controller according to a fifth embodiment; -
FIG. 17 is a block diagram of another example of the memory system according to the first embodiment; -
FIG. 18 is a block diagram of a memory system according to a sixth embodiment; -
FIG. 19 is a block diagram of a nonvolatile memory according to the sixth embodiment; -
FIG. 20 illustrates an example of a flow of a signal on signal line SI in accordance with a serial transmission interface; -
FIG. 21 illustrates signals transmitted and received between a module controller and the nonvolatile memory in the sixth embodiment; -
FIG. 22 is a block diagram of a memory system according to a seventh embodiment; -
FIG. 23 illustrates signals transmitted and received between a module controller and an address memory controller in the seventh embodiment; -
FIG. 24 illustrates a second example of signals transmitted and received between a module controller and an address memory controller in the seventh embodiment; -
FIG. 25 is a block diagram of a memory system according to an eighth embodiment; -
FIG. 26 illustrates signals transmitted and received between a module controller and a second address memory controller in the eighth embodiment; -
FIG. 27 illustrates signals transmitted and received between a module controller and an address memory controller in a second example of the eighth embodiment; -
FIG. 28 illustrates signals transmitted and received between a module controller and a second address memory controller in a ninth embodiment; -
FIG. 29 illustrates signals transmitted and received between a module controller and the second address memory controller in a second example of the ninth embodiment; -
FIG. 30 illustrates an example of a parity generation matrix according to a tenth embodiment; -
FIG. 31 illustrates an example of an operation to generate parity according to the tenth embodiment -
FIG. 32 illustrates an example of a decryption matrix according to the tenth embodiment -
FIG. 33 illustrates an operation for error correction with the decryption matrix ofFIG. 32 ; -
FIG. 34 is a block diagram of a nonvolatile memory according to the tenth embodiment; -
FIG. 35 illustrates a second example of a parity generation matrix according to the tenth embodiment; -
FIG. 36 illustrates a third example of a parity generation matrix according to the tenth embodiment; -
FIG. 37 illustrates a fourth example of a parity generation matrix according to the tenth embodiment; -
FIG. 38 illustrates a fifth example of a parity generation matrix according to the tenth embodiment; and -
FIG. 39 illustrates a sixth example of a parity generation matrix according to the tenth embodiment. - According to one embodiment, a memory device comprises a first address memory storing a first address; a controller which is based on a first interface which transmits a signal serially and outputs a first command in accordance with the first interface; and a memory which stores data in a nonvolatile manner, is based on the first interface, and stores received write data in an address based on the first address when the memory receives the first command.
- With the recent development of computer networks and miniaturization of communication devices and measurement units, a system such as machine to machine (M2M) in which information items are mutually exchanged between multiple devices without human operations to automatically optimize the operation control, is proposed. In such a system, information items of various devices are transferred via the network. One example of the device is a sensor device, in which information items such as temperatures, vibrations, brightness, acceleration or angles are measured by means of various sensors and the measurement data are transmitted to the network. The operation power supply of the sensor device is obtained by use of a battery or energy harvester, except for a case wherein a stable power supply voltage is applied. Therefore, lowering the power consumption of components contained in the sensor device becomes more important in the field of M2M and sensor device networks. A memory used for storing measurement data is also one of the components of the device and, in the embodiments, it is assumed that a nonvolatile memory is used, the technique related to lowering the power consumption is addressed.
- In a nonvolatile memory having a mode in which the write process is successively performed to store the measurement results of the sensor, it is necessary to interrupt supply of power to the nonvolatile memory to reduce a consumed current after completion of the write process. In this case, the nonvolatile memory itself should record an internal address used to continue the write process after the power supply is turned on next time. The object of this embodiment is to suppress the power consumption of the nonvolatile memory by reducing the number of to-be-rewritten bits of the nonvolatile memory as far as possible. In order to realize this, in the embodiments, the internal address is formed by a Gray code and a circuit for controlling the internal address used for starting the write process to be rewritten only to a value obtained by increasing the previously stored address by a power of two is provided. As a result, the number of to-be-rewritten bits in the nonvolatile memory for address recording is 20 bits at maximum in the conventional technique since, for example, an address identifying a space of one megabit is expressed by 1M=1048576=2 to the power of twenty, but the number of to-be-rewritten bits is suppressed to two bits at maximum by applying the technique of the embodiments. As a result, the power consumption of the nonvolatile memory can be suppressed.
- Embodiments of this invention are now described with reference to the accompanying drawings. In the following explanation, components having the same functions and configurations are denoted by the same symbols and a repetitive explanation is made only when required. The entire description for a particular embodiment is also applicable to another embodiment unless it is explicitly mentioned otherwise or obviously denied.
- [1. Whole Configuration]
-
FIG. 1 is a block diagram of amemory system 10 according to a first embodiment. Thememory system 10 includes apower supply circuit 11,module controller 12,sensor 13 andmemory device 14. Thememory device 14 includes anaddress memory 15,address memory controller 16 andnonvolatile memory 17. - The
sensor 13 makes measurements and transmits measurement data as write data to thenonvolatile memory 17. The write data are in a digital form. In contrast, the measurement data generated by thesensor 13 may be in an analog format. In such a case, analogue measurement data are converted into digital write data by an analog to digital (AD) converter. Although not illustrated byFIG. 1 , an AD converter is located between the output of thesensor 13 and thenonvolatile memory 17. A write address used for storing measurement data in the nonvolatile memory is generated by means of theaddress memory 15 andaddress memory controller 16. - The
module controller 12 controls the whole operation of thememory system 10. Themodule controller 12 transmits measurement control signal MSC to thesensor 13 to control the measurement operation of thesensor 13 by use of measurement control signal MSC. Themodule controller 12 transmits a write clock CLK and an enable signal ENA to theaddress memory controller 16. Further, themodule controller 12 transmits the write clock CLK and memory control signal MEC to thenonvolatile memory 17 to control the operation of the nonvolatile memory 17 (for example, write operation) by use of the memory control signal MEC. - The
module controller 12 may include a sequencer, for example. The sequencer is responsible for, among the functions of themodule controller 12, functions in accordance with predefined procedures. - For example, the sequencer generates the measurement control signal MSC, the enable signal ENA and the memory control signal MEC. Moreover, the sequencer may also include a function for managing a schedule. Specifically, in one embodiment of operation, the sequencer is activated periodically based on, for example, a timer or when a particular event occurs. When activated, the sequencer in turn activates the
sensor 13 and thememory device 14 through the start of the power supply from thepower supply circuit 11, and executes measurement and storing of data. Alternatively, in another embodiment of operation, the sequencer may activate thememory device 14 to store data when the measurement data exhibits a sign of a change. Some of the functions of the sequencer may be implemented by a microcomputer. - The
power supply circuit 11 generates and supplies various power supply voltages to themodule controller 12,sensor 13 andmemory device 14. As thepower supply circuit 11, for example, a battery, solar battery or energy harvest could be used. Thememory system 10 may be configured to be supplied with external power supply voltages. - The
address memory 15 is configured by use of a nonvolatile memory and stores address information in a nonvolatile fashion. Address information stored by means of theaddress memory 15 is the initial address generated when the previous write access is made to thenonvolatile memory 17. Theaddress memory controller 16 reads address information (initial value) from theaddress memory 15. Then, theaddress memory controller 16 generates a write address by use of the address information and transmits the write address to thenonvolatile memory 17. Write access is made to thenonvolatile memory 17 by use of the write address. Theaddress memory 15 may be implemented by some of the functions of thenonvolatile memory 17. - For example, the
memory system 10 could be configured by use of one semiconductor chip. Alternatively, thememory system 10 may be configured by a plurality of modules, each module being configured by a semiconductor chip and connected on a system board. Further, thememory system 10 may be configured as a multi-chip module in one package. Alternatively, thenonvolatile memory 17,address memory 15 andaddress memory controller 16 could be designed and manufactured as one semiconductor chip. InFIG. 1 , a method for reading data stored in thenonvolatile memory 17 and outputting the data to the exterior of thememory system 10 is not clearly described, but a circuit having such a function can be additionally provided. -
FIG. 17 is a block diagram of another example of thememory system 10 according to the first embodiment.FIG. 17 also illustrates anAD converter 18, which is omitted inFIG. 1 . TheAD converter 18 receives the analogue measurement data from thesensor 13, and outputs the digital measurement data as the write data. Thememory system 10 further includes anoutput circuit 19. In accordance with an instruction OCC from themodule controller 12, theoutput circuit 19 receives data from thenonvolatile memory 17, and outputs the received data to outside thememory system 10. The data output to outside thememory system 10 is executed wirelessly, for example. For that purpose, theoutput circuit 19 includes a wireless communication module. The wireless communication module follows instructions by themodule controller 12 to add the received data to a radio signal to transmit it outside thememory system 10. Themodule controller 12 follows instructions from, for example, outside, to read data in thenonvolatile memory 17 in order to output it outside thememory system 10. Alternatively, themodule controller 12 starts the output of data in thenonvolatile memory 17 to outside thememory system 10 at a particular timing. - The measurement by the
sensor 13 and writes to thenonvolatile memory 17 of measurement data (or, write data) may be executed at a low frequency. In such a case, parallel execution of measurement, data writes and data transmissions by theoutput circuit 19 at a low frequency may be inefficient, and therefore may consume much power. To address this, themodule controller 12 executes low-frequency measurements and data writes without outputting such to the outside in succession while remaining ON, and collects data up to a particular quantity before transmitting it en bloc outside thememory system 10 using theoutput circuit 19, for example. - The
memory system 10 may be used for an application in which it observes and measures small-size data items one after another, and stores them, for example. For example, thememory system 10 may be normally powered OFF, and be used in an application in which it is turned on sporadically to store relatively-small-size data items one after another at a low frequency, and outputs accumulated data outside at a particular timing. - [2. Configuration of Nonvolatile Memory 17]
- Next, a configuration example of the
nonvolatile memory 17 is described. As thenonvolatile memory 17, various types of semiconductor memories such as an MRAM (Magnetic Random Access Memory), ReRAM (Resistance Random Access Memory), PCRAM (Phase-Change Random Access Memory) and flash memory (for example, NAND flash memory) can be used. In the present embodiment, one example in which an MRAM is used as thenonvolatile memory 17 is described. -
FIG. 2 is a block diagram of theMRAM 17. TheMRAM 17 includes amemory cell array 20,row decoder 21,column controller 22, input/output circuit 23 andcontroller 24. - The
memory cell array 20 is configured by use of memory cells MC arranged in a matrix form. In thememory cell array 20, bit line pairs BL, /BL and word lines WL are arranged. -
FIG. 3 is a circuit diagram of one memory cell MC. Memory cell MC includes a magnetoresistive effect element (MTJ (Magnetic Tunnel Junction) element) 25 andselect transistor 26. As theselect transistor 26, for example, an n-channel MOSFET is used. One end of theMTJ element 25 is connected to a bit line BL and the other end thereof is connected to the drain of theselect transistor 26. The gate of theselect transistor 26 is connected to a word line WL and the source thereof is connected to a bit line /BL. - The
row decoder 21 is connected to the word lines WL. Therow decoder 21 selects one of the word lines WL based on a row address. - The
column controller 22 is connected to the bit line pairs BL, /BL. In the data write mode, thecolumn controller 22 selects one of the bit line pairs based on a column address and passes a write current through a selected memory cell via the selected bit line pair to write data in the selected memory cell. Further, in the data read mode, thecolumn controller 22 selects one of the bit line pairs based on a column address to read data from the selected bit line pair. In order to perform the above operation, thecolumn controller 22 is configured to include a column decoder, a column selector, sense amplifiers, a write driver and the like. - The input/
output circuit 23 transmits write data input from the exterior to thecolumn controller 22 and outputs read data input from thecolumn controller 22 as output data to the exterior. - The
controller 24 performs overall control of the various operations of theMRAM 17. For example, thecontroller 24 receives an address, write clock CLK and memory control signal MEC from the exterior and controls the write operation and read operation based on the above signals. - [3. Configuration of
Address Memory 15 and Address Memory Controller 16] - The configuration of the
address memory 15 andaddress memory controller 16 is now described in more detail.FIG. 4 is a block diagram of theaddress memory 15 andaddress memory controller 16. Theaddress memory controller 16 corresponds to the components other than theaddress memory 15 among the components ofFIG. 4 . That is, theaddress memory controller 16 includes aregister 30,Gray code counter 31, roundingcircuit 32 andbit comparator 33. - In the present embodiment, address information stored in the
address memory 15 is described with a Gray code.FIG. 5 is a diagram showing one example of a Gray code. The Gray codes are codes in which the number of bits that vary between adjacent codes is always one. InFIG. 5 , the relationship between binary codes, decimal codes and Gray codes is shown. - The
register 30 temporarily stores address information read from theaddress memory 15. The Gray code counter 31 counts up address information (Gray code) stored in theregister 30 each time write clock CLK is input. - The rounding
circuit 32 rounds the final output of theGray code counter 31 to set the number of bits to be rewritten in the address information read from theaddress memory 15 to two bits at maximum. Specifically, the roundingcircuit 32 outputs a value that is equal to or larger than the final output of theGray counter 31 and larger than the output of the register 30 (initial value of the Gray code counter 31) by one or a power of two, for example, 2, 4, 8, . . . . - The
bit comparator 33 compares the output of the roundingcircuit 32 with the output of theregister 30 for each bit. Then, thebit comparator 33 transmits only bits that are inconsistent with the original value to theaddress memory 15. - [4. Operation]
- The operation of the
memory system 10 with configuration described above is now described.FIG. 6 is a timing chart showing signals supplied to thememory device 14. - When the power supply of the
memory system 10 is turned on, themodule controller 12 asserts the enable signal ENA. Then, themodule controller 12 generates the write clock CLK which is in response to write accesses and transmits write data from thesensor 13 to thenonvolatile memory 17 in synchronism with the write clock CLK. - Further, the
address memory controller 16 supplies a write address to thenonvolatile memory 17 in synchronism with write clock CLK. Specifically, when the enable signal ENA is asserted, theaddress memory controller 16 reads address information from theaddress memory 15 and counts up the write address each time the write clock CLK is input where the address information is used as an initial value. Thenonvolatile memory 17 stores write data in the memory cell of the write address. - When a series of write accesses is completed, the
module controller 12 negates the enable signal ENA. Once the enable signal ENA is negated, theaddress memory controller 16 writes address information in theaddress memory 15. The address information written in theaddress memory 15 here is the final address used in the series of write accesses and will be read, and becomes an initial value when the enable signal ENA is next asserted. After this, themodule controller 12 interrupts supply of the power from thepower supply circuit 11. - In the present embodiment, the enable signal ENA is supplied from the exterior of the
memory device 14. However, thememory device 14 may include a circuit that detects the level of the power supply, for example, and thememory device 14 may be configured to assert the enable signal ENA when the power supply voltage becomes equal to or higher than a preset first potential and negate the enable signal ENA when the power supply voltage becomes equal to or lower than a preset second potential. For stable operation of the circuit, it is desirable to set the second potential lower than the first potential. - Next, a more detailed operation of the
address memory controller 16 is described with reference toFIG. 4 . When the enable signal ENA is asserted, the address information is read from theaddress memory 15 and is temporarily stored in theregister 30. The address information stored in theregister 30 is used as an initial value of theGray code counter 31. - The
module controller 12 activates the write clock CLK upon each write access to thenonvolatile memory 17. The Gray code counter 31 counts up the address from the initial value according to the Gray code rule for each pulse of the write clock CLK. For a write access to thenonvolatile memory 17, an output of theGray code counter 31 is used as a write address. That is, write accesses are made to thenonvolatile memory 17 sequentially from an address next to the address stored in theaddress memory 15 after thememory system 10 is started. There are several known circuits as theGray code counter 31 of the present embodiment and therefore a detailed description thereof is omitted here. - When a series of write accesses is completed, the enable signal ENA is negated and the rounding
circuit 32 outputs a value that is the equal to or larger than the final output of theGray code counter 31 and larger than the output of the register 30 (initial value of Gray code counter 31) by one or a power of two, for example, 2, 4, 8, . . . . - The
bit comparator 33 compares the output of the roundingcircuit 32 with the output of theregister 30 for each bit. Only bits that are inconsistent as the result of comparison by thecomparator 33 are written in theaddress memory 15. Bits that are consistent are not written and the original values (read data) are maintained. Due to the characteristic of the Gray code, the number of to-be-rewritten bits is two at maximum when the address is changed by a power of two. - [5. Effect]
- As a comparison example, if address information stored in the
address memory 15 is not formed of a Gray code but formed of a binary code and a binary counter is used instead of theGray code counter 31, for example, it is necessary to rewrite four bits when a 4-bit address is changed by one from “0111” to “1000”. For example, since an address is 20 bits in a memory being accessed by use of addresses of 1 megabit, there is a possibility that 20 bits may be rewritten at maximum. - On the other hand, in the present embodiment, when address information stored in the
address memory 15 is rewritten after a series of write accesses (all of the write accesses from the time when the enable signal ENA is asserted until the signal is negated) is completed, the number of to-be-rewritten bits is suppressed to two at maximum. As a result, the power consumption required for rewriting address information stored in theaddress memory 15 can be greatly reduced. - Further, write access is made to the
nonvolatile memory 17 by use of a write address formed of a Gray code that is the output of theGray code counter 31. Therefore, since a change in an address for each write access can be suppressed to one bit, the number of address lines which are charged and discharged can be reduced and, as a result, the power consumption can be reduced. - Data is not written in a storage region corresponding to an address skipped by rounding
circuit 32 in the storage region of thenonvolatile memory 17. For example, the unwritten region may be managed by writing an invalid flag in the unwritten region. - A second embodiment is an embodiment in which a counter that counts up an address is configured by a binary counter, which can be easily realized.
FIG. 7 is a block diagram of anaddress memory 15 andaddress memory controller 16 according to the second embodiment. Theaddress memory controller 16 includes aregister 30, roundingcircuit 32,bit comparator 33, Gray-to-bin converter 34,binary counter 35 and bin-to-Gray converters - The Gray-to-
bin converter 34 converts address information formed of a Gray code to a binary code. Thebinary counter 35 counts up address information converted to a binary code by the Gray-to-bin converter 34 each time the write clock CLK is input. The bin-to-Gray converters - In order to convert a Gray code to a binary, the exclusive OR (XOR) of a bit and all of the more significant bits than that bit is calculated. For example, the following operations are performed to convert a 4-bit Gray code address G3, G2, G1, G0 to binary B3, B2, B1, B0.
- B3=G3
- B2=G3 XOR G2
- B1=G3 XOR G2 XOR G1
- B0=G3 XOR G2 XOR G1 XOR G0
- In order to convert a binary to a Gray code, the exclusive OR of a bit and a bit that is one-bit more significant than that bit is calculated. For example, the following operations are performed to convert 4-bit binary B3, B2, B1, B0 to a Gray code address G3, G2, G1, G0.
- G3=B3
- G2=B3 XOR B2
- G1=B2 XOR B1
- G0=B1 XOR B0
- The exclusive OR operation is known in the art and therefore a detailed explanation thereof is omitted here.
- The operation of the
address memory controller 16 with the above configuration is now described. Address information stored in theregister 30 is supplied to the Gray-to-bin converter 34. The Gray-to-bin converter 34 converts address information formed of a Gray code to a binary according to the table ofFIG. 5 . Address information converted to a binary by the Gray-to-bin converter 34 is used as an initial value of thebinary counter 35. - The
module controller 12 activates the write clock CLK each time write access is made to thenonvolatile memory 17. Thebinary counter 35 counts up the address from the initial value for each pulse of the write clock CLK. - The bin-to-
Gray converter 36 converts a count of thebinary counter 35 to a Gray code according to the table ofFIG. 5 . For write access to thenonvolatile memory 17, a Gray code converted by the bin-to-Gray converter 36 is used as a write address. - When a series of write accesses is completed, the enable signal ENA is negated and the rounding
circuit 32 outputs a value that is equal to or larger than the final output of thebinary counter 35 and larger than the output of the Gray-to-bin converter 34 (initial value) by one or a power of two, for example, 2, 4, 8, . . . . The bin-to-Gray converter 37 converts an output of the roundingcircuit 32 formed of a binary to a Gray code. - The
bit comparator 33 compares the output of the bin-to-Gray converter 37 with the output of theregister 30 for each bit. Only bits that are inconsistent as the result of comparison by thebit comparator 33 are written in theaddress memory 15. Bits that are consistent are not written and the original values (read data) are maintained. Due to the characteristic of the Gray code, the number of to-be-rewritten bits is two at maximum when the address is changed by a power of two. As a result, the same effect as that of the first embodiment can be obtained. - Further, a binary is converted to a Gray code by the bin-to-
Gray converter 36 and write access is made to thenonvolatile memory 17 by use of a write address formed of the Gray code. Therefore, since a change in an address for each write access can be suppressed to one bit, the number of address lines which are charged and discharged can be reduced and, as a result, the power consumption can be reduced. The count of thebinary counter 35 can be used as a write address. That is, the bin-to-Gray converter 36 can be omitted and write access is made to thenonvolatile memory 17 by use of a write address formed of a binary. - A third embodiment shows a concrete configuration example of a rounding
circuit 32.FIG. 8 is a block diagram of anaddress memory 15 andaddress memory controller 16 according to the third embodiment. - A
binary counter 38 whose initial value is “0” is newly provided in parallel with thebinary counter 35 that uses a value read from theaddress memory 15 and is supplied via the Gray-to-bin converter 34 as an initial value. Thebinary counter 38 counts up an address from an initial value=0 in response to the write clock CLK generated for each write access. An output of thebinary counter 35 is used as a write address. - The rounding
circuit 32 includes an MSB (most significant bit)extractor 32A andadder 32B. After a series of write accesses is completed (the enable signal ENA is negated), theMSB extractor 32A (1) outputs the final output of thebinary counter 38 as it is when the final output is one or a power of two and (2) outputs a value that is larger than the final output of thebinary counter 38 and is a power of two when the final output is neither one nor a power of two. More specifically, first, theMSB extractor 32A extracts the MSB of the final output of thebinary counter 38. Then, theMSB extractor 32A outputs the final output of thebinary counter 38 as it is when the final output is 1. Further, a binary that is a power of two has 1 in only one bit and 0 in the other bits. Therefore, theMSB extractor 32A outputs the final output of thebinary counter 38 as it is when the final output of thebinary counter 38 has only one bit of 1 and outputs a value that is a power of two in which only the more significant bit next to the MSB is 1 when the final output of thebinary counter 38 has plural bits of 1. -
FIG. 9 is a diagram showing the relationship between an input and output of theMSB extractor 32A obtained when an address is formed of four bits. TheMSB extractor 32A outputs a value of a power of two as it is when the 4-bit address is a power of two and outputs a value obtained by rounding up the value to a power of two in other cases. - The
adder 32B adds an output (initial value) of a Gray-to-bin converter 34 to an output of theMSB extractor 32A. The output of theadder 32B is input to abit comparator 33 via a bin-to-Gray converter 37. As described before in detail, also, in the third embodiment, the same effect as that of the first embodiment can be obtained. - A fourth embodiment shows another configuration example of the rounding
circuit 32.FIG. 10 is a block diagram of anaddress memory 15 andaddress memory controller 16 according to the fourth embodiment. - In the fourth embodiment, the number of pulses of clock CLKR input to a
binary counter 38 is less by one than the number of pulses of the write clock CLK generated for each write access. For this control operation, theaddress memory controller 16 includes a clock reducer (CLK reducer) 39. Theclock reducer 39 receives the write clock CLK after the enable signal ENA is asserted and generates the clock CLKR obtained by eliminating the first one pulse of the write clock CLK (shifted by one clock cycle).FIG. 11 is a waveform diagram of write clock CLK and clock CLKR. The function of theclock reducer 39 can be realized by use of a known method using a shift register or the like. - The
binary counter 38 is supplied with a clock having one pulse reduced from that of the third embodiment and theMSB extractor 32A outputs a value of a power of two in which only one-bit more significant than the MSB of the final output of thebinary counter 38 is 1 (the output value is 1 when the final output of thebinary counter 38 is 0).FIG. 12 is a diagram showing the relationship between an input and output of theMSB extractor 32A obtained when an address is formed of four bits. - The function of the
MSB extractor 32A can be relatively easily realized.FIG. 13 is a circuit diagram showing one example of theMSB extractor 32A. Inputs of theMSB extractor 32A are A3, A2, A1, A0 and outputs thereof are B3, B2, B1, B0. InFIG. 13 , the correspondence table between inputs A2, A1, A0 and outputs B3, B2, B1, B0 is also shown. Input A3 is fixed at 0. - The
MSB extractor 32A includesinverters 41 to 44, ANDgates 45 to 47 and NORgate 48. Input A0 is connected to the inputs of the ANDgate 47 and NORgate 48. Input A1 is connected to the inputs of theinverter 43, ANDgate 46 and NORgate 48. The output of theinverter 43 is connected to the input of the ANDgate 47. Input A2 is connected to the inputs of theinverter 42, ANDgate 45 and NORgate 48. The output of theinverter 42 is connected to the input of the ANDgate 46. Input A3 is fixed at 0 and is connected to the input of theinverter 41. The output of theinverter 41 is connected to the input of the ANDgate 45. The output of the ANDgate 45 is connected to the input of the ANDgate 47 via theinverter 44. The output of the NORgate 48 corresponds to output B0, the output of the ANDgate 47 corresponds to output B1, the output of the ANDgate 46 corresponds to output B2 and the output of the ANDgate 45 corresponds to output B3. -
FIG. 14 is a circuit diagram showing another example of theMSB extractor 32A. TheMSB extractor 32A includesinverters gates 52 to 54. Input A0 is connected to the inputs of theinverter 51 and NORgate 54. The output of theinverter 51 is connected to the input of the NORgate 53. Input A1 is connected to the inputs of theinverter 50 and NORgates inverter 50 is connected to the input of the NORgate 52. Input A2 is connected to the inputs of the NORgates 52 to 54. The output of the NORgate 54 corresponds to output B0, the output of the NORgate 53 corresponds to output B1, the output of the NORgate 52 corresponds to output B2 and input A2 corresponds to output B3. - In the above description, the first pulse of the write clock CLK is neglected and the remaining pulses are output after the enable signal ENA is asserted according to the function of the
clock reducer 39. However, the essence of the present embodiment lies in that the number of pulses of clock CLKR input to thebinary counter 38 is different from the number of pulses of the write clock CLK. For example, the same effect can be obtained if the last pulse of the write clock CLK is neglected when the enable signal ENA is negated. Further, the output clock of theclock reducer 39 may not be necessarily output in synchronism with the write clock CLK. - As described above in detail, according to the fourth embodiment, like the first embodiment, when address information stored in the
address memory 15 is rewritten after a series of write accesses is completed, the number of to-be-rewritten bits can be two bits at maximum. As a result, the same effect as that of the first embodiment can be obtained in the fourth embodiment. - (Modification)
- A write address supplied to the
nonvolatile memory 17 can be converted to a Gray code.FIG. 15 is a block diagram of anaddress memory 15 andaddress memory controller 16 according to a modification. InFIG. 15 , a bin-to-Gray converter 60 is added to the circuit ofFIG. 10 . The bin-to-Gray converter 60 converts an output of abinary counter 35 to a Gray code. As a result, a write address formed of a Gray code is supplied to thenonvolatile memory 17. According to the modification, since a change in an address for each write access can be suppressed to one bit, the number of address lines used for charging and discharging can be reduced and, as a result, the power consumption can be reduced. - In the second to fourth embodiments, the binary counter is used for counting up the address, but in the fifth embodiment, a Gray code counter is used for counting up the address and the Gray-to-bin converter and bin-to-Gray converter are omitted.
-
FIG. 16 is a block diagram of anaddress memory 15 andaddress memory controller 16 according to the fifth embodiment. Theaddress memory controller 16 includes two Gray code counters 31, 61. TheGray code counter 31 has the same function as that of the first embodiment. The Gray code counter 61 counts up an address based on the clock CLK from theclock reducer 39. The output of theGray code counter 61 corresponding to the clock CLKR is as shown inFIG. 5 . - A rounding
circuit 32 includes an addedvalue extractor 32C andadder 32B. The addedvalue extractor 32C receives the final output of theGray code counter 61. Then, the addedvalue extractor 32C outputs a value that is equal to or larger than the final output of theGray code counter 61 and is a power of two. - The
adder 32B performs a count-up operation once according to the Gray code rule to add a value of a power of two to the initial value while the position of the least significant bit is adequately changed. Specifically, theadder 32B performs the following operations. - (1) When the final output of the
Gray code counter 61 is 0 (when write clock CLK is one pulse), the least significant bit of the initial value is set as the least significant bit and the count-up operation is performed once to the initial value according to the Gray code rule. That is, the counting up is performed only once according to the Gray code rule. - (2) When the final output of the
Gray code counter 61 is 1 (when write clock CLK is two pulses), the second bit from the least significant bit of the initial value is set as the least significant bit and the count-up operation is performed once to the initial value according to the Gray code rule and the least significant bit is inverted. - (3) When the added value is “4 (the second power of 2)”, the third bit from the least significant bit is set as the least significant bit, the count-up operation is performed once to the initial value according to the Gray code rule, the least significant bit is fixed and the second bit from the least significant bit is inverted.
- (4) When the added value is “8 (the third power of 2)”, the fourth bit from the least significant bit is set as the least significant bit, the count-up operation is performed once to the initial value according to the Gray code rule, the least significant bit and second bit are fixed and the third bit from the least significant bit is inverted.
- A similar idea is applied when the added value is the fourth power or more of 2.
- The operation of the other circuits is the same as that of the first embodiment.
- As described above in detail, in the fifth embodiment, when address information stored in the
address memory 15 is rewritten after a series of write accesses (all of the write accesses while the enable signal ENA remains asserted) is completed, the number of to-be-rewritten bits can be suppressed to two at maximum. Further, amemory system 10 can be realized without using the Gray-to-bin converter and bin-to-Gray converter. - The sixth embodiment relates to application of a particular interface to the
memory system 10, and is applicable to any of the first to fifth embodiments. -
FIG. 18 is a block diagram of amemory system 10 according to the sixth embodiment. Thememory system 10 includes thepower supply circuit 11, themodule controller 12, thesensor 13, and thememory device 14. Thememory system 10 may further include anAD converter 18 and/or anoutput circuit 19. Thememory device 14 includes theaddress memory 15, theaddress memory controller 16, and thenonvolatile memory 17. In the sixth embodiment, thenonvolatile memory 17 is configured to operate in accordance with an interface which transmits data serially. Specifically, thenonvolatile memory 17 is configured to recognize commands based on an interface which transmits data serially, and receive and output data in accordance with such an interface. The interface which transmits data serially is referred to as a serial transmission interface herein. Examples of the serial transmission interface include a serial peripheral interface (SPI) and inter-integrated circuit (I2C) interface. The serial transmission interface is suitable for small data transmission and can transmit less data than in a case of parallel data transmission within the same period and consumes less power. -
FIG. 19 is a block diagram of thenonvolatile memory 17 according to the sixth embodiment. Thenonvolatile memory 17 is an MRAM as in the first embodiment, for example. TheMRAM 17 operates in accordance with the serial transmission interface as described above. In accordance with this, theMRAM 17 includes an input/output circuit 71 instead of the input/output circuit 23 of the first embodiment. The input/output circuit 71 supports the serial transmission interface. Specifically, the input/output circuit 71 receives a serial signal on a signal line SI, receives a chip (or, memory) enable signal /CS, and receives the clock CLK. The input/output circuit 71 transmits a serial signal to theoutput circuit 19 on a signal line SO. - On the signal line SI, a signal, such as commands, addresses, and data, flows toward the input/
output circuit 71.FIG. 20 illustrates an example of the flow of the signal on the signal line SI, chip enable signal /CS and clock CLK in accordance with a serial transmission interface. Thenonvolatile memory 17 is enabled while a signal /CS remains asserted.FIG. 20 relates to an example of a write. In the write based on the serial transmission interface, commands, addresses, and data all flow on the signal line SI. Thenonvolatile memory 17 takes in the signal on the signal line SI in units of bytes (each byte including eight bits) in synchronization with the write clock CLK. - The
nonvolatile memory 17 receives a write command, an address, and data on the signal line SI as illustrated inFIG. 20 . The write command instructs a data write, and is illustrated as 02h as an example, and has a size of one byte, for example. The address specifies memory cells MC in which data will be written among the memory cells MC of thenonvolatile memory 17, and is referred to as a write address. The data are data which will be written, and has a size of one byte, for example.FIG. 20 illustrates a case of a write to thenonvolatile memory 17 with a capacity of 1G bits. In accordance with this, a write address indicates the write-target address by four bytes. In such context, six bytes of a signal (a command, an address, and data) need to be transmitted for a write of one-byte data. - On the signal line SO, the signal, such as data, flows out of the input/
output circuit 71. During a read, read data from the memory cells MC flows on the signal line SO. - Referring back to
FIG. 18 , thenonvolatile memory 17 operates in accordance with the serial transmission interface as described above. In accordance with this, themodule controller 12 is also configured to operate in accordance with the serial transmission interface, and it operates in accordance with the same interface as that of thenonvolatile memory 17. Specifically, themodule controller 12 is configured to generate commands based on the serial transmission interface, and receive and output data in accordance such an interface. In accordance with the difference in the interface, themodule controller 12 of the sixth embodiment outputs signals different from those in the first embodiment. Specifically, themodule controller 12 outputs a signal /CS, and transmits the memory control signal MEC, such as a command and an address, to thenonvolatile memory 17 on the signal line SI. - The write data from the
sensor 13 are transmitted to thenonvolatile memory 17 on the signal line SI. Theaddress memory 15 can store the address information in accordance with the Gray code in accordance with other embodiments, or in any other form. For the case of storing based on the Gray code, theaddress memory controller 16 has the features described in the first to fifth embodiments. For the case of the address information not being stored in the form based on other embodiments, theaddress memory controller 16 merely increments the value of the address information in theaddress memory 15 by a particular amount (for example, 1) to generate a write address. - Referring to
FIG. 21 , the operation of thememory system 10 will now be described.FIG. 21 illustrates signals transmitted and received between themodule controller 12 and thenonvolatile memory 17 in the sixth embodiment. - As in the first embodiment, when the
memory system 10 is turned on, themodule controller 12 asserts the signals /CS and ENA. Themodule controller 12 then generates the write clock CLK, and executes operations described in the following in synchronization with the write clock CLK. - As described in the first embodiment, a write address can be generated by the
address memory controller 16 from the address information in theaddress memory 15. For this reason, themodule controller 12 does not need to transmit a write address to thenonvolatile memory 17. Therefore, themodule controller 12 writes data in thenonvolatile memory 17 without specifying a write address. Themodule controller 12 transmits a second write command to thenonvolatile memory 17 on the signal line SI. The second write command (no-address write command) is different from the regular write command accompanied by a write address ofFIG. 20 , and is illustrated by a value, for example, F2h, which is different from that for the regular write command for the purpose of distinction from the regular write command. The second write command instructs for the following signal to be recognized as the write data, and for the write data to be written in a write address received separately. - The
module controller 12 controls thesensor 13 to make it transmit the write data on the signal line SI following the second write command. Themodule controller 12 does not transmit a write address. The module controller also asserts the signal ENA in parallel with or after the transmission of the second write command. In response to the asserted signal ENA, theaddress memory controller 16 generates a write address from the address information and supplies the generated write address to thenonvolatile memory 17. - When the
nonvolatile memory 17 receives the second write command, it recognizes the second write command and executes the operation instructed by the second write command. Specifically, thenonvolatile memory 17 writes the data received after the second write command in the memory cells MC specified by the write address received from theaddress memory controller 16. - For additional data writes, the operation described so far is repeated. Specifically, the
module controller 12 maintains the asserted enable signal /CS and keeps outputting the write clock CLK. While thenonvolatile memory 17 keeps receiving the asserted enable signal /CS and the write clock CLK, it sequentially writes write data being received during the period. Specifically, themodule controller 12 controls thesensor 13 to make it transmit additional write data on the signal line SI. Thenonvolatile memory 17 keeps incrementing the write-target address by a unit amount and consecutively writes the write data items being received. Themodule controller 12 does not need to transmit a write command every time of write of write data. - When a series of writes is completed, the
module controller 12 negates the enable signal ENA and writes the last address in the current series of write accesses as the address information in theaddress memory 15 as in the first embodiment. Themodule controller 12 then stops the power supply by thepower supply circuit 11. - As described, in the sixth embodiment, the address information is stored, and the
nonvolatile memory 17 and themodule controller 12 use the serial transmission interface and support a write command which does not require transmission of a write address. A write address is separately generated from the address information, and, therefore, does not need to be transmitted from themodule controller 12. For this reason, the signal transmitted to thenonvolatile memory 17 from themodule controller 12 for a data write only includes a command and data, and has a size of two bytes in total according to theFIG. 21 example. This quantity is smaller than that of the regular write command (FIG. 20 ). A reduced time of transmission of the signal results in decreased power consumption by thememory system 10. - The seventh embodiment relates to an example of application a particular interface to the
memory system 10, and is applicable to any of the first to sixth embodiments. -
FIG. 22 is a block diagram of thememory system 10 according to the seventh embodiment. In the seventh embodiment, theaddress memory controller 16 is configured to operate in accordance with the serial transmission interface. Specifically, theaddress memory controller 16 is configured to recognize commands based on the serial transmission interface, and receive and output data in accordance with such an interface. In accordance with theaddress memory controller 16 using the serial transmission interface, themodule controller 12 also operates in accordance with the same serial transmission interface. Specifically, themodule controller 12 outputs the enable signal ENA, and transmits a memory control signal AMC, such as a command and an address, to theaddress memory controller 16 on a signal line SIM. Theaddress memory controller 16 is enabled while the enable signal ENA remains asserted. Moreover, themodule controller 12 receives an output AMO from theaddress memory controller 16 on a signal line SOM. For a case of theaddress memory 15 being implemented by some of the functions of thenonvolatile memory 17, the signal lines SIM and SOM are identical with the signal lines SI and SO, respectively. - The
nonvolatile memory 17 may or may not be based on the serial transmission interface.FIG. 22 illustrates an example where thenonvolatile memory 17 is based on the serial transmission interface as in the sixth embodiment. -
FIG. 23 illustrates signals transmitted and received between themodule controller 12 and theaddress memory controller 16 in the seventh embodiment. Update of the address information in theaddress memory 15 may be requested. The update request is made from outside thememory system 10 to themodule controller 12, for example. The update request is received with the new address information. - When address information update is requested, the
module controller 12 asserts the enable signal ENA, outputs the write clock CLK, and transmits an address write command (write address write command) to theaddress memory controller 16 on the signal line SIM. The address write command is different from thewrite command 02h and F2h, is illustrated byFIG. 23 as E2h, and has a size of one byte, for example. Themodule controller 12 transmits the value of the new address to theaddress memory controller 16 on the signal line SIM after the address write command. The address has a size of four bytes, for example. - When the
address memory controller 16 receives the address write command, it recognizes the address write command and executes the operation instructed by the address write command. Specifically, theaddress memory controller 16 updates the value in theaddress memory 15 with the value of the address received from themodule controller 12. When the update of address information is completed, themodule controller 12 negates the enable signal ENA. - The writes are the same as those in other embodiments. Specifically, when a data write occurs, the
module controller 12 executes the write in accordance with the address information last updated by the address write command. - Furthermore, the address information in the
address memory 15 may be requested from outside thememory system 10. The request of read of address information is made from outside thememory system 10 to themodule controller 12, for example. In order to deal with such a request, an address read command can be defined.FIG. 24 illustrates the second example of signals transmitted and received between themodule controller 12 and theaddress memory controller 16 in the seventh embodiment. - When a read of the address information is requested, the
module controller 12 asserts the enable signal ENA, outputs the read clock CLKB, and transmits an address read command (write address read command) to theaddress memory controller 16 on the signal line SIM. The address read command is different from the regular read command accompanied by a read address, and is illustrated byFIG. 24 as E3h, and has a size of one byte, for example. A read address specifies the memory cells MC from which data will be read among the memory cells MC of thenonvolatile memory 17. - When the
address memory controller 16 receives the address read command, it recognizes the address read command and executes the operation instructed by the address read command. Specifically, theaddress memory controller 16 reads the address information in theaddress memory 15, and transmits the read address information to themodule controller 12 on the signal line SOM. Themodule controller 12 outputs the received address information to outside thememory system 10 through control of theoutput circuit 19 when necessary.FIG. 24 illustrates an example where the address information has a size of four bytes. When the read of address information is completed, themodule controller 12 negates the enable signal ENA. - As described, according to the seventh embodiment, the address information can be written from outside the
memory system 10 by the address write command. Moreover, the address information can be accessed from outside thememory system 10 by the address read command. - The eighth embodiment relates to an example of application of a particular interface to the
memory system 10, and is applicable to any of the first to seventh embodiments. -
FIG. 25 is a block diagram of thememory system 10 according to the eighth embodiment. Themodule controller 12, theaddress memory controller 16, and thenonvolatile memory 17 operate in accordance with the serial transmission interface as in the sixth and seven embodiments. - The
memory device 14 of the eighth embodiment further includes asecond address memory 15 b and a secondaddress memory controller 16 b. The secondaddress control circuit 16 b can have the same components and connections as theaddress memory controller 16, and operates in accordance with the serial transmission interface. The secondaddress memory controller 16 b receives a signal ENAB, the write clock CLK, and the read clock CLKB from themodule controller 12 and receives a memory control signal AMCB, such as a command and an address on the signal line SIMB. Moreover, the secondaddress memory controller 16 b supplies an output AMOB to themodule controller 12 on a signal line SOMB. For a case of thesecond address memory 15 b being implemented by some of the functions of thenonvolatile memory 17, the signal lines SIMB and SOMB are identical with the signal lines SI and SO, respectively. - The
second address memory 15 b can have the same features as theaddress memory 15, and in that case the description for theaddress memory 15 is applicable. - Data in the
nonvolatile memory 17 may be read to outside thenonvolatile memory 17 at a particular timing. A read is executed for output to outside thememory system 10, for example, as described in the first embodiment. For example, themodule controller 12 starts a read of data from thenonvolatile memory 17 based on an instruction from outside thememory system 10 or a predetermined timing (for example, based on a timer). - Similarly to writes, consecutive reads may be executed from more than one area with consecutive addresses of the
nonvolatile memory 17. In such a case, when the address of the area from which the data was read last is specified, the address which follows or is based on the specified address is used as the start position, and a read address does not need to be specified separately. The serial transmission interface of the eighth embodiment or other embodiments supports consecutive reads from areas with consecutive addresses of thenonvolatile memory 17 with a specification reduced from the regular read accompanied by read addresses. For example, when thenonvolatile memory 17 which supports such a serial transmission interface receives the read clock CLKB while it keeps receiving the asserted enable signal /CS, it keeps incrementing the address from the start position by a unit amount and reads data consecutively from the resultant addresses. The I2C, for example, supports such a read. - For such a read, if the read address of the start position is specified, read addresses do not have to be individually specified. Based on this, the read address from which the data was read last is stored in the
second address memory 15 b as in the write. Thesecond address memory 15 b can store the address information in accordance with the Gray code in accordance with other embodiments or in any other form. - The
module controller 12 supplies the read clock CLKB to thenonvolatile memory 17 and thesecond address memory 15 b. Moreover, themodule controller 12 supplies the enable signal ENAB to the secondaddress memory controller 16 b. Furthermore, themodule controller 12 transmits a memory control signal AMC, such as a command and an address, to theaddress memory controller 16 on a signal line SIMB. - Referring to
FIG. 26 , operation of thememory system 10 will now be described.FIG. 26 illustrates signals transmitted and received between themodule controller 12 and the secondaddress memory controller 16 b in the eighth embodiment. Themodule controller 12 starts a read of data from thenonvolatile memory 17 at a particular timing. For that purpose, themodule controller 12 asserts the signal /CS and ENAB, outputs the read clock CLKB, and transmits a second read command (no address read command) to thenonvolatile memory 17 on the signal line SI. The second read command is different from the regular read command accompanied by a read address, and is illustrated by F3h, for example. The second read command instructs using a read address received separately as the start position to read data consecutively from the start address and the following addresses. Themodule controller 12 transmits no address value to thenonvolatile memory 17 after the second read command. - The read address of the start position is generated by the
address memory controller 16 from the address information in thesecond address memory 15 b. Specifically, when the secondaddress memory controller 16 receives an asserted enable signal ENAB, it reads the address information in thesecond address memory 15 b. As described above, the address information in thesecond address memory 15 b indicates the address of the area of thenonvolatile memory 17 from which the data was read last. When the secondaddress memory controller 16 receives the address information in thesecond address memory 15 b, it increments the received address information by a particular amount (for example, 1) to generate a read address. The secondaddress memory controller 16 transmits the generated read address to thenonvolatile memory 17. - When the
nonvolatile memory 17 receives the second read command, it recognizes the second read command and executes the operation instructed by the second read command. Specifically, thenonvolatile memory 17 reads data from the read address received from the secondaddress memory controller 16 b, and transmits the read data of one byte to theoutput circuit 19. For additional reads, themodule controller 12 maintains the asserted enable signal /CS and keeps outputting the read clock CLKB. While thenonvolatile memory 17 keeps receiving the asserted enable signal /CS and the read clock CLKB, it executes consecutive reads. Specifically, thenonvolatile memory 17 keeps incrementing the read target address by a unit amount and reads data from the resultant addresses.FIG. 26 illustrates a case of a read started from one read address, and four bytes read data are output in this way. - When a series of reads is completed, the
module controller 12 negates the enable signal ENAB as in the write. When the enable signal ENAB is negated, the secondaddress memory controller 16 b writes the address information in thesecond address memory 15 b. The address information written in thesecond address memory 15 here is the last address of a series of the read accesses, and will be read to be the initial value when the enable signal ENAB is asserted the next time. Themodule controller 12 then stops the power supply by thepower supply circuit 11. - Furthermore, the second read command may instruct the output of data after a lapse of a particular period, as a variation.
FIG. 27 illustrates signals transmitted and received between the module controller and the address memory controller in the second example of the eighth embodiment. For convenience, the second read command ofFIG. 27 is referred to as a third read command, and is illustrated by D3h, for example. - The
nonvolatile memory 17 may receive a clock of a high frequency. For example, thenonvolatile memory 17 receives the read clock CLKB of a high frequency from themodule controller 12. In such a case, thenonvolatile memory 17 may not be ready for outputting read data right after the reception of the read command. In order to address such a case, a read command which instructs data output after a lapse of a fixed period after the read command may be defined. Such a read command is different from the regular read command, and it corresponds to a FAST read command in the SPI. The third read command corresponds to such a read. - When the
nonvolatile memory 17 receives the third read command, it recognizes the third read command and executes the operation instructed by the third read command. Specifically, thenonvolatile memory 17 first waits for a particular period. The wait time may be set in advance or dynamically. After the lapse of the wait time (or, dummy cycle) after the receipt of the third command, thenonvolatile memory 17 reads data from the read address received from the secondaddress memory controller 16 b, and transmits the read data to theoutput circuit 19.FIG. 27 illustrates an example of the dummy cycle being eight clocks or equal to a period for transmitting eight bits. - As described, according to the eighth embodiment, the read address generated from the
second address memory 15 b is used to execute the read, and therefore the input of the read address accompanying the read command is unnecessary. For this reason, reads can be executed with little power consumption. - The ninth embodiment is based on the eighth embodiment. In the ninth embodiment, there is provided a mechanism to update and/or read the address information in the
second address memory 15 b. The block diagram of thememory system 10 according to the ninth embodiment is the same as that of the eighth embodiment (FIG. 25 ). - In the ninth embodiment, the
module controller 12 is configured to execute the operation described in the following. -
FIG. 28 illustrates signals transmitted and received between themodule controller 12 and the secondaddress memory controller 16 b in the ninth embodiment. The update of the address information in thesecond address memory 15 b may be requested. The update request is made from outside thememory system 10 to themodule controller 12, for example. The update request is received with new address information. - When address information update is requested, the
module controller 12 asserts the enable signal ENAB, outputs the write clock CLK, and transmits a second address write command (read address write command) to the secondaddress memory controller 16 b on the signal line SIB. The second address write command is different from the regular write command and the address write command, and is illustrated byFIG. 28 as C2h, and has a size of one byte, for example. Themodule controller 12 transmits the value of the new address to the secondaddress memory controller 16 b on the signal line SIMB after the second address write command. The address has a size of four bytes, for example. When the secondaddress memory controller 16 b receives the second address write command, it updates the value in thesecond address memory 15 b with the value of the address received from themodule controller 12. When the update of address information is completed, themodule controller 12 negates the enable signal ENA. - Furthermore, the address information in the
second address memory 15 b may be requested from outside thememory system 10. The request of read of address information is made from outside thememory system 10 to themodule controller 12, for example. - In order to deal with such a request, a second address read command can be defined.
FIG. 29 illustrates signals transmitted and received between themodule controller 12 and the secondaddress memory controller 16 b in the second example of the ninth embodiment. - When a read of the address information is requested, the
module controller 12 asserts the enable signal ENAB, outputs the read clock CLKB, and transmits the second address read command (read address read command) to the secondaddress memory controller 16 b on the signal line SIB. The second address read command is different from the usual read command and the address read command, and is illustrated byFIG. 29 as C3h, and has a size of one byte, for example. - When the second
address memory controller 16 b receives the second address read command, it recognizes the second address read command, reads the address information in thesecond address memory 15 b, and transmits the read address information to themodule controller 12 on the signal line SOME.FIG. 29 illustrates an example of the address information of four bytes. When the read of address information is completed, themodule controller 12 negates the enable signal ENA. - As described, according to the ninth embodiment, the address information in the
second address memory 15 b can be written from outside thememory system 10 by the second address write command. Moreover, the address information in thesecond address memory 15 b can be accessed from outside thememory system 10 by the second address read command. - The tenth embodiment relates to an error correction technique.
- An error correction technique may be used with a memory device. In this case, a circuit to execute an error correction technique, or an error correction circuit, is provided along with a memory device. The error correction circuit receives write data to be written in the memory device, follows predefined rules for generating an error correction code to generate an error correction code (parity), and outputs the set of write data and parity. The memory device stores the set of write data and parity. Moreover, the error correction circuit receives a set of read data requested to be read and parity, uses the parity to correct an error in the read data, and outputs the error-corrected read data.
- As an error correction code, a Hamming code is known. The operation for generating the Hamming code generates a four-bit parity from eight-bit information (substantial data), and, as a result, generates a twelve-bit code in total, which is a set of information and parity. In other words, the error correction using the Hamming code can correct any one-bit error in an array of twelve bits, but cannot correct errors of two bits or more.
- A BCH code is known as a code which can correct errors of more bits than with the Hamming code. The operation for generating the BCH code to correct errors of k bits in the information of the length of 2m−1 (m being an integer) results in information length=code length-k×m. For example, m=4 and k=2 results in the information length of seven bits for the code length of fifteen bits, and therefore the maximum number of correctable bits with eight-bit parity is seven-bit information. With m=5 and sixteen-bit code length, the information length is only 16-m×k=6 bits.
- In contrast, the error correction technique of the tenth embodiment uses a parity generation matrix of
FIG. 30 .FIG. 30 illustrates an example of the parity generation matrix according to the tenth embodiment. The parity generation matrix has components of eight rows and eight columns. In a parity generation matrix of the tenth embodiment, the set of components in a particular column has a set of components in an adjacent column with the components cyclically shifted by one row. Specifically, the value at the nth row in the mth column is the same as that at the (n+1)th row in the (m+1)th column. Moreover, the value at the eighth row in the mth column is the same as that at the first row in the (m+1)th column, and eight values are cyclically shifted by one row over the eight columns. Moreover, the value at the nth row in the eighth column is the same as that at the (n+1)th row in the first column. The value at the eighth row in the eighth column is the same as that at the first row in the first column. - As illustrated in
FIG. 30 , the first column has values of 1, 1, 1, 0, 1, 0, 0, and 0 at the first to eighth rows, respectively. The second to eighth columns have components determined in accordance the rules described above. - Referring to an instance of
FIG. 31 , generation of error correction code according to the tenth embodiment will now be described.FIG. 31 illustrates an example of the operation to generate the parity according to the tenth embodiment, and illustrates an example of parity generation using the parity generation matrix ofFIG. 30 . Data have a size of eight bits and values of D7, D6, D5, D4, D3, D2, D1, and D0 from the most significant bit to the least significant bit, respectively. In order to generate the parity of this data, data is treated as a matrix of eight rows and one column. Specifically, the data matrix has values of D0, D1, D2, D3, D4, D5, D6, and D7 in the first to eighth rows, respectively. Such a data matrix and the parity generation matrix are multiplied to result in a parity matrix of eight rows and one column. The parity matrix has values of P0, P1, P2, P3, P4, P5, P6, and P7 in the first to eighth rows, respectively. Specifically, in theFIG. 31 example, value P0 is D0+D4+D6+D7, and is the exclusive OR of D0, D4, D6, and D7. Similarly, the other results are P1=D0+D1+D5+D7, P2=D0+D1+D2+D6, P3=D1+D2+D3+D7, P4=D0+D2+D3+D4, P5=D1+D3+D4+D5, P6=D2+D4+D5+D6, and P7=D3+D5+D6+D7. The resultant eight-bit data and the eight-bit parity are concatenated to be treated as an array of sixteen bits in total. - Error correction according to the tenth embodiment will now be described with reference to the instances of
FIGS. 32 and 33 .FIG. 32 illustrates an example of the decryption matrix according to the tenth embodiment, and illustrates the example of the decryption matrix based on theFIG. 31 example.FIG. 33 illustrates the operation for the error correction with the decryption matrix ofFIG. 32 . As illustrated inFIG. 32 , a decryption matrix of the tenth embodiment has components in eight rows and sixteen columns. The first to eighth columns of the decryption matrix are the same as the first to eighth columns of the parity generation matrix ofFIG. 30 , and the ninth to sixteenth columns of the decryption matrix are a unit matrix of eight rows and eight columns. As illustrated inFIG. 33 , the decryption matrix ofFIG. 32 is multiplied with the sixteen bits of data and parity obtained by the operation ofFIG. 30 . The data and parity are treated in the form of a matrix of sixteen rows and one column. Specifically, the data and parity bits have values D0, D1, D2, D3, D4, D5, D6, D7, P0, P1, P2, P3, P4, P5, P6, and P7 in the first to sixteenth rows, respectively. The multiplication results in a syndrome matrix of eight rows and one column. The syndrome matrix has values S0, S1, S2, S3, S4, S5, S6, and S7 in the first to eighth rows, respectively. - When there is no error in the sixteen-bit data and parity, the syndrome matrix is a zero matrix, i.e., S0=S1=S2=S3=S4=S5=S6=S7=0. In contrast, when data and parity include a one-bit error, the syndrome matrix has value of one at the components at the positions determined in accordance with the position of the error. Specifically, when value D0 includes the error, the syndrome matrix is the same as the first column of the decryption matrix. Similarly, when values D1, D2, D3, D4, D5, D6, D7, P0, P1, P2, P3, P4, P5, P6, and P7 include the error, the syndrome matrix is the same as the second to sixteenth columns of the decryption matrix, respectively. For example, when value P0 is erroneous, the syndrome matrix has 1, 0, 0, 0, 0, 0, 0, and 0 in the first to eighth rows, respectively. When value D3 is erroneous, the syndrome matrix has 0, 0, 0, 1, 1, 1, 0, and 1 in the first to eighth rows, respectively.
- Furthermore, when the data and parity include two-bit errors, the resultant syndrome matrix is an exclusive OR (XOR) of two columns in the decryption matrix corresponding to the positions of the erroneous bits. For example, when values D0 and D1 are erroneous, the syndrome matrix has, in the first to eighth rows, respectively, 1, 0, 0, 1, 1, 1, 0, and 0, which are XOR of the respective components of the corresponding set of 1, 1, 1, 0, 1, 0, 0, and 0 and the other corresponding set of 0, 1, 1, 1, 0, 1, 0, and 0.
- In general, the parity generation matrix of the tenth embodiment includes components such that the XOR of any two of sixteen columns of the decryption matrix including that parity generation matrix and a unit matrix is different from the XOR of any other two columns and any of sixteen columns of the decryption matrix.
- Thus, the error correction technique of the tenth embodiment uses the parity generation matrix, the decryption matrix, and the operation of
FIGS. 30 to 33 . As described above, while the Hamming code cannot correct two-bit errors in eight-bit data, the error correction technique of the tenth embodiment can correct two-bit errors in eight-bit data. The error correction technique with the BCH code can correct two-bit errors in eight-bit data, but the correction in such a case requires ten-bit parity. In contrast, the error correction technique of the tenth embodiment can correct two-bit errors in eight-bit data with eight-bit parity. - The error correction technique of the tenth embodiment can be used with a memory device. Specifically, an error correction circuit of the tenth embodiment receives write data, generates parity from the write data in accordance with the error correction technique of the tenth embodiment, and outputs the set of the write data and the parity. Moreover, the error correction circuit of the tenth embodiment receives the set of read data and parity, uses the error correction technique of the tenth embodiment and the parity to correct an error in the read data, and outputs the error-corrected read data.
- The error correction circuit of the tenth embodiment is applicable to the first to ninth embodiments, and this will be described with reference to an instance below. In general, error correction circuits including one according to the tenth embodiment may be provided in the chip of a memory device or outside the memory chip. An example where the error correction circuit is provided in the chip of a memory device in accordance with the first embodiment (
FIG. 17 ) will be described with reference toFIG. 34 .FIG. 34 is a block diagram of thenonvolatile memory 17 according to the tenth embodiment. - The
nonvolatile memory 17 includes anerror correction circuit 27 between thecolumn controller 22 and the input andoutput circuit 23. Theerror correction circuit 27 uses the error correction technique of the tenth embodiment, i.e., the error correction technique with the parity generation matrix, the decryption matrix, and the operation ofFIGS. 30 to 33 , to correct errors in data. Specifically, theerror correction circuit 27 receives write data from the input andoutput circuit 23, uses the error correction technique of the tenth embodiment to generate parity from the write data, and outputs the set of write data and parity to thecolumn controller 22. Moreover, theerror correction circuit 27 receives the set of read data and parity from thecolumn controller 22, corrects an error in the read data based on a syndrome obtained through the read data and parity and the error correction technique of the tenth embodiment, and outputs error-corrected read data to the input andoutput circuit 23. - Although the information length is as short as eight bits in length, the
error correction circuit 27 can correct two-bit errors in data through addition of eight-bit parity. The number of bits of parity is fewer than in the case of the BCH code. For this reason, theerror correction circuit 27 is useful for an application which treats small data with low power, and the first to ninth embodiments correspond to such application. - The parity generation matrix of
FIG. 30 is an example, and the parity generation matrix of the tenth embodiment is not limited to that ofFIG. 30 . The parity generation matrix can include components different from those in theFIG. 30 example as long as the parity generation matrix of the tenth embodiment includes components such that the XOR of any two of sixteen columns of the decryption matrix including that parity generation matrix and a unit matrix is different from the XOR of any other two columns and any of sixteen columns of the decryption matrix. The inventor confirmed existence of at least 5040 parity generation matrices which fulfill such conditions.FIGS. 35 to 39 illustrate examples of five parity generation matrices among them.FIGS. 35 to 37 , in particular, illustrate examples of a cyclic type, where a set of components in a particular column is the same as the one-row-cyclically-shifted version of the set of components in an adjacent column.FIG. 38 andFIG. 39 illustrate examples of a non-cyclical type. - As described, the parity generation matrix of the tenth embodiment includes components such that the XOR of any two of sixteen columns of the decryption matrix including that parity generation matrix and a unit matrix is different from the XOR of any other two columns and any of sixteen columns of the decryption matrix. The use of such parity generation matrix and decryption matrix can correct two-bit errors in eight-bit data. Specifically, the error correction technique of the tenth embodiment exhibits a higher error-correction capability than the capability of the Hamming code through the use of the parity of bits fewer than the bits of parity required by the BCH code.
- While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
Claims (19)
1. A memory device comprising:
a first address memory storing a first address;
a controller which is based on a first interface which transmits a signal serially and outputs a first command in accordance with the first interface; and
a memory which stores data in a nonvolatile manner, is based on the first interface, and stores received write data in an address based on the first address when the memory receives the first command.
2. The device of claim 1 , wherein:
the controller does not transmit an address to which a write by the first command is executed after transmission of the first command.
3. The device of claim 2 , wherein:
the first interface requests a circuit based on the first interface to transmit a command, an address, and data on one signal line.
4. The device of claim 1 , wherein:
the controller outputs a second command and a write address in accordance with the first interface, and
the first address memory stores the write address as the first address when the second command is received.
5. The device of claim 1 , wherein:
the controller outputs a second command in accordance with the first interface, and
the first address memory outputs the first address when the second command is received.
6. The device of claim 1 , wherein:
the device further comprises a second address memory which stores a second address,
the controller outputs a second command in accordance with the first interface, and
the memory outputs data stored in an address based on the second address when the memory receives the second command.
7. The device of claim 6 , wherein:
the memory consecutively outputs data stored in an address based on the second address and one or more subsequent addresses while the memory keeps receiving an enable signal after the memory receives the second command.
8. The device of claim 6 , wherein:
when the memory receives the second command, the memory outputs data stored in the address based on the second address after a lapse of a period from the receipt of the second command.
9. The device of claim 6 , wherein
the controller outputs a third command and a read address in accordance with the first interface, and
the second address memory stores the read address as the second address memory when the third command is received.
10. The device of claim 6 , wherein:
the controller outputs a third command in accordance with the first interface, and
the second address memory outputs the second address when the third command is received.
11. The device of claim 1 , wherein:
the memory comprises a magnetic random access memory.
12. The device of claim 1 , further comprising:
an output circuit which receives data from the memory at a first frequency and outputs the received data to outside the memory device at a second frequency higher than the first frequency.
13. A memory device comprising:
memory cells which store data in a nonvolatile manner;
an error correction circuit which:
receives write data,
uses the write data and a first matrix to execute an operation to generate parity,
receives read data and parity based on from the read data,
uses the read data, the parity based on the read data and a second matrix to generate a syndrome,
uses the syndrome to correct an error of the read data,
wherein the second matrix includes the first matrix and a unit matrix, and
the first matrix comprises components selected such that an XOR of any two columns of the second matrix is different from an XOR of any other two columns and any column of the second matrix; and
a controller which writes the write data and the parity based on the write data in memory cells, and supplies the read data and the parity based on the read data from memory cells to the error corrections circuit.
14. The device of claim 13 , wherein:
the first matrix comprises components in eight rows and eight columns, and
the second matrix comprises components in eight rows and sixteen columns.
15. The device of claim 14 , wherein:
the write data comprises components in eight rows and one column, and
the error correction circuit multiplies the first matrix and the write data to generate parity of eight rows and one column.
16. The device of claim 14 , wherein:
the second matrix comprises the first matrix in first to eighth columns and a unit matrix in ninth to sixteenth columns,
the read data comprises components in eight rows and one column,
the error correction circuit multiplies the second matrix and an input which comprises the read data in first to eighth columns and the parity based on the read data in ninth to sixteenth columns to generate the syndrome, and
the syndrome comprises components in eight rows and one column.
17. The device of claim 16 , wherein:
the first matrix comprises only components of one or zero, and
when the input has an error in a kth column (k being a natural number not greater than sixteen), the syndrome is the same as a kth column of the second matrix.
18. The device of claim 17 , wherein:
when the input has errors in a kth column and hth column (h being a natural number different from k and not greater than sixteen), the syndrome is the same as an XOR of a kth column and an hth column of the second matrix.
19. The device of claim 14 , wherein:
the first matrix comprises:
in an nth row in an mth column, the same component as a component in an (n+1)th row in an (m+1)th column; and
in an eighth row in the mth column, the same component as a component in a first row in an (m+1)th column,
where each of m and n is a natural number not greater than seven.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/460,021 US20150055405A1 (en) | 2013-08-23 | 2014-08-14 | Memory device and memory system with sensor |
US14/935,083 US9778978B2 (en) | 2013-08-23 | 2015-11-06 | Memory device and memory system with sensor |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361869293P | 2013-08-23 | 2013-08-23 | |
US14/198,398 US9218867B2 (en) | 2013-08-23 | 2014-03-05 | Memory device and memory system with sensor |
US14/460,021 US20150055405A1 (en) | 2013-08-23 | 2014-08-14 | Memory device and memory system with sensor |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/198,398 Continuation-In-Part US9218867B2 (en) | 2013-08-23 | 2014-03-05 | Memory device and memory system with sensor |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/935,083 Division US9778978B2 (en) | 2013-08-23 | 2015-11-06 | Memory device and memory system with sensor |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150055405A1 true US20150055405A1 (en) | 2015-02-26 |
Family
ID=52480253
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/460,021 Abandoned US20150055405A1 (en) | 2013-08-23 | 2014-08-14 | Memory device and memory system with sensor |
US14/935,083 Active US9778978B2 (en) | 2013-08-23 | 2015-11-06 | Memory device and memory system with sensor |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/935,083 Active US9778978B2 (en) | 2013-08-23 | 2015-11-06 | Memory device and memory system with sensor |
Country Status (1)
Country | Link |
---|---|
US (2) | US20150055405A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180279099A1 (en) * | 2015-09-18 | 2018-09-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Management of Communication Between M2M Device and M2M Server |
US10725104B2 (en) * | 2017-12-22 | 2020-07-28 | Sandisk Technologies Llc | Self testing circuit for power optimization |
US20210334152A1 (en) * | 2020-04-27 | 2021-10-28 | Renesas Electronics Corporation | Semiconductor device and system using the same |
US11705173B1 (en) * | 2022-03-04 | 2023-07-18 | Micron Technology, Inc. | Address bits with reduced hamming distance |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6527054B2 (en) * | 2015-08-28 | 2019-06-05 | 東芝メモリ株式会社 | Memory system |
US11010245B2 (en) * | 2018-06-21 | 2021-05-18 | Winbond Electronics Corp. | Memory storage apparatus with dynamic data repair mechanism and method of dynamic data repair thereof |
KR20200074467A (en) * | 2018-12-17 | 2020-06-25 | 삼성전자주식회사 | Error correction code circuit, semiconductor memory device and memory system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6389490B1 (en) * | 1999-10-07 | 2002-05-14 | Xilinx, Inc. | FIFO memory system and method with improved generation of empty and full control signals in one clock cycle using almost empty and almost full signals |
US20080181040A1 (en) * | 2007-01-26 | 2008-07-31 | Media Tek Inc. | N-port memory circuits allowing M memory addresses to be accessed concurrently and signal processing methods thereof |
US20100067311A1 (en) * | 2007-12-21 | 2010-03-18 | Silicon Storage Technology, Inc. | Non-Volatile Memory Device Having High Speed Serial Interface |
US20100134332A1 (en) * | 2008-05-27 | 2010-06-03 | International Business Machines Corporation | Encoding a gray code sequence for an odd length sequence |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2814612B1 (en) * | 2000-09-26 | 2003-02-07 | St Microelectronics Sa | HIGH EFFICIENCY ERROR DETECTION AND / OR CORRECTION CODE |
FR2823035B1 (en) * | 2001-04-03 | 2003-07-11 | St Microelectronics Sa | HIGH EFFICIENCY ERROR DETECTION AND / OR CORRECTION CODE |
JP4890016B2 (en) | 2005-03-16 | 2012-03-07 | ルネサスエレクトロニクス株式会社 | Nonvolatile semiconductor memory device |
US20080028271A1 (en) * | 2006-07-25 | 2008-01-31 | Legend Silicon | Method for generating ldpc code for a ldpc based tds-ofdm system |
US7668040B2 (en) | 2006-12-22 | 2010-02-23 | Fujitsu Microelectronics Limited | Memory device, memory controller and memory system |
JP4702632B2 (en) * | 2007-04-06 | 2011-06-15 | ソニー株式会社 | ENCODING METHOD, ENCODING DEVICE, AND PROGRAM |
JP2009117006A (en) | 2007-11-09 | 2009-05-28 | Toshiba Corp | Resistance change memory device |
JP5044432B2 (en) | 2008-02-07 | 2012-10-10 | 株式会社東芝 | Resistance change memory |
JP5086919B2 (en) | 2008-06-30 | 2012-11-28 | 株式会社東芝 | Semiconductor memory device |
US8539321B2 (en) * | 2010-11-10 | 2013-09-17 | Infineon Technologies Ag | Apparatus and method for correcting at least one bit error within a coded bit sequence |
US9048873B2 (en) * | 2013-03-13 | 2015-06-02 | Lsi Corporation | Systems and methods for multi-stage encoding of concatenated low density parity check codes |
-
2014
- 2014-08-14 US US14/460,021 patent/US20150055405A1/en not_active Abandoned
-
2015
- 2015-11-06 US US14/935,083 patent/US9778978B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6389490B1 (en) * | 1999-10-07 | 2002-05-14 | Xilinx, Inc. | FIFO memory system and method with improved generation of empty and full control signals in one clock cycle using almost empty and almost full signals |
US20080181040A1 (en) * | 2007-01-26 | 2008-07-31 | Media Tek Inc. | N-port memory circuits allowing M memory addresses to be accessed concurrently and signal processing methods thereof |
US7529139B2 (en) * | 2007-01-26 | 2009-05-05 | Mediatek, Inc. | N-port memory circuits allowing M memory addresses to be accessed concurrently and signal processing methods thereof |
US20100067311A1 (en) * | 2007-12-21 | 2010-03-18 | Silicon Storage Technology, Inc. | Non-Volatile Memory Device Having High Speed Serial Interface |
US8094511B2 (en) * | 2007-12-21 | 2012-01-10 | Silicon Storage Technology, Inc. | Non-volatile memory device having high speed serial interface |
US20100134332A1 (en) * | 2008-05-27 | 2010-06-03 | International Business Machines Corporation | Encoding a gray code sequence for an odd length sequence |
US7916048B2 (en) * | 2008-05-27 | 2011-03-29 | International Business Machines Corporation | Encoding a gray code sequence for an odd length sequence |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180279099A1 (en) * | 2015-09-18 | 2018-09-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Management of Communication Between M2M Device and M2M Server |
US10869172B2 (en) * | 2015-09-18 | 2020-12-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Management of communication between M2M device and M2M server with finite state transitions created by the M2M device |
US10725104B2 (en) * | 2017-12-22 | 2020-07-28 | Sandisk Technologies Llc | Self testing circuit for power optimization |
US20210334152A1 (en) * | 2020-04-27 | 2021-10-28 | Renesas Electronics Corporation | Semiconductor device and system using the same |
US11500708B2 (en) * | 2020-04-27 | 2022-11-15 | Renesas Electronics Corporation | Semiconductor device and system using the same |
US11531579B2 (en) | 2020-04-27 | 2022-12-20 | Renesas Electronics Corporation | Semiconductor device and system using the same |
US11705173B1 (en) * | 2022-03-04 | 2023-07-18 | Micron Technology, Inc. | Address bits with reduced hamming distance |
Also Published As
Publication number | Publication date |
---|---|
US9778978B2 (en) | 2017-10-03 |
US20160062825A1 (en) | 2016-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9778978B2 (en) | Memory device and memory system with sensor | |
TWI688962B (en) | Memory devices with read level calibration | |
JP6240351B2 (en) | Reduce uncorrectable memory errors | |
CN107133122B (en) | Memory control method | |
US20190312593A1 (en) | Decoding method and storage controller | |
TWI479494B (en) | Refresh of non-volatile memory cells based on fatigue conditions | |
KR101507194B1 (en) | Serial interface nand | |
US20130297987A1 (en) | Method and Apparatus for Reading NAND Flash Memory | |
US9405721B2 (en) | Apparatuses and methods for performing a databus inversion operation | |
US20140169114A1 (en) | Volatile memory devices, memory systems including the same and related methods | |
US20130279283A1 (en) | Memory devices and memory controllers | |
TWI489483B (en) | Method, memory, memory device, memory system and computer-readable storage medium for fast, low-power reading of data in a flash memory | |
US20070300130A1 (en) | Method of Error Correction Coding for Multiple-Sector Pages in Flash Memory Devices | |
US8327218B2 (en) | Storage device with improved read/write speed and corresponding data process method | |
WO2017172247A1 (en) | Energy efficient read/write support for a protected memory | |
US20220180961A1 (en) | Memory device and read method thereof | |
CN105321571A (en) | Data storage device and operating method thereof | |
CN101930402B (en) | Nonvolatile memory with error detection/correction circuit and reading and writing method thereof | |
CN101930799B (en) | Non-volatile memory with error checking/correcting circuit and methods thereof for reading and writing data | |
TW201419295A (en) | On-chip bad block management for NAND flash memory | |
WO2007137013A2 (en) | Error correction coding for multiple-sector pages in flash memory devices | |
CN112750481A (en) | Memory device | |
US9218867B2 (en) | Memory device and memory system with sensor | |
US20220291845A1 (en) | Semiconductor memory device and error detection and correction method | |
US8953375B2 (en) | Semiconductor memory device and operation method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: KABUSHIKI KAISHA TOSHIBA, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SHIRATAKE, SHINICHIRO;REEL/FRAME:033539/0590 Effective date: 20140805 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |