JP2013156821A - Data processor, control unit and memory control method - Google Patents

Data processor, control unit and memory control method Download PDF

Info

Publication number
JP2013156821A
JP2013156821A JP2012016501A JP2012016501A JP2013156821A JP 2013156821 A JP2013156821 A JP 2013156821A JP 2012016501 A JP2012016501 A JP 2012016501A JP 2012016501 A JP2012016501 A JP 2012016501A JP 2013156821 A JP2013156821 A JP 2013156821A
Authority
JP
Japan
Prior art keywords
address
memory
read
state
signal
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.)
Pending
Application number
JP2012016501A
Other languages
Japanese (ja)
Inventor
Kazuhiko Sako
和彦 迫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2012016501A priority Critical patent/JP2013156821A/en
Publication of JP2013156821A publication Critical patent/JP2013156821A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

PROBLEM TO BE SOLVED: To avoid unintended overwriting of data even when an address error occurs.SOLUTION: A control unit 10 receives a read request or a write request to a desired address from a CPU 10. When the control unit 10 receives an address error signal of a value showing an access to an address different from the desired address during execution of reading processing for a memory 30, the control unit 10 inhibits writing processing for the memory 30. The control unit 10 holds a response to the CPU 10 and re-executes the reading processing for the memory 30 during the holding period.

Description

本発明は、データ処理装置、制御ユニット、メモリ制御方法に関し、特にメモリ読み出し時のアドレスエラーに対応するデータ処理装置、制御ユニット、メモリ制御方法に関する。   The present invention relates to a data processing device, a control unit, and a memory control method, and more particularly, to a data processing device, a control unit, and a memory control method corresponding to an address error at the time of memory reading.

近年、マイクロコンピュータ(またはマイクロコントローラ、以下、マイコンとも記載する。)内の各種処理に関する安全性の確保の要求が高まっている。すなわち、マイコン内で生じた各種のエラーを適切に検出し、検出したエラーに適切に対応することが求められている。   In recent years, there has been an increasing demand for ensuring safety with respect to various processes in a microcomputer (or a microcontroller, hereinafter also referred to as a microcomputer). That is, it is required to appropriately detect various errors generated in the microcomputer and appropriately respond to the detected errors.

マイコン内のメモリで記憶可能なデータ量は、近年増大している。これにより、当該メモリに関するエラー発生率が高くなる傾向にある。そのため、メモリのエラー検出率の向上、及び検出したエラーに対する適切な処理が、当該メモリを含むシステムの耐故障性を高めるために重要となる。特に、メモリに関するエラーのうち、メモリアドレスに関する障害は、システムに致命的な障害をもたらす。そのため、メモリアドレスに関するエラーの検出、及び検出したエラーに対する適切な処理が、システム全体のアベイラビリティの向上に必要不可欠である。   The amount of data that can be stored in the memory in the microcomputer has increased in recent years. This tends to increase the error occurrence rate related to the memory. Therefore, improvement of the error detection rate of the memory and appropriate processing for the detected error are important for improving the fault tolerance of the system including the memory. In particular, a memory address failure among memory errors causes a fatal failure in the system. For this reason, detection of an error relating to a memory address and appropriate processing for the detected error are indispensable for improving the availability of the entire system.

以下、上述のメモリアドレスに関する障害検出に関連する技術について説明する。特許文献1には、メモリアドレスエラーを検出可能な記憶制御装置が開示されている。当該記憶制御装置では、データに対するチェックビットを生成している。一般に、チェックビットには、nビットの誤り訂正を行う際に使用されないビットが含まれている。そこで、当該記憶制御装置では、チェックビットに対し、メモリアクセス時のアドレスから生成したパリティビット(アドレスパリティ)を挿入する。そして、メモリへの書き込み時にデータ、及びチェックビットを書き込んでいる。当該記憶制御装置では、メモリから読み出したデータ、チェックビット、及びアドレスパリティを用いてデータ誤りの検出に加えて、メモリアドレスエラーを検出している。   Hereinafter, techniques related to the above-described failure detection related to memory addresses will be described. Patent Document 1 discloses a storage control device capable of detecting a memory address error. The storage control device generates check bits for data. In general, check bits include bits that are not used when n-bit error correction is performed. Therefore, in the storage control device, a parity bit (address parity) generated from the address at the time of memory access is inserted into the check bit. Data and check bits are written when writing to the memory. The storage control device detects a memory address error in addition to detecting a data error using data read from the memory, check bits, and address parity.

特許文献2には、CPUからの指示に従ってバッテリバックアップされたRAMチップを選択する選択回路が開示されている。当該選択回路は、電源状態を監視して、選択するRAMチップを制御している。   Patent Document 2 discloses a selection circuit that selects a battery-backed RAM chip in accordance with an instruction from a CPU. The selection circuit monitors the power supply state and controls the RAM chip to be selected.

特開昭57−71599号公報JP-A-57-71599 特開平2−101695号公報Japanese Patent Laid-Open No. 2-101695

特許文献1に記載の記憶制御装置では、メモリ読み出し時のアドレスエラーを検出することができる。しかしながら、特許文献1に記載の記憶制御装置では、アドレスエラーが生じた読み出し処理に後続するデータ書き込み処理を抑止することができない。このため、アドレスエラーにより読み出すことが出来なかったデータが後続するデータ書き込み処理により上書きされてしまうことがある。これにより、回復不可能な障害が発生する可能性がある。ここで、アドレスエラーを検出した時点でプロセッサが処理を終了したとしても、プロセッサは、書き込み処理の発行が終了していることが一般的である。そのため、上述の上書き処理を回避することが出来ない。   The storage control device described in Patent Document 1 can detect an address error at the time of memory reading. However, the storage control device described in Patent Document 1 cannot suppress the data writing process that follows the read process in which an address error has occurred. For this reason, data that could not be read due to an address error may be overwritten by subsequent data write processing. As a result, an unrecoverable failure may occur. Here, even if the processor ends the process when an address error is detected, it is common that the processor has finished issuing the write process. For this reason, the above-described overwriting process cannot be avoided.

図22を参照して、特許文献1に記載の記憶制御装置をはじめとする他の装置では、問題が生じるケースについて詳細に説明する。はじめに、プロセッサは、メモリ内のアドレスAのデータの読み出しを行うために、メモリアクセス信号を送出する。ここで、メモリアクセス命令内のアドレス情報がα線等の影響によりアドレスXに書き換わることがあり得る(メモリアドレスエラー)。これにより、プロセッサは、誤ってアドレスXに格納されているデータDを読み出す(図22(1))。なお、当該メモリアドレスエラーは、読み出し処理時におけるビット反転等の一時的なものとする。   With reference to FIG. 22, a case where a problem occurs in other devices including the storage control device described in Patent Document 1 will be described in detail. First, the processor sends a memory access signal in order to read data at address A in the memory. Here, the address information in the memory access instruction may be rewritten to the address X due to the influence of α rays or the like (memory address error). As a result, the processor erroneously reads the data D stored at the address X (FIG. 22 (1)). Note that the memory address error is temporary such as bit inversion at the time of read processing.

アドレスAに対するメモリ読み出し処理のアドレスエラーは、特許文献1に記載の技術や他の類似技術を用いることにより検出される(図22(2)、アドレスエラー検出)。アドレスエラーは、検出後にCPUに対して通知される(図22(3))。   An address error in the memory read process for the address A is detected by using the technique described in Patent Document 1 or another similar technique (FIG. 22 (2), address error detection). The address error is notified to the CPU after detection (FIG. 22 (3)).

しかし、CPUは、アドレスAに対するメモリ読み出し処理に続いて、アドレスAに対するメモリ書き込み処理を実行する(図22(4))。前述したように、CPUへのアドレスエラーの通知は、一般的にメモリ書き込み処理の開始の後となる。図22では、アドレスエラーの検出時には、CPUからのデータ書き込み処理が開始している。そのため、アドレスAには、データ書き込み処理によりデータCが書き込まれる。そのため、タイミングT1において読み出すべきデータ(データB)を復元することができなくなる。   However, the CPU executes a memory write process for address A following the memory read process for address A (FIG. 22 (4)). As described above, the notification of the address error to the CPU is generally after the start of the memory writing process. In FIG. 22, when an address error is detected, data write processing from the CPU is started. Therefore, data C is written to address A by data write processing. Therefore, the data (data B) to be read out at the timing T1 cannot be restored.

なお、特許文献2に記載の選択回路は、上述したようなメモリアドレスに関するエラーを検出することができない。すなわち、特許文献2に記載の選択回路は、アドレス伝送路及びRAM内のアドレス線においてα線等の影響によるエラーに対応することが出来ない。   Note that the selection circuit described in Patent Document 2 cannot detect an error related to a memory address as described above. That is, the selection circuit described in Patent Document 2 cannot cope with errors due to the influence of α rays or the like in the address transmission path and the address lines in the RAM.

すなわち、上述した技術では、所望のアドレスとは異なるアドレスにアクセスするアドレスエラーがメモリ読み出し時に生じた場合に、後続するメモリ書き込みによって所望のアドレスに対して書き込みが生じてしまう。これにより、所望のアドレスに書き込み前に格納されていたデータを読み出すことが出来ないという問題が生じる。   That is, in the above-described technique, when an address error that accesses an address different from a desired address occurs during memory reading, writing to the desired address occurs by subsequent memory writing. As a result, there arises a problem that data stored before writing to a desired address cannot be read.

本発明の第1の態様は、データ処理装置を含む。当該データ処理装置は、メモリと、プロセッサから所望のアドレスへのリードリクエストまたはライトリクエストを受信し、前記メモリへのアクセスを制御する制御ユニットと、を備え、前記制御ユニットは、前記メモリに対する読み出し処理の実行中に前記所望のアドレスと異なるアドレスへのアクセスを示す値のアドレス誤り信号を受信した場合、メモリ書き込み処理を禁止し、前記プロセッサへの応答を保留し、該保留期間に前記読み出し処理の再実行処理を行う、ものである。   A first aspect of the present invention includes a data processing device. The data processing apparatus includes a memory and a control unit that receives a read request or a write request to a desired address from a processor and controls access to the memory, and the control unit performs a read process for the memory. When an address error signal having a value indicating an access to an address different from the desired address is received during execution of memory, a memory write process is prohibited, a response to the processor is suspended, and the read process is suspended during the suspension period. Re-execute processing.

本発明の第2の態様は、制御ユニットを含む。当該制御ユニットは、プロセッサから所望のアドレスへのリードリクエストまたはライトリクエストを受信し、メモリへのアクセスを制御する制御ユニットであって、前記メモリに対する読み出し処理の実行中に前記所望のアドレスと異なるアドレスへのアクセスを示す値のアドレス誤り信号を受信した場合、メモリ書き込み処理を禁止し、前記プロセッサへの応答を保留し、該保留期間に前記読み出し処理の再実行処理を行う、ものである。   The second aspect of the present invention includes a control unit. The control unit receives a read request or a write request to a desired address from a processor, and controls access to the memory. The control unit is different from the desired address during execution of a read process for the memory. When an address error signal having a value indicating access to the memory is received, the memory writing process is prohibited, the response to the processor is suspended, and the read process is reexecuted during the suspension period.

本発明の第3の態様は、データ処理装置を含む。当該データ処理装置は、プロセッサと、メモリと、前記プロセッサから所望のアドレスへのリードリクエストまたはライトリクエストを受信し、前記メモリへのアクセスを制御する制御ユニットと、を備え、前記制御ユニットは、前記メモリに対する読み出し処理の実行中に前記所望のアドレスと異なるアドレスへのアクセスを示す値のアドレス誤り信号を受信した場合、メモリ書き込み処理を禁止し、前記プロセッサへの応答を保留し、該保留期間に前記読み出し処理の再実行処理を行う、ものである。   A third aspect of the present invention includes a data processing device. The data processing apparatus includes a processor, a memory, and a control unit that receives a read request or a write request to a desired address from the processor and controls access to the memory. When an address error signal having a value indicating an access to an address different from the desired address is received during execution of a read process for the memory, the memory write process is prohibited, a response to the processor is suspended, The re-execution process of the read process is performed.

本発明の第4の態様は、メモリ制御方法を含む。当該メモリ制御方法は、プロセッサからメモリへのアクセスを制御するメモリアクセス制御方法であって、前記メモリからのデータ読み出し処理の実行中に所望のアドレスと異なるアドレスへのアクセスを検出した場合、後続するメモリ書き込み処理を禁止し、前記プロセッサの後続リクエストの進行を中断する保留期間に移行し、該保留期間に前記読み出し処理の再実行処理を行う、ものである。   A fourth aspect of the present invention includes a memory control method. The memory control method is a memory access control method for controlling access from a processor to a memory, and when an access to an address different from a desired address is detected during execution of data read processing from the memory, the memory control method follows. The memory write process is prohibited, the process shifts to a hold period in which the progress of subsequent requests of the processor is interrupted, and the read process is re-executed in the hold period.

本発明では、メモリの読み出し時のアドレスエラー検出時に、メモリ内での書き込み処理を禁止し、メモリ読み出しの再実行を行う。これにより、メモリへの再読み出し処理が行われる前にデータが上書きされることを回避することができる。また、メモリへの再読み出しを行う際にプロセッサへの応答を保留するため、プロセッサが後続の処理を進めることを回避することができる。   In the present invention, when an address error is detected at the time of reading the memory, the writing process in the memory is prohibited and the memory reading is re-executed. Thereby, it is possible to avoid that data is overwritten before the rereading process to the memory is performed. Further, since the response to the processor is suspended when performing re-reading to the memory, it is possible to prevent the processor from proceeding with subsequent processing.

本発明では、アドレスエラー発生時であってもデータの意図しない上書きを回避することができるデータ処理装置、制御ユニット、メモリ制御方法を提供することができる。   According to the present invention, it is possible to provide a data processing device, a control unit, and a memory control method that can avoid unintentional overwriting of data even when an address error occurs.

本発明の実施の形態1にかかるデータ処理装置の全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the data processor concerning Embodiment 1 of this invention. 本発明の実施の形態1にかかるデータ処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the data processor concerning Embodiment 1 of this invention. 本発明の実施の形態1にかかるメモリ30の内部構成を示す概念図である。1 is a conceptual diagram showing an internal configuration of a memory 30 according to a first embodiment of the present invention. 本発明の実施の形態1にかかる制御ユニット10の構成を示すブロック図である。It is a block diagram which shows the structure of the control unit 10 concerning Embodiment 1 of this invention. 本発明の実施の形態1にかかる再処理実行部110の構成を示すブロック図である。It is a block diagram which shows the structure of the reprocessing execution part 110 concerning Embodiment 1 of this invention. 本発明の実施の形態1にかかるステートの遷移を示すステートマシン図である。It is a state machine figure which shows the transition of the state concerning Embodiment 1 of this invention. 本発明の実施の形態1にかかる各処理部の出力信号の遷移条件を示す図である。It is a figure which shows the transition conditions of the output signal of each process part concerning Embodiment 1 of this invention. 本発明の実施の形態1にかかるエラー記録レジスタ1110の構成を示す図である。It is a figure which shows the structure of the error recording register 1110 concerning Embodiment 1 of this invention. 本発明の実施の形態1にかかるデータ処理装置の動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of the data processor concerning Embodiment 1 of this invention. 本発明の実施の形態1にかかるデータ処理装置の動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of the data processor concerning Embodiment 1 of this invention. 本発明の実施の形態1にかかるデータ処理装置の動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of the data processor concerning Embodiment 1 of this invention. 本発明の実施の形態2にかかるデータ処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the data processor concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるメモリ30の内部構成を示す概念図である。It is a conceptual diagram which shows the internal structure of the memory 30 concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかる再処理実行部110の構成を示すブロック図である。It is a block diagram which shows the structure of the reprocessing execution part 110 concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるステートの遷移を示すステートマシン図である。It is a state machine figure which shows the transition of the state concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるステートの遷移を示すステートマシン図である。It is a state machine figure which shows the transition of the state concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかる各処理部の出力信号の遷移条件を示す図である。It is a figure which shows the transition conditions of the output signal of each process part concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるデータ処理装置の動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of the data processor concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるデータ処理装置の動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of the data processor concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるデータ処理装置の動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of the data processor concerning Embodiment 2 of this invention. 本発明の実施の形態1にかかるデータ処理装置の動作と、本発明の実施の形態2にかかるデータ処理装置の動作と、を示す概念図である。It is a conceptual diagram which shows operation | movement of the data processing apparatus concerning Embodiment 1 of this invention, and operation | movement of the data processing apparatus concerning Embodiment 2 of this invention. 一般的なデータ処理装置の動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of a general data processor.

<実施の形態1>
以下、図面を参照して本発明の実施の形態1について説明する。図1は、本実施の形態にかかるデータ処理装置の構成を示すブロック図である。当該データ処理装置は、例えばマイクロコンピュータ内に搭載される。
<Embodiment 1>
Embodiment 1 of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing the configuration of the data processing apparatus according to this embodiment. The data processing apparatus is mounted in, for example, a microcomputer.

当該データ処理装置は、制御ユニット10と、CPU(Central Processing Unit)20と、メモリ30と、パリティ生成部40と、ECC(誤り訂正符号)生成部50と、フリップフロップ(FF)60と、ECCデコーダ70と、を備える。   The data processing apparatus includes a control unit 10, a CPU (Central Processing Unit) 20, a memory 30, a parity generation unit 40, an ECC (Error Correction Code) generation unit 50, a flip-flop (FF) 60, an ECC. And a decoder 70.

制御ユニット10は、CPU20からメモリ30へのデータ書き込み、CPU20からメモリ30のデータ読み出しを制御する処理部である。制御ユニット10の詳細な構成及び動作は、図2、図4等を参照して後述する。   The control unit 10 is a processing unit that controls data writing from the CPU 20 to the memory 30 and data reading from the CPU 20 to the memory 30. The detailed configuration and operation of the control unit 10 will be described later with reference to FIGS.

CPU20は、各種プログラム等を実行する中央演算装置である。CPU20は、制御ユニット10を介して、メモリ30へのデータ書き込み、またはメモリ30からのデータ読み出しを行う。CPU20は、制御ユニット10からの恒久的なアドレスエラーを示す第2アドレスエラー信号を受信した(第2アドレスエラー信号がハイレベルである)場合に、当該エラーに応じた処理を実行する。図2は、CPU20が発行する信号、受信する信号の詳細、及び他の処理部を記載したブロック図である。以下、図2を参照して、CPU20の送受信する信号、及び他の処理部の詳細について説明する。   The CPU 20 is a central processing unit that executes various programs and the like. The CPU 20 performs data writing to the memory 30 or data reading from the memory 30 via the control unit 10. When the CPU 20 receives a second address error signal indicating a permanent address error from the control unit 10 (the second address error signal is at a high level), the CPU 20 executes processing corresponding to the error. FIG. 2 is a block diagram describing signals issued by the CPU 20, details of received signals, and other processing units. Hereinafter, with reference to FIG. 2, details of signals transmitted and received by the CPU 20 and other processing units will be described.

CPU20は、リードリクエスト、またはライトリクエストを発行する。各リクエストには、リードリクエストであるかライトリクエストであるかを示すリクエスト種別が含まれる。リードリクエストは、読み出しアドレスを示すアドレス情報を含む。ライトリクエストには、書き込み先アドレスを示すアドレス情報、及びライトデータを含む。CPU20は、恒久的なアドレスエラーが生じた場合に第2アドレスエラー信号を受信する。CPU20は、リードリクエストの応答としてACK(応答信号)を受信する。CPU20は、ACK(応答信号)としてロウレベルの信号を受信した場合、読み出し処理が正常に行われなかったことを認識する。この場合、CPU20は、応答の保留が生じたものとして、ACKがハイレベルとなるまで当該リードリクエストの後続リクエスト(たとえばライトリクエスト)を再度発行する。   The CPU 20 issues a read request or a write request. Each request includes a request type indicating whether it is a read request or a write request. The read request includes address information indicating a read address. The write request includes address information indicating a write destination address and write data. The CPU 20 receives the second address error signal when a permanent address error occurs. The CPU 20 receives ACK (response signal) as a response to the read request. When receiving a low level signal as an ACK (response signal), the CPU 20 recognizes that the reading process has not been performed normally. In this case, the CPU 20 reissues a subsequent request (for example, a write request) of the read request until the ACK becomes high level, assuming that the response is suspended.

パリティ生成部40は、CPU20が発行したリクエスト(リードリクエスト、ライトリクエスト)に含まれるアドレス情報からアドレスパリティを生成し、当該アドレスパリティを制御ユニット10及びECC生成部50に供給する。   The parity generation unit 40 generates an address parity from address information included in a request (read request, write request) issued by the CPU 20 and supplies the address parity to the control unit 10 and the ECC generation unit 50.

ECC生成部50は、CPU20が発行したライトリクエストに含まれるライトデータ、及びパリティ生成部40から供給されたアドレスパリティを用いてECC(以下、誤り訂正符号、チェックビットとも呼称する。以下、チェックビットと記載する。)を生成する。ここで、ECC生成部50は、特許文献1と同様に、誤り訂正に用いるチェックビットの空きビットにアドレスパリティの情報を埋め込んだチェックビットを生成する。ECC生成部50は、生成したチェックビットを制御ユニット10に供給する。   The ECC generation unit 50 uses the write data included in the write request issued by the CPU 20 and the address parity supplied from the parity generation unit 40 (hereinafter also referred to as an error correction code or a check bit. Hereinafter, the check bit). Is generated). Here, as in Patent Document 1, the ECC generation unit 50 generates check bits in which address parity information is embedded in empty bits of check bits used for error correction. The ECC generation unit 50 supplies the generated check bit to the control unit 10.

メモリ30は、各種データを保持する記憶装置である。メモリ30は、内部にアドレスデコーダ310と、データ記憶部320と、を有する。アドレスデコーダ310は、CPU20から発行されたリクエストのアドレス情報をデコードしてデータ記憶部320に供給する。データ記憶部320は、例えばRAM(Random Access Memory)セルにより構成される。データ記憶部320は、図3に示すような形態でデータを保持する。すなわち、データ記憶部320は、チェックビット、データをアドレス毎に保持する。データ記憶部320は、制御ユニット10から書き込み制御信号(後述)が供給されている場合(書き込み制御信号がロウレベルの場合)、データの書き込みを抑止する。リードリクエストを受信した場合、データ記憶部320は、当該リクエストに含まれるアドレス情報を基にチェックビット、及びデータを読み出してECCデコーダ70に供給する。   The memory 30 is a storage device that holds various data. The memory 30 includes an address decoder 310 and a data storage unit 320 inside. The address decoder 310 decodes the address information of the request issued from the CPU 20 and supplies it to the data storage unit 320. The data storage unit 320 is configured by, for example, a RAM (Random Access Memory) cell. The data storage unit 320 holds data in the form as shown in FIG. That is, the data storage unit 320 holds a check bit and data for each address. When a write control signal (described later) is supplied from the control unit 10 (when the write control signal is at a low level), the data storage unit 320 inhibits data writing. When the read request is received, the data storage unit 320 reads the check bit and data based on the address information included in the request and supplies the read check bit and data to the ECC decoder 70.

フリップフロップ60は、パリティ生成部40が生成したアドレスパリティを制御ユニット10を介して受信し、当該アドレスパリティをECCデコーダ70に供給する。フリップフロップ60は、ECCデコーダ70のデータ取り込みのタイミングの調整に用いられる。   The flip-flop 60 receives the address parity generated by the parity generation unit 40 via the control unit 10 and supplies the address parity to the ECC decoder 70. The flip-flop 60 is used to adjust the data fetch timing of the ECC decoder 70.

ECCデコーダ70は、フリップフロップ60から供給されたアドレスパリティと、メモリ30から供給されたチェックビット及びデータと、を受信し、データエラーの検出、データ生成、及びアドレスエラーの検出を行う。当該アドレスエラーの検出及びデータ誤りの検出処理は、特許文献1と略同一の手法(または既知の手法)により行うことができる。   The ECC decoder 70 receives the address parity supplied from the flip-flop 60 and the check bits and data supplied from the memory 30, and performs data error detection, data generation, and address error detection. The address error detection and data error detection processing can be performed by a technique (or a known technique) substantially the same as that of Patent Document 1.

データエラー及びアドレスエラーが生じなかった場合、ECCデコーダ70は、データ記憶部320から読み出したデータをCPU20に供給する。データエラーが生じた場合、ECCデコーダ70は、データエラー信号をCPU20に供給する。アドレスエラーが生じた場合、ECCデコーダ70は、第1アドレスエラー信号を制御ユニット10に供給する(第1アドレスエラー信号をハイレベルとする)。   When no data error and no address error occur, the ECC decoder 70 supplies the data read from the data storage unit 320 to the CPU 20. When a data error occurs, the ECC decoder 70 supplies a data error signal to the CPU 20. When an address error occurs, the ECC decoder 70 supplies a first address error signal to the control unit 10 (the first address error signal is set to high level).

続いて、制御ユニット10の詳細な構成について説明する。図4は、制御ユニット10の構成を示すブロック図である。制御ユニット10は、再処理実行部110と、アドレス保持バッファ120と、を有する。   Next, a detailed configuration of the control unit 10 will be described. FIG. 4 is a block diagram showing the configuration of the control unit 10. The control unit 10 includes a reprocessing execution unit 110 and an address holding buffer 120.

アドレス保持バッファ120は、リードリクエストのアドレス情報、及びアドレスパリティを順次保持するバッファである。アドレス保持バッファ120の保持する情報(リードリクエストのアドレス情報、及びアドレスパリティ)は、再処理実行部110によって更新が制御される。詳細には再読み込みを行う状態(後述のステート"Re−Read1"、"Re−Read2")の場合には、値の更新が行われない。すなわち、アドレス保持バッファ120は、リードリクエストの再実行を行う場合には、実行が失敗したリードリクエストにかかるアドレス情報、及びアドレスパリティを保持し続ける。   The address holding buffer 120 is a buffer that sequentially holds read request address information and address parity. Information held in the address holding buffer 120 (read request address information and address parity) is updated by the reprocessing execution unit 110. Specifically, in a state where re-reading is performed (states “Re-Read 1” and “Re-Read 2” described later), the value is not updated. That is, when re-execution of a read request, the address holding buffer 120 continues to hold address information and address parity related to a read request that has failed to be executed.

再処理実行部110の詳細な構成を図5に示す。再処理実行部110は、ステート情報レジスタ1101と、ステート処理部1102と、恒久エラー信号送信部1103と、応答信号送信部1104と、書き込み制御信号生成部1105と、エラー記録部1106と、を備える。   A detailed configuration of the reprocessing execution unit 110 is shown in FIG. The reprocessing execution unit 110 includes a state information register 1101, a state processing unit 1102, a permanent error signal transmission unit 1103, a response signal transmission unit 1104, a write control signal generation unit 1105, and an error recording unit 1106. .

ステート情報レジスタ1101は、リクエスト種別、及び第1アドレスエラー信号に応じて変化するステートを保持するレジスタである。ステート処理部1102は、リクエスト種別、及び第1アドレスエラー信号を受信し、当該受信した情報に応じてステート情報レジスタ1101の保持するステートを変化させる。各ステートの内容、及びステートの変化を図6を参照して説明する。   The state information register 1101 is a register that holds a state that changes according to the request type and the first address error signal. The state processing unit 1102 receives the request type and the first address error signal, and changes the state held by the state information register 1101 according to the received information. The contents of each state and the change of the state will be described with reference to FIG.

ステート"IDLE"は、CPU20からのリクエストを受信していない状態である。ステート"Read"は、CPU20からのリードリクエストを受信した状態である。ステート"Write"は、CPU20からのライトリクエストを受信した状態である。ステート"Re−Read1"は、リードリクエストの実行結果として、第1アドレスエラー信号がハイレベル(アドレスエラーが生じた)となった場合の状態である。ステート"Re−Read1"の場合、リードリクエストの再実行を行う。ステート"Re−Read2"は、ステート"Re−Read1"においてリード処理の再実行を行った後の状態を示す。ステート"STOP"とは、リードリクエストの再実行においても第1アドレスエラー信号がハイレベル(アドレスエラーが生じた)となった場合の状態である。   The state “IDLE” is a state in which a request from the CPU 20 is not received. The state “Read” is a state in which a read request from the CPU 20 is received. The state “Write” is a state in which a write request from the CPU 20 is received. The state “Re-Read1” is a state when the first address error signal is at a high level (an address error has occurred) as a result of executing the read request. In the state “Re-Read1”, the read request is re-executed. The state “Re-Read2” indicates a state after the re-execution of the read process in the state “Re-Read1”. The state “STOP” is a state when the first address error signal becomes high level (address error has occurred) even in re-execution of the read request.

ステート処理部1102は、図6に示すように、入力されたリクエストの種別、及び第1アドレスエラー信号の値、に応じてステートを変化させる。例えば、ステート"Read"の場合に、第1アドレスエラー信号がハイレベルとなった場合、ステート処理部1102は、ステート"Re−Read1"に遷移させる。   As shown in FIG. 6, the state processing unit 1102 changes the state according to the type of the input request and the value of the first address error signal. For example, in the state “Read”, when the first address error signal becomes a high level, the state processing unit 1102 makes a transition to the state “Re-Read1”.

再び、図5を参照する。ステート処理部1102は、ステートの書き換えに加え、ステート"Re−Read1"の場合にリードリクエストを再発行するように制御を行う。この際に、ステート処理部1102は、アドレス保持バッファ120に格納されたアドレス及びアドレスパリティを用いてリードリクエストをメモリ30に対して再発行する。ステート処理部1102は、ステート"Read"の際に受信したアドレス情報とアドレスパリティをアドレス保持バッファ120に格納する。ステート処理部120は、ステート"Re−Read1"、"Re−Read1"、"STOP"の場合にはアドレス保持バッファ120の更新を停止する(値を保持し続ける)。   Again referring to FIG. In addition to rewriting the state, the state processing unit 1102 controls to reissue the read request in the case of the state “Re-Read1”. At this time, the state processing unit 1102 reissues a read request to the memory 30 using the address and address parity stored in the address holding buffer 120. The state processing unit 1102 stores the address information and address parity received in the state “Read” in the address holding buffer 120. In the state “Re-Read1”, “Re-Read1”, or “STOP”, the state processing unit 120 stops updating the address holding buffer 120 (continues to hold the value).

恒久エラー信号送信部1103には、第1アドレスエラー信号が供給される。恒久エラー信号送信部1103は、ステート情報レジスタ1101の保持するステートを読み出す。恒久エラー信号送信部1103は、第1アドレスエラー信号の値と、ステートの値と、に応じて第2アドレスエラー信号を生成し、当該第2アドレスエラー信号をCPU20に供給する。   The permanent address signal transmitter 1103 is supplied with the first address error signal. The permanent error signal transmission unit 1103 reads the state held in the state information register 1101. The permanent error signal transmission unit 1103 generates a second address error signal according to the value of the first address error signal and the value of the state, and supplies the second address error signal to the CPU 20.

恒久エラー信号送信部1103は、以下の条件のいずれかを満たす場合に第2アドレスエラー信号をハイレベルに設定し、その他の場合にはロウレベルに設定する。
- ステート="Re−Read2" かつ 第1アドレスエラー信号がハイレベル
- ステート="STOP"
The permanent error signal transmission unit 1103 sets the second address error signal to a high level when any of the following conditions is satisfied, and sets it to a low level in other cases.
-State = "Re-Read2" and first address error signal is high level
-State = "STOP"

応答信号送信部1104には、第1アドレスエラー信号が供給される。応答信号送信部1104には、ステート情報レジスタ1101の保持するステートを読み出す。応答信号送信部1104は、第1アドレスエラー信号の値と、ステートの値と、に応じてACK(応答信号)を生成し、当該応答信号をCPU20に供給する。   The response signal transmission unit 1104 is supplied with the first address error signal. The response signal transmission unit 1104 reads the state held in the state information register 1101. The response signal transmission unit 1104 generates an ACK (response signal) according to the value of the first address error signal and the value of the state, and supplies the response signal to the CPU 20.

応答信号送信部1104は、以下の条件のいずれかを満たす場合にACK(応答信号)をハイレベルに設定し、その他の場合にはロウレベルに設定する。
- ステート="Write"
- ステート="Read" かつ 第1アドレスエラー信号がロウレベル
- ステート="Re−Read2" かつ 第1アドレスエラー信号がロウレベル
The response signal transmission unit 1104 sets ACK (response signal) to a high level when any of the following conditions is satisfied, and sets it to a low level in other cases.
-State = "Write"
-State = "Read" and first address error signal is low level
-State = "Re-Read2" and first address error signal is low level

書き込み制御信号生成部1105は、中間信号生成部1107と、書き込み検出部1108と、論理積回路1109と、を備える。書き込み制御信号生成部1105は、メモリ30の書き込み処理の可否を通知する書き込み制御信号を生成し、生成した書き込み制御信号をメモリ30に供給する。書き込み制御信号は、ハイレベルの場合にメモリ30のデータ書き込みを許可し、ロウレベルの場合にメモリ30のデータ書き込みを禁止する信号である。書き込み制御信号は、書き込み処理の開始時にハイレベルとなるが、書き込み制御信号生成部1105の生成した値により上書きされる(書き込み制御信号生成部1105がロウレベルの信号を出力する場合にはロウレベルに切り替わる)。   The write control signal generation unit 1105 includes an intermediate signal generation unit 1107, a write detection unit 1108, and an AND circuit 1109. The write control signal generation unit 1105 generates a write control signal for notifying whether or not the write process of the memory 30 is possible, and supplies the generated write control signal to the memory 30. The write control signal is a signal that permits data writing to the memory 30 when the level is high and prohibits data writing to the memory 30 when the level is low. The write control signal becomes a high level at the start of the write process, but is overwritten by a value generated by the write control signal generation unit 1105. (When the write control signal generation unit 1105 outputs a low level signal, the write control signal is switched to a low level. ).

中間信号生成部1107には、第1アドレスエラー信号が供給される。中間信号生成部1107は、ステート情報レジスタ1101の保持するステートを読み出す。中間信号生成部1107は、以下の条件のいずれかを満たす場合にハイレベルとなる中間信号を生成する。中間信号生成部1107は、生成した中間信号を論理積回路1109に供給する。
‐ステート="Read" かつ 第1アドレスエラー信号がハイレベル
‐ステート="Re−Read1"
‐ステート="Re−Read2" かつ 第1アドレスエラー信号がハイレベル
‐ステート="STOP"
The intermediate signal generator 1107 is supplied with the first address error signal. The intermediate signal generation unit 1107 reads the state held in the state information register 1101. The intermediate signal generation unit 1107 generates an intermediate signal that becomes a high level when any of the following conditions is satisfied. The intermediate signal generation unit 1107 supplies the generated intermediate signal to the AND circuit 1109.
-State = "Read" and the first address error signal is at a high level-State = "Re-Read1"
-State = "Re-Read2" and the first address error signal is at a high level-State = "STOP"

書き込み検出部1108には、リクエスト種別が供給される。書き込み検出部1108は、リクエスト種別がライトリクエストである場合にのみハイレベルとなる書き込み検出信号を生成し、当該書き込み制御信号を論理積回路1109に供給する。なお、図7に上述の各信号がハイレベルとなる条件をまとめて記載する。   A request type is supplied to the write detection unit 1108. The write detection unit 1108 generates a write detection signal that becomes a high level only when the request type is a write request, and supplies the write control signal to the AND circuit 1109. FIG. 7 collectively describes the conditions under which the above-described signals become high level.

論理積回路1109は、中間信号(中間信号生成部1107の出力信号)の反転信号と、書き込み検出信号(書き込み検出信号1108の出力信号)と、の論理積を書き込み制御信号としてメモリ30に供給する。   The logical product circuit 1109 supplies the logical product of the inverted signal of the intermediate signal (output signal of the intermediate signal generation unit 1107) and the write detection signal (output signal of the write detection signal 1108) to the memory 30 as a write control signal. .

エラー記録部1106は、メモリ30の操作(読み出し、書き込み)の際に生じた各種エラーを記録する処理部である。エラー記録部1106は、内部にエラー記録レジスタ1110を有する。エラー記録部1106には、第1アドレスエラー信号、及びデータエラーが供給される。なお、エラー記録部1106には、エラー(メモリ30の読み出し時のエラー、メモリ30への書き込み時のエラー)発生時の対象アドレス(書き込み対象アドレス、読み出し対象アドレス)の情報も供給される(図示せず)。エラー記録部1106は、これらの情報を基に、エラー記録レジスタ1110にエラーの履歴を書き込む。   The error recording unit 1106 is a processing unit that records various errors that occur during operations (reading and writing) of the memory 30. The error recording unit 1106 includes an error recording register 1110 inside. The error recording unit 1106 is supplied with a first address error signal and a data error. The error recording unit 1106 is also supplied with information on the target address (write target address, read target address) when an error (error at the time of reading from the memory 30, error at the time of writing to the memory 30) occurs (see FIG. Not shown). The error recording unit 1106 writes an error history in the error recording register 1110 based on these pieces of information.

図8は、エラー記録レジスタ1110の構成の一例を示す概念図である。エラー種別とは、エラーの種別を示し、"データエラー"(書き込み時に生じたデータエラー)または"アドレスエラー"が書き込まれる。対象アドレスとは、エラー発生時にメモリ30の書き込みまたは読み出し対象となったアドレスを示す。   FIG. 8 is a conceptual diagram showing an example of the configuration of the error recording register 1110. The error type indicates the type of error, and “data error” (data error that occurred during writing) or “address error” is written. The target address indicates an address that is a target of writing or reading in the memory 30 when an error occurs.

なお、エラー記録レジスタ1110は、これ以外の情報を保持しても良いことは勿論である。例えば、エラーが発生した時間を示す情報を合わせて保持しても良いことは勿論である。   Of course, the error recording register 1110 may hold other information. For example, it is a matter of course that information indicating the time when an error has occurred may be held together.

続いて、本実施の形態にかかるデータ処理装置の動作について図9〜図11のタイミングチャートを参照して説明する。図9は、アドレスエラーが生じなかった場合の各処理部の出力信号を示すタイミングチャートである。   Next, the operation of the data processing apparatus according to the present embodiment will be described with reference to the timing charts of FIGS. FIG. 9 is a timing chart showing an output signal of each processing unit when no address error occurs.

タイミングT1において、CPU20は、リードリクエストを発行する。リードリクエストは、制御ユニット10を介してメモリ30に供給される。リクエスト種別がリードリクエストであるため、タイミングT2において、制御ユニット10内のステートは、"IDLE"から"Read"に遷移する(図6)。   At timing T1, the CPU 20 issues a read request. The read request is supplied to the memory 30 via the control unit 10. Since the request type is a read request, at timing T2, the state in the control unit 10 transitions from “IDLE” to “Read” (FIG. 6).

タイミングT2においてステートが"Read"となるため、制御ユニット10は、内部のアドレス保持バッファ120に当該リードリクエストのアクセス先であるアドレス情報(アドレスA)及びアドレスパリティを格納する。タイミングT2において、CPU20は、ライトリクエストを発行する。タイミングT2において、リードリクエスト(アドレスA)に対応するデータが読み出される。この際、正しいアドレス(アドレスA)のデータ(データB)が読み出されているため、第1アドレスエラー信号は、ロウレベルとなる。第1アドレスエラー信号がロウレベルであるため、制御ユニット10は、読み出したデータ(データB)に対応するACK(応答信号)としてハイレベルをCPU20に供給する(図7)。そして、タイミングT2において、CPU20が発行したライトリクエストの処理が継続して行われる。リクエスト種別がライトリクエストであり、第1アドレスエラー信号がロウレベルであるため、タイミングT2において、制御ユニット10内のステートは、"Read"から"Write"に遷移する。   Since the state becomes “Read” at the timing T <b> 2, the control unit 10 stores the address information (address A) and the address parity that are the access destination of the read request in the internal address holding buffer 120. At timing T2, the CPU 20 issues a write request. At timing T2, data corresponding to the read request (address A) is read. At this time, since the data (data B) at the correct address (address A) has been read, the first address error signal becomes low level. Since the first address error signal is at a low level, the control unit 10 supplies a high level to the CPU 20 as an ACK (response signal) corresponding to the read data (data B) (FIG. 7). Then, at timing T2, processing of the write request issued by the CPU 20 is continued. Since the request type is a write request and the first address error signal is at a low level, the state in the control unit 10 changes from “Read” to “Write” at timing T2.

タイミングT3において、ステートが"Write"であるため、制御ユニット10は、アドレス保持バッファ120に保持していた情報(アドレスA及びアドレスパリティ)を破棄する。   Since the state is “Write” at timing T 3, the control unit 10 discards the information (address A and address parity) held in the address holding buffer 120.

次に、図10を参照して、一時的なアドレスエラーが生じた場合の各処理部の出力信号について説明する。タイミングT1において、CPU20は、リードリクエストを発行する。リクエスト種別がリードリクエストであるため、タイミングT2において、制御ユニット10内のステートは、"IDLE"から"Read"に遷移する。   Next, an output signal of each processing unit when a temporary address error has occurred will be described with reference to FIG. At timing T1, the CPU 20 issues a read request. Since the request type is a read request, at timing T2, the state in the control unit 10 transitions from “IDLE” to “Read”.

図9と同様に、アドレス保持バッファ120には、タイミングT2においてリードリクエストのアクセス先であるアドレス情報(アドレスA)及びアドレスパリティが格納される。タイミングT2において、CPU20は、ライトリクエストを発行する。タイミングT2において、リードリクエストに対するデータがメモリ30から読み出される。ここで、リードリクエストのアドレス情報がアドレスAであるにもかかわらず、アドレスXからデータが読み出されている。そのため、第1アドレスエラー信号は、ハイレベルとなる。すなわち、アドレスエラーが検出されている。制御ユニット10内の中間信号生成部1107が生成する中間信号は、ステートが"Read"であり、第1アドレスエラー信号がハイレベルであるため、ハイレベルに切り替わる(図7)。書き込み検出部1108は、タイミングT2においてライトリクエストが発行されているためハイレベルを出力する。論理積回路1109は、中間信号の反転信号と書き込み検出信号1108の出力信号の論理積を書き込み制御信号として出力する。そのため、書き込み処理の開始時にハイレベルとなった書き込み制御信号は、中間信号がハイレベルとなったタイミングでロウレベルに切り替わる。これにより、メモリ30への書き込みが抑制される。さらに、制御ユニット10内の応答信号送信部1104は、ステートが"Read"であり、第1アドレスエラー信号がハイレベルであるため、ACK(応答信号)としてロウレベルをCPU20に供給する。   Similar to FIG. 9, the address holding buffer 120 stores address information (address A) and address parity, which are the access destinations of the read request, at timing T2. At timing T2, the CPU 20 issues a write request. At timing T2, data corresponding to the read request is read from the memory 30. Here, although the address information of the read request is address A, data is read from address X. Therefore, the first address error signal becomes high level. That is, an address error has been detected. The intermediate signal generated by the intermediate signal generation unit 1107 in the control unit 10 is switched to the high level because the state is “Read” and the first address error signal is the high level (FIG. 7). The write detection unit 1108 outputs a high level because a write request is issued at timing T2. A logical product circuit 1109 outputs a logical product of the inverted signal of the intermediate signal and the output signal of the write detection signal 1108 as a write control signal. Therefore, the write control signal that has become high level at the start of the write process is switched to low level at the timing when the intermediate signal has become high level. Thereby, writing to the memory 30 is suppressed. Furthermore, since the state is “Read” and the first address error signal is at a high level, the response signal transmission unit 1104 in the control unit 10 supplies a low level to the CPU 20 as an ACK (response signal).

タイミングT3において、制御ユニット10内のステートは、"Re−Read1"に変更される。制御ユニット10は、アドレス保持バッファ120に保持したアドレス情報(アドレスA)を用いてリード処理を再実行する。制御ユニット10は、図6に示したステートマシンの遷移に応じて、タイミングT4におけるステートを"Re−Read2"に変更する。   At timing T3, the state in the control unit 10 is changed to “Re-Read1”. The control unit 10 re-executes the read process using the address information (address A) held in the address holding buffer 120. The control unit 10 changes the state at the timing T4 to “Re-Read2” in accordance with the transition of the state machine shown in FIG.

タイミングT4において、リードリクエストに対応するデータがメモリ30から読み出される。図10の例では、アドレスAからデータBが読み出されることにより、アドレスエラーが生じない。この場合、第1アドレスエラー信号は、ロウレベルのままである。そのため、タイミングT4において、制御ユニット10内の中間信号生成部1107は、第1アドレスエラー信号がロウレベルであるため、出力信号をロウレベルとする(図7)。これにより、書き込み処理時にハイレベルとなる書き込み制御信号は、そのままハイレベルとなる。   At timing T4, data corresponding to the read request is read from the memory 30. In the example of FIG. 10, no data error occurs because data B is read from address A. In this case, the first address error signal remains at a low level. Therefore, at timing T4, the intermediate signal generation unit 1107 in the control unit 10 sets the output signal to the low level because the first address error signal is at the low level (FIG. 7). As a result, the write control signal that is at the high level during the write process is directly at the high level.

タイミングT5において、制御ユニット10内のステートは、図6に示すステートマシンの遷移に従い、"Write"に変更される。これにより、タイミングT5からメモリ30への書き込み処理が行われる。さらに、制御ユニット10内の応答信号送信部1104は、ステートが"Write"に切り替わったことにより、ACK(応答信号)をハイレベルに切り替えてCPU20に供給する。タイミングT5において、ステートが"Write"であるため、制御ユニット10は、アドレス保持バッファ120に保持していた情報(アドレスA及びアドレスパリティ)を破棄する。   At timing T5, the state in the control unit 10 is changed to “Write” in accordance with the transition of the state machine shown in FIG. Thereby, the writing process to the memory 30 is performed from the timing T5. Further, the response signal transmission unit 1104 in the control unit 10 switches ACK (response signal) to high level and supplies it to the CPU 20 when the state is switched to “Write”. Since the state is “Write” at timing T5, the control unit 10 discards the information (address A and address parity) held in the address holding buffer 120.

次に、図11を参照して、恒久的なアドレスエラーが生じた場合の各処理部の出力信号について説明する。タイミングT1〜T3までは、図10と同様であるため、詳細な説明は省略する。   Next, an output signal of each processing unit when a permanent address error occurs will be described with reference to FIG. Since the timings T1 to T3 are the same as those in FIG. 10, detailed description thereof is omitted.

タイミングT4における制御ユニット10のステートは、"Re−Read2"である。タイミングT4において、リードリクエストに対応するデータがメモリ30から読み出される。図11の例では、この読み出しの際に再度アドレスXからデータを読み出してしまい、アドレスエラーが再度発生する。この場合、第1アドレスエラー信号は、ハイレベルとなる。制御ユニット10内の中間信号生成部1107が生成する中間信号は、ステートが"Re−Read2"であり、第1アドレスエラー信号がハイレベルであるため、ハイレベルに切り替わる(図7)。書き込み検出部1108は、タイミングT4においてライトリクエストが発行されているためハイレベルを出力する。論理積回路1109は、中間信号の反転信号と書き込み検出信号1108の出力信号の論理積を書き込み制御信号として出力する。そのため、書き込み制御信号は、中間信号がハイレベルとなったタイミングでロウレベルに切り替わる。これにより、メモリ30への書き込みが抑制される。   The state of the control unit 10 at the timing T4 is “Re-Read2”. At timing T4, data corresponding to the read request is read from the memory 30. In the example of FIG. 11, data is read again from the address X at the time of this reading, and an address error occurs again. In this case, the first address error signal is at a high level. The intermediate signal generated by the intermediate signal generation unit 1107 in the control unit 10 is switched to the high level because the state is “Re-Read2” and the first address error signal is the high level (FIG. 7). The write detection unit 1108 outputs a high level because a write request is issued at timing T4. A logical product circuit 1109 outputs a logical product of the inverted signal of the intermediate signal and the output signal of the write detection signal 1108 as a write control signal. Therefore, the write control signal is switched to the low level at the timing when the intermediate signal becomes the high level. Thereby, writing to the memory 30 is suppressed.

さらに、制御ユニット10内の応答信号送信部1104は、ステートが"Re−Read2"であり、第1アドレスエラー信号がハイレベルであるため、ACK(応答信号)としてロウレベルをCPU20に供給する。ステートが"Re−Read2"の状態において、第1アドレスエラー信号がハイレベルとなったため、制御ユニット10内のステートは、タイミングT5において"STOP"となる。   Furthermore, since the state is “Re-Read2” and the first address error signal is at a high level, the response signal transmission unit 1104 in the control unit 10 supplies the CPU 20 with a low level as an ACK (response signal). When the state is “Re-Read2”, the first address error signal becomes high level, so the state in the control unit 10 becomes “STOP” at timing T5.

続いて、本実施の形態の効果について説明する。上述のように、制御ユニット10は、メモリ30の読み出し時のアドレスエラーの検出時に(第1アドレスエラー信号がハイレベルの場合に)、書き込み制御信号を抑止する(ロウレベルにする)ことによりメモリ30への書き込み処理を禁止している。これにより、メモリ30への再読み出し処理が行われる前にデータが上書きされることを回避することができる。さらに、制御ユニット10は、CPU20への応答を保留(ACK信号をロウレベルで通知)する。CPU20は、ACK信号がロウレベルである間にはエラーが生じたリードリクエストの直後のリクエストを発行し続ける。このため、リクエスト順序を変化させることなく、全てのリクエストを実行することができる。   Then, the effect of this Embodiment is demonstrated. As described above, when the control unit 10 detects an address error at the time of reading from the memory 30 (when the first address error signal is at a high level), the control unit 10 suppresses the write control signal (sets the memory 30 to a low level). Write processing is prohibited. Thereby, it is possible to avoid that data is overwritten before the rereading process to the memory 30 is performed. Furthermore, the control unit 10 suspends the response to the CPU 20 (notifies the ACK signal at a low level). While the ACK signal is at the low level, the CPU 20 continues to issue a request immediately after the read request in which an error has occurred. For this reason, all requests can be executed without changing the order of requests.

さらに、制御ユニット10は、所定回数(上述の例では連続して2回)のアドレスエラー信号を検出した場合、恒久的なエラーであることをCPU20に通知する。これにより、CPU20は、恒久的なエラーに対する対応を行うことができる。   Further, when the control unit 10 detects the address error signal a predetermined number of times (twice in the above example), the control unit 10 notifies the CPU 20 of a permanent error. Thereby, CPU20 can respond to a permanent error.

なお、上述の説明では、制御ユニット10は、アドレスエラーの発生時に読み出し処理の再実行を1回行い、その再実行が失敗していた場合には恒久的なアドレスエラーが生じたものと判定したが、必ずしもこれに限られない。制御ユニット10は、アドレスエラーが所定回数連続して生じた場合に恒久的なアドレスエラーが発生したものと判定しても良い。   In the above description, the control unit 10 re-executes the read process once when an address error occurs, and determines that a permanent address error has occurred if the re-execution fails. However, this is not necessarily the case. The control unit 10 may determine that a permanent address error has occurred when an address error has occurred continuously for a predetermined number of times.

<実施の形態2>
本発明の実施の形態2にかかるデータ処理装置は、メモリ30内にアドレスパリティを予め保持しておくことを特徴とする。本実施の形態にかかるデータ処理装置について、以下に説明する。なお、実施の形態1と同一名称、同一符号を付した処理部であって特に言及しない処理部は、基本的に実施の形態1と同様の処理を行う。
<Embodiment 2>
The data processing device according to the second exemplary embodiment of the present invention is characterized in that the address parity is held in the memory 30 in advance. The data processing apparatus according to this embodiment will be described below. Note that the processing units having the same names and the same reference numerals as those in the first embodiment and not particularly mentioned perform basically the same processing as in the first embodiment.

図12は、本実施の形態にかかるデータ処理装置の構成を示すブロック図である。本実施の形態にかかるデータ処理装置は、実施の形態1の構成に加えて、第1パリティチェック部80及び第2パリティチェック部90を備える。なお、図12に図示しないものの、データ処理装置がCPU20を備えることは勿論である。   FIG. 12 is a block diagram showing a configuration of the data processing apparatus according to the present embodiment. The data processing apparatus according to the present embodiment includes a first parity check unit 80 and a second parity check unit 90 in addition to the configuration of the first embodiment. Although not shown in FIG. 12, the data processing device includes the CPU 20 as a matter of course.

メモリ30は、各アドレスにアドレスパリティ、チェックビット、及びデータを保持する。本実施の形態において、メモリ30は、チェックビットとアドレスパリティを別データとして保持する。ここで、アドレスパリティは、ミラーリング(二重化)されている。図13は、本実施の形態にかかるメモリ30のデータ格納構成を示す概念図である。図示するように、アドレスパリティがアドレス毎に2つ格納されている。当該アドレスパリティは、予めアドレス毎に算出され、原則としてアドレス毎に同じ値が格納される。しかし、α線等の影響等を受けた場合には、異なる値が格納される場合が稀にある。   The memory 30 holds address parity, check bits, and data at each address. In the present embodiment, the memory 30 holds check bits and address parity as separate data. Here, the address parity is mirrored (duplexed). FIG. 13 is a conceptual diagram showing a data storage configuration of the memory 30 according to the present embodiment. As shown in the figure, two address parities are stored for each address. The address parity is calculated in advance for each address, and in principle, the same value is stored for each address. However, there are rare cases in which different values are stored when affected by α rays or the like.

第1パリティチェック部80は、メモリ30に格納されたアドレスパリティと、パリティ生成部40が生成して制御ユニット10及びアドレスデコーダ310を介して入力されたアドレスパリティと、を比較する処理部である。第1パリティチェック部80は、メモリ30内に格納された対のアドレスパリティが同じ値であるか否かを判定する。同じ値ではない場合、第1パリティチェック部80は、第3アドレスエラー信号をハイレベルにして制御ユニット10に供給する。第3アドレスエラー信号は、アドレスエラーの疑いがある場合にハイレベルとなる信号である。メモリ30内に格納された対のアドレスパリティが同じ値である場合、第1パリティチェック部80は、パリティ生成部40が生成したアドレスパリティと、メモリ30内に格納された対のアドレスパリティと、が同じ値であるか否かを判定する。同じ値ではない場合、第1パリティチェック部80は、第3アドレスエラー信号をハイレベルにして制御ユニット10に供給する。いずれの条件にも当てはまらない場合、第1パリティチェック部80は、第3アドレスエラー信号をロウレベルにして制御ユニット10に供給する。   The first parity check unit 80 is a processing unit that compares the address parity stored in the memory 30 with the address parity generated by the parity generation unit 40 and input via the control unit 10 and the address decoder 310. . The first parity check unit 80 determines whether or not the paired address parity stored in the memory 30 has the same value. If they are not the same value, the first parity check unit 80 sets the third address error signal to the high level and supplies it to the control unit 10. The third address error signal is a signal that goes high when there is a suspicion of an address error. When the paired address parity stored in the memory 30 has the same value, the first parity check unit 80 generates the address parity generated by the parity generating unit 40, the paired address parity stored in the memory 30, and Are the same value. If they are not the same value, the first parity check unit 80 sets the third address error signal to the high level and supplies it to the control unit 10. If neither condition is met, the first parity check unit 80 sets the third address error signal to the low level and supplies it to the control unit 10.

ECCデコーダ70には、メモリ30から該当アドレスに関するデータ(アドレス情報、読み出しデータ、チェックビット、アドレスパリティ)が供給される。ECCデコーダ70は、実施の形態1と同様にチェックビットを用いたデータエラー検出を行う。それと共に、ECCデコーダ70は、メモリ30に格納されたアドレスパリティの訂正処理を行う。ECCデコーダ70は、訂正済みのアドレスパリティを第2パリティチェック部90に供給する。さらに、ECCデコーダ70は、訂正を行った場合には訂正済みのアドレスパリティをメモリ30に書き込む。   The ECC decoder 70 is supplied with data (address information, read data, check bits, address parity) regarding the corresponding address from the memory 30. The ECC decoder 70 performs data error detection using check bits as in the first embodiment. At the same time, the ECC decoder 70 corrects the address parity stored in the memory 30. The ECC decoder 70 supplies the corrected address parity to the second parity check unit 90. Furthermore, the ECC decoder 70 writes the corrected address parity in the memory 30 when correction is performed.

第2パリティチェック部90は、ECCデコーダ70から供給された訂正済みのアドレスパリティを用いて、アドレスエラーの検出を行う。すなわち、第2パリティチェック部90は、フリップフロップ60を介して供給されたアドレスパリティと、訂正済みのアドレスパリティを比較して、アドレスエラーの発生を検出する。アドレスエラーが生じていると判定した場合、第2パリティチェック部90は、第1アドレスエラー信号をハイレベルにして制御ユニット10に供給する。アドレスエラーが生じていないと判定した場合、第2パリティチェック部90は、第1アドレスエラー信号をロウレベルにして制御ユニット10に供給する。   The second parity check unit 90 detects an address error using the corrected address parity supplied from the ECC decoder 70. That is, the second parity check unit 90 detects the occurrence of an address error by comparing the address parity supplied via the flip-flop 60 with the corrected address parity. If it is determined that an address error has occurred, the second parity check unit 90 sets the first address error signal to a high level and supplies it to the control unit 10. If it is determined that an address error has not occurred, the second parity check unit 90 sets the first address error signal to a low level and supplies it to the control unit 10.

続いて、本実施の形態にかかる再処理実行部110の構成及び動作について説明する。図14は、本実施の形態にかかる再処理実行部110の構成を示すブロック図である。再処理実行部110は、図5の構成に加えて、リードバッファ1111を備える。再処理実行部110内のステート処理部1102及び応答信号処理部1104には、第3アドレスエラー信号が供給される。   Next, the configuration and operation of the reprocessing execution unit 110 according to the present embodiment will be described. FIG. 14 is a block diagram illustrating a configuration of the reprocessing execution unit 110 according to the present embodiment. The reprocessing execution unit 110 includes a read buffer 1111 in addition to the configuration of FIG. A third address error signal is supplied to the state processing unit 1102 and the response signal processing unit 1104 in the reprocessing execution unit 110.

ステート処理部1102は、リクエスト種別、第1アドレスエラー信号、及び第3アドレスエラー信号を受信し、受信した情報に応じてステート情報レジスタ1101の保持するステートを変化させる。各ステートの内容、及びステートの変化を図15及び図16を参照して説明する。   The state processing unit 1102 receives the request type, the first address error signal, and the third address error signal, and changes the state held by the state information register 1101 according to the received information. The contents of each state and the change in the state will be described with reference to FIGS.

本実施の形態にかかるステート情報レジスタ1101の保持するステートは、実施の形態1で用いたステートと比べ、"Re−Read1"、"Re−Read2"というステートを持たず、"Wait"、"Re−Read"、"Re−Read Wait"、及び"false detection"というステートを持つ。   The state held by the state information register 1101 according to the present embodiment does not have the states “Re-Read1” and “Re-Read2”, but the “Wait” and “Re” states compared to the state used in the first embodiment. It has states of “Read”, “Re-Read Wait”, and “false detection”.

"Wait"とは、第3アドレスエラー信号が検出され(ハイレベルとなり)、第1アドレスエラー信号の供給を待機している状態である。ステートが"Wait"である場合、リードバッファ1111に読み出したデータを保持しておくとともに、リードリクエストの再実行が行われる。   “Wait” is a state in which the third address error signal is detected (becomes high level) and waiting for the supply of the first address error signal. When the state is “Wait”, the read data is held in the read buffer 1111 and the read request is re-executed.

"Re−Read"とは、リードリクエストの再実行し、メモリ30へのアクセス中であることを示すステートである。   “Re-Read” is a state indicating that the read request is re-executed and the memory 30 is being accessed.

"Re−Read Wait"とは、リードリクエストの再実行の結果として、第3アドレスエラー信号が検出された(ハイレベルとなった)状態である。ステートが"Re−Read Wait"である場合、"Wait"ステートとは異なり、リードリクエストの再実行は行われない。本ステートにおいて、第1アドレスエラー信号が検出された場合(ハイレベルとなった場合)、恒久的なアドレスエラーが生じたものと判定される。一方、本ステートにおいて、第1アドレスエラー信号が検出されなかった場合(ロウレベルとなった場合)、直前に生じたアドレスエラーが一時的なものであると判定される。   “Re-Read Wait” is a state in which the third address error signal is detected (becomes high level) as a result of re-execution of the read request. When the state is “Re-Read Wait”, unlike the “Wait” state, the read request is not re-executed. When the first address error signal is detected in this state (when it becomes high level), it is determined that a permanent address error has occurred. On the other hand, in this state, when the first address error signal is not detected (when it becomes low level), it is determined that the address error generated immediately before is temporary.

"false detection"とは、第3アドレスエラー信号が検出された(ハイレベルとなった)が、直後に第1アドレスエラー信号が検出されなかった(ロウレベルとなった)ステートである。ステートが"false detection"である場合、リードバッファ1111に格納された読み出しデータがCPU20に供給される。   “False detection” is a state in which the third address error signal is detected (becomes high level), but the first address error signal is not detected immediately (becomes low level). When the state is “false detection”, the read data stored in the read buffer 1111 is supplied to the CPU 20.

本実施の形態にかかるステート処理部1102は、図15及び図16に示すように、入力されたリクエストの種別、第1アドレスエラー信号の値、及び第3アドレスエラー信号の値、に応じてステートを変化させる。   As shown in FIGS. 15 and 16, the state processing unit 1102 according to the present embodiment performs state processing according to the type of input request, the value of the first address error signal, and the value of the third address error signal. To change.

再び図14を参照する。本実施の形態にかかるステート処理部1102は、ステートの変更、リードリクエストの再実行、及びリードバッファ1111の制御を行う。ステート処理部1102は、ステート"Wait"の場合にリードリクエストを再発行するように制御を行う。この際に、ステート処理部1102は、アドレス保持バッファ120に格納されたアドレス及びアドレスパリティを用いてリードリクエストをメモリ30に対して再発行する。さらに、ステート処理部1102は、ステート"Wait"、"Re−Read"、 "Re−Read Wait"、及び"false detection"の場合に、メモリ30から読み出したデータをリードバッファ1111に保持させるように制御する。   Refer to FIG. 14 again. The state processing unit 1102 according to the present embodiment changes the state, re-executes the read request, and controls the read buffer 1111. The state processing unit 1102 performs control so as to reissue the read request in the state “Wait”. At this time, the state processing unit 1102 reissues a read request to the memory 30 using the address and address parity stored in the address holding buffer 120. Further, the state processing unit 1102 causes the read buffer 1111 to hold the data read from the memory 30 in the states “Wait”, “Re-Read”, “Re-Read Wait”, and “false detection”. Control.

ステート処理部1102は、ステート"Read"の際に受信したアドレス情報とアドレスパリティをアドレス保持バッファ120に格納する。ステート処理部120は、ステート"Re−Read"、"Wait"、"false detection"の場合にはアドレス保持バッファ120の更新を停止する(値を保持し続ける)。   The state processing unit 1102 stores the address information and address parity received in the state “Read” in the address holding buffer 120. In the state “Re-Read”, “Wait”, and “false detection”, the state processing unit 120 stops updating the address holding buffer 120 (continues to hold the value).

恒久エラー信号送信部1103は、以下の条件のいずれかを満たす場合に第2アドレスエラー信号をハイレベルに設定し、その他の場合にはロウレベルに設定する。
- ステート="Re−Read Wait" かつ 第1アドレスエラー信号がハイレベル
- ステート="STOP"
The permanent error signal transmission unit 1103 sets the second address error signal to a high level when any of the following conditions is satisfied, and sets it to a low level in other cases.
-State = "Re-Read Wait" and first address error signal is high level
-State = "STOP"

応答信号送信部1104は、以下の条件のいずれかを満たす場合にACK(応答信号)をハイレベルに設定し、その他の場合にはロウレベルに設定する。
- ステート="Write"
- ステート="false detection"
- ステート="Read"かつ 第3アドレスエラー信号がロウレベル
- ステート="Re−Read"かつ 第3アドレスエラー信号がロウレベル
- ステート="Re−Read Wait" かつ 第1アドレスエラー信号がロウレベル
The response signal transmission unit 1104 sets ACK (response signal) to a high level when any of the following conditions is satisfied, and sets it to a low level in other cases.
-State = "Write"
-State = "false detection"
-State = "Read" and third address error signal is low level
-State = "Re-Read" and third address error signal is low level
-State = "Re-Read Wait" and first address error signal is low level

中間信号生成部1107には、第1アドレスエラー信号及び第3アドレスエラー信号が供給される。中間信号生成部1107は、ステート情報レジスタ1101の保持するステートを読み出す。中間信号生成部1107は、以下の条件のいずれかを満たす場合にハイレベルとなる中間信号を生成する。中間信号生成部1107は、生成した中間信号を論理積回路1109に供給する。
- ステート="Read" かつ 第3アドレスエラー信号がハイレベル
- ステート="Wait"
- ステート="Re−Read" かつ 第3アドレスエラー信号がハイレベル
- ステート="Re−Read Wait" かつ 第1アドレスエラー信号がハイレベル
- ステート="STOP"
The intermediate signal generator 1107 is supplied with the first address error signal and the third address error signal. The intermediate signal generation unit 1107 reads the state held in the state information register 1101. The intermediate signal generation unit 1107 generates an intermediate signal that becomes a high level when any of the following conditions is satisfied. The intermediate signal generation unit 1107 supplies the generated intermediate signal to the AND circuit 1109.
-State = "Read" and third address error signal is high level
-State = "Wait"
-State = "Re-Read" and the third address error signal is high.
-State = "Re-Read Wait" and first address error signal is high level
-State = "STOP"

図17は、上述の各信号がハイレベルとなる条件を示している。図14に示すその他の処理部の動作は、実施の形態1と同様であるため、その詳細な説明は省略する。   FIG. 17 shows a condition in which each of the above-mentioned signals becomes high level. Since the operation of the other processing units shown in FIG. 14 is the same as that of the first embodiment, detailed description thereof is omitted.

続いて、本実施の形態にかかるデータ処理装置の動作について図18〜図20のタイミングチャートを参照して説明する。図18は、第3アドレスエラー信号を検出したものの、第1アドレスエラー信号を検出したかった場合の各処理部の出力信号を示すタイミングチャートである。   Next, the operation of the data processing apparatus according to the present embodiment will be described with reference to the timing charts of FIGS. FIG. 18 is a timing chart showing an output signal of each processing unit when the third address error signal is detected but the first address error signal is desired to be detected.

タイミングT1において、CPU20は、リードリクエストを発行する。リードリクエストは、制御ユニット10を介してメモリ30に供給される。リクエスト種別がリードリクエストであるため、タイミングT2において、制御ユニット10内のステートは、"IDLE"から"Read"に遷移する。   At timing T1, the CPU 20 issues a read request. The read request is supplied to the memory 30 via the control unit 10. Since the request type is a read request, at timing T2, the state in the control unit 10 transitions from “IDLE” to “Read”.

タイミングT2においてステートが"Read"となるため、制御ユニット10は、内部のアドレス保持バッファ120に当該リードリクエストのアクセス先であるアドレス情報(アドレスA)及びアドレスパリティを格納する。タイミングT2において、CPU20は、ライトリクエストを発行する。タイミングT2において、リードリクエスト(アドレスA)に対応するデータが読み出される。この際、第3アドレスエラー信号は、ハイレベルとなる(すなわち、メモリ30内のアドレスパリティを用いた判定によりアドレスエラーが生じたと判定された、またはメモリ30内においてミラーリングしているアドレスパリティに相違がある)。これに応じて、制御ユニット10内の中間信号生成部1107が生成する中間信号は、ステートが"Read"であり、第3アドレスエラー信号がハイレベルであるため、ハイレベルに切り替わる。書き込み処理の開始時にハイレベルとなった書き込み制御信号は、中間信号がハイレベルとなったタイミングでロウレベルに切り替わる。これにより、メモリ30への書き込みが抑制される。さらに、制御ユニット10内の応答信号送信部1104は、ステートが"Read"であり、第3アドレスエラー信号がハイレベルであるため、ACK(応答信号)としてロウレベルをCPU20に供給する。   Since the state becomes “Read” at the timing T <b> 2, the control unit 10 stores the address information (address A) and the address parity that are the access destination of the read request in the internal address holding buffer 120. At timing T2, the CPU 20 issues a write request. At timing T2, data corresponding to the read request (address A) is read. At this time, the third address error signal becomes high level (that is, it is determined that an address error has occurred due to the determination using the address parity in the memory 30 or is different from the address parity mirrored in the memory 30). Is). Accordingly, the intermediate signal generated by the intermediate signal generation unit 1107 in the control unit 10 is switched to the high level because the state is “Read” and the third address error signal is at the high level. The write control signal that has become high level at the start of the write process is switched to low level at the timing when the intermediate signal has become high level. Thereby, writing to the memory 30 is suppressed. Furthermore, since the state is “Read” and the third address error signal is at a high level, the response signal transmission unit 1104 in the control unit 10 supplies a low level to the CPU 20 as an ACK (response signal).

タイミングT3において、制御ユニット10内のステートは、"Wait"に変更される。制御ユニット10は、内部のリードバッファ1111に、タイミングT2において読み出したデータ(データB)を保持しておく。制御ユニット10は、リードリクエストの再実行を行う。制御ユニット10は、アドレス保持バッファ120に保持したアドレス情報(アドレスA)を用いてリードリクエストをメモリ30に対して再発行する。タイミングT3において、第1アドレスエラー信号は、ロウレベルとなる。そのため、制御ユニット10は、タイミングT2において検出した第3アドレスエラー信号は誤検出であったと判定する。   At timing T3, the state in the control unit 10 is changed to “Wait”. The control unit 10 holds the data (data B) read at the timing T2 in the internal read buffer 1111. The control unit 10 re-executes the read request. The control unit 10 reissues the read request to the memory 30 using the address information (address A) held in the address holding buffer 120. At timing T3, the first address error signal becomes low level. Therefore, the control unit 10 determines that the third address error signal detected at the timing T2 is a false detection.

第1アドレスエラー信号が検出されなかったため、タイミングT4におけるステートは、"false detection"に変更される。ステートが"false detection"に変更されたため、制御ユニット10内の中間信号生成部1107が生成する中間信号は、ロウレベルとなる。制御ユニット10内のステート処理部1102は、リードバッファ1111に保持するデータ(データB)をCPU20に供給する。さらに、制御ユニット10内の応答信号送信部1104は、ステートが"false detection"であるため、ACK(応答信号)としてハイレベルをCPU20に供給する。   Since the first address error signal is not detected, the state at the timing T4 is changed to “false detection”. Since the state is changed to “false detection”, the intermediate signal generated by the intermediate signal generation unit 1107 in the control unit 10 is at a low level. The state processing unit 1102 in the control unit 10 supplies data (data B) held in the read buffer 1111 to the CPU 20. Further, since the state is “false detection”, the response signal transmission unit 1104 in the control unit 10 supplies a high level to the CPU 20 as an ACK (response signal).

タイミングT5において、制御ユニット10内のステートは、図15及び図16に示すステートマシンの遷移に従い、"Write"に変更される。これにより、タイミングT5からメモリ30への書き込み処理が行われる。   At timing T5, the state in the control unit 10 is changed to “Write” in accordance with the transition of the state machine shown in FIGS. Thereby, the writing process to the memory 30 is performed from the timing T5.

次に、図19を参照して、アドレスエラーが生じ、読み出し処理の再実行時に読み出し処理が成功した場合の各処理部の出力信号について説明する。タイミングT1及びT2の各出力信号等は図18と同様であるため、詳細な説明は省略する。   Next, an output signal of each processing unit when an address error occurs and the read process is successful when the read process is re-executed will be described with reference to FIG. Since the output signals and the like at timings T1 and T2 are the same as those in FIG.

タイミングT3において、制御ユニット10内のステートは、"Wait"に変更される。制御ユニット10は、リードリクエストの再実行を行う。制御ユニット10は、アドレス保持バッファ120に保持したアドレス情報(アドレスA)を用いてリードリクエストをメモリ30に対して再発行する。タイミングT3において、第1アドレスエラー信号は、ハイレベルとなる。第1アドレスエラー信号の検出により、アドレスエラーの発生が確定する。   At timing T3, the state in the control unit 10 is changed to “Wait”. The control unit 10 re-executes the read request. The control unit 10 reissues the read request to the memory 30 using the address information (address A) held in the address holding buffer 120. At timing T3, the first address error signal becomes high level. The occurrence of an address error is determined by detecting the first address error signal.

ステート"Wait"の状態において第1アドレスエラー信号が検出されたため、タイミングT4におけるステートは、"Re−Read"に変更される。ステート"Wait"の状態において行った読み出し処理の再実行結果として、第3アドレスエラー信号がロウレベルとなる。制御ユニット10内の応答信号送信部1104は、ステートが"Re−Read"であり、第3アドレスエラー信号がロウレベルとなったため、制御ユニット10は、ACK(応答信号)としてハイレベルをCPU20に供給する。   Since the first address error signal is detected in the state “Wait”, the state at the timing T4 is changed to “Re-Read”. As a result of re-execution of the read process performed in the state “Wait”, the third address error signal becomes low level. Since the response signal transmission unit 1104 in the control unit 10 is in the “Re-Read” state and the third address error signal is at a low level, the control unit 10 supplies a high level to the CPU 20 as an ACK (response signal). To do.

タイミングT5において、制御ユニット10内のステートは、図15及び図16に示すステートマシンの遷移に従い、"Write"に変更される。これにより、タイミングT5からメモリ30への書き込み処理が行われる。   At timing T5, the state in the control unit 10 is changed to “Write” in accordance with the transition of the state machine shown in FIGS. Thereby, the writing process to the memory 30 is performed from the timing T5.

次に、図20を参照して、アドレスエラーが生じ、読み出し処理の再実行時に第3アドレスエラー信号が誤検出された場合の各処理部の出力信号について説明する。タイミングT1〜T3の各出力信号等は図19と同様であるため、詳細な説明は省略する。   Next, with reference to FIG. 20, an output signal of each processing unit when an address error occurs and the third address error signal is erroneously detected when the read process is reexecuted will be described. Since the output signals and the like at timings T1 to T3 are the same as those in FIG.

タイミングT4におけるステートは、"Re−Read"である。ステート"Wait"の状態において行った読み出し処理の再実行結果として、第3アドレスエラー信号がハイレベルとなる(すなわち、メモリ30内のアドレスパリティを用いた判定によりアドレスエラーが生じたと判定された)。制御ユニット10内の中間信号生成部1107が生成する中間信号は、ステートが"Re−Read"であり、第3アドレスエラー信号がハイレベルであるため、ハイレベルに切り替わる。書き込み処理の開始時にハイレベルとなった書き込み制御信号は、中間信号がハイレベルとなったタイミングでロウレベルに切り替わる。これにより、メモリ30への書き込みが抑制される。ここで、制御ユニット10は、内部のリードバッファ1111に再実行時に読み出したデータ(データB)を保持しておく。   The state at timing T4 is “Re-Read”. As a result of re-execution of the read process performed in the state “Wait”, the third address error signal becomes high level (that is, it is determined that an address error has occurred by the determination using the address parity in the memory 30). . The intermediate signal generated by the intermediate signal generation unit 1107 in the control unit 10 is switched to the high level because the state is “Re-Read” and the third address error signal is at the high level. The write control signal that has become high level at the start of the write process is switched to low level at the timing when the intermediate signal has become high level. Thereby, writing to the memory 30 is suppressed. Here, the control unit 10 holds the data (data B) read at the time of re-execution in the internal read buffer 1111.

タイミングT5において、制御ユニット10内のステートは、"Re−Read Wait"に変更される。ステート"Wait"の状態において行った読み出し処理の再実行結果として、第1アドレスエラー信号がロウレベルとなる。これにより、制御ユニット10内のステート処理部1102は、タイミングT4において検出した第3アドレスエラー信号が誤検出であったと判定する。制御ユニット10は、再実行時に読み出したデータ(データB)をCPU20に供給する。さらに、制御ユニット10内の応答信号送信部1104は、ステートが"Re−Read Wait"であり、第1アドレスエラー信号がロウレベルであるため、ACK(応答信号)としてハイレベルをCPU20に供給する。   At timing T5, the state in the control unit 10 is changed to “Re-Read Wait”. As a result of re-execution of the read process performed in the state “Wait”, the first address error signal becomes low level. Thereby, the state processing unit 1102 in the control unit 10 determines that the third address error signal detected at the timing T4 is a false detection. The control unit 10 supplies data (data B) read at the time of re-execution to the CPU 20. Furthermore, the response signal transmission unit 1104 in the control unit 10 supplies the CPU 20 with a high level as an ACK (response signal) because the state is “Re-Read Wait” and the first address error signal is at a low level.

タイミングT6において、制御ユニット10内のステートは、図15及び図16に示すステートマシンの遷移に従い、"Write"に変更される。これにより、タイミングT5からメモリ30への書き込み処理が行われる。   At timing T6, the state in the control unit 10 is changed to “Write” in accordance with the state machine transition shown in FIGS. Thereby, the writing process to the memory 30 is performed from the timing T5.

続いて、本実施の形態の効果について説明する。実施の形態1と同様に、制御ユニット10は、メモリ30の読み出し時のアドレスエラーの検出時または検出の疑いがある場合に(第1、または第3アドレスエラー信号がハイレベルの場合に)、書き込み制御信号を抑止する(ロウレベルにする)ことによりメモリ30への書き込み処理を禁止している。これにより、メモリ30への再読み出し処理が行われる前にデータが上書きされることを回避することができる。さらに、制御ユニット10は、CPU20への応答を保留(ACK信号をロウレベルで通知)する。CPU20は、ACK信号がロウレベルである間にはエラーが生じたリードリクエストの直後のリクエストを発行し続ける。このため、リクエスト順序を変化させることなく、全てのリクエストを実行することができる。   Then, the effect of this Embodiment is demonstrated. Similar to the first embodiment, the control unit 10 detects the address error when reading from the memory 30 or when there is a suspicion of the detection (when the first or third address error signal is at a high level). By inhibiting the write control signal (low level), the writing process to the memory 30 is prohibited. Thereby, it is possible to avoid that data is overwritten before the rereading process to the memory 30 is performed. Furthermore, the control unit 10 suspends the response to the CPU 20 (notifies the ACK signal at a low level). While the ACK signal is at the low level, the CPU 20 continues to issue a request immediately after the read request in which an error has occurred. For this reason, all requests can be executed without changing the order of requests.

本実施の形態にかかるデータ処理装置の更なる効果について図21を参照して説明する。図21は、実施の形態1におけるアドレスエラーの検出と、実施の形態2におけるアドレスエラーの検出と、を対比した概念図である。   Further effects of the data processing apparatus according to the present embodiment will be described with reference to FIG. FIG. 21 is a conceptual diagram comparing the detection of an address error in the first embodiment and the detection of an address error in the second embodiment.

実施の形態1にかかるデータ処理装置では、ECCデコーダ70によるアドレスエラー検出が行われていた。一方、実施の形態2にかかるデータ処理装置では、メモリ30内に格納していたアドレスパリティを用いたアドレスエラー検出(第3アドレスエラー信号の送信)を行い、続いて訂正済みのアドレスパリティを用いたアドレス検出(第1アドレスエラー信号の送信)を行っている。   In the data processing apparatus according to the first embodiment, address error detection is performed by the ECC decoder 70. On the other hand, the data processing apparatus according to the second embodiment performs address error detection (transmission of the third address error signal) using the address parity stored in the memory 30, and subsequently uses the corrected address parity. Address detection (transmission of the first address error signal).

一般に、ECCデコーダ70は、多段の回路により構成されおり、処理負荷が大きい(処理時間が長くかかる)。実施の形態1のECCデコーダ70は、リードリクエストの発行から1クロック後に発行されるライトリクエストを処理するために、1クロック以内にアドレスエラーを検出しなければならない。一方、実施の形態2にかかるデータ処理装置では、第1パリティチェック部80が、リードリクエストの発行から1クロック後にアドレスエラーの検出を行っている。第1パリティチェック部80によるエラー検出は、ビット比較により行うため、処理負荷が小さい。すなわち、実施の形態2にかかる構成では、エラー検出までにかかる時間が短い。これにより、図21に示すように、1クロックにかかる時間を短縮することができる。これにより、データ処理装置全体の処理を速くすることができる。   In general, the ECC decoder 70 is composed of a multi-stage circuit and has a heavy processing load (a long processing time is required). The ECC decoder 70 according to the first embodiment must detect an address error within one clock in order to process a write request issued one clock after the read request is issued. On the other hand, in the data processing apparatus according to the second embodiment, the first parity check unit 80 detects an address error one clock after the read request is issued. Since the error detection by the first parity check unit 80 is performed by bit comparison, the processing load is small. That is, in the configuration according to the second embodiment, the time required until error detection is short. Thereby, as shown in FIG. 21, the time required for one clock can be shortened. Thereby, the processing of the entire data processing apparatus can be speeded up.

第1パリティチェック部80は、メモリ30内にアドレスパリティを保持しておくことにより、アドレスエラーの検出を行っている。しかしながら、メモリ30内にアドレスパリティを記憶させる際に、パリティデータがα線の影響等により反転する場合等が稀にある。すなわち、メモリ30内が記憶するアドレスパリティが正しくないケースが存在する。本実施の形態では、メモリ30内にアドレスパリティをミラーリングして記憶させる。そして、第1パリティチェック部80は、メモリ30内の全てのアドレスパリティが等しい値ではない場合には、メモリ30内のアドレスパリティが正しくないものとしてエラー出力を行う(第3アドレスエラー信号をハイレベルにする)。そして、第2パリティチェック部90は、訂正済みのアドレスパリティを用いたアドレスエラーの検出を行う。第2パリティチェック部90は、訂正済みのアドレスパリティを用いることにより、正確なアドレスエラーの検出処理を行うことができる。これにより、メモリ30内のアドレスパリティが正しくない場合であっても、アドレスエラーを正しく検出することができる。   The first parity check unit 80 detects an address error by holding the address parity in the memory 30. However, when address parity is stored in the memory 30, there are rare cases where the parity data is inverted due to the influence of α rays or the like. That is, there is a case where the address parity stored in the memory 30 is not correct. In this embodiment, the address parity is mirrored and stored in the memory 30. Then, if all the address parities in the memory 30 are not equal, the first parity check unit 80 outputs an error on the assumption that the address parity in the memory 30 is incorrect (the third address error signal is set to high level). Level). The second parity check unit 90 then detects an address error using the corrected address parity. The second parity check unit 90 can perform an accurate address error detection process by using the corrected address parity. Thereby, even if the address parity in the memory 30 is not correct, the address error can be detected correctly.

さらに、制御ユニット10は、第3アドレスエラー信号が誤検出であった場合に、リードレジスタ1111に格納していたデータをCPU20に供給する。これにより、CPU20は、メモリ30の読み出し処理の再実行を省略することができ、装置全体の処理速度を早めることができる。   Further, when the third address error signal is erroneously detected, the control unit 10 supplies the data stored in the read register 1111 to the CPU 20. As a result, the CPU 20 can omit the re-execution of the reading process of the memory 30 and can increase the processing speed of the entire apparatus.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。上述のメモリは、読み出し、及び書き込みが可能な任意の記憶装置であれば良い。   Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention. The memory described above may be any storage device that can be read and written.

なお、請求項に記載のアドレス誤り信号は、上述の第1アドレスエラー信号、または第3アドレスエラー信号に対応する。請求項に記載の通知信号は、上述の第2アドレスエラー信号に対応する。請求項に記載の簡易アドレス誤り信号は、上述の第3アドレスエラー信号に対応する。請求項に記載のアドレス誤り確定信号は、上述の第1アドレスエラー信号に対応する。   The address error signal described in the claims corresponds to the first address error signal or the third address error signal. The notification signal described in the claims corresponds to the second address error signal. The simple address error signal described in the claims corresponds to the third address error signal. The address error determination signal described in the claims corresponds to the first address error signal.

10 制御ユニット
20 CPU
30 メモリ
310 アドレスデコーダ
320 データ記憶部
40 パリティ生成部
50 ECC生成部
60 FF(フリップフロップ)
70 ECCデコーダ
80 第1パリティチェック部
90 第2パリティチェック部
110 再処理実行部
1101 ステート情報レジスタ
1102 ステート処理部
1103 恒久エラー信号送信部
1104 応答信号送信部
1105 書き込み制御信号生成部
1106 エラー記録部
1107 中間信号生成部
1108 書き込み検出部
1109 論理積回路
1110 エラー記録レジスタ
1111 リードバッファ
120 アドレス保持バッファ
10 Control unit 20 CPU
30 Memory 310 Address decoder 320 Data storage unit 40 Parity generation unit 50 ECC generation unit 60 FF (flip-flop)
70 ECC decoder 80 First parity check unit 90 Second parity check unit 110 Reprocessing execution unit 1101 State information register 1102 State processing unit 1103 Permanent error signal transmission unit 1104 Response signal transmission unit 1105 Write control signal generation unit 1106 Error recording unit 1107 Intermediate signal generator 1108 Write detector 1109 AND circuit 1110 Error recording register 1111 Read buffer 120 Address holding buffer

Claims (12)

メモリと、プロセッサから所望のアドレスへのリードリクエストまたはライトリクエストを受信し、前記メモリへのアクセスを制御する制御ユニットと、を備え、
前記制御ユニットは、前記メモリに対する読み出し処理の実行中に前記所望のアドレスと異なるアドレスへのアクセスを示す値のアドレス誤り信号を受信した場合、前記メモリの書き込み処理を禁止し、前記プロセッサへの応答を保留し、該保留期間に前記読み出し処理の再実行処理を行う、データ処理装置。
A memory, and a control unit that receives a read request or a write request to a desired address from a processor and controls access to the memory, and
When the control unit receives an address error signal having a value indicating an access to an address different from the desired address during the execution of the read process for the memory, the control unit prohibits the memory write process and responds to the processor. A data processing apparatus that holds the data and performs the re-execution process of the read process during the hold period.
前記制御ユニットは、前記再実行処理の実行後に、前記アドレス誤り信号に基づいてアドレスエラーを所定回数だけ検出した場合に、前記プロセッサに対して恒久的なアドレスエラーの発生を通知する通知信号を供給することを特徴とする請求項1に記載のデータ処理装置。   When the control unit detects an address error a predetermined number of times based on the address error signal after executing the re-execution process, the control unit supplies a notification signal for notifying the processor of the occurrence of a permanent address error. The data processing apparatus according to claim 1, wherein: 前記制御ユニットは、
前記メモリに対する読み出し処理のアドレス情報を保持するアドレス保持バッファと、
前記メモリに対する処理のステートを保持するステート情報レジスタと、
前記アドレス誤り信号の入力値と、前記プロセッサから発行されたリクエストの種別と、に応じて前記ステートを所定規則に従って変更するとともに、前記アドレス保持バッファの保持する前記アドレス情報を用いて前記再実行処理を行うステート処理部と、
前記アドレス誤り信号の入力値と、前記ステートと、前記プロセッサからのリクエスト種別と、に基づいて前記メモリの書き込み処理を禁止するか否かを指示する書き込み制御信号を生成する書き込み制御信号生成部と、
前記アドレス誤り信号の入力値、及び前記ステートに基づいて前記プロセッサへの応答信号を生成する応答信号送信部と、
を備えることを特徴とする請求項1または請求項2に記載のデータ処理装置。
The control unit is
An address holding buffer for holding address information of read processing for the memory;
A state information register for holding a state of processing for the memory;
The state is changed according to a predetermined rule according to the input value of the address error signal and the type of request issued from the processor, and the re-execution process is performed using the address information held in the address holding buffer. A state processing unit for performing
A write control signal generation unit for generating a write control signal for instructing whether or not to prohibit write processing of the memory based on an input value of the address error signal, the state, and a request type from the processor; ,
A response signal transmitter for generating a response signal to the processor based on the input value of the address error signal and the state;
The data processing apparatus according to claim 1, further comprising:
前記アドレス誤り信号、及び前記メモリから読み出したデータ誤りを示すデータエラー信号を受信し、受信した前記アドレス誤り信号及び前記データエラー信号に基づいてエラー内容を内部レジスタに記録するエラー記録部を更に備えることを特徴とする請求項1乃至請求項3のいずれか1項に記載のデータ処理装置。   An error recording unit that receives the address error signal and a data error signal indicating a data error read from the memory, and records an error content in an internal register based on the received address error signal and the data error signal; The data processing apparatus according to claim 1, wherein the data processing apparatus is a data processing apparatus. 前記メモリは、アドレス情報から算出されるアドレスパリティと、誤り訂正符号と、データと、を関連付けて保持し、
前記データ処理装置は、
前記リードリクエストから算出されたアドレスパリティと、前記メモリに格納された前記アドレスパリティと、を比較し、比較結果を前記アドレス誤り信号の一種である簡易アドレス誤り信号として出力する第1パリティチェック部と、
前記メモリに格納された前記アドレスパリティを前記誤り訂正符号により訂正したパリティと、前記リードリクエストから算出されたアドレスパリティと、を比較し、比較結果を前記アドレス誤り信号の一種であるアドレス誤り確定信号として出力する第2パリティチェック部と、を更に備えることを特徴とする請求項1乃至請求項4のいずれか1項に記載のデータ処理装置。
The memory holds an address parity calculated from address information, an error correction code, and data in association with each other,
The data processing device includes:
A first parity check unit that compares the address parity calculated from the read request with the address parity stored in the memory and outputs a comparison result as a simple address error signal which is a kind of the address error signal; ,
A parity obtained by correcting the address parity stored in the memory by the error correction code is compared with an address parity calculated from the read request, and the comparison result is an address error determination signal which is a kind of the address error signal. The data processing apparatus according to claim 1, further comprising: a second parity check unit that outputs the data as a second parity check unit.
前記制御ユニットは、
前記簡易アドレス誤り信号がアドレスエラーを示す値の場合に、前記メモリから読み出されたデータを保持するリードレジスタを備え、
アドレスエラーを示す値を持つ前記簡易アドレス誤り信号が供給された後に、アドレスエラーが生じなかったことを示す前記アドレス誤り確定信号が供給された場合に、前記リードレジスタの保持する値を前記メモリからの読み出しデータとして前記プロセッサに供給し、前記保留期間を終了することを特徴とする請求項5に記載のデータ処理装置。
The control unit is
A read register for holding data read from the memory when the simple address error signal is a value indicating an address error;
After the simple address error signal having a value indicating an address error is supplied, when the address error confirmation signal indicating that no address error has occurred is supplied, the value held in the read register is read from the memory. The data processing apparatus according to claim 5, wherein the read data is supplied to the processor as the read data and the suspension period is ended.
前記メモリは、前記アドレスパリティをミラーリングして保持し、
前記第1パリティチェック部は、前記ミラーリングされたアドレスパリティが全て同じ値ではない場合に、アドレスエラーが生じたことを示す前記簡易アドレス誤り信号を出力することを特徴とする請求項5または請求項6に記載のデータ処理装置。
The memory mirrors and holds the address parity;
The first parity check unit outputs the simple address error signal indicating that an address error has occurred when the mirrored address parities are not all the same value. 6. A data processing apparatus according to 6.
前記ステートの種別は、
前記プロセッサからのリクエストを受信していない状態を示す"IDLE"と、
前記プロセッサからのリードリクエストを受信した状態を示す"Read"と、
前記プロセッサからのライトリクエストを受信した状態を示す"Write"と、
前記リードリクエストの処理結果として前記アドレス誤り信号によりアドレスエラーが通知された状態を示す"Re−Read1"と、
前記"Re−Read1"の状態に遷移した後に前記再実行処理を行った状態を示す"Re−Read2"と、
前記再実行処理において再度のアドレスエラーが検出された状態を示す"STOP"と、を含み、
前記書き込み込み制御信号生成部は、
前記アドレス誤り信号がアドレスエラーを示す値であり、前記ステートが"Read"であり、かつ前記プロセッサからライトリクエストが発行されている場合、または、
前記ステートが"Re−Read1"であり、かつ前記プロセッサからライトリクエストが発行されている場合、または、
前記アドレス誤り信号がアドレスエラーを示す値であり、前記ステートが"Re−Read2"であり、かつ前記プロセッサからライトリクエストが発行されている場合、または、
前記ステートが"STOP"であり、かつ前記プロセッサからライトリクエストが発行されている場合、
に前記書き込み制御信号を前記メモリへの書き込みを禁止する値として出力することを特徴とする請求項3に記載のデータ処理装置。
The state type is
“IDLE” indicating that the request from the processor has not been received;
“Read” indicating a state of receiving a read request from the processor;
“Write” indicating a state of receiving a write request from the processor;
"Re-Read1" indicating a state in which an address error is notified by the address error signal as a result of processing the read request;
“Re-Read2” indicating a state in which the re-execution process is performed after transitioning to the “Re-Read1” state;
"STOP" indicating a state where an address error is detected again in the re-execution process,
The write control signal generator is
The address error signal is a value indicating an address error, the state is "Read", and a write request is issued from the processor, or
When the state is “Re-Read1” and a write request is issued from the processor, or
The address error signal is a value indicating an address error, the state is "Re-Read2", and a write request is issued from the processor, or
When the state is “STOP” and a write request is issued from the processor,
4. The data processing apparatus according to claim 3, wherein the write control signal is output as a value for prohibiting writing to the memory.
請求項1乃至請求項8のいずれか1項に記載のデータ処理装置を搭載したマイクロコンピュータ。   A microcomputer equipped with the data processing device according to any one of claims 1 to 8. プロセッサから所望のアドレスへのリードリクエストまたはライトリクエストを受信し、メモリへのアクセスを制御する制御ユニットであって、
前記メモリに対する読み出し処理の実行中に前記所望のアドレスと異なるアドレスへのアクセスを示す値のアドレス誤り信号を受信した場合、前記メモリの書き込み処理を禁止し、前記プロセッサへの応答を保留し、該保留期間に前記読み出し処理の再実行処理を行う、制御ユニット。
A control unit that receives a read request or write request to a desired address from a processor and controls access to a memory,
When an address error signal having a value indicating an access to an address different from the desired address is received during execution of the read process on the memory, the memory write process is prohibited, a response to the processor is suspended, A control unit that performs the re-execution process of the read process during the holding period.
プロセッサと、メモリと、前記プロセッサから所望のアドレスへのリードリクエストまたはライトリクエストを受信し、前記メモリへのアクセスを制御する制御ユニットと、を備え、
前記制御ユニットは、前記メモリに対する読み出し処理の実行中に前記所望のアドレスと異なるアドレスへのアクセスを示す値のアドレス誤り信号を受信した場合、前記メモリの書き込み処理を禁止し、前記プロセッサへの応答を保留し、該保留期間に前記読み出し処理の再実行処理を行う、データ処理装置。
A processor, a memory, and a control unit that receives a read request or a write request to a desired address from the processor and controls access to the memory;
When the control unit receives an address error signal having a value indicating an access to an address different from the desired address during the execution of the read process for the memory, the control unit prohibits the memory write process and responds to the processor. A data processing apparatus that holds the data and performs the re-execution process of the read process during the hold period.
プロセッサからメモリへのアクセスを制御するメモリ制御方法であって、
前記メモリからのデータ読み出し処理の実行中に所望のアドレスと異なるアドレスへのアクセスを検出した場合、後続するメモリ書き込み処理を禁止し、前記プロセッサの後続リクエストの進行を中断する保留期間に移行し、該保留期間に前記読み出し処理の再実行処理を行う、メモリ制御方法。
A memory control method for controlling access to a memory from a processor,
When an access to an address different from a desired address is detected during the execution of a data read process from the memory, a subsequent memory write process is prohibited, and a transition is made to a suspension period in which the progress of subsequent requests of the processor is interrupted. A memory control method for performing re-execution processing of the read processing during the holding period.
JP2012016501A 2012-01-30 2012-01-30 Data processor, control unit and memory control method Pending JP2013156821A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012016501A JP2013156821A (en) 2012-01-30 2012-01-30 Data processor, control unit and memory control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012016501A JP2013156821A (en) 2012-01-30 2012-01-30 Data processor, control unit and memory control method

Publications (1)

Publication Number Publication Date
JP2013156821A true JP2013156821A (en) 2013-08-15

Family

ID=49051938

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012016501A Pending JP2013156821A (en) 2012-01-30 2012-01-30 Data processor, control unit and memory control method

Country Status (1)

Country Link
JP (1) JP2013156821A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101482971B1 (en) * 2014-06-25 2015-01-16 주식회사 엔트리브 Real-time data backup system and method using dual emulator
JP2018206336A (en) * 2017-06-02 2018-12-27 ルネサスエレクトロニクス株式会社 Semiconductor device and memory module

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101482971B1 (en) * 2014-06-25 2015-01-16 주식회사 엔트리브 Real-time data backup system and method using dual emulator
WO2015199345A1 (en) * 2014-06-25 2015-12-30 주식회사 엔트리브 Real-time data backup system and backup method using dual-emulator
JP2018206336A (en) * 2017-06-02 2018-12-27 ルネサスエレクトロニクス株式会社 Semiconductor device and memory module

Similar Documents

Publication Publication Date Title
JP5010271B2 (en) Error correction code generation method and memory control device
US9003260B2 (en) Partial-writes to ECC (error check code) enabled memories
US20080301528A1 (en) Method and apparatus for controlling memory
KR20140024060A (en) Rank-specific cyclic redundancy check
JP2014032516A (en) Storage device, controller, and data protection method
US20080209277A1 (en) Computer system and memory system
US8539284B2 (en) Application reliability and fault tolerant chip configurations
JP2009295252A (en) Semiconductor memory device and its error correction method
JP2013156821A (en) Data processor, control unit and memory control method
JP2018147166A (en) Arithmetic processing unit and control method of arithmetic processing unit
JPH1049448A (en) Error correction mechanism for redundant memory
US8286053B2 (en) Method and apparatus for reading data
JP2001290710A (en) Device for detecting data error
JP5843804B2 (en) Arithmetic apparatus and error processing method
KR20210116342A (en) Data processing device and data processing method
JP7107696B2 (en) Failure detection method for semiconductor device and semiconductor memory
JPH0773114A (en) Memory control circuit for space digital computer
JP4747062B2 (en) Device migration method, device migration method, migration control apparatus, and program
JP2009116978A (en) Semiconductor storage device
JP2010061258A (en) Duplex processor system and processor duplex method
JP2005234855A (en) Information processor
JPH04162161A (en) Storage controller
JP2016177717A (en) Memory control device and memory control method
JP5888419B2 (en) Data processing apparatus, processor, and operation history recording method
JP2021033725A (en) Method of diagnosing dram