JP4439295B2 - Data transfer control device - Google Patents

Data transfer control device Download PDF

Info

Publication number
JP4439295B2
JP4439295B2 JP2004051643A JP2004051643A JP4439295B2 JP 4439295 B2 JP4439295 B2 JP 4439295B2 JP 2004051643 A JP2004051643 A JP 2004051643A JP 2004051643 A JP2004051643 A JP 2004051643A JP 4439295 B2 JP4439295 B2 JP 4439295B2
Authority
JP
Japan
Prior art keywords
data transfer
data
register
controller
control means
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
JP2004051643A
Other languages
Japanese (ja)
Other versions
JP2005242666A (en
Inventor
智也 牧野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004051643A priority Critical patent/JP4439295B2/en
Publication of JP2005242666A publication Critical patent/JP2005242666A/en
Application granted granted Critical
Publication of JP4439295B2 publication Critical patent/JP4439295B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Description

本発明は、ホストや入出力デバイスとメモリを接続したシステムにおいて、リモート側の転送の状態をローカル側のモジュールに通知できるようにしたデータ転送制御装置に関し、特に、PCIバスを内部に含むシステム内で、データ転送状況の通知方法の効率化を図るようにしたデータ転送制御装置に関するものである。   The present invention relates to a data transfer control device capable of notifying a local module of a remote transfer state in a system in which a host or an input / output device and a memory are connected, and particularly in a system including a PCI bus. Thus, the present invention relates to a data transfer control device designed to improve the efficiency of the data transfer status notification method.

複数のプリント板により構成されるDisk制御システムにおいて、リモート側のセントラライズド・モジュール(Centralized Module:以下CMという)、および、ローカル側のアダプタ(Adapter:以下ADPという)は、それぞれルータ(Router:以下RTという)を介して、ダイレクトメモリアクセス(DMA)を使用してセントラライズド・モジュール(CM)←→アダプタ(ADP)間においてメッセージ転送、データ転送を行う。ここに上記セントラライズド・モジュール(CM)およびアダプタ(ADP)はそれぞれCPUを内蔵している。
セントラライズド・モジュール(CM)←→アダプタ(ADP)間は、PCI−バスを使用し転送処理を行う。
図6は、上記システムにおける従来のデータ転送処理を説明する図である。
同図において、アダプタ1は、データ転送コントローラ11、データバッファ12、メモリコントローラ13、主記憶装置14、CPU15から構成される。
プロセッサやキャッシュメモリ等で構成されるリモート側のセントラライズド・モジュール(CM)2は、ルータ(RT)3を介して、上記アダプタ1と接続される。
In a Disk control system including a plurality of printed boards, a centralized module (hereinafter referred to as CM) on the remote side and an adapter (hereinafter referred to as ADP) on the local side are respectively routers (Router: (Hereinafter referred to as RT), message transfer and data transfer are performed between the centralized module (CM) and the adapter (ADP) using direct memory access (DMA). The centralized module (CM) and adapter (ADP) each have a built-in CPU.
Between the centralized module (CM) ← → adapter (ADP), the PCI-bus is used for transfer processing.
FIG. 6 is a diagram for explaining a conventional data transfer process in the system.
In FIG. 1, the adapter 1 includes a data transfer controller 11, a data buffer 12, a memory controller 13, a main storage device 14, and a CPU 15.
A remote-side centralized module (CM) 2 composed of a processor, a cache memory, and the like is connected to the adapter 1 via a router (RT) 3.

図6において、データ転送は次のように行われる。
アダプタ1内のプログラムにより、CPU15は、データ転送コントローラ11内にディスクリプタを設定する(図6の(1),(i))。ディスクリプタには、セントラライズド・モジュール2内のPCIアドレス、転送バイト数、転送元であるデータバッファ12のアドレスなどが設定される。
その後、上記アダプタ1内のプログラムによりデータ転送コントローラ11内のデータ転送エンジン11aが起動され(図6−(2),(ii))、データ転送コントローラ11内のディスクリプタが、データ転送エンジン11aに設定される(図6の(iii) )。
そして、ディスクリプタの設定に応じて、データバッファ12に格納されたデータのセントラライズド・モジュール2への転送処理が行われる(図6の(3),(iv))。
In FIG. 6, data transfer is performed as follows.
The CPU 15 sets a descriptor in the data transfer controller 11 by the program in the adapter 1 ((1), (i) in FIG. 6). In the descriptor, the PCI address in the centralized module 2, the number of transfer bytes, the address of the data buffer 12 that is the transfer source, and the like are set.
Thereafter, the data transfer engine 11a in the data transfer controller 11 is activated by the program in the adapter 1 (FIGS. 6 (2) and (ii)), and the descriptor in the data transfer controller 11 is set in the data transfer engine 11a. ((Iii) in FIG. 6).
Then, according to the descriptor setting, the data stored in the data buffer 12 is transferred to the centralized module 2 ((3), (iv) in FIG. 6).

このときPCIバスの仕様上、アダプタ1から送出されたデータが正常にセントラライズド・モジュール2に到達したかをアダプタ1は知ることが出来ない。
このことは、信頼性を要求されるディスク・アレイ(Disk Array)システムなどにおいては問題となるため、PCI転送の正常終了確認(A.A.:Access Assurance)をデータ転送後に別途行う方法が知られている(特許文献1)。
これは、ルータ3が、アダプタ1から受け取ったデータをセントラライズド・モジュール2へ転送するまでの間に検出したエラーの情報を、A.A.コードと呼ばれる予め決められたフォーマットに保持しておき、アダプタ1のデータ転送コントローラ11がある単位のデータ転送を終えたときに、ルータ3の保持しているA.A.コードを読み出すことで転送中のエラーの有無を知る手法である。A.A.コードの読出しは、データ転送コントローラ11に保持されているA.A.コードを読み出すためのディスクリプタを実行させることで、行われる。
上記A.A.コードには、エラーがセントラライズド・モジュール2とのインタフェースで検出されたのか、ルータ3内部で検出されたのか、どのアドレスでのアクセス時に検出されたのか、などの詳細な情報が含まれている。
At this time, the adapter 1 cannot know whether the data sent from the adapter 1 has normally reached the centralized module 2 due to the specification of the PCI bus.
This is a problem in a disk array system that requires reliability, and there is a known method in which PCI transfer normal completion confirmation (AA) is separately performed after data transfer. (Patent Document 1).
This is because information on errors detected by the router 3 until the data received from the adapter 1 is transferred to the centralized module 2 is displayed as follows. A. The data is stored in a predetermined format called a code, and when the data transfer controller 11 of the adapter 1 finishes transferring a certain unit of data, the A. A. This is a method of knowing the presence or absence of an error during transfer by reading a code. A. A. Reading of the code is performed by A. A. This is done by executing a descriptor for reading the code.
A. above. A. The code includes detailed information such as whether an error was detected at the interface with the centralized module 2, whether it was detected inside the router 3, and at which address it was detected during access. Yes.

図7は上記データ転送の正常終了確認処理を示す図である。
図7に示すように、A.A.コードのセットを、ルータ3がセントラライズド・モジュール2から取得する(図7の(i) )。
データ転送コントローラ11は、A.A.コードを読み出すためのディスクリプタを実行することで、A.A.コードを読み出して自身の持つレジスタに保持する(図7の(ii))。
その後、データ転送終了と、エラーの有無情報の格納終了をCPUへ知らせるために割り込みを、メモリコントローラ13にあげる(図7の(iii) )。
この割り込みがメモリコントローラ13に伝えられると、メモリコントローラ13内の割り込み要因レジスタの、データ転送制御に対応するビットがセットされる。
さらに上記メモリコントローラ13がCPU15へ割り込みを上げると(図7の(iv))、CPU15で割り込み処理ルーチンが起動され、割り込み要因が特定され、データ転送が異常終了の場合、A.A.コードの読み出しが行われる(図7の(v)(vi) )。
この割り込み要因の特定は以下の(a)-(c) のような手順で行われる。
(a) CPU15がメモリコントローラ13内の割り込み要因レジスタを読み出して、どのビットがセットされているかによって、データ転送コントローラ11が要因であることを知る。
(b) CPU15はデータ転送コントローラ11の割り込み要因レジスタを読み出して、データ転送が正常、または異常終了に終わったことを知る。
(c) データ転送が異常終了していれば、更にデータ転送コントローラ11に保持されているA.A.コードを読み出して詳細なエラー要因を確かめる。
特開2001−243206号公報
FIG. 7 is a diagram showing a normal end confirmation process of the data transfer.
As shown in FIG. A. The router 3 acquires the code set from the centralized module 2 ((i) in FIG. 7).
The data transfer controller 11 includes A.I. A. By executing the descriptor for reading the code, A. A. The code is read and held in its own register ((ii) in FIG. 7).
Thereafter, an interrupt is given to the memory controller 13 in order to notify the CPU of the end of data transfer and the end of storing error information (FIG. 7 (iii)).
When this interrupt is transmitted to the memory controller 13, the bit corresponding to the data transfer control of the interrupt factor register in the memory controller 13 is set.
Further, when the memory controller 13 raises an interrupt to the CPU 15 ((iv) in FIG. 7), an interrupt processing routine is started by the CPU 15, the cause of the interrupt is specified, and the data transfer ends abnormally. A. The code is read ((v) (vi) in FIG. 7).
The interrupt factor is identified by the following procedure (a)-(c).
(a) The CPU 15 reads the interrupt factor register in the memory controller 13 and knows that the data transfer controller 11 is the factor depending on which bit is set.
(b) The CPU 15 reads the interrupt factor register of the data transfer controller 11 and knows that the data transfer has ended normally or ended abnormally.
(c) If the data transfer is abnormally terminated, the A.C. A. Read the code to see the detailed error cause.
JP 2001-243206 A

上記ディスク制御システムは上位インタフェースとしてホストもしくはディスクを有しているが、上位インタフェースとの転送速度が向上するにつれて処理の多重度も増すため、データ転送ごとにCPU15がデータ転送コントローラ11内のディスクリプタを設定すること自体が負荷となっていた。
また、従来の手法では、アダプタ1がセントラライズド・モジュール2との転送処理を行う際に、データ転送コントローラ11へのディスクリプタの設定、データ転送エンジンの起動、A.A.用のデータ転送コントローラ11の起動と、そのつどレジスタアクセスが発生し、オーバヘッドとなり、性能劣化の要因となっていた。
また、転送の正常性を確認するために、前述の通り、メモリコントローラ13内のレジスタを1回、データ転送コントローラ11内のレジスタを2回読み出す必要があり、CPU15の負荷を高くしてしまう要因となっていた。
本発明は、上記従来技術の問題点を解決するためになされたものであって、データ転送制御装置におけるデータ転送の効率化およびデータ転送状況の通知方法の効率化を図り、データ転送制御装置に設けられた処理装置の負担の軽減を図ることを目的とする。
The disk control system has a host or a disk as an upper interface. However, since the multiplicity of processing increases as the transfer speed with the upper interface increases, the CPU 15 assigns a descriptor in the data transfer controller 11 for each data transfer. Setting itself was a burden.
In the conventional method, when the adapter 1 performs transfer processing with the centralized module 2, descriptor setting to the data transfer controller 11, activation of the data transfer engine, A. A. When the data transfer controller 11 is started up, each time a register access occurs, an overhead occurs, causing performance degradation.
In addition, as described above, in order to check the normality of the transfer, it is necessary to read the register in the memory controller 13 once and the register in the data transfer controller 11 twice, which increases the load on the CPU 15. It was.
The present invention has been made to solve the above-mentioned problems of the prior art, and aims to improve the efficiency of data transfer and the method of notifying the data transfer status in the data transfer control device. The object is to reduce the burden on the processing apparatus provided.

本発明においては、以下のようにして上記課題を解決する。
ーカル側モジュールを、処理装置と、データ転送制御手段と、該処理装置とデータ転送制御手段との間に接続され、データが設定されたとき上記処理装置に割り込みを発生するレジスタを備えたメモリ制御手段と、該メモリ制御手段に接続された主記憶装置から構成する。
上記処理装置は、上記主記憶装置に、データ転送情報と、データ転送正常終了確認情報を獲得するか否かを示す情報を格納し、上記データ転送制御手段は、上記主記憶手段に格納された上記情報を読み出して、リモート側モジュールにデータ転送を行うとともに、該データ転送にデータ転送正常終了確認情報を、リモート側のモジュールから獲得し、獲得したデータ転送正常終了確認情報を、上記メモリ制御手段の上記レジスタに設定する。前記処理装置は、該レジスタからの割り込みに基づき、上記レジスタからデータ転送正常終了確認情報を取得する。
In the present invention, the above-described problems are solved as follows.
The local side module, comprising a processing unit, a data transfer control means, connected between the processing device and the data transfer control unit, the register to generate an interrupt to the processor when data is set memory It comprises a control means and a main storage device connected to the memory control means.
The processing device stores data transfer information and information indicating whether or not to acquire data transfer normal end confirmation information in the main storage device, and the data transfer control means is stored in the main storage means. The above information is read and data is transferred to the remote module, and after the data transfer, data transfer normal completion confirmation information is acquired from the remote module, and the acquired data transfer normal completion confirmation information is stored in the memory control. Set in the register of the means. The processing device acquires data transfer normal end confirmation information from the register based on the interrupt from the register.

本発明においては、以下の効果を得ることができる。
(1)メモリ制御手段内に設けられたデータが設定されたとき割り込みを発生するレジスタの機能を利用し、処理装置に割り込みを上げ、処理装置が、エラー情報の有無の確認およびエラー時にはその詳細な要因を確認するようにしたので、正常終了確認(Access Assurance)の際の処理装置における負荷の軽減を図ることができる。
(2)高速な主記憶装置内に用意された、データ転送情報とデータ転送正常終了確認情報を獲得するか否かを示す情報(ディスクリプタ)を読み出す機能を、データ転送制御手段に設けることで、処理装置に対する負荷を一層軽減することができ、データ転送のために使用されていた処理装置のリソースを他の処理に与えることが出来る。
In the present invention, the following effects can be obtained.
(1) Using the function of a register that generates an interrupt when data provided in the memory control means is set, an interrupt is issued to the processing device, and the processing device checks whether there is error information and details when an error occurs. Therefore, it is possible to reduce the load on the processing apparatus at the time of normal termination confirmation (Access Assurance).
(2) By providing the data transfer control means with a function of reading information (descriptor) prepared in the high-speed main storage device and indicating whether or not to acquire the data transfer information and the data transfer normal completion confirmation information, The load on the processing device can be further reduced, and the processing device resources used for data transfer can be given to other processing.

図1は本発明の実施例のデータ転送制御装置の構成例を示す図である。
図1において、ローカル側のアダプタ1は、前記したようにデータ転送コントローラ11、データバッファ12、メモリコントローラ13、主記憶装置14、CPU15から構成される。データ転送コントローラ11、メモリコントローラ13は、インタフェースモジュール16を介して、上位インタフェースであるホストもしくはディスク装置に接続される。
また、リモート側のセントラライズド・モジュール2は、ルータ3を介して、上記アダプタ1と接続される。
データ転送コントローラ11は、3つのPCIバスを持ち、ここでは仮にデータ転送コントローラ11−インタフェースモジュール16間をLocal−PCI(LPCI)、データ転送コントローラ11−メモリコントローラ13間をCommunication−PCI(CPCI)、データ転送コントローラ11−セントラライズド・モジュール2間をSystem−PCI(SPCI)と呼ぶことにする。
LPCIはホストおよびディスクとのメッセージ転送およびデータ転送を行い、CPCIはCPU15とのメッセージ転送を、そしてSPCIは前述のようにセントラライズド・モジュール2とのメッセージ転送およびデータ転送を行う。
FIG. 1 is a diagram showing a configuration example of a data transfer control device according to an embodiment of the present invention.
In FIG. 1, the local adapter 1 includes the data transfer controller 11, the data buffer 12, the memory controller 13, the main storage device 14, and the CPU 15 as described above. The data transfer controller 11 and the memory controller 13 are connected via an interface module 16 to a host or disk device that is an upper level interface.
The centralized module 2 on the remote side is connected to the adapter 1 via the router 3.
The data transfer controller 11 has three PCI buses. Here, the data transfer controller 11 and the interface module 16 are locally-PCI (LPCI), the data transfer controller 11 and the memory controller 13 are communication-PCI (CPCI), The area between the data transfer controller 11 and the centralized module 2 will be referred to as System-PCI (SPCI).
LPCI performs message transfer and data transfer with the host and the disk, CPCI performs message transfer with the CPU 15, and SPCI performs message transfer and data transfer with the centralized module 2 as described above.

図2に、本発明の適用例であるRAID装置(RAID:Redundant Array of Inexpensive Disks) の全体構成を示す。
図2において、RAID装置20は、複数のディスク群から構成されるディスク装置21−1〜21−4を有し、各ディスク装置21は上記アダプタ1−1〜1−4に接続され、各アダプタ1−1〜1−4は、ルータ3−1,3−2を介してセントラライズド・モジュール2−1,2−2と接続される。上記アダプタ1−1〜1−4は前記したように、ディスク装置21−1〜21−4から転送されてきたデータをルータ3−1,3−2を介して、セントラライズド・モジュール2−1,2−2に転送する。
また、RAID装置20は、ホストコンピュータ22−1,22−2と接続される。該ホストコンピュータ22−1,22−2には上記アダプタ1−5〜1−8が接続され、各アダプタ1−5〜1−8は、ルータ3−3,3−4を介してセントラライズド・モジュール2−1,2−2と接続される。上記アダプタ1−5〜1−8は前記したように、ホストから転送されてきたデータをルータ3−1,3−2を介して、セントラライズド・モジュール2−1,2−2に転送する。
FIG. 2 shows the overall configuration of a RAID device (RAID: Redundant Array of Inexpensive Disks) which is an application example of the present invention.
In FIG. 2, the RAID device 20 includes disk devices 21-1 to 21-4 configured by a plurality of disk groups, and each disk device 21 is connected to the adapters 1-1 to 1-4, and each adapter is connected to each adapter. 1-1 to 1-4 are connected to the centralized modules 2-1 and 2-2 via routers 3-1 and 3-2. As described above, the adapters 1-1 to 1-4 transfer the data transferred from the disk devices 21-1 to 21-4 via the routers 3-1 and 3-2 and the centralized module 2-. 1 and 2-2.
The RAID device 20 is connected to the host computers 22-1 and 22-2. The adapters 1-5 to 1-8 are connected to the host computers 22-1 and 22-2, and each adapter 1-5 to 1-8 is centralized via routers 3-3 and 3-4. -Connected to modules 2-1 and 2-2. As described above, the adapters 1-5 to 1-8 transfer the data transferred from the host to the centralized modules 2-1 and 2-2 via the routers 3-1 and 3-2. .

図3、図4は、本実施例のデータ転送制御装置の動作を説明する図であり、以下、同図により、本実施例のデータ転送制御装置の動作について説明する。
図3は、本実施例におけるデータ転送処理を説明する図であり、本実施例において、データ転送は次のように行われる。
転送データがインタフェースモジュール16を介してデータ転送コントローラ11に送られ、データバッファ12に格納される。また、インタフェースモジュール16からメモリコントローラ13を介して、データバッファ12にデータが格納されたことがCPU15に通知される。
CPU15は、上記通知をもらうとディスクリプタを作成し、アダプタ1内のプログラムにより、主記憶装置14内にディスクリプタを設定する(図3の(1),(i))。
ディスクリプタには、図5(a)に示すように、セントラライズド・モジュール2内のPCIアドレス、転送バイト数、転送元であるデータバッファ12のアドレスなどが設定される。また、A.A.の読出しが必要なデータ転送の切れ目に、A.A.用のフラグが設定され、このフラグが設定されていると、前記したようにデータ転送後、ルータ3からA.A.コードが読み出される。A.A.コードは、例えば、図5(b)に示すようにデータ転送が正常に行われたか否かを示すフラグを格納する領域と、データ転送が異常終了した場合にそのエラー内容を示すエラーコードが格納される領域を有する。
3 and 4 are diagrams for explaining the operation of the data transfer control device according to the present embodiment. Hereinafter, the operation of the data transfer control device according to the present embodiment will be described with reference to FIG.
FIG. 3 is a diagram for explaining data transfer processing in the present embodiment. In this embodiment, data transfer is performed as follows.
The transfer data is sent to the data transfer controller 11 via the interface module 16 and stored in the data buffer 12. Further, the CPU 15 is notified from the interface module 16 via the memory controller 13 that data has been stored in the data buffer 12.
Upon receiving the above notification, the CPU 15 creates a descriptor and sets the descriptor in the main storage device 14 by the program in the adapter 1 ((1), (i) in FIG. 3).
As shown in FIG. 5A, a PCI address in the centralized module 2, the number of transfer bytes, the address of the data buffer 12 that is the transfer source, and the like are set in the descriptor. A. A. At the break of data transfer that needs to be read. A. If this flag is set, after the data transfer as described above, the router 3 sends the A.I. A. The code is read. A. A. For example, as shown in FIG. 5B, the code stores an area for storing a flag indicating whether or not the data transfer has been normally performed, and an error code indicating the error contents when the data transfer ends abnormally. It has the area to be.

ついで、CPU15は、データ転送コントローラ11のデータ転送制御部11bへ、ディスクリプタが設定された主記憶装置14のアドレスを通知し、データ転送コントローラ11のデータ転送エンジン11aを起動する(図3の(2),(ii)) 。
これにより、データ転送コントローラ11のデータ転送制御部11bは、通知された主記憶装置14のアドレスよりディスクリプタを読み出し、データ転送エンジン11aに設定する(図3の(iii))。
そして、ディスクリプタの設定に応じて、データバッファ12に格納されたデータが転送エンジン11aを介してセントラライズド・モジュール2へ転送される(図3の(3)),(iv))。
上記データ転送の実行中、CPU15は次データ転送用のディスクリプタを主記憶装置14に設定する(図3の(v ))。この設定はバースト転送分だけ繰り返し行われる。
Next, the CPU 15 notifies the data transfer controller 11b of the data transfer controller 11 of the address of the main storage device 14 in which the descriptor is set, and starts the data transfer engine 11a of the data transfer controller 11 ((2 in FIG. 3). ), (ii)).
Thereby, the data transfer control unit 11b of the data transfer controller 11 reads the descriptor from the notified address of the main storage device 14, and sets it in the data transfer engine 11a ((iii) in FIG. 3).
Then, according to the descriptor setting, the data stored in the data buffer 12 is transferred to the centralized module 2 through the transfer engine 11a ((3) and (iv) in FIG. 3).
During the execution of the data transfer, the CPU 15 sets a descriptor for the next data transfer in the main storage device 14 ((v) in FIG. 3). This setting is repeated for burst transfer.

従来技術ではCPU15がデータ転送コントローラ11内のレジスタにディスクリプタを用意していたが、本実施例では、上記のように、高速な主記憶装置14にディスクリプタを用意し、CPU15はそこに転送情報を設定し、設定されたディスクリプタのアドレスをデータ転送コントローラ11に与え、データ転送コントローラ11が、主記憶装置14内よりディスクリプタを読み出し、データ転送を行うようにした。このため、CPU15に対する負荷は軽減され、従来はデータ転送のために使用されていたCPUのリソースを他の処理に与えることが出来る。
特に、主記憶装置14はデータ転送コントローラ11内のレジスタに比べ、容量が大きく、データ転送コントローラ11がデータ転送処理をおこなっている間に、次々とディスクリプタを書き込むことができる。このため、データ転送が終わるまで待って、ディスクリプタをデータ転送コントローラ11に書き込む必要がない。
また、前記したように、ディスク制御システムは複数のPCIバスを有しており、上位インタフェースとの転送速度が向上するにつれ処理の多重度も増し、従来例のようにデータ転送ごとにディスクリプタを設定すること自体が負荷となっていたが、本実施例によれば、従来例に比べ、CPU15の負担を軽減化することができる。
In the prior art, the CPU 15 prepares a descriptor in a register in the data transfer controller 11, but in this embodiment, as described above, a descriptor is prepared in the high-speed main storage device 14, and the CPU 15 stores transfer information therein. Then, the address of the set descriptor is given to the data transfer controller 11, and the data transfer controller 11 reads the descriptor from the main storage device 14 and performs data transfer. For this reason, the load on the CPU 15 is reduced, and the CPU resources conventionally used for data transfer can be given to other processes.
In particular, the main storage device 14 has a larger capacity than the register in the data transfer controller 11 and can write descriptors one after another while the data transfer controller 11 is performing data transfer processing. Therefore, it is not necessary to wait until the data transfer is completed and write the descriptor to the data transfer controller 11.
In addition, as described above, the disk control system has a plurality of PCI buses, and as the transfer rate with the host interface increases, the multiplicity of processing increases, and a descriptor is set for each data transfer as in the conventional example. However, according to the present embodiment, the burden on the CPU 15 can be reduced as compared with the conventional example.

図4は、本実施例におけるデータ転送の正常終了確認処理を説明する図である。
図4に示すように、A.A.コードのセットを、ルータ3がセントラライズド・モジュール2から取得する(図4の(i) )。
データ転送コントローラ11は、前記したA.A.コードを読み出すためのディスクリプタを実行することで、ルータ3から上記A.A.コードを読み出して(図4の(ii))、自分自身では保持せずにメモリコントローラ13のメールボックス(Mailbox)・レジスタ13aにセットする(図4の(iii) )。
上記メールボックス・レジスタ13aはデータ書き込みが行われると、割り込みを発生する機能を持っているため、A.A.コードがメモリコントローラ13に渡されると同時にCPU15に割り込みが上がる(図4の(iv))。
FIG. 4 is a diagram for explaining normal completion confirmation processing of data transfer in this embodiment.
As shown in FIG. A. The router 3 acquires the code set from the centralized module 2 ((i) in FIG. 4).
The data transfer controller 11 has the above-described A.I. A. By executing the descriptor for reading the code, the router 3 executes the above A.D. A. The code is read ((ii) in FIG. 4), and is not held by itself but is set in the mailbox register 13a of the memory controller 13 ((iii) in FIG. 4).
The mailbox register 13a has a function of generating an interrupt when data is written. A. At the same time as the code is transferred to the memory controller 13, an interrupt is raised to the CPU 15 ((iv) in FIG. 4).

CPU15は、上記メモリコントローラ13からの割り込みの処理を行い(図4の(v) )、引き続いて、メモリコントローラ13のA.A.コードを読み出して、それを判断することで、エラー情報の有無とその詳細なエラー要因を知ることができる(図4の(vi))。
すなわち、上記メールボックス・レジスタ13aの機能を利用したデータ転送終了後の割り込み要因の特定は次のようになる。
(a) CPU15がメモリコントローラ13の割り込み要因レジスタを読み出して、要因がA.A.であることを知る。
(b) CPU15はメモリコントローラ13内のメールボックス・レジスタ13aを読み出して、エラー情報の有無およびエラー時にはその詳細な要因を確認する。
上記のような手順をとることにより、従来技術では、データ転送時のエラー情報を確認するために、CPU15はメモリコントローラ13内レジスタを1回、データ転送コントローラ11内レジスタを2回読み出す必要があったのに対して、本実施例では、メモリコントローラ13内レジスタを2回読み出すだけで済み、CPU15における負荷の軽減を図ることが出来る。
The CPU 15 performs an interrupt process from the memory controller 13 ((v) in FIG. 4). A. By reading the code and judging it, it is possible to know the presence or absence of error information and its detailed error cause ((vi) in FIG. 4).
That is, the cause of the interruption after the data transfer using the function of the mailbox register 13a is specified as follows.
(a) The CPU 15 reads the interrupt factor register of the memory controller 13, and the cause is A.B. A. Know that.
(b) The CPU 15 reads the mailbox register 13a in the memory controller 13 and confirms the presence / absence of error information and the detailed cause of the error.
By taking the above procedure, in the prior art, the CPU 15 needs to read the register in the memory controller 13 once and the register in the data transfer controller 11 twice in order to check error information during data transfer. On the other hand, in this embodiment, it is only necessary to read the register in the memory controller 13 twice, and the load on the CPU 15 can be reduced.

本実施例では、上記のように、データ転送コントローラ11とセントラライズド・モジュール2間のデータ転送における正常終了確認であるAccess Assurance(A.A.)について、メモリコントローラ13のメールボックス・レジスタ13aの機能を使用し、メールボックス・レジスタ13aにA.A.コードがセットされると、CPU15へ自動的に割り込みがあがるようにしたので、CPUに対する負荷を軽減することが可能となり、ディスク制御システムの性能向上を図ることができる。   In the present embodiment, as described above, with respect to Access Assurance (AA), which is a normal end confirmation in data transfer between the data transfer controller 11 and the centralized module 2, the mailbox register 13a of the memory controller 13 is used. In the mailbox register 13a. A. When the code is set, the CPU 15 is automatically interrupted, so the load on the CPU can be reduced and the performance of the disk control system can be improved.

本発明の実施例のデータ転送制御装置の構成例を示す図である。It is a figure which shows the structural example of the data transfer control apparatus of the Example of this invention. 本発明の適用例であるRAID装置の全体構成を示す図である。It is a figure which shows the whole structure of the RAID apparatus which is an example of application of this invention. 本発明の実施例におけるデータ転送処理を説明する図である。It is a figure explaining the data transfer process in the Example of this invention. 本発明の実施例におけるデータ転送の正常終了確認処理を説明する図である。It is a figure explaining the normal completion confirmation process of the data transfer in the Example of this invention. ディスクリプタおよびA.A.コードの例を示す図である。Descriptor and A. A. It is a figure which shows the example of a code | cord. 従来のデータ転送処理を説明する図である。It is a figure explaining the conventional data transfer process. 従来のデータ転送の正常終了確認処理を説明する図である。It is a figure explaining the normal completion confirmation process of the conventional data transfer.

符号の説明Explanation of symbols

1 アダプタ(ADP)
2 セントラライズド・モジュール(CM)
3 ルータ(RT)
11 データ転送コントローラ
11a データ転送エンジン
11b データ転送制御部
12 データバッファ
13 メモリコントローラ
13a メールボックス・レジスタ
14 主記憶装置
15 CPU
16 インタフェースモジュール
20 RAID装置
21 ディスク装置
1 Adapter (ADP)
2 Centralized module (CM)
3 Router (RT)
11 Data Transfer Controller 11a Data Transfer Engine 11b Data Transfer Control Unit 12 Data Buffer 13 Memory Controller 13a Mailbox Register 14 Main Memory 15 CPU
16 Interface module 20 RAID device 21 Disk device

Claims (1)

ローカル側モジュールからリモート側モジュールにデータ転送を行うデータ転送制御装置であって、
上記ローカル側モジュールは、処理装置と、データ転送制御手段と、該処理装置とデータ転送制御手段との間に接続されたメモリ制御手段と、該メモリ制御手段に接続された主記憶装置から構成され、上記メモリ制御手段は、データが設定されたとき上記処理装置に割り込みを発生するレジスタを備え、
上記処理装置は、上記主記憶装置に、データ転送情報と、上記データ転送正常終了確認情報を獲得するか否かを示す情報を格納し、
上記データ転送制御手段は、上記主記憶手段に格納された情報を読み出して、上記リモート側モジュールにデータ転送を行うとともに、該データ転送にデータ転送正常終了確認情報を、リモート側のモジュールから獲得し、獲得したデータ転送正常終了確認情報を、上記メモリ制御手段の上記レジスタに設定し、
前記処理装置は、該レジスタからの割り込みに基づき、上記レジスタからデータ転送正常終了確認情報を取得する
ことを特徴とするデータ転送制御装置。
A data transfer control device for transferring data from a local module to a remote module,
The local module includes a processing device, data transfer control means, memory control means connected between the processing device and data transfer control means, and a main storage device connected to the memory control means. The memory control means includes a register that generates an interrupt to the processing device when data is set,
The processing device stores data transfer information and information indicating whether to acquire the data transfer normal end confirmation information in the main storage device,
The data transfer control means reads the information stored in the main storage means, transfers the data to the remote module, and acquires data transfer normal end confirmation information from the remote module after the data transfer. The acquired data transfer normal end confirmation information is set in the register of the memory control means,
The data processing control device, wherein the processing device acquires data transfer normal end confirmation information from the register based on an interrupt from the register.
JP2004051643A 2004-02-26 2004-02-26 Data transfer control device Expired - Fee Related JP4439295B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004051643A JP4439295B2 (en) 2004-02-26 2004-02-26 Data transfer control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004051643A JP4439295B2 (en) 2004-02-26 2004-02-26 Data transfer control device

Publications (2)

Publication Number Publication Date
JP2005242666A JP2005242666A (en) 2005-09-08
JP4439295B2 true JP4439295B2 (en) 2010-03-24

Family

ID=35024344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004051643A Expired - Fee Related JP4439295B2 (en) 2004-02-26 2004-02-26 Data transfer control device

Country Status (1)

Country Link
JP (1) JP4439295B2 (en)

Also Published As

Publication number Publication date
JP2005242666A (en) 2005-09-08

Similar Documents

Publication Publication Date Title
JP4658122B2 (en) DMA controller, node, data transfer control method, and program
US7676701B2 (en) Computer readable medium storing an error recovery program, error recovery method, error recovery apparatus, and computer system
JP4451837B2 (en) Data transfer apparatus and data transfer method
US9473273B2 (en) Memory system capable of increasing data transfer efficiency
US7143206B2 (en) Method for controlling data transfer unit having channel control unit, storage device control unit, and DMA processor
US11068337B2 (en) Data processing apparatus that disconnects control circuit from error detection circuit and diagnosis method
US6988151B2 (en) Storage control device with a plurality of channel control sections
US7152129B2 (en) Apparatus having an inter-module data transfer confirming function, storage controlling apparatus, and interface module for the apparatus
JP5151500B2 (en) Computer system, failure processing method, and failure processing program
JP4034572B2 (en) Remote interrupt signal processing method, system, and network interface system
JP4439295B2 (en) Data transfer control device
US8151028B2 (en) Information processing apparatus and control method thereof
CN115454705A (en) Fault processing method, related device, computer device, medium, and program
EP3404547B1 (en) Method for supervising and initializing ports
US7568121B2 (en) Recovery from failure in data storage systems
JP5227601B2 (en) Control system
CN109343986B (en) Method and computer system for processing memory failure
JP2003085129A (en) Data communication controller and data transfer device
CN117909107A (en) Method, storage device and storage system for responding to error command
JPH04349559A (en) Information processor
JP4355531B2 (en) Data transfer control device and data transfer control system
JP2005018317A (en) Transaction failure recessing system
JPS6245575B2 (en)
JPH0589022A (en) Information processor
WO2006070450A1 (en) Device having module-to-module data transfer confirmation function, storage controller, and interface module for the controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060509

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090519

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090716

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100105

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

Free format text: PAYMENT UNTIL: 20130115

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4439295

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130115

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140115

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees