JP4941051B2 - Memory control method, memory system, and program - Google Patents

Memory control method, memory system, and program Download PDF

Info

Publication number
JP4941051B2
JP4941051B2 JP2007088448A JP2007088448A JP4941051B2 JP 4941051 B2 JP4941051 B2 JP 4941051B2 JP 2007088448 A JP2007088448 A JP 2007088448A JP 2007088448 A JP2007088448 A JP 2007088448A JP 4941051 B2 JP4941051 B2 JP 4941051B2
Authority
JP
Japan
Prior art keywords
ecc
memory
error correction
bit error
temperature
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.)
Expired - Fee Related
Application number
JP2007088448A
Other languages
Japanese (ja)
Other versions
JP2008251066A (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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2007088448A priority Critical patent/JP4941051B2/en
Publication of JP2008251066A publication Critical patent/JP2008251066A/en
Application granted granted Critical
Publication of JP4941051B2 publication Critical patent/JP4941051B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Dram (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

本発明は、ECC(Error Correcting Code)で保護された汎用DRAM(dynamic RAM)を用いたメモリシステムに関する。   The present invention relates to a memory system using a general-purpose DRAM (dynamic RAM) protected by ECC (Error Collecting Code).

DRAMを使った従来のメモリシステムにおいては、リフレッシュサイクルは転送効率とメモリの特性から最適な値があらかじめ設定されるのが一般的である(例えば特許文献1)。しかし、近年のLSIの高性能化による消費電力の増大により装置内部の発熱量は増える傾向にある。また、DRAMチップ単体に着目すると、微細化・高集積化によりリーク電流が増大する傾向にあり、メモリ単体の信頼性が温度に依存するケースも増えてきている。メモリの間欠故障の救済手段としてECCの1ビットエラー訂正、2ビットエラー訂正の検出が広く使われているが、このようにECCエラー訂正の発生要因がソフトエラーのみでなく、温度によるデータ損失が原因で発生する可能性もある。温度によるデータ損失に対しては、DRAMのリフレッシュ時間を適切に設定することである程度防ぐことができるが、高温に対応したリフレッシュ間隔をメモリシステムの設定値として決めてしまうことは、不必要にリフレッシュサイクルを発生させることになる。リフレッシュサイクルを発生させるためには、メモリバスをアイドルステートにする必要があるため、高温に合わせたリフレッシュ間隔をメモリシステムの設定値として決めてしまうことは、不必要にアイドルステートを入れることになり、バスの転送効率を下げることにつながる。
特開平04−195890号公報
In a conventional memory system using a DRAM, the refresh cycle is generally set in advance with an optimum value from the transfer efficiency and memory characteristics (for example, Patent Document 1). However, the amount of heat generated inside the device tends to increase due to the increase in power consumption due to the recent high performance of LSI. Further, when focusing on a single DRAM chip, leakage current tends to increase due to miniaturization and high integration, and the reliability of a single memory depends on temperature. ECC 1-bit error correction and 2-bit error correction detection are widely used as a means of repairing intermittent memory failures, but the cause of ECC error correction is not only soft errors but also data loss due to temperature. It may also occur due to a cause. Data loss due to temperature can be prevented to some extent by setting the DRAM refresh time appropriately, but it is unnecessary to set the refresh interval corresponding to the high temperature as the setting value of the memory system. A cycle will be generated. In order to generate a refresh cycle, the memory bus must be in an idle state. Therefore, deciding a refresh interval that matches the high temperature as the setting value of the memory system unnecessarily enters the idle state. , Leading to lower bus transfer efficiency.
Japanese Patent Laid-Open No. 04-195890

本発明の目的は、メモリシステムの性能低下を最低限に抑えつつ信頼性を向上させることができ、不必要な保守介入も予防することができるメモリ制御方法およびメモリシステムを提供することにある。   An object of the present invention is to provide a memory control method and a memory system that can improve reliability while minimizing the performance degradation of the memory system and prevent unnecessary maintenance intervention.

本発明のメモリ制御方法は、メモリ周囲温度を監視し、ECC1ビットエラー訂正が発生したときに、メモリ周囲温度から、該ECC1ビットエラー訂正が温度によるものか、メモリ故障によるものかの切り分けを行い、温度による場合は、該メモリ周囲温度に応じてDRAMのリフレッシュ間隔を短く設定する。   The memory control method of the present invention monitors the memory ambient temperature, and when ECC 1-bit error correction occurs, determines whether the ECC 1-bit error correction is due to temperature or memory failure from the memory ambient temperature. In the case of temperature, the refresh interval of the DRAM is set short according to the ambient temperature of the memory.

また、本発明のメモリシステムは、
メモリ周辺に温度センサーが配置され、
メモリコントローラは、温度センサーからの情報を監視する温度監視部と、DRAMのモードレジスタを設定するモードレジスタ制御部と、各メモリバンクのECC1ビットエラー訂正の発生状況を監視するECC監視部を有しており、
CPU上で動作している制御ファームウェアは、ECC1ビットエラー訂正が発生したことをECC監視部より検出すると、温度監視部をチェックし、温度監視部から閾値を越える温度を検出したときは、そのときに発生したECC1ビットエラー訂正が高温によるデータ補償不十分によるものと判断し、モードレジスタ制御部により、ECC1ビットエラー訂正を発生したメモリバンクのDRAMのリフレッシュ間隔を短く設定する。
Further, the memory system of the present invention includes:
A temperature sensor is placed around the memory,
The memory controller has a temperature monitoring unit that monitors information from the temperature sensor, a mode register control unit that sets a mode register of the DRAM, and an ECC monitoring unit that monitors the occurrence status of ECC1 bit error correction in each memory bank. And
When the control firmware operating on the CPU detects that the ECC 1-bit error correction has occurred from the ECC monitoring unit, it checks the temperature monitoring unit, and if a temperature exceeding the threshold is detected from the temperature monitoring unit, It is determined that the ECC1 bit error correction generated in step 1 is due to insufficient data compensation due to the high temperature, and the refresh interval of the DRAM of the memory bank in which the ECC1 bit error correction is generated is set short by the mode register control unit.

ECCで保護された汎用DRAMを使用したメモリシステムにおいて、温度により最適なリフレッシュ間隔が設定できるので、メモリシステムの性能低下を抑えつつ信頼性を向上させることが可能となり、不必要な保守介入も予防することができる。また、特別なメモリを用意することもなく広く市販されているDIMM(Double Inline Memory Module)等の汎用DRAMを使用できるため、システム価格の上昇を抑えることができる。   In memory systems that use ECC-protected general-purpose DRAM, the optimal refresh interval can be set according to the temperature, so that it is possible to improve reliability while suppressing performance degradation of the memory system, and prevent unnecessary maintenance intervention can do. In addition, since a general-purpose DRAM such as a DIMM (Double Inline Memory Module) that is widely available without using a special memory can be used, an increase in system cost can be suppressed.

以上説明したように、本発明は、以下に記載するような効果を奏する。   As described above, the present invention has the following effects.

第1に、ECC1ビットエラー訂正発生時に、温度による影響を判断して高温時のリフレッシュ間隔を動的に短く設定しなおす温度補償を入れることで、不必要な保守介入を防ぐことができる。   First, when ECC1 bit error correction occurs, unnecessary maintenance intervention can be prevented by adding temperature compensation that determines the effect of temperature and dynamically resets the refresh interval at high temperatures.

第2に、メモリコントローラ側で温度により適切なリフレッシュ時間を設定するようにすることで、メモリに特別な仕組みを作りこむことなく温度補償が可能となり、広く市販されている汎用DRAMを使用することができ、価格上昇を最低限に抑えつつ高可用なメモリシステムが実現できる。   Second, by setting an appropriate refresh time depending on the temperature on the memory controller side, temperature compensation can be achieved without creating a special mechanism in the memory, and a widely available general-purpose DRAM should be used. It is possible to realize a highly usable memory system while minimizing price increase.

第3に、あらかじめリフレッシュ間隔を設定するのではなく、温度に応じて適切なリフレッシュ間隔を動的に設定しなおすように制御することで、必要以上にリフレッシュサイクルを発生させることなく、最適な間隔でリフレッシュさせることができるため、メモリバスの使用効率を落とさずに可用性が向上する。   Third, instead of setting the refresh interval in advance, the optimal interval is controlled without dynamically generating a refresh cycle more than necessary by controlling the refresh interval to be dynamically set according to the temperature. Therefore, the availability can be improved without reducing the efficiency of use of the memory bus.

次に、本発明の実施の形態について図面を参照して説明する。   Next, embodiments of the present invention will be described with reference to the drawings.

図1は本発明の一実施形態のメモリシステムの概略ブロック図である。このメモリシステムは、CPU1と、メモリコントローラ2、DRAMの、ECCで保護された2つのメモリバンク3、4と、メモリ周囲温度を監視するために、メモリ周辺に配置された温度センサー5とから構成される。   FIG. 1 is a schematic block diagram of a memory system according to an embodiment of the present invention. This memory system comprises a CPU 1, a memory controller 2, two memory banks 3, 4 of the DRAM protected by ECC, and a temperature sensor 5 arranged around the memory for monitoring the memory ambient temperature. Is done.

図2はメモリコントローラの詳細な構成を示すブロック図である。メモリコントローラ2は、温度センサー5からの情報を元にメモリ周囲温度を監視する温度監視部11と、メモリバンク3のメモリバスのECC1ビットエラー訂正の発生状況を監視し、ECC1ビットエラー訂正が発生したときに登録されるステータスレジスタ8bおよび発生回数を保持するECC1ビットエラー訂正カウンタ8aを有するECC監視部8と、メモリバンク4のメモリバスのECC1ビットエラー訂正の発生状況を監視し、1ビットエラー訂正が発生したときに登録されるECCステータスレジスタ9bおよび発生回数を保持するECC1ビットエラー訂正カウンタ9aを有するECC監視部9と、温度により適切なリフレッシュ間隔を設定するために、メモリに対してモードレジスタを設定するためのモードレジスタ制御部7と、メモリ制御部10を有する。また、CPU1上では、1ビットECCエラー訂正の発生状況とそのときの温度監視、およびリフレッシュ間隔などのモードレジスタの設定制御を行う制御ファームウェア6が動作する。制御ファームウェア6は、メモリでECC1ビットエラー訂正が発生したことをECC監視部8または9から通知されると、そのときのメモリの周囲温度を温度監視部11より得る。温度監視部11が示す、ECC1ビットエラー訂正が発生したときの温度が、あらかじめ設定した閾値を超える数値を示している場合、制御ファームウェア6はそのとき発生したECC1ビットエラー訂正が高温によるデータ損失によるものと判断し、モードレジスタ制御部7に対してリフレッシュ時間の変更指示を発行する。モードレジスタ制御部7はリフレッシュ時間変更の指示を制御ファームウェア6から得ると、現在行われているメモリサイクルが終了した後に一旦メモリバスをアイドルにし、当該メモリバンクのリフレッシュ間隔を短く設定するためのモードレジスタ設定サイクルを生成する。もし、バンク#0のDRAM3でECC1ビットエラー訂正が発生し、リフレッシュ時間を短く設定するためのモードレジスタ設定サイクルが生成されている場合、バンク#0に対するリクエストは受け付けられないが、バンク#1は処理を継続することができるため性能低下は一時的である。また、ECC1ビットエラー訂正が発生したとき、温度監視部11の出力の値があらかじめ設定した閾値を越えていない場合(メモリ周囲温度が高温でない場合)、制御ファームウェア6は、ECC監視部8に保存されているECC1ビットエラー訂正カウンタ8aの値を参照する。ECC1ビットエラー訂正カウンタ8aが一定以上の数値を示しているときは、当該バンクのメモリ故障と判断し、CPU1に対してエラーを通知し、エラー処理を開始させる。   FIG. 2 is a block diagram showing a detailed configuration of the memory controller. The memory controller 2 monitors the memory ambient temperature based on the information from the temperature sensor 5 and monitors the ECC1 bit error correction occurrence state of the memory bus of the memory bank 3 to generate ECC1 bit error correction. The ECC monitoring unit 8 having the status register 8b and the ECC1 bit error correction counter 8a that holds the number of occurrences, and the occurrence status of ECC1 bit error correction of the memory bus of the memory bank 4 are monitored to detect one bit error. An ECC monitoring unit 9 having an ECC status register 9b that is registered when a correction occurs and an ECC 1-bit error correction counter 9a that holds the number of occurrences, and a mode for a memory in order to set an appropriate refresh interval according to temperature Mode register system to set registers And parts 7, a memory control unit 10. On the CPU 1, the control firmware 6 that performs mode register setting control such as the occurrence status of 1-bit ECC error correction, the temperature monitoring at that time, and the refresh interval is operated. When the control firmware 6 is notified from the ECC monitoring unit 8 or 9 that ECC1 bit error correction has occurred in the memory, the control firmware 6 obtains the ambient temperature of the memory at that time from the temperature monitoring unit 11. If the temperature when the ECC 1 bit error correction occurs indicated by the temperature monitoring unit 11 indicates a numerical value exceeding a preset threshold value, the control firmware 6 causes the ECC 1 bit error correction generated at that time to be due to data loss due to high temperature. It is determined that the refresh time is instructed to the mode register control unit 7. When the mode register control unit 7 receives an instruction to change the refresh time from the control firmware 6, the mode for temporarily setting the memory bank to the idle interval and setting the refresh interval of the memory bank short after the current memory cycle is completed. Generate a register set cycle. If ECC1 bit error correction occurs in DRAM 3 in bank # 0 and a mode register setting cycle for setting a short refresh time is generated, a request for bank # 0 is not accepted, but bank # 1 Since the process can be continued, the performance degradation is temporary. When ECC1 bit error correction occurs, if the output value of the temperature monitoring unit 11 does not exceed a preset threshold value (when the memory ambient temperature is not high), the control firmware 6 is stored in the ECC monitoring unit 8. The value of the ECC 1-bit error correction counter 8a is referred to. When the ECC 1-bit error correction counter 8a indicates a numerical value greater than or equal to a certain value, it is determined that a memory failure has occurred in the bank, an error is notified to the CPU 1, and error processing is started.

次に、図2のメモリシステムにおいて、図3に示すようにバンク#0でECC1ビットエラー訂正が発生したときのときの動作について図4に示すフローチャートを用いて説明する。制御ファームウェア6は、ECC監視部8(バンク#0)、ECC監視部9(バンク#1)、温度監視部11を定期的にポーリングしている。図3に示すようにDRAM3(バンク#0)においてECC1ビットエラー訂正が発生したとき、ECC制御部8(バンク#0)のECCステータスレジスタ8bにフラグが立てられる。また、ECC制御部8(バンク#0)のECC1ビットエラー訂正カウンタ8aがカウントアップする。CPU1で動作している制御ファームウェア6は図4のフローチャートのように動作する。制御ファームウェア6は、ECC監視部のECCステータスレジスタ8bをリードする(ステップ101)。ECCステータスレジスタ8bにECC1ビットエラー訂正が発生したことを示すフラグが立っていた場合、ECC監視部8のECC1ビットエラー訂正カウンタ8aをリードする(ステップ102,103)。ECC1ビットエラー訂正カウンタ8aがあらかじめ設定した閾値を越えていた場合、制御ファームウェア6はメモリバンク#0(DRAM3)のメモリ固定故障によるECC1ビットエラー訂正であると判断し、エラー処理へ移行する(ステップ104)。ECC1ビットエラー訂正カウンタ8aが閾値以下であった場合は、温度監視部11をリードする(ステップ105)。温度監視部11の温度が、あらかじめ設定した温度を上回っていた場合、制御ファームウェア6は、発生したECC1ビットエラー訂正が高温によるエータ損失により発生したものと判断し、メモリモードレジスタ設定の処理へ移行する。メモリモードレジスタ設定の処理は、高温によるECC1ビットエラー訂正の発生と判断された場合に、メモリのリフレッシュ間隔を温度によりあらかじめ決められた値に設定をするための処理を行う(ステップ106,107)。このリフレッシュ間隔は、高温になるにつれて短い間隔でリフレッシュが行われるように値が決められている。制御ファームウェア6は、高温によりECC1ビットエラー訂正が発生しているものと判断すると、リフレッシュ間隔を短く設定するための指示をモードレジスタ制御部7に対して発行する。制御ファームウェア6より指示を受けたモードレジスタ制御部7は、現在メモリバンク#0(DRAM3)に対して行われているメモリサイクルが終了した後に一旦バスをアイドルにし、メモリバンク#0(DRAM3)のリフレッシュ間隔を短く設定するためのモードレジスタ設定サイクルを生成し、リフレッシュ間隔を短く設定する。このとき、メモリバンク#0(DRAM3)に対するリクエストは受け付けることはできないが、メモリバンク#1(DRAM4)は処理を継続することができる。メモリバンク#0(DRAM3)のリフレッシュ間隔を短く設定することでECC1ビットエラー訂正が発生しなければ、保守介入することなく業務を継続することができる。また、メモリ周囲温度が下がったことを制御ファームウェア6が検出し、リフレッシュ間隔を元の長い設定に戻すようにすることで、高温時の必要な時にのみリフレッシュを長く設定するため、不必要にアイドルステートを入れなくてもよくなるため、性能低下の影響も最小限に抑えることができる。   Next, in the memory system of FIG. 2, the operation when ECC 1 bit error correction occurs in bank # 0 as shown in FIG. 3 will be described using the flowchart shown in FIG. The control firmware 6 periodically polls the ECC monitoring unit 8 (bank # 0), the ECC monitoring unit 9 (bank # 1), and the temperature monitoring unit 11. As shown in FIG. 3, when ECC1 bit error correction occurs in the DRAM 3 (bank # 0), a flag is set in the ECC status register 8b of the ECC control unit 8 (bank # 0). Further, the ECC 1-bit error correction counter 8a of the ECC control unit 8 (bank # 0) counts up. The control firmware 6 operating on the CPU 1 operates as shown in the flowchart of FIG. The control firmware 6 reads the ECC status register 8b of the ECC monitoring unit (step 101). When the flag indicating that ECC1 bit error correction has occurred is set in the ECC status register 8b, the ECC1 bit error correction counter 8a of the ECC monitoring unit 8 is read (steps 102 and 103). If the ECC 1-bit error correction counter 8a exceeds a preset threshold value, the control firmware 6 determines that the ECC 1-bit error correction is due to a fixed memory failure in the memory bank # 0 (DRAM 3), and proceeds to error processing (step 104). If the ECC 1-bit error correction counter 8a is equal to or smaller than the threshold value, the temperature monitoring unit 11 is read (step 105). When the temperature of the temperature monitoring unit 11 exceeds the preset temperature, the control firmware 6 determines that the generated ECC1 bit error correction has occurred due to an eta loss due to high temperature, and proceeds to the memory mode register setting process. To do. The memory mode register setting process is a process for setting the memory refresh interval to a predetermined value depending on the temperature when it is determined that ECC 1 bit error correction has occurred due to high temperature (steps 106 and 107). . The refresh interval is determined such that refresh is performed at shorter intervals as the temperature increases. When the control firmware 6 determines that the ECC 1 bit error correction has occurred due to the high temperature, it issues an instruction for setting the refresh interval to the mode register controller 7. Upon receiving an instruction from the control firmware 6, the mode register control unit 7 once idles the bus after the memory cycle currently being performed for the memory bank # 0 (DRAM 3) is completed, and stores the memory bank # 0 (DRAM 3). A mode register setting cycle for setting the refresh interval short is generated, and the refresh interval is set short. At this time, a request for the memory bank # 0 (DRAM 3) cannot be accepted, but the memory bank # 1 (DRAM 4) can continue processing. If ECC1 bit error correction does not occur by setting the refresh interval of the memory bank # 0 (DRAM3) to be short, the business can be continued without maintenance intervention. In addition, the control firmware 6 detects that the memory ambient temperature has decreased, and the refresh interval is returned to the original long setting, so that the refresh is set longer only when necessary at high temperatures. Since it is not necessary to enter a state, the influence of the performance degradation can be minimized.

なお、メモリコントローラ2および制御ファームウェア6の機能は、その機能を実現するためのプログラムを、コンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませ、実行するものであってもよい。コンピュータ読み取り可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、CD−ROM等の記録媒体、コンピュータシステムに内蔵されるハードディスク装置等の記憶装置を指す。さらに、コンピュータ読み取り可能な記録媒体は、インターネットを介してプログラムを送信する場合のように、短時間、動的にプログラムを保持するもの(伝送媒体もしくは伝送波)、その場合のサーバとなるコンピュータ内の揮発性メモリのように、一定時間プログラムを保持しているものを含む。   The functions of the memory controller 2 and the control firmware 6 are executed by recording a program for realizing the functions on a computer-readable recording medium, causing the computer to read the program recorded on the recording medium. It may be a thing. The computer-readable recording medium refers to a recording medium such as a flexible disk, a magneto-optical disk, and a CD-ROM, and a storage device such as a hard disk device built in a computer system. Further, the computer-readable recording medium is a medium that dynamically holds the program for a short time (transmission medium or transmission wave) as in the case of transmitting the program via the Internet, and in the computer serving as a server in that case Such as a volatile memory that holds a program for a certain period of time.

本発明の一実施形態によるメモリシステムの概略ブロック図である。1 is a schematic block diagram of a memory system according to an embodiment of the present invention. 図1中のメモリコントローラの詳細を示すブロック図である。FIG. 2 is a block diagram illustrating details of a memory controller in FIG. 1. 図1のメモリシステムにおいてECC1ビットエラー訂正が発生したときの様子を示す図である。FIG. 2 is a diagram showing a state when ECC 1-bit error correction occurs in the memory system of FIG. 1. 図1中のメモリコントローラにおける監視動作を示すフローチャートである。2 is a flowchart showing a monitoring operation in the memory controller in FIG. 1.

符号の説明Explanation of symbols

1 CPU
2 メモリコントローラ
3 DRAM(バンク#0)
4 DRAM(バンク#1)
5 温度センサー
6 制御FW
7 モードレジスタ制御部
8 ECC監視部
8a ECC1ビットエラー訂正カウンタ
8b ECCステータスレジスタ
9 ECC監視部
9a ECC1ビットエラー訂正カウンタ
9b ECCステータスレジスタ
10 メモリ制御部
101〜107 ステップ
1 CPU
2 Memory controller 3 DRAM (bank # 0)
4 DRAM (Bank # 1)
5 Temperature sensor 6 Control FW
7 mode register control unit 8 ECC monitoring unit 8a ECC 1 bit error correction counter 8b ECC status register 9 ECC monitoring unit 9a ECC 1 bit error correction counter 9b ECC status register 10 memory control unit 101 to 107 steps

Claims (4)

ECCで保護された汎用DRAMを用いたメモリシステムにおいて、メモリ周囲温度を監視し、ECC1ビットエラー訂正が発生したときに、前記メモリ周囲温度から、該1ビットエラー訂正が温度によるものか、メモリ故障によるものかの切り分けを行い、温度による場合は、該メモリ周囲温度に応じてDRAMのリフレッシュ間隔を短く設定するメモリ制御方法。   In a memory system using a general-purpose DRAM protected by ECC, the memory ambient temperature is monitored, and when ECC 1-bit error correction occurs, whether the 1-bit error correction is due to temperature or memory failure A memory control method for determining whether the refresh interval of the DRAM is set short according to the ambient temperature of the memory. ECCで保護された汎用DRAMを使ったメモリシステムにおいて、
メモリ周辺に温度センサーが配置され、
メモリコントローラは、前記温度センサーからの情報を監視する温度監視部と、DRAMのモードレジスタを設定するモードレジスタ制御部と、各メモリバンクのECC1ビットエラー訂正の発生状況を監視するECC監視部を有しており、
CPU上で動作している制御ファームウェアは、ECC1ビットエラー訂正が発生したことを前記ECC監視部より検出すると、前記温度監視部をチェックし、前記温度監視部から閾値を越える温度を検出したときは、そのときに発生したECC1ビットエラー訂正が高温によるデータ補償不十分によるものと判断し、前記モードレジスタ制御部により、前記ECC1ビットエラー訂正を発生したメモリバンクのDRAMのリフレッシュ間隔を短く設定する
メモリシステム。
In a memory system using a general-purpose DRAM protected by ECC,
A temperature sensor is placed around the memory,
The memory controller has a temperature monitoring unit that monitors information from the temperature sensor, a mode register control unit that sets a DRAM mode register, and an ECC monitoring unit that monitors the occurrence of ECC1 bit error correction in each memory bank. And
When the control firmware operating on the CPU detects that the ECC 1-bit error correction has occurred from the ECC monitoring unit, the control firmware checks the temperature monitoring unit and detects a temperature exceeding the threshold value from the temperature monitoring unit. The ECC 1 bit error correction generated at that time is determined to be due to insufficient data compensation due to high temperature, and the refresh interval of the DRAM of the memory bank in which the ECC 1 bit error correction is generated is set short by the mode register control unit system.
前記各ECC監視部は、ECC1ビットエラー訂正が発生した場合にその旨が登録されるステータスレジスタと、ECC1ビットエラー訂正が発生した回数を保存するECCカウンタと、ECC1ビットエラー訂正の発生回数の閾値を有し、
前記制御ファームウェアは、前記ECCステータスレジスタを定期的にポーリングし、前記ECCステータスレジスタにECC1ビットエラー訂正の発生が登録されたことを検出すると、前記ECCカウンタをチェックし、前記ECCカウンタの値が前記閾値以上であれば、メモリ故障と判断して前記CPUに割り込みをかけてエラー処理を行い、前記ECCカウンタの値が前記閾値未満であれば、前記温度監視部をチェックし、前記温度監視部に登録されている温度がある一定値以上であった場合、前記モードレジスタ制御部に対し、該当するメモリバンクのリフレッッシュ間隔を短かく設定するための指示を発行し、前記モードレジスタ制御部は該指示を受けて、現在行われているメモリサイクルが終了した後に一旦メモリバスをアイドルにし、該当するメモリバンクのリフレッシュ間隔を短く設定するためのモードレジスタ設定サイクルを生成する、請求項2に記載のメモリシステム。
Each of the ECC monitoring units includes a status register that is registered when ECC 1-bit error correction occurs, an ECC counter that stores the number of times ECC 1-bit error correction has occurred, and a threshold value for the number of occurrences of ECC 1-bit error correction. Have
The control firmware periodically polls the ECC status register, and when the occurrence of ECC1 bit error correction is registered in the ECC status register, the control firmware checks the ECC counter, and the value of the ECC counter is If the threshold value is greater than or equal to the threshold value, it is determined that a memory failure has occurred and the CPU is interrupted to perform error processing. If the value of the ECC counter is less than the threshold value, the temperature monitoring unit is checked and the temperature monitoring unit If the registered temperature is equal to or higher than a certain value, the mode register control unit issues an instruction to set the refresh interval of the corresponding memory bank to be short, and the mode register control unit The memory bus is idle after the current memory cycle is completed. To generate a mode register setting cycle to shorten the refresh interval of the corresponding memory banks, the memory system according to claim 2.
メモリ周辺に温度センサーが配置され、前記温度センサーからの情報を監視する温度監視部と、DRAMのモードレジスタを設定するモードレジスタ制御部と、ECC1ビットエラー訂正が発生した場合にその旨が登録されるECCステータスレジスタと、ECC1ビットエラー訂正が発生した回数を保存するECCカウンタと、ECC1ビットエラー訂正の発生回数の閾値を有し、各メモリバンクのECC1ビットエラー訂正の発生状況を監視するECC監視部を有するメモリコントローラを含む、ECCで保護された汎用DRAMを使ったメモリシステムにおいて、
前記ECCステータスレジスタを定期的にポーリングする手順と、
前記ECCステータスレジスタにECC1ビットエラー訂正の発生が登録されたことを検出すると、前記ECCカウンタをチェックする手順と、
前記ECCカウンタの値が前記閾値以上であれば、メモリ故障と判断して前記CPUに割り込みをかけてエラー処理を行い、前記ECCカウンタの値が前記閾値未満であれば、前記温度監視部をチェックし、前記温度監視部に登録されている温度がある一定値以上であった場合、前記モードレジスタ制御部に対し、該当するメモリバンクのリフレッッシュ間隔を短かく設定するための指示を発行する手順と
をコンピュータに実行させるためのプログラム。
A temperature sensor is arranged around the memory, and a temperature monitoring unit that monitors information from the temperature sensor, a mode register control unit that sets a DRAM mode register, and when ECC 1 bit error correction occurs, that fact is registered ECC monitor that has an ECC status register, an ECC counter that stores the number of times ECC 1-bit error correction has occurred, and a threshold for the number of times ECC 1-bit error correction has occurred, and monitors the occurrence status of ECC 1-bit error correction in each memory bank In a memory system using a general-purpose DRAM protected by ECC, including a memory controller having a portion,
Periodically polling the ECC status register;
A procedure for checking the ECC counter when detecting that the occurrence of ECC1 bit error correction is registered in the ECC status register;
If the value of the ECC counter is equal to or greater than the threshold value, it is determined that a memory failure has occurred and the CPU is interrupted to perform error processing. If the value of the ECC counter is less than the threshold value, the temperature monitoring unit is checked. And a step of issuing an instruction to set a refresh interval of the corresponding memory bank to the mode register control unit when the temperature registered in the temperature monitoring unit is a certain value or more. A program that causes a computer to execute.
JP2007088448A 2007-03-29 2007-03-29 Memory control method, memory system, and program Expired - Fee Related JP4941051B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007088448A JP4941051B2 (en) 2007-03-29 2007-03-29 Memory control method, memory system, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007088448A JP4941051B2 (en) 2007-03-29 2007-03-29 Memory control method, memory system, and program

Publications (2)

Publication Number Publication Date
JP2008251066A JP2008251066A (en) 2008-10-16
JP4941051B2 true JP4941051B2 (en) 2012-05-30

Family

ID=39975843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007088448A Expired - Fee Related JP4941051B2 (en) 2007-03-29 2007-03-29 Memory control method, memory system, and program

Country Status (1)

Country Link
JP (1) JP4941051B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102244618B1 (en) 2014-02-21 2021-04-26 삼성전자 주식회사 Flash memory device and controlling method of flash memory device
JP6866785B2 (en) * 2017-06-29 2021-04-28 富士通株式会社 Processor and memory access method
CN108181003B (en) * 2017-11-23 2023-11-14 深圳怡化电脑股份有限公司 Zynq SOC-based infrared sensor control system and self-service terminal
CN113257301A (en) * 2021-05-25 2021-08-13 翱捷科技股份有限公司 Method and device for automatically updating DRAM refresh interval

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5148229A (en) * 1974-10-23 1976-04-24 Hitachi Ltd
JPS52137221A (en) * 1976-05-12 1977-11-16 Hitachi Ltd Memory device
JPS5862900A (en) * 1981-10-08 1983-04-14 Nec Corp Processing system for single bit error of memory
JPH0758478B2 (en) * 1987-11-18 1995-06-21 富士通株式会社 1-bit inversion error processing method
JPH0460988A (en) * 1990-06-27 1992-02-26 Canon Inc Refresh control device
JPH04153757A (en) * 1990-10-18 1992-05-27 Nec Commun Syst Ltd Storage
WO1996028825A1 (en) * 1995-03-15 1996-09-19 Hitachi, Ltd. Semiconductor memory
JPH08315569A (en) * 1995-05-16 1996-11-29 Hitachi Ltd Semiconductor memory and data processor
JP3177207B2 (en) * 1998-01-27 2001-06-18 インターナショナル・ビジネス・マシーンズ・コーポレ−ション Refresh interval control apparatus and method, and computer
JP4707803B2 (en) * 2000-07-10 2011-06-22 エルピーダメモリ株式会社 Error rate determination method and semiconductor integrated circuit device

Also Published As

Publication number Publication date
JP2008251066A (en) 2008-10-16

Similar Documents

Publication Publication Date Title
US10002043B2 (en) Memory devices and modules
US10824499B2 (en) Memory system architectures using a separate system control path or channel for processing error information
US9442816B2 (en) Implementing memory performance management and enhanced memory reliability accounting for thermal conditions
JP4821426B2 (en) Error recovery program, error recovery device, and computer system
US8667372B2 (en) Memory controller and method of controlling memory
KR102378466B1 (en) Memory devices and modules
JP4523639B2 (en) Memory error address management by firmware
US20160055058A1 (en) Memory system architecture
JPWO2009107213A1 (en) Storage device, storage control device, data transfer integrated circuit, and storage control method
US10558519B2 (en) Power-reduced redundant array of independent memory (RAIM) system
JP2006134196A (en) Disk array apparatus
JP4941051B2 (en) Memory control method, memory system, and program
US10521113B2 (en) Memory system architecture
JPH113290A (en) Memory control system
US8001425B2 (en) Preserving state information of a storage subsystem in response to communication loss to the storage subsystem
JP2005196680A (en) Computer system
JP2009223506A (en) Data processing system
JP2006318105A (en) Monitoring system
JP5003530B2 (en) Watchdog timer control device, watchdog timer control method and program, and CPU system
US7343522B2 (en) Apparatus having a transfer mode abnormality detecting function, storage controlling apparatus, and interface module for the storage controlling apparatus
JP2001167002A (en) Method and device for controlling write/read for electronic disk device
JP2009042855A (en) Method and system for transferring data between circuits
JP2000207289A (en) Data error detecting system and its method
JP2000207291A (en) Method for diagnosing memory device
JP2001053810A (en) Method and device for transferring data

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100302

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120127

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120213

R150 Certificate of patent or registration of utility model

Ref document number: 4941051

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150309

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees