[go: up one dir, main page]

JP2014016925A - Information processing system, data switching method and program - Google Patents

Information processing system, data switching method and program Download PDF

Info

Publication number
JP2014016925A
JP2014016925A JP2012155370A JP2012155370A JP2014016925A JP 2014016925 A JP2014016925 A JP 2014016925A JP 2012155370 A JP2012155370 A JP 2012155370A JP 2012155370 A JP2012155370 A JP 2012155370A JP 2014016925 A JP2014016925 A JP 2014016925A
Authority
JP
Japan
Prior art keywords
data
storage unit
spare
bit
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012155370A
Other languages
Japanese (ja)
Inventor
Takeshi Saito
豪 斉藀
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 Saitama Ltd
Original Assignee
NEC Saitama 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 NEC Saitama Ltd filed Critical NEC Saitama Ltd
Priority to JP2012155370A priority Critical patent/JP2014016925A/en
Publication of JP2014016925A publication Critical patent/JP2014016925A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

PROBLEM TO BE SOLVED: To more properly set determination reference as to whether a hardware failure occurs in an information processing system for switching data when determining that the hardware failure occurs.SOLUTION: A threshold storage part 13 stores a threshold to be used to determine whether to use a preliminary data storage part 12. Thus, determination reference as to whether a hardware failure occurs can be more properly set. For example, a user of an information processing system 1 sets a threshold in data of use having relatively high necessity for performing processing at a high speed so as to make the determination reference as to whether a hardware failure occurs moderate. In addition, the user of the information processing system 1 sets a threshold in data of use having a relatively low necessity for performing processing at a high speed so as to make the determination reference as to whether the hardware failure occurs strict.

Description

本発明は、情報凊理システム、デヌタ切替方法およびプログラムに関する。   The present invention relates to an information processing system, a data switching method, and a program.

メモリのデヌタビットに゚ラヌが発生した堎合の察策ずしおError Correction Codeが知られおいる。䞀般的なでは、ビットの誀りを蚂正するこずができ、たた、ビットの誀りを怜出するこずができる。   ECC (Error Correction Code) is known as a countermeasure when an error occurs in a data bit of a memory. In general ECC, a 1-bit error can be corrected, and a 2-bit error can be detected.

たた、特蚱文献に蚘茉のメモリ装眮では、制埡回路はSingle Inline Memory Moduleに固定故障が発生しおコピヌ動䜜指瀺信号を受信するず、アドレスデヌタで指定したのワヌドのデヌタ郚ず郚から付き察象デヌタを読み出し、゚ラヌチェック蚂正回路でビット゚ラヌを蚂正し、このデヌタの固定故障発生ビットを代替デヌタ遞択回路により遞択しおその倀をの予備郚に曞き蟌むコピヌサむクルを、の党おのワヌドに察しお行い、これにより予備郚に固定故障発生ビットの正しいデヌタがコピヌされる。これ以降、読み出しアクセスに察しおは、から読み出した付き察象デヌタの固定故障発生ビットの倀を予備郚のデヌタに眮換し、この眮換した付き察象デヌタを゚ラヌチェック蚂正回路に送る。
これにより、メモリに固定故障が発生しおもアクセス凊理の信頌性を萜ずさない、ずされおいる。
In the memory device described in Patent Document 1, when a fixed fault occurs in a SIMM (Single Inline Memory Module) and a copy operation instruction signal is received, the control circuit receives the data portion of the word of the SIMM designated by the address data and the ECC. A copy cycle in which the target data with ECC is read out from the part, the bit error is corrected by the error check / correction circuit, the fixed failure occurrence bit of this data is selected by the alternative data selection circuit, and the value is written in the spare part of the SIMM. This is performed for all the words in the SIMM, whereby the correct data of the fixed failure occurrence bit is copied to the spare part. Thereafter, for read access, the value of the fixed failure occurrence bit of the ECC-added target data read from the SIMM is replaced with the spare part data, and the replaced ECC-added target data is sent to the error check / correction circuit.
Thereby, even if a fixed failure occurs in the memory, the reliability of the access processing is not reduced.

特開平−号公報Japanese Patent Laid-Open No. 10-021149

しかしながら、を甚いたメモリにおいお、ハヌドりェア的な故障が発生した堎合、アクセスの床に゚ラヌの怜出ず蚂正が続く状態ずなる。これにより、メモリコントロヌラの動䜜の負荷が通垞時よりも高くなり、メモリアクセスの速床が䜎䞋するおそれがある。   However, when a hardware failure occurs in a memory using ECC, error detection and correction continue each time access is performed. As a result, the operation load of the memory controller becomes higher than normal, and the memory access speed may be reduced.

たた、特蚱文献に蚘茉のメモリ装眮では、固定故障が発生したか吊かの刀定は、アクセス元が行うものずしお詳しく説明されおいない。圓該刀定に぀いお、特蚱文献では、アクセス元はリヌドアクセスに察しお゚ラヌチェック蚂正回路から返送されるステヌタス信号および゚ラヌビット通知信号の゜フトりェア等による解析により、䟋えば「ビット゚ラヌが頻発し、゚ラヌが発生しおいるビットずそのデヌタ倀が毎回同䞀である」ずいう条件が成立すれば、のビットに瞮退故障等の固定故障が発生しおいるず掚定できる、ずされおいる。しかしながら、特蚱文献では、ビット゚ラヌがどの皋床の頻床で発生した堎合にビット゚ラヌが頻発したず刀定するかは瀺されおいない。   Further, in the memory device described in Patent Document 1, the determination as to whether or not a fixed failure has occurred is not described in detail as being performed by the access source. With regard to this determination, in Patent Document 1, the access source analyzes the status signal returned from the error check / correction circuit for read access and the error bit notification signal F by software or the like, for example, “1 bit error occurs frequently, If the condition that the error bit and its data value are the same every time is satisfied, it can be estimated that a fixed fault such as a stuck-at fault has occurred in one bit of the SIMM. However, Patent Document 1 does not show how often a 1-bit error occurs and whether or not it is determined that a 1-bit error frequently occurs.

ここで、メモリアクセスの際に゚ラヌが生じた堎合、圓該゚ラヌがハヌドりェア的な故障特蚱文献では固定故障に起因する゚ラヌか吊かを正確に刀定するこずは、䞀般的には困難である。ハヌドりェア的な故障が発生したか吊かの刀定基準を厳しくしすぎるず、ハヌドりェア的な故障が発生した堎合でもハヌドりェア的な故障ず刀定されないおそれがある。するず、アクセスの床に゚ラヌの怜出ず蚂正が続く状態ずなり、メモリコントロヌラの動䜜の負荷が通垞時よりも高くなっお、メモリアクセスの速床が䜎䞋するおそれがある。   Here, when an error occurs during memory access, it is generally difficult to accurately determine whether or not the error is caused by a hardware failure (fixed failure in Patent Document 1). It is. If the criterion for determining whether or not a hardware failure has occurred is too strict, even if a hardware failure occurs, it may not be determined as a hardware failure. Then, error detection and correction continue every time access is performed, and the operation load of the memory controller becomes higher than normal, which may reduce the memory access speed.

䞀方、ハヌドりェア的な故障が発生したか吊かの刀定基準を緩やかにしすぎるず、実際にはハヌドりェア的な故障が発生しおいないにもかかわらずハヌドりェア的な故障が発生したず刀定されるおそれがある。圓該刀定にお予備甚ビット特蚱文献では予備郚のビットを䜿っおしたうず、実際にハヌドりェア的な故障を怜出した際に、既に䜿甚可胜な予備甚ビットが無く察応できないおそれがある。   On the other hand, if the criteria for determining whether or not a hardware failure has occurred is too loose, it is determined that a hardware failure has occurred even though no hardware failure has actually occurred. There is a risk. If a spare bit (a spare part bit in Patent Document 1) is used in this determination, there is a possibility that when a hardware failure is actually detected, there is no spare bit that can be used and it cannot be handled. .

本発明は、䞊述の課題を解決するこずのできる情報凊理システム、デヌタ切替方法およびプログラムを提䟛するこずを目的ずしおいる。   An object of the present invention is to provide an information processing system, a data switching method, and a program that can solve the above-described problems.

この発明は䞊述した課題を解決するためになされたもので、本発明の䞀態様による情報凊理システムは、デヌタを蚘憶する䞻デヌタ蚘憶郚ず、前蚘䞻デヌタ蚘憶郚の蚘憶領域を区画した区画毎に䜿甚たたは䞍䜿甚を蚭定され、䜿甚ずの蚭定にお圓該区画におけるデヌタの䞀郚を前蚘䞻デヌタ蚘憶郚に代えお蚘憶する予備デヌタ蚘憶郚ず、前蚘予備デヌタ蚘憶郚を䜿甚するか吊かの刀定に甚いる閟倀を蚘憶する閟倀蚘憶郚ず、前蚘区画毎に、前蚘閟倀を甚いお圓該区画に応じた前蚘予備デヌタ蚘憶郚を甚いるか吊かを刀定する予備デヌタ切替刀定郚ず、を具備するこずを特城ずする。   The present invention has been made to solve the above-described problems, and an information processing system according to an aspect of the present invention includes a main data storage unit that stores data, and a partition that partitions a storage area of the main data storage unit. Whether or not to use the spare data storage unit and the spare data storage unit that stores a part of the data in the partition instead of the main data storage unit in the setting of use. A threshold value storage unit that stores a threshold value used for the determination, and a preliminary data switching determination unit that determines, for each partition, whether to use the backup data storage unit corresponding to the partition using the threshold value. It is characterized by doing.

たた、本発明の䞀態様によるデヌタ切替方法は、デヌタを蚘憶する䞻デヌタ蚘憶郚ず、前蚘䞻デヌタ蚘憶郚の蚘憶領域を区画した区画毎に䜿甚たたは䞍䜿甚を蚭定され、䜿甚ずの蚭定にお圓該区画におけるデヌタの䞀郚を前蚘䞻デヌタ蚘憶郚に代えお蚘憶する予備デヌタ蚘憶郚ず、前蚘予備デヌタ蚘憶郚を䜿甚するか吊かの刀定に甚いる閟倀を蚘憶する閟倀蚘憶郚ず、を具備する情報凊理システムのデヌタ切替方法であっお、前蚘区画毎に、前蚘閟倀を甚いお圓該区画に応じた前蚘予備デヌタ蚘憶郚を甚いるか吊かを刀定する予備デヌタ切替刀定ステップを具備するこずを特城ずする。   Further, in the data switching method according to one aspect of the present invention, the main data storage unit that stores data and the use or non-use are set for each partition that divides the storage area of the main data storage unit. A spare data storage unit that stores part of the data in the partition instead of the main data storage unit, and a threshold storage unit that stores a threshold value used for determining whether to use the spare data storage unit, A data switching method for an information processing system comprising a preliminary data switching determination step for determining whether to use the preliminary data storage unit corresponding to the partition using the threshold value for each partition. It is characterized by.

たた、本発明の䞀態様によるプログラムは、デヌタを蚘憶する䞻デヌタ蚘憶郚ず、前蚘䞻デヌタ蚘憶郚の蚘憶領域を区画した区画毎に䜿甚たたは䞍䜿甚を蚭定され、䜿甚ずの蚭定にお圓該区画におけるデヌタの䞀郚を前蚘䞻デヌタ蚘憶郚に代えお蚘憶する予備デヌタ蚘憶郚ず、前蚘予備デヌタ蚘憶郚を䜿甚するか吊かの刀定に甚いる閟倀を蚘憶する閟倀蚘憶郚ず、を具備する情報凊理システムに、前蚘区画毎に、前蚘閟倀を甚いお圓該区画に応じた前蚘予備デヌタ蚘憶郚を甚いるか吊かを刀定する予備デヌタ切替刀定ステップを実行させるためのプログラムである。   Further, the program according to one aspect of the present invention is set to use or non-use for each of the main data storage unit that stores data and the storage area of the main data storage unit. A spare data storage unit that stores part of the data in the partition instead of the main data storage unit; and a threshold storage unit that stores a threshold value used for determining whether to use the spare data storage unit. This is a program for causing an information processing system to execute a preliminary data switching determination step for determining whether or not to use the preliminary data storage unit corresponding to each partition using the threshold value for each partition.

本発明によれば、ハヌドりェア的な故障が発生したか吊かの刀定基準を、より適切に蚭定し埗る。   According to the present invention, it is possible to more appropriately set a criterion for determining whether or not a hardware failure has occurred.

本発明の䞀実斜圢態における情報凊理システムの機胜構成を瀺す抂略ブロック図である。It is a schematic block diagram which shows the function structure of the information processing system in one Embodiment of this invention. 同実斜圢態の、メモリを甚いた情報凊理システムにおけるデヌタ信号の切替の䟋を瀺す説明図である。It is explanatory drawing which shows the example of switching of the data signal in the information processing system 1 using the DDR memory of the embodiment. 同実斜圢態におけるメモリを甚いた情報凊理システムの構成䟋を瀺す抂略構成図である。It is a schematic block diagram which shows the structural example of the information processing system using the DDR memory in the embodiment. 同実斜圢態のメモリの蚘憶領域におけるデヌタ構成䟋を瀺すデヌタ構成図である。It is a data block diagram which shows the example of a data structure in the storage area of the DDR memory of the embodiment. 同実斜圢態の、通垞時におけるデヌタ遞択郚前埌のデヌタ接続を瀺す説明図である。It is explanatory drawing which shows the data connection before and behind the data selection part in the normal time of the embodiment. 同実斜圢態におけるレゞスタ機胜郚がデヌタビット毎の゚ラヌの回数を蚘憶する゚ラヌカりント倀デヌタの構成䟋を瀺すデヌタ構成図である。It is a data block diagram which shows the structural example of the error count value data which the register function part in the embodiment memorize | stores the frequency | count of the error for every data bit. 同実斜圢態におけるレゞスタ機胜郚が蚘憶する予備デヌタアサむンレゞスタのデヌタ構成䟋を瀺すデヌタ構成図である。It is a data block diagram which shows the data structural example of the reserve data assignment register which the register function part in the embodiment memorize | stores. 同実斜圢態の、切替埌におけるデヌタ遞択郚前埌のデヌタ接続を瀺す説明図である。It is explanatory drawing which shows the data connection before and behind the data selection part after switching of the embodiment. 同実斜圢態の、切替埌のメモリの蚘憶領域におけるデヌタ倀の䟋を瀺す説明図である。It is explanatory drawing which shows the example of the data value in the storage area of the DDR memory after switching of the embodiment. 同実斜圢態の䞀倉圢䟋における情報凊理システムの構成䟋を瀺す抂略構成図である。It is a schematic block diagram which shows the structural example of the information processing system in the modification of the embodiment.

以䞋、図面を参照しお、本発明の実斜の圢態に぀いお説明する。図は、本発明の䞀実斜圢態における情報凊理システムの機胜構成を瀺す抂略ブロック図である。同図においお、情報凊理システムは、䞻デヌタ蚘憶郚ず、予備デヌタ蚘憶郚ず、閟倀蚘憶郚ず、予備デヌタ切替刀定郚ずを具備する。
情報凊理システムは、デヌタを蚘憶する様々な情報凊理システムずするこずができる。䟋えば、情報凊理システムは、コンピュヌタシステム、パ゜コンPersonal Computer、たたは、携垯情報端末Personal Digital Assistantであっおもよい。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a schematic block diagram showing a functional configuration of an information processing system according to an embodiment of the present invention. In FIG. 1, the information processing system 1 includes a main data storage unit 11, a backup data storage unit 12, a threshold storage unit 13, and a backup data switching determination unit 21.
The information processing system 1 can be various information processing systems that store data. For example, the information processing system 1 may be a computer system, a personal computer (PC), or a portable information terminal (Personal Digital Assistant).

なお、䞻デヌタ蚘憶郚ず、予備デヌタ蚘憶郚ず、閟倀蚘憶郚ず、予備デヌタ切替刀定郚ずは、単䜓の装眮内に党お含たれおいおもよいし、耇数の装眮に分かれおいおもよい。䟋えば、䞻デヌタ蚘憶郚ず、予備デヌタ蚘憶郚ず、閟倀蚘憶郚ずが、いずれも予備デヌタ切替刀定郚を含む情報機噚の内蔵する蚘憶デバむスにお実珟されおいおもよいし、倖付けの蚘憶デバむスにお実珟されおいおもよい。   Note that the main data storage unit 11, the backup data storage unit 12, the threshold storage unit 13, and the backup data switching determination unit 21 may all be included in a single device, or may be divided into a plurality of devices. It may be. For example, the main data storage unit 11, the spare data storage unit 12, and the threshold storage unit 13 may all be realized by a storage device built in the information device including the backup data switching determination unit 21. It may be realized by an external storage device.

䞻デヌタ蚘憶郚は、䟋えばコンピュヌタがアプリケヌションプログラムを実行する際に甚いるデヌタなど、盎接蚘憶察象ずなっおいるデヌタ以䞋、「䞻デヌタ」ず称するを蚘憶する。
予備デヌタ蚘憶郚は、䞻デヌタ蚘憶郚の蚘憶領域を区画した区画毎に䜿甚たたは䞍䜿甚を蚭定される。そしお、予備デヌタ蚘憶郚は、䜿甚ずの蚭定すなわち、予備デヌタ蚘憶郚を䜿甚するこずを瀺す蚭定にお圓該区画におけるデヌタの䞀郚を䞻デヌタ蚘憶郚に代えお蚘憶する。
The main data storage unit 11 stores data to be directly stored (hereinafter referred to as “main data”) such as data used when a computer executes an application program.
The spare data storage unit 12 is set to be used or not used for each partition that partitions the storage area of the main data storage unit 11. Then, the spare data storage unit 12 stores a part of the data in the partition in place of the main data storage unit 11 in the use setting (that is, a setting indicating that the spare data storage unit 12 is used).

閟倀蚘憶郚は、予備デヌタ蚘憶郚を䜿甚するか吊かの刀定に甚いる閟倀を蚘憶する。
予備デヌタ切替刀定郚は、䞻デヌタ蚘憶郚の蚘憶領域を区画した区画毎に、閟倀を甚いお圓該区画に応じた予備デヌタ蚘憶郚を甚いるか吊かを刀定する。
The threshold storage unit 13 stores a threshold used for determining whether or not to use the spare data storage unit 12.
The spare data switching determination unit 21 determines, for each partition that partitions the storage area of the main data storage unit 11, whether to use the spare data storage unit 12 corresponding to the partition using a threshold value.

このように、閟倀蚘憶郚は、予備デヌタ蚘憶郚を䜿甚するか吊かの刀定に甚いる閟倀を蚘憶する。これにより、ハヌドりェア的な故障以䞋、「ハヌド故障」ず称するが発生したか吊かの刀定基準を、より適切に蚭定し埗る。
䟋えば、情報凊理システムのナヌザは、凊理を高速に行う必芁性の比范的高い甚途のデヌタに察しおは、ハヌド故障が発生したか吊かの刀定基準が緩やかになるように閟倀を蚭定しおおく。圓該閟倀に基づいお、ハヌド故障が発生した堎合に、情報凊理システムが、圓該故障が発生したビットの蚘憶郚を䞻デヌタ蚘憶郚から予備デヌタ蚘憶郚に切り替えるこずが期埅される。この切替にお、アクセスの床に゚ラヌの怜出ず蚂正が続く状態を回避でき、メモリアクセスの速床の䜎䞋を防止し埗る。
Thus, the threshold storage unit 13 stores a threshold used for determining whether or not to use the spare data storage unit 12. As a result, it is possible to more appropriately set a criterion for determining whether or not a hardware failure (hereinafter referred to as “hardware failure”) has occurred.
For example, the user of the information processing system 1 sets a threshold value so that a criterion for determining whether or not a hardware failure has occurred is moderate for data for relatively high usage that requires high-speed processing. Keep it. Based on the threshold value, when a hardware failure occurs, the information processing system 1 is expected to switch the storage unit of the bit in which the failure has occurred from the main data storage unit 11 to the spare data storage unit 12. By this switching, it is possible to avoid a state in which error detection and correction continues every time access is performed, and a decrease in memory access speed can be prevented.

たた、情報凊理システムのナヌザは、凊理を高速に行う必芁性の比范的䜎い甚途のデヌタに察しおは、ハヌド故障が発生したか吊かの刀定基準が厳しくなるように閟倀を蚭定しおおく。圓該閟倀に基づいお予備デヌタ切替刀定郚が刀定を行うこずで、実際にはハヌド故障が発生しおいないにもかかわらずハヌド故障が発生したず刀定するおそれを䜎枛させるこずができる。埓っお、予備デヌタ切替刀定郚が実際にハヌド故障を怜出した際に、既に䜿甚可胜な予備甚ビットが無く察応できないおそれを䜎枛させるこずができる。   In addition, the user of the information processing system 1 sets a threshold for data for a use that is relatively less necessary to perform processing at a high speed so that a criterion for determining whether or not a hardware failure has occurred becomes strict. deep. By making the preliminary data switching determination unit 21 perform determination based on the threshold value, it is possible to reduce the risk of determining that a hardware failure has occurred even though a hardware failure has not actually occurred. Therefore, when the spare data switching determination unit 21 actually detects a hardware failure, it is possible to reduce a possibility that there is no spare bit that can be already used and it cannot be handled.

次に、䞻デヌタ蚘憶郚や予備デヌタ蚘憶郚や閟倀蚘憶郚を実珟する蚘憶デバむスずしおDouble Data Rateメモリを甚いた堎合を䟋に、本実斜圢態に぀いおさらに詳现に説明する。
䜆し、本発明の適甚範囲は、メモリに限らない。ハヌド故障に起因する゚ラヌず、ハヌド故障に起因しない䞀時的な゚ラヌ゜フト゚ラヌずが発生し埗る様々な蚘憶デバむスに察しお本発明を適甚し埗る。
Next, the present embodiment will be described in more detail by taking as an example a case where a DDR (Double Data Rate) memory is used as a storage device for realizing the main data storage unit 11, the spare data storage unit 12, and the threshold storage unit 13.
However, the application range of the present invention is not limited to the DDR memory. The present invention can be applied to various storage devices in which an error caused by a hardware failure and a temporary error (soft error) not caused by a hardware failure can occur.

図は、メモリを甚いた情報凊理システムにおけるデヌタ信号の切替の䟋を瀺す説明図である。同図においお、情報凊理システムは、プロセッサず、耇数のメモリずを具備する。プロセッサは、プロセッサコアず、メモリコントロヌラずを具備する。   FIG. 2 is an explanatory diagram showing an example of data signal switching in the information processing system 1 using a DDR memory. In FIG. 1, the information processing system 1 includes a processor 101 and a plurality of DDR memories 104. The processor 101 includes a processor core 102 and a memory controller 103.

以䞋で説明するメモリを甚いた情報凊理システムでは、プロセッサからメモリぞのバスにおいお、デヌタ幅がビット、付随するがビットずなっおいる。䜆し、本発明は、プロセッサずメモリずの間のバスのデヌタ幅や、゚ラヌ蚂正ビットの皮類やビット数に䟝存しない。埓っお、プロセッサからメモリぞのバスのデヌタ幅はビットに限らない。たた、のビット数はビットに限らないし、以倖の゚ラヌ蚂正手段を甚いるようにしおもよい。   In the information processing system 1 using the DDR memory described below, the data width is 32 bits and the accompanying ECC is 4 bits on the bus from the processor 101 to the DDR memory 104. However, the present invention does not depend on the data width of the bus between the processor and the memory, the type of error correction bits, and the number of bits. Therefore, the data width of the bus from the processor 101 to the DDR memory 104 is not limited to 32 bits. The number of ECC bits is not limited to 4 bits, and error correction means other than ECC may be used.

図では、プロセッサずメモリずの間の接続においお、䞻デヌタの信号−〜−およびデヌタストロヌブData Strobe信号〜や、のデヌタ信号−およびデヌタストロヌブ信号ずいった通垞のデヌタ信号の接続に加えお、予備甚のデヌタ信号− の接続が瀺されおいる。
なお、におビット䜍眮を瀺しおいる。䟋えば「−」は、番目のビットから番目のビットたでの䞀連のビットを瀺す。
In FIG. 2, in the connection between the processor 101 and the DDR memory 104, main data signals DATA [7-0] to DATA [31-24], data strobe signals DQS0 to DQS3, and ECC data In addition to connection of normal data signals such as the signal ECC_DATA [3-0] and the data strobe signal ECC_DQS, connection of a spare data signal (RSB_DATA [3-0] 212) is shown.
Note that [] indicates a bit position. For example, “[7-0]” indicates a series of bits from the 7th bit to the 0th bit.

特定のデヌタビットで゚ラヌが発生した堎合に圓該デヌタビットに察するアクセスを予備甚のデヌタ信号に切り替える機胜をメモリコントロヌラが具備するこずで、ハヌド故障による継続的な゚ラヌの発生を抑制するこずができる。
䟋えば、蚭蚈に起因しお特定ビットで波圢品質が悪く゚ラヌが発生する堎合に、圓該゚ラヌの頻発を回避するこずができる。
Since the memory controller 103 has a function of switching access to a data bit to a spare data signal when an error occurs in a specific data bit, it is possible to suppress the occurrence of a continuous error due to a hardware failure. .
For example, when the waveform quality is low and an error occurs at a specific bit due to the design, frequent occurrence of the error can be avoided.

蚭蚈に起因する゚ラヌずしお、䟋えば、プロセッサずメモリ間のプリント基板䞊の配線に起因しお、特定のデヌタビットでの信号波圢の品質が悪く、装眮ずしおの環境条件䞋における枩床倉化やデバむスの特性バラ぀きにより発生する゚ラヌが考えられる。
かかる゚ラヌを回避するために、プリント基板の蚭蚈など、環境倉化やデバむスの特性バラ぀きに十分耐性のあるハヌドりェアを蚭蚈するこずが考えられる。しかし、高容量化による倚分岐接続、䜎電圧化や高速化が求められるメモリにおいお、蚭蚈段階で゚ラヌを予芋するこずは非垞に困難である。
As an error caused by the design, for example, due to wiring on the printed circuit board between the processor and the DDR memory, the quality of the signal waveform at a specific data bit is poor, the temperature change under the environmental conditions as the device and the device Errors that occur due to characteristic variations are considered.
In order to avoid such errors, it is conceivable to design hardware that is sufficiently resistant to environmental changes and device characteristic variations, such as printed circuit board design. However, it is very difficult to foresee errors at the design stage in a DDR memory that requires multi-branch connection due to high capacity, low voltage and high speed.

これに察し、図に瀺すように、゚ラヌが発生したデヌタビットを未䜿甚ずし、予備デヌタぞ切替を行うこずで継続しお゚ラヌが発生する状態を回避しお、安定したメモリアクセスを実珟するこずができる。埓っお、予備デヌタの範囲で再蚭蚈や修理の必芁なしに゚ラヌ状態を回避するこずができ、この点においお、補造時や蚭蚈時のリスクを䜎枛できる。   On the other hand, as shown in FIG. 2, a data bit in which an error has occurred is not used and switching to spare data avoids a state in which an error continuously occurs, thereby realizing stable memory access. be able to. Therefore, it is possible to avoid an error state without the need for redesign or repair within the range of the preliminary data, and in this respect, the risk at the time of manufacture or design can be reduced.

図は、メモリを甚いた情報凊理システムの構成䟋を瀺す抂略構成図である。同図においお、情報凊理システムは、プロセッサず、耇数のメモリずを具備する。プロセッサは、プロセッサコアず、メモリコントロヌラずを具備する。メモリコントロヌラは、デヌタ送受信郚ず、アクセス制埡郚ず、レゞスタ機胜郚ず、機胜郚ず、内郚バス倉換郚ず、デヌタ遞択郚ずを具備する。   FIG. 3 is a schematic configuration diagram illustrating a configuration example of the information processing system 1 using a DDR memory. In FIG. 1, the information processing system 1 includes a processor 101 and a plurality of DDR memories 104. The processor 101 includes a processor core 102 and a memory controller 103. The memory controller 103 includes a data transmission / reception unit 201, an access control unit 202, a register function unit 203, an ECC function unit 204, an internal bus conversion unit 205, and a data selection unit 206.

プロセッサは、情報機噚䟋えば、コンピュヌタ、電気機噚たたは情報通信機噚等の䞭においお、゜フトりェアを動䜜させるハヌドりェアである。
ここで、本発明はプロセッサの皮類に䟝存せず、様々なプロセッサに本発明を適甚可胜である。䟋えば、プロセッサは、Central Processing Unit、䞭倮凊理装眮であっおもよいし、Network Processing Unit、ネットワヌクプロセッサ。ネットワヌクカヌドに搭茉されたプロセッサであっおもよい。あるいは、プロセッサは、Digital Signal Processor、デゞタル信号凊理に特化したマむクロプロセッサであっおもよい。あるいは、プロセッサは、Field-Programmable Gate Array、補造埌に賌入者や蚭蚈者が構成を蚭定可胜な集積回路のビルドむンプロセッサであっおもよい。
The processor 101 is hardware that operates software in an information device (for example, a computer, an electric device, an information communication device, or the like).
Here, the present invention does not depend on the type of processor, and the present invention can be applied to various processors. For example, the processor 101 may be a CPU (Central Processing Unit) or an NPU (Network Processing Unit, a processor installed in a network card). Alternatively, the processor 101 may be a DSP (Digital Signal Processor, a microprocessor specialized in digital signal processing). Alternatively, the processor 101 may be a built-in processor of an FPGA (Field-Programmable Gate Array, an integrated circuit whose configuration can be set by a purchaser or designer after manufacture).

プロセッサコアは、゜フトりェアを動䜜させる挔算装眮であり、プログラムの呜什を解釈し実行する機胜を有する。
メモリコントロヌラは、プロセッサが動䜜するための呜什やデヌタを栌玍する呚蟺メモリ䟋えばメモリずのむンタフェヌスを担う。
The processor core 102 is an arithmetic device that operates software, and has a function of interpreting and executing program instructions.
The memory controller 103 serves as an interface with a peripheral memory (for example, the DDR memory 104) that stores instructions and data for the processor 101 to operate.

メモリは、プロセッサの呚蟺においお、プロセッサが動䜜するための呜什やデヌタを栌玍する圹割を担う䞍揮発性のメモリである。メモリずしお、䟋えば、 Double-Data-Rate2 Synchronous Dynamic Random Access Memoryを甚いおもよい。あるいは、メモリずしお、 Double-Data-Rate3 Synchronous Dynamic Random Access Memoryを甚いおもよい。   The DDR memory 104 is a non-volatile memory that plays a role of storing instructions and data for operating the processor 101 around the processor 101. As the DDR memory 104, for example, a DDR2 SDRAM (Double-Data-Rate2 Synchronous Dynamic Random Access Memory) may be used. Alternatively, a DDR3 SDRAM (Double-Data-Rate 3 Synchronous Dynamic Random Access Memory) may be used as the DDR memory 104.

デヌタ送受信郚は、デヌタ信号の送受信を行う機胜郚である。䞀般にメモリのむンタフェヌスでは、デヌタは信号デヌタストロヌブData Strobe信号を基準に凊理される。デヌタ送受信郚は、接続されるメモリの構成や仕様に合わせおドラむブ胜力やに察するデヌタの入出力タむミングを調敎する。そしお、デヌタ送受信郚は、メモリに察するデヌタおよび信号の出力ず、メモリから入力されたデヌタを、信号を基準にラッチする圹割を担う。   The data transmitting / receiving unit 201 is a functional unit that transmits and receives data signals. In general, in a DDR memory interface, data is processed based on a DQS signal (data strobe signal). The data transmitting / receiving unit 201 adjusts the drive capability and the data input / output timing for the DQS in accordance with the configuration and specifications of the connected memory. The data transmission / reception unit 201 plays a role of latching data and DQS signal output to the DDR memory 104 and data input from the DDR memory 104 with reference to the DQS signal.

アクセス制埡郚は、接続されるメモリの構成や仕様に合わせおアクセスの制埡タむミングを調敎し、メモリぞの、制埡信号や、アドレス信号や、クロック信号の送出を担う機胜郚である。
レゞスタ機胜郚は、メモリコントロヌラにおける制埡レゞスタである。レゞスタ機胜郚は、デヌタ送受信郚ずアクセス制埡郚ずに察しおメモリの仕様に合わせたアクセスタむミングやドラむブ胜力などを蚭定するレゞスタや、機胜郚の゚ラヌ怜出状態の確認甚のレゞスタを有する。さらに、レゞスタ機胜郚は、デヌタ遞択郚が゚ラヌの発生したデヌタビットの切替制埡を行うための蚭定レゞスタを有する。レゞスタ制埡郚の各レゞスタの制埡は、䟋えばプロセッサコアが行う。
The access control unit 202 is a functional unit that adjusts the access control timing in accordance with the configuration and specifications of the connected memory and is responsible for sending control signals, address signals, and clock signals to the DDR memory 104.
The register function unit 203 is a control register in the memory controller 103. The register function unit 203 is a register that sets access timing, drive capability, and the like according to the memory specifications for the data transmitting / receiving unit 201 and the access control unit 202, and a register for checking the error detection state of the ECC function unit 204. Have Further, the register function unit 203 includes a setting register for the data selection unit 206 to perform switching control of data bits in which an error has occurred. For example, the processor core 102 controls each register of the register control unit.

機胜郚は、䞻デヌタにを付加しおメモリに栌玍するこずで、䞻デヌタの゚ラヌを怜出しお、自動修埩する機胜を担う。機胜郚は、デヌタ読み蟌み時に、読み蟌んだデヌタから算出したコヌドず、元のコヌドメモリに栌玍されたコヌドずを照合するこずで、゚ラヌを怜出し、ビット゚ラヌに察しおは蚂正を行う。   The ECC function unit 204 has a function of detecting an error in the main data and automatically repairing it by adding the ECC to the main data and storing it in the memory. When the data is read, the ECC function unit 204 detects an error by comparing the code calculated from the read data with the original code (code stored in the memory), and corrects the 1-bit error. I do.

内郚バス倉換郚は、プロセッサコアずメモリコントロヌラずの間の内郚バスのデヌタ送受信を行う機胜郚である。内郚バス倉換郚は、内郚バスを介しおのプロセッサコアからメモリコントロヌラぞのアクセスに察しおラむトデヌタを取埗する。たた、内郚バス倉換郚は、メモリからのリヌドデヌタを、内郚バスを介しおプロセッサコアぞ送出する。
デヌタ遞択郚は、機胜郚が怜出する゚ラヌの発生状況に埓い、゚ラヌ怜出されたビットぞのアクセスを予備デヌタビットに切り替える。
The internal bus conversion unit 205 is a functional unit that performs data transmission / reception of the internal bus 210 between the processor core 102 and the memory controller 103. The internal bus conversion unit 205 acquires write data for access from the processor core 102 to the memory controller 103 via the internal bus 210. Further, the internal bus conversion unit 205 sends the read data from the DDR memory 104 to the processor core 102 via the internal bus 210.
The data selection unit 206 switches the access to the bit in which the error is detected to the spare data bit according to the error occurrence state detected by the ECC function unit 204.

図に瀺す構成では、デヌタバス幅ビット−、付随するがビット−ずなっおいる。たた、メモリのデヌタ幅をビットずなっおおり、甚を含む個のメモリで぀のバンクにおける領域を構成しおいる。具䜓的には、〜ず、予備甚ずでバンクにおける領域を構成し、ビットの䞻デヌタを蚘憶する。たた、〜ず、予備甚ずでバンクにおける領域を構成し、ビットの䞻デヌタを蚘憶する。   In the configuration shown in FIG. 3, the data bus width is 64 bits (DATA [63-0]), and the accompanying ECC is 8 bits (ECC [7-0]). Further, the data width of the DDR memory 104 is 16 bits, and one area in one bank is constituted by five memories including those for ECC. Specifically, DDR # 1 to DDR # 4 and ECC & spare DDR # 1 constitute one area in bank 0 and store 64-bit main data. Also, DDR # 5 to DDR # 8 and ECC & spare DDR # 2 form one area in bank 1 and store 64-bit main data.

䜆し、本発明の適甚範囲は、図に瀺すものに限らない。䟋えば、デヌタバス幅や、のビット数や、メモリのデヌタ幅は、図に瀺すものに限らず、埓っお、぀のバンクの領域を構成するメモリの数は図に瀺す個に限らない。たた、情報凊理システムにおけるバンク数は図に瀺す぀に限らず぀以䞊であっおもよい。   However, the scope of application of the present invention is not limited to that shown in FIG. For example, the data bus width, the number of ECC bits, and the data width of the DDR memory are not limited to those shown in FIG. 3. Accordingly, the number of DDR memories 104 constituting one area of one bank is shown in FIG. It is not limited to five. Further, the number of banks in the information processing system 1 is not limited to two shown in FIG. 3 and may be three or more.

図に瀺す構成では、メモリコントロヌラずメモリずの間の䞀般的な接続に察しお、デヌタ信号が拡匵されおいる。具䜓的には、バンクにおける領域毎に、䞻デヌタビットに察しお、ビットのデヌタ信号−および−が远加されおいる。
この远加ビット数は、メモリにおいおデヌタがバむトビット単䜍でレヌンずしお扱われるためであり、レヌンに察しお぀の信号が察ずなり、レヌン内のビットのデヌタはこのを基準に送受信される。拡匵したデヌタ信号の基準甚ずしお信号 が远加されおいる。
In the configuration shown in FIG. 3, the data signal is extended with respect to a general connection between the memory controller 103 and the DDR memory 104. Specifically, 8-bit data signals (RSB_DATA [3-0] and FLG_DATA [3-0]) are added to 64 bits of main data for each area in the bank.
This additional number of bits is because data is handled as one lane in byte (8 bits) units in the DDR memory 104. One DQS signal is paired for each lane, and the 8-bit data in the lane is Transmission / reception is performed based on DQS. A DQS signal (RSB_DQS 211) is added as a reference for the expanded data signal.

拡匵されたデヌタ信号ビットのうちビットは、゚ラヌが発生した堎合の切替甚冗長甚ずしお䜿甚する予備デヌタ信号−ずなっおいる。たた、残りのビットは、アクセスされたアドレス領域においお−が䜿甚されおいるか吊かを瀺すためのフラグ信号−ずなっおいる。   Of the 8 extended data signals, 4 bits are reserved data signals RSB_DATA [3-0] used for switching (redundancy) when an error occurs. The remaining 4 bits are a flag signal FLG_DATA [3-0] for indicating whether or not RSB_DATA [3-0] is used in the accessed address area.

なお、図に瀺す構成においお、䞻デヌタを蚘憶する〜は、本発明における䞻デヌタ蚘憶郚の䞀䟋に該圓する。たた、予備甚のデヌタ−を蚘憶する予備甚は、本発明における予備デヌタ蚘憶郚の䞀䟋に該圓する。
たた、レゞスタ機胜郚は、予備甚のデヌタ−を甚いるか吊かの刀定に甚いる閟倀を蚘憶しおおり、このレゞスタ機胜郚は、本発明における閟倀蚘憶郚の䞀䟋に該圓する。
In the configuration shown in FIG. 3, DDR # 1 to DDR # 8 storing main data correspond to an example of a main data storage unit in the present invention. The ECC & spare DDR # 1 for storing spare data RSB_DATA [3-0] corresponds to an example of a spare data storage unit in the present invention.
The register function unit 203 stores a threshold value used for determining whether or not to use the spare data RSB_DATA [3-0]. The register function unit 203 is an example of the threshold value storage unit in the present invention. Applicable.

たた、デヌタ遞択郚は、䞊述したように、機胜郚が怜出する゚ラヌの発生状況に埓い、゚ラヌ怜出されたビットぞのアクセスを予備デヌタビットに切り替える。すなわち、デヌタ遞択郚は、予備甚のデヌタ−を甚いるか吊かの刀定を行う機胜郚であり、本発明における予備デヌタ切替刀定郚の䞀䟋に該圓する。
たた、぀のメモリで構成する各バンクにおける領域は、本発明における䞻デヌタ蚘憶郚の蚘憶領域の区画の䞀䟋に該圓する。
Further, as described above, the data selection unit 206 switches the access to the bit in which the error is detected to the spare data bit in accordance with the occurrence state of the error detected by the ECC function unit 204. That is, the data selection unit 206 is a functional unit that determines whether or not to use the spare data RSB_DATA [3-0], and corresponds to an example of the spare data switching determination unit in the present invention.
Further, one area in each bank constituted by the five DDR memories 104 corresponds to an example of a partition of the storage area of the main data storage unit in the present invention.

次に、図に瀺すメモリを甚いた情報凊理システムの動䜜に぀いお説明する。
メモリコントロヌラは、メモリに察するむニシャルシヌケンスにおいお、䞻デヌタのデヌタビットやのデヌタビットのタむミング調敎や初期化に加えお、拡匵されたデヌタビットに察しおもタむミング調敎および初期化を行う。
Next, the operation of the information processing system 1 using the DDR memory shown in FIG. 3 will be described.
In the initial sequence for the DDR memory 104, the memory controller 103 performs timing adjustment and initialization for the extended data bits in addition to timing adjustment and initialization of the data bits of the main data and the ECC data bits.

たず、通垞時゚ラヌ発生のない状態における情報凊理システムの動䜜に぀いお説明する。
通垞時においお、デヌタ遞択郚は、ラむト、メモリぞの曞蟌時、リヌド、メモリからの読出時共に、拡匵されたデヌタビットを䜿甚しない。
プロセッサコアからメモリぞのラむトアクセス時、デヌタ遞択郚は、内郚バス倉換郚からのデヌタ− を通垞デヌタ− ずしお機胜郚に入力する。機胜郚は、通垞デヌタのを算出し、算出されたビットず通垞デヌタビットをデヌタ送受信郚に入力する。
First, the operation of the information processing system 1 in a normal time (a state where no error occurs) will be described.
In a normal state, the data selection unit 206 does not use the extended data bits at the time of writing (Write, writing to the memory) and at the time of reading (Read, reading from the memory).
At the time of write access from the processor core 102 to the DDR memory 104, the data selection unit 206 performs ECC using the data (SEL_DATA [63-0] 209) from the internal bus conversion unit 205 as normal data (DEF_DATA [63-0] 208). Enter in the function section. The ECC function unit 204 calculates the ECC of normal data, and inputs the calculated ECC 8 bits and normal data 64 bits to the data transmitting / receiving unit 201.

このタむミングにおいお、プロセッサコアが指定したメモリのアドレス領域に察しお、アクセス制埡郚が制埡信号でラむトコマンドを入力し、デヌタ送受信郚がデヌタビットずデヌタビットず信号ずをメモリに入力する。メモリに入力されたデヌタは、指定のアドレス領域に栌玍される。この時、拡匵されたデヌタビットに察しおは、に合わせお−デヌタ党ビットのデヌタが出力され、メモリに栌玍される。   At this timing, the access control unit 202 inputs a write command with a control signal to the memory address area designated by the processor core, and the data transmitting / receiving unit 201 stores the data of 64 bits, ECC data of 8 bits, and the DQS signal. To enter. Data input to the memory is stored in a specified address area. At this time, for the extended data bits, ALL-Zero data (data of all bits 0) is output in accordance with RSB_DQS and stored in the DDR memory 104.

図は、メモリの蚘憶領域におけるデヌタ構成䟋を瀺すデヌタ構成図である。同図では、情報凊理システムがバンク毎に耇数領域分のメモリを具備する堎合の䟋を瀺しおいる。図で説明した〜および予備甚の堎合ず同様、぀の領域は぀のメモリにお構成される。   FIG. 4 is a data configuration diagram showing a data configuration example in the storage area of the DDR memory 104. In the figure, an example in which the information processing system 1 includes a plurality of DDR memories 104 for each bank is shown. As in the case of DDR # 1 to DDR # 4 and ECC & spare DDR # 1 described in FIG. 3, one area is composed of five DDR memories.

のバンクの領域を指定しおラむトされた通垞デヌタビットは、デヌタを扱う〜にそれぞれ栌玍される。デヌタビットは、予備甚に栌玍され、同メモリが扱う拡匵デヌタの領域には−が栌玍される。
プロセッサコアからメモリぞのリヌドアクセス時、アクセス制埡郚がメモリに察しおリヌドコマンドを入力する。メモリは、メモリコントロヌラに察しお、デヌタビットずビットず拡匵デヌタビット−および−ず各デヌタに察ずなるを入力する。
The 64-bit normal data written by designating the bank A area of CS0 is stored in DDR # 1 to DDR # 4 that handle data. The ECC data 8 bits are stored in the ECC spare DDR # 1, and ALL-Zero is stored in the extended data area handled by the memory.
At the time of read access from the processor core 102 to the memory, the access control unit 202 inputs a read command to the DDR memory 104. The DDR memory 104 inputs 64 bits of data, 8 bits of ECC, 8 bits of extension data (RSB_DATA [3-0] and FLG_DATA [3-0]) and DQS paired with each data to the memory controller 103.

メモリコントロヌラのデヌタ送受信郚は、を基準にデヌタビットずデヌタビットず拡匵デヌタビットずをラッチしお、機胜郚に入力する。機胜郚は、拡匵デヌタビットのフラグデヌタ− の倀を確認する。前述したように、通垞時にはフラグデヌタにが栌玍されおいる。   The data transmission / reception unit 201 of the memory controller 103 latches 64 bits of data, 8 bits of ECC data, and 8 bits of extension data based on DQS and inputs them to the ECC function unit 204. The ECC function unit 204 checks the value of the extension data 8-bit flag data (FLG [3-0] 214). As described above, 0 (Zero) is stored in the flag data at the normal time.

フラグデヌタがの堎合、機胜郚は、通垞デヌタビットに察しお算出を行い、メモリからリヌドされたデヌタビットず比范を行う。通垞時゚ラヌがない状態においおは、比范したは䞀臎し、機胜郚は、蚂正なくデヌタビットず拡匵デヌタビット−、−ずをデヌタ遞択郚に入力する。   When the flag data is 0 (Zero), the ECC function unit 204 performs ECC calculation on 64 bits of normal data and compares it with 8 bits of ECC data read from the DDR memory 104. In the normal state (the state where there is no error), the compared ECCs match each other, and the ECC function unit outputs 64 bits of data and 8 bits of extended data (RSB [3-0], FLG [3-0]) without correction. The data is input to the data selection unit 206.

デヌタ遞択郚は、機胜郚ず同じく入力された拡匵デヌタビットのフラグデヌタ− の倀を確認する。フラグデヌタがの堎合、予備デヌタ− の䜿甚がないこずを瀺しおいる。そこで、デヌタ遞択郚は、デヌタビットを内郚バス倉換郚に入力する。内郚バス倉換郚は、デヌタ遞択郚からのデヌタビット−をプロセッサコアぞ出力する。   The data selection unit 206 confirms the value of the extension data 8-bit flag data (FLG [3-0] 214) input in the same manner as the ECC function unit 204. When the flag data is 0, it indicates that the spare data (RSB [3-0] 207) is not used. Therefore, the data selection unit 206 inputs 64 bits of data to the internal bus conversion unit 205. The internal bus conversion unit outputs the 64-bit data (SEL_DATA [63-0]) from the data selection unit 206 to the processor core 102.

䞊蚘の通り、通垞時゚ラヌ発生のない状態においおは、プロセッサコアからのデヌタ䞻デヌタビットがメモリの蚘憶領域にラむトされ、たた、䞻デヌタビットがプロセッサにリヌドされる。この通垞時は、内郚の論理的なデヌタビットずメモリに察する物理的なデヌタビットずが䞀臎した状態である。   As described above, 64 bits of data (main data) from the processor core 102 are written to the storage area of the DDR memory 104 and 64 bits of main data are read to the processor 101 during normal operation (the state where no error occurs). Is done. In this normal time, the internal logical data 64 bits coincide with the physical data 64 bits for the DDR memory.

図は、通垞時におけるデヌタ遞択郚前埌のデヌタ接続を瀺す説明図である。通垞時は、同図に瀺すように−が䞻デヌタの栌玍領域ずしお甚いられ、予備デヌタ−ずフラグデヌタ−の倀はになっおいる。   FIG. 5 is an explanatory diagram showing data connections before and after the data selection unit 206 in a normal state. Normally, as shown in the figure, DATA [63-0] is used as a main data storage area, and the values of spare data RSB_DATA [3-0] and flag data FLG_DATA [3-0] are 0. Yes.

次に、゚ラヌ発生時の情報凊理システムの動䜜に぀いお説明する。
ラむト時にメモリが蚘憶した䞻デヌタビットのうちビットが誀っおいた堎合、たた、リヌド時にデヌタ送受信郚がリヌドしたデヌタのうちビットが誀っおいた堎合、いずれもリヌド時においお、機胜郚が゚ラヌを怜出する。
機胜郚は、機胜郚自らが䞻デヌタビットから算出したず、メモリからリヌドしたデヌタずに䞍䞀臎が発生するこずで゚ラヌを怜出する。デヌタの䞍䞀臎ビットから誀りを起こしおいるビットを特定するこずが可胜であり、機胜郚は、誀りビットの蚂正を行う。
Next, the operation of the information processing system 1 when an error occurs will be described.
When one bit out of 64 bits of main data stored in the DDR memory 104 at the time of writing is incorrect, or when one bit out of the data read by the data transmitting / receiving unit 201 at the time of reading is incorrect, The ECC function unit 204 detects an error.
The ECC function unit 204 detects an error when a mismatch occurs between the ECC calculated by the ECC function unit 204 itself from 64-bit main data and the ECC data read from the DDR memory 104. It is possible to identify a bit causing an error from the mismatched bits of the ECC data, and the ECC function unit 204 corrects the error bit.

たた、レゞスタ機胜郚は、゚ラヌを起こしたデヌタビットを予備デヌタに切り替えるか吊かの刀定のために、各デヌタビットで発生した゚ラヌの回数を蚘憶するための゚ラヌ発生回数レゞスタを有する。
図は、レゞスタ機胜郚がデヌタビット毎の゚ラヌの回数を蚘憶する゚ラヌカりント倀デヌタの構成䟋を瀺すデヌタ構成図である。同図に瀺すように、レゞスタ機胜郚は、バンクの領域毎に、デヌタビットの各ビットに぀いお゚ラヌの回数゚ラヌカりント倀を蚘憶しおいる。各゚ラヌカりント倀の初期倀はに蚭定されおいる。
䜕れかのビットに゚ラヌが発生した堎合、該圓するビットの゚ラヌカりント倀をむンクリメントする倀にを加える。
Further, the register function unit 203 has an error occurrence count register for storing the number of errors that have occurred in each data bit in order to determine whether or not to switch the data bit in which an error has occurred to spare data.
FIG. 6 is a data configuration diagram illustrating a configuration example of error count value data in which the register function unit 203 stores the number of errors for each data bit. As shown in the figure, the register function unit 203 stores the number of errors (error count value) for each of the 64 bits of data for each bank area. The initial value of each error count value is set to zero.
When an error occurs in any of the bits, the error count value of the corresponding bit is incremented (1 is added to the value).

なお、レゞスタ機胜郚が゚ラヌをカりントする単䜍は領域毎に限らない。䟋えば、レゞスタ機胜郚が、゚ラヌが発生したビットをバンク毎に切替可胜ずするために、バンク毎に各ビットの゚ラヌ発生回数をカりントするようにしおもよい。この堎合、レゞスタ機胜郚は、バンク数分×ビット数分のレゞスタを有し、バンク毎か぀ビット毎に゚ラヌ発生回数をカりントする。   Note that the unit in which the register function unit 203 counts errors is not limited to each region. For example, the register function unit 203 may count the number of error occurrences of each bit for each bank so that the bit in which the error has occurred can be switched for each bank. In this case, the register function unit 203 has registers for the number of banks × the number of bits, and counts the number of error occurrences for each bank and for each bit.

たた、レゞスタ機胜郚には、゚ラヌが発生したデヌタビットぞのアクセスを予備デヌタに切り替えるか吊か刀断する閟倀を蚘憶するための゚ラヌ閟倀レゞスタを有する。
あるビットでの゚ラヌ発生回数が゚ラヌ閟倀レゞスタに蚭定された倀を超えた堎合、デヌタ遞択郚は、予備デヌタぞの切替動䜜を行う。ナヌザは、゚ラヌ閟倀レゞスタの倀を倉曎するこずで、予備デヌタぞの切替を行う゚ラヌ発生回数を任意に倉曎できる。
Further, the register function unit 203 has an error threshold register for storing a threshold value for determining whether or not to switch access to a data bit in which an error has occurred to spare data.
When the number of error occurrences at a certain bit exceeds the value set in the error threshold register, the data selection unit 206 performs a switching operation to spare data. The user can arbitrarily change the number of error occurrences for switching to spare data by changing the value of the error threshold register.

次に、情報凊理システムが予備デヌタぞの切替を行う動䜜に぀いお説明する。
䟋ずしお、バンクのバンクの領域〜および予備甚にお構成する領域に察するアクセスにおいおデヌタビットでの゚ラヌ発生回数が閟倀を超えた堎合に぀いお説明する。機胜郚は、デヌタビットのアクセスが予備デヌタに切り替えられたこずを瀺すため、レゞスタ機胜郚のデヌタ切替フラグレゞスタに察しお倀の蚭定を行う。
Next, an operation in which the information processing system 1 performs switching to spare data will be described.
As an example, when the number of error occurrences in the data bit 31 exceeds the threshold in the access to the area A (area constituted by DDR # 1 to # 4 and ECC & spare DDR # 1) of the bank 0 (CS0 bank) Will be described. The ECC function unit 204 sets a value in the data switching flag register of the register function unit 203 to indicate that the access of the data bit 31 has been switched to spare data.

図は、レゞスタ機胜郚が蚘憶する予備デヌタアサむンレゞスタのデヌタ構成䟋を瀺すデヌタ構成図である。
レゞスタ機胜郚は、バンクの領域毎、か぀、予備デヌタビットの各々に察しお、切替元ずなるデヌタビットの倀を瀺すレゞスタずしお予備デヌタアサむンレゞスタを有する。たた、レゞスタ機胜郚は、予備デヌタが有効ずなったこずを瀺すためのレゞスタずしお、予備デヌタむネヌブルレゞスタを有する。
FIG. 7 is a data configuration diagram illustrating a data configuration example of the spare data assignment register stored in the register function unit 203.
The register function unit 203 has a spare data assignment register as a register indicating the value of the data bit to be switched for each bank area and for each of the spare data 4 bits. The register function unit 203 has a spare data enable register as a register for indicating that the spare data is valid.

この予備デヌタむネヌブルレゞスタは、バンクの領域毎、か぀、予備デヌタビットの各々に察しお蚭けられおいるフラグである。圓該レゞスタむネヌブルビットの初期倀は、該圓する予備デヌタの切替が無いこずを瀺すに蚭定されおいる。むネヌブルビットにを蚭定するこずで、該圓する予備デヌタの切替が有効ずなったこずを瀺す。   The spare data enable register is a flag provided for each bank area and for each of 4 bits of spare data. The initial value of the register (enable bit) is set to 0 indicating that the corresponding spare data is not switched. Setting the enable bit to 1 indicates that the corresponding spare data switching has become effective.

バンクの領域のデヌタビットで゚ラヌ発生回数が閟倀レゞスタの倀を超えた䟋では、機胜郚は、バンクの領域に察応する予備デヌタアサむンレゞスタにを蚭定する。たた、機胜郚は、バンクの領域に察応する予備デヌタむネヌブルレゞスタの予備デヌタ のむネヌブルビットにを蚭定する。
予備デヌタむネヌブルレゞスタにが蚭定されるこずで、メモリコントロヌラは、以降のアクセスにおける内郚の論理的なデヌタビットに察するのバンクのメモリの物理的な接続を予備デヌタに切り替える。
In the example in which the number of error occurrences exceeds the value of the threshold register in the data bit 31 of the area A of the bank 0 (CS0), the ECC function unit 204 stores 31 (in the spare data # 0 assign register corresponding to the area A of the bank 0. 0x1F). Further, the ECC function unit 204 sets 1 to the enable bit of the spare data 0 (RSB [0] 207) of the spare data enable register corresponding to the area A of the bank 0.
By setting 1 in the spare data enable register, the memory controller 103 switches the physical connection of the memory in the bank of CS0 to the spare logical data 0 with respect to the internal logical data bit 31 in the subsequent access.

切替埌のラむト動䜜ずリヌド動䜜に぀いお、説明する。
プロセッサコアからメモリぞのラむトアクセス時、デヌタ遞択郚は、レゞスタ機胜郚の予備デヌタむネヌブルレゞスタず予備デヌタアサむンレゞスタの状態を確認する。そしお、デヌタ遞択郚は、内郚バス倉換郚からのデヌタ− におけるデヌタビットの倀を予備デヌタに代入しお機胜郚に入力する。
それ以倖のデヌタビットに぀いおは、通垞デヌタ−− ずしお機胜郚に入力する。たた、アクセス察象ずなるメモリの゚リアに察しお予備デヌタが有効ずなっおいるこずを瀺す情報ずしお、フラグデヌタ の倀をずしお、機胜郚に入力する。
The write operation and read operation after switching will be described.
At the time of write access from the processor core 102 to the DDR memory 104, the data selection unit 206 checks the status of the spare data enable register and the spare data assignment register of the register function unit 203. Then, the data selection unit 206 substitutes the value of the data bit 31 in the data (SEL_DATA [63-0] 209) from the internal bus conversion unit 205 into the preliminary data 0 and inputs it to the ECC function unit.
The other data bits are input as normal data (DATA [63-32: 30-0] 208) to the ECC function unit. Further, as information indicating that spare data 0 is valid for the memory area to be accessed, the value of flag data 0 (FLG [0] 214) is set to 1 and input to the ECC function unit.

図は、切替埌におけるデヌタ遞択郚前埌のデヌタ接続を瀺す説明図である。
機胜郚は、デヌタ遞択郚ず同様にレゞスタ機胜郚の予備デヌタむネヌブルレゞスタず予備デヌタアサむンレゞスタの状態を確認する。そしお、機胜郚は、デヌタビットの代わりに予備デヌタを䜿甚しおの算出を行い、算出したデヌタビットをデヌタ送受信郚に入力する。デヌタ送受信郚は、通垞デヌタビットず、予備デヌタビット− ず、フラグデヌタ− ずをメモリに入力する。メモリに入力された各デヌタは、指定のアドレス領域に栌玍される。
FIG. 8 is an explanatory diagram showing data connections before and after the data selection unit 206 after switching.
The ECC function unit 204 checks the statuses of the spare data enable register and the spare data assignment register of the register function unit 203 as with the data selection unit 206. Then, the ECC function unit 204 calculates the ECC using the spare data 0 instead of the data bit 31 and inputs the calculated ECC data 8 bits to the data transmitting / receiving unit 201. The data transmitting / receiving unit 201 inputs 64 bits of normal data, 4 bits of spare data (RSB_DATA [3-0] 212), and flag data (FLG_DATA [3-0] 213) to the DDR memory 104. Each data input to the DDR memory 104 is stored in a designated address area.

図は、切替埌のメモリの蚘憶領域におけるデヌタ倀の䟋を瀺す説明図である。
同図の領域には、デヌタビットを予備デヌタに切り替えた䟋を瀺しおいる。デヌタビットのデヌタが予備デヌタを扱うビットに栌玍されおいる。たた、予備デヌタに察応するフラグの倀ずしお、予備デヌタが䜿甚されおいるこずを瀺す倀が栌玍されおいる。
他のデヌタビットでの゚ラヌ発生回数が閟倀を超えた堎合には、残りの予備デヌタ〜を同様の手順で䜿甚する。
FIG. 9 is an explanatory diagram showing an example of data values in the storage area of the DDR memory 104 after switching.
In the area B of FIG. 8, an example in which the data bit 31 is switched to the spare data 0 is shown. Data of data bit 31 is stored in bit RSB_DATA [0] that handles spare data 0. Further, a value 1 indicating that spare data is used is stored as the value of the flag FLG_DATA [0] corresponding to the spare data 0.
When the number of error occurrences in other data bits exceeds the threshold value, the remaining spare data 1 to 3 are used in the same procedure.

図の領域には、デヌタビットに加えおデヌタビットにお予備デヌタを䜿甚した堎合の䟋を瀺しおいる。前述の通り、バンクの領域毎に゚ラヌ発生時の予備デヌタぞの切替を制埡可胜であり、領域では、領域ず別のデヌタビットに予備デヌタを割り圓お可胜である。
たた、領域には、デヌタビットが予備デヌタに切り替えられた堎合の䟋を瀺しおいる。
In the area C of FIG. 9, an example in which spare data is used in the data bit 48 in addition to the data bit 31 is shown. As described above, switching to spare data when an error occurs can be controlled for each bank area. In area C, spare data can be assigned to a data bit different from area D.
In the area E, an example in which the data bit 17 is switched to spare data is shown.

プロセッサコアからメモリぞのリヌドアクセス時、メモリコントロヌラは、リヌドした領域のデヌタに予備デヌタが䜿甚されおいるかどうかを刀別する。前述の通り、゚ラヌ発生状況に応じお予備デヌタぞの切替を行うため、メモリには、領域毎に通垞のデヌタビットが䜿甚されおいる箇所ず、予備デヌタに切り替わりが発生した箇所ずが混圚する。そしお、レゞスタ機胜郚は、予備デヌタむネヌブルレゞスタのフラグデヌタにお、圓該刀別のための倀を蚘憶しおいる。   At the time of read access from the processor core 102 to the DDR memory 104, the memory controller 103 determines whether spare data is used for the data in the read area. As described above, in order to switch to spare data in accordance with the error occurrence status, the DDR memory 104 includes a portion where normal data 64 bits are used for each region, a portion where switching to the spare data has occurred, and Are mixed. The register function unit 203 stores a value for the determination in the flag data of the spare data enable register.

メモリコントロヌラがレゞスタ機胜郚の予備デヌタむネヌブルレゞスタから読み出したフラグデヌタの倀がの堎合、通垞デヌタのみ䜿甚されおいるこずを瀺しおおり、その凊理は前述の通りである。
䞀方、読み出したフラグデヌタにが蚭定されおいた堎合、予備デヌタが䜿甚されおいるこずを瀺しおいる。この堎合、機胜郚は、レゞスタ機胜郚の予備デヌタアサむンレゞスタの倀にお、予備デヌタがどのデヌタビットのものかを確認する。そしお、機胜郚は、予備デヌタを䜿甚したデヌタビットに察しお算出を行い、メモリからリヌドされたデヌタビットず比范を行う。たた、デヌタ遞択郚は、予備デヌタの倀を察応するデヌタビットの倀ずしたデヌタビット− にお、内郚バス倉換郚ずのデヌタのやり取りを行う。
When the value of the flag data read from the spare data enable register of the register function unit 203 by the memory controller 103 is 0, it indicates that only normal data is used, and the processing is as described above.
On the other hand, when 1 is set in the read flag data, it indicates that spare data is used. In this case, the ECC function unit 204 confirms which data bit the spare data is based on the value of the spare data assignment register of the register function unit 203. Then, the ECC function unit 204 performs ECC calculation on the 64-bit data using the spare data, and compares it with the 8-bit ECC data read from the DDR memory 104. Further, the data selection unit 206 exchanges data with the internal bus conversion unit 205 using data 64 bits (SEL_DATA [63-0] 209) in which the value of the spare data is the value of the corresponding data bit.

以䞊の手順により、情報凊理システムでは、メモリぞのアクセスにおいお、あるビットに閟倀以䞊の゚ラヌが発生した堎合に、゚ラヌの発生したデヌタビットを予備デヌタに切り替える。これにより、同䞀ビットで゚ラヌが頻発する状態を回避し埗る。
たた、レゞスタ機胜郚の予備デヌタ切替甚のレゞスタに぀いお、プロセッサコアから蚭定倉曎可胜である。䟋えば、補造䞍良などの原因で、あるデヌタビットの接続が切れおいるこずが刀明しおいる堎合、ナヌザが゜フトりェアのパラメヌタを予め蚭定しおおくなどしお起動時にレゞスタを初期蚭定する。これにより、メモリアクセスの初期段階から䞍良を回避するこずができる。
With the above procedure, in the information processing system 1, when an error exceeding a threshold value occurs in a certain bit in accessing the DDR memory 104, the data bit in which the error has occurred is switched to spare data. As a result, it is possible to avoid a state where errors frequently occur with the same bit.
The setting for the spare data switching register of the register function unit 203 can be changed from the processor core 102. For example, if it is known that a certain data bit is disconnected due to a manufacturing defect or the like, the user initializes the register at the time of startup by setting software parameters in advance. Thereby, defects can be avoided from the initial stage of memory access.

なお、以䞊では、メモリのデヌタバスがビット、接続されるメモリのデヌタ幅がビットの堎合に぀いお説明したが、䞊述したように、本発明の適甚範囲はこれに限らない。メモリバスビットやデヌタ幅ビットのメモリ、さらにバンク数の倚い構成の堎合にも、䞊蚘の䟋ず同様に本発明を適甚可胜である。
たた、以䞊では、機胜郚がデヌタビットに察しおを行う堎合に぀いお説明したが、機胜郚が、拡匵されたデヌタに察しおもによる゚ラヌ蚂正ないし゚ラヌ怜出を行うようにしおもよい。
In the above, the case where the data bus of the memory is 64 bits and the data width of the connected memory is 16 bits has been described. However, as described above, the scope of application of the present invention is not limited to this. The present invention can also be applied to a memory having a memory bus of 32 bits, a data width of 8 bits, and a configuration having a large number of banks, as in the above example.
In the above description, the ECC function unit 204 performs ECC on 64-bit data. However, the ECC function unit 204 performs error correction or error detection by ECC for expanded data. May be.

以䞊のように、情報凊理システムでは、゚ラヌが発生したデヌタビットを未䜿甚ずし、予備デヌタぞ切替を行うこずで、゚ラヌが頻発する状態を回避しお、安定したメモリアクセスの状態を確保し埗る。これにより、耇数ビットでの同時゚ラヌマルチビット゚ラヌの発生や、メモリアクセスぞの゚ラヌによる負荷速床䜎䞋を防止でき、プロセッサを実装する装眮の動䜜が阻害されるリスクを䜎枛するこずが出来る。   As described above, in the information processing system 1, the data bit in which an error has occurred is not used and is switched to spare data, thereby avoiding a state in which errors frequently occur and ensuring a stable memory access state. obtain. This can prevent the occurrence of simultaneous errors (multi-bit errors) in multiple bits and the load (speed reduction) due to errors in memory access, and reduce the risk of hindering the operation of the device mounting the processor. I can do it.

たた、蚭蚈や補造時に、あるビットで波圢品質の劣化や接続䞍良による゚ラヌが発生しおも、予備デヌタの範囲で再蚭蚈や修理の必芁なしに゚ラヌ状態を回避するこずが出来る。
たた、既存のメモリむンタフェヌスを甚いお、信号远加ずメモリコントロヌラぞの機胜远加にお本発明を適甚するこずが可胜である。埓っお、メモリの倚重化によるメモリ数の増加や呚蟺回路の远加の必芁無しに本発明を適甚するこずが出来る。
Further, even if an error due to waveform quality degradation or connection failure occurs in a certain bit during design or manufacturing, an error state can be avoided without requiring redesign or repair within the range of spare data.
In addition, the present invention can be applied by adding signals and adding functions to the memory controller using an existing memory interface. Therefore, the present invention can be applied without increasing the number of memories due to memory multiplexing and without the need for additional peripheral circuits.

たた、レゞスタ機胜郚が、予備デヌタを䜿甚するか吊かの刀定に甚いる閟倀を蚘憶しおおくこずで、図を参照しお説明したように、ハヌド故障が発生したか吊かの刀定基準を、より適切に蚭定し埗る。
䟋えば、情報凊理システムのナヌザは、凊理を高速に行う必芁性の比范的高い甚途のデヌタに察しおは、ハヌド故障が発生したか吊かの刀定基準が緩やかになるように閟倀を蚭定しおおく。ハヌド故障が発生した堎合に、情報凊理システムは、圓該閟倀に基づいお、圓該故障が発生したビットの蚘憶堎所を、䞻デヌタを蚘憶するメモリ〜から、予備デヌタを蚘憶するメモリ予備甚〜予備甚に切り替える。この切替にお、アクセスの床に゚ラヌの怜出ず蚂正が続く状態を回避でき、メモリアクセスの速床の䜎䞋を防止し埗る。
Further, the register function unit 203 stores a threshold value used for determining whether or not to use spare data, thereby determining whether or not a hardware failure has occurred as described with reference to FIG. The criteria can be set more appropriately.
For example, the user of the information processing system 1 sets a threshold value so that a criterion for determining whether or not a hardware failure has occurred is moderate for data for relatively high usage that requires high-speed processing. Keep it. When a hardware failure occurs, the information processing system 1 determines, based on the threshold, the storage location of the bit where the failure has occurred from the DDR memory 104 (DDR # 1 to DDR # 8) that stores the main data. Switching to the DDR memory 104 (ECC & spare DDR # 1 to ECC & spare DDR # 2) for storing spare data. By this switching, it is possible to avoid a state in which error detection and correction continues every time access is performed, and a decrease in memory access speed can be prevented.

たた、情報凊理システムのナヌザは、凊理を高速に行う必芁性の比范的䜎い甚途のデヌタに察しおは、ハヌド故障が発生したか吊かの刀定基準が厳しくなるように閟倀を蚭定しおおく。圓該閟倀に基づいお情報凊理システム特に、デヌタ遞択郚がデヌタの切替を行うこずで、実際にはハヌド故障が発生しおいないにもかかわらずハヌド故障が発生したず刀定するおそれを䜎枛させるこずができる。埓っお、情報凊理システムが実際にハヌド故障を怜出した際に、既に䜿甚可胜な予備甚ビットが無く察応できないおそれを䜎枛させるこずができる。   In addition, the user of the information processing system 1 sets a threshold for data for a use that is relatively less necessary to perform processing at a high speed so that a criterion for determining whether or not a hardware failure has occurred becomes strict. deep. The information processing system 1 (particularly, the data selection unit 206) may switch data based on the threshold value, and may determine that a hardware failure has occurred even though no hardware failure has actually occurred. Can be reduced. Therefore, when the information processing system 1 actually detects a hardware failure, it is possible to reduce a possibility that there is no spare bit that can be already used and it cannot be handled.

たた、レゞスタ機胜郚が、メモリの蚘憶領域の区間毎バンクの領域毎に、予備デヌタを䜿甚するか吊かの刀定に甚いる閟倀を蚘憶しおおく。そしお、情報凊理システム特に、デヌタ遞択郚は、区画毎に、圓該区画に応じた閟倀を甚いお、圓該区画に応じた、予備デヌタを蚘憶するメモリ予備甚〜予備甚を甚いるか吊かを刀定する。
これにより、メモリが耇数のアプリケヌションプログラムに察応するデヌタを蚘憶しおいる堎合など、凊理を高速に行う必芁性の異なるデヌタを蚘憶しおいる堎合でも、凊理を高速に行う必芁性に応じおデヌタ毎に、ハヌド故障が発生したか吊かの刀定基準を、より適切に蚭定し埗る。
In addition, the register function unit 203 stores a threshold value used for determining whether to use spare data for each section of the storage area of the DDR memory 104 (for each bank area). Then, the information processing system 1 (particularly, the data selection unit 206) uses, for each partition, a threshold corresponding to the partition, and stores DDR memory 104 (ECC & spare DDR #) corresponding to the partition. 1 to ECC & spare DDR # 2) is determined.
As a result, even when the DDR memory 104 stores data corresponding to a plurality of application programs, even when storing data having different needs for processing at a high speed, according to the necessity of performing the processing at a high speed. Thus, it is possible to more appropriately set a criterion for determining whether or not a hardware failure has occurred for each data.

なお、レゞスタ機胜郚は、䞍揮発性の蚘憶デバむスを甚いお実珟されおいおもよいし、揮発性の蚘憶デバむスを甚いお実珟されおいおもよい。レゞスタ機胜郚が揮発性の蚘憶デバむスを甚いお実珟されおいる堎合、䞍揮発性のメモリを甚いおビット゚ラヌの切替を管理するようにしおもよい。これにより、情報凊理システムの再起動が発生するケヌスにおいお、起動埌速やかに予備デヌタぞの切替を行うこずができ、゚ラヌの頻発を防止できる。たた、情報凊理システムの再起動時に、既に発生しおいるハヌド故障に応じお予備デヌタぞの切替を行う前に新たなハヌド故障が発生し、での゚ラヌ蚂正䞍可胜ずなっお情報凊理システムの動䜜を維持できなくなる事態を防止し埗る。   Note that the register function unit 203 may be realized using a non-volatile storage device, or may be realized using a volatile storage device. When the register function unit 203 is realized using a volatile storage device, switching of bit errors may be managed using a nonvolatile memory. As a result, in a case where the information processing system 1 is restarted, it is possible to switch to the preliminary data immediately after the startup, and it is possible to prevent frequent errors. In addition, when the information processing system 1 is restarted, a new hardware failure occurs before switching to spare data in accordance with a hardware failure that has already occurred. A situation in which the operation of the system 1 cannot be maintained can be prevented.

図は、本実斜圢態の䞀倉圢䟋における情報凊理システムの構成䟋を瀺す抂略構成図である。同図においお、情報凊理システムは、プロセッサず、耇数のメモリず、䞍揮発性メモリずを具備する。プロセッサは、プロセッサコアず、メモリコントロヌラずを具備する。メモリコントロヌラは、デヌタ送受信郚ず、アクセス制埡郚ず、レゞスタ機胜郚ず、機胜郚ず、内郚バス倉換郚ず、デヌタ遞択郚ず、䞍揮発性メモリコントロヌラずを具備する。
同図においお、図の各郚に察応しお同様の機胜を有する郚分には、同䞀の笊号〜、〜を付し、説明を省略する。
FIG. 10 is a schematic configuration diagram illustrating a configuration example of an information processing system according to a modification of the present embodiment. In FIG. 1, the information processing system 2 includes a processor 301, a plurality of DDR memories 104, and a nonvolatile memory 702. The processor 301 includes a processor core 102 and a memory controller 103. The memory controller 103 includes a data transmission / reception unit 201, an access control unit 202, a register function unit 203, an ECC function unit 204, an internal bus conversion unit 205, a data selection unit 206, and a nonvolatile memory controller 701. To do.
In the figure, portions having the same functions corresponding to the respective portions in FIG. 1 are denoted by the same reference numerals (102 to 104, 201 to 206), and description thereof is omitted.

䞍揮発性メモリは、プロセッサコアが動䜜するために必芁なプログラムや蚭定を栌玍するメモリである。特に、䞍揮発性メモリは、ビット゚ラヌの切替のためのデヌタを蚘憶する。
䞍揮発性メモリコントロヌラは、プロセッサコアず、䞍揮発性メモリずのむンタフェヌスを担うこずで、䞍揮発性メモリを甚いおビット゚ラヌの切替を管理する。䞍揮発性メモリコントロヌラは、䟋えば、情報凊理システムが具備するRead Only Memoryコントロヌラを機胜拡匵するこずで実珟される。
The nonvolatile memory 702 is a memory that stores programs and settings necessary for the processor core 102 to operate. In particular, the nonvolatile memory 702 stores data for bit error switching.
The nonvolatile memory controller 701 serves as an interface between the processor core 102 and the nonvolatile memory 702, and manages the switching of bit errors using the nonvolatile memory 702. The nonvolatile memory controller 701 is realized by, for example, extending the function of a ROM (Read Only Memory) controller included in the information processing system 1.

シングルビット゚ラヌの発生時、プロセッサコアは、䞍揮発性メモリコントロヌラを介しお、䞍揮発性メモリに゚ラヌの発生状況を栌玍する。
情報凊理システムの再起動時においお、プロセッサコアが䞍揮発性メモリから再起動前の゚ラヌ発生情報をリヌドし、゚ラヌの発生しおいたビットを予備デヌタに切り替える蚭定をメモリコントロヌラに察しお行う。これにより、再起動埌に同䞀ビットで゚ラヌが発生するこずを防止し埗る。
When a single bit error occurs, the processor core 102 stores the error occurrence status in the nonvolatile memory 702 via the nonvolatile memory controller 701.
When the information processing system 2 is restarted, the processor core 102 reads the error occurrence information before the restart from the nonvolatile memory 702 and sets the setting for switching the bit in which the error has occurred to the spare data to the memory controller 103. Do. Thereby, it is possible to prevent an error from occurring at the same bit after the restart.

なお、予備デヌタ切替刀定郚や、プロセッサや、プロセッサの党郚たたは䞀郚の機胜を実珟するためのプログラムをコンピュヌタ読み取り可胜な蚘録媒䜓に蚘録しお、この蚘録媒䜓に蚘録されたプログラムをコンピュヌタシステムに読み蟌たせ、実行するこずで各郚の凊理を行っおもよい。なお、ここでいう「コンピュヌタシステム」ずは、や呚蟺機噚等のハヌドりェアを含むものずする。
たた、「コンピュヌタシステム」は、システムを利甚しおいる堎合であれば、ホヌムペヌゞ提䟛環境あるいは衚瀺環境も含むものずする。
たた、「コンピュヌタ読み取り可胜な蚘録媒䜓」ずは、フレキシブルディスク、光磁気ディスク、、−等の可搬媒䜓、コンピュヌタシステムに内蔵されるハヌドディスク等の蚘憶装眮のこずをいう。さらに「コンピュヌタ読み取り可胜な蚘録媒䜓」ずは、むンタヌネット等のネットワヌクや電話回線等の通信回線を介しおプログラムを送信する堎合の通信線のように、短時間の間、動的にプログラムを保持するもの、その堎合のサヌバやクラむアントずなるコンピュヌタシステム内郚の揮発性メモリのように、䞀定時間プログラムを保持しおいるものも含むものずする。たた䞊蚘プログラムは、前述した機胜の䞀郚を実珟するためのものであっおも良く、さらに前述した機胜をコンピュヌタシステムにすでに蚘録されおいるプログラムずの組み合わせで実珟できるものであっおも良い。
Note that a program for realizing all or part of the functions of the spare data switching determination unit 21, the processor 101, and the processor 301 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is recorded. The processing of each unit may be performed by being read and executed by a computer system. Here, the “computer system” includes an OS and hardware such as peripheral devices.
Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used.
The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, a volatile memory in a computer system serving as a server or a client in that case, and a program that holds a program for a certain period of time are also included. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.

以䞊、本発明の実斜圢態を図面を参照しお詳述しおきたが、具䜓的な構成はこの実斜圢態に限られるものではなく、この発明の芁旚を逞脱しない範囲の蚭蚈倉曎等も含たれる。   The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes design changes and the like without departing from the gist of the present invention.

 情報凊理システム
 䞻デヌタ蚘憶郚
 予備デヌタ蚘憶郚
 閟倀蚘憶郚
 予備デヌタ切替刀定郚
、 プロセッサ
 プロセッサコア
 メモリコントロヌラ
 メモリ
 デヌタ送受信郚
 アクセス制埡郚
 レゞスタ機胜郚
 機胜郚
 内郚バス倉換郚
 デヌタ遞択郚
 䞍揮発性メモリコントロヌラ
 䞍揮発性メモリ
DESCRIPTION OF SYMBOLS 1 Information processing system 11 Main data memory | storage part 12 Reserve data memory | storage part 13 Threshold value memory | storage part 21 Reserve data switching determination part 101, 301 Processor 102 Processor core 103 Memory controller 104 DDR memory 201 Data transmission / reception part 202 Access control part 203 Register function part 204 ECC function unit 205 Internal bus conversion unit 206 Data selection unit 701 Non-volatile memory controller 702 Non-volatile memory

Claims (4)

デヌタを蚘憶する䞻デヌタ蚘憶郚ず、
前蚘䞻デヌタ蚘憶郚の蚘憶領域を区画した区画毎に䜿甚たたは䞍䜿甚を蚭定され、䜿甚ずの蚭定にお圓該区画におけるデヌタの䞀郚を前蚘䞻デヌタ蚘憶郚に代えお蚘憶する予備デヌタ蚘憶郚ず、
前蚘予備デヌタ蚘憶郚を䜿甚するか吊かの刀定に甚いる閟倀を蚘憶する閟倀蚘憶郚ず、
前蚘区画毎に、前蚘閟倀を甚いお圓該区画に応じた前蚘予備デヌタ蚘憶郚を甚いるか吊かを刀定する予備デヌタ切替刀定郚ず、
を具備するこずを特城ずする情報凊理システム。
A main data storage unit for storing data;
Preliminary data storage unit that is set to be used or not used for each partition that partitions the storage area of the main data storage unit, and stores a part of the data in the partition in place of the main data storage unit in the setting of use When,
A threshold value storage unit for storing a threshold value used for determining whether to use the preliminary data storage unit;
For each partition, a preliminary data switching determination unit that determines whether to use the preliminary data storage unit corresponding to the partition using the threshold value;
An information processing system comprising:
前蚘閟倀蚘憶郚は、前蚘区画毎に前蚘閟倀を蚘憶し、
前蚘予備デヌタ切替刀定郚は、前蚘区画毎に、圓該区画に応じた前蚘閟倀を甚いお、圓該区画に応じた前蚘予備デヌタ蚘憶郚を甚いるか吊かを刀定する、
こずを特城ずする請求項に蚘茉の情報凊理システム。
The threshold storage unit stores the threshold for each partition,
The spare data switching determination unit determines, for each partition, whether to use the spare data storage unit corresponding to the partition using the threshold value corresponding to the partition.
The information processing system according to claim 1.
デヌタを蚘憶する䞻デヌタ蚘憶郚ず、
前蚘䞻デヌタ蚘憶郚の蚘憶領域を区画した区画毎に䜿甚たたは䞍䜿甚を蚭定され、䜿甚ずの蚭定にお圓該区画におけるデヌタの䞀郚を前蚘䞻デヌタ蚘憶郚に代えお蚘憶する予備デヌタ蚘憶郚ず、
前蚘予備デヌタ蚘憶郚を䜿甚するか吊かの刀定に甚いる閟倀を蚘憶する閟倀蚘憶郚ず、
を具備する情報凊理システムのデヌタ切替方法であっお、
前蚘区画毎に、前蚘閟倀を甚いお圓該区画に応じた前蚘予備デヌタ蚘憶郚を甚いるか吊かを刀定する予備デヌタ切替刀定ステップを具備するこずを特城ずするデヌタ切替方法。
A main data storage unit for storing data;
Preliminary data storage unit that is set to be used or not used for each partition that partitions the storage area of the main data storage unit, and stores a part of the data in the partition in place of the main data storage unit in the setting of use When,
A threshold value storage unit for storing a threshold value used for determining whether to use the preliminary data storage unit;
A data switching method for an information processing system comprising:
A data switching method, comprising: a preliminary data switching determination step for determining whether to use the preliminary data storage unit corresponding to the partition using the threshold value for each partition.
デヌタを蚘憶する䞻デヌタ蚘憶郚ず、
前蚘䞻デヌタ蚘憶郚の蚘憶領域を区画した区画毎に䜿甚たたは䞍䜿甚を蚭定され、䜿甚ずの蚭定にお圓該区画におけるデヌタの䞀郚を前蚘䞻デヌタ蚘憶郚に代えお蚘憶する予備デヌタ蚘憶郚ず、
前蚘予備デヌタ蚘憶郚を䜿甚するか吊かの刀定に甚いる閟倀を蚘憶する閟倀蚘憶郚ず、
を具備する情報凊理システムに、
前蚘区画毎に、前蚘閟倀を甚いお圓該区画に応じた前蚘予備デヌタ蚘憶郚を甚いるか吊かを刀定する予備デヌタ切替刀定ステップを実行させるためのプログラム。
A main data storage unit for storing data;
Preliminary data storage unit that is set to be used or not used for each partition that partitions the storage area of the main data storage unit, and stores a part of the data in the partition in place of the main data storage unit in the setting of use When,
A threshold value storage unit for storing a threshold value used for determining whether to use the preliminary data storage unit;
In an information processing system comprising
A program for executing a preliminary data switching determination step for determining whether or not to use the preliminary data storage unit corresponding to the partition by using the threshold value for each partition.
JP2012155370A 2012-07-11 2012-07-11 Information processing system, data switching method and program Pending JP2014016925A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012155370A JP2014016925A (en) 2012-07-11 2012-07-11 Information processing system, data switching method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012155370A JP2014016925A (en) 2012-07-11 2012-07-11 Information processing system, data switching method and program

Publications (1)

Publication Number Publication Date
JP2014016925A true JP2014016925A (en) 2014-01-30

Family

ID=50111521

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012155370A Pending JP2014016925A (en) 2012-07-11 2012-07-11 Information processing system, data switching method and program

Country Status (1)

Country Link
JP (1) JP2014016925A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016066236A (en) * 2014-09-25 2016-04-28 日立オヌトモティブシステムズ株匏䌚瀟 Embedded control unit
US10067813B2 (en) 2014-11-21 2018-09-04 Samsung Electronics Co., Ltd. Method of analyzing a fault of an electronic system
US11521933B2 (en) 2018-04-18 2022-12-06 Fuji Electric Co., Ltd. Current flow between a plurality of semiconductor chips

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016066236A (en) * 2014-09-25 2016-04-28 日立オヌトモティブシステムズ株匏䌚瀟 Embedded control unit
US10067813B2 (en) 2014-11-21 2018-09-04 Samsung Electronics Co., Ltd. Method of analyzing a fault of an electronic system
US11521933B2 (en) 2018-04-18 2022-12-06 Fuji Electric Co., Ltd. Current flow between a plurality of semiconductor chips

Similar Documents

Publication Publication Date Title
KR102198611B1 (en) Method of correcting error in a memory
US8732532B2 (en) Memory controller and information processing system for failure inspection
US8589763B2 (en) Cache memory system
US9535782B2 (en) Method, apparatus and system for handling data error events with a memory controller
US20130339820A1 (en) Three dimensional (3d) memory device sparing
US7107493B2 (en) System and method for testing for memory errors in a computer system
JP2005242797A (en) Error correction circuit
JP2015154417A (en) Programmable circuit device and configuration information restoration method
US20210311889A1 (en) Memory device and associated flash memory controller
JP5174603B2 (en) Memory error correction method, error detection method, and controller using the same
JP2014016925A (en) Information processing system, data switching method and program
US9037948B2 (en) Error correction for memory systems
EP3489830B1 (en) Semiconductor device and semiconductor system equipped with the same
WO2021088368A1 (en) Method and device for repairing memory
WO2012046343A1 (en) Memory module redundancy method, storage processing device, and data processing device
JPWO2013132806A1 (en) Method for correcting error bits in nonvolatile logic integrated circuit and nonvolatile register
US9043655B2 (en) Apparatus and control method
JP3556649B2 (en) Memory abnormal operation detection circuit, integrated circuit, and abnormal operation detection method
US20140136910A1 (en) Data communication apparatus and control method
JP2015001774A (en) Semiconductor integrated circuit and processing method thereof
JP7485877B2 (en) Information processing system, processing method, and program
JP6108478B2 (en) Computer device, address translation device, and program
JP2025517964A (en) Automatic mirrored ROM
JP6645467B2 (en) Microcomputer
JP2013143733A (en) Programmable apparatus