JP2018147166A - 演算処理装置及び演算処理装置の制御方法 - Google Patents

演算処理装置及び演算処理装置の制御方法 Download PDF

Info

Publication number
JP2018147166A
JP2018147166A JP2017040528A JP2017040528A JP2018147166A JP 2018147166 A JP2018147166 A JP 2018147166A JP 2017040528 A JP2017040528 A JP 2017040528A JP 2017040528 A JP2017040528 A JP 2017040528A JP 2018147166 A JP2018147166 A JP 2018147166A
Authority
JP
Japan
Prior art keywords
error
data
unit
error check
information
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.)
Granted
Application number
JP2017040528A
Other languages
English (en)
Other versions
JP6799262B2 (ja
Inventor
圭佑 西田
Keisuke Nishida
圭佑 西田
志郎 鴨志田
Shiro Kamoshida
志郎 鴨志田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017040528A priority Critical patent/JP6799262B2/ja
Priority to US15/897,242 priority patent/US10468115B2/en
Publication of JP2018147166A publication Critical patent/JP2018147166A/ja
Application granted granted Critical
Publication of JP6799262B2 publication Critical patent/JP6799262B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • 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/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • 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/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】完了前のデータと完了後のデータを1個の記憶部に記憶させることができる演算処理装置を提供することを課題とする。【解決手段】演算処理装置は、エラーチェック訂正情報生成部(416)と、エラーを検出した場合、エラーチェック訂正情報及びエラー訂正不能情報が付加されたデータを記憶するとともに、エラーを検出しなかった場合、エラーチェック訂正情報が付加されたデータを記憶する記憶部(417)と、演算部がエラーを検出した場合、記憶部が記憶する全てのデータを読み出すとともに読み出した全てのデータの各々に付加されているエラーチェック訂正情報に基づいて、読み出した各データのエラーをチェックし、訂正可能なエラーが検出された場合、エラーチェック訂正情報に基づいてエラーが検出されたデータを訂正する処理部(420)とを有する。【選択図】図4

Description

本発明は、演算処理装置及び演算処理装置の制御方法に関する。
同一の管理情報が3箇所以上の複数領域に格納されたメモリを有するメモリシステムが知られている(特許文献1参照)。管理情報読み出し手段は、複数領域のそれぞれに格納された管理情報を読み出す。管理情報比較手段は、管理情報読み出し手段によって読み出された複数の管理情報を比較する。第1のエラー検出手段は、管理情報比較手段による比較動作において不一致判定が行われたときに、エラーの発生を検出する。
また、メモリエリアをOS管理エリアとユーザーエリアとに分割し、各エリアのトランザクションを1対1にマッピングする通信制御装置が知られている(特許文献2参照)。ユーザーからは、ユーザーエリアのみアクセス可能とし、OSからは両エリアともにアクセス可能とする。通信制御装置は、ユーザーがハントしたいユーザーエリア内のトランザクションを割り当て、ユーザーが解放したいトランザクションの異常検出をOS管理エリアのマッピング情報に基づいて行う。
特開2002−157168号公報 特開平9−16499号公報
演算処理装置は、コミット前のデータを記憶するワークレジスタと、コミット後のデータを記憶する汎用レジスタを有する。しかし、演算処理装置は、ワークレジスタと汎用レジスタの両方を有することにより、面積及び消費電力が増大してしまう。
1つの側面では、本発明の目的は、完了前のデータと完了後のデータを1個の記憶部に記憶することにより、面積及び消費電力の増加を抑制させることができる演算処理装置及び演算処理装置の制御方法を提供することである。
演算処理装置は、入力されたデータのエラーをエラーチェック情報に基づいてチェックする第1のエラーチェック部と、前記第1のエラーチェック部がエラーを検出した場合、入力された前記データに対してエラーチェック訂正情報及びエラー訂正不能情報を付加して出力し、前記第1のエラーチェック部がエラーを検出しなかった場合、入力された前記データに対してエラーチェック訂正情報を付加して出力する第1のエラーチェック訂正情報生成部と、前記第1のエラーチェック部がエラーを検出した場合、前記エラーチェック訂正情報及び前記エラー訂正不能情報が付加されたデータを記憶するとともに、前記第1のエラーチェック部がエラーを検出しなかった場合、前記エラーチェック訂正情報が付加されたデータを記憶する記憶部と、前記記憶部が記憶する完了前のデータを完了した場合、完了後のデータを命令順に前記記憶部に記憶する命令制御部と、前記記憶部が記憶するデータを読み出し、読み出した前記データに付加する前記エラーチェック訂正情報に基づいて、読み出した前記データのエラーをチェックし、エラーが検出されなかった場合、読み出した前記データに基づいて演算を行う演算部と、前記演算部がエラーを検出した場合、前記記憶部が記憶する全てのデータを読み出すとともに読み出した全てのデータの各々に付加されているエラーチェック訂正情報に基づいて、読み出した各データのエラーをチェックし、訂正可能なエラーが検出された場合、前記エラーチェック訂正情報に基づいてエラーが検出されたデータを訂正する処理部とを有する。
1つの側面では、完了前のデータと完了後のデータを1個の記憶部に記憶させることにより、面積及び消費電力の増加を抑制できる。また、エラー訂正不能情報が付加されている場合には、不要なエラー情報の送信を防止することができる。
図1は、比較例による演算処理装置の構成例を示す図である。 図2(A)は命令制御ユニットの制御方法を示すフローチャートであり、図2(B)は演算ユニットの制御方法を示すフローチャートである。 図3は、エラー処理回路の制御方法を示すフローチャートである。 図4は、本実施形態による演算処理装置の構成例を示す図である。 図5(A)は図1のワークレジスタ(ROB)、汎用レジスタ(GPR)及びエラー処理回路を示す図であり、図5(B)は図4のレジスタ(PGPR)、命令制御ユニット及び定義テーブルを示す図である。 図6は、第1のエラーチェック訂正情報生成回路の処理を示す図である。 図7(A)は命令制御ユニットの制御方法を示すフローチャートであり、図7(B)は演算ユニットの制御方法を示すフローチャートである。 図8は、エラー処理回路の制御方法を示すフローチャートである。 図9は、図4の演算処理装置の制御方法の具体例を示す図である。
(比較例)
図1は、比較例による演算処理装置101の構成例を示す図である。演算処理装置101は、メインメモリ102に接続され、命令制御ユニット111、演算ユニット112、命令キャッシュメモリ113、データキャッシュメモリ114、第1のエラーチェック訂正情報生成回路115、レジスタ群120、エラー処理回路118、第2のエラーチェック訂正情報生成回路119、パリティ復元回路121、及びパリティチェック回路122を有する。命令制御ユニット111は、IU(Instruction Unit)である。演算ユニット112は、EU(Execution Unit)である。レジスタ群120は、ワークレジスタ116及び汎用レジスタ117を有する。ワークレジスタ116は、ROB(Re Order Buffer)である。汎用レジスタ117は、GPR(General Purpose Register)である。
命令キャッシュメモリ113は、メインメモリ102に記憶されている命令のうちの一部の命令を記憶する。データキャッシュメモリ114は、メインメモリ102に記憶されているデータのうちの一部のデータ(パリティビットを含む)を記憶する。命令制御ユニット111は、命令キャッシュメモリ113に記憶されているロード命令を読み出し、そのロード命令を実行する。具体的には、命令制御ユニット111は、データキャッシュメモリ114に記憶されているデータを読み出し、その読み出したデータを第1のエラーチェック訂正情報生成回路115を介してワークレジスタ(ROB)116に書き込む。第1のエラーチェック訂正情報生成回路115は、データキャッシュメモリ114から読み出されたデータを基にエラーチェック訂正情報(ECC情報)を生成し、そのエラーチェック訂正情報が付加されたデータをワークレジスタ(ROB)116に出力する。エラーチェック訂正情報は、データのエラーを検出し、その検出されたエラーを訂正するための情報である。
ワークレジスタ(ROB)116は、そのエラーチェック訂正情報が付加されたデータを、コミット前(完了前)のデータとして記憶する。命令制御ユニット111は、アウトオブオーダー実行が可能である。また、例えば、命令制御ユニット111が誤って2重のロード命令を実行した場合には、データが破壊され、ワークレジスタ(ROB)116に無効なエラーデータが書き込まれてしまう場合がある。そこで、命令制御ユニット111は、ワークレジスタ(ROB)116内の有効なデータのみを命令順にコミット(完了)し、コミット後(完了後)のデータを汎用レジスタ(GPR)117に書き込む。
図2(A)、(B)及び図3は、図1の演算処理装置101の制御方法を示すフローチャートである。図2(A)は、命令制御ユニット111の制御方法を示すフローチャートである。図2(B)は、演算ユニット112の制御方法を示すフローチャートである。図3は、エラー処理回路118の制御方法を示すフローチャートである。
まず、図2(A)のステップS201では、命令制御ユニット111は、読み出しアドレス及び書き込みアドレスを含む演算命令を演算ユニット112に発行する。読み出しアドレスは、汎用レジスタ(GPR)117のアドレスである。書き込みアドレスは、ワークレジスタ(ROB)116のアドレスである。
次に、図2(B)のステップS211では、演算ユニット112は、読み出しアドレス及び書き込みアドレスを含む演算命令を受信する。次に、ステップS212では、演算ユニット112は、パリティ復元回路121を介して、その読み出しアドレスが示す汎用レジスタ(GPR)117のアドレスからエラーチェック訂正情報が付加されたデータを読み出す。次に、ステップS213では、演算ユニット112は、そのエラーチェック訂正情報を基にデータのエラーをチェックし、エラーが検出されなかった場合にはステップS216に処理を進め、エラーが検出された場合にはステップS214に処理を進める。
ステップS216では、演算ユニット112は、読み出したデータを基に演算を行う。そして、演算ユニット112は、パリティチェック回路122及び第2のエラーチェック訂正情報生成回路119を介して、書き込みアドレスが示すワークレジスタ(ROB)116のアドレスに、演算後のデータを書き込む。第2のエラーチェック訂正情報生成回路119は、演算ユニット112により演算されたデータを基にエラーチェック訂正情報を生成し、エラーチェック訂正情報が付加されたデータをワークレジスタ(ROB)116に出力する。ワークレジスタ(ROB)116は、エラーチェック訂正情報が付加されたデータをコミット前のデータとして記憶する。その後、命令制御ユニット111は、ワークレジスタ(ROB)116内のコミット前のデータをコミットし、コミット後のデータを汎用レジスタ(GPR)117に書き込む。これに対し、ステップS214では、演算ユニット112は、エラー情報を命令制御ユニット111に送信する。
図2(A)のステップS202では、命令制御ユニット111は、一定時間内にエラー情報を受信したか否かを判定し、エラー情報を受信した場合にはステップS203に処理を進め、エラー情報を受信しなかった場合には処理を終了する。ステップS203では、命令制御ユニット111は、エラー処理回路118に対して、エラー処理の開始を指示し、処理を終了する。
エラー処理回路118は、命令制御ユニット111からエラー処理の開始の指示を受けると、図3の処理を開始する。ステップS301では、エラー処理回路118は、汎用レジスタ(GPR)117内のすべてのデータを順次読み出す。次に、ステップS302では、エラー処理回路118は、その読み出したデータに付加されているエラーチェック訂正情報を基にその読み出したデータのエラーをチェックする。そして、エラー処理回路118は、エラーが検出された場合にはステップS303に処理を進め、エラーが検出されなかった場合にはステップS306に処理を進める。
ステップS303では、エラー処理回路118は、検出されたエラーが訂正可能なエラー及び訂正可能でないエラーのいずれであるのかを判定する。例えば、データが1ビットエラーである場合には、エラー処理回路118は、エラーの検出及び訂正が可能である。また、データが2ビットエラーである場合には、エラー処理回路118は、エラーの検出が可能であり、エラーの訂正が不能である。また、データが3ビット以上のエラーである場合には、エラー処理回路118は、エラーを検出できない場合がある。エラー処理回路118は、検出されたエラーが訂正可能なエラー(1ビットエラー)である場合にはステップS305に処理を進め、検出されたエラーが訂正可能でないエラー(2ビットエラー)である場合にはステップS304に処理を進める。
ステップS304では、エラー処理回路118は、システムエラーを命令制御ユニット111を介して上位装置に送信する。ステップS305では、エラー処理回路118は、エラーチェック訂正情報を基にデータを訂正し、ステップS306に処理を進める。ステップS306では、エラー処理回路118は、汎用レジスタ(GPR)117内のすべてのデータを読み出したか否かを判定する。そして、エラー処理回路118は、すべてのデータを読み出していない場合には、ステップS301に戻り、汎用レジスタ(GPR)117内の次のデータを読み出し、上記の処理を繰り返す。また、エラー処理回路118は、すべてのデータを読み出した場合には、処理を終了し、図2(B)のステップS215の処理に遷移する。
図2(B)のステップS215では、演算ユニット112は、図3のエラー処理回路118の処理が終了するまでの一定時間待機し、その後、ステップS212に処理を戻す。ステップS212では、演算ユニット112は、読み出しアドレスが示す汎用レジスタ(GPR)117内のデータを読み出す。読み出されたデータは、ステップS305でエラー訂正されている。次に、ステップS213では、演算ユニット112は、読み出したデータに付加されているエラーチェック訂正情報を基にデータのエラーをチェックする。読み出されたデータがエラー訂正されているので、演算ユニット112は、エラーを検出せず、ステップS216で、読み出したデータを基に演算を行う。
ここで、図3において、エラー処理回路118が、図2(B)のステップS212で演算ユニット112が読み出したデータだけでなく、汎用レジスタ(GPR)117内のすべてのデータについて上記の処理を行う理由を説明する。ステップS212で演算ユニット112が汎用レジスタ(GPR)117から読み出したデータがエラーである場合には、そのエラーのデータを基に生成されたデータが汎用レジスタ(GPR)117に記憶されている可能性がある。そのエラーのデータを基に生成されたデータは、エラーデータである可能性が高い。すなわち、演算ユニット112が汎用レジスタ(GPR)117から読み出したデータがエラーである場合には、汎用レジスタ(GPR)117内の他のデータもエラーである可能性がある。そのため、エラー処理回路118は、汎用レジスタ(GPR)117内のすべてのデータに対して、図3の処理を行う。
なお、演算ユニット112は、汎用レジスタ(GPR)117からデータを読み出す他に、処理の高速化のために、データキャッシュメモリ114又はワークレジスタ(ROB)116からデータを読み出すことも可能である。
(実施形態)
図4は、本実施形態による演算処理装置401の構成例を示す図である。演算処理装置401は、メインメモリ402に接続され、命令制御ユニット411、演算ユニット412、命令キャッシュメモリ413、データキャッシュメモリ414、第1のパリティチェック回路415、第1のエラーチェック訂正情報生成回路416、レジスタ417、定義テーブル418、パリティ復元回路419、エラー処理回路420、第2のパリティチェック回路421、及び第2のエラーチェック訂正情報生成回路422を有する。命令制御ユニット411は、IU(Instruction Unit)である。演算ユニット412は、EU(Execution Unit)である。エラー処理回路420は、リトライカウンタ423を有する。レジスタ417は、PGPR(Physical GPR)の記憶部であり、図1のワークレジスタ(ROB)116及び汎用レジスタ(GPR)117を1個のレジスタにまとめたものである。これにより、演算処理装置401の面積及び消費電力を低減することができる。
図5(A)は、図1のワークレジスタ(ROB)116、汎用レジスタ(GPR)117及びエラー処理回路118を示す図である。ワークレジスタ(ROB)116は、上記のように、命令制御ユニット111のコミット前(完了前)のデータを記憶する。汎用レジスタ(GPR)117は、命令制御ユニット111のコミット後(完了後)のデータを記憶する。エラー処理回路118は、図3に示したように、汎用レジスタ(GPR)117内のコミット後のデータに対して処理を行う。
図5(B)は、図4のレジスタ(PGPR)417、命令制御ユニット411及び定義テーブル418を示す図である。レジスタ(PGPR)417は、図1のワークレジスタ(ROB)116及び汎用レジスタ(GPR)117を1個のレジスタにまとめたものであり、命令制御ユニット411のコミット前のデータと命令制御ユニット411のコミット後のデータを記憶する。定義テーブル418は、命令制御ユニット411の制御の下、レジスタ(PGPR)417のコミット前のデータのアドレスとレジスタ(PGPR)417のコミット後のデータのアドレスを記憶する。命令制御ユニット411は、定義テーブル418を参照し、レジスタ(PGPR)417に記憶されているコミット前のデータを命令順にコミット(完了)し、コミット後のデータとしてレジスタ(PGPR)417に記憶させ、定義テーブル418を更新する。
ここで、図4のエラー処理回路420が図3と同様の処理を行う場合を説明する。ステップS301では、エラー処理回路420は、レジスタ(PGPR)417内のすべてのデータを順次読み出す。すなわち、エラー処理回路420は、レジスタ(PGPR)417に記憶されているコミット前のデータとコミット後のデータの両方を読み出す。なお、エラー処理回路420は、定義テーブル418を参照できないので、コミット前のデータとコミット後のデータとを区別することができない。ここで、上記のように、コミット前のデータには、2重のロード命令等による無効なエラーデータが含まれている可能性がある。その場合、エラー処理回路420は、ステップS302及びS303を介して、ステップS304に進み、不要なシステムエラー情報を送信してしまう課題がある。なお、図5(A)の場合には、エラー処理回路118は、レジスタ(GPR)117内のコミット後のデータのみを読み出すので、そのような課題が発生しない。以下、その課題を解決するための実施形態を説明する。
図4において、命令キャッシュメモリ413は、メインメモリ402に記憶されている命令のうちの一部の命令を記憶する。データキャッシュメモリ414は、図6に示すように、メインメモリ402に記憶されているデータのうちの一部のデータ601及びパリティビット602を記憶する。8ビットのデータ601に対して、1ビットのパリティビット602が付加される。パリティビット602は、データ601のエラーをチェックするためのエラーチェック情報である。
命令制御ユニット411は、プログラムカウンタに従い、命令キャッシュメモリ413に記憶されているロード命令を読み出し、そのロード命令を実行する。具体的には、命令制御ユニット411は、データキャッシュメモリ414に記憶されているデータ601及びパリティビット602を読み出し、その読み出したデータ601及びパリティビット602を第1のパリティチェック回路415及び第1のエラーチェック訂正情報生成回路416を介してレジスタ(PGPR)417に書き込む。
第1のパリティチェック回路415は、第1のエラーチェック回路であり、データ601及びパリティビット602を入力し、パリティビット602を基にデータ601のエラーをチェックする。
第1のエラーチェック訂正情報生成回路416は、第1のパリティチェック回路415によりエラーが検出されなかった場合には、図6に示すように、データ601に対してエラーチェック訂正情報(ECC情報)603を付加してレジスタ(PGPR)417に出力する。エラーチェック訂正情報603は、データ601のエラーを検出し、その検出されたエラーを訂正するための情報である。また、第1のエラーチェック訂正情報生成回路416は、第1のパリティチェック回路415によりエラーが検出された場合には、データ601に対してエラー訂正不能情報及びエラーチェック訂正情報603を付加してレジスタ(PGPR)417に出力する。
具体的には、第1のエラーチェック訂正情報生成回路416は、第1のパリティチェック回路415によりエラーが検出されなかった場合には、64ビットのデータ601及び8ビットのパリティビット602を基に、例えば13ビットのエラーチェック訂正情報603を生成する。エラーチェック訂正情報603は、パリティビット602の情報を含み、パリティビット602を復元可能である。そして、第1のエラーチェック訂正情報生成回路416は、64ビットのデータ601及びエラーチェック訂正情報603をレジスタ(PGPR)417に出力する。
また、第1のエラーチェック訂正情報生成回路416は、第1のパリティチェック回路415によりエラーが検出された場合には、64ビットのデータ601及び8ビットのパリティビット602を基に、例えば13ビットのエラーチェック訂正情報603を生成し、エラーチェック訂正情報603のビット操作により、エラーチェック訂正情報603にエラー訂正不能情報を付加する。例えば、第1のエラーチェック訂正情報生成回路416は、エラーチェック訂正情報603の全ビット又は2ビットを反転することにより、エラーチェック訂正情報603にエラー訂正不能情報を付加する。エラーチェック訂正情報603の全ビット又は2ビットが反転したビットの組み合わせは、通常のエラー(例えばソフトエラー)では発生する確率が極めて低いために、エラーチェック訂正情報603のビットの組み合わせをチェックすることにより、エラー訂正不能情報が付加されているか否かを判断することができる。その後、第1のエラーチェック訂正情報生成回路416は、64ビットのデータ601及びエラー訂正不能情報が付加された13ビットのエラーチェック訂正情報603をレジスタ(PGPR)417に出力する。なお、第1のエラーチェック訂正情報生成回路416は、データ601とエラーチェック訂正情報603とエラー訂正不能情報をレジスタ(PGPR)417に出力してもよい。
レジスタ(PGPR)417は、第1のパリティチェック回路415によりエラーが検出されなかった場合には、エラーチェック訂正情報603が付加されたデータ601を記憶する。また、レジスタ(PGPR)417は、第1のパリティチェック回路415によりエラーが検出された場合には、エラー訂正不能情報及びエラーチェック訂正情報603が付加されたデータ601を記憶する。
命令制御ユニット411は、レジスタ(PGPR)417に記憶されているコミット前のデータを命令順にコミットし、レジスタ(PGPR)417に記憶されているコミット前のデータをコミット後のデータとしてレジスタ(PGPR)417に記憶させ、定義テーブル418を更新する。
レジスタ(PGPR)417は、エラーチェック訂正情報603が付加されたデータ601を、コミット前のデータとして記憶する。命令制御ユニット411は、アウトオブオーダー実行が可能である。また、例えば、命令制御ユニット411が誤って2重のロード命令を実行した場合には、データが破壊され、レジスタ(PGPR)417に無効なエラーデータがコミット前のデータとして書き込まれてしまう場合がある。そこで、命令制御ユニット411は、レジスタ(PGPR)417内の有効なコミット前のデータのみを命令順にコミットし、コミット後のデータとしてレジスタ(PGPR)417に記憶させる。
図7(A)、(B)及び図8は、図4の演算処理装置401の制御方法を示すフローチャートである。図7(A)は、命令制御ユニット411の制御方法を示すフローチャートである。図7(B)は、演算ユニット412の制御方法を示すフローチャートである。図8は、エラー処理回路420の制御方法を示すフローチャートである。
まず、図7(A)のステップS701では、命令制御ユニット411は、定義テーブル418を参照し、演算命令を行うためのレジスタ(PGPR)417の読み出しアドレス及び書き込みアドレスを決定する。次に、ステップS702では、命令制御ユニット411は、読み出しアドレス及び書き込みアドレスを含む演算命令を演算ユニット412に発行する。読み出しアドレス及び書き込みアドレスは、レジスタ(PGPR)417のアドレスである。
次に、図7(B)のステップS711では、演算ユニット412は、読み出しアドレス及び書き込みアドレスを含む演算命令を受信する。次に、ステップS712では、演算ユニット412は、パリティ復元回路419を介して、その読み出しアドレスが示すレジスタ(PGPR)417のアドレスからエラーチェック訂正情報603が付加されたデータ601を読み出す。パリティ復元回路419は、エラーチェック情報復元回路であり、演算ユニット412がレジスタ(PGPR)417から読み出したデータ601及びデータ601に付加されているエラーチェック訂正情報603を入力し、パリティビット602を復元し、パリティビット602を演算ユニット412に出力する。
次に、ステップS713では、演算ユニット412は、データ601に付加されているエラーチェック訂正情報603を基にデータ601のエラーをチェックし、エラーが検出されなかった場合にはステップS716に処理を進め、エラーが検出された場合にはステップS714に処理を進める。
ステップS716では、演算ユニット412は、読み出したデータ601を基に演算を行う。そして、演算ユニット412は、第2のパリティチェック回路421及び第2のエラーチェック訂正情報生成回路422を介して、書き込みアドレスが示すレジスタ(PGPR)417のアドレスに、演算後のデータをコミット前のデータとして書き込み、定義テーブル418を更新する。
演算ユニット412は、演算後のデータ601に対して上記のパリティビット602を承継可能である場合には、演算後のデータ601に対して上記のパリティビット602を付加する。また、演算ユニット412は、演算後のデータ601に対して上記のパリティビット602を承継可能でない場合には、演算後のデータ601に対して新たなパリティビット602を付加する。
第2のパリティチェック回路421は、第2のエラーチェック回路であり、演算ユニット412により演算されたデータ601及びデータ601に対応するパリティビット602を入力し、パリティビット602を基にデータ601のエラーをチェックする。
第2のエラーチェック訂正情報生成回路422は、第2のパリティチェック回路421によりエラーが検出されなかった場合には、図6と同様に、データ601に対してエラーチェック訂正情報603を付加してレジスタ(PGPR)417に出力する。また、第2のエラーチェック訂正情報生成回路422は、第2のパリティチェック回路421によりエラーが検出された場合には、データ601に対してエラー訂正不能情報及びエラーチェック訂正情報603を付加してレジスタ(PGPR)417に出力する。
具体的には、第2のエラーチェック訂正情報生成回路422は、第2のパリティチェック回路421によりエラーが検出されなかった場合には、64ビットのデータ601及び8ビットのパリティビット602を基に、例えば13ビットのエラーチェック訂正情報603を生成する。そして、第2のエラーチェック訂正情報生成回路422は、64ビットのデータ601及びエラーチェック訂正情報603をレジスタ(PGPR)417に出力する。
これに対し、第2のエラーチェック訂正情報生成回路422は、第2のパリティチェック回路421によりエラーが検出された場合には、64ビットのデータ601及び8ビットのパリティビット602を基に、例えば13ビットのエラーチェック訂正情報603を生成し、エラーチェック訂正情報603のビット操作により、エラーチェック訂正情報603にエラー訂正不能情報を付加する。例えば、第2のエラーチェック訂正情報生成回路422は、エラーチェック訂正情報603の全ビット又は2ビットを反転することにより、エラーチェック訂正情報603にエラー訂正不能情報を付加する。その後、第2のエラーチェック訂正情報生成回路422は、64ビットのデータ601及びエラー訂正不能情報が付加された13ビットのエラーチェック訂正情報603をレジスタ(PGPR)417に出力する。なお、第2のエラーチェック訂正情報生成回路422は、データ601とエラーチェック訂正情報603とエラー訂正不能情報をレジスタ(PGPR)417に出力してもよい。
レジスタ(PGPR)417は、第2のパリティチェック回路421によりエラーが検出されなかった場合には、エラーチェック訂正情報603が付加されたデータ601をコミット前のデータとして記憶する。また、レジスタ(PGPR)417は、第2のパリティチェック回路421によりエラーが検出された場合には、エラー訂正不能情報及びエラーチェック訂正情報603が付加されたデータ601をコミット前のデータとして記憶する。
その後、命令制御ユニット411は、レジスタ(PGPR)417内のコミット前のデータをコミットし、そのコミット前のデータをコミット後のデータとしてレジスタ(PGPR)417に記憶させ、定義テーブル418を更新する。これに対し、ステップS714では、演算ユニット412は、エラー情報を命令制御ユニット411に送信する。
図7(A)のステップS703では、命令制御ユニット411は、一定時間内にエラー情報を受信したか否かを判定し、エラー情報を受信した場合にはステップS704に処理を進め、エラー情報を受信しなかった場合にはステップS705に処理を進める。ステップS704では、命令制御ユニット411は、エラー処理回路420に対して、エラー処理の開始を指示し、ステップS703に処理を戻す。
エラー処理回路420は、命令制御ユニット411からエラー処理の開始の指示を受けると、図8の処理を開始する。ステップS801では、エラー処理回路420は、レジスタ(PGPR)417内のすべてのデータ601を順次読み出す。次に、ステップS802では、エラー処理回路420は、その読み出したデータ601に付加されているエラーチェック訂正情報603を基にその読み出したデータ601のエラーをチェックする。そして、エラー処理回路420は、エラーが検出された場合にはステップS803に処理を進め、エラーが検出されなかった場合にはステップS808に処理を進める。
ステップS803では、エラー処理回路420は、検出されたエラーが訂正可能なエラー及び訂正可能でないエラーのいずれであるのかを判定する。例えば、データ601が1ビットエラーである場合には、エラー処理回路420は、エラーの検出及び訂正が可能である。また、データ601が2ビットエラーである場合には、エラー処理回路420は、エラーの検出が可能であり、エラーの訂正が不能である。また、データ601が3ビット以上のエラーである場合には、エラー処理回路420は、エラーを検出できない場合がある。エラー処理回路420は、検出されたエラーが訂正可能なエラー(1ビットエラー)である場合にはステップS804に処理を進め、検出されたエラーが訂正可能でないエラー(2ビットエラー)である場合にはステップS805に処理を進める。ステップS804では、エラー処理回路420は、エラーチェック訂正情報603を基にデータ601を訂正し、ステップS808に処理を進める。
ステップS805では、エラー処理回路420は、エラーが検出されたデータ601にエラー訂正不能情報が付加されているか否かをチェックする。具体的には、エラー処理回路420は、エラーが検出されたデータ601に付加されているエラーチェック訂正情報603にエラー訂正不能情報が付加されている場合には、エラーが検出されたデータ601にエラー訂正不能情報が付加されていると判定する。例えば、エラー処理回路420は、エラーチェック訂正情報603のビットの組み合わせが通常のエラーでは存在する可能子が極めて低い組み合わせである場合には、エラーが検出されたデータ601にエラー訂正不能情報が付加されていると判定する。エラー訂正不能情報は、上記のように、パリティチェック回路415又は421がエラーを検出した場合に付加される。そして、エラー処理回路420は、エラーが検出されたデータ601にエラー訂正情報が付加されていない場合にはステップS806に処理を進め、エラーが検出されたデータ601にエラー訂正情報が付加されている場合にはステップS807に処理を進める。
ステップS806では、エラー処理回路420は、システムエラー情報を命令制御ユニット411を介して上位装置に送信する。これに対し、ステップS807では、エラー処理回路420は、エラーが検出されたデータ601を無視し、システムエラー情報を送信せずに、ステップS808に処理を進める。誤った2重のロード命令によりデータ601が破壊された場合には、データ601にエラー訂正不能情報が付与され、コミット前のデータとしてレジスタ(PGPR)417に記憶される。このような無効データは、命令制御ユニット411によりコミットされない。エラー処理回路420は、エラー訂正不能情報が付加されている場合には、ステップS807において、システムエラー情報を送信しないので、不要なシステムエラー情報の送信を防止することができる。
ステップS808では、エラー処理回路420は、レジスタ(PGPR)417内のすべてのデータ601を読み出したか否かを判定する。そして、エラー処理回路420は、すべてのデータ601を読み出していない場合には、ステップS801に戻り、レジスタ(PGPR)417内の次のデータ601を読み出し、上記の処理を繰り返す。また、エラー処理回路420は、すべてのデータ601を読み出した場合には、ステップS809に処理を進める。
ここで、エラー処理回路420が、図7(B)のステップS712で演算ユニット412が読み出したデータだけでなく、レジスタ(PGPR)417内のすべてのデータについて上記の処理を行う理由を説明する。ステップS712で演算ユニット412がレジスタ(PGPR)417から読み出したデータがエラーである場合には、そのエラーのデータを基に生成されたデータがレジスタ(PGPR)417に記憶されている可能性がある。そのエラーのデータを基に生成されたデータは、エラーデータである可能性が高い。すなわち、演算ユニット412がレジスタ(PGPR)417から読み出したデータがエラーである場合には、レジスタ(PGPR)417内の他のデータもエラーである可能性がある。そのため、エラー処理回路420は、レジスタ(PGPR)417内のすべてのデータに対して、図8の処理を行う。
なお、演算ユニット412は、レジスタ(PGPR)417からデータを読み出す他に、処理の高速化のために、データキャッシュメモリ414からデータを読み出すことも可能である。
ステップS809では、エラー処理回路420は、リトライカウンタ423の値をインクリメントする。なお、リトライカウンタ423の値の初期値は0である。次に、ステップS810では、エラー処理回路420は、リトライカウンタ423の値が設定値(閾値)以上であるか否かを判定する。そして、エラー処理回路420は、リトライカウンタ423の値が設定値(閾値)以上である場合には、ステップS811に処理を進め、リトライカウンタ423の値が設定値(閾値)未満である場合には、処理を終了し、図7(B)のステップS715の処理に遷移する。ステップS811では、エラー処理回路420は、システムエラー情報を命令制御ユニット411を介して上位装置に送信する。
図7(B)のステップS715では、演算ユニット412は、図8のエラー処理回路240の処理が終了するまでの一定時間待機し、その後、ステップS712に処理を戻す。ステップS712では、演算ユニット412は、読み出しアドレスが示すレジスタ(PGPR)417内のデータ601を読み出す。読み出されたデータは、エラー訂正不能情報が付加されていない場合にはステップS804でエラー訂正されており、エラー訂正不能情報が付加されている場合にはエラー訂正されていない。次に、ステップS713では、演算ユニット412は、データ601に付加されているエラーチェック訂正情報603を基にデータ601のエラーをチェックする。
読み出されたデータがエラー訂正されている場合には、演算ユニット412は、エラーを検出せず、ステップS716で、読み出したデータ601を基に演算を行う。そして、演算ユニット412は、第2のパリティチェック回路421及び第2のエラーチェック訂正情報生成回路422を介して、書き込みアドレスが示すレジスタ(PGPR)417のアドレスに、演算後のデータをコミット前のデータとして書き込み、定義テーブル418を更新する。この場合、図7(A)のステップS703では、命令制御ユニット411は、ステップS704におけるエラー処理の開始指示後の一定時間内又は演算再開後の最初の命令コミット後までにエラー受信が無いため、ステップS705に処理を進める。ステップS705では、命令制御ユニット411は、エラー処理回路420に対して、リトライカウンタ423のリセットを指示する。すると、エラー処理回路420は、リトライカウンタ423の値を0にリセットする。
これに対し、読み出されたデータがエラー訂正されていない場合には、演算ユニット412は、エラーを検出し、ステップS714で、エラー情報を命令制御ユニット411に送信する。これにより、エラー処理回路420は、上記の図8の処理を繰り返す。この場合、演算ユニット412がステップS712で読み出したデータ601にエラー訂正不能情報が付加されている場合には、エラー処理回路420は、ステップS809で、リトライカウンタ423の値をインクリメントする。この処理を繰り返すと、やがて、リトライカウンタ423の値が設定値(閾値)以上になり、エラー処理回路420は、ステップS811で、システムエラー情報を送信し、処理を終了する。以上のように、エラー処理回路420は、リトライカウンタ423の値が設定値以上になった場合には、システムエラー情報を送信し、処理を終了させることにより、無限ループ処理を防止することができる。
上記のリトライカウンタ423の値は、演算ユニット412がステップS713でエラーを検出した回数に対応する。すなわち、ステップS809〜S811では、エラー処理回路420は、演算ユニット412がエラーを検出した回数をカウントし、演算ユニット412がエラーを検出した回数が設定値(閾値)以上になった場合には、システムエラー情報を送信する。
図9は、図4の演算処理装置401の制御方法の具体例を示す図である。レジスタ(PGPR)417は、例えば、第1〜第8のエントリのデータを記憶している。ステップS712では、演算ユニット412は、レジスタ(PGPR)417から第4のエントリのデータ601を読み出す。ステップS713では、演算ユニット412は、第4のエントリのデータ601に付加されているエラーチェック訂正情報603を基にエラーチェックを行い、エラーを検出する。すると、ステップS801では、エラー処理回路420は、レジスタ(PGPR)417内のすべての第1〜第8のエントリのデータ601を順次読み出す。
エラー処理回路420は、第1及び第5のエントリのデータ601に対して、エラーが検出されないので、ステップS802からS808に進み、何もしない。また、エラー処理回路420は、第2及び第7のエントリのデータ601に対して、1ビットエラーが検出されるので、ステップS804で、エラー訂正する。また、エラー処理回路420は、第3及び第8のエントリのデータ601に対して、訂正可能でないエラーが検出され、かつエラー訂正不能情報が付加されているので、ステップS807で、無視する。また、エラー処理回路420は、第4及び第6のエントリのデータ601に対して、2ビットエラーが検出され、かつエラー訂正不能情報が付加されていないので、ステップS806で、システムエラー情報を送信する。
以上のように、本実施形態では、コミット前のデータとコミット後のデータを1個のレジスタ(PGPR)417に記憶させることができるので、演算処理装置401の面積及び消費電力を低減することができる。また、エラー処理回路420は、データ601にエラー訂正不能情報が付加されている場合には、不要なシステムエラー情報の送信を防止することができる。また、エラー処理回路420は、リトライカウンタ423の値が設定値以上である場合には、システムエラー情報を送信することにより、無限ループ処理を防止することができる。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
401 演算処理装置
402 メインメモリ
411 命令制御ユニット
412 演算ユニット
413 命令キャッシュメモリ
414 データキャッシュメモリ
415 第1のパリティチェック回路
416 第1のエラーチェック訂正情報生成回路
417 レジスタ
418 定義テーブル
419 パリティ復元回路
420 エラー処理回路
421 第2のパリティチェック回路
422 第2のエラーチェック訂正情報生成回路
423 リトライカウンタ

Claims (10)

  1. 入力されたデータのエラーをエラーチェック情報に基づいてチェックする第1のエラーチェック部と、
    前記第1のエラーチェック部がエラーを検出した場合、入力された前記データに対してエラーチェック訂正情報及びエラー訂正不能情報を付加して出力し、前記第1のエラーチェック部がエラーを検出しなかった場合、入力された前記データに対してエラーチェック訂正情報を付加して出力する第1のエラーチェック訂正情報生成部と、
    前記第1のエラーチェック部がエラーを検出した場合、前記エラーチェック訂正情報及び前記エラー訂正不能情報が付加されたデータを記憶するとともに、前記第1のエラーチェック部がエラーを検出しなかった場合、前記エラーチェック訂正情報が付加されたデータを記憶する記憶部と、
    前記記憶部が記憶する完了前のデータを完了した場合、完了後のデータを命令順に前記記憶部に記憶する命令制御部と、
    前記記憶部が記憶するデータを読み出し、読み出した前記データに付加する前記エラーチェック訂正情報に基づいて、読み出した前記データのエラーをチェックし、エラーが検出されなかった場合、読み出した前記データに基づいて演算を行う演算部と、
    前記演算部がエラーを検出した場合、前記記憶部が記憶する全てのデータを読み出すとともに読み出した全てのデータの各々に付加されているエラーチェック訂正情報に基づいて、読み出した各データのエラーをチェックし、訂正可能なエラーが検出された場合、前記エラーチェック訂正情報に基づいてエラーが検出されたデータを訂正する処理部とを有する演算処理装置。
  2. 前記演算部が訂正可能でないエラーを検出した場合、前記エラーが検出されたデータに前記エラー訂正不能情報が付加されているかをチェックし、前記エラー訂正不能情報が付加されていない場合にはエラー情報を送信し、前記エラー訂正不能情報が付加されている場合にはエラー情報を送信しない請求項1に記載の演算処理装置。
  3. 前記演算部は、前記処理部によるデータの訂正の後、前記記憶部が記憶するデータを読み出し、前記読み出したデータに付加されている前記エラーチェック訂正情報を基に前記読み出したデータのエラーをチェックし、エラーが検出されなかった場合には、前記読み出したデータを基に演算を行い、
    前記処理部は、前記演算部がエラーを検出した回数をカウントし、前記演算部がエラーを検出した回数が閾値以上になった場合には、エラー情報を送信する請求項1又は2に記載の演算処理装置。
  4. さらに、前記エラーチェック情報が付加された前記データを記憶するデータキャッシュメモリ部を有し、
    前記命令制御部は、命令に応じて、前記データキャッシュメモリ部に記憶されている前記データを、前記第1のエラーチェック部及び前記第1のエラーチェック訂正情報生成部を介して前記記憶部に完了前のデータとして書き込む請求項1乃至3のいずれか1項に記載の演算処理装置。
  5. さらに、前記記憶部の完了前のデータのアドレスと前記記憶部の完了後のデータのアドレスを記憶するテーブル部を有し、
    前記命令制御部は、前記テーブル部を参照し、前記記憶部に記憶されている完了前のデータを完了後のデータとして前記記憶部に記憶させ、前記テーブル部を更新する請求項1乃至4のいずれか1項に記載の演算処理装置。
  6. 前記命令制御部は、前記テーブル部を参照し、アドレスを含む演算命令を発行し、
    前記演算部は、前記アドレスを含む演算命令を受信し、前記アドレスのデータを前記記憶部から読み出す請求項5に記載の演算処理装置。
  7. 前記第1のエラーチェック訂正情報生成部は、前記データ及び前記エラーチェック情報を基に前記エラーチェック訂正情報を生成し、
    さらに、前記演算部が前記記憶部から読み出した前記データ及び前記データに付加されている前記エラーチェック訂正情報に基づいて、前記エラーチェック情報を復元するエラーチェック情報復元部を有する請求項1乃至6のいずれか1項に記載の演算処理装置。
  8. 前記演算部は、前記演算されたデータ及び前記データに対応するエラーチェック情報を出力し、
    さらに、前記演算部が演算したデータのエラーをエラーチェック情報に基づいてチェックする第2のエラーチェック部と、
    前記第2のエラーチェック部がエラーを検出した場合、前記演算部が演算したデータに対してエラーチェック訂正情報及びエラー訂正不能情報を付加して出力し、前記第2のエラーチェック部がエラーを検出しなかった場合、前記演算部が演算したデータに対してエラーチェック訂正情報を付加して出力する第2のエラーチェック訂正情報生成部とを有し、
    前記記憶部は、前記第2のエラーチェック部がエラーを検出した場合、前記エラーチェック訂正情報及び前記エラー訂正不能情報が付加された前記データを記憶し、前記第2のエラーチェック部がエラーを検出しなかった場合、前記エラーチェック訂正情報が付加された前記データを記憶する請求項1乃至7のいずれか1項に記載の演算処理装置。
  9. 前記エラー訂正不能情報は、前記エラーチェック訂正情報のビット操作により付加される請求項1乃至8のいずれか1項に記載の演算処理装置。
  10. 演算処理装置の制御方法において、
    前記演算処理装置が有する第1のエラーチェック部が、入力されたデータのエラーをエラーチェック情報に基づいてチェックし、
    前記演算処理装置が有する第1のエラーチェック訂正情報生成部が、前記第1のエラーチェック部がエラーを検出した場合、入力された前記データに対してエラーチェック訂正情報及びエラー訂正不能情報を付加して出力し、前記第1のエラーチェック部がエラーを検出しなかった場合、入力された前記データに対してエラーチェック訂正情報を付加して出力し、
    前記演算処理装置が有する記憶部が、前記第1のエラーチェック部がエラーを検出した場合、前記エラーチェック訂正情報及び前記エラー訂正不能情報が付加されたデータを記憶するとともに、前記第1のエラーチェック部がエラーを検出しなかった場合、前記エラーチェック訂正情報が付加されたデータを記憶し、
    前記演算処理装置が有する命令制御部が、前記記憶部が記憶する完了前のデータを完了した場合、完了後のデータを命令順に前記記憶部に記憶し、
    前記演算処理装置が有する演算部が、前記記憶部が記憶するデータを読み出し、読み出した前記データに付加する前記エラーチェック訂正情報に基づいて、読み出した前記データのエラーをチェックし、エラーが検出されなかった場合、読み出した前記データに基づいて演算を行い、
    前記演算処理装置が有する処理部が、前記演算部がエラーを検出した場合、前記記憶部が記憶する全てのデータを読み出すとともに読み出した全てのデータの各々に付加されているエラーチェック訂正情報に基づいて、読み出した各データのエラーをチェックし、訂正可能なエラーが検出された場合、前記エラーチェック訂正情報に基づいてエラーが検出されたデータを訂正する演算処理装置の制御方法。
JP2017040528A 2017-03-03 2017-03-03 演算処理装置及び演算処理装置の制御方法 Active JP6799262B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017040528A JP6799262B2 (ja) 2017-03-03 2017-03-03 演算処理装置及び演算処理装置の制御方法
US15/897,242 US10468115B2 (en) 2017-03-03 2018-02-15 Processor and control method of processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017040528A JP6799262B2 (ja) 2017-03-03 2017-03-03 演算処理装置及び演算処理装置の制御方法

Publications (2)

Publication Number Publication Date
JP2018147166A true JP2018147166A (ja) 2018-09-20
JP6799262B2 JP6799262B2 (ja) 2020-12-16

Family

ID=63356921

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017040528A Active JP6799262B2 (ja) 2017-03-03 2017-03-03 演算処理装置及び演算処理装置の制御方法

Country Status (2)

Country Link
US (1) US10468115B2 (ja)
JP (1) JP6799262B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020102087A (ja) * 2018-12-25 2020-07-02 ルネサスエレクトロニクス株式会社 半導体装置、メモリコントローラ、及びメモリアクセス方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10901747B2 (en) 2018-11-30 2021-01-26 Western Digital Technologies, Inc. Unified store buffer
KR20210129490A (ko) * 2020-04-20 2021-10-28 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0916499A (ja) 1995-06-30 1997-01-17 Fujitsu Ltd 通信制御装置
JP4808839B2 (ja) 2000-11-16 2011-11-02 インヴェンサス・コーポレイション メモリシステム
JP2006179101A (ja) * 2004-12-22 2006-07-06 Fujitsu Ltd 半導体記憶装置
JP2011108306A (ja) * 2009-11-16 2011-06-02 Sony Corp 不揮発性メモリおよびメモリシステム
US9268632B2 (en) * 2010-09-24 2016-02-23 Rambus Inc. Memory device with ECC history table
JP2012113466A (ja) * 2010-11-24 2012-06-14 Fujitsu Ltd メモリコントローラ及び情報処理システム
JP2013137708A (ja) * 2011-12-28 2013-07-11 Toshiba Corp メモリコントローラ、データ記憶装置およびメモリ制御方法
KR20140042362A (ko) * 2012-09-28 2014-04-07 에스케이하이닉스 주식회사 반도체 장치 및 그 동작 방법
JP6275427B2 (ja) * 2013-09-06 2018-02-07 株式会社東芝 メモリ制御回路およびキャッシュメモリ
US9785501B2 (en) * 2014-02-18 2017-10-10 Sandisk Technologies Llc Error detection and handling for a data storage device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020102087A (ja) * 2018-12-25 2020-07-02 ルネサスエレクトロニクス株式会社 半導体装置、メモリコントローラ、及びメモリアクセス方法
CN111382000A (zh) * 2018-12-25 2020-07-07 瑞萨电子株式会社 半导体装置、存储器控制器与存储器访问方法
JP7184632B2 (ja) 2018-12-25 2022-12-06 ルネサスエレクトロニクス株式会社 半導体装置
CN111382000B (zh) * 2018-12-25 2024-01-12 瑞萨电子株式会社 半导体装置、存储器控制器与存储器访问方法

Also Published As

Publication number Publication date
US10468115B2 (en) 2019-11-05
JP6799262B2 (ja) 2020-12-16
US20180253354A1 (en) 2018-09-06

Similar Documents

Publication Publication Date Title
US10310926B2 (en) Data error detection in computing systems
JP5212369B2 (ja) 演算器及び演算器の制御方法
US8990657B2 (en) Selective masking for error correction
US10657010B2 (en) Error detection triggering a recovery process that determines whether the error is resolvable
WO2019136595A1 (zh) 处理i2c总线死锁的方法、电子设备和通信系统
US8566672B2 (en) Selective checkbit modification for error correction
US20120117428A1 (en) Cache memory system
JP5785477B2 (ja) ミラー化データ・ストレージ・システムにおけるエラーを検出するための方法、コンピュータ・プログラム及びシステム
JP6799262B2 (ja) 演算処理装置及び演算処理装置の制御方法
US9830218B2 (en) Cache memory with fault tolerance
US9639418B2 (en) Parity protection of a register
US20110035643A1 (en) System and Apparatus for Error-Correcting Register Files
JP4819843B2 (ja) メモリ装置のためのeccコード生成方法
US11372720B2 (en) Systems and methods for encoding metadata
US9043655B2 (en) Apparatus and control method
JP2016059012A (ja) 受信装置、送信装置およびデータ転送システム
CN109388519B (zh) 错误恢复方法及装置、处理器
JP2016122338A (ja) エラー訂正装置
JP2013156821A (ja) データ処理装置、制御ユニット、メモリ制御方法
JP2010061258A (ja) デュプレックスプロセッサシステム及びプロセッサ二重化方法
CN117234967A (zh) 数据处理方法、装置、存储节点及存储介质
JPH0675864A (ja) メモリエラー回復方式
JP5570252B2 (ja) エラーチェック装置、エラーチェック方法およびエラーチェックプログラム
JPS59110098A (ja) デ−タ記憶装置の誤り訂正装置
JPH08166891A (ja) フォールトトレラントコンピュータシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201013

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201020

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201102

R150 Certificate of patent or registration of utility model

Ref document number: 6799262

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150