WO2012032595A1 - メモリ制御装置およびメモリ制御方法 - Google Patents

メモリ制御装置およびメモリ制御方法 Download PDF

Info

Publication number
WO2012032595A1
WO2012032595A1 PCT/JP2010/065255 JP2010065255W WO2012032595A1 WO 2012032595 A1 WO2012032595 A1 WO 2012032595A1 JP 2010065255 W JP2010065255 W JP 2010065255W WO 2012032595 A1 WO2012032595 A1 WO 2012032595A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
address
memory
cpu
path
Prior art date
Application number
PCT/JP2010/065255
Other languages
English (en)
French (fr)
Inventor
重枝 哲也
Original Assignee
三菱電機株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to EP10856945.0A priority Critical patent/EP2615556B1/en
Priority to CN201080068952.7A priority patent/CN103069399B/zh
Priority to PCT/JP2010/065255 priority patent/WO2012032595A1/ja
Priority to JP2011532382A priority patent/JP4841709B1/ja
Priority to US13/820,681 priority patent/US9135107B2/en
Priority to SG2013016340A priority patent/SG188410A1/en
Publication of WO2012032595A1 publication Critical patent/WO2012032595A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures

Definitions

  • the present invention relates to a memory control device and a memory control method using an electrically rewritable nonvolatile memory (“flash ROM” or “EEPROM: Electrically Erasable Programmable ROM”).
  • flash ROM electrically rewritable nonvolatile memory
  • EEPROM Electrically Erasable Programmable ROM
  • a flash ROM is generally mounted as a recording medium such as an operating system (OS) and application software in a memory control device that performs various controls by a CPU (Central Processing Unit).
  • OS operating system
  • CPU Central Processing Unit
  • This flash ROM has the following characteristics. (1) Data is retained even when the power is turned off. (2) It is necessary to erase the write area before writing data. (3) It is necessary to erase data in units of blocks determined for each device, and it is performed by giving a signal according to a procedure determined for the data pins of the device. (4) Data writing is performed by giving a signal to the data pin of the device according to a predetermined procedure.
  • this flash ROM is configured to record data values by confining charges in the device, a phenomenon called charge leakage is caused by variations in data retention time of each memory cell and the influence of noise. May occur. Data stored in the flash ROM may generate a bit error with a certain probability due to this charge leakage.
  • Patent Document 1 As a means for solving such a problem, the conventional technique represented by the following Patent Document 1 is a recording apparatus using the above-described flash ROM as a recording medium, and when an error in the data value occurs in the flash ROM, regular data An error correction technique for correcting the error is disclosed.
  • the conventional technique represented by the above-mentioned Patent Document 1 uses, for example, a flash ROM that can be erased, written, and read (hereinafter simply referred to as “write etc.”) and a read-only ROM, and starts up the CPU.
  • the access to the data bus at this time is a mode in which the CPU reads data relating to a startup program (also referred to as an initialization program) stored in the ROM by operating an address signal and a memory control signal.
  • a startup program also referred to as an initialization program
  • the CPU is stably started using these data, and writing of data other than the startup program is executed.
  • the present invention has been made in view of the above, and obtains a memory control device and a memory control method capable of stably starting a CPU using a flash ROM and performing data writing and the like. With the goal.
  • the present invention records the CPU and the first information that has been subjected to the error correction coding process and the second information that has not been subjected to the error correction coding process.
  • An electrically rewritable nonvolatile memory, and an address bus and the memory for detecting the address output from the CPU and enabling the CPU to read the first information recorded in the memory A first path that switches between a first path that connects and a second path that connects the address bus and the memory so that the second information recorded in the memory can be erased, written, and read.
  • a switch for performing error correction of the first information recorded in the memory, and decoding information before error correction coding processing by removing redundant bits from the corrected information; and CP A third path connecting the decoder and the data bus to record the information decoded by the decoder to the data bus of the CPU, and recorded in the memory
  • the CPU since the first switch and the second switch are provided, the CPU can be stably started using the flash ROM, and data can be written. Play.
  • FIG. 1 is a configuration diagram of a memory control device according to an embodiment of the present invention, and is a diagram for explaining an operation when a CPU is activated.
  • FIG. 2 is a configuration diagram of the memory control device according to the embodiment of the present invention, and is a diagram for explaining an operation when a flash ROM write operation or erase operation is performed.
  • FIG. 3 is a diagram for explaining an effect when the memory control device according to the embodiment of the present invention is incorporated in train-mounted equipment.
  • FIG. 1 is a configuration diagram of the memory control device according to the embodiment of the present invention, and is a diagram for explaining an operation when the CPU 1 is activated.
  • FIG. 2 is a configuration diagram of the memory control device according to the embodiment of the present invention, and is a diagram for explaining an operation when a write operation or an erase operation of the flash ROM 4 is performed.
  • the memory control device mainly includes a CPU 1, a flash ROM 4 (hereinafter simply referred to as “ROM 4”), and an address bus 2 of the CPU 1 and the ROM 4.
  • Address line switch 5 first switch
  • decoder 7 decoder 7
  • data line switch 6 second switch
  • the CPU 1 controls the operation of the memory control device.
  • the CPU 1 has a function of switching the data bus width to, for example, an 8-bit data bus width or a 16-bit data bus width, and connects to the address bus 2 or the data bus 3 by operating a bus control line (not shown). Access each registered device.
  • Each device is, for example, an address line switch 5 or a data line switch 6.
  • the switching of the data bus width is performed based on a chip select signal (CS) generated by a bus controller (not shown) built in the CPU 1.
  • CS chip select signal
  • A0 and MSB most significant bit
  • An (n 1, 2,).
  • the address bus 2 from A0 to A9 is shown as an example.
  • the address bus width and the data bus width shown in FIGS. 1 and 2 are for convenience of explanation, and are not limited thereto.
  • the ROM 4 is a kind of electrically rewritable EEPROM, and is a non-volatile memory that retains information even when no driving power is supplied.
  • the ROM 4 is described as having a data bus width of, for example, 16 bits (2 bytes).
  • the ROM 4 stores various data such as data related to the startup program and data related to the application program.
  • data that has been subjected to error correction coding processing hereinafter referred to as “first information”
  • second information data that has not been subjected to error correction coding processing
  • This data may be data that is considered to require error correction in the decoder 7, for example, data related to a startup program for the CPU 1.
  • This data is encoded with, for example, a Hamming code having a code length of 15 and an information bit number of 11, and is recorded in the ROM 4 as first information.
  • the second information is data to be written, for example.
  • the number of information is the number of bits of the original data
  • the ROM 4 outputs a 16-bit signal corresponding to the address values of fA0 to fA8.
  • the output from the ROM 4 is taken into the decoder 7 and the data line switch 6.
  • the decoder 7 performs error correction of the first information described above and decodes data before the error correction coding process.
  • the decoder 7 takes in the first information from the data buses fD0 to fD15 of the ROM 4 , 11 bits of information are decoded, and 8 bits of 11 bits are output from dD0 to dD7. That is, the decoder 7 performs error correction on the first information recorded in the ROM 4, and removes redundant bits from the corrected information to decode the information before the error correction coding process.
  • the data output from the decoder 7 is taken into D0 to D7 (8 bits) of the data bus 3 via the data line switch 6.
  • the operation of the decoder 7 will be described using the above-described code length n and information number k.
  • the decoder 7 decodes 11-bit information “k” from the 15-bit signal “n” output from the ROM 4, and further outputs 8 of the 11 bits to the data bus 3. This 8-bit data becomes the data after error correction.
  • the address line switch 5 is interposed between the address bus 2 and the ROM 4 to switch the correspondence between the address buses A0 to An and the addresses fA0 to fAn of the ROM 4.
  • the address line switch 5 is configured such that the CPU 1 can read the first information from the ROM 4, the first path connecting the address bus 2 of the CPU 1 and the ROM 4, and the CPU 1 writes the second information.
  • the second path connecting the address bus 2 and the ROM 4 is switched as possible.
  • the first path is, for example, a path connecting A0 to A8 of the address bus 2 and the address signals fA0 to fA8 of the ROM 4 as shown in FIG.
  • the second path is, for example, a path connecting A1 to A9 of the address bus 2 and the address signals fA0 to fA8 of the ROM 4 as shown in FIG.
  • the data line switch 6 One end of the data line switch 6 is connected to the outputs dD0 to dDn of the decoder 7 and the outputs fD0 to fDn of the ROM 4. The other end of the data line switch 6 is connected to the data bus 3.
  • the data line switch 6 is interposed between the decoder 7 and the data bus 3 and switches between outputs dD0 to dDn of the decoder 7 and outputs fD0 to fDn from the ROM 4.
  • the data line switch 6 has a third path connecting the decoder 7 and the data bus 3 to transmit the first information error-corrected by the decoder 7 to the data bus 3 of the CPU 1.
  • the fourth path connecting the ROM 4 and the data bus 3 is switched so that the second information recorded in the CPU 1 can be written.
  • the third path is, for example, a path connecting the outputs dD0 to dD7 of the decoder 7 and D0 to D7 of the data bus 3 as shown in FIG.
  • the fourth path is a path that connects the outputs fD0 to fD15 of the ROM 4 and D0 to D15 of the data bus 3, for example, as shown in FIG.
  • the memory control device is configured to determine the address value during the operation of the CPU 1 and determine the operation of the address line switch 5 and the operation of the data line switch 6. ing.
  • the former is, for example, an operation when the CPU 1 operates with an 8-bit data bus width and accesses the ROM 4 with an address at the time of activation (activation address).
  • the latter is, for example, an operation when the CPU 1 operates with a 16-bit data bus width and accesses the ROM 4 with an address when writing or the like.
  • the CPU 1 When starting up the CPU 1, the CPU 1 operates with an 8-bit data bus width. Then, the CPU 1 outputs a start address unique to the device (CPU 1) and executes access to the ROM 4.
  • the LSB of the address at the time of activation (for example, in the case of a 4-digit address XXXX) changes from XXX0 to XXX1, or changes from XXX1 to XXX0, that is, every time the address value is incremented, the ROM 4 is one word (16 bits) must be advanced.
  • the address line switch 5 may be configured to detect the address value at the time of activation and connect the LSB (A0) of the address bus and the LSB (fA0) of the ROM 4. As a result, every time A0 of the address bus 2 changes, the ROM 4 advances by one word.
  • 16-bit data (fD0 to fD15) is output from the ROM 4.
  • the decoder 7 takes 15 bits (fD0 to fD14) out of the 16 bits, decodes 11 bits of information, and converts 8 bits of the 11 bits to D0 to D7 (8 bits) of the data bus 3. Output.
  • the data corresponding to the address at the time of activation (data relating to the activation program) is subjected to error correction coding processing and recorded in the ROM 4 as first information. That is, 8-bit data (data relating to the activation program) is recorded in the ROM 4 as 15-bit data (first information).
  • the CPU 1 when the CPU 1 operates with an 8-bit data bus width and accesses the ROM 4 with the address at the time of activation, the path of the address line switch 5 and the data line switch 6 is routed.
  • the first information can be read and the error-corrected data can be transmitted to the data bus 3. Therefore, even if an error occurs in the data value in the ROM 4, the CPU 1 can be started up normally.
  • the CPU 1 When writing to the ROM 4, etc., the CPU 1 operates with a 16-bit data bus width. Then, the CPU 1 outputs an address value for writing and executes access to the ROM 4.
  • the address line switch 5 detects this address value and connects the address bus 2 and the address line of the ROM 4 in association with each other as follows. .
  • the fD0 to fD15 of the ROM 4 and the D0 to D15 of the data bus 3 are connected.
  • the CPU 1 operates with a 16-bit data bus width, for example, the first information encoded by the CPU 1 can be written in the ROM 4.
  • the CPU 1 uses the same access method as that of a normal NOR flash ROM at an address when writing or the like. That is, the CPU 1 operates the address bus 2 and a bus control signal (not shown) to access the device (ROM 4) via the data bus 3, but the ROM 4 itself can be accessed as a single bus-connected device. . Therefore, the CPU 1 can perform a write operation and an erase operation prepared in the ROM 4 via the data bus 3.
  • the writing operation is an operation in which the CPU 1 writes a write command to the ROM 4 and reads completion of writing from the ROM 4 in order to write data.
  • the erasing operation refers to an operation in which the CPU 1 writes an erasing command to the ROM 4 and erases erasing completion from the ROM 4 in order to erase data.
  • These operations can be executed by the CPU 1 accessing the ROM 4 with a 16-bit data bus width.
  • the address line switch 5 and the data line switch 6 need to perform a switching operation.
  • the address line switch 5 and the data line switch 6 are configured to monitor the address signal of the address bus 2 and execute an operation corresponding to this address. When the address is detected, a switching operation as shown in FIG. 2 is executed to realize a write operation or an erase operation.
  • the Hamming encoding of the activation data written in the ROM 4 has been described on the assumption that the CPU 1 performs encoding calculation.
  • the present invention is not limited to this.
  • dedicated hardware may be incorporated into the memory control device so as to execute Hamming encoding. In such a configuration, the software can be simplified.
  • a mode in which the Hamming encoding of data is performed by an information processing system other than the memory control device, and the encoded data is written in the ROM 4 may be employed. In this way, the load on the CPU 1 can be reduced.
  • a Hamming code is used as an error correction code method
  • the present invention is not limited to a Hamming code, and an error correction code other than a Hamming code can also be employed.
  • the data before the error correction coding process is not limited to the data related to the activation program, and any data may be used as long as it is considered that the decoder 7 needs to correct the error.
  • the CPU 1 is accessed with an 8-bit data bus width when reading the first information, and the CPU 1 is accessed with a 16-bit data bus width when writing the second information.
  • the data bus width is not limited to this.
  • the memory control device may be configured as follows.
  • the decoder 7 when a predetermined register is prepared inside the decoder 7 and the decoder 7 performs error correction, error occurrence information is stored in this register, and the CPU 1 detects this error occurrence information via the register. . Further, the CPU 1 specifies a recording area in which an error has occurred in the ROM 4, reads data in this recording area, encodes this data, and then writes the data in the corresponding location (recording area in which the error has occurred).
  • the decoder 7 is configured to hold the error detection result at the time of decoding as the decoder internal information.
  • the data is written in the ROM 4 in a state where the error can be corrected. That is, according to the memory control device according to the present embodiment, it is possible to suppress the occurrence of an error that cannot be corrected by returning to a state where the error can be corrected before many bit errors occur.
  • the memory control device records the CPU 1, the first information that has been subjected to the error correction coding process, and the second information that has not been subjected to the error correction coding process.
  • ROM 4 memory
  • ROM 4 memory
  • An address line switch 5 for switching between a second path connecting the address bus 2 and the ROM 4 so that the second information recorded in the memory can be erased, written, and read.
  • a decoder 7 that performs error correction on the first information recorded in the ROM 4, removes redundant bits from the corrected information, and decodes the information before error correction coding processing, and the CPU 1 outputs the information.
  • a third path for connecting the decoder 7 and the data bus 3 to detect the received address and transmitting the information decoded by the decoder 7 to the data bus 3 of the CPU 1;
  • a data line switch 6 (second switch) for switching between the ROM 4 and the data bus 3 so that the information of 2 can be erased, written and read. Therefore, when the first address (for example, the activation address) indicating that the first information is read is output from the CPU 1, the address line switch 5 connects the address bus 2 and the ROM 4 via the first path.
  • the data line switch 6 can read out the error-corrected data by connecting the decoder 7 and the data bus 3 through the third path. Furthermore, when the second address indicating that the second information is written or the like is output from the CPU 1, the address line switch 5 connects the address bus 2 and the ROM 4 through the second path, and the data The line switch 6 can perform an erasing operation and a writing operation of data in the ROM 4 by connecting the decoder 7 and the data bus 3 through the fourth path.
  • the CPU when the power is turned on, the CPU reads the activation program stored in the ROM. Furthermore, the OS loader is read from a storage device (for example, a hard disk or a flash ROM) capable of writing data and executed based on the startup program. As described above, the conventional memory control device is a mode in which the ROM for storing the startup data and the storage device capable of writing data are used in combination. Since the memory control device according to this embodiment includes the address line switch 5 and the data line switch 6, the CPU 1 can be stably started using only the ROM 4 and recorded in the ROM 4. Data can be written.
  • a storage device for example, a hard disk or a flash ROM
  • the memory control device can be applied to a memory control device that performs various types of control by the CPU 1.
  • a memory control device that performs various types of control by the CPU 1.
  • the following effects can be obtained.
  • FIG. 3 is a diagram for explaining the effect when the memory control device according to the embodiment of the present invention is incorporated in train-mounted equipment.
  • the train organization shown in FIG. 3 is composed of a plurality of vehicles, and includes, as an example, both leading vehicles 10a and 10b, and vehicles 11a and vehicles 11b other than the leading vehicles.
  • Recent trains are equipped with a train information management device that controls and monitors the operating state of service equipment and the like for the purpose of reducing the load on crew members and improving service to passengers.
  • the vehicle 10a and the vehicle 10b are mounted with an electrical component 20, an electrical component 21, and an electrical component 22, and the electrical component 20 is, for example, a central station that constitutes a train information management device.
  • the terminal device constituting the train information management device.
  • the electrical product 21 is, for example, a monitor display installed in a cab or the like.
  • an electrical product 30 and an electrical product 31 are mounted on the vehicle 11a and the vehicle 11b.
  • the electrical product 30 is, for example, the terminal device described above, and the electrical product 31 is an in-vehicle device (for example, an air conditioner, SIV, VVVF, etc.) connected to the terminal device.
  • the electrical product 30 and the electrical product 31 are connected by an in-vehicle transmission line.
  • the electrical equipment 20 and the electrical equipment 30 are mutually connected by the transmission line between vehicles.
  • the memory control device stabilizes the CPU using a flash ROM without changing the bus control mechanism supported by a generally available CPU (or IC), for example. It is possible to automatically start and write data.
  • the memory control device shows an example of the contents of the present invention, and can be combined with another known technique and does not depart from the gist of the present invention. Of course, it is possible to change the configuration such as omitting a part.
  • the present invention can be applied to a memory control device that performs various types of control by a CPU.
  • the CPU can be stably started using a flash ROM, and data can be written. It is useful as a possible invention.

Abstract

 CPU1と、誤り訂正符号化処理がなされた第1の情報と誤り訂正符号化処理がなされていない第2の情報とを記録するフラッシュROM4と、ROM4に記録された第1の情報をCPU1が読み取り可能とすべくアドレスバス2とROM4とを接続する第1の経路とROM4に記録された第2の情報を消去、書き込み、および読み取り可能にすべくアドレスバス2とROM4とを接続する第2の経路とを切り替えるアドレス線切替器5と、ROM4に記録された第1の情報の誤り訂正および復号を行う復号器7と、復号器7にて復号された情報をデータバス3に伝達すべく復号器7とデータバス3とを接続する第3の経路とROM4に記録された第2の情報を消去、書き込み、および読み取り可能にすべくROM4とデータバス3とを接続する第4の経路と、を切り替えるデータ線切替器6とを備える。

Description

メモリ制御装置およびメモリ制御方法
 本発明は、電気的に書き換え可能な不揮発性のメモリ(「フラッシュROM」あるいは「EEPROM:Electrically ErasableProgrammable ROM」を用いたメモリ制御装置およびメモリ制御方法に関するものである。
 近年、CPU(Central Processing Unit)によって各種の制御を行うメモリ制御装置には、オペレーティングシステム(OS)やアプリケーションソフトなどの記録媒体として、フラッシュROMが一般的に搭載されている。このフラッシュROMは、以下のような特徴がある。(1)電源を切ってもデータが保持される。(2)データ書き込み前に、書き込み領域の消去を行う必要がある。(3)データの消去は、デバイス毎に定められたブロック単位で行う必要があり、デバイスのデータピンに定められた手順で信号を与えることで行われる。(4)データの書き込みは、デバイスのデータピンに定められた手順で信号を与えることで行われる。
 ただし、このフラッシュROMは、デバイス内に電荷を閉じ込めることでデータ値を記録するように構成されているため、各メモリセルのデータ保時時間のばらつきやノイズの影響等によって、電荷漏れと呼ばれる現象が発生する場合がある。フラッシュROMに保存されたデータは、この電荷漏れによって一定の確率でビットエラーを発生する場合がある。
 このような問題を解決する手段として下記特許文献1に代表される従来技術は、上述したフラッシュROMを記録媒体とする記録装置であり、フラッシュROMにおいてデータ値の誤りが発生した場合、正規なデータに訂正するための誤り訂正技術を開示している。
特開2006-331233号公報
 上記特許文献1に代表される従来技術は、例えば、消去、書き込み、および読み取り(以下単に「書き込み等」という)が可能なフラッシュROMと、読み取り専用のROMとを併用しており、CPUの起動時におけるデータバスへのアクセスは、CPUがアドレス信号とメモリ制御信号とを操作することによって、ROMに格納された起動プログラム(初期化プログラムと称してもよい)に関するデータを読み取るという態様である。ここで、起動プログラムに関するデータや起動プログラム以外のデータをフラッシュROMに保存して、これらのデータを用いて、CPUを安定的に起動させると共に、起動プログラム以外のデータの書き込み等を実行する場合には、起動プログラムに関するデータの誤り訂正を可能とするバス操作と、書き込み等を可能とするバス操作とを考慮しなければならない。しかしながら、上記特許文献1に代表される従来技術は、これらのバス操作が考慮されていないため、フラッシュROMを用いてCPUを安定的に起動させ、かつ、データの書き込み等を行うことが困難であった。
 本発明は、上記に鑑みてなされたものであって、フラッシュROMを用いてCPUを安定的に起動させ、かつ、データの書き込み等を行うことが可能なメモリ制御装置およびメモリ制御方法を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明は、CPUと誤り訂正符号化処理がなされた第1の情報と誤り訂正符号化処理がなされていない第2の情報とを記録し、電気的に書き換え可能な不揮発性のメモリと、前記CPUから出力されたアドレスを検知して、前記メモリに記録された第1の情報をCPUが読み取り可能とすべくアドレスバスと前記メモリとを接続する第1の経路と、前記メモリに記録された前記第2の情報を消去、書き込み、および読み取り可能にすべく前記アドレスバスと前記メモリとを接続する第2の経路と、を切り替える第1の切替器と、前記メモリに記録された前記第1の情報の誤り訂正を行い、訂正後の情報の中から冗長ビットを除いて誤り訂正符号化処理前の情報を復号する復号器と、前記CPUから出力されたアドレスを検知して、前記復号器にて復号された情報を前記CPUのデータバスに伝達すべく前記復号器と前記データバスとを接続する第3の経路と、前記メモリに記録された前記第2の情報を消去、書き込み、および読み取り可能にすべく前記メモリと前記データバスとを接続する第4の経路と、を切り替える第2の切替器と、を備えたことを特徴とする。
 この発明によれば、第1の切替器および第2の切替器を備えるようにしたので、フラッシュROMを用いてCPUを安定的に起動させ、かつ、データの書き込み等を行うことができるという効果を奏する。
図1は、本発明の実施の形態にかかるメモリ制御装置の構成図であって、CPU起動時の動作を説明するための図である。 図2は、本発明の実施の形態にかかるメモリ制御装置の構成図であって、フラッシュROMの書き込み操作あるいは消去操作をするときの動作を説明するための図である。 図3は、本発明の実施の形態にかかるメモリ制御装置を列車搭載機器に組み込んだ場合の効果を説明するための図である。
 以下に、本発明にかかるメモリ制御装置およびメモリ制御方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
 図1は、本発明の実施の形態にかかるメモリ制御装置の構成図であって、CPU1起動時の動作を説明するための図である。また、図2は、本発明の実施の形態にかかるメモリ制御装置の構成図であって、フラッシュROM4の書き込み操作あるいは消去操作をするときの動作を説明するための図である。
 以下、説明の順としては、まずメモリ制御装置の構成を説明し、その後に、CPU1起動時の動作と、フラッシュROM4内のデータを書き込み等する場合の動作とを説明する。
 図1および図2において、本実施の形態にかかるメモリ制御装置は、主たる構成として、CPU1と、フラッシュROM4(以下単に「ROM4」と称する)と、CPU1のアドレスバス2とROM4との間に介在するアドレス線切替器5(第1の切替器)と、復号器7と、データ線切替器6(第2の切替器)を有して構成されている。
 CPU1は、メモリ制御装置の動作を制御するものである。CPU1は、データバス幅を、例えば、8ビットデータバス幅または16ビットデータバス幅に切り替える機能を有し、バス制御ライン(図示せず)を操作して、アドレスバス2あるいはデータバス3に接続された各デバイスにアクセスする。各デバイスとは、例えば、アドレス線切替器5やデータ線切替器6である。
 データバス幅の切り替えは、CPU1に内蔵されたバスコントローラ(図示せず)で生成されたチップセレクト信号(CS)に基づいて行われる。例えば、CPU1は、CS=0のとき8ビットデータバス幅でROM4にアクセスし、CS=1のとき16ビットデータバス幅でROM4にアクセスする。
 アドレスバス2は、LSB(最下位ビット)をA0とし、MSB(最上位ビット)をAn(n=1、2・・・)とする。図1および図2では、一例としてA0~A9までのアドレスバス2が示されている。データバス3は、LSBをD0とし、MSBをDn(n=1、2・・・)とする。図1および図2では、一例としてD0からD15までのデータバス3が示されている。なお、図1および図2に記載されるアドレスバス幅およびデータバス幅は、説明の便宜上のものであり、これに限定されるものではない。
 次に、ROM4に関して説明する。ROM4は、電気的に書き換え可能なEEPROMの一種であり、駆動用電源の供給がなくても情報を保持する不揮発性メモリである。本実施の形態では、ROM4は、データバス幅が例えば16ビット(2バイト)のものとして説明する。
 ROM4には、例えば、起動プログラムに関するデータや、アプリケーションプログラムに関するデータなど様々なデータ等が記録されている。本実施の形態では、例えば、誤り訂正符号化処理がなされたデータ(以下「第1の情報」とする)や、誤り訂正符号化処理がなされていないデータ(以下「第2の情報」とする)がROM4に記録されているものとする。
 誤り訂正符号化処理前のデータは、例えば、CS=0でアクセスするときに扱うデータである。このデータは、復号器7にて誤り訂正を要すると考えられるデータであればよく、例えば、CPU1の起動プログラムに関するデータなどである。そして、このデータは、例えば、符号長15および情報ビット数11のハミング符号で符号化され、第1の情報としてROM4に記録される。第2の情報は、例えば、書き込み等を行うデータである。
 ハミング符号は、公知の通り、符号長n=2m-1(mは整数)、情報数k=n-mで構成される。情報数とは、元データのビット数であり、符号長とは、生成される符号のビット数である。例えば、m=4の場合、n=15、k=11となり、11ビットのビット列を15ビットの符号語に置き換えるハミング符号が形成される。
 ROM4のアドレス信号は、LSBをfA0とし、MSBをfAn(n=1、2・・・)とする。図1および図2では、一例としてfA0~fA8までのアドレス信号が示されている。ROM4のデータ信号は、LSBをfD0とし、MSBをfDn(n=1、2・・・)とする。図1および図2では、一例としてfD0~fD15までのデータ信号が示されている。
 図1および図2の例では、ROM4は、fA0~fA8のアドレス値に対応した16ビットの信号を出力する。ROM4からの出力は、復号器7およびデータ線切替器6に取り込まれる。
 次に、復号器7に関して説明する。復号器7は、上述した第1の情報の誤り訂正を実行し誤り訂正符号化処理前のデータを復号する。ROM4に記録されている第1の情報が、上述したハミング符号にて符号化された15ビットのデータである場合、復号器7は、ROM4のデータバスfD0~fD15からこの第1の情報を取り込み、11ビットの情報を復号し、さらに11ビット中の8ビットのデータをdD0~dD7から出力する。すなわち、復号器7は、ROM4に記録された第1の情報の誤り訂正を行い、訂正後の情報の中から冗長ビットを除いて誤り訂正符号化処理前の情報を復号する。復号器7から出力されたデータは、データ線切替器6を経由してデータバス3のD0~D7(8ビット)に取り込まれる。
 上述した符号長nと情報数kを用いて復号器7の動作を説明する。復号器7は、ROM4から出力された15ビットの信号「n」の中から11ビットの情報「k」を復号して、さらにこの11ビット中の8ビットをデータバス3に出力する。この8ビットのデータが誤り訂正後のデータとなる。
 次に、アドレス線切替器5に関して説明する。アドレス線切替器5の一端は、アドレスバスA0~An(n=1、2・・・)に接続され、他端は、ROM4に接続されている。アドレス線切替器5は、アドレスバス2とROM4との間に介在して、アドレスバスA0~Anと、ROM4のアドレスfA0~fAnとの対応を切り替えるものである。換言すれば、アドレス線切替器5は、CPU1が第1の情報をROM4から読み取り可能に、CPU1のアドレスバス2とROM4とを接続する第1の経路と、CPU1が第2の情報を書き込み等可能にアドレスバス2とROM4とを接続する第2の経路と、を切り替える。
 第1の経路は、例えば、図1に示されるように、アドレスバス2のA0~A8とROM4のアドレス信号fA0~fA8とを接続している経路である。第2の経路は、例えば、図2に示されるように、アドレスバス2のA1~A9とROM4のアドレス信号fA0~fA8とを接続している経路である。
 次に、データ線切替器6に関して説明する。データ線切替器6の一端は、復号器7の出力dD0~dDnとROM4の出力fD0~fDnに接続されている。また、データ線切替器6の他端は、データバス3に接続されている。データ線切替器6は、復号器7とデータバス3との間に介在し、復号器7の出力dD0~dDnと、ROM4からの出力fD0~fDnとを切り替えるものである。換言すれば、データ線切替器6は、復号器7にて誤り訂正された第1の情報をCPU1のデータバス3に伝達すべく復号器7とデータバス3とを接続する第3の経路と、CPU1に記録された第2の情報を書き込み等可能とすべくROM4とデータバス3とを接続する第4の経路と、を切り替える。
 第3の経路は、例えば、図1に示されるように、復号器7の出力dD0~dD7とデータバス3のD0~D7とを接続している経路である。第4の経路は、例えば、図2に示されるように、ROM4の出力fD0~fD15とデータバス3のD0~D15とを接続している経路である。
 以上のように、本実施の形態にかかるメモリ制御装置は、CPU1の動作時のアドレス値を判断して、アドレス線切替器5の動作とデータ線切替器6の動作とを決めるように構成されている。
 以下、アドレス線切替器5の動作とデータ線切替器6の動作を詳細に説明する。説明の流れとしては、まずROM4から第1の情報を読み出すときの動作を説明し、その次にROM4内のデータを書き込み等する場合の動作を説明する。なお、前者は、一例として、CPU1が8ビットデータバス幅で動作し、かつ、起動時のアドレス(起動アドレス)でROM4にアクセスしたときの動作である。後者は、一例として、CPU1が16ビットデータバス幅で動作し、かつ、書き込み等をする時のアドレスでROM4にアクセスしたときの動作である。
 まず、図1を用いてROM4から第1の情報を読み出す動作を説明する。なお、以下の説明では、一例として、CPU1を起動するときの場面に関して説明するものとし、第1の情報が、例えば、起動プログラムに関するデータであると仮定して説明をする。
 CPU1を起動するとき、CPU1は、8ビットデータバス幅で動作する。そして、CPU1は、デバイス(CPU1)固有の起動アドレスを出力して、ROM4へのアクセスを実行する。
 アドレス線切替器5およびデータ線切替器6は、アドレスバス2のアドレス信号をモニタしており、このアドレスに対応した切り替え動作を実行するように構成されている。具体的に説明すると、起動時のアドレス値でCPU1がアクセスした場合、アドレス線切替器5は、このアドレス値を検知して、アドレスバス2とROM4のアドレス線とを、以下のように対応付けて接続する。
 A0-fA0
 A1-fA1
 An-fAn(n=0、1、2・・・9)
 このことを具体的に説明する。起動時のアドレス(例えば4桁のアドレスXXXXの場合)のLSBが、XXX0からXXX1に変化し、またはXXX1からXXX0に変化したとき、すなわちアドレス値が1つインクリメントされる毎に、ROM4が1ワード(16ビット)進むようにする必要がある。そのためには、アドレス線切替器5が起動時のアドレス値を検知して、アドレスバスのLSB(A0)とROM4のLSB(fA0)とを接続するように構成すればよい。その結果、アドレスバス2のA0が変化する毎に、ROM4は1ワード進むことになる。
 他方、データ線切替器6は、CPU1が起動時のアドレス値でアクセスした場合、このアドレス値を検知して、データバス3と復号器7の出力とを、以下のように対応付けて接続する。
 D0-dD0
 D1-dD1
 Dn-dDn(n=0、1、2・・・7)
 このようにデータ線切替器6が動作することで、ROM4からは16ビットのデータ(fD0~fD15)が出力される。
 復号器7は、この16ビットの内、15ビット(fD0~fD14)を取り込み、11ビットの情報を復号し、この11ビット中の8ビットを、データバス3のD0~D7(8ビット)に出力する。なお、起動時のアドレスに対応したデータ(起動プログラムに関するデータ)は、上述したように、誤り訂正符号化処理がなされて、第1の情報としてROM4に記録されている。すなわち、8ビットのデータ(起動プログラムに関するデータ)が15ビットのデータ(第1の情報)としてROM4に記録されている。
 本実施の形態にかかるメモリ制御装置は、CPU1が8ビットデータバス幅で動作し、かつ、起動時のアドレスでROM4にアクセスしたときに、アドレス線切替器5およびデータ線切替器6の経路を図1に示すように切り替えることで、第1の情報を読み出し、かつ、誤り訂正をしたデータをデータバス3に伝送可能に構成されている。従って、ROM4において、データ値の誤りが発生した場合でも、CPU1を正常に起動させることが可能である。
 次に、図2を用いてROM4内のデータを書き込み等する場合の動作を説明する。なお、CPU1がROM4にアクセスする際に、起動時のアドレスと書き込み等する時のアドレスとが重ならないように設計されているものとする。
 ROM4の書き込み等をする時には、CPU1は、16ビットデータバス幅で動作する。そして、CPU1は、書き込み等する時のアドレス値を出力して、ROM4へのアクセスを実行する。
 CPU1が、書き込み等する時のアドレス値でアクセスした場合、アドレス線切替器5は、このアドレス値を検知して、アドレスバス2とROM4のアドレス線とを、以下のように対応付けて接続する。
 A1-fA0
 A2-fA1
 An-fA(n-1)(n=0、1、2・・・9)
 このことを具体的に説明する。書き込み等する時のアドレス(例えば4桁のアドレスXXXXの場合)の下から2桁目のビットが、XX0XからXX1Xに変化し、またはXX1XからXX0Xに変化したとき、すなわちアドレス値が2つインクリメントされる毎に、ROM4が1ワード(16ビット)進むようにする必要がある。そのためには、アドレス線切替器5が書き込み等する時のアドレス値を検知して、アドレスバスのA1とROM4のfA0とを接続するように構成すればよい。その結果、アドレスバス2のA1が変化する毎に、ROM4は1ワード進むことになる。
 他方、データ線切替器6は、CPU1が書き込み等する時のアドレス値でアクセスした場合、このアドレス値を検知して、データバス3とROM4の出力とを、以下のように対応付けて接続する。
 D0-fD0
 D1-fD1
 Dn-fDn(n=0、1、2・・・15)
 このようにデータ線切替器6が動作することで、ROM4のfD0~fD15とデータバス3のD0~D15とが接続される。このように、CPU1が16ビットデータバス幅で動作することによって、ROM4には、例えばCPU1で符号化された第1の情報を書き込むことも可能である。
 本実施の形態にかかるCPU1は、書き込み等する時のアドレスでは、通常のNOR型フラッシュROMと同様のアクセス方式でアクセスする。すなわち、CPU1は、アドレスバス2と図示しないバス制御信号とを操作して、データバス3経由でデバイス(ROM4)にアクセスするが、ROM4自体を1つのバス接続されたデバイスとしてアクセスすることができる。そのため、CPU1は、ROM4に用意された書き込み操作および消去操作を、データバス3経由で行うことが可能である。
 書き込み操作とは、データを書き込むために、CPU1がROM4に書き込みコマンドを書き込むと共に、ROM4からの書き込みの完了を読み取る動作を言う。また、消去操作とは、データを消去するために、CPU1がROM4に消去コマンドを書き込むと共に、ROM4からの消去完了を読み取る動作を言う。
 これらの操作は、CPU1が16ビットデータバス幅でROM4にアクセスすることによって実行可能である。そして、ROM4に16ビットデータバス幅でアクセスするためには、アドレス線切替器5およびデータ線切替器6が切り替え動作をする必要がある。本実施の形態にかかるアドレス線切替器5およびデータ線切替器6は、アドレスバス2のアドレス信号をモニタし、このアドレスに対応した動作を実行するように構成されているため、書き込み等する時のアドレスを検知したとき、図2に示されるような切り替え動作を実行することで、書き込み操作あるいは消去操作を実現している。
 なお、上記説明では、ROM4に書き込まれる起動データのハミング符号化を、CPU1で符号化計算することを前提として説明したが、これに限定されるものではない。例えば、専用のハードウェアをメモリ制御装置に組み込んでハミング符号化を実行するように構成してもよい。このように構成した場合、ソフトウェアを簡略化することが可能である。
 また、データのハミング符号化を、メモリ制御装置以外の情報処理システムで実施し、この符号化されたデータをROM4に書き込む態様であってもよい。このようにすれば、CPU1の負荷を軽減することが可能である。
 また、誤り訂正符号の方法としてハミング符号を使用する例について説明したが、ハミング符号に限定されるものではなく、ハミング符号以外の誤り訂正符号も採用可能である。
 また、誤り訂正符号化処理前のデータは、起動プログラムに関するデータに限定されるものではなく、復号器7にて誤り訂正を要すると考えられるデータであればどのようなデータであってもよい。
 また、上記説明では、一例として、第1の情報を読み出すときCPU1は8ビットデータバス幅でアクセスし、第2の情報を書き込み等するときCPU1は16ビットデータバス幅でアクセスするとして説明したが、データバス幅はこれに限定されるものではない。
 また、上記説明では、第1の情報を復号器7にて誤り訂正したデータをデータバス3に伝送する態様を説明した。ここで、ハミング符号を用いた場合、公知の通り、1ビットの誤り訂正が可能である。従って、2ビット以上の誤りが発生した場合には、誤り訂正が不可能になりうる。このような問題を解決するため、本実施の形態にかかるメモリ制御装置を以下のように構成してもよい。
 例えば、復号器7の内部に所定のレジスタを用意し、復号器7が誤り訂正を実施したときに、誤り発生情報がこのレジスタに保存され、CPU1は、この誤り発生情報をレジスタ経由で検知する。さらにCPU1は、ROM4の誤りが発生した記録領域を特定すると共に、この記録領域のデータを読取り、このデータをハミング符号化した後に、該当箇所(誤りが発生した記録領域)に書き込みを実施する。このように、復号器7は、復号時の誤り検知結果を復号器内部情報として保持するように構成されている。
 上記操作により、例えばROM4に1ビットの誤りが発生した場合でも、データは誤り訂正可能な状態でROM4に書込まれる。すなわち、本実施の形態にかかるメモリ制御装置によれば、ビット誤りが多数発生する前に誤り訂正可能な状態に戻すことによって、誤り訂正不可能なエラーの発生を抑制可能である。
 以上に説明したように、本実施の形態にかかるメモリ制御装置は、CPU1と、誤り訂正符号化処理がなされた第1の情報と誤り訂正符号化処理がなされていない第2の情報と記録するROM4(メモリ)と、CPU1から出力されたアドレスを検知して、ROM4に記録された第1の情報をCPU1が読み取り可能とすべくアドレスバス2とROM4とを接続する第1の経路と、ROM4に記録された第2の情報を消去、書き込み、および読み取り可能にすべくアドレスバス2とROM4とを接続する第2の経路と、を切り替えるアドレス線切替器5(第1の切替器)と、ROM4に記録された第1の情報の誤り訂正を行い、訂正後の情報の中から冗長ビットを除いて誤り訂正符号化処理前の情報を復号する復号器7と、CPU1から出力されたアドレスを検知して、復号器7にて復号された情報をCPU1のデータバス3に伝達すべく復号器7とデータバス3とを接続する第3の経路と、ROM4に記録された第2の情報を消去、書き込み、および読み取り可能にすべくROM4とデータバス3とを接続する第4の経路と、を切り替えるデータ線切替器6(第2の切替器)と、を備えるようにしたので、第1の情報を読み出すことを示す第1のアドレス(例えば、起動アドレス)がCPU1から出力されたとき、アドレス線切替器5は第1の経路にてアドレスバス2とROM4とを接続し、データ線切替器6は第3の経路にて復号器7とデータバス3とを接続することで、誤り訂正がなされたデータを読み出すことが可能である。さらに、第2の情報の書き込み等をすることを示す第2のアドレスがCPU1から出力されたとき、アドレス線切替器5は、第2の経路にてアドレスバス2とROM4とを接続し、データ線切替器6は、第4の経路にて復号器7とデータバス3とを接続することで、ROM4内のデータの消去操作および書き込み操作を行うことが可能である。
 従来のメモリ制御装置においては、電源がオンされたとき、CPUがROMに記憶された起動プログラムを読み出す。さらに、起動プログラムに基づいて、データの書き込み等が可能な記憶装置(例えばハードディスクやフラッシュROM)からOSローダを読み出して実行する。このように、従来のメモリ制御装置は、起動データを保存するためのROMと、データの書き込み等が可能な記憶装置と、を併用する態様である。本実施の形態にかかるメモリ制御装置は、アドレス線切替器5およびデータ線切替器6を備えているので、ROM4のみを用いて、CPU1を安定的に起動することができると共に、ROM4に記録されたデータの書き込み操作等が可能である。
 なお、本実施の形態にかかるメモリ制御装置は、CPU1によって各種の制御を行うメモリ制御装置に適用可能であるが、例えば、鉄道車両に適用した場合には以下のような効果を奏する。
 図3は、本発明の実施の形態にかかるメモリ制御装置を列車搭載機器に組み込んだ場合の効果を説明するための図である。図3に示される列車の編成は、複数台の車両からなり、一例として両先頭車両10aおよび10b、先頭車両以外の車両11aおよび車両11bで構成されている。
 近年の鉄道車両には、乗務員の負荷低減や乗客に対するサービス向上を目的として、サービス機器などの動作状態の制御および監視を行う列車情報管理装置が搭載されている。車両10aおよび10bには、一例として電機品20、電機品21、および電機品22が搭載され、電機品20は、例えば、列車情報管理装置を構成する中央局であり、電機品22は、例えば、列車情報管理装置を構成する端末装置である。電機品21は、例えば、運転台などに設置されたモニタ表示器などである。これらの電機品は、車両情報を相互に伝送可能に、車両内伝送路で接続されている。
 車両11aおよび車両11bには、一例として電機品30および電機品31が搭載されている。電機品30は、例えば上述した端末装置であり、電機品31は、端末装置に接続された車両内機器(例えば、エアコン、SIV、VVVFなど)である。電機品30と電機品31は、車両内伝送路で接続されている。そして、電機品20と電機品30は、車両間伝送路で相互に接続されている。
 ここで、これらの電機品において、フラッシュROMのビットエラーに起因する故障が発生した場合、CPUの誤動作を引き起こし、列車の運用に大きな影響を与える可能性がある。例えば、SIVなどの一部の車両内機器の故障が発生した場合には、乗務員が列車情報管理装置を利用して故障原因の調査を行い現象の把握と応急処置を行うことは可能である。ただし、列車情報管理装置自体が故障した場合には故障原因を把握すること自体が困難となるため、列車の運用に大きな影響を与える可能性がある。
 そこで、本実施の形態にかかるメモリ制御装置を、図3に示される各電機品に組み込むようにすれば、ROMのビットエラーに起因するCPUの誤動作を回避できるため、列車運用への影響を大幅に軽減することが可能である。
 さらに、本実施の形態にかかるメモリ制御装置は、例えば、一般的に市販されているCPU(あるいはIC)のサポートしているバス制御の仕組みを変更することなく、フラッシュROMを用いてCPUを安定的に起動させ、かつ、データの書き込み等を行うことが可能である。
 なお、本実施の形態にかかるメモリ制御装置は、本発明の内容の一例を示すものであり、更なる別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、一部を省略する等、変更して構成することも可能であることは無論である。
 以上のように、本発明は、CPUによって各種の制御を行うメモリ制御装置に適用可能であり、特に、フラッシュROMを用いてCPUを安定的に起動させ、かつ、データの書き込み等を行うことができる発明として有用である。
 1 CPU
 2 アドレスバス
 3 データバス
 4 フラッシュROM(メモリ)
 5 アドレス線切替器(第1の切替器)
 6 データ線切替器(第2の切替器)
 7 復号器
 10a、10b、11a、11b 鉄道車両
 20、21、22、30、31 電機品

Claims (7)

  1.  CPUと、
     誤り訂正符号化処理がなされた第1の情報と誤り訂正符号化処理がなされていない第2の情報とを記録し、電気的に書き換え可能な不揮発性のメモリと、
     前記CPUから出力されたアドレスを検知して、前記メモリに記録された第1の情報をCPUが読み取り可能とすべくアドレスバスと前記メモリとを接続する第1の経路と、前記メモリに記録された前記第2の情報を消去、書き込み、および読み取り可能にすべく前記アドレスバスと前記メモリとを接続する第2の経路と、を切り替える第1の切替器と、
     前記メモリに記録された前記第1の情報の誤り訂正を行い、訂正後の情報の中から冗長ビットを除いて誤り訂正符号化処理前の情報を復号する復号器と、
     前記CPUから出力されたアドレスを検知して、前記復号器にて復号された情報を前記CPUのデータバスに伝達すべく前記復号器と前記データバスとを接続する第3の経路と、前記メモリに記録された前記第2の情報を消去、書き込み、および読み取り可能にすべく前記メモリと前記データバスとを接続する第4の経路と、を切り替える第2の切替器と、
     を備えたことを特徴とするメモリ制御装置。
  2.  前記CPUから出力されたアドレスが、前記第1の情報を読み出すことを示す第1のアドレスであるとき、
     前記第1の切替器は、前記第1のアドレスを検知して、前記第1の経路にて前記アドレスバスと前記メモリとを接続し、
     前記第2の切替器は、前記第1のアドレスを検知して、前記第3の経路にて前記復号器と前記データバスとを接続し、
     前記CPUから出力されたアドレスが、前記第2の情報を消去、書き込み、および読み取ることを示す第2のアドレスであるとき、
     前記第1の切替器は、前記第2のアドレスを検知して、前記第2の経路にて前記アドレスバスと前記メモリとを接続し、
     前記第2の切替器は、前記第2のアドレスを検知して、前記第4の経路にて前記復号器と前記データバスとを接続することを特徴とする請求項1に記載のメモリ制御装置。
  3.  前記CPUは、誤り訂正が必要な情報を、ソフトウェア処理にて誤り訂正符号化し、
     前記メモリには、この誤り訂正符号化処理がなされた情報が前記第1の情報として記録されていることを特徴とする請求項1に記載のメモリ制御装置。
  4.  前記復号器は、誤り訂正を実施したときに誤り発生情報を保持し、
     前記CPUは、誤り発生情報に基づいて、前記メモリ上の誤りが発生した記録領域を特定すると共に、この記録領域から読み出された情報の誤り訂正符号化処理を実行し、誤り訂正符号化処理がなされた情報を前記記録領域に上書きすることを特徴とする請求項1に記載のメモリ制御装置。
  5.  前記第1の情報は、前記CPUの起動プログラムデータであることを特徴とする請求項1に記載のメモリ制御装置。
  6.  誤り訂正符号化処理がなされた第1の情報と誤り訂正符号化処理がなされていない第2の情報とを記録し、電気的に書き換え可能な不揮発性のメモリの制御方法であって、
     CPUから出力されたアドレスが、前記第1の情報を読み出すことを示す第1のアドレスであるとき、
     前記メモリに記録された前記第1の情報をCPUが読み取り可能とすべくアドレスバスと前記メモリとを接続する第1の経路と、前記メモリに記録された前記第2の情報を消去、書き込み、および読み取り可能にすべく前記アドレスバスと前記メモリとを接続する第2の経路と、を切り替える第1の切替器は、前記第1のアドレスを検知して前記第1の経路にて前記アドレスバスと前記メモリとを接続するステップと、
     前記メモリに記録された前記第1の情報の誤り訂正を行い、訂正後の情報の中から冗長ビットを除いて誤り訂正符号化処理前の情報を復号する復号器にて復号された情報を、前記CPUのデータバスに伝達すべく前記復号器と前記データバスとを接続する第3の経路と、前記メモリに記録された前記第2の情報を消去、書き込み、および読み取り可能にすべく前記メモリと前記データバスとを接続する第4の経路と、を切り替える第2の切替器は、前記第1のアドレスを検知して前記第3の経路にて復号器とデータバスとを接続するステップと、
     を特徴とするメモリ制御方法。
  7.  前記CPUから出力されたアドレスが、前記第2の情報を消去、書き込み、および読み取ることを示す第2のアドレスであるとき、
     前記第1の切替器は、前記第2のアドレスを検知して、前記第2の経路にて前記アドレスバスと前記メモリとを接続するステップと、
     前記第2の切替器は、前記第2のアドレスを検知して、前記第4の経路にて前記復号器と前記データバスとを接続するステップとを有することを特徴とする請求項6に記載のメモリ制御方法。
PCT/JP2010/065255 2010-09-06 2010-09-06 メモリ制御装置およびメモリ制御方法 WO2012032595A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
EP10856945.0A EP2615556B1 (en) 2010-09-06 2010-09-06 Memory control device and memory control method
CN201080068952.7A CN103069399B (zh) 2010-09-06 2010-09-06 存储器控制装置及存储器控制方法
PCT/JP2010/065255 WO2012032595A1 (ja) 2010-09-06 2010-09-06 メモリ制御装置およびメモリ制御方法
JP2011532382A JP4841709B1 (ja) 2010-09-06 2010-09-06 メモリ制御装置およびメモリ制御方法
US13/820,681 US9135107B2 (en) 2010-09-06 2010-09-06 Memory control device and memory control method
SG2013016340A SG188410A1 (en) 2010-09-06 2010-09-06 Memory control device and memory control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/065255 WO2012032595A1 (ja) 2010-09-06 2010-09-06 メモリ制御装置およびメモリ制御方法

Publications (1)

Publication Number Publication Date
WO2012032595A1 true WO2012032595A1 (ja) 2012-03-15

Family

ID=45475238

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/065255 WO2012032595A1 (ja) 2010-09-06 2010-09-06 メモリ制御装置およびメモリ制御方法

Country Status (6)

Country Link
US (1) US9135107B2 (ja)
EP (1) EP2615556B1 (ja)
JP (1) JP4841709B1 (ja)
CN (1) CN103069399B (ja)
SG (1) SG188410A1 (ja)
WO (1) WO2012032595A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102466239B1 (ko) * 2016-04-05 2022-11-14 에스케이하이닉스 주식회사 메모리 컨트롤러를 포함하는 메모리 시스템 및 그의 동작 방법
KR20190029316A (ko) * 2017-09-12 2019-03-20 에스케이하이닉스 주식회사 마이크로 컨트롤러, 이를 포함하는 메모리 시스템 및 이의 동작방법
CN109726057B (zh) * 2018-11-19 2022-07-22 浙江众合科技股份有限公司 一种cpu安全系统并行总线故障实时动态检测方法
CN111736878B (zh) * 2020-08-10 2020-12-08 广州汽车集团股份有限公司 一种对cpu连接ddr芯片的数据线异常进行定位的方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009125470A1 (ja) * 2008-04-07 2009-10-15 三菱電機株式会社 列車用通信中継装置、および列車用通信中継方法
JP2010152703A (ja) * 2008-12-25 2010-07-08 Sony Corp 不揮発性記憶装置、情報記録システム、及び情報記録方法
JP2010262640A (ja) * 2009-04-30 2010-11-18 Internatl Business Mach Corp <Ibm> 不揮発性メモリの適応型エンデュランス・コーディング方法及びシステム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10111839A (ja) * 1996-10-04 1998-04-28 Fujitsu Ltd 記憶回路モジュール
EP1122645A1 (en) * 1998-09-14 2001-08-08 Fujitsu Limited Method of diagnosing a memory failure and recovering data, and a memory device using this method
TWI254848B (en) * 2004-11-16 2006-05-11 Via Tech Inc Method and related apparatus for performing error checking-correcting
JP4235624B2 (ja) * 2005-05-27 2009-03-11 Tdk株式会社 メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP2010146226A (ja) * 2008-12-18 2010-07-01 Oki Data Corp 情報処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009125470A1 (ja) * 2008-04-07 2009-10-15 三菱電機株式会社 列車用通信中継装置、および列車用通信中継方法
JP2010152703A (ja) * 2008-12-25 2010-07-08 Sony Corp 不揮発性記憶装置、情報記録システム、及び情報記録方法
JP2010262640A (ja) * 2009-04-30 2010-11-18 Internatl Business Mach Corp <Ibm> 不揮発性メモリの適応型エンデュランス・コーディング方法及びシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2615556A4 *

Also Published As

Publication number Publication date
US9135107B2 (en) 2015-09-15
EP2615556B1 (en) 2015-07-29
SG188410A1 (en) 2013-04-30
EP2615556A4 (en) 2014-05-21
JPWO2012032595A1 (ja) 2013-12-12
CN103069399A (zh) 2013-04-24
CN103069399B (zh) 2015-07-29
EP2615556A1 (en) 2013-07-17
JP4841709B1 (ja) 2011-12-21
US20130173992A1 (en) 2013-07-04

Similar Documents

Publication Publication Date Title
EP1548602B1 (en) Non-volatile storage device control method
US9377960B2 (en) System and method of using stripes for recovering data in a flash storage system
US5581690A (en) Method and apparatus for preventing the use of corrupt data in a multiple disk raid organized storage system
US7613982B2 (en) Data processing apparatus and method for flash memory
US9191030B2 (en) Memory controller, data storage device, and memory controlling method
US20080270427A1 (en) Method and Apparatus for Configuring a Control Device, and Corresponding Control Device
US7725805B2 (en) Method and information apparatus for improving data reliability
CN107918571B (zh) 测试储存单元的方法以及使用该方法的装置
JP4841709B1 (ja) メモリ制御装置およびメモリ制御方法
CN111090545A (zh) 一种恢复故障cpld的方法、设备及介质
EP3029570B1 (en) Bad track repairing method and apparatus
US10514980B2 (en) Encoding method and memory storage apparatus using the same
JP2002007225A (ja) アドレスパリティエラー処理方法並びに情報処理装置および記憶装置
US7688640B2 (en) Flash memory device and method for driving the same
JP2009064238A (ja) メモリシステム
CN101681278A (zh) 用于防止存储介质中错误的系统和方法
JP2006513471A (ja) メモリアクセスエラーの検出及び/又は訂正方法、並びにこの方法を実行するための電子回路構成
US8522075B2 (en) Storage system having storage devices for storing data and control devices for controlling the storage devices
US11010245B2 (en) Memory storage apparatus with dynamic data repair mechanism and method of dynamic data repair thereof
US8151176B2 (en) CPU instruction RAM parity error procedure
US5077744A (en) Method for error protection in telephone switching installations
CN112306733B (zh) 存储器装置、存储器控制器及其数据存取方法
US20230386598A1 (en) Methods for real-time repairing of memory failures caused during operations, memory systems performing repairing methods, and data processing systems including repairing memory systems
JP3358701B2 (ja) ベリファイ方法およびベリファイ装置
US20090222702A1 (en) Method for Operating a Memory Device

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080068952.7

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2011532382

Country of ref document: JP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10856945

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13820681

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2010856945

Country of ref document: EP