JP6439363B2 - Storage control device and control method of storage control device - Google Patents

Storage control device and control method of storage control device Download PDF

Info

Publication number
JP6439363B2
JP6439363B2 JP2014205847A JP2014205847A JP6439363B2 JP 6439363 B2 JP6439363 B2 JP 6439363B2 JP 2014205847 A JP2014205847 A JP 2014205847A JP 2014205847 A JP2014205847 A JP 2014205847A JP 6439363 B2 JP6439363 B2 JP 6439363B2
Authority
JP
Japan
Prior art keywords
request
unit
access request
memory device
refresh
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.)
Active
Application number
JP2014205847A
Other languages
Japanese (ja)
Other versions
JP2016076076A (en
Inventor
聡二 原
聡二 原
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 JP2014205847A priority Critical patent/JP6439363B2/en
Publication of JP2016076076A publication Critical patent/JP2016076076A/en
Application granted granted Critical
Publication of JP6439363B2 publication Critical patent/JP6439363B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、記憶制御装置および記憶制御装置の制御方法に関する。   The present invention relates to a storage control device and a control method for the storage control device.

情報処理装置では、データと当該データのエラーを訂正するための冗長データとを複数のディスク装置に記憶することで、冗長データを用いない場合に比べてデータの信頼性を向上している。この種のディスク装置を含む情報処理装置は、書き込みコマンドを含むコマンド情報を記憶する不揮発性メモリを有する(例えば、特許文献1参照)。そして、情報処理装置は、データをディスク装置に書き込んだ後、冗長データを書き込む前に書き込みの完了通知をホストコンピュータに出力し、冗長データを完了通知の出力後に書き込む。これにより、データの書き込みの応答時間は短縮される。また、電源の異常等が発生した場合にも、不揮発性メモリに記憶されたコマンド情報に基づいて、ディスク装置にアクセスすることで、冗長データは再生される。   In the information processing apparatus, data reliability is improved by storing data and redundant data for correcting an error of the data in a plurality of disk devices as compared with a case where redundant data is not used. An information processing device including this type of disk device has a nonvolatile memory for storing command information including a write command (see, for example, Patent Document 1). Then, after writing the data to the disk device, the information processing device outputs a write completion notification to the host computer before writing the redundant data, and writes the redundant data after outputting the completion notification. Thereby, the response time for data writing is shortened. Further, even when a power failure occurs, redundant data is reproduced by accessing the disk device based on command information stored in the nonvolatile memory.

特開平4−312146号公報Japanese Patent Laid-Open No. 4-31146

ところで、情報処理装置に搭載されるSDRAM(Synchronous Dynamic Random Access Memory)の一部の品種は、ノイズ等により発生するコマンドおよびアドレスのエラーを検出し、外部に通知する機能を有する。しかしながら、SDRAMのアクセスを制御する記憶制御装置が、SDRAMから受けるエラー通知に応答してアクセス要求を再発行する機能を持たない場合、エラーが発生すると不具合を回復することは困難であり、システムエラーとなってしまう。   Incidentally, some types of SDRAM (Synchronous Dynamic Random Access Memory) mounted on an information processing apparatus have a function of detecting a command and address error caused by noise or the like and notifying the outside. However, if the storage control device that controls access to the SDRAM does not have a function of reissuing an access request in response to an error notification received from the SDRAM, it is difficult to recover from the malfunction when an error occurs. End up.

本件開示の記憶制御装置および記憶制御装置の制御方法は、記憶装置が動作指示のエラーを検出した場合、記憶装置からのエラーの通知に基づいて動作指示を再発行することで、システムが停止することを抑止することを目的とする。   In the storage control device and the storage control device control method disclosed herein, when the storage device detects an error in the operation instruction, the system is stopped by reissuing the operation instruction based on the error notification from the storage device. The purpose is to suppress this.

一つの観点によれば、制御装置から出力されるアクセス要求に基づいて、メモリデバイスのアクセスを制御する記憶制御装置は、制御装置から出力されるアクセス要求をそれぞれ保持する複数の要求保持部と、複数の要求保持部にそれぞれ保持されたアクセス要求のいずれかを選択し、選択されたアクセス要求を、メモリデバイスを動作させる動作指示としてメモリデバイスに出力するとともに、アクセス要求の削除が抑止された場合、削除が抑止されたアクセス要求である対象アクセス要求を再度選択し、動作指示としてメモリデバイスに出力する要求選択部と、要求選択部によるアクセス要求の選択から第1の時間が経過した場合、要求選択部が選択したアクセス要求を保持している要求保持部からアクセス要求を削除するとともに、動作指示がエラーを含むことを示すエラー情報をメモリデバイスから受信した場合、複数の要求保持部のうち、要求選択部による選択から第1の時間が経過していないアクセス要求を保持している要求保持部からのアクセス要求の削除を抑止する要求制御部を有する。 According to one aspect, a storage control device that controls access to a memory device based on an access request output from the control device includes a plurality of request holding units that respectively hold access requests output from the control device, select one of the access requests respectively held in a plurality of request holding unit, an access request is selected, and outputs to the memory device as an operation instruction for operating the memory device, if the deletion of the access request is inhibited A request selection unit that selects a target access request that is an access request for which deletion has been suppressed and outputs it to the memory device as an operation instruction; The access request is deleted from the request holding unit holding the access request selected by the selection unit, and If the instruction is received error information indicating that it contains an error from the memory device, among the plurality of request holding unit, request holding from selection by request selection unit holds the first access request has not elapsed time A request control unit for suppressing deletion of an access request from the unit.

別の観点によれば、制御装置から出力されるアクセス要求をそれぞれ保持する複数の要求保持部を含み、アクセス要求に基づいて、メモリデバイスのアクセスを制御する記憶制御装置の制御方法は、記憶制御装置が有する要求選択部が、複数の要求保持部にそれぞれ保持されたアクセス要求のいずれかを選択し、選択されたアクセス要求を、メモリデバイスを動作させる動作指示としてメモリデバイスに出力し、記憶制御装置が有する要求制御部が、要求選択部によるアクセス要求の選択から第1の時間が経過した場合、要求選択部が選択したアクセス要求を保持している要求保持部からアクセス要求を削除するとともに、動作指示がエラーを含むことを示すエラー情報をメモリデバイスから受信した場合、複数の要求保持部のうち、要求選択部による選択から第1の時間が経過していないアクセス要求である対象アクセス要求を保持している要求保持部からのアクセス要求の削除を抑止し、要求選択部は、削除が抑止された対象アクセス要求を再度選択し、動作指示としてメモリデバイスに出力する。
According to another aspect, the control method of the storage control device includes a plurality of request holding units that respectively hold access requests output from the control device, and controls access to the memory device based on the access request. request selection unit which device has selects one of the access request held in a plurality of request holding unit, and outputs the access request selected, the memory device as an operation instruction for operating the memory device, the storage control When the request control unit included in the apparatus deletes the access request from the request holding unit holding the access request selected by the request selection unit when the first time has elapsed since the selection of the access request by the request selection unit, If the operation instruction is received error information indicating that it contains an error from the memory device, among the plurality of request holding unit, the request election Deletion of an access request from a request holding unit that holds a target access request that is an access request for which the first time has not elapsed since selection by the unit is suppressed. The request is selected again and output to the memory device as an operation instruction.

本件開示の記憶制御装置および記憶制御装置の制御方法は、記憶装置が動作指示のエラーを検出した場合、記憶装置からのエラーの通知に基づいて動作指示を再発行することで、システムが停止することを抑止することができる。   In the storage control device and the storage control device control method disclosed herein, when the storage device detects an error in the operation instruction, the system is stopped by reissuing the operation instruction based on the error notification from the storage device. Can be deterred.

記憶制御装置および記憶制御装置の制御方法の一実施形態を示す図である。It is a figure which shows one Embodiment of the storage control apparatus and the control method of a storage control apparatus. 記憶制御装置および記憶制御装置の制御方法の別の実施形態を示す図である。It is a figure which shows another embodiment of the storage control apparatus and the control method of a storage control apparatus. 図2に示す記憶制御装置で使用される信号の構成の一例を示す図である。It is a figure which shows an example of a structure of the signal used with the memory | storage control apparatus shown in FIG. 図2に示すアクセス要求保持部の一例を示す図である。It is a figure which shows an example of the access request holding | maintenance part shown in FIG. 図4に示すアクセス要求保持部の各エントリの動作の一例を示す図である。FIG. 5 is a diagram illustrating an example of the operation of each entry in the access request holding unit illustrated in FIG. 4. 図2に示すリフレッシュ要求保持部の一例を示す図である。FIG. 3 is a diagram illustrating an example of a refresh request holding unit illustrated in FIG. 2. 図6に示すリフレッシュ要求保持部のエントリの動作の一例を示す図である。FIG. 7 is a diagram illustrating an example of an entry operation of the refresh request holding unit illustrated in FIG. 6. 図4および図6に示すステート制御部のステートの遷移の一例を示す図である。It is a figure which shows an example of the state transition of the state control part shown in FIG. 4 and FIG. 図2に示す要求選択部の動作の一例を示す図である。It is a figure which shows an example of operation | movement of the request | requirement selection part shown in FIG. 図2に示すパイプライン制御部の一例を示す図である。It is a figure which shows an example of the pipeline control part shown in FIG. 図2に示す要求発行リリース通知生成部の一例を示す図である。It is a figure which shows an example of the request issue release notification production | generation part shown in FIG. 図2に示すエラー検出部の一例を示す図である。It is a figure which shows an example of the error detection part shown in FIG. 図12に示すリトライ制御部によるモード情報の遷移の一例を示す図である。It is a figure which shows an example of the transition of the mode information by the retry control part shown in FIG. 図2に示す記憶制御装置におけるコマンドパリティエラー情報の受信時の動作の一例を示す図である。FIG. 3 is a diagram illustrating an example of an operation at the time of receiving command parity error information in the storage controller illustrated in FIG. 図14に示すステップS400の動作の一例を示す図である。It is a figure which shows an example of operation | movement of step S400 shown in FIG. 図14に示すステップS500の動作の一例を示す図である。It is a figure which shows an example of operation | movement of step S500 shown in FIG. 図2に示す記憶制御装置の動作の一例を示す図である。FIG. 3 is a diagram illustrating an example of an operation of the storage control device illustrated in FIG. 2. 図2に示す記憶制御装置の動作の一例を示す図である。FIG. 3 is a diagram illustrating an example of an operation of the storage control device illustrated in FIG. 2. 図17の動作の続きを示す図である。FIG. 18 is a diagram showing a continuation of the operation of FIG. 17. 図18の動作の続きを示す図である。It is a figure which shows the continuation of the operation | movement of FIG. 図10に示すパイプライン制御部の動作の一例を示す図である。It is a figure which shows an example of operation | movement of the pipeline control part shown in FIG. 記憶制御装置および記憶制御装置の制御方法の別の実施形態を示す図である。It is a figure which shows another embodiment of the storage control apparatus and the control method of a storage control apparatus. 図22に示すアクセス要求保持部の一例を示す図である。It is a figure which shows an example of the access request holding | maintenance part shown in FIG. 図23に示すアクセス要求保持部の各エントリの動作の一例を示す図である。FIG. 24 is a diagram illustrating an example of the operation of each entry in the access request holding unit illustrated in FIG. 23. 図22に示すリフレッシュ要求保持部の一例を示す図である。It is a figure which shows an example of the refresh request holding | maintenance part shown in FIG. 図25に示すリフレッシュ要求保持部のエントリの動作の一例を示す図である。FIG. 26 is a diagram illustrating an example of an entry operation of the refresh request holding unit illustrated in FIG. 25. 図23および図25に示すステート制御部のステートの遷移の一例を示す図である。It is a figure which shows an example of the state transition of the state control part shown to FIG. 23 and FIG. 図22に示すパイプライン制御部の一例を示す図である。It is a figure which shows an example of the pipeline control part shown in FIG. 図22に示す要求発行リリース通知生成部の一例を示す図である。It is a figure which shows an example of the request issue release notification production | generation part shown in FIG. 図22に示すエラー検出部の一例を示す図である。It is a figure which shows an example of the error detection part shown in FIG.

以下、図面を用いて実施形態を説明する。   Hereinafter, embodiments will be described with reference to the drawings.

図1は、記憶制御装置および記憶制御装置の制御方法の一実施形態を示す。図1に示す記憶制御装置100は、制御装置200と記憶装置300との間に接続され、制御装置200から出力されるメモリアクセス要求MRQに基づいて記憶装置300のアクセスを制御する。例えば、記憶制御装置100、制御装置200および記憶装置300は、情報処理装置等のシステムに含まれる。   FIG. 1 shows an embodiment of a storage control device and a control method of the storage control device. A storage control device 100 illustrated in FIG. 1 is connected between the control device 200 and the storage device 300, and controls access to the storage device 300 based on a memory access request MRQ output from the control device 200. For example, the storage control device 100, the control device 200, and the storage device 300 are included in a system such as an information processing device.

制御装置200は、CPU(Central Processing Unit)またはDSP(Digital Signal Processor)等のコントローラである。記憶装置300は、SDRAMやSRAM(Static Random Access Memory)等の半導体メモリである。なお、記憶装置300は、メモリモジュールの形態であってもよい。   The control device 200 is a controller such as a CPU (Central Processing Unit) or a DSP (Digital Signal Processor). The storage device 300 is a semiconductor memory such as SDRAM or SRAM (Static Random Access Memory). Note that the storage device 300 may be in the form of a memory module.

記憶制御装置100は、複数の要求保持部110(110a、110b、110c)、要求選択部120、出力生成部130および要求制御部140を有する。各要求保持部110a、110b、110cは、記憶装置300にアクセスするために制御装置200から出力されるメモリアクセス要求MRQをそれぞれ保持する。   The storage control device 100 includes a plurality of request holding units 110 (110a, 110b, 110c), a request selection unit 120, an output generation unit 130, and a request control unit 140. Each of the request holding units 110a, 110b, and 110c holds a memory access request MRQ output from the control device 200 in order to access the storage device 300.

要求選択部120は、要求保持部110a、110b、110cにそれぞれ保持されたメモリアクセス要求MRQのいずれかを選択する。特に限定されないが、要求選択部120は、出力生成部130が生成するコマンドCMDのエラーを検出したことを示すエラー情報ERRを記憶装置300から受信している間、メモリアクセス要求MRQの選択を抑止する。コマンドCMDは、記憶装置300を動作させる動作指示の一例である。   The request selection unit 120 selects any one of the memory access requests MRQ held in the request holding units 110a, 110b, and 110c. Although not particularly limited, the request selection unit 120 suppresses selection of the memory access request MRQ while receiving the error information ERR indicating that the error of the command CMD generated by the output generation unit 130 has been detected from the storage device 300. To do. The command CMD is an example of an operation instruction for operating the storage device 300.

出力生成部130は、要求選択部120が選択したメモリアクセス要求MRQに基づいて、記憶装置300を動作させるコマンドCMDと、コマンドCMDのエラーを記憶装置300に検出させるエラー検出情報Pとを生成して記憶装置300に出力する。要求制御部140は、要求選択部120によるメモリアクセス要求MRQの選択から第1の時間T1が経過した場合、要求選択部120が選択したメモリアクセス要求MRQを要求保持部110のいずれかから削除する。要求制御部140は、エラー情報ERRを記憶装置300から受信した場合、要求選択部120による選択から第1の時間T1が経過していないメモリアクセス要求MRQを保持している要求保持部110からのアクセス要求の削除を抑止する。   Based on the memory access request MRQ selected by the request selection unit 120, the output generation unit 130 generates a command CMD for operating the storage device 300 and error detection information P for causing the storage device 300 to detect an error in the command CMD. To the storage device 300. The request control unit 140 deletes the memory access request MRQ selected by the request selection unit 120 from any of the request holding units 110 when the first time T1 has elapsed from the selection of the memory access request MRQ by the request selection unit 120. . When the request control unit 140 receives the error information ERR from the storage device 300, the request control unit 140 receives the memory access request MRQ from which the first time T1 has not elapsed since the selection by the request selection unit 120. Suppress deletion of access requests.

図1の下側のかぎ括弧内は、記憶制御装置100の動作の一例を示す。この例では、制御装置200がメモリアクセス要求MRQa、MRQb、MRQcを順次に記憶制御装置100に出力する。記憶制御装置100は、メモリアクセス要求MRQa、MRQb、MRQcを要求保持部110にそれぞれ保持する(図1(a)、(b)、(c))。   In the lower brackets in FIG. 1, an example of the operation of the storage control device 100 is shown. In this example, control device 200 sequentially outputs memory access requests MRQa, MRQb, and MRQc to storage control device 100. The storage control device 100 holds the memory access requests MRQa, MRQb, and MRQc in the request holding unit 110 (FIGS. 1A, 1B, and 1C).

要求選択部120は、要求保持部110aに保持されたメモリアクセス要求MRQaを選択し、出力生成部130および要求制御部140に出力する(図1(d))。出力生成部130は、メモリアクセス要求MRQaに基づいてコマンドCMDとエラー検出情報Pを生成し、記憶装置300に出力する(図1(e))。例えば、エラー検出情報Pは、コマンドCMDを表す制御信号の論理のパリティである。なお、出力生成部130は、エラー検出情報Pを、コマンドCMDとともに記憶制御装置100から記憶装置300に供給されるアドレスと、コマンドCMDとから生成してもよい。また、要求選択部120が、出力生成部130の機能を有してもよい。   The request selection unit 120 selects the memory access request MRQa held in the request holding unit 110a and outputs it to the output generation unit 130 and the request control unit 140 (FIG. 1 (d)). The output generation unit 130 generates a command CMD and error detection information P based on the memory access request MRQa, and outputs it to the storage device 300 (FIG. 1 (e)). For example, the error detection information P is a logical parity of a control signal representing the command CMD. The output generation unit 130 may generate the error detection information P from the command CMD and the address supplied from the storage control device 100 to the storage device 300 together with the command CMD. Further, the request selection unit 120 may have the function of the output generation unit 130.

記憶装置300は、エラー検出情報Pに基づいてコマンドCMDにエラーがないことを検出し、コマンドCMDにしたがって動作する。コマンドCMDがライトコマンドの場合、記憶装置300は、記憶制御装置100を介して制御装置200から受けるライトデータをメモリセルに書き込む。コマンドCMDがリードコマンドの場合、記憶装置300は、メモリセルからデータを読み出し、読み出したデータを、記憶制御装置100を介して制御装置200に出力する。   The storage device 300 detects that there is no error in the command CMD based on the error detection information P, and operates according to the command CMD. When the command CMD is a write command, the storage device 300 writes the write data received from the control device 200 via the storage control device 100 to the memory cell. When the command CMD is a read command, the storage device 300 reads data from the memory cell and outputs the read data to the control device 200 via the storage control device 100.

要求制御部140は、要求選択部120がメモリアクセス要求MRQaを選択した後、第1の時間T1の経過に基づいて、メモリアクセス要求MRQaを要求保持部110aから削除する削除指示DELを出力する(図1(f))。要求保持部110aは、削除指示DELに基づいてメモリアクセス要求MRQaを削除する。そして、要求保持部110aは、制御装置200からの新たなメモリアクセス要求MRQを保持可能な状態になる(図1(g))。   After the request selection unit 120 selects the memory access request MRQa, the request control unit 140 outputs a deletion instruction DEL for deleting the memory access request MRQa from the request holding unit 110a based on the elapse of the first time T1 ( FIG. 1 (f)). The request holding unit 110a deletes the memory access request MRQa based on the deletion instruction DEL. Then, the request holding unit 110a can hold a new memory access request MRQ from the control device 200 (FIG. 1 (g)).

次に、要求選択部120は、要求保持部110bに保持されたメモリアクセス要求MRQbを選択し、出力生成部130および要求制御部140に出力する(図1(h))。出力生成部130は、メモリアクセス要求MRQbに基づいてコマンドCMDとエラー検出情報Pを生成し、記憶装置300に出力する(図1(i))。同様に、要求選択部120は、要求保持部110cに保持されたメモリアクセス要求MRQcを選択し、出力生成部130および要求制御部140に出力する(図1(j))。出力生成部130は、メモリアクセス要求MRQcに基づいてコマンドCMDとエラー検出情報Pを生成し、記憶装置300に出力する(図1(k))。   Next, the request selection unit 120 selects the memory access request MRQb held in the request holding unit 110b and outputs it to the output generation unit 130 and the request control unit 140 (FIG. 1 (h)). The output generation unit 130 generates a command CMD and error detection information P based on the memory access request MRQb, and outputs it to the storage device 300 (FIG. 1 (i)). Similarly, the request selection unit 120 selects the memory access request MRQc held in the request holding unit 110c and outputs it to the output generation unit 130 and the request control unit 140 (FIG. 1 (j)). The output generation unit 130 generates a command CMD and error detection information P based on the memory access request MRQc, and outputs it to the storage device 300 (FIG. 1 (k)).

記憶装置300は、エラー検出情報Pに基づいてメモリアクセス要求MRQbに対応するコマンドCMDのエラーを検出し、エラー情報ERRを出力する(図1(l))。例えば、要求選択部120は、エラー情報ERRを受けている間、メモリアクセス要求MRQの選択を抑止する。これにより、コマンドCMDのエラーが発生し、アクセス動作を停止している記憶装置300に新たなコマンドCMDが供給されることを抑止することができ、記憶制御装置100および記憶装置300の誤動作を抑止することができる。   The storage device 300 detects an error in the command CMD corresponding to the memory access request MRQb based on the error detection information P, and outputs error information ERR (FIG. 1 (l)). For example, the request selection unit 120 suppresses selection of the memory access request MRQ while receiving the error information ERR. As a result, it is possible to prevent a command CMD error from occurring and supply a new command CMD to the storage device 300 that has stopped the access operation, and to prevent malfunctions of the storage control device 100 and the storage device 300. can do.

要求制御部140は、エラー情報ERRを受信した場合、要求選択部120による選択から第1の時間T1が経過していないメモリアクセス要求MRQb、MRQcの要求保持部110b、110cからの削除を抑止する(図1(m)、(n))。すなわち、要求制御部140は、メモリアクセス要求MRQb、MRQcの削除を指示する削除指示DELを出力しない(図1(m))。このため、要求保持部110b、110cは、削除が抑止された抑止対象の対象アクセス要求であるメモリアクセス要求MRQb、MRQcを削除することなく保持し続ける(図1(o)、(p))。   When receiving the error information ERR, the request control unit 140 suppresses deletion of the memory access requests MRQb and MRQc from which the first time T1 has not elapsed since the selection by the request selection unit 120 from the request holding units 110b and 110c. (FIG. 1 (m), (n)). That is, the request control unit 140 does not output a deletion instruction DEL for instructing deletion of the memory access requests MRQb and MRQc (FIG. 1 (m)). For this reason, the request holding units 110b and 110c continue to hold the memory access requests MRQb and MRQc, which are target access requests to be suppressed that are deleted (FIG. 1 (o) and (p)).

エラー情報ERRの出力が停止された後、要求選択部120は、削除が抑止されたメモリアクセス要求MRQbを選択する(図1(q))。出力生成部130は、メモリアクセス要求MRQbに基づいてコマンドCMDとエラー検出情報Pを生成し、記憶装置300に出力する(図1(r))。記憶装置300は、エラー検出情報Pに基づいてコマンドCMDにエラーがないことを検出し、コマンドCMDにしたがって動作する。   After the output of the error information ERR is stopped, the request selection unit 120 selects the memory access request MRQb whose deletion is suppressed (FIG. 1 (q)). The output generation unit 130 generates a command CMD and error detection information P based on the memory access request MRQb, and outputs it to the storage device 300 (FIG. 1 (r)). The storage device 300 detects that there is no error in the command CMD based on the error detection information P, and operates according to the command CMD.

要求制御部140は、要求選択部120によるメモリアクセス要求MRQbの選択から第1の時間T1が経過した後、メモリアクセス要求MRQbを要求保持部110bから削除させる(図1(s))。これにより、要求保持部110bは、制御装置200からの新たなメモリアクセス要求MRQを保持可能な状態になる。   The request control unit 140 deletes the memory access request MRQb from the request holding unit 110b after the first time T1 has elapsed from the selection of the memory access request MRQb by the request selection unit 120 (FIG. 1 (s)). As a result, the request holding unit 110b can hold a new memory access request MRQ from the control device 200.

同様に、要求選択部120は、削除が抑止されたメモリアクセス要求MRQcを選択し、出力生成部130は、メモリアクセス要求MRQcに基づいてコマンドCMDとエラー検出情報Pを生成し、記憶装置300に出力する(図1(t)、(u))。そして、要求選択部120によるメモリアクセス要求MRQcの選択から第1の時間T1が経過した後、メモリアクセス要求MRQcは要求保持部110bから削除される(図1(v))。   Similarly, the request selection unit 120 selects the memory access request MRQc whose deletion is suppressed, and the output generation unit 130 generates a command CMD and error detection information P based on the memory access request MRQc, and stores them in the storage device 300. It outputs (FIG. 1 (t), (u)). Then, after the first time T1 has elapsed from the selection of the memory access request MRQc by the request selection unit 120, the memory access request MRQc is deleted from the request holding unit 110b (FIG. 1 (v)).

以上、図1では、記憶装置300がコマンドCMDのエラーを検出した場合、要求選択部120により選択済みのメモリアクセス要求MRQb、MRQcは、第1の時間T1が経過した後も、削除されることなく要求保持部110b、110cに保持される。これにより、記憶制御装置100は、記憶装置300で実行されなかったメモリアクセス要求MRQb、MRQcを、記憶装置300に再発行(リトライ)することができる。この結果、記憶制御装置100、制御装置200および記憶装置300を含むシステムは、動作を停止させることなく継続することができる。すなわち、システムの信頼性が低下することを抑止することができ、システムの性能を向上することができる。   As described above, in FIG. 1, when the storage device 300 detects an error in the command CMD, the memory access requests MRQb and MRQc selected by the request selection unit 120 are deleted even after the first time T1 has elapsed. Without being held in the request holding units 110b and 110c. As a result, the storage control device 100 can reissue (retry) the memory access requests MRQb and MRQc that have not been executed in the storage device 300. As a result, the system including the storage control device 100, the control device 200, and the storage device 300 can be continued without stopping the operation. That is, it is possible to prevent a decrease in system reliability, and it is possible to improve system performance.

図2は、記憶制御装置および記憶制御装置の制御方法の別の実施形態を示す。図2において二重の四角印は、外部端子を示す。外部端子は、例えば、半導体チップ上のパッド、あるいは半導体チップが収納されるパッケージのリードである。外部端子を介して供給される信号には、端子名と同じ符号を使用する。なお、外部端子に接続されるバッファ回路等のI/O(Input/Output)回路は、記載を省略する。   FIG. 2 shows another embodiment of the storage control device and the control method of the storage control device. In FIG. 2, double square marks indicate external terminals. The external terminal is, for example, a pad on a semiconductor chip or a lead of a package in which the semiconductor chip is stored. For the signal supplied via the external terminal, the same symbol as the terminal name is used. Note that description of I / O (Input / Output) circuits such as buffer circuits connected to external terminals is omitted.

図2に示す記憶制御装置MACは、アクセス要求保持部10、リフレッシュ制御部12、リフレッシュ要求保持部14、要求選択部16、アクセス信号生成部18、パイプライン制御部20、要求発行リリース通知生成部22を有する。また、記憶制御装置MACは、エラー検出部24、ライトデータ制御部26、リードデータ制御部28およびデータ入出力部30を有する。   The storage control device MAC shown in FIG. 2 includes an access request holding unit 10, a refresh control unit 12, a refresh request holding unit 14, a request selection unit 16, an access signal generation unit 18, a pipeline control unit 20, and a request issue release notification generation unit. 22. The storage control device MAC includes an error detection unit 24, a write data control unit 26, a read data control unit 28, and a data input / output unit 30.

記憶制御装置MACは、CPUとDIMM(Dual Inline Memory Module)との間に接続される。DIMMは、複数のSDRAMを含む。SDRAMは、ワード線とビット線とに接続される複数のダイナミックメモリセルを有する。SDRAMは、複数のバンクを含んでもよい。SDRAMおよびDIMMは、アクセス要求に基づいて記憶制御装置MACによりアクセスが制御される記憶装置の一例である。CPUは、SDRAM(DIMM)にアクセスするアクセス要求を出力する制御装置の一例である。CPU、記憶制御装置MACおよびDIMMは、情報処理装置等のシステムに含まれる。   The storage controller MAC is connected between a CPU and a DIMM (Dual Inline Memory Module). The DIMM includes a plurality of SDRAMs. The SDRAM has a plurality of dynamic memory cells connected to word lines and bit lines. The SDRAM may include a plurality of banks. An SDRAM and a DIMM are examples of storage devices whose access is controlled by the storage control device MAC based on an access request. The CPU is an example of a control device that outputs an access request for accessing an SDRAM (DIMM). The CPU, the storage control device MAC, and the DIMM are included in a system such as an information processing device.

記憶制御装置MACは、CPUからのメモリアクセス要求MRQに基づいて、コマンドCMDと、アドレスADと、コマンドCMDおよびアドレスADのパリティPとをSDRAMに出力し、SDRAMのアクセスを制御する。コマンドCMDは、チップアドレス信号、クロックイネーブル信号、ロウアドレスストローブ信号、コラムアドレスストローブ信号およびライトイネーブル信号を含む。コマンドCMDは、SDRAMおよびDIMMを動作させる動作指示の一例である。   Based on the memory access request MRQ from the CPU, the storage controller MAC outputs the command CMD, the address AD, and the command CMD and the parity P of the address AD to the SDRAM, and controls access to the SDRAM. The command CMD includes a chip address signal, a clock enable signal, a row address strobe signal, a column address strobe signal, and a write enable signal. The command CMD is an example of an operation instruction for operating the SDRAM and the DIMM.

CPUは、シングルコアタイプでもよく、マルチコアタイプでもよい。また、複数のCPUが記憶制御装置MACに接続されてもよく、DSPまたはDMAC(Direct Memory Access Controller)等のバスマスタが記憶制御装置MACに接続されてもよい。   The CPU may be a single core type or a multi-core type. A plurality of CPUs may be connected to the storage controller MAC, and a bus master such as a DSP or a direct memory access controller (DMAC) may be connected to the storage controller MAC.

SDRAMは、例えば、DDR4(Double Data Rate 4) SDRAM規格にしたがって設計されている。SDRAMは、パリティPに基づいて、コマンドCMDまたはアドレスADのエラーを検出した場合、コマンドパリティエラー情報CAPEを所定の期間出力し、コマンドCMDに基づくメモリアクセス動作の実行を抑止する機能を有する。   The SDRAM is designed according to, for example, DDR4 (Double Data Rate 4) SDRAM standard. The SDRAM has a function of outputting the command parity error information CAPE for a predetermined period when the error of the command CMD or the address AD is detected based on the parity P, and suppressing the execution of the memory access operation based on the command CMD.

コマンドパリティエラー情報CAPEは、例えば、1ビットであり、パリティエラーが発生したコマンドCMDおよびアドレスADを識別する情報を含まない。このため、記憶制御装置MACは、コマンドパリティエラー情報CAPEを受信したときに要求選択部16から出力済みであり、アクセス動作が開始されていないコマンドCMDの全てを、パリティエラーの発生により影響を受けるコマンドCMDと判断する。記憶制御装置MACは、パリティエラーの発生により影響を受けると判断したコマンドCMDを、コマンドパリティエラー情報CAPEの出力が停止された後に再発行(リトライ)する。コマンドパリティエラー情報CAPEの発生に伴う再発行処理(リトライ処理)は、図9、図14等で説明する。   The command parity error information CAPE is, for example, 1 bit and does not include information for identifying the command CMD and the address AD in which the parity error has occurred. For this reason, the storage controller MAC has been output from the request selection unit 16 when the command parity error information CAPE is received, and all the command CMDs for which the access operation has not started are affected by the occurrence of the parity error. It is determined that the command is CMD. The storage controller MAC reissues (retrys) the command CMD determined to be affected by the occurrence of the parity error after the output of the command parity error information CAPE is stopped. The reissue process (retry process) associated with the occurrence of the command parity error information CAPE will be described with reference to FIGS.

なお、SDRAMは、DDR3 SDRAM規格にしたがって設計されてもよい。この場合、DIMMは、パリティPに基づいて、コマンドCMDまたはアドレスADのエラーを検出した場合、コマンドパリティエラー情報CAPEを出力し、SDRAMに、コマンドCMDに基づくアクセス動作の実行を抑止させる機能を有する。   Note that the SDRAM may be designed according to the DDR3 SDRAM standard. In this case, the DIMM has a function of outputting the command parity error information CAPE when the error of the command CMD or the address AD is detected based on the parity P, and causing the SDRAM to suppress the execution of the access operation based on the command CMD. .

図2では、記憶制御装置MACは、4枚のDIMMに接続されるが、接続されるDIMMの枚数は、1枚でも2枚でもよい。例えば、各DIMMのデータバスの幅は、64ビットであり、4枚のDIMMのデータのビット幅は、256ビットである。DIMM内のSDRAMにデータのパリティ(例えば、8ビット)を記憶させる場合、72ビット幅のDIMMが使用される。なお、記憶制御装置MACは、SDRAMに直接接続されてもよい。   In FIG. 2, the storage controller MAC is connected to four DIMMs, but the number of connected DIMMs may be one or two. For example, the data bus width of each DIMM is 64 bits, and the data bit width of four DIMMs is 256 bits. When storing the parity (for example, 8 bits) of data in the SDRAM in the DIMM, a 72-bit wide DIMM is used. Note that the storage controller MAC may be directly connected to the SDRAM.

アクセス要求保持部10は、CPUからのメモリアクセス要求MRQを保持する複数のエントリENTを有し、各エントリENTに保持したメモリアクセス要求MRQを示すアクセス要求情報ARQIを要求選択部16に出力する。各エントリENTは、CPUから出力されるメモリアクセス要求MRQを保持する要求保持部の一例である。   The access request holding unit 10 has a plurality of entries ENT that hold a memory access request MRQ from the CPU, and outputs access request information ARQI indicating the memory access request MRQ held in each entry ENT to the request selection unit 16. Each entry ENT is an example of a request holding unit that holds a memory access request MRQ output from the CPU.

各エントリENTは、アクセス要求発行通知ARQSに基づいて、要求選択部16がメモリアクセス要求MRQを選択したことを検出する。また、各エントリENTは、メモリアクセス要求MRQがSDRAMに受け付けられたことを示すアクセス要求完了通知ARQEに基づいて、エントリENTに保持しているアクセス要求情報ARQIを削除する。さらに、各エントリENTは、SDRAMからコマンドパリティエラー情報CAPEを受信した場合、コマンドCMD(ライトコマンドまたはリードコマンド)をリトライするために、アクセス要求情報ARQIの出力を維持する。アクセス要求保持部10の一例は、図4に示し、アクセス要求保持部10のエントリENTの動作の一例は、図5に示す。   Each entry ENT detects that the request selection unit 16 has selected the memory access request MRQ based on the access request issue notification ARQS. Each entry ENT deletes the access request information ARQI held in the entry ENT based on the access request completion notification ARQE indicating that the memory access request MRQ has been accepted by the SDRAM. Further, each entry ENT maintains the output of the access request information ARQI in order to retry the command CMD (write command or read command) when the command parity error information CAPE is received from the SDRAM. An example of the access request holding unit 10 is shown in FIG. 4, and an example of the operation of the entry ENT of the access request holding unit 10 is shown in FIG.

リフレッシュ制御部12は、SDRAMにリフレッシュ動作を実行させるリフレッシュ要求RRQを所定の周期で出力する。リフレッシュ要求保持部14は、リフレッシュ要求RRQを保持する1つのエントリENTRを有し、エントリENTRに保持したリフレッシュ要求RRQを示すリフレッシュ要求情報RRQIを要求選択部16に出力する。また、エントリENTRは、リフレッシュ要求RRQがSDRAMに受け付けられたことを示すリフレッシュ要求完了通知RRQEに基づいて、エントリENTRに保持しているリフレッシュ要求情報RRQIを削除する。さらに、エントリENTRは、SDRAMからコマンドパリティエラー情報CAPEを受信した場合、コマンドCMD(リフレッシュコマンド)をリトライするために、リフレッシュ要求情報RRQIの出力を維持する。リフレッシュ要求保持部14の一例は、図6に示し、エントリENTRの動作の一例は、図7に示す。   The refresh control unit 12 outputs a refresh request RRQ for causing the SDRAM to perform a refresh operation at a predetermined cycle. The refresh request holding unit 14 has one entry ENTR that holds the refresh request RRQ, and outputs refresh request information RRQI indicating the refresh request RRQ held in the entry ENTR to the request selecting unit 16. The entry ENTR deletes the refresh request information RRQI held in the entry ENTR based on the refresh request completion notification RRQE indicating that the refresh request RRQ has been accepted by the SDRAM. Furthermore, when the entry ENTR receives the command parity error information CAPE from the SDRAM, the entry ENTR maintains the output of the refresh request information RRQI in order to retry the command CMD (refresh command). An example of the refresh request holding unit 14 is shown in FIG. 6, and an example of the operation of the entry ENTR is shown in FIG.

要求選択部16は、アクセス要求情報ARQIまたはリフレッシュ要求情報RRQIのいずれかを選択し、発行要求情報RQINFとして出力する。要求選択部16は、リトライ制御要求RTRQに基づいてプリチャージ要求を示す発行要求情報RQINFを出力する。その後、要求選択部16は、コマンドCMDをリトライするために、アクセス要求情報ARQIまたはリフレッシュ要求情報RRQIのいずれかを示す発行要求情報RQINFを出力する。   The request selection unit 16 selects either access request information ARQI or refresh request information RRQI, and outputs it as issue request information RQINF. The request selection unit 16 outputs issue request information RQINF indicating a precharge request based on the retry control request RTRQ. Thereafter, in order to retry the command CMD, the request selection unit 16 outputs issuance request information RQINF indicating either the access request information ARQI or the refresh request information RRQI.

要求選択部16は、プリチャージ要求を示す発行要求情報RQINFおよびリトライ要求(メモリアクセス要求MRQまたはリフレッシュ要求RRQ)を示す発行要求情報RQINFの出力タイミングを、モード情報MDに基づいて決定する。要求選択部16の動作の一例は、図9に示す。プリチャージ要求は、アクセス信号生成部18によりプリチャージコマンドに変換される。SDRAMは、プリチャージコマンドに基づいて、ワード線をリセットするとともに、ビット線を所定の電圧にプリチャージする。   The request selection unit 16 determines the output timing of the issue request information RQINF indicating the precharge request and the issue request information RQINF indicating the retry request (memory access request MRQ or refresh request RRQ) based on the mode information MD. An example of the operation of the request selection unit 16 is shown in FIG. The precharge request is converted into a precharge command by the access signal generator 18. The SDRAM resets the word line and precharges the bit line to a predetermined voltage based on the precharge command.

アクセス信号生成部18は、発行要求情報RQINFに基づいて、SDRAMにアクセス動作を実行させるコマンドCMDおよびアドレスADを生成し、SDRAMに出力する。また、アクセス信号生成部18は、コマンドCMDおよびアドレスADの少なくともいずれかのパリティPを生成するパリティ生成器PGENを有し、生成したパリティPを、コマンドCMDおよびアドレスADとともにSDRAMに出力する。パリティPは、コマンドCMDのエラーをSDRAMに検出させるエラー検出情報の一例である。アクセス信号生成部18は、コマンドCMDを生成する出力生成部の一例である。   The access signal generation unit 18 generates a command CMD and an address AD that cause the SDRAM to execute an access operation based on the issue request information RQINF, and outputs the command CMD and the address AD to the SDRAM. The access signal generation unit 18 includes a parity generator PGEN that generates at least one parity P of the command CMD and the address AD, and outputs the generated parity P together with the command CMD and the address AD to the SDRAM. The parity P is an example of error detection information that causes the SDRAM to detect an error in the command CMD. The access signal generation unit 18 is an example of an output generation unit that generates a command CMD.

特に限定されないが、アクセス信号生成部18は、発行要求情報RQINFがSDRAMにデータを書き込むライト要求を示す場合、アクティブコマンドおよびオートプリチャージ付きのライトコマンドをSDRAMに順次に出力する。これにより、ライト要求に応答するライト動作後、SDRAMは、プリチャージされたスタンバイ状態になる。   Although not particularly limited, when the issue request information RQINF indicates a write request for writing data to the SDRAM, the access signal generation unit 18 sequentially outputs an active command and a write command with auto precharge to the SDRAM. As a result, after the write operation in response to the write request, the SDRAM enters a precharged standby state.

アクセス信号生成部18は、発行要求情報RQINFがSDRAMからデータを読み出すリード要求を示す場合、アクティブコマンドおよびオートプリチャージ付きのリードコマンドをSDRAMに順次に出力する。これにより、リード要求に応答するリード動作後、SDRAMは、プリチャージされたスタンバイ状態になる。   When the issue request information RQINF indicates a read request for reading data from the SDRAM, the access signal generator 18 sequentially outputs an active command and a read command with auto precharge to the SDRAM. As a result, after the read operation in response to the read request, the SDRAM enters a precharged standby state.

アクセス信号生成部18は、発行要求情報RQINFがリフレッシュ要求を示す場合、オートリフレッシュコマンドをSDRAMに出力する。オートリフレッシュコマンドを受信したSDRAMは、内蔵するリフレッシュアドレスカウンタを用いて、リフレッシュアドレスを受信することなくリフレッシュ動作を実行し、スタンバイ状態に戻る。リフレッシュ動作により、SDRAM内のダイナミックメモリセルが保持しているデータは再書き込みされ、データは失われることなくダイナミックメモリセルに保持される。   When the issue request information RQINF indicates a refresh request, the access signal generator 18 outputs an auto-refresh command to the SDRAM. The SDRAM that has received the auto-refresh command uses the built-in refresh address counter to execute the refresh operation without receiving the refresh address, and returns to the standby state. By the refresh operation, data held in the dynamic memory cell in the SDRAM is rewritten, and the data is held in the dynamic memory cell without being lost.

このように、記憶制御装置MACは、スタンバイ状態のSDRAMにライト要求、リード要求またはリフレッシュ要求を供給する。記憶制御装置MACは、ライト要求、リード要求またはリフレッシュ要求をリトライする場合、SDRAMをスタンバイ状態に設定するために、プリチャージコマンドをSDRAMに供給する。これにより、SDRAMがアクティブコマンドを受けてアクティブ状態にある場合にも、SDRAMのリトライ動作を正しく実行することができる。リトライ動作およびリトライ用のプリチャージコマンドは、図9等で説明する。なお、記憶制御装置MACは、オートプリチャージ付きのライトコマンドおよびリードコマンドを用いてSDRAMにアクセスするため、リトライ以外でプリチャージコマンドを使用しない。   In this way, the storage controller MAC supplies a write request, a read request, or a refresh request to the standby SDRAM. When retrying a write request, a read request or a refresh request, the storage controller MAC supplies a precharge command to the SDRAM in order to set the SDRAM to a standby state. Thereby, even when the SDRAM is in an active state upon receiving an active command, the retry operation of the SDRAM can be correctly executed. The retry operation and retry precharge command will be described with reference to FIG. Since the storage controller MAC accesses the SDRAM using a write command and a read command with auto precharge, it does not use the precharge command except for retry.

パイプライン制御部20は、要求選択部16からの発行要求情報RQINFを受信した後、記憶制御装置MAC内の各部の動作を制御する制御信号を、所定のクロックサイクル毎に出力するシーケンサの機能を有する。発行要求情報RQINFがライト要求の場合、パイプライン制御部20は、アクセス要求完了通知ARQE、ライトデータ要求WDRQ、ライトデータ制御信号WDCNTを順次に出力する。発行要求情報RQINFがリード要求の場合、パイプライン制御部20は、アクセス要求完了通知ARQE、リードデータ制御信号RDCNT、バリッド信号VLD(R)、要求識別番号RQID(R)を順次に出力する。発行要求情報RQINFが通常のリフレッシュ要求の場合、パイプライン制御部20は、リフレッシュ要求完了通知RRQEを出力する。発行要求情報RQINFがリトライ制御要求RTRQに基づくプリチャージコマンドを示す場合、パイプライン制御部20は、リトライ制御要求完了通知RTRQEを出力する。また、パイプライン制御部20は、コマンドパリティエラー情報CAPEに基づいて、リトライの対象のアクセス要求およびリトライの対象のリフレッシュ要求を検出する機能を有する。パイプライン制御部20の一例は、図10に示す。   After receiving the issuance request information RQINF from the request selection unit 16, the pipeline control unit 20 has a sequencer function that outputs a control signal for controlling the operation of each unit in the storage control device MAC every predetermined clock cycle. Have. When the issue request information RQINF is a write request, the pipeline control unit 20 sequentially outputs an access request completion notification ARQE, a write data request WDRQ, and a write data control signal WDCNT. When the issue request information RQINF is a read request, the pipeline control unit 20 sequentially outputs an access request completion notification ARQE, a read data control signal RDCNT, a valid signal VLD (R), and a request identification number RQID (R). When the issue request information RQINF is a normal refresh request, the pipeline control unit 20 outputs a refresh request completion notification RRQE. When the issue request information RQINF indicates a precharge command based on the retry control request RTRQ, the pipeline control unit 20 outputs a retry control request completion notification RTRQE. Further, the pipeline control unit 20 has a function of detecting an access request to be retried and a refresh request to be retried based on the command parity error information CAPE. An example of the pipeline control unit 20 is shown in FIG.

要求発行リリース通知生成部22は、発行要求情報RQINFに基づいて、SDRAMにコマンドCMDが出力されることを示すアクセス要求発行通知ARQSまたはリフレッシュ要求発行通知RRQSを出力する。また、要求発行リリース通知生成部22は、アクセス要求完了通知ARQEに基づいて、メモリアクセス要求MRQがSDRAMに受け付けられたことを示すメモリアクセス要求リリース情報MRQRをCPUに出力する。なお、コマンドパリティエラー情報CAPEの受信により、アクセス要求完了通知ARQEが生成されない場合、要求発行リリース通知生成部22は、メモリアクセス要求リリース情報MRQRのCPUへの出力を抑止する。これにより、CPUは、SDRAMが受け付けていないメモリアクセス要求MRQに対応するアクセス動作が開始されたことを誤認識すること(すなわち、誤動作)を抑制することができる。要求発行リリース通知生成部22の一例は、図11に示す。   Based on the issue request information RQINF, the request issue release notification generation unit 22 outputs an access request issue notification ARQS or a refresh request issue notification RRQS indicating that the command CMD is output to the SDRAM. Further, the request issuance release notification generation unit 22 outputs memory access request release information MRQR indicating that the memory access request MRQ has been accepted by the SDRAM to the CPU based on the access request completion notification ARQE. When the access request completion notification ARQE is not generated by receiving the command parity error information CAPE, the request issue release notification generation unit 22 suppresses the output of the memory access request release information MRQR to the CPU. Thereby, the CPU can suppress erroneous recognition that the access operation corresponding to the memory access request MRQ not accepted by the SDRAM is started (that is, malfunction). An example of the request issuance release notification generator 22 is shown in FIG.

エラー検出部24は、コマンドパリティエラー情報CAPEおよびリトライ制御要求完了通知RTRQEに基づいて、コマンドのリトライを制御するリトライ制御要求RTRQと、エラー検出部24が制御するモードを示すモード情報MDを出力する。リトライ制御要求RTRQ(プリチャージ要求)は、図8に示すステートSTが”発行済み”のメモリアクセス要求MRQまたはリフレッシュ要求RRQに対応して出力される。エラー検出部24は、SDRAMからのコマンドパリティエラー情報CAPEの出力が停止された後、SDRAMをスタンバイ状態(プリチャージ状態)に設定するスタンバイ要求(プリチャージ要求)を生成するスタンバイ要求生成部の一例である。   Based on the command parity error information CAPE and the retry control request completion notification RTRQE, the error detection unit 24 outputs a retry control request RTRQ for controlling the retry of the command and mode information MD indicating the mode controlled by the error detection unit 24. . The retry control request RTRQ (precharge request) is output corresponding to the memory access request MRQ or the refresh request RRQ in which the state ST shown in FIG. 8 is “issued”. The error detection unit 24 is an example of a standby request generation unit that generates a standby request (precharge request) for setting the SDRAM to a standby state (precharge state) after output of the command parity error information CAPE from the SDRAM is stopped. It is.

また、エラー検出部24は、コマンドパリティエラー情報CAPEの発生回数(すなわち、リトライ回数)が所定の値VTになった場合、CPUにシステムエラー情報SYSEを出力する。例えば、記憶制御装置MACとDIMMとの間に配線されるコマンド線CMDが断線またはショートした場合、コマンドパリティエラー情報CAPEが繰り返し発生される。この場合、CPUは、システムエラー情報SYSEに基づいて故障を検出することができ、システムの信頼性が低下することを抑止することができる。   Further, the error detection unit 24 outputs the system error information SYSE to the CPU when the number of occurrences of the command parity error information CAPE (that is, the number of retries) reaches a predetermined value VT. For example, when the command line CMD wired between the storage controller MAC and the DIMM is disconnected or short-circuited, the command parity error information CAPE is repeatedly generated. In this case, the CPU can detect a failure based on the system error information SYSE, and can suppress a decrease in system reliability.

ライトデータ制御部26は、ライトデータ制御信号WDCNTに基づいて、CPUから出力されるライトデータWDを、データ入出力部30を介してDIMMに出力する。例えば、ライトデータ制御部26は、CPUから1024ビット(128バイト)のライトデータWDを4回に分けて受信し、受信したライトデータWDを4回に分けて4つのDIMMに出力する(バースト長=4)。なお、ライトデータのパリティをライトデータWDとともにDIMMに書き込む場合、ライトデータ制御部26は、パリティを生成するパリティ生成器を有してもよい。   The write data control unit 26 outputs the write data WD output from the CPU to the DIMM via the data input / output unit 30 based on the write data control signal WDCNT. For example, the write data control unit 26 receives the 1024-bit (128 bytes) write data WD from the CPU divided into four times, and outputs the received write data WD into four DIMMs (burst length). = 4). When writing the parity of the write data to the DIMM together with the write data WD, the write data control unit 26 may include a parity generator that generates the parity.

リードデータ制御部28は、リードデータ制御信号RDNTに基づいて、データ入出力部30を介してDIMMから受信するリードデータRDTをCPUに出力する。例えば、リードデータ制御部28は、4つのDIMMから1024ビット(8バイト)のリードデータRDTを4回に分けて受信し(バースト長=4)、受信したリードデータRDTを4回に分けてCPUに出力する。なお、リードデータRDTとともにパリティをDIMMから受信する場合、リードデータ制御部28は、パリティに基づいてリードデータRDTのエラーを検出し、エラーを訂正する回路を有してもよい。   The read data control unit 28 outputs read data RDT received from the DIMM via the data input / output unit 30 to the CPU based on the read data control signal RDNT. For example, the read data control unit 28 receives 1024 bits (8 bytes) of read data RDT in four times from four DIMMs (burst length = 4), and the received read data RDT is divided into four times in the CPU. Output to. When the parity is received from the DIMM together with the read data RDT, the read data control unit 28 may include a circuit that detects an error in the read data RDT based on the parity and corrects the error.

データ入出力部30は、DIMMのライトアクセス時にライトデータWDを、データ端子DTを介してDIMMに出力し、DIMMのリードアクセス時にリードデータRDTを、データ端子DTを介してDIMMから受信する。   The data input / output unit 30 outputs write data WD to the DIMM via the data terminal DT at the time of DIMM write access, and receives read data RDT from the DIMM via the data terminal DT at the time of read access to the DIMM.

図3は、図2に示す記憶制御装置MACで使用される信号の構成の一例を示す。バリッドVLDは、各信号が有効である場合に論理1に設定され、各信号が無効である場合に論理0に設定される。要求識別番号RQIDは、個々のメモリアクセス要求MRQを識別するための固有の番号であり、CPUにより割り当てられる。ライトデータ識別番号WDIDは、ライト要求を示すメモリアクセス要求MRQ毎にライトデータを識別するための固有の番号であり、CPUにより割り当てられる。アクセス要求情報ARQIのステートSTは、アクセス要求保持部10の各エントリENTの状態を示す。リフレッシュ要求情報RRQIのステートSTは、リフレッシュ要求保持部14のエントリENTRの状態を示す。アクセス要求保持部10およびリフレッシュ要求保持部14のステートSTの遷移の一例は、図8に示す。   FIG. 3 shows an example of the configuration of signals used in the storage controller MAC shown in FIG. The valid VLD is set to logic 1 when each signal is valid, and is set to logic 0 when each signal is invalid. The request identification number RQID is a unique number for identifying each memory access request MRQ, and is assigned by the CPU. The write data identification number WDID is a unique number for identifying write data for each memory access request MRQ indicating a write request, and is assigned by the CPU. The state ST of the access request information ARQI indicates the state of each entry ENT in the access request holding unit 10. The state ST of the refresh request information RRQI indicates the state of the entry ENTR of the refresh request holding unit 14. An example of the transition of the state ST of the access request holding unit 10 and the refresh request holding unit 14 is shown in FIG.

メモリアクセス要求MRQにおいて、コマンドは、ライトコマンドまたはリードコマンドを示し、アドレスは、アクセスするメモリ空間の先頭アドレスを示す。リフレッシュ要求RRQにおいて、コマンドは、リフレッシュコマンドを示し、アドレスは、リフレッシュするメモリ空間の先頭アドレスを示す。リトライ制御要求RTRQにおいて、コマンドは、リトライするライトコマンド、リードコマンドまたはリフレッシュコマンドを示し、アドレスは、アクセスするメモリ空間またはリフレッシュするアドレス空間を示す。   In the memory access request MRQ, the command indicates a write command or a read command, and the address indicates the head address of the memory space to be accessed. In the refresh request RRQ, the command indicates a refresh command, and the address indicates the start address of the memory space to be refreshed. In the retry control request RTRQ, the command indicates a write command, a read command, or a refresh command to be retried, and the address indicates a memory space to be accessed or an address space to be refreshed.

発行要求情報RQINFにおいて、コマンドは、ライトコマンド、リードコマンドまたはリフレッシュコマンドを示し、アドレスは、アクセスするメモリ空間またはリフレッシュするアドレス空間を示す。リードデータRDにおいて、要求識別番号RQIDは、CPUが発行したメモリアクセス要求MRQ(リード要求)との対応付けのためにCPUに出力される。ライトデータ要求WDRQにおいて、ライトデータ識別番号WDIDは、記憶制御装置MACがCPUに要求するライトデータを識別するために使用される。   In the issue request information RQINF, the command indicates a write command, a read command, or a refresh command, and the address indicates a memory space to be accessed or an address space to be refreshed. In the read data RD, the request identification number RQID is output to the CPU for association with the memory access request MRQ (read request) issued by the CPU. In the write data request WDRQ, the write data identification number WDID is used to identify the write data requested by the storage control device MAC to the CPU.

図4は、図2に示すアクセス要求保持部10の一例を示す。アクセス要求保持部10は、n個(nは2以上の整数)のエントリENT(ENT1、ENT2、ENT3、...、ENTn)を有する。各エントリENTは、互いに同一または同様であるため、以下では、エントリENT1の構成を説明する。   FIG. 4 shows an example of the access request holding unit 10 shown in FIG. The access request holding unit 10 has n entries (ENT1, ENT2, ENT3,..., ENTn) (n is an integer of 2 or more). Since the entries ENT are the same or similar to each other, the configuration of the entry ENT1 will be described below.

エントリENT1は、メモリアクセス要求MRQに含まれるバリッドVLD、コマンド、アドレス、要求識別番号RQIDおよびライトデータ識別番号WDIDを保持する保持領域HLDを有する。また、エントリENT1は、ステートSTを保持する領域を有するステート制御部STCNTを有する。ステート制御部STCNTは、メモリアクセス要求MRQ、アクセス要求発行通知ARQS、コマンドパリティエラー情報CAPEおよびアクセス要求完了通知ARQEの受信に基づいて、ステートSTを遷移させる。ステートSTの遷移の一例は、図8に示す。アクセス要求保持部10は、CPUからメモリアクセス要求MRQを受信した場合、ステートSTがアイドル状態のエントリENT1の1つに受信したメモリアクセス要求MRQを保持させる。エントリENT1は、保持しているバリッドVLD、コマンド、アドレス、要求識別番号RQIDおよびライトデータ識別番号WDIDと、ステートSTとを示すアクセス要求情報ARQIを要求選択部16に出力する。アクセス要求保持部10の各エントリENTの動作の一例は、図5に示す。   The entry ENT1 has a holding area HLD that holds the valid VLD, command, address, request identification number RQID, and write data identification number WDID included in the memory access request MRQ. The entry ENT1 includes a state control unit STCNT having an area for holding the state ST. The state control unit STCNT changes the state ST based on reception of the memory access request MRQ, the access request issue notification ARQS, the command parity error information CAPE, and the access request completion notification ARQE. An example of the transition of the state ST is shown in FIG. When receiving the memory access request MRQ from the CPU, the access request holding unit 10 holds the received memory access request MRQ in one of the entries ENT1 whose state ST is in the idle state. The entry ENT1 outputs access request information ARQI indicating the held valid VLD, command, address, request identification number RQID, write data identification number WDID, and state ST to the request selection unit 16. An example of the operation of each entry ENT in the access request holding unit 10 is shown in FIG.

図5は、図4に示すアクセス要求保持部10の各エントリENTの動作の一例を示す。例えば、図5に示す処理は、各エントリENTのステート制御部STCNTのハードウェアにより実行される。なお、図5は、説明を分かりやすくするために各エントリENTの動作を分解して示したものであり、実際の動作では、各ステップの幾つかは、並列に実行されてもよい。例えば、ステップS104、S106は、並列に実行されてもよく、ステップS118、S120は並列に実行されてもよい。   FIG. 5 shows an example of the operation of each entry ENT of the access request holding unit 10 shown in FIG. For example, the process shown in FIG. 5 is executed by the hardware of the state control unit STCNT of each entry ENT. Note that FIG. 5 is an exploded view of the operation of each entry ENT for easy understanding of the description. In an actual operation, some of the steps may be executed in parallel. For example, steps S104 and S106 may be executed in parallel, and steps S118 and S120 may be executed in parallel.

まず、ステップS102において、エントリENTは、アクセス要求保持部10からメモリアクセス要求MRQの保持を指示されたか否かを判定する。エントリENTは、メモリアクセス要求MRQの保持を指示された場合、処理をステップS104に移行させ、メモリアクセス要求MRQの保持を指示されていない場合、ステップS102の処理を繰り返す。   First, in step S102, the entry ENT determines whether or not the access request holding unit 10 has instructed to hold the memory access request MRQ. The entry ENT shifts the process to step S104 when instructed to hold the memory access request MRQ, and repeats the process of step S102 when not instructed to hold the memory access request MRQ.

ステップS104において、エントリENTは、メモリアクセス要求MRQに含まれるバリッドVLD、コマンド、アドレス、要求識別番号RQIDおよびライトデータ識別番号WDIDを保持領域HLDに保持する。保持領域HLDのバリッドVLDの領域には、有効なメモリアクセス要求MRQの保持を示す論理1が格納される。   In step S104, the entry ENT holds the valid VLD, command, address, request identification number RQID, and write data identification number WDID included in the memory access request MRQ in the holding area HLD. In the valid VLD area of the holding area HLD, a logic 1 indicating the holding of a valid memory access request MRQ is stored.

次に、ステップS106において、エントリENTは、ステートSTを”未発行”を示す情報に書き替える。”未発行”は、エントリENTに保持されたメモリアクセス要求MRQが要求選択部16により選択されていないことを示す。すなわち、”未発行”は、エントリENTに保持されたメモリアクセス要求MRQが、DIMMに供給されていないことを示す。   Next, in step S106, the entry ENT rewrites the state ST with information indicating “unissued”. “Not issued” indicates that the memory selection request MRQ held in the entry ENT is not selected by the request selection unit 16. That is, “unissued” indicates that the memory access request MRQ held in the entry ENT is not supplied to the DIMM.

次に、ステップS108において、エントリENTは、エントリENTに保持されたメモリアクセス要求MRQに対応するアクセス要求発行通知ARQSを受信したか否かを判定する。エントリENTは、対応するアクセス要求発行通知ARQSを受信した場合、処理をステップS110に移行させ、対応するアクセス要求発行通知ARQSを受信していない場合、ステップS108の処理を繰り返す。   Next, in step S108, the entry ENT determines whether or not an access request issue notification ARQS corresponding to the memory access request MRQ held in the entry ENT has been received. If the entry ENT receives the corresponding access request issue notification ARQS, the entry ENT shifts the process to step S110. If the entry ENT does not receive the corresponding access request issue notification ARQS, the entry ENT repeats the process of step S108.

ステップS110において、エントリENTは、ステートSTを”発行済み”を示す情報に書き替える。”発行済み”は、エントリENTに保持されたメモリアクセス要求MRQが要求選択部16により選択されたことを示す。すなわち、”発行済み”は、エントリENTに保持されたメモリアクセス要求MRQが、DIMMに供給されたことを示す。   In step S110, the entry ENT rewrites the state ST with information indicating “issued”. “Issued” indicates that the memory selection request MRQ held in the entry ENT is selected by the request selection unit 16. That is, “issued” indicates that the memory access request MRQ held in the entry ENT is supplied to the DIMM.

次に、ステップS112において、エントリENTは、コマンドパリティエラー情報CAPEを受信したか否かを判定する。エントリENTは、コマンドパリティエラー情報CAPEを受信した場合、処理をステップS114に移行させ、コマンドパリティエラー情報CAPEを受信していない場合、処理をステップS116に移行させる。   Next, in step S112, the entry ENT determines whether or not the command parity error information CAPE has been received. If the entry ENT receives the command parity error information CAPE, the process proceeds to step S114. If the entry ENT does not receive the command parity error information CAPE, the process proceeds to step S116.

ステップS114において、エントリENTは、ステートSTを”リトライ”を示す情報に書き替え、処理をステップS108に戻す。”リトライ”は、コマンドパリティエラー情報CAPEの発生により、エントリENTに保持されたメモリアクセス要求MRQをDIMMに再度発行することを示す。   In step S114, the entry ENT rewrites the state ST with information indicating “retry”, and returns the process to step S108. “Retry” indicates that the memory access request MRQ held in the entry ENT is reissued to the DIMM when the command parity error information CAPE is generated.

アクセス要求発行通知ARQSを受信後、アクセス要求完了通知ARQEを受信していないメモリアクセス要求MRQは、SDRAMに受け付けられていないメモリアクセス要求MRQである。SDRAMがメモリアクセス要求MRQを受け付ける前にコマンドパリティエラーを検出し、コマンドパリティエラー情報CAPEを出力した場合、そのメモリアクセス要求MRQは、リトライの対象になる。   The memory access request MRQ that has not received the access request completion notification ARQE after receiving the access request issue notification ARQ is a memory access request MRQ that is not accepted by the SDRAM. When the SDRAM detects a command parity error before receiving the memory access request MRQ and outputs the command parity error information CAPE, the memory access request MRQ becomes a target of retry.

コマンドパリティエラー情報CAPEを受信しない場合、ステップS116において、エントリENTは、エントリENTに保持されたメモリアクセス要求MRQに対応するアクセス要求完了通知ARQEを受信したか否かを判定する。エントリENTは、対応するアクセス要求完了通知ARQEを受信した場合、エントリENTに保持されたメモリアクセス要求MRQがSDRAMに受け付けられたと判断し、処理をステップS118に移行させる。一方、エントリENTは、対応するアクセス要求完了通知ARQEを受信していない場合、エントリENTに保持されたメモリアクセス要求MRQがSDRAMに受け付けられていないと判断し、処理をステップS112に戻す。なお、アクセス要求完了通知ARQEは、図10で説明するように、要求選択部16が発行要求情報RQINFを出力した後、所定のクロックサイクル後に生成される。   If the command parity error information CAPE is not received, in step S116, the entry ENT determines whether or not an access request completion notification ARQE corresponding to the memory access request MRQ held in the entry ENT has been received. When the entry ENT receives the corresponding access request completion notification ARQE, the entry ENT determines that the memory access request MRQ held in the entry ENT has been accepted by the SDRAM, and shifts the processing to step S118. On the other hand, if the entry ENT has not received the corresponding access request completion notification ARQE, the entry ENT determines that the memory access request MRQ held in the entry ENT is not accepted by the SDRAM, and returns the process to step S112. The access request completion notification ARQE is generated after a predetermined clock cycle after the request selection unit 16 outputs the issuance request information RQINF, as will be described with reference to FIG.

ステップS118において、エントリENTは、保持部HLDに保持されたバリッドVLDをロウレベルL(論理0)にリセットし、エントリENTに保持されたメモリアクセス要求MRQを無効にする。次に、ステップS120において、エントリENTは、ステートSTを”アイドル”を示す情報に書き替える。”アイドル”は、エントリENTが有効なメモリアクセス要求MRQを保持しておらず、新たなメモリアクセス要求MRQを保持可能な空き状態であることを示す。エントリENTは、ステップS120の処理の後、処理をステップS102に戻す。そして、上述した動作が繰り返される。   In step S118, the entry ENT resets the valid VLD held in the holding unit HLD to the low level L (logic 0), and invalidates the memory access request MRQ held in the entry ENT. Next, in step S120, the entry ENT rewrites the state ST with information indicating “idle”. “Idle” indicates that the entry ENT does not hold a valid memory access request MRQ and is in a free state capable of holding a new memory access request MRQ. The entry ENT returns the process to step S102 after the process of step S120. Then, the above-described operation is repeated.

図6は、図2に示すリフレッシュ要求保持部12の一例を示す。リフレッシュ要求保持部12は、1個のエントリENTRを有する。エントリENTRは、リフレッシュ要求RRQに含まれるバリッドVLD、コマンドおよびアドレスを保持する保持部HLDと、ステートSTを保持する領域を有するステート制御部STCNTとを有する。ステート制御部STCNTは、リフレッシュ要求RRQ、リフレッシュ要求発行通知RRQS、コマンドパリティエラー情報CAPEおよびリフレッシュ要求完了通知RRQEの受信に基づいて、ステートSTを遷移させる。ステートSTの遷移の一例は、図8に示す。エントリENTRは、保持しているバリッドVLD、コマンドおよびアドレスと、ステートSTとを示すリフレッシュ要求情報RRQIを出力する。リフレッシュ要求保持部12のエントリENTRの動作の一例は、図7に示す。   FIG. 6 shows an example of the refresh request holding unit 12 shown in FIG. The refresh request holding unit 12 has one entry ENTR. The entry ENTR includes a valid VLD included in the refresh request RRQ, a holding unit HLD that holds a command and an address, and a state control unit STCNT having a region that holds the state ST. The state control unit STCNT changes the state ST based on reception of the refresh request RRQ, the refresh request issue notification RRQS, the command parity error information CAPE, and the refresh request completion notification RRQE. An example of the transition of the state ST is shown in FIG. The entry ENTR outputs refresh request information RRQI indicating the held valid VLD, command and address, and state ST. An example of the operation of the entry ENTR of the refresh request holding unit 12 is shown in FIG.

図7は、図6に示すリフレッシュ要求保持部12のエントリENTRの動作の一例を示す。図5に示す動作と同一または同様の動作は、図5と同じ符号を付し、詳細な説明は省略する。図7に示すフローは、図5に示すステップS102、S104、S108、S116が、ステップS102r、S104r、S108r、S116rに置き換えられる。   FIG. 7 shows an example of the operation of the entry ENTR of the refresh request holding unit 12 shown in FIG. The same or similar operations as those shown in FIG. 5 are denoted by the same reference numerals as those in FIG. In the flow shown in FIG. 7, steps S102, S104, S108, and S116 shown in FIG. 5 are replaced with steps S102r, S104r, S108r, and S116r.

ステップS102rにおいて、エントリENTRは、リフレッシュ要求RRQを受信したか否かを判定する。エントリENTRは、リフレッシュ要求RRQを受信した場合、処理をステップS104rに移行させ、リフレッシュ要求RRQを受信していない場合、ステップS102rの処理を繰り返す。   In step S102r, the entry ENTR determines whether or not a refresh request RRQ has been received. The entry ENTR shifts the process to step S104r when receiving the refresh request RRQ, and repeats the process of step S102r when not receiving the refresh request RRQ.

ステップS104rにおいて、エントリENTRは、リフレッシュ要求RRQに含まれるバリッドVLD、コマンドおよびアドレスを保持部HLDに保持する。保持領域HLDのバリッドVLDの領域には、有効なメモリアクセス要求MRQの保持を示す論理1が格納される。ステップS106の処理は、図5と同様である。ステートSTの”未発行”は、エントリENTRに保持されたリフレッシュ要求RRQが要求選択部16により選択されていないことを示す。すなわち、”未発行”は、エントリENTRに保持されたリフレッシュ要求RRQが、DIMMに供給されていないことを示す。   In step S104r, the entry ENTR holds the valid VLD, command, and address included in the refresh request RRQ in the holding unit HLD. In the valid VLD area of the holding area HLD, a logic 1 indicating the holding of a valid memory access request MRQ is stored. The processing in step S106 is the same as that in FIG. “Unissued” in the state ST indicates that the request selection unit 16 has not selected the refresh request RRQ held in the entry ENTR. That is, “unissued” indicates that the refresh request RRQ held in the entry ENTR is not supplied to the DIMM.

次に、ステップS108rにおいて、エントリENTRは、エントリENTRに保持されたリフレッシュ要求RRQに対応するリフレッシュ要求発行通知RRQSを受信したか否かを判定する。エントリENTRは、対応するリフレッシュ要求発行通知RRQSを受信した場合、処理をステップS110に移行させ、対応するリフレッシュ要求発行通知RRQSを受信していない場合、ステップS108rの処理を繰り返す。   Next, in step S108r, the entry ENTR determines whether or not a refresh request issue notification RRQS corresponding to the refresh request RRQ held in the entry ENTR has been received. If the entry ENTR receives the corresponding refresh request issuance notification RRQS, the process proceeds to step S110. If the entry ENTR has not received the corresponding refresh request issuance notification RRQS, the entry ENTR repeats the processing of step S108r.

ステップS110の処理は、図5と同様である。ステートSTの”発行済み”は、エントリENTRに保持されたリフレッシュ要求RRQが要求選択部16により選択されたことを示す。すなわち、”発行済み”は、エントリENTRに保持されたリフレッシュ要求RRQが、DIMMに供給されたことを示す。   The process in step S110 is the same as that in FIG. The “issued” state ST indicates that the refresh request RRQ held in the entry ENTR has been selected by the request selection unit 16. That is, “issued” indicates that the refresh request RRQ held in the entry ENTR is supplied to the DIMM.

ステップS112、S114の処理は、図5と同様である。ステップS114におけるステートSTの”リトライ”は、コマンドパリティエラー情報CAPEの発生により、エントリENTに保持されたリフレッシュ要求RRQをDIMMに再度発行することを示す。   The processes in steps S112 and S114 are the same as those in FIG. “Retry” in the state ST in step S114 indicates that the refresh request RRQ held in the entry ENT is issued again to the DIMM when the command parity error information CAPE is generated.

リフレッシュ要求発行通知RRQSを受信後、リフレッシュ要求完了通知RRQEを受信していないリフレッシュ要求RRQは、SDRAMに受け付けられていないリフレッシュ要求RRQである。SDRAMがリフレッシュ要求RRQを受け付ける前にコマンドパリティエラーを検出し、コマンドパリティエラー情報CAPEを出力した場合、そのリフレッシュ要求RRQは、リトライの対象になる。   The refresh request RRQ that has not received the refresh request completion notification RRQE after receiving the refresh request issue notification RRQS is a refresh request RRQ that has not been accepted by the SDRAM. When the SDRAM detects a command parity error before receiving the refresh request RRQ and outputs the command parity error information CAPE, the refresh request RRQ becomes a target of retry.

コマンドパリティエラー情報CAPEを受信しない場合、ステップS116rにおいて、エントリENTRは、エントリENTRに保持されたリフレッシュ要求RRQに対応するリフレッシュ要求完了通知RRQEを受信したか否かを判定する。エントリENTRは、対応するリフレッシュ要求完了通知RRQEを受信した場合、エントリENTに保持されたリフレッシュ要求RRQがSDRAMに受け付けられたと判断し、処理をステップS118に移行させる。一方、エントリENTRは、対応するリフレッシュ要求完了通知RRQEを受信していない場合、エントリENTに保持されたリフレッシュ要求RRQがSDRAMに受け付けられていないと判断し、処理をステップS112に戻す。ステップS118、S120の処理は、図5と同様である。そして、エントリENTRは、ステップS120の処理の後、処理をステップS102rに戻す。   When the command parity error information CAPE is not received, in step S116r, the entry ENTR determines whether or not a refresh request completion notification RRQE corresponding to the refresh request RRQ held in the entry ENTR has been received. When the entry ENTR receives the corresponding refresh request completion notification RRQE, it determines that the refresh request RRQ held in the entry ENT has been accepted by the SDRAM, and shifts the processing to step S118. On the other hand, if the entry ENTR has not received the corresponding refresh request completion notification RRQE, the entry ENTR determines that the refresh request RRQ held in the entry ENT is not accepted by the SDRAM, and returns the process to step S112. The processing in steps S118 and S120 is the same as that in FIG. Then, the entry ENTR returns the process to step S102r after the process of step S120.

図8は、図4および図6に示すステート制御部STCNTのステートSTの遷移の一例を示す。図8において、下線を付した文字は、アクセス要求保持部10のステート制御部STCNTの動作を示し、括弧内の文字は、リフレッシュ要求保持部14のステート制御部STCNTの動作を示す。以下では、アクセス要求保持部10の各エントリENTのステート制御部STCNTにおけるステートSTの遷移が説明される。リフレッシュ要求保持部14のエントリENTRのステート制御部STCNTにおけるステートSTの遷移は、以下の説明を次のように読み替えることで説明される。メモリアクセス要求MRQは、リフレッシュ要求RRQに読み替え、アクセス要求発行通知ARQSは、リフレッシュ要求発行通知RRQSに読み替え、アクセス要求完了通知ARQEは、リフレッシュ要求完了通知RRQEに読み替える。   FIG. 8 shows an example of transition of the state ST of the state control unit STCNT shown in FIG. 4 and FIG. In FIG. 8, the underlined characters indicate the operation of the state control unit STCNT of the access request holding unit 10, and the characters in parentheses indicate the operation of the state control unit STCNT of the refresh request holding unit 14. In the following, the transition of the state ST in the state control unit STCNT of each entry ENT of the access request holding unit 10 will be described. The transition of the state ST in the state control unit STCNT of the entry ENTR of the refresh request holding unit 14 will be described by reading the following description as follows. The memory access request MRQ is read as a refresh request RRQ, the access request issuance notification ARQS is read as a refresh request issuance notification RRQS, and the access request completion notification ARQE is read as a refresh request completion notification RRQE.

メモリアクセス要求MRQを受信する前、ステート制御部STCNTは、ステートSTを”アイドル”に設定する。”アイドル”は、記憶制御装置MACのパワーオン後またはリセット後の初期状態であり、メモリアクセス要求MRQの受信待ちの状態を示す。   Prior to receiving the memory access request MRQ, the state control unit STCNT sets the state ST to “idle”. “Idle” is an initial state after the storage controller MAC is powered on or reset, and indicates a state of waiting for reception of the memory access request MRQ.

”アイドル”中にメモリアクセス要求MRQを受信した場合、アクセス要求MRQを保持したエントリENTのステート制御部STCNTは、ステートSTを”未発行”に設定する。”未発行”は、アクセス要求発行通知ARQSの受信待ちの状態を示す。   When the memory access request MRQ is received during “idle”, the state control unit STCNT of the entry ENT holding the access request MRQ sets the state ST to “unissued”. “Not issued” indicates a state of waiting to receive an access request issue notification ARQS.

”未発行”中にアクセス要求発行通知ARQSを受信した場合、アクセス要求発行通知ARQSに対応するメモリアクセス要求MRQを保持するエントリENTのステート制御部STCNTは、ステートSTを”発行済み”に設定する。”発行済み”は、アクセス要求完了通知ARQEの受信待ちの状態を示す。   When the access request issue notification ARQS is received during “not issued”, the state control unit STCNT of the entry ENT holding the memory access request MRQ corresponding to the access request issue notification ARQS sets the state ST to “issued”. . “Issued” indicates a state of waiting for reception of an access request completion notification ARQE.

”発行済み”中にアクセス要求完了通知ARQEを受信した場合、アクセス要求完了通知ARQEに対応するメモリアクセス要求MRQを保持するエントリENTのステート制御部STCNTは、ステートSTを”アイドル”に戻す。一方、”発行済み”中にコマンドパリティエラー情報CAPEを受信した場合、ステート制御部STCNTは、ステートSTを”リトライ”に設定する。”リトライ”は、リトライの対象のアクセス要求MRQに対応するアクセス要求発行通知ARQSの受信待ちの状態を示す。   When the access request completion notification ARQE is received during “issued”, the state control unit STCNT of the entry ENT holding the memory access request MRQ corresponding to the access request completion notification ARQE returns the state ST to “idle”. On the other hand, when the command parity error information CAPE is received during “issued”, the state control unit STCNT sets the state ST to “retry”. “Retry” indicates a state of waiting for reception of an access request issue notification ARQS corresponding to the access request MRQ to be retried.

”リトライ”中にアクセス要求発行通知ARQSを受信した場合、アクセス要求発行通知ARQSに対応するメモリアクセス要求MRQを保持するエントリENTのステート制御部STCNTは、ステートSTを”発行済み”に設定する。   When the access request issue notification ARQS is received during “retry”, the state control unit STCNT of the entry ENT holding the memory access request MRQ corresponding to the access request issue notification ARQS sets the state ST to “issued”.

図9は、図2に示す要求選択部16の動作の一例を示す。例えば、図9に示す処理は、要求選択部16のハードウェアにより実現される。なお、図9は、説明を分かりやすくするために要求選択部16の動作を分解して示したものであり、実際の動作では、各ステップの幾つかは、並列に実行されてもよい。例えば、ステップS202、S208、S210は、並列に実行されてもよい。   FIG. 9 shows an example of the operation of the request selection unit 16 shown in FIG. For example, the process illustrated in FIG. 9 is realized by the hardware of the request selection unit 16. Note that FIG. 9 is an exploded view of the operation of the request selection unit 16 for easy understanding of the description. In an actual operation, some of the steps may be executed in parallel. For example, steps S202, S208, and S210 may be executed in parallel.

まず、ステップS202において、要求選択部16は、エラー検出部24からのモード情報MDが通常モードを示す場合、処理をステップS204に移行し、モード情報MDが通常モードを示さない場合、処理をステップS208に移行する。   First, in step S202, the request selection unit 16 proceeds to step S204 when the mode information MD from the error detection unit 24 indicates the normal mode, and performs the process when the mode information MD does not indicate the normal mode. The process proceeds to S208.

ステップS204において、要求選択部16は、”未発行”のステートSTを含むアクセス要求情報ARQIまたはリフレッシュ要求情報RRQIがあるか否かを判定する。”未発行”のステートSTを含むアクセス要求情報ARQIまたはリフレッシュ要求情報RRQIがある場合、処理はステップS206に移行される。”未発行”のステートSTを含むアクセス要求情報ARQIおよびリフレッシュ要求情報RRQIがない場合、処理はステップS202に戻る。   In step S204, the request selection unit 16 determines whether there is access request information ARQI or refresh request information RRQI including the “unissued” state ST. If there is access request information ARQI or refresh request information RRQI including the “unissued” state ST, the process proceeds to step S206. If there is no access request information ARQI and refresh request information RRQI including the “unissued” state ST, the process returns to step S202.

ステップS206において、要求選択部16は、”未発行”のステートSTを含むアクセス要求情報ARQIまたはリフレッシュ要求情報RRQIのいずれか1つを選択し、発行要求情報RQINFとして出力する。すなわち、アクセス要求MRQまたはリフレッシュ要求RRQがDIMMに出力され、アクセス動作またはリフレッシュ動作が実行される。ステップS206の後、処理は、ステップS202に戻る。   In step S206, the request selection unit 16 selects one of the access request information ARQI and the refresh request information RRQI including the “unissued” state ST, and outputs it as the issue request information RQINF. That is, the access request MRQ or the refresh request RRQ is output to the DIMM, and the access operation or the refresh operation is executed. After step S206, the process returns to step S202.

一方、ステップS208において、要求選択部16は、モード情報MDが再開待ちモードを示す場合、処理をステップS202に戻し、モード情報MDが再開待ちモードを示さない場合、処理をステップS210に移行する。図13で説明するように、再開待ちモードは、SDRAMがコマンドの受付を禁止するコマンドパリティエラー情報CAPEのアサート期間であり、発行要求情報RQINFの出力の再開待ちの状態である。このため、要求選択部16は、アクセス要求MRQまたはリフレッシュ要求RRQを選択せず、コマンドCMDはSDRAMに供給されない。   On the other hand, in step S208, the request selection unit 16 returns the process to step S202 when the mode information MD indicates the restart waiting mode, and proceeds to step S210 when the mode information MD does not indicate the restart waiting mode. As described with reference to FIG. 13, the restart wait mode is an assertion period of command parity error information CAPE in which the SDRAM prohibits acceptance of commands, and is a state of waiting for restart of output of the issue request information RQINF. For this reason, the request selection unit 16 does not select the access request MRQ or the refresh request RRQ, and the command CMD is not supplied to the SDRAM.

ステップS210において、要求選択部16は、モード情報MDがリトライ前準備モードを示す場合、処理をステップS212に移行し、モード情報MDがリトライ前準備モードを示さない場合、処理をステップS216に移行する。なお、モード情報MDがリトライ前準備モードを示さない場合、要求選択部16は、モード情報MDがリトライモードであると判定する。   In step S210, if the mode information MD indicates the pre-retry preparation mode, the request selection unit 16 proceeds to step S212. If the mode information MD does not indicate the pre-retry preparation mode, the request selection unit 16 proceeds to step S216. . If the mode information MD does not indicate the pre-retry preparation mode, the request selection unit 16 determines that the mode information MD is the retry mode.

ステップS212において、要求選択部16は、エラー検出部24からリトライ制御要求RTRQ(プリチャージ要求)を受信した場合、処理をステップS214に移行し、リトライ制御要求RTRQを受信していない場合、処理をステップS202に戻す。ステップS214において、要求選択部16は、リトライ制御要求RTRQを選択して発行要求情報RQINFとして出力する。なお、アクセス信号生成部18は、リトライ制御要求RTRQに対応する発行要求情報RQINFに基づいて、例えば、オールバンクプリチャージコマンドをDIMMに出力する。DIMM内の全てのSDRAMは、オールバンクプリチャージコマンドを受けて全てのバンクでプリチャージ動作を実行し、アクティブコマンドおよびリフレッシュコマンドを受信可能なスタンバイ状態になる。   In step S212, if the request selection unit 16 receives a retry control request RTRQ (precharge request) from the error detection unit 24, the request selection unit 16 proceeds to step S214. If the request selection unit 16 does not receive the retry control request RTRQ, the processing is performed. It returns to step S202. In step S214, the request selection unit 16 selects a retry control request RTRQ and outputs it as issue request information RQINF. Note that the access signal generation unit 18 outputs, for example, an all-bank precharge command to the DIMM based on the issue request information RQINF corresponding to the retry control request RTRQ. All SDRAMs in the DIMM receive an all-bank precharge command, execute a precharge operation in all banks, and enter a standby state in which an active command and a refresh command can be received.

一方、ステップS216において、要求選択部16は、”リトライ”のステートSTを含むアクセス要求情報ARQIまたはリフレッシュ要求情報RRQIがあるか否かを判定する。”リトライ”のステートSTを含むアクセス要求情報ARQIまたはリフレッシュ要求情報RRQIがある場合、処理はステップS218に移行される。”リトライ”のステートSTを含むアクセス要求情報ARQIおよびリフレッシュ要求情報RRQIがない場合、処理はステップS202に戻る。   On the other hand, in step S216, the request selection unit 16 determines whether there is access request information ARQI or refresh request information RRQI including the “retry” state ST. When there is access request information ARQI or refresh request information RRQI including the “retry” state ST, the process proceeds to step S218. If there is no access request information ARQI and refresh request information RRQI including the “retry” state ST, the process returns to step S202.

ステップS218において、要求選択部16は、”リトライ”のステートSTを含むアクセス要求情報ARQIまたはリフレッシュ要求情報RRQIのいずれか1つを選択し、発行要求情報RQINFとして出力する。すなわち、コマンドパリティエラーの発生により、SDRAMに実行されなかったコマンドをSDRAMに再度発行するリトライ処理が実行される。ステップS218の後、処理はステップS202に戻る。   In step S218, the request selection unit 16 selects either one of the access request information ARQI or the refresh request information RRQI including the “retry” state ST, and outputs it as issuance request information RQINF. That is, a retry process is executed in which a command that has not been executed in the SDRAM is reissued to the SDRAM due to the occurrence of a command parity error. After step S218, the process returns to step S202.

図10は、図2に示すパイプライン制御部20の一例を示す。パイプライン制御部20は、発行要求情報RQINFをクロックサイクル毎に順次に保持するシフトレジスタSFTRを有する。また、パイプライン制御部20は、要求完了通知生成部RQEG、ライトデータ要求生成部WDRQG、ライトデータ制御信号生成部WDCNTG、リードデータ制御信号生成部RDCNTGおよびリードデータ生成部RDGを有する。   FIG. 10 shows an example of the pipeline control unit 20 shown in FIG. The pipeline control unit 20 includes a shift register SFTR that sequentially holds the issue request information RQINF for each clock cycle. The pipeline control unit 20 includes a request completion notification generation unit RQEG, a write data request generation unit WDRQG, a write data control signal generation unit WDCNTG, a read data control signal generation unit RDCNTG, and a read data generation unit RDG.

シフトレジスタSFTRは、発行要求情報RQINFを発行順に保持する複数のステージSTG(STG1−STG28)を有する。各ステージSTGは、コマンドパリティエラー情報CAPEと、発行要求情報RQINFに含まれるライトデータ識別番号WDID、要求識別番号RQID、アドレスAD、コマンドCMDおよびバリッドVLDとを保持する。各ステージSTGに保持されたコマンドパリティエラー情報CAPEおよび発行要求情報RQINFは、クロックに同期して次段のステージSTGに転送される。   The shift register SFTR has a plurality of stages STG (STG1-STG28) that hold the issue request information RQINF in the order of issue. Each stage STG holds command parity error information CAPE, a write data identification number WDID, a request identification number RQID, an address AD, a command CMD, and a valid VLD included in the issue request information RQINF. Command parity error information CAPE and issue request information RQINF held in each stage STG are transferred to the next stage STG in synchronization with the clock.

例えば、図2に示す要求選択部16がメモリアクセス要求MRQまたはリフレッシュ要求RRQを選択した後、メモリアクセス要求MRQまたはリフレッシュ要求RRQに対応するコマンドCMDがSDRAMに受け付けられるまで最大7クロックサイクル掛かる。すなわち、要求選択部16が発行要求情報RQINFを出力した後、SDRAMが発行要求情報RQINFに対応するコマンドCMDにエラーがないことを判定するまでに最大7クロックサイクル掛かる。換言すれば、要求選択部16が発行要求情報RQINFを出力した後、SDRAMが発行要求情報RQINFに対応するコマンドCMDのエラーを示すコマンドパリティエラー情報CAPEを記憶制御装置MACが受信するまで最大7クロックサイクル掛かる。   For example, after the request selection unit 16 shown in FIG. 2 selects the memory access request MRQ or the refresh request RRQ, it takes a maximum of 7 clock cycles until the command CMD corresponding to the memory access request MRQ or the refresh request RRQ is accepted by the SDRAM. That is, after the request selection unit 16 outputs the issue request information RQINF, it takes a maximum of 7 clock cycles until the SDRAM determines that there is no error in the command CMD corresponding to the issue request information RQINF. In other words, after the request selection unit 16 outputs the issuance request information RQINF, until the storage controller MAC receives the command parity error information CAPE indicating the error of the command CMD corresponding to the issuance request information RQINF, up to 7 clocks. It takes a cycle.

このため、要求完了通知生成部RQEGは、コマンドCMDにエラーがないことの判明後にステージSTG8に保持された情報に基づいて、アクセス要求完了通知ARQE、リフレッシュ要求完了通知RRQEまたはリトライ制御要求完了通知RTRQEを出力する。リトライ制御要求完了通知RTRQEは、メモリアクセス要求MRQまたはリフレッシュ要求RRQをリトライする前に供給されるプリチャージコマンドがSDRAMに受け付けられたことを示す。   Therefore, the request completion notification generation unit RQEG, based on the information held in the stage STG8 after it is determined that there is no error in the command CMD, the access request completion notification ARQE, the refresh request completion notification RRQE, or the retry control request completion notification RTRQE Is output. The retry control request completion notification RTRQE indicates that a precharge command supplied before retrying the memory access request MRQ or the refresh request RRQ is accepted by the SDRAM.

このように、記憶制御装置MACは、パイプライン制御部20を利用することで、SDRAMからコマンドCMDの受付状況の通知を受けることなく、コマンドがSDRAMに受け付けられたことを判断する。なお、発行要求情報RQINFの出力からコマンドCMDがSDRAMに受け付けられるまでの8クロックサイクルは、メモリ制御回路MACの動作仕様と、DIMMおよびSDRAMの動作仕様とに基づいて決められる。   As described above, the storage control device MAC uses the pipeline control unit 20 to determine that the command has been received by the SDRAM without receiving a command CMD reception status notification from the SDRAM. The eight clock cycles from the output of the issue request information RQINF until the command CMD is received by the SDRAM are determined based on the operation specifications of the memory control circuit MAC and the operation specifications of the DIMM and SDRAM.

要求完了通知生成部RQEGは、ステージSTG8の”CAPE”の領域に論理1が保持されている場合、アクセス要求完了通知ARQE、リフレッシュ要求完了通知RRQEおよびリトライ制御要求完了通知RTRQEの出力を抑止する。これにより、SDRAMが受け付けていないメモリアクセス要求MRQがアクセス要求保持部10から削除されることを抑止することができる。また、SDRAMが受け付けていないリフレッシュ要求RRQがリフレッシュ要求保持部14から削除されることを抑止することができる。さらに、SDRAMが受け付けていないリトライ制御要求RTRQ(プリチャージ要求)がエラー検出部24から削除されることを抑止することができる。   The request completion notification generation unit RQEG suppresses the output of the access request completion notification ARQE, the refresh request completion notification RRQE, and the retry control request completion notification RTRQE when the logic 1 is held in the “CAPE” area of the stage STG8. Thereby, it is possible to prevent the memory access request MRQ that is not accepted by the SDRAM from being deleted from the access request holding unit 10. Further, it is possible to prevent the refresh request RRQ that is not accepted by the SDRAM from being deleted from the refresh request holding unit 14. Furthermore, it is possible to prevent a retry control request RTRQ (precharge request) that is not received by the SDRAM from being deleted from the error detection unit 24.

要求完了通知生成部RQEGおよび図4に示すステート制御部STCNTは、エントリENTの保持部HLDに保持されたメモリアクセス要求MRQを削除し、あるいはメモリアクセス要求MRQの削除を抑止する要求制御部の一例である。また、要求完了通知生成部RQEGおよび図6に示すステート制御部STCNTは、エントリENTRの保持部HLDに保持されたリフレッシュ要求RRQを削除し、あるいはリフレッシュ要求RRQの削除を抑止する要求制御部の一例である。   The request completion notification generation unit RQEG and the state control unit STCNT shown in FIG. 4 are examples of a request control unit that deletes the memory access request MRQ held in the holding unit HLD of the entry ENT or suppresses deletion of the memory access request MRQ. It is. Further, the request completion notification generation unit RQEG and the state control unit STCNT shown in FIG. 6 are examples of a request control unit that deletes the refresh request RRQ held in the holding unit HLD of the entry ENTR or suppresses the deletion of the refresh request RRQ. It is.

ライトデータ要求生成部WDRQGは、ステージSTG12に保持された情報に基づいて、ライトデータ要求WDRQを出力する。また、ライトデータ要求生成部WDRQGは、ステージSTG12の”CAPE”の領域に論理1が保持されている場合、ライトデータ要求WDRQの出力を抑止する。これにより、SDRAMがライトコマンドを受け付けていないにも拘わらず、ライトデータ要求WDRQが出力され、CPUがライトデータを出力すること(すなわち、誤動作)を抑止することができる。   The write data request generation unit WDRQG outputs a write data request WDRQ based on the information held in the stage STG12. Further, the write data request generation unit WDRQG suppresses the output of the write data request WDRQ when the logic 1 is held in the “CAPE” area of the stage STG12. As a result, the write data request WDRQ is output even though the SDRAM does not accept the write command, and the CPU can be prevented from outputting the write data (that is, malfunction).

ライトデータ制御信号生成部WDCNTGは、ステージSTG16に保持された情報に基づいて、ライトデータ制御信号WDCNTを出力する。また、ライトデータ制御信号生成部WDCNTGは、ステージSTG16の”CAPE”の領域に論理1が保持されている場合、ライトデータ制御信号WDCNTの出力を抑止する。これにより、SDRAMがライトコマンドを受け付けていないにも拘わらず、無効なライトデータがライトデータ制御部26からSDRAMに出力されること(すなわち、誤動作)を抑止することができる。   The write data control signal generation unit WDCNTG outputs a write data control signal WDCNT based on the information held in the stage STG16. Further, the write data control signal generation unit WDCNTG suppresses the output of the write data control signal WDCNT when the logic 1 is held in the “CAPE” area of the stage STG16. Thus, it is possible to prevent invalid write data from being output from the write data control unit 26 to the SDRAM (that is, malfunction) even though the SDRAM does not accept the write command.

リードデータ制御信号生成部RDCNTGは、ステージSTG24に保持された情報に基づいて、リードデータ制御信号RDCNTを出力する。また、リードデータ制御信号生成部RDCNTGは、ステージSTG24の”CAPE”の領域に論理1が保持されている場合、リードデータ制御信号RDCNTの出力を抑止する。これにより、SDRAMがリードコマンドを受け付けていないにも拘わらず、リードデータ制御信号RDCNTが出力され、無効なリードデータがリードデータ制御部28からCPUに出力されること(すなわち、誤動作)を抑止することができる。   The read data control signal generation unit RDCNTG outputs a read data control signal RDCNT based on the information held in the stage STG24. Further, the read data control signal generation unit RDCNTG suppresses the output of the read data control signal RDCNT when the logic 1 is held in the “CAPE” area of the stage STG24. As a result, the read data control signal RDCNT is output even though the SDRAM does not accept the read command, and invalid read data is prevented from being output from the read data control unit 28 to the CPU (that is, malfunction). be able to.

リードデータ生成部RDGは、ステージSTG28に保持された情報に基づいて、バリッド信号VLD(R)および要求識別番号RQID(R)を出力する。また、リードデータ生成部RDGは、ステージSTG28の”CAPE”の領域に論理1が保持されている場合、バリッド信号VLD(R)および要求識別番号RQID(R)の出力を抑止する。   The read data generation unit RDG outputs a valid signal VLD (R) and a request identification number RQID (R) based on the information held in the stage STG28. Further, the read data generation unit RDG suppresses the output of the valid signal VLD (R) and the request identification number RQID (R) when the logic 1 is held in the “CAPE” area of the stage STG28.

上述したように、要求選択部16が発行要求情報RQINFを出力した後、SDRAMが発行要求情報RQINFに対応するコマンドCMDのエラーを示すコマンドパリティエラー情報CAPEを受信するまでの最大時間は、7クロックサイクルである。このため、発行要求情報RQINFの発行から7クロックサイクルが経過する前にコマンドパリティエラー情報CAPEを受信した場合、その発行要求情報RQINFはリトライの対象となる。すなわち、コマンドパリティエラー情報CAPEを受信した時点でステートSTが”発行済み”のメモリアクセス要求MRQおよびリフレッシュ要求RRQは、リトライの対象になる。   As described above, after the request selection unit 16 outputs the issue request information RQINF, the maximum time until the SDRAM receives the command parity error information CAPE indicating the error of the command CMD corresponding to the issue request information RQINF is 7 clocks. Cycle. For this reason, when the command parity error information CAPE is received before seven clock cycles have elapsed from the issue of the issue request information RQINF, the issue request information RQINF becomes a retry target. That is, when the command parity error information CAPE is received, the memory access request MRQ and the refresh request RRQ whose state ST is “issued” are subject to retry.

リトライの対象の発行要求情報RQINFに対応するアクセス要求完了通知ARQEおよびリフレッシュ要求完了通知RRQEの出力を抑制するために、ステージSTG1−STG8におけるコマンドパリティエラー情報CAPEの入力経路に論理回路が挿入される。   In order to suppress the output of the access request completion notification ARQE and the refresh request completion notification RRQE corresponding to the issue request information RQINF to be retried, a logic circuit is inserted in the input path of the command parity error information CAPE in the stages STG1 to STG8. .

例えば、ステージSTG1は、DIMMからのコマンドパリティエラー情報CAPEとバリッドVLDとの論理積(AND)をとった論理を受ける。ステージSTG2−STG8は、DIMMからのコマンドパリティエラー情報CAPEとバリッドVLDとの論理積(AND)と、前段からのコマンドパリティエラー情報CAPEとの論理和(OR)をとった論理を受ける。ステージSTG9−STG28は、前段からのコマンドパリティエラー情報CAPEを受ける。   For example, the stage STG1 receives a logic that is a logical product (AND) of the command parity error information CAPE from the DIMM and the valid VLD. Stages STG2 to STG8 receive a logical product of the logical product (AND) of the command parity error information CAPE from the DIMM and the valid VLD and the logical sum (OR) of the command parity error information CAPE from the previous stage. Stages STG9 to STG28 receive command parity error information CAPE from the previous stage.

これにより、リトライの対象と判定されたメモリアクセス要求MRQ(ライトコマンド)に対応するライトデータ要求WDRQおよびライトデータ制御信号WDCNTが出力されることを抑止することができる。また、リトライの対象と判定されたメモリアクセス要求MRQ(リードコマンド)に対応するリードデータ制御信号RDCNT、バリッド信号VLD(R)および要求識別番号RQID(R)が出力されることを抑止することができる。パイプライン制御部20の動作の一例は、図21に示す。   As a result, the output of the write data request WDRQ and the write data control signal WDCNT corresponding to the memory access request MRQ (write command) determined as the retry target can be suppressed. Further, the output of the read data control signal RDCNT, the valid signal VLD (R), and the request identification number RQID (R) corresponding to the memory access request MRQ (read command) determined to be a retry target may be suppressed. it can. An example of the operation of the pipeline control unit 20 is shown in FIG.

図11は、図2に示す要求発行リリース通知生成部22の一例を示す。要求発行リリース通知生成部22は、要求リリース通知生成部221および要求発行通知生成部222を有する。要求リリース通知生成部221は、アクセス要求完了通知ARQEの受信に基づいて、メモリアクセス要求リリース情報MRQRをCPUに出力する。すなわち、CPUからのメモリアクセス要求MRQに対応するコマンドCMDがSDRAMに受け付けられたこと示すメモリアクセス要求リリース情報MRQRが出力される。   FIG. 11 shows an example of the request issuance release notification generator 22 shown in FIG. The request issuance release notification generation unit 22 includes a request release notification generation unit 221 and a request issuance notification generation unit 222. The request release notification generation unit 221 outputs memory access request release information MRQR to the CPU based on the reception of the access request completion notification ARQE. That is, the memory access request release information MRQR indicating that the command CMD corresponding to the memory access request MRQ from the CPU has been received by the SDRAM is output.

要求発行通知生成部222は、発行要求情報RQINFの受信に基づいて、アクセス要求発行通知ARQSまたはリフレッシュ要求発行通知RRQSを出力する。すなわち、メモリアクセス要求MRQがDIMMに供給されたことが、アクセス要求保持部10に通知され、またはリフレッシュ要求RRQがDIMMに供給されたことが、リフレッシュ要求保持部14に通知される。   The request issuance notification generation unit 222 outputs an access request issuance notification ARQS or a refresh request issuance notification RRQS based on reception of the issuance request information RQINF. That is, the access request holding unit 10 is notified that the memory access request MRQ is supplied to the DIMM, or the refresh request holding unit 14 is notified that the refresh request RRQ is supplied to the DIMM.

図12は、図2に示すエラー検出部24の一例を示す。エラー検出部24は、リトライ制御部RTCNTを有する。リトライ制御部RTCNTは、メモリアクセス要求MRQまたはリフレッシュ要求RRQをリトライする場合に、リトライ処理の状態を示すモード情報MDを保持するレジスタMDRと、リトライ処理の回数を計数するカウンタRCOUNTとを有する。なお、カウンタRCOUNTは、エラー検出部24の外部に配置されてもよい。レジスタMDRによるモードの遷移の一例は、図13に示す。   FIG. 12 shows an example of the error detection unit 24 shown in FIG. The error detection unit 24 includes a retry control unit RTCNT. When retrying the memory access request MRQ or the refresh request RRQ, the retry control unit RTCNT includes a register MDR that holds mode information MD indicating the state of the retry process, and a counter RCOUNT that counts the number of retry processes. The counter RCOUNT may be disposed outside the error detection unit 24. An example of mode transition by the register MDR is shown in FIG.

リトライ制御部RTCNTは、メモリアクセス要求MRQまたはリフレッシュ要求RRQをリトライする場合に、SDRAMにプリチャージ動作を実行させるために、リトライ制御要求RTRQ(プリチャージ要求)を出力する。また、リトライ制御部RTCNTは、コマンドパリティエラー情報CAPEの受信毎にカウンタRCOUNTの計数値をカウントアップする。そして、リトライ制御部RTCNTは、コマンドパリティエラー情報CAPEの受信回数(すなわち、リトライ回数)が所定値VTになった場合、システムエラー情報SYSEをCPUに出力する。リトライ制御部RTCNTは、カウンタRCOUNTの計数値が所定値VTに達した場合に、CPUにシステムエラーを示すシステムエラー情報SYSEを出力するシステムエラー検出部の一例である。   When retrying the memory access request MRQ or the refresh request RRQ, the retry control unit RTCNT outputs a retry control request RTRQ (precharge request) to cause the SDRAM to execute a precharge operation. Further, the retry control unit RTCNT counts up the count value of the counter RCOUNT every time the command parity error information CAPE is received. Then, the retry control unit RTCNT outputs the system error information SYSE to the CPU when the number of times the command parity error information CAPE is received (that is, the number of retries) reaches a predetermined value VT. The retry control unit RTCNT is an example of a system error detecting unit that outputs system error information SYSE indicating a system error to the CPU when the count value of the counter RCOUNT reaches a predetermined value VT.

図13は、図12に示すリトライ制御部RTCNTによるモード情報MDの遷移の一例を示す。コマンドパリティエラー情報CAPEを受信する前、リトライ制御部RTCNTは、モード情報MDを通常モードに設定する。通常モードは、記憶制御装置MACのパワーオン後またはリセット後の初期状態であり、リトライ処理が発生していない状態を示す。   FIG. 13 shows an example of transition of mode information MD by the retry control unit RTCNT shown in FIG. Before receiving the command parity error information CAPE, the retry control unit RTCNT sets the mode information MD to the normal mode. The normal mode is an initial state after power-on or reset of the storage control device MAC, and indicates a state where no retry process has occurred.

通常モード中にコマンドパリティエラー情報CAPEを受信した場合、リトライ制御部RTCNTは、モード情報MDを再開待ちモードに遷移させる。発行要求情報RQINFの出力は、”再開待ち”の間抑制される。再開待ちモードは、アサート状態のコマンドパリティエラー情報CAPEがネゲートされるまでの状態であり、発行要求情報RQINFの出力の再開待ちの状態である。   When the command parity error information CAPE is received during the normal mode, the retry control unit RTCNT changes the mode information MD to the restart waiting mode. The output of the issue request information RQINF is suppressed during “waiting for resumption”. The resumption waiting mode is a state until the asserted command parity error information CAPE is negated, and is a state of waiting for resumption of output of the issue request information RQINF.

再開待ちモード中にコマンドパリティエラー情報CAPEがネゲートされた場合、リトライ制御部RTCNTは、モード情報MDをリトライ前準備モードに遷移させる。リトライ前準備モードは、リトライ処理を実行する前にSDRAMの動作状態をリセット(プリチャージ)する状態である。   When the command parity error information CAPE is negated during the restart waiting mode, the retry control unit RTCNT shifts the mode information MD to the pre-retry preparation mode. The pre-retry preparation mode is a state in which the operation state of the SDRAM is reset (precharged) before executing the retry process.

リトライ前準備モード中にリトライ制御要求完了通知RTRQEを受信した場合、リトライ制御部RTCNTは、モード情報MDをリトライモードに遷移させる。すなわち、SDRAMのプリチャージ動作が完了した場合、リトライ制御部RTCNTは、メモリアクセス要求MRQまたはリフレッシュ要求RRQのリトライを実行するために、モード情報MDをリトライモードに遷移する。リトライモード中にメモリアクセス要求MRQまたはリフレッシュ要求RRQのリトライが完了した場合、リトライ制御部RTCNTは、モード情報MDを通常モードに遷移させる。   When the retry control request completion notification RTRQE is received during the pre-retry preparation mode, the retry control unit RTCNT changes the mode information MD to the retry mode. That is, when the precharge operation of the SDRAM is completed, the retry control unit RTCNT transitions the mode information MD to the retry mode in order to retry the memory access request MRQ or the refresh request RRQ. When the retry of the memory access request MRQ or the refresh request RRQ is completed during the retry mode, the retry control unit RTCNT changes the mode information MD to the normal mode.

図14は、図2に示す記憶制御装置MACにおけるコマンドパリティエラー情報CAPEの受信時の動作の一例を示す。図14は、記憶制御装置MACの全体の動作を示す。なお、図14は、説明を分かりやすくするために記憶制御装置MACの動作を分解して示しており、実際の動作では、各ステップの幾つかは、並列に実行されてもよい。   FIG. 14 shows an example of the operation at the time of receiving the command parity error information CAPE in the storage controller MAC shown in FIG. FIG. 14 shows the overall operation of the storage controller MAC. FIG. 14 shows the operation of the storage control device MAC in an exploded manner for easy understanding of the description. In an actual operation, some of the steps may be executed in parallel.

まず、ステップS302において、記憶制御装置MACは、コマンドパリティエラー情報CAPEがハイレベルHにアサートされた場合、処理をステップS400に移行する。コマンドパリティエラー情報CAPEがアサートされない場合(ロウレベル)、記憶制御装置MACは、ステップS302を繰り返す。ステップS400において、記憶制御装置MACは、図4および図6に示すステート制御部STCNTのステートSTの設定動作を実行する。ステップS400の一例は、図15に示す。   First, in step S302, if the command parity error information CAPE is asserted to a high level H, the storage controller MAC moves the process to step S400. When the command parity error information CAPE is not asserted (low level), the storage controller MAC repeats step S302. In step S400, the storage control device MAC executes the state ST setting operation of the state control unit STCNT shown in FIG. 4 and FIG. An example of step S400 is shown in FIG.

次に、ステップS306において、記憶制御装置MACは、図12に示すエラー検出部24のカウンタRCOUNTの計数値をカウントアップする。次に、ステップS308において、記憶制御装置MACは、エラー検出部24のモードレジスタMDRに再開待ちモードを示すモード情報MDを格納する。   Next, in step S306, the storage control device MAC counts up the count value of the counter RCOUNT of the error detection unit 24 shown in FIG. Next, in step S308, the storage control device MAC stores mode information MD indicating the restart waiting mode in the mode register MDR of the error detection unit 24.

次に、ステップS310において、記憶制御装置MACは、コマンドパリティエラー情報CAPEがロウレベルLにネゲートされるのを待ち、コマンドパリティエラー情報CAPEがネゲートされた場合、処理をステップS312に移行する。コマンドパリティエラー情報CAPEのアサート期間は、SDRAMがコマンドを受け付けない期間である。   Next, in step S310, the storage controller MAC waits for the command parity error information CAPE to be negated to a low level L. If the command parity error information CAPE is negated, the process proceeds to step S312. The assertion period of the command parity error information CAPE is a period in which the SDRAM does not accept a command.

ステップS312において、記憶制御装置MACは、エラー検出部24のモードレジスタMDRにリトライ前準備モードを示すモード情報MDを格納する。次に、ステップS314において、記憶制御装置MACは、エラー検出部24からリトライ制御要求RTRQを発行し、SDRAMにプリチャージ動作を実行させる。   In step S312, the storage controller MAC stores the mode information MD indicating the pre-retry preparation mode in the mode register MDR of the error detection unit 24. Next, in step S314, the storage control device MAC issues a retry control request RTRQ from the error detection unit 24, and causes the SDRAM to execute a precharge operation.

次に、ステップS316において、記憶制御装置MACは、コマンドパリティエラー情報CAPEがハイレベルHにアサートされた場合(CAPEが連続して発生した場合)、処理をステップS332に移行する。コマンドパリティエラー情報CAPEがアサートされない場合、記憶制御装置MACは、処理をステップS318に移行する。   Next, in step S316, when the command parity error information CAPE is asserted to the high level H (when CAPE is continuously generated), the storage controller MAC moves the process to step S332. If the command parity error information CAPE is not asserted, the storage controller MAC moves the process to step S318.

ステップS318において、記憶制御装置MACは、リトライ制御要求完了通知RTRQEが発生した場合、プリチャージコマンドがSDRAMに受け付けられたため、処理をステップS320に移行する。リトライ制御要求完了通知RTRQEが発生しない場合、記憶制御装置MACは、処理をステップS316に戻す。   In step S318, when the retry control request completion notification RTRQE is generated, the storage control device MAC shifts the processing to step S320 because the precharge command is accepted by the SDRAM. When the retry control request completion notification RTRQE does not occur, the storage controller MAC returns the process to step S316.

ステップS320において、記憶制御装置MACは、エラー検出部24のモードレジスタMDRにリトライモードを示すモード情報MDを格納する。   In step S320, the storage control device MAC stores mode information MD indicating the retry mode in the mode register MDR of the error detection unit 24.

次に、ステップS500において、記憶制御装置MACは、メモリアクセス要求MRQまたはリフレッシュ要求RRQのリトライ処理を実行する。ステップS500の一例は、図16に示す。   Next, in step S500, the storage controller MAC executes a retry process for the memory access request MRQ or the refresh request RRQ. An example of step S500 is shown in FIG.

次に、ステップS324において、記憶制御装置MACは、コマンドパリティエラー情報CAPEがハイレベルHにアサートされた場合(リトライ用のコマンドMCDに対するCAPEの発生)、処理をステップS332に移行する。コマンドパリティエラー情報CAPEがアサートされない場合、記憶制御装置MACは、処理をステップS326に移行する。   Next, in step S324, if the command parity error information CAPE is asserted to a high level H (generation of CAPE for the retry command MCD), the storage controller MAC moves the process to step S332. If the command parity error information CAPE is not asserted, the storage controller MAC moves the process to step S326.

ステップS326において、記憶制御装置MACは、全てのリトライ処理が完了した場合、処理をステップS328に移行し、実行していないリトライ処理がある場合、処理をステップS500に移行する。ステップS328において、記憶制御装置MACは、カウンタRCOUNTの計数値を”0”等の初期値にリセットする。次に、ステップS330において、記憶制御装置MACは、エラー検出部24のモードレジスタMDRに通常モードを示すモード情報MDを格納し、処理をステップS302に戻す。   In step S326, the storage control device MAC shifts the processing to step S328 when all the retry processing is completed, and shifts the processing to step S500 when there is a retry processing that has not been executed. In step S328, the storage controller MAC resets the count value of the counter RCOUNT to an initial value such as “0”. Next, in step S330, the storage control device MAC stores mode information MD indicating the normal mode in the mode register MDR of the error detection unit 24, and returns the process to step S302.

一方、ステップS322において、記憶制御装置MACは、カウンタRCOUNTの計数値が閾値VTになったか否かを判定する。計数値が閾値VTになった場合、記憶制御装置MACは、処理をステップS334に移行する。計数値が閾値VTに到達していない場合、記憶制御装置MACは、処理をステップS400に戻す。   On the other hand, in step S322, the storage control device MAC determines whether or not the count value of the counter RCOUNT has reached the threshold value VT. When the count value reaches the threshold value VT, the storage controller MAC shifts the processing to step S334. If the count value has not reached the threshold value VT, the storage controller MAC returns the process to step S400.

ステップS334において、記憶制御装置MACは、SDRAMまたはDIMMの動作が正常でないことを示すシステムエラー情報SYSEをCPUに出力し、動作を終了する。   In step S334, the storage controller MAC outputs system error information SYSE indicating that the operation of the SDRAM or DIMM is not normal to the CPU, and ends the operation.

図15は、図14に示すステップS400の動作の一例を示す。まず、ステップS402において、記憶制御装置MACは、変数kを”1”に初期化する。次に、ステップS404において、記憶制御装置MACは、アクセス要求保持部10においてk番目のエントリENTkのステートSTが”発行済み”であるか否かを判定する。k番目のエントリENTkのステートSTが”発行済み”の場合、メモリアクセス要求MRQをリトライさせるため、処理をステップS406に移行する。k番目のエントリENTkのステートSTが”発行済み”でない場合、リトライの対象のメモリアクセス要求MRQでないため、処理をステップS408に移行する。   FIG. 15 shows an example of the operation in step S400 shown in FIG. First, in step S402, the storage controller MAC initializes the variable k to “1”. Next, in step S404, the storage controller MAC determines whether or not the state ST of the kth entry ENTk is “issued” in the access request holding unit 10. If the state ST of the kth entry ENTk is “issued”, the process proceeds to step S406 in order to retry the memory access request MRQ. If the state ST of the kth entry ENTk is not “issued”, the process proceeds to step S408 because the memory access request MRQ is not a retry target.

ステップS406において、記憶制御装置MACは、メモリアクセス要求MRQをリトライさせるため、k番目のエントリENTkのステートSTを”リトライ”に設定し、処理をステップS408に移行する。ステップS408において、記憶制御装置MACは、変数kを”1”増加させ、処理をステップS410に移行する。   In step S406, the storage controller MAC sets the state ST of the kth entry ENTk to “retry” in order to retry the memory access request MRQ, and the process proceeds to step S408. In step S408, the storage controller MAC increases the variable k by “1”, and the process proceeds to step S410.

ステップS410において、記憶制御装置MACは、変数kがエントリENTの数nを超えた場合、処理をステップS412に移行し、変数kがエントリENTの数n以下の場合、処理をステップS404に移行する。   In step S410, if the variable k exceeds the number n of entries ENT, the storage controller MAC shifts the process to step S412. If the variable k is equal to or less than the number n of entries ENT, the storage control device MAC shifts the process to step S404. .

ステップS412において、記憶制御装置MACは、リフレッシュ要求保持部14のエントリENTRのステートSTが”発行済み”であるか否かを判定する。エントリENTRのステートSTが”発行済み”の場合、リフレッシュ要求RRQをリトライさせるため、処理をステップS414に移行する。エントリENTRのステートSTが”発行済み”でない場合、リトライの対象のリフレッシュ要求RRQがないため、動作を終了する。   In step S412, the storage control device MAC determines whether or not the state ST of the entry ENTR of the refresh request holding unit 14 is “issued”. If the state ST of the entry ENTR is “issued”, the process proceeds to step S414 to retry the refresh request RRQ. If the state ST of the entry ENTR is not “issued”, the operation ends because there is no refresh request RRQ to be retried.

ステップS414において、記憶制御装置MACは、リフレッシュ要求RRQをリトライさせるため、エントリENTRのステートSTを”リトライ”に設定し、動作を終了する。   In step S414, the storage controller MAC sets the state ST of the entry ENTR to “retry” in order to retry the refresh request RRQ, and ends the operation.

図16は、図14に示すステップS500の動作の一例を示す。まず、ステップS502において、記憶制御装置MACは、アクセス要求発行通知ARQSが発生した場合、処理をステップS504に移行し、アクセス要求発行通知ARQSが発生していない場合、処理をステップS506に移行する。   FIG. 16 shows an example of the operation in step S500 shown in FIG. First, in step S502, the storage control device MAC moves the process to step S504 when an access request issue notification ARQS occurs, and moves the process to step S506 if no access request issue notification ARQS occurs.

ステップS504において、記憶制御装置MACは、発生したアクセス要求発行通知ARQSに含まれる要求識別番号RQIDと同じ要求識別番号RQIDを保持する該当エントリENTのステートSTを”発行済み”に設定する。記憶制御装置MACは、ステップS504の後、処理をステップS510に移行する。   In step S504, the storage control device MAC sets the state ST of the corresponding entry ENT holding the same request identification number RQID as the request identification number RQID included in the generated access request issue notification ARQS to “issued”. After step S504, the storage controller MAC moves the process to step S510.

ステップS506において、記憶制御装置MACは、リフレッシュ要求発行通知RRQSが発生した場合、処理をステップS508に移行し、リフレッシュ要求発行通知RRQSが発生していない場合、処理をステップS510に移行する。ステップS508において、記憶制御装置MACは、リフレッシュ要求保持部14のエントリENTRのステートSTを”発行済み”に設定し、処理をステップS510に移行する。   In step S506, the storage control device MAC moves the process to step S508 when the refresh request issue notification RRQS occurs, and moves the process to step S510 when the refresh request issue notification RRQS does not occur. In step S508, the storage controller MAC sets the state ST of the entry ENTR of the refresh request holding unit 14 to “issued”, and the process proceeds to step S510.

ステップS510において、記憶制御装置MACは、アクセス要求完了通知ARQEが発生した場合、処理をステップS512に移行し、アクセス要求完了通知ARQEが発生していない場合、処理をステップS516に移行する。   In step S510, when the access request completion notification ARQE occurs, the storage controller MAC shifts the process to step S512, and when the access request completion notification ARQE does not occur, the storage control device MAC shifts the process to step S516.

ステップS512において、記憶制御装置MACは、発生したアクセス要求完了通知ARQEに含まれる要求識別番号RQIDと同じ要求識別番号RQIDを保持する該当エントリENTのステートSTを”アイドル”に設定する。次に、ステップS514において、記憶制御装置MACは、ステートSTを”アイドル”に設定したエントリENTのバリッドVLDを論理0に設定し、メモリアクセス要求MRQを削除し、動作を終了する。   In step S512, the storage controller MAC sets the state ST of the corresponding entry ENT holding the same request identification number RQID as the request identification number RQID included in the generated access request completion notification ARQE to “idle”. Next, in step S514, the storage controller MAC sets the valid VLD of the entry ENT in which the state ST is set to “idle” to logic 0, deletes the memory access request MRQ, and ends the operation.

ステップS516において、記憶制御装置MACは、リフレッシュ要求完了通知RRQEが発生した場合、処理をステップS518に移行し、リフレッシュ要求完了通知RRQEが発生していない場合、動作を終了する。ステップS518において、記憶制御装置MACは、リフレッシュ要求保持部14のエントリENTRのステートSTを”アイドル”に設定し、処理をステップS520に移行する。   In step S516, if the refresh request completion notification RRQE has occurred, the storage controller MAC proceeds to step S518, and if the refresh request completion notification RRQE has not occurred, the storage controller MAC ends the operation. In step S518, the storage controller MAC sets the state ST of the entry ENTR of the refresh request holding unit 14 to “idle”, and the process proceeds to step S520.

ステップS520において、記憶制御装置MACは、リフレッシュ要求保持部14のエントリENTRのバリッドVLDを論理0に設定し、リフレッシュ要求RRQを削除し、動作を終了する。   In step S520, the storage controller MAC sets the valid VLD of the entry ENTR of the refresh request holding unit 14 to logic 0, deletes the refresh request RRQ, and ends the operation.

図17および図18は、図2に示す記憶制御装置MACの動作の一例を示し、図19および図20は、図17および図18の動作の続きを示す。図17から図20は、図17を左上、図18を左下、図19を右上、図20を右下に並べることで、1つのタイミング図になる。   17 and 18 show an example of the operation of the storage controller MAC shown in FIG. 2, and FIG. 19 and FIG. 20 show the continuation of the operation of FIG. 17 and FIG. 17 to 20 form one timing diagram by arranging FIG. 17 in the upper left, FIG. 18 in the lower left, FIG. 19 in the upper right, and FIG. 20 in the lower right.

図17から図20の上側に示す数字は、クロックサイクル数を示す。図17から図20において、符号W0、W3はライト要求(ライトコマンド)を示し、符号R1、R2はリード要求(リードコマンド)を示す。符号Rはリフレッシュ要求(リフレッシュコマンド)を示し、符号Pはプリチャージ要求(プリチャージコマンド)を示す。リード要求R1、R2の末尾の数字は、要求識別番号RQIDを示し、ライト要求W0、W3の末尾の数字は、要求識別番号RQIDおよびライトデータ識別番号WDIDを示す。メモリアクセス要求MRQ、リフレッシュ要求RRQ、発行要求情報RQINF、アクセス要求発行通知ARQS等において、バリッドVLDは、要求W0、R1、R2、W3、R、Pの発生時に論理1に設定される。アドレスADの記載は省略する。   The numbers shown on the upper side of FIGS. 17 to 20 indicate the number of clock cycles. In FIG. 17 to FIG. 20, reference characters W0 and W3 indicate write requests (write commands), and reference characters R1 and R2 indicate read requests (read commands). Symbol R indicates a refresh request (refresh command), and symbol P indicates a precharge request (precharge command). The numbers at the end of the read requests R1 and R2 indicate the request identification number RQID, and the numbers at the end of the write requests W0 and W3 indicate the request identification number RQID and the write data identification number WDID. In the memory access request MRQ, refresh request RRQ, issue request information RQINF, access request issue notification ARQS, etc., the valid VLD is set to logic 1 when the requests W0, R1, R2, W3, R, and P are generated. Description of the address AD is omitted.

アクセス要求保持部10のエントリENTk(”k”は、正の整数)、ENTk+1、ENTk+2、ENTk+3のステートSTにおいて、符号IDLは”アイドル”を示し、”未”は”未発行”を示し、”済”は”発行済み”を示す。リフレッシュ要求保持部14のエントリENTRのステートSTの符号も、エントリENTk、ENTk+1、ENTk+2、ENTk+3のステートSTの符号と同様である。   In the state ST of the entry ENTk (“k” is a positive integer), ENTk + 1, ENTk + 2, and ENTk + 3 in the access request holding unit 10, the code IDL indicates “idle”, “not yet” indicates “not issued”, “ “Done” indicates “Issued”. The sign of the state ST of the entry ENTR of the refresh request holding unit 14 is the same as the sign of the state ST of the entries ENTk, ENTk + 1, ENTk + 2, and ENTk + 3.

記憶制御装置MACは、4つのメモリアクセス要求MRQ(ライト要求W0、リード要求R1、R2およびライト要求W3)をCPUから順に受けて動作する(図17(a))。リフレッシュ制御部12は、リード要求R2とライト要求W3の間に、リフレッシュ要求RRQを出力する(図17(b))。   The storage controller MAC operates in response to four memory access requests MRQ (write request W0, read requests R1, R2, and write request W3) in order from the CPU (FIG. 17A). The refresh control unit 12 outputs a refresh request RRQ between the read request R2 and the write request W3 (FIG. 17 (b)).

エントリENTkは、ライト要求W0の保持に伴い、ステートSTをアイドルIDLから”未発行”に遷移する(図17(c))。同様に、エントリENTk+1、ENTk+2、ENTk+3の各々は、リード要求R1、R2およびライト要求W3の保持に伴い、ステートSTをアイドルIDLから”未発行”に遷移する(図17(d)、(e)、(f))。エントリENTRは、リフレッシュ要求Rの保持に伴い、ステートSTをアイドルIDLから”未発行”に遷移する(図17(g))。   The entry ENTk changes the state ST from the idle IDL to “unissued” with the holding of the write request W0 (FIG. 17C). Similarly, each of the entries ENTk + 1, ENTk + 2 and ENTk + 3 transitions the state ST from the idle IDL to “unissued” with the holding of the read requests R1, R2 and the write request W3 (FIGS. 17D and 17E). (F)). The entry ENTR transitions the state ST from the idle IDL to “unissued” with the holding of the refresh request R (FIG. 17 (g)).

要求選択部16は、発行要求情報RQINFとしてライト要求W0およびリード要求R1、R2を順次に出力し、ライト要求W0およびリード要求R1、R2に対応するコマンドCMDは、DIMMに順次に供給される(図17(h))。パイプライン制御部20は、ライト要求W0およびリード要求R1、R2に対応するアクセス要求発行通知ARQSを順次に出力する(図17(i))。   The request selection unit 16 sequentially outputs a write request W0 and read requests R1, R2 as issue request information RQINF, and commands CMD corresponding to the write request W0 and read requests R1, R2 are sequentially supplied to the DIMM ( FIG. 17 (h)). The pipeline control unit 20 sequentially outputs the access request issue notification ARQS corresponding to the write request W0 and the read requests R1 and R2 (FIG. 17 (i)).

エントリENTk、ENTk+1、ENTk+2のステートSTは、アクセス要求発行通知ARQS(W0、R1、R2)にそれぞれ基づいて”発行済み”に設定される(図17(j)、(k)、(l))。   The states ST of the entries ENTk, ENTk + 1, and ENTk + 2 are set to “issued” based on the access request issue notification ARQS (W0, R1, R2), respectively (FIGS. 17 (j), (k), (l)). .

要求選択部16は、リフレッシュ要求Rに対応する発行要求情報RQINFを出力し、リフレッシュ要求R2に対応するコマンドCMDは、DIMMに供給される(図17(m))。パイプライン制御部20は、リフレッシュ要求Rに対応するリフレッシュ要求発行通知RRQSを出力する(図17(n))。エントリENTRのステートSTは、リフレッシュ要求発行通知RRQS(R)に基づいて”発行済み”に設定される(図17(o))。   The request selection unit 16 outputs the issue request information RQINF corresponding to the refresh request R, and the command CMD corresponding to the refresh request R2 is supplied to the DIMM (FIG. 17 (m)). The pipeline control unit 20 outputs a refresh request issue notification RRQS corresponding to the refresh request R (FIG. 17 (n)). The state ST of the entry ENTR is set to “issued” based on the refresh request issue notification RRQS (R) (FIG. 17 (o)).

図18において、パイプライン制御部20のステージSTG1−STG28は、ライト要求W0およびリード要求R1、R2を順に転送する。そして、パイプライン制御部20は、ステージSTG8がライト要求W0およびリード要求R1をそれぞれ保持したことに基づいて、ライト要求W0およびリード要求R1に対応するアクセス要求完了通知ARQEを出力する(図18(a)、(b))。   In FIG. 18, stages STG1 to STG28 of the pipeline control unit 20 sequentially transfer a write request W0 and read requests R1 and R2. Then, the pipeline control unit 20 outputs an access request completion notification ARQE corresponding to the write request W0 and the read request R1 based on the fact that the stage STG8 holds the write request W0 and the read request R1, respectively (FIG. 18 ( a), (b)).

図17に示すエントリENTk、ENTk+1は、対応するアクセス要求完了通知ARQEに基づいて、ステートSTをアイドルIDLに設定する(図17(p)、(q))。   The entries ENTk and ENTk + 1 shown in FIG. 17 set the state ST to idle IDL based on the corresponding access request completion notification ARQE (FIGS. 17 (p) and (q)).

パイプライン制御部20は、ステージSTG12がライト要求W0を保持したことに基づいて、ライト要求W0に対応するライトデータ要求WDRQをCPUに出力する(図18(c))。パイプライン制御部20は、ステージSTG16がライト要求W0を保持したことに基づいて、ライトデータ制御信号WDCNTを4クロックサイクル出力する(図18(d))。ライトデータ制御部26は、ライトデータ要求WDRQの出力期間にCPUから出力されるライトデータD0、D1、D2、D3をDIMMに転送する(図18(e))。そして、ライト要求W0に対応して実行されるSDRAMのライト動作が実行される。   The pipeline control unit 20 outputs a write data request WDRQ corresponding to the write request W0 to the CPU based on the fact that the stage STG12 holds the write request W0 (FIG. 18 (c)). The pipeline control unit 20 outputs the write data control signal WDCNT for 4 clock cycles based on the fact that the stage STG 16 holds the write request W0 (FIG. 18 (d)). The write data control unit 26 transfers the write data D0, D1, D2, and D3 output from the CPU to the DIMM during the output period of the write data request WDRQ (FIG. 18 (e)). Then, the SDRAM write operation executed in response to the write request W0 is executed.

パイプライン制御部20は、ステージSTG24がリード要求R1を保持したことに基づいて、リードデータ制御信号RDCNTを4クロックサイクル出力する(図18(f))。リードデータ制御部28は、リードデータ制御信号RDCNTの出力期間にDIMMから出力されるデータをリードデータD4、D5、D6、D7としてCPUに出力する(図18(g))。そして、リード要求R1に対応して実行されるDIMMのリード動作が完了する。   The pipeline control unit 20 outputs the read data control signal RDCNT for 4 clock cycles based on the fact that the stage STG 24 holds the read request R1 (FIG. 18 (f)). The read data control unit 28 outputs data output from the DIMM as read data D4, D5, D6, and D7 to the CPU during the output period of the read data control signal RDCNT (FIG. 18 (g)). Then, the DIMM read operation executed in response to the read request R1 is completed.

一方、図17において、DIMM(SDRAM)は、リード要求R2のパリティエラーを検出し、9クロックサイクルの期間、コマンドパリティエラー情報CAPEをアサートする(図17(r))。なお、コマンドパリティエラー情報CAPEのアサート期間は、9クロックサイクルに限定されない。モード情報MDは、コマンドパリティエラー情報CAPEに基づいて再開待ちモードに遷移し、カウンタRCOUNTの計数値は、インクリメントされて”1”になる(図17(s))。再開待ちモードは、コマンドパリティエラー情報CAPEを受信中であることを示し、要求選択部16によるメモリアクセス要求MRQおよびリフレッシュ要求RRQの選択は抑止される。SDRAMは、コマンドパリティエラー情報CAPEを出力中に、新たなコマンドCMDを受け付けない。このため、再開待ちモード中にメモリアクセス要求MRQおよびリフレッシュ要求RRQの選択を抑止することで、無駄なコマンドCMDがSDRAMに供給されることを抑止することができる。   On the other hand, in FIG. 17, the DIMM (SDRAM) detects a parity error of the read request R2, and asserts command parity error information CAPE for a period of 9 clock cycles (FIG. 17 (r)). Note that the assertion period of the command parity error information CAPE is not limited to 9 clock cycles. The mode information MD shifts to the restart waiting mode based on the command parity error information CAPE, and the count value of the counter RCOUNT is incremented to “1” (FIG. 17 (s)). The restart waiting mode indicates that command parity error information CAPE is being received, and selection of the memory access request MRQ and the refresh request RRQ by the request selection unit 16 is suppressed. The SDRAM does not accept a new command CMD while outputting the command parity error information CAPE. For this reason, by suppressing selection of the memory access request MRQ and the refresh request RRQ during the restart waiting mode, it is possible to prevent the useless command CMD from being supplied to the SDRAM.

ステートSTが”発行済み”のエントリENTk+2、ENTk+3が保持しているリード要求R2およびリフレッシュ要求Rは、リトライの対象になる。このため、エントリENTk+2、ENTk+3のステートSTは、”リトライ”に設定される(図17(t)、(u))。   The read request R2 and the refresh request R held in the entries ENTk + 2 and ENTk + 3 whose state ST is “issued” are subject to retry. For this reason, the state ST of the entries ENTk + 2 and ENTk + 3 is set to “retry” (FIG. 17 (t), (u)).

図18において、コマンドパリティエラー情報CAPEがアサートされている期間にステージSTG1−STG8のいずれかに保持されたリード要求R2は、アクセス要求完了通知ARQEの出力がマスクされる(図18(h))。また、コマンドパリティエラー情報CAPEがアサートされている期間にステージSTG1−STG8のいずれかに保持されたリード要求R2は、リードデータ制御信号RDCNTの出力がマスクされる(図18(i))。同様に、コマンドパリティエラー情報CAPEがアサートされている期間にステージSTG1−STG8のいずれかに保持されたリフレッシュ要求Rは、リフレッシュ要求完了通知RRQEの出力がマスクされる(図18(j))。   In FIG. 18, the output of the access request completion notification ARQE is masked for the read request R2 held in any of the stages STG1 to STG8 during the period when the command parity error information CAPE is asserted (FIG. 18 (h)). . In the read request R2 held in any of the stages STG1 to STG8 during the period when the command parity error information CAPE is asserted, the output of the read data control signal RDCNT is masked (FIG. 18 (i)). Similarly, for the refresh request R held in any of the stages STG1 to STG8 during the period when the command parity error information CAPE is asserted, the output of the refresh request completion notification RRQE is masked (FIG. 18 (j)).

なお、エントリENTk+2がリード要求R2の代わりにライト要求W2を保持し、ライト要求W2に対応してコマンドパリティエラーが発生した場合、対応するライトデータ要求WDRQおよびライトデータ制御信号WDCNTの出力がマスクされる。   If the entry ENTk + 2 holds the write request W2 instead of the read request R2, and a command parity error occurs in response to the write request W2, the output of the corresponding write data request WDRQ and the write data control signal WDCNT is masked. The

図17において、エラー検出部24は、コマンドパリティエラー情報CAPEのネゲートを待って、リトライ制御要求RTRQ(プリチャージ要求P)を出力し、モード情報MDをリトライ前準備モードに設定する(図17(v))。要求選択部16は、リトライ制御要求RTRQ(プリチャージ要求P)に基づいて、プリチャージコマンドPをDIMMに出力する(図17(w))。   In FIG. 17, the error detection unit 24 waits for the command parity error information CAPE to be negated, outputs a retry control request RTRQ (precharge request P), and sets the mode information MD to the pre-retry preparation mode (FIG. 17 ( v)). The request selection unit 16 outputs a precharge command P to the DIMM based on the retry control request RTRQ (precharge request P) (FIG. 17 (w)).

図18において、パイプライン制御部20は、ステージSTG8がプリチャージ要求Pを保持したことに基づいて、プリチャージ要求Pに対応するリトライ制御要求完了通知RTRQEを出力する(図18(k))。   In FIG. 18, the pipeline control unit 20 outputs a retry control request completion notification RTRQE corresponding to the precharge request P based on the fact that the stage STG8 holds the precharge request P (FIG. 18 (k)).

図17において、エラー検出部24は、リトライ制御要求完了通知RTRQEに基づいて、モード情報MDをリトライモードに設定する(図17(x))。要求選択部16は、モード情報MDがリトライモードを示すため、リトライ用の発行要求情報RQINFとしてリード要求R2およびリフレッシュ要求Rを順次に出力する(図17(y)、(z))。SDRAMは、リード要求R2に対応するアクティブコマンド、リードコマンドおよびリフレッシュ要求Rに対応するリフレッシュコマンドを順次に受け、リード動作およびリフレッシュ動作を開始する。なお、図17に示す例では、リトライ用のリード要求R2およびリフレッシュ要求RRQのコマンドパリティエラーは発生しない。   In FIG. 17, the error detection unit 24 sets the mode information MD to the retry mode based on the retry control request completion notification RTRQE (FIG. 17 (x)). Since the mode information MD indicates the retry mode, the request selection unit 16 sequentially outputs the read request R2 and the refresh request R as the issuance request information RQINF for retry (FIGS. 17 (y) and (z)). The SDRAM sequentially receives an active command corresponding to the read request R2, a read command, and a refresh command corresponding to the refresh request R, and starts a read operation and a refresh operation. In the example shown in FIG. 17, the command parity error of the retry read request R2 and the refresh request RRQ does not occur.

パイプライン制御部20は、リトライ用のリード要求R2に対応するアクセス要求発行通知ARQSを出力し、リトライ用のリフレッシュ要求Rに対応するリフレッシュ要求発行通知RRQSを出力する(図17(a1、b1))。エントリENTk+2のステートSTは、アクセス要求発行通知ARQS(R2)に基づいて”発行済み”に設定される(図17(c1))。エントリENTk+3のステートSTは、リフレッシュ要求発行通知RRQS(R)に基づいて”発行済み”に設定される(図17(d1))。   The pipeline control unit 20 outputs an access request issuance notification ARQS corresponding to the retry read request R2 and outputs a refresh request issuance notification RRQS corresponding to the retry refresh request R (FIG. 17 (a1, b1)). ). The state ST of the entry ENTk + 2 is set to “issued” based on the access request issue notification ARQS (R2) (FIG. 17 (c1)). The state ST of the entry ENTk + 3 is set to “issued” based on the refresh request issue notification RRQS (R) (FIG. 17 (d1)).

図18において、パイプライン制御部20は、ステージSTG8がリード要求R2を保持したことに基づいて、リード要求R2に対応するアクセス要求完了通知ARQEを出力する(図18(l))。図17において、エントリENTk+2のステートSTは、アクセス要求完了通知ARQEに基づいてアイドルIDLに設定される(図17(e1))。   In FIG. 18, the pipeline control unit 20 outputs an access request completion notification ARQE corresponding to the read request R2 based on the fact that the stage STG8 holds the read request R2 (FIG. 18 (l)). In FIG. 17, the state ST of the entry ENTk + 2 is set to the idle IDL based on the access request completion notification ARQE (FIG. 17 (e1)).

図20において、パイプライン制御部20は、ステージSTG8がリトライ用のリフレッシュ要求Rを保持したことに基づいて、リフレッシュ要求Rに対応するリフレッシュ要求完了通知RRQEを出力する(図20(a))。   In FIG. 20, the pipeline control unit 20 outputs a refresh request completion notification RRQE corresponding to the refresh request R based on the fact that the stage STG 8 holds the retry refresh request R (FIG. 20 (a)).

図19に示すエントリENTRは、リフレッシュ要求完了通知RRQEに基づいて、ステートSTをアイドルIDLに設定する(図19(a))。エラー検出部24は、アクセス要求保持部10からのアクセス要求情報ARQIおよびリフレッシュ要求保持部14からのリフレッシュ要求情報RRQIに、”リトライ”を示すステートSTが存在しなくなった場合、全てのリトライが完了したことを検出する。そして、エラー検出部24は、カウンタRCOUNTの計数値をリセットし、モード情報MDを通常モードに設定する(図19(b))。   The entry ENTR shown in FIG. 19 sets the state ST to idle IDL based on the refresh request completion notification RRQE (FIG. 19 (a)). The error detection unit 24 completes all retries when there is no state ST indicating “retry” in the access request information ARQI from the access request holding unit 10 and the refresh request information RRQI from the refresh request holding unit 14. Detect that Then, the error detection unit 24 resets the count value of the counter RCOUNT, and sets the mode information MD to the normal mode (FIG. 19B).

要求選択部16は、ライト要求W3に対応する発行要求情報RQINFを出力し、ライト要求W3に対応するアクティブコマンドおよびライトコマンドは、DIMMに供給される(図19(c))。パイプライン制御部20は、ライト要求W3に対応するアクセス要求発行通知ARQSを出力する(図19(d))。エントリENTk+3のステートSTは、ライト要求W3に対応するアクセス要求発行通知ARQSに基づいて”発行済み”に設定される(図19(e))。   The request selection unit 16 outputs issuance request information RQINF corresponding to the write request W3, and the active command and the write command corresponding to the write request W3 are supplied to the DIMM (FIG. 19 (c)). The pipeline control unit 20 outputs an access request issue notification ARQS corresponding to the write request W3 (FIG. 19 (d)). The state ST of the entry ENTk + 3 is set to “issued” based on the access request issue notification ARQS corresponding to the write request W3 (FIG. 19E).

図20において、パイプライン制御部20は、ステージSTG8がライト要求W3を保持したことに基づいて、ライト要求W3に対応するアクセス要求完了通知ARQEを出力する(図20(b))。   In FIG. 20, the pipeline control unit 20 outputs an access request completion notification ARQE corresponding to the write request W3 based on the fact that the stage STG8 holds the write request W3 (FIG. 20 (b)).

パイプライン制御部20は、ステージSTG12がライト要求W3を保持したことに基づいて、ライト要求W3に対応するライトデータ要求WDRQを出力する(図20(c))。パイプライン制御部20は、ステージSTG16がライト要求W3を保持したことに基づいて、ライトデータ制御信号WDCNTを4クロックサイクル出力する(図20(d))。ライトデータ制御部26は、ライトデータ要求WDRQの出力期間にCPUから出力されるライトデータD8、D9、Da、DbをDIMMに転送する(図20(e))。そして、ライト要求W3に対応して実行されるSDRAMのライト動作が開始される。   The pipeline control unit 20 outputs the write data request WDRQ corresponding to the write request W3 based on the fact that the stage STG12 holds the write request W3 (FIG. 20 (c)). The pipeline control unit 20 outputs the write data control signal WDCNT for 4 clock cycles based on the fact that the stage STG 16 holds the write request W3 (FIG. 20 (d)). The write data control unit 26 transfers the write data D8, D9, Da, Db output from the CPU to the DIMM during the output period of the write data request WDRQ (FIG. 20 (e)). Then, the SDRAM write operation executed in response to the write request W3 is started.

図19に示すエントリENTk+3は、対応するアクセス要求完了通知ARQE(W3)に基づいて、ステートSTをアイドルIDLに設定する(図19(f))。そして、CPUから供給されるライト要求W0、リード要求R1、R2、ライト要求W3と、リフレッシュ制御部12が生成するリフレッシュ要求Rに応答するライト動作、リード動作およびリフレッシュ動作が、SDRAMで実行される。   The entry ENTk + 3 shown in FIG. 19 sets the state ST to idle IDL based on the corresponding access request completion notification ARQE (W3) (FIG. 19 (f)). Then, a write operation, a read operation, and a refresh operation in response to a write request W0, a read request R1, R2, a write request W3, and a refresh request R generated by the refresh control unit 12 are executed by the SDRAM. .

図21は、図10に示すパイプライン制御部20の動作の一例を示す。図21は、図17から図20に示す動作に対応するパイプライン制御部20の動作を示す。   FIG. 21 shows an example of the operation of the pipeline control unit 20 shown in FIG. FIG. 21 shows the operation of the pipeline control unit 20 corresponding to the operations shown in FIGS.

パイプライン制御部20のシフトレジスタSFTRのステージSTG1に保持された発行要求情報RQINFに含まれる情報は、クロックサイクル毎に後段のステージSGに順次に転送される。また、コマンドパリティエラー情報CAPEのアサート期間にステージSTG1−STG8のいずれかに保持されているリード要求R2およびリフレッシュ要求Rは無効にされる。すなわち、2本の一点鎖線で挟まれた太枠で示すリード要求R2およびリフレッシュ要求Rは、無効にされ、リトライの対象にされる。   Information included in the issue request information RQINF held in the stage STG1 of the shift register SFTR of the pipeline control unit 20 is sequentially transferred to the subsequent stage SG every clock cycle. Further, the read request R2 and the refresh request R held in any of the stages STG1 to STG8 during the assertion period of the command parity error information CAPE are invalidated. That is, the read request R2 and the refresh request R indicated by a thick frame sandwiched between two one-dot chain lines are invalidated and subjected to retry.

このため、パイプライン制御部20は、ステージSTG8が太枠のリード要求R2を保持した場合にも、アクセス要求完了通知ARQEを出力しない(図21(a))。パイプライン制御部20は、ステージSTG8が太枠のリフレッシュ要求Rを保持した場合にも、リフレッシュ要求完了通知RRQEを出力しない(図21(b))。   For this reason, the pipeline control unit 20 does not output the access request completion notification ARQE even when the stage STG8 holds the thick frame read request R2 (FIG. 21A). The pipeline control unit 20 does not output the refresh request completion notification RRQE even when the stage STG 8 holds the refresh request R with a thick frame (FIG. 21B).

さらに、パイプライン制御部20は、ステージSTG24が太枠のリード要求R2を保持した場合にも、リードデータ制御信号RDCNTを出力しない(図21(c))。パイプライン制御部20は、ステージSTG28が太枠のリード要求R2を保持した場合にも、バリッド信号VLD(R)および要求識別番号RQID(R)を出力しない(図21(d))。   Further, the pipeline control unit 20 does not output the read data control signal RDCNT even when the stage STG 24 holds the thick frame read request R2 (FIG. 21 (c)). The pipeline control unit 20 does not output the valid signal VLD (R) and the request identification number RQID (R) even when the stage STG 28 holds the thick frame read request R2 (FIG. 21 (d)).

以上、図2から図21に示す実施形態においても、図1に示す実施形態と同様の効果を得ることができる。すなわち、SDRAMがコマンドCMDまたはアドレスADのパリティエラーを検出した場合、要求選択部16により選択済みのアクセス要求MRQは、ステージSTG8に保持された後も、削除されることなくアクセス要求保持部10に保持される。同様に、SDRAMがコマンドCMDまたはアドレスADのパリティエラーを検出した場合、要求選択部16により選択済みのリフレッシュ要求RRQは、ステージSTG8に保持された後も、削除されることなくリフレッシュ要求保持部14に保持される。   As described above, also in the embodiment shown in FIGS. 2 to 21, the same effect as that of the embodiment shown in FIG. 1 can be obtained. That is, when the SDRAM detects a parity error of the command CMD or the address AD, the access request MRQ selected by the request selection unit 16 is not deleted but stored in the access request holding unit 10 even after being held in the stage STG8. Retained. Similarly, when the SDRAM detects a parity error of the command CMD or address AD, the refresh request holding unit 14 does not delete the refresh request RRQ selected by the request selection unit 16 even after it is held in the stage STG8. Retained.

これにより、記憶制御装置MACは、SDRAMで実行されなかったメモリアクセス要求MRQおよびリフレッシュ要求RRQを、SDRAMに再度発行することができる。この結果、記憶制御装置MAC、CPUおよびDIMMを含むシステムは、コマンドパリティエラー情報CAPEが発生した場合にも、動作を停止させることなく継続することができる。コマンドパリティエラーの発生によりSDRAMに受け付けられなかったメモリアクセス要求MRQまたはリフレッシュ要求RRQは、その後リトライされため、システムの信頼性が低下することを抑止することができ、システムの性能の向上することができる。   As a result, the storage controller MAC can reissue the memory access request MRQ and the refresh request RRQ that were not executed in the SDRAM to the SDRAM. As a result, the system including the storage control devices MAC, CPU, and DIMM can continue without stopping the operation even when the command parity error information CAPE occurs. Since the memory access request MRQ or the refresh request RRQ that has not been accepted by the SDRAM due to the occurrence of a command parity error is retried thereafter, it is possible to prevent the system reliability from being lowered, and to improve the system performance. it can.

さらに、図2から図21に示す実施形態では、SDRAMがコマンドCMDを受け付けていないにも拘わらず、CPUまたは記憶制御装置MACがコマンドCMDの受け付け後の動作を実行することを抑止することができる。この結果、CPUおよび記憶制御装置MACの誤動作を抑止することができる。   Furthermore, in the embodiment shown in FIGS. 2 to 21, it is possible to prevent the CPU or the storage control device MAC from executing the operation after receiving the command CMD even though the SDRAM does not receive the command CMD. . As a result, malfunctions of the CPU and storage controller MAC can be suppressed.

記憶制御装置MACは、コマンドパリティエラー情報CAPEの受信後、メモリアクセス要求MRQまたはリフレッシュ要求RRQのリトライ前に、SDRAMにプリチャージコマンドを発行する。これにより、SDRAMを誤動作させることなく、SDRAMにリトライ動作を実行させることができる。   After receiving the command parity error information CAPE, the storage controller MAC issues a precharge command to the SDRAM before retrying the memory access request MRQ or the refresh request RRQ. Thereby, it is possible to cause the SDRAM to execute a retry operation without causing the SDRAM to malfunction.

図22は、記憶制御装置および記憶制御装置の制御方法の別の実施形態を示す。図2から図21で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。   FIG. 22 shows another embodiment of the storage control device and the control method of the storage control device. The same or similar elements as those described in FIGS. 2 to 21 are denoted by the same reference numerals, and detailed description thereof will be omitted.

図22に示す記憶制御装置MACaは、図2に示す記憶制御装置MACのアクセス要求保持部10およびリフレッシュ要求保持部14の代わりに、アクセス要求保持部10Aおよびリフレッシュ要求保持部14Aを有する。また、記憶制御装置MACaは、図2に示す記憶制御装置MACのパイプライン制御部20の代わりに、パイプライン制御部20Aを有する。さらに、記憶制御装置MACaは、図2に示す記憶制御装置MACの要求発行リリース通知生成部22およびエラー検出部24の代わりに、要求発行リリース通知生成部22Aおよびエラー検出部24Aを有する。記憶制御装置MACaのその他の構成は、図2に示す記憶制御装置MACと同様である。   The storage control device MACa shown in FIG. 22 has an access request holding unit 10A and a refresh request holding unit 14A instead of the access request holding unit 10 and the refresh request holding unit 14 of the storage control device MAC shown in FIG. Further, the storage control device MACa has a pipeline control unit 20A instead of the pipeline control unit 20 of the storage control device MAC shown in FIG. Furthermore, the storage control device MACa has a request issue release notification generation unit 22A and an error detection unit 24A instead of the request issue release notification generation unit 22 and the error detection unit 24 of the storage control device MAC shown in FIG. The other configuration of the storage controller MACa is the same as that of the storage controller MAC shown in FIG.

アクセス要求保持部10Aは、アクセス要求完了通知ARQEをパイプライン制御部20Aから受けるのではなく、エントリENT毎にアクセス要求完了通知ARQEを自ら生成する。そして、アクセス要求保持部10Aは、生成したアクセス要求完了通知ARQEを要求発行リリース通知生成部22に出力する。アクセス要求保持部10Aの一例は、図23に示す。   The access request holding unit 10A does not receive the access request completion notification ARQE from the pipeline control unit 20A but generates the access request completion notification ARQE for each entry ENT. Then, the access request holding unit 10A outputs the generated access request completion notification ARQE to the request issuance release notification generation unit 22. An example of the access request holding unit 10A is shown in FIG.

リフレッシュ要求保持部14Aは、リフレッシュ要求完了通知RRQE(図2)をパイプライン制御部20Aから受けることなく動作することを除き、図2に示すリフレッシュ要求保持部14と同様の機能を有する。リフレッシュ要求保持部14Aの一例は、図25に示す。   The refresh request holding unit 14A has the same function as the refresh request holding unit 14 shown in FIG. 2 except that it operates without receiving a refresh request completion notification RRQE (FIG. 2) from the pipeline control unit 20A. An example of the refresh request holding unit 14A is shown in FIG.

パイプライン制御部20Aは、図2に示すパイプライン制御部20からアクセス要求完了通知ARQE、リフレッシュ要求完了通知RRQEおよびリトライ制御要求完了通知RTRQEを出力する機能を削除している。パイプライン制御部20Aの一例は、図28に示す。   The pipeline control unit 20A deletes the function of outputting the access request completion notification ARQE, the refresh request completion notification RRQE, and the retry control request completion notification RTRQE from the pipeline control unit 20 shown in FIG. An example of the pipeline control unit 20A is shown in FIG.

エラー検出部24Aは、リトライ制御要求完了通知RTRQE(図2)をパイプライン制御部20Aから受けることなく動作することを除き、図2に示すエラー検出部24Aと同様の機能を有する。エラー検出部24Aの一例は、図29に示す。   The error detection unit 24A has the same function as the error detection unit 24A shown in FIG. 2 except that it operates without receiving a retry control request completion notification RTRQE (FIG. 2) from the pipeline control unit 20A. An example of the error detection unit 24A is shown in FIG.

図23は、図22に示すアクセス要求保持部10Aの一例を示す。図4に示すアクセス要求保持部10と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。   FIG. 23 illustrates an example of the access request holding unit 10A illustrated in FIG. Elements that are the same as or similar to those in the access request holding unit 10 shown in FIG. 4 are given the same reference numerals, and detailed descriptions thereof are omitted.

アクセス要求保持部10Aは、各エントリENT1−ENTnのステート制御部STCNTが、タイマTMを有し、アクセス要求完了通知ARQEを出力する機能を有する。アクセス要求保持部10Aのその他の構成は、アクセス要求完了通知ARQEを受信しないことを除き、図4に示すアクセス要求保持部10と同様である。   The access request holding unit 10A has a function in which the state control unit STCNT of each entry ENT1-ENTn has a timer TM and outputs an access request completion notification ARQE. The other configuration of the access request holding unit 10A is the same as that of the access request holding unit 10 shown in FIG. 4 except that the access request completion notification ARQE is not received.

各エントリENTのステート制御部STCNTは、エントリENTに保持されたメモリアクセス要求MRQに対応するアクセス要求発行通知ARQSの受信に応答してタイマTMを起動する。また、各エントリENTのステート制御部STCNTは、アクセス要求完了通知ARQE(図4)を受信することなく、タイマTMが所定時間を計測した場合、アクセス要求完了通知ARQEを出力し、ステートSTを”発行済み”から”アイドル”に遷移させる。タイマTMが計測する所定時間は、要求選択部16がメモリアクセス要求MRQを選択してから、図10に示す要求完了通知生成部RQEGがアクセス要求完了通知ARQEを出力するまでの時間と同等である。すなわち、各ステート制御部STCNTは、図2に示すパイプライン制御部20によるアクセス要求完了通知ARQEの出力タイミングと同様のタイミングを生成することができる。   The state control unit STCNT of each entry ENT starts the timer TM in response to receiving the access request issue notification ARQS corresponding to the memory access request MRQ held in the entry ENT. In addition, when the timer TM measures a predetermined time without receiving the access request completion notification ARQE (FIG. 4), the state control unit STCNT of each entry ENT outputs the access request completion notification ARQE and changes the state ST to “ Transition from “issued” to “idle”. The predetermined time measured by the timer TM is equivalent to the time from when the request selection unit 16 selects the memory access request MRQ until the request completion notification generation unit RQEG shown in FIG. 10 outputs the access request completion notification ARQE. . That is, each state control unit STCNT can generate the same timing as the output timing of the access request completion notification ARQE by the pipeline control unit 20 shown in FIG.

各ステート制御部STCNTは、タイマTMが所定時間を計測する前にコマンドパリティエラー情報CAPEを受信した場合、アクセス要求完了通知ARQEを出力せず、ステートSTを”発行済み”に維持する。コマンドパリティエラー情報CAPEが発生した場合に、ステートSTが”発行済み”に維持されるため、メモリアクセス要求MRQのリトライを実行することができる。   If each state control unit STCNT receives the command parity error information CAPE before the timer TM measures a predetermined time, the state control unit STCNT does not output the access request completion notification ARQE and maintains the state ST in “issued”. When the command parity error information CAPE occurs, the state ST is kept “issued”, so that the memory access request MRQ can be retried.

なお、各ステート制御部STCNTは、タイマTMの代わりに、所定の周期毎にカウントアップまたはカウントダウンするカウンタを有してもよい。この場合、カウンタは、アクセス要求発行通知ARQSの受信に応答してカウント動作を開始し、所定の時間に対応する計数値を刻んだときにアクセス要求完了通知ARQEに対応するタイミング信号を出力する。   Each state control unit STCNT may include a counter that counts up or down every predetermined period instead of the timer TM. In this case, the counter starts a counting operation in response to reception of the access request issue notification ARQS, and outputs a timing signal corresponding to the access request completion notification ARQE when a count value corresponding to a predetermined time is engraved.

図24は、図23に示すアクセス要求保持部10Aの各エントリENTの動作の一例を示す。図5に示す動作と同一または同様の動作は、図5と同じ符号を付し、詳細な説明は省略する。図24に示すフローは、図5に示すフローに対して、ステップS110、S112の間にステップS111が挿入され、ステップS116がステップS115、S117に置き換えられる。   FIG. 24 shows an example of the operation of each entry ENT of the access request holding unit 10A shown in FIG. The same or similar operations as those shown in FIG. 5 are denoted by the same reference numerals as those in FIG. 24 is different from the flow shown in FIG. 5 in that step S111 is inserted between steps S110 and S112, and step S116 is replaced with steps S115 and S117.

アクセス要求保持部10AのエントリENTは、アクセス要求発行通知ARQSを受信した後、ステップS111において、タイマTMを起動し、処理をステップS112に移行する。   After receiving the access request issue notification ARQS, the entry ENT of the access request holding unit 10A activates the timer TM in step S111, and the process proceeds to step S112.

ステップS115において、エントリENTは、タイマTMが所定時間の計測を完了したか否かを判定する。タイマTMが所定時間の計測を完了した場合、処理はステップS117に移行し、タイマTMが所定時間の計測を完了していない場合、処理はステップS112に戻る。ステップS117において、エントリENTは、アクセス要求完了通知ARQEを要求発行リリース通知生成部22Aに出力し、処理をステップS118に移行する。なお、要求発行リリース通知生成部22Aは、エントリENTからのアクセス要求完了通知ARQEに基づいて、メモリアクセス要求リリース情報MRQRをCPUに出力する。   In step S115, the entry ENT determines whether or not the timer TM has completed measurement for a predetermined time. If the timer TM has completed the measurement of the predetermined time, the process proceeds to step S117. If the timer TM has not completed the measurement of the predetermined time, the process returns to step S112. In step S117, the entry ENT outputs an access request completion notification ARQE to the request issuance release notification generation unit 22A, and the process proceeds to step S118. The request issue release notification generation unit 22A outputs memory access request release information MRQR to the CPU based on the access request completion notification ARQE from the entry ENT.

以上の動作により、アクセス要求保持部10Aは、パイプライン制御部20Aを利用することなく、メモリアクセス要求リリース情報MRQRをCPUに出力するタイミングを生成することができる。   With the above operation, the access request holding unit 10A can generate the timing for outputting the memory access request release information MRQR to the CPU without using the pipeline control unit 20A.

図25は、図22に示すリフレッシュ要求保持部12Aの一例を示す。図6に示すリフレッシュ要求保持部12と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。   FIG. 25 shows an example of the refresh request holding unit 12A shown in FIG. Elements that are the same as or similar to those in the refresh request holding unit 12 shown in FIG. 6 are assigned the same reference numerals, and detailed descriptions thereof are omitted.

リフレッシュ要求保持部12Aは、エントリENTRのステート制御部STCNTが、タイマTMを有し、タイマTMによる所定時間の計測に基づいてステートSTを”発行済み”から”アイドル”に遷移させる機能を有する。リフレッシュ要求保持部12Aのその他の構成は、リフレッシュ要求完了通知RRQEを受信しないことを除き、図6に示すリフレッシュ要求保持部12と同様である。   The refresh request holding unit 12A has a function in which the state control unit STCNT of the entry ENTR has a timer TM and changes the state ST from “issued” to “idle” based on measurement of a predetermined time by the timer TM. The other configuration of the refresh request holding unit 12A is the same as that of the refresh request holding unit 12 shown in FIG. 6 except that the refresh request completion notification RRQE is not received.

エントリENTRのステート制御部STCNTの動作は、図23に示すアクセス要求保持部10Aのステート制御部STCNTの動作と同様である。すなわち、ステート制御部STCNTは、リフレッシュ要求発行通知RRQSの受信に応答してタイマTMを起動する。また、ステート制御部STCNTは、コマンドパリティエラー情報CAPEを受信することなく、タイマTMが所定時間を計測した場合、ステートSTを”発行済み”から”アイドル”に遷移させる。タイマTMの所定時間は、アクセス要求保持部10AのタイマTMと同様に、図2に示すパイプライン制御部20が、リフレッシュ要求RRQを示す発行要求情報RQINFを受信してからリフレッシュ要求完了通知RRQEを出力するまでの時間に等しい。   The operation of the state control unit STCNT of the entry ENTR is the same as the operation of the state control unit STCNT of the access request holding unit 10A shown in FIG. That is, the state control unit STCNT starts the timer TM in response to receiving the refresh request issue notification RRQS. Further, the state control unit STCNT changes the state ST from “issued” to “idle” when the timer TM measures a predetermined time without receiving the command parity error information CAPE. The predetermined time of the timer TM is the same as the timer TM of the access request holding unit 10A. The pipeline control unit 20 shown in FIG. 2 receives the refresh request completion notification RRQE after receiving the issue request information RQINF indicating the refresh request RRQ. It is equal to the time to output.

ステート制御部STCNTは、タイマTMが所定時間を計測する前にコマンドパリティエラー情報CAPEを受信した場合、ステートSTを”発行済み”に維持する。これにより、ステート制御部STCNTは、図6に示すリフレッシュ要求保持部14と同様に、コマンドパリティエラー情報CAPEが発生した場合に、ステートSTを”発行済み”に維持し、リフレッシュ要求RRQのリトライを実行することができる。   If the state control unit STCNT receives the command parity error information CAPE before the timer TM measures a predetermined time, the state control unit STCNT maintains the state ST as “issued”. As a result, the state control unit STCNT maintains the state ST “issued” when the command parity error information CAPE is generated, as in the refresh request holding unit 14 shown in FIG. 6, and retries the refresh request RRQ. Can be executed.

なお、ステート制御部STCNTは、タイマTMの代わりに、所定の周期毎にカウントアップまたはカウントダウンするカウンタを有してもよい。この場合、ステート制御部STCNTは、リフレッシュ要求発行通知RRQSの受信に応答してカウンタにカウント動作を開始させ、カウンタが所定の時間に対応する計数値を刻んだときにステートSTを”アイドル”に変更する。   Note that the state control unit STCNT may include a counter that counts up or down every predetermined period instead of the timer TM. In this case, the state control unit STCNT causes the counter to start counting in response to reception of the refresh request issue notification RRQS, and sets the state ST to “idle” when the counter engraves a count value corresponding to a predetermined time. change.

図26は、図25に示すリフレッシュ要求保持部12Aの動作の一例を示す。図7および図24に示す動作と同一または同様の動作は、図7および図24と同じ符号を付し、詳細な説明は省略する。図26に示すフローは、図7に示すフローに対して、ステップS110、S112の間にステップS111が挿入され、ステップS116rがステップS115に置き換えられる。   FIG. 26 shows an example of the operation of the refresh request holding unit 12A shown in FIG. The same or similar operations as those shown in FIGS. 7 and 24 are denoted by the same reference numerals as those in FIGS. 7 and 24, and detailed description thereof will be omitted. 26 is different from the flow shown in FIG. 7 in that step S111 is inserted between steps S110 and S112, and step S116r is replaced with step S115.

リフレッシュ要求保持部14AのエントリENTは、リフレッシュ要求発行通知RRQSを受信した後、ステップS111において、タイマTMを起動し、処理をステップS112に移行する。   After receiving the refresh request issuance notification RRQS, the entry ENT of the refresh request holding unit 14A starts the timer TM in step S111, and the process proceeds to step S112.

ステップS115において、エントリENTは、タイマTMが所定時間の計測を完了した場合、処理をステップS118に移行し、タイマTMが所定時間の計測を完了していない場合、処理をステップS112に戻す。   In step S115, the entry ENT shifts the process to step S118 when the timer TM completes the measurement of the predetermined time, and returns the process to step S112 when the timer TM has not completed the measurement of the predetermined time.

図27は、図23および図25に示すステート制御部STCNTのステートSTの遷移の一例を示す。図8と同様の遷移については、詳細な説明は省略する。図27においても、図8と同様に、下線を付した文字は、アクセス要求保持部10のステート制御部STCNTの動作を示し、括弧内の文字は、リフレッシュ要求保持部14のステート制御部STCNTの動作を示す。   FIG. 27 shows an example of transition of the state ST of the state control unit STCNT shown in FIGS. Detailed description of the same transition as in FIG. 8 is omitted. Also in FIG. 27, as in FIG. 8, the underlined characters indicate the operation of the state control unit STCNT of the access request holding unit 10, and the characters in parentheses indicate the state control unit STCNT of the refresh request holding unit 14. The operation is shown.

図23および図25に示すステート制御部STCNTは、ステートSTが”発行済み”の期間に、タイマTMによる所定時間の計測の完了に基づいて、ステートSTを”アイドル”に遷移させる。その他の遷移は、図8と同様である。   The state control unit STCNT shown in FIG. 23 and FIG. 25 changes the state ST to “idle” based on the completion of the measurement of the predetermined time by the timer TM during the period in which the state ST is “issued”. Other transitions are the same as those in FIG.

図28は、図22に示すパイプライン制御部20Aの一例を示す。図10に示すパイプライン制御部20と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。パイプライン制御部20Aは、図10に示すパイプライン制御部20から要求完了通知生成部RQEGを削除している。パイプライン制御部20Aのその他の構成および機能は、図10に示すパイプライン制御部20と同様である。なお、図10に示すパイプライン制御部20の要求完了通知生成部RQEGが生成するアクセス要求完了通知ARQEは、図22に示すアクセス要求保持部10Aが生成する。   FIG. 28 shows an example of the pipeline control unit 20A shown in FIG. Elements that are the same as or similar to the pipeline control unit 20 shown in FIG. 10 are given the same reference numerals, and detailed descriptions thereof are omitted. The pipeline control unit 20A deletes the request completion notification generation unit RQEG from the pipeline control unit 20 illustrated in FIG. Other configurations and functions of the pipeline control unit 20A are the same as those of the pipeline control unit 20 shown in FIG. The access request completion notification ARQE generated by the request completion notification generation unit RQEG of the pipeline control unit 20 shown in FIG. 10 is generated by the access request holding unit 10A shown in FIG.

図29は、図22に示す要求発行リリース通知生成部22Aの一例を示す。図11に示す要求発行リリース通知生成部22と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。   FIG. 29 shows an example of the request issuance release notification generator 22A shown in FIG. Elements that are the same as or similar to those in the request issuance release notification generation unit 22 illustrated in FIG. 11 are denoted by the same reference numerals, and detailed description thereof is omitted.

要求発行リリース通知生成部22Aの要求リリース通知生成部221は、アクセス要求保持部10Aの各エントリENTからのアクセス要求完了通知ARQEに基づいて、メモリアクセス要求リリース情報MRQRをCPUに出力する。要求発行リリース通知生成部22Aのその他の構成および機能は、図11に示す要求発行リリース通知生成部22と同様である。   The request release notification generation unit 221 of the request issue release notification generation unit 22A outputs the memory access request release information MRQR to the CPU based on the access request completion notification ARQE from each entry ENT of the access request holding unit 10A. Other configurations and functions of the request issuance release notification generation unit 22A are the same as those of the request issuance release notification generation unit 22 shown in FIG.

図30は、図22に示すエラー検出部24Aの一例を示す。図12に示すエラー検出部24と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。   FIG. 30 shows an example of the error detection unit 24A shown in FIG. Elements that are the same as or similar to those of the error detection unit 24 shown in FIG. 12 are given the same reference numerals, and detailed descriptions thereof are omitted.

エラー検出部24Aのリトライ制御部RTCNTは、リトライ制御要求RTRQ(プリチャージ要求)の出力から所定時間を計測するタイマTMを有する。リトライ制御部RTCNTは、タイマTMが所定時間の計測を完了したことに基づいてリトライ制御要求完了通知RTRQEを発生する。リトライ制御部RTCNTは、リトライ制御要求完了通知RTRQEの発生に基づいて、モード情報MDをリトライ前準備モードからリトライモードに遷移させる。エラー検出部24Aのその他の構成および機能は、リトライ制御要求完了通知RTRQEを受信しないことを除き、図12に示すエラー検出部24と同様である。リトライ制御部RTCNTによるモード情報MDの遷移は、図13と同一または同様である。   The retry controller RTCNT of the error detector 24A has a timer TM that measures a predetermined time from the output of a retry control request RTRQ (precharge request). The retry control unit RTCNT generates a retry control request completion notification RTRQE based on the completion of measurement of the predetermined time by the timer TM. The retry control unit RTCNT changes the mode information MD from the pre-retry preparation mode to the retry mode based on the generation of the retry control request completion notification RTRQE. Other configurations and functions of the error detection unit 24A are the same as those of the error detection unit 24 illustrated in FIG. 12 except that the retry control request completion notification RTRQE is not received. The transition of the mode information MD by the retry control unit RTCNT is the same as or similar to that in FIG.

図22から図30に示す記憶制御装置MACaの動作は、図17から図20と同様である。すなわち、記憶制御装置MACaは、コマンドパリティエラー情報CAPEを受信した場合、ステートSTが”発行済み”のエントリENT(またはENTR)に保持されたメモリアクセス要求MRQ(またはリフレッシュ要求RRQ)をリトライの対象にする。記憶制御装置MACaは、リトライの対象のメモリアクセス要求MRQに対応するメモリアクセス要求リリース情報MRQRのCPUへの出力を抑止する。また、記憶制御装置MACaは、リトライの対象のメモリアクセス要求MRQ(またはリフレッシュ要求RRQ)をDIMMに再発行する前にプリチャージコマンドをDIMMに発行する。   The operation of the storage control device MACa shown in FIGS. 22 to 30 is the same as that of FIGS. 17 to 20. That is, when the storage controller MACa receives the command parity error information CAPE, the storage control device MACa retries the memory access request MRQ (or refresh request RRQ) held in the entry ENT (or ENTR) whose state ST is “issued”. To. The storage controller MACa suppresses output of the memory access request release information MRQR corresponding to the memory access request MRQ to be retried to the CPU. The storage controller MACa issues a precharge command to the DIMM before reissuing the memory access request MRQ (or refresh request RRQ) to be retried.

以上、図22から図30に示す実施形態においても、図1から図21に示す実施形態と同様の効果を得ることができる。すなわち、記憶制御装置MACa、CPUおよびDIMMを含むシステムは、コマンドパリティエラー情報CAPEが発生した場合にも、動作を停止させることなく継続することができる。すなわち、システムの信頼性が低下することを抑止することができ、システムの性能の向上することができる。   As described above, also in the embodiment shown in FIGS. 22 to 30, the same effect as that of the embodiment shown in FIGS. 1 to 21 can be obtained. That is, the system including the storage control device MACa, CPU, and DIMM can continue without stopping the operation even when the command parity error information CAPE occurs. That is, it is possible to prevent a decrease in the reliability of the system and improve the performance of the system.

さらに、図22から図30に示す実施形態では、パイプライン制御部20を経由することなく、アクセス要求完了通知ARQE、リフレッシュ要求完了通知RRQE、リトライ制御要求RTRQ、あるいは、これらに代わるタイミング信号を生成することができる。この結果、記憶制御装置MACa内の制御を、図2に示す記憶制御装置MAC内の制御に比べて簡易にすることができ、タイミング設計等を容易にすることができる。   Further, in the embodiment shown in FIGS. 22 to 30, the access request completion notification ARQE, the refresh request completion notification RRQE, the retry control request RTRQ, or a timing signal instead thereof is generated without going through the pipeline control unit 20. can do. As a result, the control in the storage control device MACa can be simplified compared to the control in the storage control device MAC shown in FIG. 2, and the timing design and the like can be facilitated.

なお、図2から図20に示す実施形態は、SRAM、強誘電体メモリ、MRAM(Magnetoresistive RAM)等の他の記憶装置のアクセスを制御する記憶制御装置に適用されてもよい。SRAMは、プリチャージコマンドを受けることなく、アクセス動作後にスタンバイ状態に戻る。このため、SRAMのアクセスを制御する記憶制御装置MAC、MACaのエラー検出部24、24Aは、モード情報MDとしてリトライ前準備モードを持たない。また、図2から図20に示す実施形態がSRAM、強誘電体メモリまたはMRAMに適用される場合、記憶制御装置MAC、MACaは、リフレッシュ制御部12およびリフレッシュ要求保持部14を持たない。   The embodiments shown in FIGS. 2 to 20 may be applied to a storage control device that controls access to other storage devices such as SRAM, ferroelectric memory, and MRAM (Magnetoresistive RAM). The SRAM returns to the standby state after the access operation without receiving the precharge command. For this reason, the error detection units 24 and 24A of the storage control devices MAC and MACa that control access to the SRAM do not have the pre-retry preparation mode as the mode information MD. Further, when the embodiment shown in FIGS. 2 to 20 is applied to SRAM, ferroelectric memory, or MRAM, the storage control devices MAC and MACa do not have the refresh control unit 12 and the refresh request holding unit 14.

以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。   From the above detailed description, features and advantages of the embodiments will become apparent. This is intended to cover the features and advantages of the embodiments described above without departing from the spirit and scope of the claims. Also, any improvement and modification should be readily conceivable by those having ordinary knowledge in the art. Therefore, there is no intention to limit the scope of the inventive embodiments to those described above, and appropriate modifications and equivalents included in the scope disclosed in the embodiments can be used.

10、10A…アクセス要求保持部;12、12A…リフレッシュ制御部;14…リフレッシュ要求保持部;16…要求選択部;18…アクセス信号生成部;20、20A…パイプライン制御部;22、22A…要求発行リリース通知生成部;24、24A…エラー検出部;26…ライトデータ制御部;28…リードデータ制御部;30…データ入出力部;100…記憶制御装置;110a、110b、110c…要求保持部;120…要求選択部;130…出力生成部;140…要求制御部;200…制御装置;300…記憶装置;AD…アドレス;ARQE…アクセス要求完了通知;ARQI…アクセス要求情報;ARQS…アクセス要求発行通知;CAPE…コマンドパリティエラー情報;CMD…コマンド;ENT、ENTR…エントリ;HLD…保持部;MAC…記憶制御装置;MD…モード情報;MRQ…メモリアクセス要求;MRQR…メモリアクセス要求リリース情報;P…パリティ;RDCNT…リードデータ制御信号;RDCNTG…リードデータ制御信号生成部;RDG…リードデータ生成部;RDT…リードデータ;RQEG…要求完了通知生成部;RQINF…発行要求情報;RCOUNT…カウンタ;RRQ…リフレッシュ要求;RRQE…リフレッシュ要求完了通知;RRQI…リフレッシュ要求情報;RRQS…リフレッシュ要求発行通知;RTRQ…リトライ制御要求;RTRQE…リトライ制御要求完了通知;STCNT…ステート制御部;WD…ライトデータ;WDCNT…ライトデータ制御信号;WDCNTG…ライトデータ制御信号生成部;WDRQ…ライトデータ要求;WDRQG…ライトデータ要求生成部   10, 10A ... access request holding unit; 12, 12A ... refresh control unit; 14 ... refresh request holding unit; 16 ... request selection unit; 18 ... access signal generation unit; 20, 20A ... pipeline control unit; Request issuance release notification generation unit; 24, 24A ... error detection unit; 26 ... write data control unit; 28 ... read data control unit; 30 ... data input / output unit; 100 ... storage control device: 110a, 110b, 110c ... request holding 120: Request selection unit; 130 ... Output generation unit; 140 ... Request control unit; 200 ... Control device; 300 ... Storage device; AD ... Address; ARQE ... Access request completion notification; ARQI ... Access request information; CAPE ... Command parity error information; CMD ... Command; ENT, ENTR ... En HLD ... holding unit; MAC ... storage controller; MD ... mode information; MRQ ... memory access request; MRQR ... memory access request release information; P ... parity; RDCNT ... read data control signal; RDCNTG ... read data control signal generation Unit: RDG ... read data generation unit; RDT ... read data; RQEG ... request completion notification generation unit; RQINF ... issue request information; RCOUNT ... counter; RRQ ... refresh request; RRQE ... refresh request completion notification; RRQS ... Refresh request issue notification; RTRQ ... Retry control request; RTRQE ... Retry control request completion notification; STCNT ... State control unit; WD ... Write data; WDCNT ... Write data control signal; WDCNTG ... Write data control signal generated Department; WDRQ ... write data request; WDRQG ... write data request generating unit

Claims (15)

制御装置から出力されるアクセス要求に基づいて、メモリデバイスのアクセスを制御する記憶制御装置において、
前記制御装置から出力されるアクセス要求をそれぞれ保持する複数の要求保持部と、
前記複数の要求保持部にそれぞれ保持されたアクセス要求のいずれかを選択し、選択されたアクセス要求を、前記メモリデバイスを動作させる動作指示として前記メモリデバイスに出力するとともに、アクセス要求の削除が抑止された場合、削除が抑止されたアクセス要求である対象アクセス要求を再度選択し、前記動作指示として前記メモリデバイスに出力する要求選択部と、
前記要求選択部によるアクセス要求の選択から第1の時間が経過した場合、前記要求選択部が選択したアクセス要求を保持している要求保持部からアクセス要求を削除するとともに、前記動作指示がエラーを含むことを示すエラー情報を前記メモリデバイスから受信した場合、前記複数の要求保持部のうち、前記要求選択部による選択から前記第1の時間が経過していないアクセス要求を保持している要求保持部からのアクセス要求の削除を抑止する要求制御部を有することを特徴とする記憶制御装置。
In a storage controller that controls access to a memory device based on an access request output from the controller,
A plurality of request holding units respectively holding access requests output from the control device;
Select one of the access requests held in each of the plurality of request holding units, output the selected access request to the memory device as an operation instruction for operating the memory device, and suppress the deletion of the access request A request selecting unit that re-selects the target access request that is an access request whose deletion is suppressed, and outputs the selected request to the memory device as the operation instruction;
When a first time has elapsed since the selection of the access request by the request selection unit, the access request is deleted from the request holding unit holding the access request selected by the request selection unit, and the operation instruction causes an error. When the error information indicating that the request is included is received from the memory device , among the plurality of request holding units, a request holding that holds an access request for which the first time has not elapsed since selection by the request selecting unit A storage control device comprising a request control unit that suppresses deletion of an access request from a unit.
前記要求選択部により選択されたアクセス要求が前記メモリデバイスにデータを書き込むライト要求の場合、前記第1の時間の経過から第2の時間後に、前記メモリデバイスに書き込むライトデータを前記制御装置に要求するライトデータ要求を出力するライトデータ要求生成部を有し、
前記ライトデータ要求生成部は、前記エラー情報が前記メモリデバイスから出力された場合、前記要求選択部による選択から前記第1の時間が経過していないライト要求に対応する前記ライトデータ要求の出力を抑止することを特徴とする請求項1記載の記憶制御装置。
If the request is selected access request by the selection unit writing data to the memory device write request, after the second time from the lapse of the first time, it requests the write data to be written to the memory device to the controller A write data request generation unit that outputs a write data request to be
When the error information is output from the memory device , the write data request generation unit outputs the write data request corresponding to a write request for which the first time has not elapsed since selection by the request selection unit. The storage control device according to claim 1, wherein the storage control device is suppressed.
前記ライトデータ要求に基づいて前記制御装置から出力されるライトデータを保持し、保持したライトデータを前記メモリデバイスに出力するライトデータ制御部と、
前記要求選択部により選択されたアクセス要求が前記ライト要求の場合、前記第1の時間および前記第2の時間の経過から第3の時間後に、前記ライトデータ制御部に保持されたライトデータを前記メモリデバイスに出力させるライトデータ制御信号を出力するライトデータ制御信号生成部を有し、
前記ライトデータ制御信号生成部は、前記エラー情報が前記メモリデバイスから出力された場合、前記要求選択部による選択から前記第1の時間が経過していないライト要求に対応する前記ライトデータ制御信号の出力を抑止することを特徴とする請求項2記載の記憶制御装置。
A write data control unit that holds the write data output from the control device based on the write data request, and outputs the held write data to the memory device ;
When the access request selected by the request selection unit is the write request, the write data held in the write data control unit is stored in the write data control unit after a third time from the elapse of the first time and the second time. A write data control signal generator for outputting a write data control signal to be output to the memory device ;
When the error information is output from the memory device , the write data control signal generation unit generates the write data control signal corresponding to the write request for which the first time has not elapsed since selection by the request selection unit. 3. The storage control device according to claim 2, wherein output is suppressed.
前記メモリデバイスから読み出したデータを保持し、保持したデータを前記制御装置に出力するリードデータ制御部と、
前記要求選択部により選択されたアクセス要求が前記メモリデバイスからデータを読み出すリード要求の場合、前記第1の時間の経過から第4の時間後に、前記リードデータ制御部に保持されたデータを前記制御装置に出力させるリード制御信号を出力するリードデータ制御信号生成部を有し、
前記リードデータ制御信号生成部は、前記エラー情報が前記メモリデバイスから出力された場合、前記要求選択部による選択から前記第1の時間が経過していないリード要求に対応する前記リード制御信号の出力を抑止することを特徴とする請求項1ないし請求項3のいずれか1項記載の記憶制御装置。
A read data control unit that holds data read from the memory device and outputs the held data to the control device;
When the access request selected by the request selection unit is a read request for reading data from the memory device , the data held in the read data control unit is controlled after the fourth time from the elapse of the first time. A read data control signal generation unit that outputs a read control signal to be output to the apparatus;
The read data control signal generation unit, when the error information is output from the memory device , outputs the read control signal corresponding to a read request for which the first time has not elapsed since selection by the request selection unit The storage control device according to any one of claims 1 to 3, wherein the storage control device is suppressed.
前記要求選択部によるアクセス要求の選択から前記第1の時間が経過したことに基づいて、前記要求選択部により選択されたアクセス要求を前記メモリデバイスが受け付けたことを示すアクセス要求リリース情報を前記制御装置に出力するリリース通知生成部を有し、
前記リリース通知生成部は、前記エラー情報が前記メモリデバイスから出力された場合、前記要求選択部による選択から前記第1の時間が経過していないアクセス要求に対応する前記アクセス要求リリース情報の出力を抑止することを特徴とする請求項1ないし請求項4のいずれか1項記載の記憶制御装置。
The access request release information indicating that the memory device has accepted the access request selected by the request selection unit based on the elapse of the first time from the selection of the access request by the request selection unit. A release notification generator for outputting to the device;
When the error information is output from the memory device , the release notification generation unit outputs the access request release information corresponding to an access request for which the first time has not elapsed since selection by the request selection unit. 5. The storage control device according to claim 1, wherein the storage control device suppresses the storage control device.
前記メモリデバイス内のメモリセルが保持しているデータを再書き込みするリフレッシュ動作を前記メモリデバイスに実行させるリフレッシュ要求を生成するリフレッシュ制御部と、
前記リフレッシュ制御部が生成したリフレッシュ要求を保持するリフレッシュ要求保持部を有し、
前記要求選択部は、前記複数の要求保持部に保持されたアクセス要求のいずれか、または前記リフレッシュ要求保持部に保持されたリフレッシュ要求を選択し、前記動作指示として前記メモリデバイスに出力し、
前記要求制御部は、前記要求選択部によるアクセス要求の選択から前記第1の時間が経過した場合、前記要求選択部が選択したアクセス要求を前記複数の要求保持部のいずれかから削除し、前記要求選択部によるリフレッシュ要求の選択から前記第1の時間が経過した場合、前記要求選択部が選択したリフレッシュ要求を前記リフレッシュ要求保持部から削除するとともに、前記エラー情報が前記メモリデバイスから出力された場合、前記要求選択部による選択から前記第1の時間が経過していないアクセス要求を保持している要求保持部からのアクセス要求の削除および前記要求選択部による選択から前記第1の時間が経過していないリフレッシュ要求を保持しているリフレッシュ保持部からのリフレッシュ要求の削除を抑止することを特徴とする請求項1ないし請求項5のいずれか1項記載の記憶制御装置。
A refresh control unit for generating a refresh request for causing the memory device to perform a refresh operation for rewriting data held in a memory cell in the memory device ;
A refresh request holding unit for holding a refresh request generated by the refresh control unit;
The request selection unit selects any one of the access requests held in the plurality of request holding units or the refresh request held in the refresh request holding unit, and outputs the request to the memory device as the operation instruction.
The request control unit deletes the access request selected by the request selection unit from any of the plurality of request holding units when the first time has elapsed since the selection of the access request by the request selection unit, When the first time has elapsed from the selection of the refresh request by the request selection unit, the refresh request selected by the request selection unit is deleted from the refresh request holding unit, and the error information is output from the memory device If the request selection section according to elapse of the first time after selection by deletion and the request selection part of the access request from the request holding unit that holds the access request has not passed the first time after selection It is possible to suppress the deletion of refresh requests from the refresh holding unit that holds unrefreshed refresh requests. The storage controller according to any one of claims 1 to 5 and.
前記メモリデバイスからの前記エラー情報の出力が停止された後、前記メモリデバイスをスタンバイ状態に設定するスタンバイ要求を生成するスタンバイ要求生成部を有し、
前記要求選択部は、前記メモリデバイスからの前記エラー情報の出力が停止された後、前記アクセス要求を選択する前に前記スタンバイ要求を選択し、前記動作指示として前記メモリデバイスに出力することを特徴とする請求項1ないし請求項5のいずれか1項記載の記憶制御装置。
A standby request generator for generating a standby request for setting the memory device to a standby state after the output of the error information from the memory device is stopped;
The request selection unit selects the standby request before selecting the access request after the output of the error information from the memory device is stopped, and outputs the standby request to the memory device as the operation instruction. The storage control device according to any one of claims 1 to 5.
前記メモリデバイスは、ダイナミックメモリセルを有し、前記メモリデバイスをスタンバイ状態に設定する動作指示は、プリチャージコマンドであることを特徴とする請求項7記載の記憶制御装置。 The memory device includes a dynamic memory cell, the operation instruction to set the memory device in the standby state, the storage control device according to claim 7, wherein it is a precharge command. 前記エラー情報の受信回数を計数するカウンタと、
前記カウンタのカウンタが所定値に達した場合に、前記制御装置にシステムエラーを示すシステムエラー情報を出力するシステムエラー検出部を有し、
前記システムエラー検出部は、前記エラー情報に基づいて削除を抑止したアクセス要求の全てが、前記要求選択部により再び選択され、前記メモリデバイスに受け付けられた場合、前記カウンタをリセットすることを特徴とする請求項1ないし請求項8のいずれか1項記載の記憶制御装置。
A counter for counting the number of times the error information is received;
A system error detector that outputs system error information indicating a system error to the control device when the counter of the counter reaches a predetermined value;
The system error detection unit resets the counter when all the access requests whose deletion is suppressed based on the error information are selected again by the request selection unit and accepted by the memory device. The storage control device according to any one of claims 1 to 8.
前記複数の要求保持部の各々は、前記要求選択部によるアクセス要求の選択から前記第1の時間が経過するまでの時間を計測する計測部を有することを特徴とする請求項1ないし請求項9のいずれか1項記載の記憶制御装置。   10. Each of the plurality of request holding units includes a measuring unit that measures a time from when an access request is selected by the request selecting unit until the first time elapses. The storage control device according to any one of the above. 前記要求選択部は、前記エラー情報が前記メモリデバイスから出力されている間、アクセス要求の選択を抑止することを特徴とする請求項1ないし請求項10のいずれか1項記載の記憶制御装置。 Said request selection unit, while the error information is output from the memory device, the storage controller according to any one of claims 1 to 10, characterized in that to prevent the selection of the access request. 前記エラー情報は、前記要求選択部によるアクセス要求の選択から前記第1の時間が経過する前に、前記メモリデバイスから出力されることを特徴とする請求項1ないし請求項11のいずれか1項記載の記憶制御装置。 12. The error information is output from the memory device before the first time elapses from selection of an access request by the request selection unit. The storage control device described. 前記要求選択部が選択したアクセス要求に基づいて、前記動作指示と、前記動作指示のエラーを前記メモリデバイスに検出させるエラー検出情報とを生成して前記メモリデバイスに出力する出力生成部を有することを特徴とする請求項1ないし請求項12のいずれか1項記載の記憶制御装置。 An output generation unit configured to generate the operation instruction and error detection information for causing the memory device to detect an error in the operation instruction based on the access request selected by the request selection unit and to output the error detection information to the memory device; The storage control device according to claim 1, wherein the storage control device is a storage control device. 前記要求選択部が選択したアクセス要求と、前記エラー情報とを順次に保持する複数のステージを含むシフトレジスタを有し、
前記複数のステージのうち、2段目からm段目のステージの各々は、前記メモリデバイスから出力される前記エラー情報が示す論理と前段のステージから出力されるエラー情報が示す論理との論理和をとった論理を保持することで、前記メモリデバイスから前記エラー情報が出力されたことに基づいて前記エラー情報を保持し、
前記m段目のステージは、初段のステージに保持されたアクセス要求およびエラー情報が前記第1の時間の経過時に保持されるステージであり、
前記ライトデータ要求生成部は、前記m段目より後のステージの1つから出力されるアクセス要求に基づいて前記ライトデータ要求を生成し、前記m段目より後のステージの前記1つがエラー情報を保持する場合、前記ライトデータ要求の出力を抑止することを特徴とする請求項2記載の記憶制御装置。
A shift register including a plurality of stages for sequentially holding the access request selected by the request selection unit and the error information;
Of the plurality of stages, each of the second to mth stages is a logical sum of the logic indicated by the error information output from the memory device and the logic indicated by the error information output from the preceding stage. By holding the logic that has taken the error information based on the output of the error information from the memory device,
The m-th stage is a stage in which the access request and error information held in the first stage are held when the first time has elapsed,
The write data request generation unit generates the write data request based on an access request output from one of the stages after the m-th stage, and the one of the stages after the m-th stage is error information. 3. The storage control device according to claim 2, wherein output of the write data request is suppressed when the data is held.
制御装置から出力されるアクセス要求をそれぞれ保持する複数の要求保持部を含み、前記アクセス要求に基づいて、メモリデバイスのアクセスを制御する記憶制御装置の制御方法において、
前記記憶制御装置が有する要求選択部が、前記複数の要求保持部にそれぞれ保持されたアクセス要求のいずれかを選択し、選択されたアクセス要求を、前記メモリデバイスを動作させる動作指示として前記メモリデバイスに出力し、
前記記憶制御装置が有する要求制御部が、前記要求選択部によるアクセス要求の選択から第1の時間が経過した場合、前記要求選択部が選択したアクセス要求を保持している要求保持部からアクセス要求を削除するとともに、前記動作指示がエラーを含むことを示すエラー情報を前記メモリデバイスから受信した場合、前記複数の要求保持部のうち、前記要求選択部による選択から前記第1の時間が経過していないアクセス要求である対象アクセス要求を保持している要求保持部からのアクセス要求の削除を抑止し、
前記要求選択部は、削除が抑止された前記対象アクセス要求を再度選択し、前記動作指示として前記メモリデバイスに出力することを特徴とする記憶制御装置の制御方法。
In a control method of a storage control device that includes a plurality of request holding units each holding an access request output from a control device, and controls access of a memory device based on the access request,
Said memory device request selection unit, the selected plurality of request holding unit in one of access request held respectively, the access request selected as an operation instruction for operating the memory device in which the storage control device has Output to
When a first time elapses after the request control unit included in the storage control device has selected an access request by the request selection unit, an access request is received from a request holding unit holding the access request selected by the request selection unit When the error information indicating that the operation instruction includes an error is received from the memory device , the first time elapses from the selection by the request selection unit among the plurality of request holding units. Suppress the deletion of access requests from the request holding unit that holds the target access request that is not
The method for controlling a storage control device, wherein the request selection unit reselects the target access request whose deletion has been suppressed, and outputs the selected request to the memory device as the operation instruction.
JP2014205847A 2014-10-06 2014-10-06 Storage control device and control method of storage control device Active JP6439363B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014205847A JP6439363B2 (en) 2014-10-06 2014-10-06 Storage control device and control method of storage control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014205847A JP6439363B2 (en) 2014-10-06 2014-10-06 Storage control device and control method of storage control device

Publications (2)

Publication Number Publication Date
JP2016076076A JP2016076076A (en) 2016-05-12
JP6439363B2 true JP6439363B2 (en) 2018-12-19

Family

ID=55951421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014205847A Active JP6439363B2 (en) 2014-10-06 2014-10-06 Storage control device and control method of storage control device

Country Status (1)

Country Link
JP (1) JP6439363B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11675659B2 (en) * 2016-07-15 2023-06-13 Advanced Micro Devices, Inc. DDR memory error recovery
JP7408271B2 (en) 2018-01-17 2024-01-05 キヤノンメディカルシステムズ株式会社 Magnetic resonance imaging equipment and medical image processing equipment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444479B2 (en) * 2005-12-28 2008-10-28 Alexander James W Fully buffered DIMM read data substitution for write acknowledgement
JP5318076B2 (en) * 2010-11-30 2013-10-16 株式会社東芝 Memory device for executing a plurality of access commands in parallel and memory access method in the same device
JP2013073654A (en) * 2011-09-28 2013-04-22 Elpida Memory Inc Semiconductor device

Also Published As

Publication number Publication date
JP2016076076A (en) 2016-05-12

Similar Documents

Publication Publication Date Title
US10824499B2 (en) Memory system architectures using a separate system control path or channel for processing error information
US10002043B2 (en) Memory devices and modules
US8880974B2 (en) Memory system and method using ECC with flag bit to identify modified data
KR101873526B1 (en) On-chip data scrubbing method and apparatus with ECC
TWI567748B (en) Method and system for error management in a memory device
US10956260B2 (en) Semiconductor memory devices, and methods of operating semiconductor memory devices
KR20190019209A (en) DDR memory error recovery
TWI759884B (en) Memory device, operating method of memory device and memory system
JPH03296992A (en) Cache memory built-in semiconductor memory
JP6713740B2 (en) Memory module
US9785570B2 (en) Memory devices and modules
JP2009116967A (en) Semiconductor memory, operating method of semiconductor memory and system
US11664083B2 (en) Memory, memory system having the same and operating method thereof
KR20210118727A (en) Error correction for dynamic data in a memory that is row addressable and column addressable
JP6439363B2 (en) Storage control device and control method of storage control device
US10521113B2 (en) Memory system architecture
KR102674032B1 (en) Memory device for performing repair operation, memory system having the same, and operating method thereof
US20180046392A1 (en) Method for performing data transaction and memory device therefor
US20240118970A1 (en) Techniques for memory scrubbing associated with reliability availability and serviceability features
JP6040627B2 (en) MEMORY CONTROL DEVICE, INFORMATION PROCESSING DEVICE, AND MEMORY CONTROL DEVICE CONTROL METHOD
CN116069548A (en) Memory device, memory module, and method of operating memory controller
JP2009266286A (en) Semiconductor memory and memory controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170704

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20170803

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20170803

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170804

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180219

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180821

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181009

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: 20181023

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181105

R150 Certificate of patent or registration of utility model

Ref document number: 6439363

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150