JP4030951B2 - Data duplication apparatus and method - Google Patents

Data duplication apparatus and method Download PDF

Info

Publication number
JP4030951B2
JP4030951B2 JP2003382370A JP2003382370A JP4030951B2 JP 4030951 B2 JP4030951 B2 JP 4030951B2 JP 2003382370 A JP2003382370 A JP 2003382370A JP 2003382370 A JP2003382370 A JP 2003382370A JP 4030951 B2 JP4030951 B2 JP 4030951B2
Authority
JP
Japan
Prior art keywords
data
memory
active
control device
cpu
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
JP2003382370A
Other languages
Japanese (ja)
Other versions
JP2005148910A (en
Inventor
宗徳 深町
Original Assignee
埼玉日本電気株式会社
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 埼玉日本電気株式会社 filed Critical 埼玉日本電気株式会社
Priority to JP2003382370A priority Critical patent/JP4030951B2/en
Publication of JP2005148910A publication Critical patent/JP2005148910A/en
Application granted granted Critical
Publication of JP4030951B2 publication Critical patent/JP4030951B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、現用系と予備系を有するデータの二重化装置及び方法に関する。   The present invention relates to a data duplication apparatus and method having an active system and a standby system.

情報通信システム等において、信頼性が要求されるシステムでは、障害発生時、システムの停止を回避する必要性があることから、現用系/予備系の冗長構成をとり、現用系に障害が発生した時、予備系への切替が行われる。予備系から現用系に切り替わった際に、例えばデータの整合性を保ち信頼性を向上した運用を実現するため、従来より、各種手法が用いられている。   In systems that require reliability in information communication systems, etc., when a failure occurs, it is necessary to avoid stopping the system. Therefore, the active / standby redundant configuration is used, and a failure occurs in the active system. At this time, switching to the standby system is performed. When switching from the standby system to the active system, various methods have been conventionally used in order to realize, for example, an operation that maintains data consistency and improves reliability.

現用系のCPU(Central Processing Unit;中央処理装置)上のファイルメモリの内容を予備系CPUにコピーしている途中で現用系ファイルメモリに故障が発生したとき、主メモリについて既に二重化済みの予備系CPUを現用系に切り替えて再開し、その後、予備系の主メモリからファイルメモリにファイルバックアップをとり、予備系CPUのファイルメモリだけは片肺運転状態でサービスを続行するようにした方法が知られている(例えば後記特許文献1参照)。   When a failure occurs in the active file memory while copying the contents of the file memory on the active CPU (Central Processing Unit) to the standby CPU, the standby system that has already been duplicated for the main memory A method is known in which the CPU is switched to the active system and restarted, and after that, a file backup is performed from the main memory of the standby system to the file memory, and only the file memory of the standby system CPU continues the service in the single lung operation state. (See, for example, Patent Document 1 below).

また、現用系処理装置が共有データ書き込み中に障害となっても、待機系処理装置内に保持される共有データが破壊されることなく、待機系処理装置の現用系処理装置に切り替える装置及び方法も知られている(例えば後記特許文献2参照)。この装置・方法によれば、現用系処理装置から待機系処理装置の記憶装置に書き込まれる共有データは、待機系処理装置のバッファに一旦蓄積され、共有データがバッファに正常に書き込まれたときのみ、バッファ内の共有データが待機系処理装置の記憶装置に転送されて書き込まれ、現用系処理装置が共有データ書き込み中に障害となっても、系切り替え前の状態を完全に引き継ぐことができるようにしている。   An apparatus and a method for switching to the active processing apparatus of the standby processing apparatus without destroying the shared data held in the standby processing apparatus even if the active processing apparatus becomes a failure while writing the shared data Is also known (see, for example, Patent Document 2 below). According to this apparatus and method, the shared data written from the active processor to the storage device of the standby processor is temporarily stored in the buffer of the standby processor, and only when the shared data is normally written to the buffer. The shared data in the buffer is transferred and written to the storage device of the standby processing device, so that even if the active processing device becomes faulty while writing the shared data, the state before the system switching can be completely taken over. I have to.

上記した従来の手法(後記特許文献1、2に記載された手法)は、現用系/予備系上に存在する記憶装置に、常に、最新データを二重化するというものである。これらの構成の場合、メモリコントローラから、一旦、汎用バスを介してメモリへ書き込むものと、共有バスを経由して、書き込むものがある。しかしながら、かかる構成においては、現用系と予備系の2つの制御装置間におけるデータ伝送は、ノイズ等の対策により、ある程度低い周波数で行わなければならず、この結果、データ転送処理速度が、低下し、システム処理能力も低下することになる。   The above-described conventional method (the method described in Patent Documents 1 and 2 below) is to always duplex the latest data in a storage device existing on the active / standby system. In the case of these configurations, there are a memory controller that temporarily writes data into a memory via a general-purpose bus and a memory controller that writes data via a shared bus. However, in such a configuration, data transmission between the two control devices of the active system and the standby system must be performed at a somewhat low frequency due to measures such as noise, and as a result, the data transfer processing speed decreases. As a result, the system processing capacity also decreases.

また、無中断運転を補償するための二重化構成をとる交換システムの制御系に関して、現用系と、予備系と、現用系と予備系との間で共有が必要なデータを記憶する領域を有する外部記憶装置と、外部記憶装置の接続する系を切り替える切替スイッチを備え、現用系と予備系間の運転情報の転送を二重化系間で共通の外部記憶装置に切替により行う方式も知られている(例えば後記特許文献3参照)。   In addition, regarding the control system of the exchange system having a duplex configuration for compensating for uninterrupted operation, an external system having an area for storing data that needs to be shared between the active system, the standby system, and the active system and the standby system There is also known a system that includes a changeover switch for switching between a storage device and a system to which the external storage device is connected, and transfers operation information between the active system and the standby system to a common external storage device between the redundant systems ( For example, see Patent Document 3 below).

さらに共用メモリを備えた二重化システムにおいて、共用メモリ内に主系システムの状態情報領域と従系システムの状態情報領域を備え、主系システムが定期的に共用メモリ内の主系システムの状態情報領域に定期的に更新されるデータを書き込み、従系システムが、定期的に共用メモリ内の主系システムの状態情報領域を読み出し、該データ値の更新状況を検査し、主系システムの正常性を判定するようにした共用メモリ二重化システムも知られている(例えば後記特許文献4参照)。   Further, in a duplex system with shared memory, the shared system has a status information area for the main system and a status information area for the slave system in the shared memory, and the main system periodically sends a status information area for the main system in the shared memory. The data that is regularly updated is written, and the slave system periodically reads the status information area of the master system in the shared memory, checks the update status of the data value, and checks the normality of the master system. There is also known a shared memory duplex system that is determined (see, for example, Patent Document 4 below).

これらのシステム(後記特許文献3、4に記載された構成)は、系の切り替え発生時に、ソフトウェア制御にて、データを復元するものであり、特別なソフトウェア制御が必要とされ、さらに、系切り替えの発生から、データ復元まで時間を要する為、その間、システム停止する可能性もある。   These systems (configurations described in Patent Documents 3 and 4 to be described later) restore data by software control when system switching occurs, and require special software control. Since it takes time from occurrence of data to data restoration, the system may stop during that time.

さらに、共有の記憶装置を有する二重化系切替装置として、運用系、待機系のそれぞれが、CPU、共用メモリ、アービタ回路を有し、運用系の障害発生時、バスを切断することなく、運用系から待機系に切り替える系切替手段を備え、バス通信を停止することなく、処理中のデータの紛失量を抑えた系切替を行う装置及び方法も知られている(例えば後記特許文献5参照)。さらに、運用系サーバと待機系サーバの間に共有ディスクを備え、各サーバは、当該サーバが運用系か待機系か識別するための運用モード情報を管理する運用モード管理部と、自己の障害発生時には、他のサーバ及びクライアントに障害発生を通知する構成制御管理部を備え、運用系サーバに障害が発生した場合の待機系サーバへの引き継ぎが迅速かつ円滑に行われるシステムも知られている(例えば後記特許文献6参照)。   Further, as a redundant system switching device having a shared storage device, each of the active system and the standby system has a CPU, a shared memory, and an arbiter circuit, and the operating system is disconnected without disconnecting the bus when an operating system failure occurs. There is also known an apparatus and method that includes system switching means for switching from a standby system to a standby system, and performs system switching while suppressing loss of data being processed without stopping bus communication (see, for example, Patent Document 5 below). Furthermore, a shared disk is provided between the active server and the standby server, and each server has an operation mode management unit that manages operation mode information for identifying whether the server is the active system or the standby system, and a self-failure has occurred. There is also known a system that includes a configuration control management unit for notifying other servers and clients of the occurrence of a failure, and that when a failure occurs in the active server, the takeover to the standby server is performed quickly and smoothly ( For example, see Patent Document 6 below).

特開平11−249923号公報(第3頁、第1図)Japanese Patent Application Laid-Open No. 11-249923 (page 3, FIG. 1) 特開平07−287694号公報(第3頁、第1図)。JP 07-287694 A (page 3, FIG. 1). 特開平05−244260号公報(第3頁、第1図)、JP 05-244260 A (page 3, FIG. 1), 特開昭62−263554(第3頁、第1図)。JP-A 62-263554 (page 3, FIG. 1). 特開2002−63047号公報(第3、4頁、第1図)JP 2002-63047 A (3rd, 4th page, FIG. 1) 特開2003−22259号公報(第3−5頁、第1図)JP 2003-22259 A (page 3-5, FIG. 1)

上記したように、従来の二重化システムにおいては、現用系と予備系の2つの制御装置間におけるデータ伝送は、ノイズ等を考慮して、最高伝送速度で行うことは回避され、比較的低速で行われることから、データ転送の処理性能が低下し、システム性能も低下してしまう、という問題点を有している。   As described above, in the conventional duplex system, data transmission between the two control devices of the active system and the standby system is avoided at the maximum transmission speed in consideration of noise and the like, and is performed at a relatively low speed. Therefore, there is a problem that the processing performance of data transfer is lowered and the system performance is also lowered.

また、系の切り替え発生時に、ソフトウェア制御にて、データを復元する構成においては、専用のソフトウェア制御が必要とされ、コスト高ともなる。   In addition, in a configuration in which data is restored by software control when system switching occurs, dedicated software control is required, which increases costs.

また、ソフトウェア制御によるデータ復元処理においては、系の切り替えの発生時点から、データの復元までに、時間を要する。このため、その間、システムが停止する可能性もある、という問題点を有している。   Further, in the data restoration processing by software control, it takes time from the time of system switching to the restoration of data. For this reason, there is a problem that the system may stop during that time.

したがって、本発明の目的は、システムの処理性能の低下を回避し、高速化を図るとともに信頼性を向上する二重化装置と方法を提供することにある。   SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to provide a duplexing apparatus and method that avoids a decrease in the processing performance of the system, increases the speed, and improves the reliability.

本発明の他の目的は、データバックアップ等の特別なソフトウェア処理を必要とせずに系の切り替えを可能とし、コストの低減を図りながら、系切替の高速化、高信頼性を図る二重化装置と方法を提供することにある。   Another object of the present invention is to provide a duplexing apparatus and method that enables system switching without requiring special software processing such as data backup, and achieves high-speed and high-reliability system switching while reducing costs. Is to provide.

前記目的を達成する本発明は、その概略を述べれば、現用系と予備系を具備してなる二重化システム装置において、現用系と予備系に共有の記録装置を設け、各系内のメモリ制御部内に判別フラグを設け、系の切り替え時以外は、高速なメインメモリへのアクセスを可能とし、データ転送処理の高速化を図っている。本発明の一のアスペクトに係る装置は、一方が現用系のとき他方は予備系とされ、それぞれが、現用系から予備系、予備系から現用系に、系の切替が自在とされてなる2つの制御装置と、前記2つの制御装置で共用される共有記録装置と、を少なくとも含み、前記2つの制御装置のそれぞれが、CPU(中央処理装置)と、メモリと、データの書き込み及び読み出しを制御するメモリ制御部と、を有し、前記メモリ制御部は、前記メモリに関して予め定められたメモリ領域毎にデータの有効/無効を示すフラグ情報を有し、前記現用系の制御装置の前記メモリ制御部は、前記現用系の制御装置の前記CPUからの書き込みデータを、前記フラグ情報に基づき、前記現用系の制御装置内の前記メモリと、前記共有記録装置とに記憶保持し、前記現用系の制御装置の前記CPUからのデータ読み出し要求に対して、前記フラグ情報に基づき、前記現用系の制御装置内のメモリ、又は前記共有記録装置からデータを読み出して、前記現用系の制御装置の前記CPUに供給する手段を備えている。   The present invention that achieves the above-described object can be summarized as follows. In a duplex system apparatus comprising an active system and a standby system, a shared recording device is provided in the active system and the standby system, and the memory controller in each system is provided. Is provided with a determination flag, which enables high-speed access to the main memory except during system switching, thereby speeding up data transfer processing. The apparatus according to one aspect of the present invention is configured such that when one is the active system, the other is a standby system, and each of the systems can be freely switched from the active system to the standby system and from the standby system to the active system. Including at least one control device and a shared recording device shared by the two control devices, each of the two control devices controlling a CPU (Central Processing Unit), a memory, and data writing and reading. A memory control unit, and the memory control unit has flag information indicating validity / invalidity of data for each predetermined memory area with respect to the memory, and the memory control of the active control device The unit stores and holds the write data from the CPU of the active control device in the memory and the shared recording device in the active control device based on the flag information, In response to a data read request from the CPU of the active control device, the active control device reads out data from the memory in the active control device or the shared recording device based on the flag information. Means for supplying to the CPU.

本発明に係る装置において、前記現用系の制御装置の前記メモリ制御部は、前記現用系の制御装置の前記CPUからのデータの書き込み要求を受けた際に、書き込みアドレスに対応するメモリ領域の前記フラグ情報が有効を示す場合には、前記書き込みデータを、前記現用系の制御装置の前記メモリと、前記共有記録装置とに書き込み、一方、前記フラグ情報が無効を示す場合には、前記書き込みアドレスに対応して前記共有記録装置から読み出されたデータと、前記CPUからの前記書き込みデータとを併合してなるデータを、最新データとして、前記現用系の制御装置の前記メモリと、前記共有記録装置とに書き込み、前記フラグ情報を有効とする、制御を行う構成としてもよい。   In the device according to the present invention, when the memory control unit of the active control device receives a data write request from the CPU of the active control device, the memory control unit in the memory area corresponding to a write address When the flag information indicates valid, the write data is written into the memory of the active control device and the shared recording device, whereas when the flag information indicates invalid, the write address Corresponding to the data read from the shared recording device and the data obtained by merging the write data from the CPU as the latest data, the memory of the active control device, and the shared recording It is good also as a structure which performs control which writes in an apparatus and validates the said flag information.

また、本発明に係る装置において、前記現用系の制御装置の前記メモリ制御部は、前記現用系の制御装置の前記CPUからのデータの読み出し要求を受けた際に、読み出しアドレスに対応するメモリ領域の前記フラグ情報が有効を示す場合には、前記現用系の制御装置の前記メモリからデータを読み出して、前記現用系の制御装置の前記CPUに転送し、一方、前記フラグ情報が無効を示す場合には、前記共有記録装置からデータを読み出し、前記共有記録装置から読み出したデータを、前記現用系の制御装置の前記CPUに転送するとともに、前記現用系の制御装置の前記メモリに書き込み、前記フラグ情報を有効とする、制御を行う構成としてもよい。   In the device according to the present invention, the memory control unit of the active control device may receive a data read request from the CPU of the active control device, and the memory area corresponding to the read address When the flag information indicates valid, the data is read from the memory of the active control device and transferred to the CPU of the active control device, while the flag information indicates invalid Reading the data from the shared recording device, transferring the data read from the shared recording device to the CPU of the active control device, writing to the memory of the active control device, and the flag It is good also as a structure which performs control which validates information.

本発明に係る装置によれば、好ましくは、前記現用系の制御装置から、前記予備系の制御装置へ系切替を通知するための通信線を有する。前記予備系の制御装置の予備系から現用系への系切替に際して、予備系から現用系に切り替わった前記制御装置の前記メモリ制御部は、自装置のCPUからのデータ処理アクセスを受け付けた場合、前記アクセスのアドレスに対応するメモリ領域のフラグ情報が有効であるか否か判定する。この判定の結果、前記フラグ情報が無効の場合に、前記アクセスアドレスに対応して前記共有記録装置からデータを読み出し、前記アクセスがデータ書き込みのときには、前記共有記録装置から読み出したデータと、前記CPUからの書き込みデータとを併合し、併合したデータを、前記メモリと前記共有記録装置とに書き込み、前記アクセスがデータ読み出しのときには、前記メモリへ前記読み出しデータを書き込み、前記メモリ領域に対応するフラグ情報を有効とし、一方、前記判定の結果、前記フラグ情報が有効の場合、前記アクセスがデータ書き込みのときには、前記メモリ及び前記共有記録装置にデータを書き込み、前記アクセスがデータ読み出しのときには、前記メモリからデータを読み出す、制御を行う構成としてもよい。   The apparatus according to the present invention preferably has a communication line for notifying system switching from the active control apparatus to the standby control apparatus. When switching the standby control device from the standby system to the active system, the memory control unit of the control device switched from the standby system to the active system receives data processing access from the CPU of its own device, It is determined whether or not the flag information in the memory area corresponding to the access address is valid. As a result of the determination, when the flag information is invalid, data is read from the shared recording device corresponding to the access address, and when the access is data writing, the data read from the shared recording device and the CPU The merged data is merged into the memory and the shared recording device, and when the access is data read, the read data is written into the memory, and flag information corresponding to the memory area On the other hand, if the flag information is valid as a result of the determination, when the access is data writing, the data is written to the memory and the shared recording device, and when the access is data reading, from the memory It is good also as a structure which performs control which reads data.

本発明に係る装置において、前記メモリ制御部は、前記フラグ情報が有効、無効の判別は、ハードウェア回路で行われ、高速化を実現している。   In the apparatus according to the present invention, the memory control unit determines whether the flag information is valid or invalid by a hardware circuit, thereby realizing high speed.

本発明において、前記メモリ制御部は、前記共有記録装置との間でのデータの入出力を行うための少なくとも1つのデータバッファを備え、前記CPUから転送されたデータを、前記データバッファに一旦蓄積した後、前記共有記録装置に転送される構成としてもよい。   In the present invention, the memory control unit includes at least one data buffer for inputting / outputting data to / from the shared recording device, and temporarily stores the data transferred from the CPU in the data buffer Then, it may be configured to be transferred to the shared recording device.

本発明において、前記メモリ制御部は、前記共有記録装置からデータを読み出すにあたり、前記メモリ領域に対応するデータを読み出すとともに、他のメモリ領域に対応するデータを前記共有記録装置から先読みする構成としてもよい。   In the present invention, when the memory control unit reads data from the shared recording device, the memory control unit reads data corresponding to the memory area and prefetches data corresponding to another memory area from the shared recording device. Good.

本発明の他のアスペクトに係る方法は、一方が現用系のとき他方は予備系とされ、それぞれが、現用系から予備系、予備系から現用系に、系の切替が自在とされてなる2つの制御装置と、前記2つの制御装置で共用される共有記録装置と、を少なくとも含み、前記2つの制御装置のそれぞれが、CPUと、メモリと、データの書き込み及び読み出しを制御するメモリ制御部と、を有し、 前記メモリ制御部内に、前記メモリに関して予め定められたメモリ領域毎にデータの有効/無効を示すフラグ情報を有する二重化装置による、データ二重化方法であって、
現用系の制御装置が運用中に、前記現用系の制御装置の前記メモリ制御部は、前記現用系の制御装置の前記CPUからの書き込みデータを、前記フラグ情報に基づき、前記現用系の制御装置内の前記メモリと、前記共有記録装置とに記憶保持するステップと、
前記現用系の制御装置の前記CPUからのデータ読み出し要求に対して、前記フラグ情報に基づき、前記現用系の制御装置内のメモリ、又は前記共有記録装置からデータを読み出して、前記現用系の制御装置の前記CPUに供給するステップと、を含む。
In the method according to another aspect of the present invention, when one is an active system, the other is a standby system, and each of the systems can be freely switched from the active system to the standby system and from the standby system to the active system. Including at least one control device and a shared recording device shared by the two control devices, and each of the two control devices includes a CPU, a memory, and a memory control unit that controls writing and reading of data. A data duplication method by a duplication device having flag information indicating validity / invalidity of data for each memory area predetermined for the memory in the memory control unit,
While the active control device is in operation, the memory control unit of the active control device uses the write data from the CPU of the active control device based on the flag information as the active control device. Storing and holding in the memory and the shared recording device,
In response to a data read request from the CPU of the active control device, based on the flag information, data is read from the memory in the active control device or the shared recording device, and the active control Supplying to the CPU of the apparatus.

本発明に係る方法において、前記現用系の制御装置の前記メモリ制御部が、前記現用系の制御装置の前記CPUからのデータの書き込み要求を受けた際に、
書き込みアドレスに対応するメモリ領域の前記フラグ情報が有効を示す場合には、前記書き込みデータを、前記現用系の制御装置の前記メモリと、前記共有記録装置とに書き込むステップと、
一方、前記フラグ情報が無効を示す場合には、前記書き込みアドレスに対応して前記共有記録装置から読み出されたデータと、前記CPUからの前記書き込みデータとを併合してなるデータを、最新データとして、前記現用系の制御装置の前記メモリと、前記共有記録装置とに書き込み、前記フラグ情報を有効とする、制御を行う、ステップと、を含む構成としてもよい。
In the method according to the present invention, when the memory control unit of the active control device receives a data write request from the CPU of the active control device,
If the flag information in the memory area corresponding to the write address indicates valid, writing the write data to the memory of the active control device and the shared recording device;
On the other hand, if the flag information indicates invalidity, the data obtained by merging the data read from the shared recording device corresponding to the write address and the write data from the CPU is the latest data. As another example, the information processing apparatus may include a step of writing to the memory of the active control device and the shared recording device, enabling the flag information, and performing control.

本発明に係る方法において、前記現用系の制御装置の前記メモリ制御部が、前記現用系の制御装置の前記CPUからのデータの読み出し要求を受けた際に、
読み出しアドレスに対応するメモリ領域の前記フラグ情報が有効を示す場合には、前記現用系の制御装置の前記メモリからデータを読み出して、前記現用系の制御装置の前記CPUに供給するステップと、
一方、前記フラグ情報が無効を示す場合には、前記共有記録装置からデータを読み出し、前記共有記録装置から読み出したデータを、前記現用系の制御装置の前記CPUに転送するとともに、前記現用系の制御装置の前記メモリに書き込み、前記フラグ情報を有効とする、制御を行うステップと、を含む構成としてもよい。
In the method according to the present invention, when the memory control unit of the active control device receives a data read request from the CPU of the active control device,
If the flag information in the memory area corresponding to the read address indicates valid, reading data from the memory of the active control device and supplying the data to the CPU of the active control device;
On the other hand, when the flag information indicates invalid, the data is read from the shared recording device, the data read from the shared recording device is transferred to the CPU of the active control device, and the active And a step of performing control to write the flag information in the memory of the control device and validate the flag information.

本発明によれば、現用系と予備系を具備してなる二重化システム装置において、現用系と予備系に共有の記録装置を設け、各系内のメモリ制御部内に判別ビットを設け、系の切り替え時以外は、高速なメインメモリへのアクセスを可能とし、データ転送処理の高速化を図っている。   According to the present invention, in a duplex system apparatus comprising an active system and a standby system, a shared recording device is provided for the active system and the standby system, a discrimination bit is provided in the memory control unit in each system, and system switching is performed. At other times, high-speed access to the main memory is possible, and data transfer processing is speeded up.

また、本発明によれば、系の切替えのために、データバックアップ等の特別なソフトウェア処理を必要とせず、このため、コストの低減を図るとともに、系切替の高速化を図ることができる。   In addition, according to the present invention, special software processing such as data backup is not required for system switching, so that costs can be reduced and system switching speed can be increased.

本発明をより詳細に説述するために、添付図面を参照して以下に説明する。図1に示すように、本発明の一実施の形態に係る二重化装置は、現用系の制御装置(1a)と、予備系の制御装置(1b)とを備え、さらに、現用系の制御装置(1a)と予備系の制御装置(1b)とに、共有バス(19)を介して接続される、ディスク記録装置等よりなる共有記録装置(17)を備えている。予備系の制御装置(1b)は、例えば現用系の制御装置(1a)に障害発生時に、現用系に系の切替えが行われて運用される。   In order to describe the present invention in more detail, it will be described below with reference to the accompanying drawings. As shown in FIG. 1, a duplexer according to an embodiment of the present invention includes an active control device (1a) and a standby control device (1b), and further includes an active control device ( 1a) and a standby control device (1b) are provided with a shared recording device (17) comprising a disk recording device or the like connected via a shared bus (19). The standby control device (1b) is operated by switching the system to the active system, for example, when a failure occurs in the active control device (1a).

現用系の制御装置(1a)は、CPU(11)と、メモリ制御部(12)と、メインメモリ(13)を備えている。予備系の制御装置(1b)も、現用系の制御装置(1a)と同様に、CPU(14)と、メモリ制御部(15)と、メインメモリ(16)を備えている。現用系の制御装置(1a)と予備系の制御装置(1b)は同一の構成要素を有する。   The active control device (1a) includes a CPU (11), a memory control unit (12), and a main memory (13). Similarly to the active control device (1a), the standby control device (1b) also includes a CPU (14), a memory control unit (15), and a main memory (16). The active control device (1a) and the standby control device (1b) have the same components.

本発明の一実施形態において、現用系の制御装置(1a)が運用中に、CPU(11)が使用する最新データは、常に、メインメモリ(13)と共有記録装置(17)とに保持される。   In one embodiment of the present invention, the latest data used by the CPU (11) is always held in the main memory (13) and the shared recording device (17) while the active control device (1a) is in operation. The

現用系の制御装置(1a)のメモリ制御部(12)と、予備系の制御装置(1b)のメモリ制御部(15)間には、通信バス(18)が設けられている。現用系の制御装置(1a)のメモリ制御部(12)と、予備系の制御装置(1b)のメモリ制御部(15)は、共有バス(19)を介して共有記録装置(17)に接続されている。   A communication bus (18) is provided between the memory control unit (12) of the active control device (1a) and the memory control unit (15) of the standby control device (1b). The memory control unit (12) of the active control device (1a) and the memory control unit (15) of the standby control device (1b) are connected to the shared recording device (17) via the shared bus (19). Has been.

図2は、制御装置(1a)のメモリ制御部(12)(及び制御装置(1b)のメモリ制御部(15))の構成を示す図である。図2に示すように、制御装置(1a)のメモリ制御部(12)は、メインメモリ(13)に保持されるデータが有効(最新)であるか否かを判別するためのフラグ情報をなすデータ判別ビット(21)を有している。メモリ制御部(12)は、データ判別ビット(21)の値(有効/無効)に従い、メインメモリ(13)又は共有記録装置(17)から最新データを読み取る。制御装置(1b)のメモリ制御部(15)は、メインメモリ(16)に保持されるデータが有効(最新)であるか否かを判別するデータ判別ビット(27)を有している。メモリ制御部(15)は、データ判別ビット(27)の値(有効/無効)に従い、メインメモリ(16)又は共有記録装置(17)から最新データを読み取る。データ判別ビット(21/27)は、メインメモリ(13/16)の所定のサイズのメモリ領域(エリア)に対して1ビット割り当てられる。   FIG. 2 is a diagram illustrating a configuration of the memory control unit (12) of the control device (1a) (and the memory control unit (15) of the control device (1b)). As shown in FIG. 2, the memory control unit (12) of the control device (1a) forms flag information for determining whether or not the data held in the main memory (13) is valid (latest). It has a data discrimination bit (21). The memory control unit (12) reads the latest data from the main memory (13) or the shared recording device (17) according to the value (valid / invalid) of the data discrimination bit (21). The memory control unit (15) of the control device (1b) has a data determination bit (27) for determining whether or not the data held in the main memory (16) is valid (latest). The memory control unit (15) reads the latest data from the main memory (16) or the shared recording device (17) according to the value (valid / invalid) of the data discrimination bit (27). The data discrimination bit (21/27) is assigned 1 bit to a memory area (area) of a predetermined size in the main memory (13/16).

現用系の制御装置(1a)の障害等により、系の切り替えが行われ、予備系の制御装置(1b)の運用が開始された際、それまで予備系であった制御装置(1b)において、最新データは、共有記録装置(17)にのみ存在する。このため、制御装置(1b)のメモリ制御部(15)のデータ判別ビット(27)は全て無効状態となっている。   When the system is switched due to a failure of the active control device (1a) and the operation of the standby control device (1b) is started, in the control device (1b) that has been the standby system until then, The latest data exists only in the shared recording device (17). For this reason, all the data discrimination bits (27) of the memory control unit (15) of the control device (1b) are in an invalid state.

制御装置(1b)のCPU(14)からデータ要求があった場合、メモリ制御部(15)は、データ判別ビット(27)の内容に従い、最新データを、共有記録装置(17)より読み出す。   When there is a data request from the CPU (14) of the control device (1b), the memory control unit (15) reads the latest data from the shared recording device (17) according to the contents of the data discrimination bit (27).

共有記録装置(17)から読み出されたデータは、CPU(14)に転送されると共に、メインメモリ(16)に保存され、対応するデータ判別ビット(27)の更新(有効(バリッド)へ更新)が行われる。   The data read from the shared recording device (17) is transferred to the CPU (14) and stored in the main memory (16), and the corresponding data discrimination bit (27) is updated (valid). ) Is performed.

かかる制御により、予備系から現用系に切り替わった制御装置(1b)において、次回からの該当メモリ領域へのアクセスは、メモリ制御部(15)により、転送速度が、共有記録装置(17)よりも高速なメインメモリ(16)が選択され、データ転送処理の高速化を図ることができる。   With this control, in the control device (1b) that is switched from the standby system to the active system, the memory control unit (15) accesses the corresponding memory area from the next time so that the transfer speed is higher than that of the shared recording device (17). A high-speed main memory (16) is selected, and the data transfer process can be speeded up.

本発明についてさらに詳細に説明すべく実施例に即して説明する。図1は、本発明の一実施例の構成を示す図である。図1を参照すると、本発明の一実施例において、現用系の制御装置1aは、データ転送処理を実行するCPU11と、データを記憶する高速なメインメモリ13と、メインメモリ13を制御するメモリ制御部12と、を有している。同様に、予備系の制御装置1bは、CPU14と、メインメモリ16、メモリ制御部15とを有している。現用系の制御装置1aと、予備系の制御装置1bには共有バス19を介して、共有記録装置17が接続されている。本実施例において、共有バス19は、高速、且つ、耐ノイズ性の点から、例えばATA133、Serial−ATA、IEEE1394、USB2.0等の汎用バスが好ましくは用いられる。共有記録装置17は、共有バス19に接続可能な記録装置である。また、制御装置1aと制御装置1bは、故障発生時等に、系の切り替えに必要な情報を伝達するための通信バス18を有している。   The present invention will be described with reference to examples in order to explain it in more detail. FIG. 1 is a diagram showing the configuration of an embodiment of the present invention. Referring to FIG. 1, in one embodiment of the present invention, an active control device 1 a includes a CPU 11 that executes data transfer processing, a high-speed main memory 13 that stores data, and a memory control that controls the main memory 13. Part 12. Similarly, the standby control device 1 b includes a CPU 14, a main memory 16, and a memory control unit 15. A shared recording device 17 is connected to the active control device 1 a and the standby control device 1 b via a shared bus 19. In the present embodiment, the shared bus 19 is preferably a general-purpose bus such as ATA 133, Serial-ATA, IEEE 1394, USB 2.0, etc., from the viewpoint of high speed and noise resistance. The shared recording device 17 is a recording device that can be connected to the shared bus 19. In addition, the control device 1a and the control device 1b have a communication bus 18 for transmitting information necessary for system switching when a failure occurs.

現用系の制御装置1aが運用中は、最新データ(あるいは最も近くに更新されたデータ)は、メインメモリ13に書き込まれると同時に、共有バス19を経由して、共有記録装置17に記録される。これにより、データの二重化が実現される。   While the active control device 1a is in operation, the latest data (or the data updated most recently) is written into the main memory 13 and simultaneously recorded in the shared recording device 17 via the shared bus 19. . Thereby, data duplication is realized.

図2に示すように、現用系の制御装置1aのメモリ制御部12は、データバッファ26を有しており、アクセス速度が、メインメモリ13に対して遅い共有記録装置17への書き込み時間の差による、処理速度の低下を回避する。制御装置1aのCPU11からの書き込みデータは、メモリ制御部12に転送され、メモリ制御部12では、データバッファ26を用いて例えばダブルバッファ処理、DMA(Direct Memory Access)等(ブロック転送)により、共有記録装置17への書き込みを行うことで、I/O時間の短縮を図っている。   As shown in FIG. 2, the memory control unit 12 of the active control device 1 a has a data buffer 26, and the difference in writing time to the shared recording device 17 whose access speed is slower than the main memory 13. To avoid a decrease in processing speed. Write data from the CPU 11 of the control device 1a is transferred to the memory control unit 12, and the memory control unit 12 uses the data buffer 26 to share, for example, by double buffer processing, DMA (Direct Memory Access) or the like (block transfer). By writing to the recording device 17, the I / O time is shortened.

また、図2のように、メモリ制御部12は、データ判別ビット21を有しており、最新データが、メインメモリ13に存在するか、あるいは、共有記録装置17に存在するかを判別することができる。データ判別ビット21は、任意のサイズに設定可能な、メモリ領域(エリア)に対して、1ビットが割り当てられる。メモリ領域のサイズは、例えばmKバイト単位(mは任意の整数)とされ、少なくともデータの書き込み(更新)が行われるメインメモリ13(16)のメモリ空間をmKバイトで除した分の個数のデータ判別ビット21(27)がメモリ領域に対応して設けられる。メモリ制御部12(15)は、CPU11(14)からのアクセスアドレスより、対応するデータ判別ビット21(27)を参照することができる。図2に示す例では、メインメモリ(図1の13(16))は、メモリ領域は、エリアaからエリアnよりなり、各エリアに対応してデータ判別ビット22〜25(28〜31)が設けられている。データ判別ビット21(27)は、レジスタ、メモリ等の任意の記憶装置で構成してよい。   As shown in FIG. 2, the memory control unit 12 has a data discrimination bit 21 and discriminates whether the latest data exists in the main memory 13 or the shared recording device 17. Can do. The data determination bit 21 is assigned 1 bit to a memory area (area) that can be set to an arbitrary size. The size of the memory area is, for example, in units of mK bytes (m is an arbitrary integer), and at least the number of data obtained by dividing the memory space of the main memory 13 (16) where data is written (updated) by mK bytes. A discrimination bit 21 (27) is provided corresponding to the memory area. The memory control unit 12 (15) can refer to the corresponding data determination bit 21 (27) from the access address from the CPU 11 (14). In the example shown in FIG. 2, the main memory (13 (16) in FIG. 1) has a memory area composed of area a to area n, and data discrimination bits 22 to 25 (28 to 31) corresponding to each area. Is provided. The data discriminating bit 21 (27) may be composed of an arbitrary storage device such as a register or a memory.

現用系の制御装置1aにおいて、CPU11からデータの読み出し要求が発生した際、メモリ制御部12は、アクセスアドレスに対応するメモリ領域のデータ判別ビット21に従い、メインメモリ13、又は、共有記録装置17からデータを読み出す。   In the active control device 1 a, when a data read request is generated from the CPU 11, the memory control unit 12 receives data from the main memory 13 or the shared recording device 17 according to the data determination bit 21 in the memory area corresponding to the access address. Read data.

データ判別ビット21が無効を示し(最新のデータがメインメモリ13に存在しない)、最新のデータが共有記録装置17に存在しており、メモリ制御部12が、共有記録装置17からデータを読み出した場合には、メモリ制御部12は、該データをCPU11に転送するとともに、メインメモリ13への書き込みを行い、データ判別ビット21を有効とする。これ以降、CPU11から、該当メモリ領域へのアクセスがあった際には、データ判別ビット21が有効に設定されているため、メインメモリ13からデータの読み出しが行われ、処理が高速化される。   The data determination bit 21 indicates invalidity (the latest data does not exist in the main memory 13), the latest data exists in the shared recording device 17, and the memory control unit 12 reads the data from the shared recording device 17. In this case, the memory control unit 12 transfers the data to the CPU 11 and writes it into the main memory 13 to validate the data determination bit 21. Thereafter, when the CPU 11 accesses the corresponding memory area, the data discrimination bit 21 is set valid, so that data is read from the main memory 13 and the processing speed is increased.

図3は、図1に示した本実施例において、CPUからのデータ読み出し時におけるデータの流れを説明するための模式図である。   FIG. 3 is a schematic diagram for explaining the flow of data when reading data from the CPU in this embodiment shown in FIG.

図4は、図1に示した本実施例において、CPUからのデータ書き込み時におけるデータの流れを説明するための模式図である。   FIG. 4 is a schematic diagram for explaining the flow of data at the time of data writing from the CPU in the present embodiment shown in FIG.

本実施例の動作について、図1、図2、図3、図4を参照して説明する。図5は、本実施例の動作を説明するためのフローチャートである。   The operation of this embodiment will be described with reference to FIG. 1, FIG. 2, FIG. 3, and FIG. FIG. 5 is a flowchart for explaining the operation of this embodiment.

信頼性を必要とするシステムにおいては、図1に示すように、現用系/予備系の二重化構成をとり、現用系が故障した際には系の切り替えが行われ、システムが停止することを回避している。   In a system that requires reliability, as shown in Fig. 1, a redundant configuration of the active system and the standby system is adopted, and when the active system fails, the system is switched to avoid the system from shutting down. is doing.

通常運用時の場合、現用系の制御装置1aが運用状態とされており、CPU11からのデータの読み出しは、メインメモリ13より、図3のアクセスaのルート(経路)で実行される。また、通常運用時のCPU11からのデータの書き込みは、図4のアクセスcのルートにて、メインメモリ13と共有記録装置17に対して同時に実行される。   In the normal operation, the active control device 1a is in an operating state, and reading of data from the CPU 11 is executed from the main memory 13 through the route (path) of access a in FIG. Further, data writing from the CPU 11 during normal operation is executed simultaneously to the main memory 13 and the shared recording device 17 through the route of access c in FIG.

かかる構成により、現用系のメインメモリ13と、共有記録装置17とには、常に、最新データが保持されることになる。   With this configuration, the current main memory 13 and the shared recording device 17 always hold the latest data.

メインメモリ13と比べて、共有記録装置17のアクセス速度は比較的低速とされるが、連続ライト時のシステム処理速度の低下を回避するために、メモリ制御部12内には、データバッファ26(図2参照)が設けられている。   Although the access speed of the shared recording device 17 is relatively low compared to the main memory 13, in order to avoid a decrease in the system processing speed during continuous writing, the data buffer 26 ( 2).

連続ライトの時は、一時的に、このデータバッファ26にデータが保存され、メインメモリ13側へのアクセスに対して、影響を与えない構成とされる。ただし、メモリ制御部12のデータバッファ26が、全てフル状態となった場合においては、次のCPU11からのライト要求を受け付けず、待ち状態(CPU11のライト要求はウエイトされる)として処理する。データバッファ26に空きが生じた場合、CPU11側にレディ等を通知し、CPU11からのライトデータは、メインメモリ13及びデータバッファ26に書き込まれる。   At the time of continuous writing, data is temporarily stored in the data buffer 26, and the access to the main memory 13 side is not affected. However, when all the data buffers 26 of the memory control unit 12 are in a full state, the write request from the next CPU 11 is not accepted, and it is processed as a waiting state (the write request of the CPU 11 is waited). When the data buffer 26 becomes empty, the CPU 11 side is notified of ready or the like, and write data from the CPU 11 is written into the main memory 13 and the data buffer 26.

予備系の制御装置1bのメモリ制御部15は、自装置の現用系/予備系の状態を判別し、共有バス19の出力を停止し、バスの競合を回避する。   The memory control unit 15 of the standby control device 1b determines the status of the active / standby system of its own device, stops the output of the shared bus 19, and avoids bus contention.

ここで、現用系の制御装置1aに故障等が発生した場合、現用系の制御装置1aのメモリ制御部12は、データバッファ26の状態を監視して、データバッファ26の処理完了を判断した時点で、通信バス18を介して、切り替え情報を伝達する。この処理により、現用系と予備系の切り替えが実行され、それまで予備系であった制御装置1bは、現用系に切り替えられて、運用が開始される。この時、現用系から予備系に切り替えられた制御装置1aのメモリ制御部12は、共有バス19への出力を停止し(バスドライバの出力をハイインピーダンス状態とする)、現用系となったメモリ制御部15が、共有バス19の占有権を確保する。   Here, when a failure or the like occurs in the active control device 1a, the memory control unit 12 of the active control device 1a monitors the state of the data buffer 26 and determines that the processing of the data buffer 26 is completed. Thus, the switching information is transmitted via the communication bus 18. By this processing, switching between the active system and the standby system is executed, and the control device 1b that has been the standby system until then is switched to the active system and starts operation. At this time, the memory control unit 12 of the control device 1a switched from the active system to the standby system stops the output to the shared bus 19 (the bus driver output is set to the high impedance state), and the memory becomes the active system. The control unit 15 secures the occupation right of the shared bus 19.

系が切り替えられ、現用系となった制御装置1bにおいて、CPU14からデータアクセス要求が発生した場合、メモリ制御部15は、データ判別ビット27(図2参照)に従って、データアクセスを実行する。データ判別ビット27は、任意の大きさに区切られたメモリ領域に対して各々割り当てられている。   When the system is switched and the data access request is generated from the CPU 14 in the control device 1b which is the active system, the memory control unit 15 executes data access according to the data determination bit 27 (see FIG. 2). The data discrimination bit 27 is assigned to each memory area divided into arbitrary sizes.

次に、図5を参照して、本実施例における、系切り替え後における動作について説明する。   Next, with reference to FIG. 5, the operation after system switching in the present embodiment will be described.

現用系となった制御装置1bのメモリ制御部15は、CPU14からのデータ転送処理アクセスを受け付けた際(ステップ50)、該アクセスのアドレスが含まれるメモリ領域(エリア)のデータ判別ビット27が有効であるか無効であるかを判別する(ステップ51)。   When the memory control unit 15 of the control device 1b which has become the active system receives a data transfer processing access from the CPU 14 (step 50), the data determination bit 27 of the memory area (area) including the access address is valid. It is discriminated whether it is invalid or not (step 51).

該メモリ領域のデータ判別ビット27が無効である場合(ステップ51のNO分岐)、メモリ制御部15は、対応するメモリ領域の最新データは、共有記録装置17にあるものと判断し、共有記録装置17から、データを読み出す(ステップ55)。ステップ51で、系の切り替え実行後、初めてアクセスする領域の場合、メモリ領域のデータ判別ビット27が無効となる。   If the data determination bit 27 of the memory area is invalid (NO branch of step 51), the memory control unit 15 determines that the latest data of the corresponding memory area is in the shared recording device 17, and the shared recording device Data is read from 17 (step 55). In step 51, in the case of an area accessed for the first time after execution of system switching, the data discrimination bit 27 in the memory area becomes invalid.

そして、該データアクセスが、ライトアクセスの時(ステップ56のYES分岐)、図4のアクセスdのルートに従って、メモリ制御部15内で、CPU14からの更新すべきアドレスのデータのみの更新(データマージ)が行われる。すなわち、データ判別ビット27に対応するメモリ領域内において、更新すべきアドレスのデータのみ更新され、他のアドレスのデータはそのまま保持される。   When the data access is a write access (YES branch at step 56), only the data of the address to be updated from the CPU 14 is updated (data merge) in the memory control unit 15 in accordance with the route of access d in FIG. ) Is performed. That is, in the memory area corresponding to the data discrimination bit 27, only the data at the address to be updated is updated, and the data at the other addresses are held as they are.

その後、メインメモリ16、及び、共有記録装置17に、データを書き込み、最新データの二重化を実行する(ステップ57)。データの書き込みが完了した後、該エリアのデータ判別ビット27を有効に更新する(ステップ59)。   Thereafter, the data is written into the main memory 16 and the shared recording device 17, and the latest data is duplicated (step 57). After the data writing is completed, the data discrimination bit 27 of the area is updated effectively (step 59).

また、該エリアのデータ判別ビット27が無効であり、該アクセスがリードアクセスの場合(ステップ56)、図3のアクセスbのルートに従って、データ判別ビット27に対応したメモリ領域のデータを、共有記録装置17から読み出し、CPU14からの要求データをCPU14へ転送すると共に、読み出したエリアのデータはメインメモリ16に書き込みを実行する(ステップ58)。その後、該当エリアの内部判別ビット27を有効に更新する(ステップ59)。   If the data discrimination bit 27 of the area is invalid and the access is a read access (step 56), the data in the memory area corresponding to the data discrimination bit 27 is shared and recorded according to the route of access b in FIG. The data read from the device 17 and the request data from the CPU 14 are transferred to the CPU 14 and the data in the read area is written to the main memory 16 (step 58). Thereafter, the internal determination bit 27 of the corresponding area is effectively updated (step 59).

次に、該当エリアのデータ判別ビット27が有効であり(ステップ51のYES分岐)、該当アクセスがライトアクセスである場合(ステップ52のYES分岐)(一度アクセスが実行され、データ判別ビット27が更新されたエリアの場合)は、メモリ制御部15は、最新データがメインメモリ16、及び、共有記録装置17に存在しているものと判断し、図4のアクセスcのルートに従って、メインメモリ16、及び、共有記録装置17へデータを書き込み、最新データの二重化を実行する(ステップ53)。   Next, if the data discrimination bit 27 of the corresponding area is valid (YES branch of step 51), and the corresponding access is a write access (YES branch of step 52) (access is executed once, the data discrimination bit 27 is updated. The memory control unit 15 determines that the latest data exists in the main memory 16 and the shared recording device 17, and follows the route of access c in FIG. Then, data is written to the shared recording device 17 and the latest data is duplicated (step 53).

また、該当エリアのデータ判別ビット27が有効であり(ステップ51のYES分岐)、該当アクセスがリードアクセスである場合(ステップ52のNO分岐)(一度アクセスが実行され、データ判別ビット27が更新されたエリアの場合)、メモリ制御部15は、最新データがメインメモリ16にあるものと判断し、図3のアクセスaのルートに従って、メインメモリ16からデータを読み出し、CPU14へ転送する(ステップ54)。   In addition, when the data discrimination bit 27 of the corresponding area is valid (YES branch of step 51) and the corresponding access is read access (NO branch of step 52) (access is executed once, the data discrimination bit 27 is updated. The memory control unit 15 determines that the latest data is in the main memory 16, reads the data from the main memory 16 according to the route of access a in FIG. 3, and transfers it to the CPU 14 (step 54). .

上記の通り、CPU14からのデータ転送処理アクセスが、無効のメモリ領域に対して発生した際に、最新データを、メインメモリ16への書き込みを実行し、データ判別ビット27を更新する。それ以降に、該当エリアへのアクセスが発生した際には、データ判別ビット27は有効に更新されているため、メインメモリ16へのアクセスとなり、データ転送処理が高速化される。   As described above, when the data transfer process access from the CPU 14 occurs in the invalid memory area, the latest data is written into the main memory 16 and the data determination bit 27 is updated. Thereafter, when an access to the corresponding area occurs, the data determination bit 27 is effectively updated, so that the main memory 16 is accessed, and the data transfer process is speeded up.

本実施例によれば、予備系の制御装置として起動された場合、予備系の制御装置のメモリ制御部のデータ判別ビットは、全て無効とされる。これによって、運用中に、系の切り替えが発生した際にも、特別なソフトウェア制御を必要とせずに、最新データの二重化を実現することができる。   According to this embodiment, when activated as a standby control device, all the data discrimination bits of the memory control unit of the standby control device are invalidated. As a result, even when system switching occurs during operation, the latest data can be duplicated without requiring special software control.

また、本実施例によれば、故障中の系(例えば元の現用系)が、装置交換等によって復旧した際にも、特別なソフトウェア制御は必要とせずに、新たに二重化システムを構築することができる。   In addition, according to the present embodiment, even when a faulty system (for example, the original active system) is recovered by device replacement or the like, a new duplex system is constructed without requiring special software control. Can do.

次に、上記した本実施例の作用効果について説明する。   Next, the function and effect of this embodiment will be described.

本実施例によれば、データアクセスのほとんどをメインメモリにて行うことが可能であるため、データ転送処理の高速化を図ることができる。本実施例によれば、現用系/予備系の切り替え時においても、一度アクセスしたメモリ領域については、次回から、メインメモリへのアクセスとなるため、運用時のほとんどがメインメモリへのアクセスとなりデータ処理が高速化される。   According to this embodiment, since most of the data access can be performed in the main memory, the data transfer process can be speeded up. According to this embodiment, even when switching between the active system and the standby system, the memory area that has been accessed once will be accessed to the main memory from the next time. Processing is speeded up.

本実施例によれば、メモリ制御部に、データ判別ビットを設け、最新データが存在するデバイス認識をハードウェアで制御可能としている。このため、現用系/予備系の切り替え時に、特別なソフトウェア制御を必要とせず、実現を容易化し、コストを低減可能としている。   According to the present embodiment, a data discrimination bit is provided in the memory control unit so that device recognition in which the latest data exists can be controlled by hardware. Therefore, no special software control is required when switching between the active system and the standby system, facilitating the implementation and reducing the cost.

図6は、本発明の第2の実施例の動作を説明するためのフローチャートである。図6を参照すると、本実施例は、図5を参照して説明した前記実施例の処理動作に対して、ステップ60とステップ64(ステップ61〜63よりなる)が追加されている。なお、図6において、図5の同一の処理ステップには、図5と同一の参照符号(ステップ番号)が付されており、以下では、重複を回避するため、前記実施例と同一ステップの説明は省略する。   FIG. 6 is a flowchart for explaining the operation of the second embodiment of the present invention. Referring to FIG. 6, in this embodiment, steps 60 and 64 (comprising steps 61 to 63) are added to the processing operation of the embodiment described with reference to FIG. In FIG. 6, the same processing steps as those in FIG. 5 are denoted by the same reference numerals (step numbers) as those in FIG. 5. Is omitted.

現用系/予備系の切り替えが発生した直後においては、予備系から現用系に切り替わった制御装置1bのCPU14からアクセス要求が発生した際に、メモリ制御部15のデータ判別ビット27が無効である状態が多々存在し、このため、共有記録装置17へのアクセス頻度が多くなる場合がある。この様な状況下では、データアクセスに時間を要し、システムのパフォーマンスが低下する可能性がある。   Immediately after the switching between the active system and the standby system occurs, when the access request is generated from the CPU 14 of the control device 1b switched from the standby system to the active system, the data determination bit 27 of the memory control unit 15 is invalid. Therefore, the access frequency to the shared recording device 17 may increase. Under such circumstances, data access takes time, and system performance may be degraded.

本実施例では、この問題を解決する手段として、メモリ制御部15(12)に、データ先読み機能を備える。CPU14からのデータ要求のアクセスアドレスが、無効エリアに該当した際、データ要求サイクルが完了した後に(ステップ59)、先の要求サイクルアドレスのインクリメントを実行する(ステップ61)。なお、共有記録装置17からのデータ読み込み後のステップ60において、先読み処理中の場合、読み出しアクセスであることから、ステップ56のライトアクセスであるか否かの判別をスキップして、該当エリアへのメインメモリの書き込み処理を行う。   In the present embodiment, as means for solving this problem, the memory control unit 15 (12) is provided with a data prefetching function. When the access address of the data request from the CPU 14 corresponds to the invalid area, after the data request cycle is completed (step 59), the previous request cycle address is incremented (step 61). In step 60 after reading data from the shared recording device 17, if pre-reading processing is in progress, it is read access, so determination of whether or not it is write access in step 56 is skipped, and the corresponding area is skipped. Performs main memory write processing.

インクリメントされたアドレスが、メモリ制御部15の先読み範囲内(先読み範囲は任意に設定可能)であり(ステップ62)、CPU14からのアクセス要求が、先読み範囲以外のエリアへ発生していない場合(ステップ63)、複数のエリアを連続して、共有記録装置17から、データの先読みを実行する(ステップ55)。   When the incremented address is within the prefetch range of the memory control unit 15 (the prefetch range can be arbitrarily set) (step 62), and an access request from the CPU 14 has not occurred in an area other than the prefetch range (step 63) Data is pre-read from the shared recording device 17 continuously in a plurality of areas (step 55).

また、アドレスのインクリメントを実行した後(ステップ61)、CPU14からのアクセス要求が先読み範囲以外のエリアへ発生した場合(ステップ62)、CPU14からのアクセス要求を優先する。   In addition, after the address increment is executed (step 61), when an access request from the CPU 14 is generated in an area other than the prefetch range (step 62), the access request from the CPU 14 is given priority.

CPU14から要求されるアクセスは、よく知られたプログラムの局所性等により、連続するアドレスとなっていることが多い。本実施例では、メモリ制御部15が、予め共有記録装置17から、先読みすることによって、データアクセスの高速化を図ることができる。   The access requested from the CPU 14 is often a continuous address due to the well-known locality of the program. In this embodiment, the memory control unit 15 pre-reads from the shared recording device 17 in advance, thereby speeding up data access.

また、CPU14から先読みしたデータへのアクセスが直後に実行されない場合においても、先読みデータは、そのままメインメモリ16に書き込まれ、該当エリアのデータ判別ビット27を有効に更新する。   Even when access to the prefetched data from the CPU 14 is not executed immediately, the prefetched data is written in the main memory 16 as it is, and the data discrimination bit 27 of the corresponding area is effectively updated.

次回、CPU14からのアクセスが該当エリアである場合、メインメモリ16へのアクセスが可能となる。このため、システムの高速化を図ることができる。   Next time, when the access from the CPU 14 is the corresponding area, the main memory 16 can be accessed. For this reason, it is possible to increase the speed of the system.

なお、図6に示したフローチャートにおいて、制御装置1bのCPU14、メモリ制御部15、メインメモリ16、データ判別ビット27、データバッファ32は、現用系となった制御装置が制御装置1aの場合、CPU11、メモリ制御部12、メインメモリ13、データ判別ビット21、データバッファ26となる。   In the flowchart shown in FIG. 6, the CPU 14, the memory control unit 15, the main memory 16, the data determination bit 27, and the data buffer 32 of the control device 1 b are stored in the CPU 11 when the active control device is the control device 1 a. The memory control unit 12, the main memory 13, the data discrimination bit 21, and the data buffer 26.

上記実施例において、制御装置は、サーバであってもよいし、あるいは交換システムの制御系の装置であってもよい。以上本発明を上記実施例に即して説明したが、本発明は、上記実施例にのみ限定されるものでなく、本発明の範囲内で当業者であればなし得るであろう各種変形、修正を含むことは勿論である。   In the above embodiment, the control device may be a server or a control system device of an exchange system. Although the present invention has been described with reference to the above-described embodiment, the present invention is not limited to the above-described embodiment, and various modifications and corrections that can be made by those skilled in the art within the scope of the present invention. Of course.

本発明の一実施例の構成を示す図である。It is a figure which shows the structure of one Example of this invention. 本発明の一実施例のメモリ制御部の構成を示す図である。It is a figure which shows the structure of the memory control part of one Example of this invention. 本発明の一実施例における読み出し動作を説明するための図である。It is a figure for demonstrating the read-out operation | movement in one Example of this invention. 本発明の一実施例における書き込み動作を説明するための図である。It is a figure for demonstrating the write-in operation | movement in one Example of this invention. 本発明の一実施例の処理手順を示す流れ図である。It is a flowchart which shows the process sequence of one Example of this invention. 本発明の他の実施例の処理手順を示す流れ図である。It is a flowchart which shows the process sequence of the other Example of this invention.

符号の説明Explanation of symbols

1a 現用系制御装置
1b 予備系制御装置
11、14 CPU
12、15 メモリ制御部(コントローラ)
13、16 メインメモリ
17 共有記録装置
18 通信バス
19 共有バス
21、27 データ判別ビット
22、28 エリアaのデータ判別ビット
23、29 エリアbのデータ判別ビット
24、30 エリアcのデータ判別ビット
25、31 エリアnのデータ判別ビット
26、32 データバッファ
50〜63 ステップ
DESCRIPTION OF SYMBOLS 1a Active system control apparatus 1b Standby system control apparatus 11, 14 CPU
12, 15 Memory controller (controller)
13, 16 Main memory 17 Shared recording device 18 Communication bus 19 Shared bus 21, 27 Data discrimination bit 22, 28 Data discrimination bit of area a 23, 29 Data discrimination bit of area b 24, 30 Data discrimination bit of area c 25, 31 Data discrimination bit for area n 26, 32 Data buffer 50-63 steps

Claims (10)

一方が現用系とされ、他方が予備系とされ、それぞれが、現用系から予備系、予備系から現用系に、系の切替が自在とされてなる2つの制御装置と、
前記2つの制御装置で共用される共有記録装置と、
を少なくとも含み、
前記2つの制御装置のそれぞれが、
CPU(Central Processing Unit)と、メモリと、データの書き込み及び読み出しを制御するメモリ制御部と、
を有し、
前記メモリ制御部は、前記メモリに関して予め定められたメモリ領域毎にデータの有効/無効を示すフラグ情報を有し、
前記現用系の制御装置の前記メモリ制御部は、前記現用系の制御装置の前記CPUからの書き込みデータを、前記フラグ情報に基づき、前記現用系の制御装置の前記メモリと前記共有記録装置とに記憶保持し、
前記現用系の制御装置の前記CPUからのデータ読み出し要求に対して、前記フラグ情報に基づき、前記現用系の制御装置の前記メモリ又は前記共有記録装置から、データを読み出して、前記現用系の制御装置の前記CPUに供給する手段を備え
前記現用系の制御装置から、前記予備系の制御装置へ系切替を通知するための通信線を有し、
前記予備系の制御装置の予備系から現用系への系切替に際して、予備系から現用系に切り替わった前記制御装置の前記メモリ制御部は、自装置のCPUからのデータのアクセス要求を受け付けた場合、アクセスアドレスに対応するメモリ領域のフラグ情報が有効であるか否か判定し、
前記フラグ情報が無効の場合に、
前記アクセスアドレスに対応するデータを前記共有記録装置から読み出し、
前記アクセスがデータ書き込みのときには、前記共有記録装置から読み出したデータと、前記CPUからの書き込みデータとを併合し、併合したデータを、前記メモリと前記共有記録装置とに書き込み、
前記アクセスがデータ読み出しのときには、前記共有記録装置から読み出しデータを、前記CPUに供給するとともに、前記メモリへ書き込んで、前記フラグ情報を有効とし、
一方、前記フラグ情報が有効の場合、
前記アクセスがデータ書き込みのときには、前記メモリ及び前記共有記録装置にデータを書き込み、
前記アクセスがデータ読み出しのときには、前記メモリからデータを読み出して前記CPUに供給する、制御を行う、ことを特徴とするデータ二重化装置。
One of the active system and the other of the standby system, each of which can be freely switched from the active system to the standby system and from the standby system to the active system,
A shared recording device shared by the two control devices;
Including at least
Each of the two control devices
A CPU (Central Processing Unit), a memory, a memory control unit for controlling writing and reading of data,
Have
The memory control unit has flag information indicating validity / invalidity of data for each predetermined memory area with respect to the memory,
The memory control unit of the active control device writes write data from the CPU of the active control device to the memory and the shared recording device of the active control device based on the flag information. Keep in memory,
In response to a data read request from the CPU of the active control device, based on the flag information, data is read from the memory or the shared recording device of the active control device to control the active system Means for supplying to the CPU of the apparatus ;
A communication line for notifying system switching from the active control device to the standby control device;
When switching the standby control device from the standby system to the active system, the memory control unit of the control device that has switched from the standby system to the active system receives a data access request from the CPU of the own device , Determine whether the flag information of the memory area corresponding to the access address is valid,
When the flag information is invalid,
Read the data corresponding to the access address from the shared recording device,
When the access is data writing, the data read from the shared recording device and the write data from the CPU are merged, and the merged data is written to the memory and the shared recording device,
When the access is data read, the read data from the shared recording device is supplied to the CPU and written to the memory to validate the flag information,
On the other hand, if the flag information is valid,
When the access is data writing, data is written to the memory and the shared recording device,
When the access is data read, control is performed to read data from the memory and supply the read data to the CPU .
前記メモリ制御部において、前記メモリ領域毎に設けられる各フラグ情報は、有効/無効に対応した値を保持するビットよりなる、ことを特徴とする請求項1に記載のデータ二重化装置。   2. The data duplicating apparatus according to claim 1, wherein in the memory control unit, each flag information provided for each memory area includes a bit for holding a value corresponding to valid / invalid. 前記メモリ制御部は、前記メモリ領域毎に設けられるフラグ情報の有効/無効の判定をハードウェア回路で行う構成とされている、ことを特徴とする請求項1又は2に記載のデータ二重化装置。 The memory control unit, the data duplexing system as claimed in claim 1 or 2, wherein the determination of the valid / invalid flag information is provided for each memory region is configured to perform a hardware circuit, it is characterized. 前記メモリ制御部は、前記共有記録装置との間で、入力及び/又は出力を行うデータを一時的に蓄積するためのデータバッファを少なくとも1つ備えている、ことを特徴とする請求項1乃至のいずれか一に記載のデータ二重化装置。 The memory control unit includes at least one data buffer for temporarily storing data to be input and / or output with the shared recording device. 4. The data duplication device according to any one of 3 . 前記メモリ制御部は、前記共有記録装置からデータを読み出すにあたり、
読み出し対象のメモリ領域に対応するデータを前記共有記録装置から読み出すとともに、他のメモリ領域に対応するデータを前記共有記録装置から先読みする、ことを特徴とする請求項1に記載のデータ二重化装置。
When the memory control unit reads data from the shared recording device,
2. The data duplicating apparatus according to claim 1, wherein data corresponding to a memory area to be read is read from the shared recording apparatus, and data corresponding to another memory area is pre-read from the shared recording apparatus.
前記メモリ制御部は、前記共有記録装置との間で、入力及び/又は出力を行うデータを一時的に蓄積するためのデータバッファを少なくとも1つ備え、
前記現用系の制御装置に障害が発生した場合、前記現用系の制御装置の前記メモリ制御部は、前記データバッファの状態を監視して、前記データバッファの処理が完了した時点で、前記通信線を介して、切り替え情報を、前記予備系の制御装置に伝達し、現用系と予備系の切替が行われ、それまで予備系であった制御装置は、現用系に切り替えられて運用が開始される、ことを特徴とする請求項記載のデータ二重化装置。
The memory control unit includes at least one data buffer for temporarily storing data to be input and / or output with the shared recording device,
When a failure occurs in the active control device, the memory control unit of the active control device monitors the state of the data buffer, and when the processing of the data buffer is completed, the communication line The switching information is transmitted to the standby control device via the switch, and the active system and the standby system are switched, and the control device that has been the standby system is switched to the active system and starts operating. The data duplexing apparatus according to claim 1, wherein:
前記メモリ制御部は、前記現用系の制御装置の前記CPUからのデータ読み出し要求のアドレスが、前記フラグ情報が無効のメモリ領域に該当した際、前記共有記録装置からのデータ読み出しが完了した後に、前記アドレスを増加させ、増加させた前記アドレスが、前記メモリ制御部の先読み範囲内であり、且つ、前記現用系の制御装置の前記CPUからのアクセス要求が、先読み範囲以外の領域へ発生していない場合には、前記共有記録装置からデータの先読みを実行する、ことを特徴とする請求項記載のデータ二重化装置。 The memory control unit, when the address of the data read request from the CPU of the active control device corresponds to a memory area where the flag information is invalid, after the data read from the shared recording device is completed, The address is increased, and the increased address is within the prefetch range of the memory control unit, and an access request from the CPU of the active control device is generated in an area other than the prefetch range. 6. The data duplicating apparatus according to claim 5 , wherein when there is no data, prefetching of data is executed from the shared recording apparatus. 前記メモリ制御部は、前記アドレスを増加させた後、前記現用系の制御装置の前記CPUからのアクセス要求が、前記先読み範囲以外のメモリ領域に対して発生した場合、前記現用系の制御装置の前記CPUからのアクセス要求を優先させる、ことを特徴とする請求項記載のデータ二重化装置。 The memory control unit increases the address, and when an access request from the CPU of the active control device is generated for a memory area other than the prefetch range, the memory control unit 8. The data duplexer according to claim 7 , wherein an access request from the CPU is prioritized. 前記制御装置の前記メモリは、メインメモリである、ことを特徴とする請求項に記載のデータ二重化装置。 The data duplication device according to claim 1 , wherein the memory of the control device is a main memory. 一方が現用系のとき他方は予備系とされ、それぞれが、現用系から予備系、予備系から現用系に、系の切替が自在とされてなる2つの制御装置と、
前記2つの制御装置で共用される共有記録装置と、
を少なくとも含み、
前記2つの制御装置のそれぞれが、CPUと、メモリと、データの書き込み及び読み出しを制御するメモリ制御部と、を有し、前記メモリ制御部内に、前記メモリに関して予め定められたメモリ領域毎にデータの有効/無効を示すフラグ情報を有する二重化装置による、データ二重化方法であって、
現用系の制御装置が運用中に、前記現用系の制御装置の前記メモリ制御部は、前記現用系の制御装置の前記CPUからの書き込みデータを、前記フラグ情報に基づき、前記現用系の制御装置の前記メモリと前記共有記録装置とに記憶保持するステップと、
前記現用系の制御装置の前記CPUからのデータ読み出し要求に対して、前記フラグ情報に基づき、前記現用系の制御装置のメモリ又は前記共有記録装置からデータを読み出し、読み出したデータを前記現用系の制御装置の前記CPUに供給するステップと、
を含
前記現用系の制御装置から、前記予備系の制御装置へ系切替を通知するための通信線を設けておき、
前記予備系の制御装置の予備系から現用系への系切替に際して、予備系から現用系に切り替わった前記制御装置の前記メモリ制御部は、
自装置のCPUからのデータのアクセス要求を受け付けた場合、アクセスアドレスに対応するメモリ領域のフラグ情報が有効であるか否か判定するステップと、
前記判定の結果、前記フラグ情報が無効の場合に、
前記アクセスアドレスに対応するデータを前記共有記録装置から読み出すステップと、
前記アクセスがデータ書き込みのときには、前記共有記録装置から読み出したデータと、前記CPUからの書き込みデータとを併合し、併合したデータを、前記メモリと前記共有記録装置とに書き込むステップと、
前記アクセスがデータ読み出しのときには、前記共有記録装置から読み出しデータを、前記CPUに供給するとともに、前記メモリへ書き込んで、前記フラグ情報を有効とするステップと、
を有し、
一方、前記判定の結果、前記フラグ情報が有効の場合、
前記アクセスがデータ書き込みのときには、前記メモリ及び前記共有記録装置にデータを書き込むステップと、
前記アクセスがデータ読み出しのときには、前記メモリからデータを読み出して前記CPUに供給する、制御を行うステップと、
を有する、ことを特徴とするデータ二重化方法。
When one is the active system, the other is the standby system, and each of the two control devices can be freely switched from the active system to the standby system and from the standby system to the active system,
A shared recording device shared by the two control devices;
Including at least
Each of the two control devices includes a CPU, a memory, and a memory control unit that controls writing and reading of data, and the memory control unit stores data for each predetermined memory area with respect to the memory. A data duplication method by a duplication device having flag information indicating validity / invalidity of
While the active control device is in operation, the memory control unit of the active control device uses the write data from the CPU of the active control device based on the flag information as the active control device. Storing and holding in the memory and the shared recording device,
In response to a data read request from the CPU of the active control device, based on the flag information, data is read from the memory of the active control device or the shared recording device, and the read data is read from the active control device. Supplying to the CPU of the control device;
Only including,
A communication line for notifying system switching from the active control device to the standby control device is provided,
When switching the standby control device from the standby system to the active system, the memory control unit of the control device switched from the standby system to the active system,
Determining whether the flag information of the memory area corresponding to the access address is valid when receiving a data access request from the CPU of the own device;
If the flag information is invalid as a result of the determination,
Reading data corresponding to the access address from the shared recording device;
When the access is data writing, the data read from the shared recording device and the write data from the CPU are merged, and the merged data is written to the memory and the shared recording device;
When the access is data read, the read data from the shared recording device is supplied to the CPU and written to the memory to validate the flag information;
Have
On the other hand, if the flag information is valid as a result of the determination,
When the access is data writing, writing data into the memory and the shared recording device;
When the access is data read, control is performed to read data from the memory and supply the data to the CPU;
A data duplication method characterized by comprising:
JP2003382370A 2003-11-12 2003-11-12 Data duplication apparatus and method Expired - Fee Related JP4030951B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003382370A JP4030951B2 (en) 2003-11-12 2003-11-12 Data duplication apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003382370A JP4030951B2 (en) 2003-11-12 2003-11-12 Data duplication apparatus and method

Publications (2)

Publication Number Publication Date
JP2005148910A JP2005148910A (en) 2005-06-09
JP4030951B2 true JP4030951B2 (en) 2008-01-09

Family

ID=34691472

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003382370A Expired - Fee Related JP4030951B2 (en) 2003-11-12 2003-11-12 Data duplication apparatus and method

Country Status (1)

Country Link
JP (1) JP4030951B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5352299B2 (en) * 2009-03-19 2013-11-27 株式会社日立製作所 High reliability computer system and configuration method thereof
JP5634379B2 (en) * 2011-10-27 2014-12-03 株式会社日立製作所 Computer system and computer system information storage method

Also Published As

Publication number Publication date
JP2005148910A (en) 2005-06-09

Similar Documents

Publication Publication Date Title
US5941964A (en) Bridge buffer management by bridge interception of synchronization events
US6467022B1 (en) Extending adapter memory with solid state disks in JBOD and RAID environments
US7487298B2 (en) Disk array device, method for controlling the disk array device and storage system
JP3266470B2 (en) Data processing system with per-request write-through cache in forced order
JP2006099802A (en) Storage controller, and control method for cache memory
JP2007226641A (en) Information processing system, cache control method, and program
KR20210093531A (en) System including a storage device for providing data to an application processor
JP2011008674A (en) Duplex information processing system and synchronization method
JP4030951B2 (en) Data duplication apparatus and method
US5974491A (en) High speed data transfer apparatus for duplexing system
JP2002024085A (en) Disk cache system and its control method
JP5076400B2 (en) Data processing system and information processing apparatus
CN1363998A (en) Duplex equipment and method for large scale system
US8239652B2 (en) Data processing system
US7805576B2 (en) Information processing system, information processing board, and method of updating cache tag and snoop tag
JP3162459B2 (en) Data processing device
JPH11184761A (en) Read modify write control system
US5546560A (en) Device and method for reducing bus activity in a computer system having multiple bus-masters
JP3940701B2 (en) Disk array device and cache matching control method applied to the same
JPH0324634A (en) Double system device
JP2701739B2 (en) Processor switching method
JP2001265653A (en) Data processor
JP4698145B2 (en) Disk array device
JP5321782B2 (en) Redundant system and memory copy method
JP2004164666A (en) Memory controller

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070725

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071017

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20101026

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees