JP5728088B2 - 入出力制御装置及び入出力制御装置のフレーム処理方法 - Google Patents

入出力制御装置及び入出力制御装置のフレーム処理方法 Download PDF

Info

Publication number
JP5728088B2
JP5728088B2 JP2013522360A JP2013522360A JP5728088B2 JP 5728088 B2 JP5728088 B2 JP 5728088B2 JP 2013522360 A JP2013522360 A JP 2013522360A JP 2013522360 A JP2013522360 A JP 2013522360A JP 5728088 B2 JP5728088 B2 JP 5728088B2
Authority
JP
Japan
Prior art keywords
control circuit
frame
reception
transmission
received
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013522360A
Other languages
English (en)
Other versions
JPWO2013001578A1 (ja
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2013001578A1 publication Critical patent/JPWO2013001578A1/ja
Application granted granted Critical
Publication of JP5728088B2 publication Critical patent/JP5728088B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、計算機システム内でデータを送受信するための入出力制御装置及び入出力制御装置のフレーム処理方法に関する。
超高速データリンクの分野においては、飛躍的な技術的発展がある。計算機システムでは、コンピュータと入出力(I/O)装置間のネットワークの相互接続には、さらなる高速化が望まれており、実用的で安価な相互接続手段として、ファイバチャネル(FC)が選択されている。
また、ファイバチャネルとホストプロセッサの接続手段として、PCI−SIGにて策定されたPCI(Peripheral Component Interconnect)を用いる機構が広く用いられており、各社からファイバチャネルのHBA(Host Bus Adapter)が市場に提供されている。
近年のHBAにおける市場では、仮想化技術やクラウドコンピューティングの台頭により、一つのHBAを複数のゲストOS(Operating System)で共有して使用することで、TCO(Total Cost of Ownership)を削減するホストシステムが普及しており、共有によるネットワークの負荷増大に伴うHBAの性能(単位時間当たりのトランザクション数)向上に対する要求が飛躍的に増大している。
HBAの性能を高めるに際して、例えば、全く独立した複数のファイバチャネル制御回路を1つのLSI(Large Scale Integrated circuit)に集積する方法が報告されている(特許文献1参照)。この特許文献1には、複数のファイバチャネルポートで送受信されるフレームの処理を1つのプロトコル制御回路で実行する方法が言及されている。
特開2009−223918号公報
しかし、特許文献1に記載されている方式では、トランザクション数の増加に伴い、プロトコル制御回路の負荷が増大することがある。
この場合、プロトコル制御回路の動作周波数を上げることで、処理性能を向上させることは可能である。しかし、プロトコル制御回路の動作周波数の向上には技術的限界があり、この方法のみで、プロトコル制御回路に求められる性能を満足することは難しい。
また、別の性能向上手法として、複数のファイバチャネルポートに対して、1対1にプロトコル制御回路を搭載することも可能である。この方法によれば、プロトコル制御回路の負荷を重くすることなく、複数のファイバチャネルポートで送受信されるフレームの処理を同時に制御することが可能となる。
しかし、負荷の軽いファイバチャネルポートが存在する場合、そのファイバチャネルポートを制御するプロトコル制御回路の処理も軽くなるため、一部のプロトコル制御回路のアイドル時間が多くなり、複数のプロトコル制御回路全体としては、アイドル時間を有効に使用できなくなる。
本発明は、前記従来技術の課題に鑑みて為されたものであり、その目的は、複数の受信フレームを、複数のプロトコル制御回路に割り当て、複数の受信フレームの処理を並列に実行することができる入出力制御装置及び入出力制御装置のフレーム処理方法を提供することにある。
前記目的を達成するために、本発明は、コマンド発行元のアクセス対象と送受信されるデータを送受信フレーム毎にフレーム単位で制御する1又は複数のインタフェース制御回路と、前記インタフェース制御回路で送受信される送受信フレームのうち受信フレームの受信データを受信データバッファに格納し、前記受信データバッファに格納された前記受信データを前記コマンド発行元へ転送する受信バッファ制御回路と、前記コマンド発行元から送信される送信データを送信データバッファに格納し、前記送信データバッファに格納された前記送信データを前記インタフェースへ転送する送信バッファ制御回路と、前記受信バッファ制御回路に対して前記受信データの転送を制御すると共に、前記送信バッファ制御回路に対して前記送信データの転送を制御する複数のプロトコル制御回路と、前記インタフェース制御回路で送受信される送受信フレームのうち受信フレームに付加される制御情報を基に前記受信フレームの割当先を前記複数のプロトコル制御回路の中から選択し、前記選択したプロトコル制御回路に前記受信フレームの処理を割り当てる受信フレームルーティング制御回路と、を有することを特徴とする。
本発明によれば、複数の受信フレームを、複数のプロトコル制御回路に割り当て、複数の受信フレームの処理を並列に実行することができる。
本発明に係る入出力制御装置が用いられた計算機システムの全体構成図である。 本発明に係る入出力制御装置のブロック図である。 ファイバチャネルフレームの構成図である。 ファイバチャネルフレーム内のFC-PHヘッダのフォーマット構成図である。 エクスチェンジ番号のフォーマット構成図である。 入出力制御装置がオリジネータとして動作する場合の動作説明図である。 入出力制御装置がレスポンダとして動作する場合の動作説明図である。 受信フレームルーティング制御回路のブロック図である。 受信フレームルーティング制御回路の動作を説明するためのフローチャートである。
<実施例>
本実施例は、インタフェース制御回路で受信した受信フレームに付加される制御情報を基に受信フレームの割当先を複数のプロトコル制御回路の中から選択し、選択したプロトコル制御回路に受信フレームの処理を割り当てるものである。
また、本実施例は、本発明を、4つのファイバチャネルポートに対して4つのプロトコル制御回路を有する入出力制御装置に適用した場合の例であり、ファイバチャネルポートに対するプロトコル制御回路の数は実施例に限定されるものではない。
以下、本発明の一実施例を図面に基づいて説明する。
図1は、本発明に係る入出力制御装置を備えた計算機システムのシステム構成図である。
図1において、計算機システムは、ホスト装置10と、入出力装置12、14と、ディスク制御装置16から構成される。
ホスト装置10は、1台または複数台のCPU(中央処理装置)20と、ホストバスコントローラ22と、主記憶装置24で構成され、コマンド発行元となる。
CPU20は、処理プログラムに従ってホスト装置10全体を統括制御するプロセッサとして構成される。主記憶装置24は各種データを記憶するデータ記憶領域として構成される。ホストバスコントローラ22は、CPU20と主記憶装置24間のデータ転送、入出力制御装置12とCPU20間のデータ転送又は入出力制御装置12と主記憶装置24間のデータ転送を制御する。ホストバスコントローラ22と入出力制御装置12との間には、インタフェースとして、例えば、PCI-Expressインタフェース60が構成される。
入出力制御装置12は、ホスト装置10又は入出力制御装置14とデータの授受を行う装置であって、4つのポート(入出力ポート)30、32、34、36を備えている。入出力制御装置14は、入出力制御装置12又はディスク制御装置16とデータの授受を行う装置であって、4つのポート(入出力ポート)40、42、44、46を備えている。ポート30〜36とポート40〜46には、例えば、光トランシーバが配置されており、各ポート間で、光トランシーバを介してデータの授受が行われる。この場合、入出力制御装置12と入出力制御装置14との間には、インタフェースとして、例えば、ファイバチャネルインタフェース62が構成される。
ディスク制御装置16は、入出力制御装置14とデータの授受を行う装置であって、ディスク装置50と、ディスクコントローラ52で構成され、コマンド発行元(ホスト装置10)のアクセス対象となる。
ディスク制御装置16と入出力制御装置14との間には、インタフェースとして、例えば、PCI-Expressインタフェース64が構成される。
ディスク装置50は、複数の記憶デバイス、例えば、HDD(Hard Disk Drive)で構成される。ディスクコントローラ52は、ディスク装置50に対するデータの入出力を制御する。ディスクコントローラ52は、入出力制御装置14に接続される。
次に、図2に入出力制御装置12のブロック図を示す。
図2において、入出力制御装置12は、光トランシーバ70、72、74、76と、ファイバチャネルインタフェース制御回路78、80、82、84と、送信データバッファ86と、送信バッファ制御回路88と、受信データバッファ90と、受信バッファ制御回路92と、受信フレームルーティング制御回路94と、4つのプロトコル制御回路96、98、100、102と、DMA(Direct Memory Access)制御回路104と、起動キュー制御回路106と、PCI-Express制御回路108から構成される。
光トランシーバ70〜76は、それぞれポート30〜36に配置され、入出力制御装置14のポート40〜46に配置される光トランシーバとデータ(フレーム)の送受信を行う。
ファイバチャネルインタフェース制御回路78、80、82、84は、シリアライザデシリアライザ(Serdes)110と、フレーム生成回路112と、フレーム解析回路114とを有し、コマンド発行元のアクセス対象と送受信されるデータを送受信フレーム毎にフレーム単位で制御するインタフェース回路として構成される。
なお、ファイバチャネルインタフェース制御回路78、80、82、84は、それぞれ同一の構成であるので、以下、ファイバチャネルインタフェース制御回路78についてのみ説明する。
シリアライザデシリアライザ(Serdes)110は、光トランシーバ70の受信による受信フレームに付加されたシリアルデータをパラレルデータに変換し、変換されたパラレルデータをフレーム解析回路114に出力し、フレーム生成回路112から送出された送信フレームを光トランシーバ70に出力する。
フレーム生成回路112は、送信データバッファ86から送信される送信データを基に送信フレームのフレームヘッダを生成し、生成したフレームヘッダに送信データを付加し、送信データとフレームヘッダが付加された送信フレームをシリアライザデシリアライザ(Serdes)110に出力する。
フレーム解析回路114は、シリアライザデシリアライザ(Serdes)110で変換されたパラレルデータからオーダーセットを認識すると共に、フレーム組み立ておよびCRC(Cyclic Redundancy Check)を用いた誤り検出等の処理を行い、処理結果を受信フレームに反映し、処理結果が反映された受信フレームを受信データバッファ90へ出力する。
送信データバッファ86は、ファイバチャネルインタフェース制御回路78〜84共通の送信データバッファであって、DMA制御回路104から送出される送信データを格納する。送信バッファ制御回路88は、プロトコル制御回路96〜102のうちいずれか1つのプロトコル制御回路からの指示を基に送信データバッファ86内の送信データをファイバチャネルインタフェース制御回路78〜84のうちいずれか1つのファイバチャネルインタフェース制御回路に転送する制御を実行する。
受信データバッファ90は、ファイバチャネルインタフェース制御回路78〜84共通の受信データバッファであって、光トランシーバ70〜76の受信による受信フレームに付加された受信データを格納する。受信バッファ制御回路92は、受信データバッファ90に格納された受信データをDMA制御回路40へ転送する制御を実行すると共に、受信データバッファ90に格納された受信フレームのバッファアドレスを、受信フレームルーティング制御回路94を介してプロトコル制御回路96〜102に割り込み処理で通知する。
受信フレームルーティング制御回路94は、ファイバチャネルインタフェース制御回路78〜84の出力による受信フレームに付加された制御情報を判別し、4つのプロトコル制御回路96〜102のうちいずれか1つのプロトコル制御回路を受信フレームの割当先として決定するためのルーティング制御を実行する。
プロトコル制御回路96〜102は、受信バッファ制御回路92に対して受信データの転送を制御すると共に、送信バッファ制御回路88に対して送信データの転送を制御する。また、プロトコル制御回路96〜102は、起動キュー制御回路106からの起動コマンドをスタックする起動キュー116をそれぞれ備えている。
プロトコル制御回路96〜102は、それぞれが備える起動キュー116にスタックされた起動コマンドに従って処理を実行する。例えば、ライトコマンドがプロトコル制御回路96の起動キュー116にスタックされた場合、プロトコル制御回路96は、送信フレームを送信するための指示をDMA制御回路104と送信バッファ制御回路88に出力する。プロトコル制御回路98〜102も同様に、それぞれが備える起動キュー116にコマンドがスタックされると、送信フレームを送信するための指示をDMA制御回路104と送信バッファ制御回路88に出力する。
一方、受信フレームルーティング制御回路94によって受信フレームの割当先が決定された場合、プロトコル制御回路96〜102のうち受信フレームが割り当てられたプロトコル制御回路は、受信バッファ制御回路92から割り込みで通知されたバッファアドレスを基に主記憶装置24におけるデータの格納先をDMA制御回路104に指定するための処理を実行する。
DMA制御回路104は、例えばPCI-Express制御回路などのバス制御回路108からの送信フレームを送信データバッファ86に送出する制御を実行し、また受信データバッファ90から送出される受信フレームをPCI-Express制御回路108に送出する制御を実行する。この際、プロトコル制御回路96〜102のうちいずれかの1つのプロトコル制御回路から受信フレームの送出が指示された場合、DMA制御回路104は、受信データバッファ90から、指定の受信フレームを読み出し、読み出した受信フレームをPCI-Express制御回路108に送出する。
PCI-Express制御回路108は、ホスト装置10とDMA制御回路104との間で授受される受信フレームまたは送信フレームの中継を行うとともに、ホスト装置10のデバイスドライバ28から送出される起動コマンドを起動キュー制御回路106に送出するとともに、起動キュー116の状態を、PCI-Express制御回路108を介してホスト装置10に出力する。なお、デバイスドライバ28は、CPU20がデバイス処理プログラムを実行することによって構成される。
入出力制御装置14は、入出力制御装置12と同一の要素を用いて構成することができる。また、入出力制御装置14は、入出力制御装置12を構成する要素のうち受信フレームルーティング制御回路94を除外し、4つのプロトコル制御回路を用いる代わりに、1つのプロトコル制御回路を用いて構成することもできる。
次に、図3に、ファイバチャネルフレームの構成図を示す。
図3において、ファイバチャネルフレーム200は、各プロトコル制御回路96〜102で解析される受信フレームとして構成される。このファイバチャネルフレーム200は、4バイトのSOF(Start Of Frame)202と、24バイトのFC-PH(Fibre Channel Physical)ヘッダ204と、0〜2112バイトのデータペイロード206と、4バイトのCRC208と、4バイトのEOF(End Of Frame)210から構成される。
SOF202とEOF210は、デリミタと呼ばれ、ファイバチャネルフレーム200の区切りを識別するためのオーダーセットである。FC-PHヘッダ204は、ファイバチャネルフレーム200の制御情報として構成される。データペイロード206は、例えば、ホスト装置10が利用するデータで構成される。CRC208は、誤り検出用のデータで構成される。この際、データペイロード206は、CRCを用いて妥当性が保証されたデータとして構成される。
次に、図4に、ファイバチャネルフレーム内のFC-PHヘッダのフォーマット構成図を示す。
図4において、ファイバチャネルフレーム200内のFC-PHヘッダのフォーマット300は、ワードアドレス302と、バイトアドレス304から構成される。ワードアドレス302には、アドレスとして「0」〜「5」が割り当てられ、バイトアドレス304には、アドレスとして「0」〜「3」が割り当てられる。各アドレスは、複数のフィールド306〜328に対応付けられる。
これら複数のフィールド306〜328のうちフィールド316はF-CTLとして構成され、このF-CTL には、Exchange Context(以下、E-Cと称する。)と呼ばれるフィールドが含まれている。フィールド316のE-C内には、フレームの送信側が、オリジネータ(Originator)として動作する場合、“0”の情報が、フレームの送信側の動作を特定する動作情報として付与され、フレームの送信側が、レスポンダ(Responder)として動作する場合には、“1”の情報が、フレームの送信側の動作を特定する動作情報として付与される。
ここで、送受信フレームとしてファイバチャネルフレーム200を用いる場合、ホスト装置10とディスク制御装置16との間の1回のリード/ライト動作で送受信される、論理的なフレームの集合をエクスチェンジ(Exchange)と称し、ファイバチャネルでは、この論理的なフレームの送受信に伴うデータ転送をエクスチェンジ毎に多重動作することとしている。
そこで、本実施例では、エクスチェンジ毎に割り当てる番号を各プロトコル制御回路96〜102でユニークに決定し、各プロトコル制御回路で決定されたエクスチェンジ番号をファイバチャネルフレーム200のFC-PHヘッダ内に付与することとしている。
即ち、送受信フレームに付加される制御情報に属する識別情報であって、各プロトコル制御回路96〜102固有の識別情報として、各プロトコル制御回路96〜102を一意に識別するためのエクスチェンジ番号をファイバチャネルフレーム200のFC-PHヘッダ内に付与する。
具体的には、フォーマット300のうちフィールド324をOX-ID(Originator Exchange IDentifier)として構成し、フィールド326をRX-ID(Responder Exchange IDentifier)として構成する。
この際、フレーム送信側が、オリジネータとして動作する場合、フィールド324の「OX-ID」にエクスチェンジ番号が付与され、フレームの送信側が、レスポンダとして動作する場合、フィールド326のRX-IDに、エクスチェンジ番号が付与される。なお、エクスチェンジ番号は、後述するように、プロトコル制御回路番号を含む番号である。
次に、図5に、エクスチェンジ番号のフォーマットの構成図を示す。
図5において、エクスチェンジ番号のフォーマット400は、バイトアドレス402と、ビットアドレス404と、マッピング406から構成される。バイトアドレス402のうちバイト0、1またはバイト2、3にはビットアドレス404として、「0」〜「7」がそれぞれ割り当てられる。16ビットで構成されるビットアドレス404のうち先頭の2ビットには、4つのプロトコル制御回路96〜102の中から1つのプロトコル制御回路を選択するためのプロトコル制御回路番号408がマッピングされる。ビットアドレス404のうち残りの14ビットには、エクスチェンジ番号410がマッピングされる。
次に、入出力制御装置12がオリジネータとして動作するときの処理を図6に従って説明する。
ホスト装置10のデバイスドライバ28が、トランザクションを実行するに際して、プロトコル制御回路96〜102の中から1つのプロトコル制御回路、例えば、プロトコル制御回路96を選択し、選択したプロトコル制御回路96に起動コマンドを送出する場合、デバイスドライバ28は、起動キュー制御回路106に対して起動コマンドを送出する。起動キュー制御回路106は、プロトコル制御回路96の起動キュー116に、起動コマンドとして、フレーム送信起動命令をスタックする(601)。
フレーム送信起動命令を受けたプロトコル制御回路96は、送信フレームを生成するとともに、送信フレームのフィールド316のE-Cに、“0”を設定し、フィールド324のOX-IDに、ユニークなエクスチェンジ番号(プロトコル制御回路番号408とエクスチェンジ番号410を含む番号)を付与する(602)。
その後、プロトコル制御回路96は、送信バッファ制御回路88と送信データバッファ86を介して、例えば、ファイバチャネルインタフェース制御回路78に送信フレームを送信する(603)。この送信フレームは、ファイバチャネルインタフェース制御回路78から、光トランシーバ70を介して入出力制御装置14に送信された後、ディスク制御装置16に送信される。
この後、ディスク制御装置16は、送信フレームに応答する応答フレームを生成する。この際、ディスク制御装置16は、レスポンダとして動作し、応答フレームのフィールド316のE-Cに“1”を設定し、フィールド324のOX-IDには、受信フレームに付与されたエクスチェンジ番号と同じ番号を付与し、各フィールドに制御情報が設定された応答フレームを入出力制御装置14に送信する。
入出力制御装置14は、ディスク制御装置16から受信した応答フレームを入出力制御装置12に送信する(604)。
この後、応答フレームを受信した入出力制御装置12は、応答フレームを受信フレームとして処理し、この受信フレームを、プロトコル制御回路96〜102のうち1つのプロトコル制御回路へ割り当てるためのルーティング処理を実行する。
フィールド324のOX-IDに、ユニークなエクスチェンジ番号(各プロトコル制御回路96〜102を識別するための番号)を付与する場合、例えば、プロトコル制御回路96は、プロトコル制御回路番号408に、2ビットの番号として、“00”を付与することができる。
また、プロトコル制御回路98〜102が、フィールド324のOX-IDに、ユニークなエクスチェンジ番号を付与する場合には、例えば、プロトコル制御回路98は、プロトコル制御回路番号408に、2ビットの番号として、“01”を付与し、プロトコル制御回路100は、プロトコル制御回路番号408に、2ビットの番号として、“10”を付与し、プロトコル制御回路102は、プロトコル制御回路番号408に、2ビットの番号として、“11”を付与することができる。
次に、入出力制御装置12がレスポンダとして動作するときの処理を図7に従って説明する。
まず、ディスク制御装置16が、例えば、リード処理又はライト処理とは異なる処理を実行するに際して、オリジネータとして動作する場合、送信フレームのフィールド316のE-Cに“0”を設定し、フィールド326のRX-IDにエクスチェンジ番号(プロトコル制御回路番号408とエクスチェンジ番号410を含む番号)をそれぞれ制御情報として設定し、これら制御情報が設定された送信フレームを、入出力制御装置16を介して、入出力制御装置12に送信する(701)。
入出力制御装置12は、受信したフレームのフィールド316のE-Cが“0”に設定されているので、レスポンダとして動作し、受信した受信フレームのフィールド326のRX-IDに設定されたエクスチェンジ番号を判別し、この判別結果から、受信フレームの割当先となるプロトコル制御回路を決定する。
例えば、受信フレームルーティング制御回路94は、受信フレームのフィールド326のRX-IDに設定されたエクスチェンジ番号を基に受信フレームの割当先となるプロトコル制御回路、例えば、プロトコル制御回路96を決定し、決定したプロトコル制御回路96にフレーム受信を通知する(702)。この後、プロトコル制御回路96は、受信フレームをホスト装置10のデバイスドライバ28に通知(送信)する(703)。
次に、ホスト装置10のデバイスドライバ28は、受信フレームに応答する応答フレームを生成し、生成した応答フレームを起動するための応答フレーム起動命令をプロトコル制御回路96に送信する(704)。
プロトコル制御回路96は、応答フレームのフィールド316のE-Cに“1”を設定するとともに、フィールド326のRX-IDに、受信フレームに設定されているエクスチェンジ番号と同じエクスチェンジ番号(受信フレームにエクスチェンジ番号が設定されていない場合は、新規のエクスチェンジ番号)を付与し、これら制御情報が設定された応答フレームを、送信バッファ制御回路88と送信データバッファ86を介して、例えば、ファイバチャネルインタフェース制御回路78に送出する(705)。
応答フレームを受信したファイバチャネルインタフェース制御回路78は、光トランシーバ70を介して、応答フレームを入出力制御装置14に送信する(706)。この後、入出力制御装置14は、受信した応答フレームをディスク制御装置16に送信する。
次に、図8に、受信フレームルーティング制御回路のブロック図を示す。
図8において、受信フレームルーティング制御回路94は、レジスタ500、502、504と、デコーダ506、508と、ANDゲート510と、NOTゲート512と、ANDゲート514〜520と、ANDゲート522〜530と、ORゲート532、534、536、538から構成され、レジスタ500、502、504の入力側が、それぞれファイバチャネルインタフェース制御回路78〜84に接続され、ORゲート532〜538の出力側が、それぞれプロトコル制御回路96〜102に接続される。
レジスタ500は、ファイバチャネルインタフェース制御回路78〜84から出力される受信フレームのフィールド316のE-Cに付加された制御情報を判別し、E-Cが、“0”の場合、“0”の信号を、ANDゲート514〜520に出力するとともに、“0”の信号を、NOTゲート512を介して、“1”の信号に変換してANDゲート522〜530に出力する。
一方、E-Cが“1”の場合、レジスタ500は、“1”の信号を、ANDゲート514〜520に出力するとともに、“1”の信号を、NOTゲート512を介して、“0”の信号に変換してANDゲート522〜530に出力する。
レジスタ502は、受信フレームのうちフィールド324のOX-IDに付与された制御情報を判別し、この制御情報のうち先頭の2ビットのプロトコル制御回路番号408を示す信号をデコーダ506に出力する。
デコーダ506は、レジスタ502の出力信号をデコードし、デコードした信号をそれぞれANDゲート514〜520に出力する。
例えば、デコーダ506は、レジスタ502から、“00”の信号を入力した場合、「1000」の信号を出力し、“01”の信号を入力した場合、「0100」の信号を出力し、“10”の信号を入力した場合、「0010」の信号を出力し、“11”の信号を入力した場合、「0001」の信号を出力する。
ANDゲート514〜520は、レジスタ500の出力信号とデコーダ506の出力信号の論理積を条件とした信号をORゲート532〜538に出力する。
例えば、入出力制御装置12がオリジネータとして動作する場合であって、レジスタ500から“1”の信号が出力される場合、ANDゲート514は、デコーダ506から「1000」の信号が出力されたことを条件に、“1”の信号をORゲート532に出力し、ANDゲート516は、デコーダ506から「0100」の信号が出力されたことを条件に、“1”の信号をORゲート534に出力し、ANDゲート518は、デコーダ506から「0010」の信号が出力されたことを条件に、“1”の信号をORゲート536に出力し、ANDゲート520は、デコーダ506から「0001」の信号が出力されたことを条件に、“1”の信号をORゲート538に出力する。
ORゲート532〜538は、それぞれANDゲート514〜520から“1”の信号が出力されたことを条件に、それぞれプロトコル制御回路96〜102に受信フレームを割り当てるための割り込み信号をプロトコル制御回路96〜102に出力する。
この際、入出力制御装置12が、オリジネータとして動作する場合、受信フレームのうちフィールド324のOX-IDに、“00”が設定されている場合には、プロトコル制御回路96が、受信フレームの割当先として決定され、フィールド324のOX-IDに、“01”が設定されている場合には、プロトコル制御回路98が、受信フレームの割当先として決定され、フィールド324のOX-IDに、“10”が設定されている場合には、プロトコル制御回路100が、受信フレームの割当先として決定され、フィールド324のOX-IDに、“11”が設定されている場合には、プロトコル制御回路102が、受信フレームの割当先として決定されることになる。
即ち、プロトコル制御回路96が、送信フレームのフィールド324のOX-IDに、プロトコル制御回路番号408として、“00”を付与し、同様にして、プロトコル制御回路98〜102が、送信フレームのフィールド324のOX-IDに、プロトコル制御回路番号408として、それぞれ“01”、“10”、“11”を付与した場合、各プロトコル制御回路96〜102は、送信フレームに付与したプロトコル制御回路番号408と同一のプロトコル制御回路番号408が付与された応答フレームを、受信フレームとして処理することになる。
このように、複数の受信フレームを入出力制御装置12で処理する場合でも、各受信フレームをプロトコル制御回路番号408に従って各プロトコル制御回路96〜102に割り当てることで、複数のトランザクションを並列に処理することができ、結果として、各トランザクションの性能を向上させることができる。
レジスタ504は、受信フレームのフィールド326のRX-IDを判別し、プロトコル制御回路番号408を示す信号をデコーダ508に出力するとともに、プロトコル制御回路番号408を示す信号とエクスチェンジ番号410を示す信号(0〜15ビットの信号)をそれぞれANDゲート510に出力する。
デコーダ508は、レジスタ504の出力信号をデコードし、デコードした信号をANDゲート522〜528に出力する。
例えば、デコーダ508は、レジスタ504の出力が“00”である場合、「1000」の信号をANDゲート522〜528に出力し、レジスタ504の出力が“01”である場合、「0100」の信号をANDゲート522〜528に出力し、レジスタ504の出力が“10”である場合、「0010」の信号をANDゲート522〜528に出力し、レジスタ504の出力が“1”である場合、「0001」の信号をANDゲート522〜528に出力する。
ANDゲート522〜528は、NOTゲート512の出力信号とデコーダ508の出力信号との論理積を条件とした信号をORゲート532〜538に出力する。
例えば、入出力制御装置12が、レスポンダとして動作し、受信フレームのE-Cが“0”であって、レジスタ500から“0”の信号が出力され、NOTゲート512の出力が“1”であることを条件に、ANDゲート522〜528のうち、デコーダ508から“1”の信号を入力するANDゲートから“1”の信号が出力される。
具体的には、NOTゲート512の出力が“1”であることを条件に、デコーダ508の出力が、「1000」であった場合、ANDゲート522から“1”の信号がORゲート532に出力され、デコーダ508の出力が「0100」である場合、ANDゲート524から“1”の信号がORゲート534に出力され、デコーダ508の出力が「0010」である場合、ANDゲート526から“1”の信号がORゲート536に出力され、デコーダ508の出力が「0001」である場合、ANDゲート528から“1”の信号がORゲート538に出力される。
ORゲート532〜538は、ANDゲート522〜528から“1”の信号が入力されたことを条件に、プロトコル制御回路96〜102に対して受信フレームを割り当てるための割り込み信号を出力する。
この際、入出力制御装置12が、レスポンダとして動作する場合、受信フレームのうちフィールド326のRX-IDに、“00”が設定されている場合には、プロトコル制御回路96が、受信フレームの割当先として決定され、フィールド326のRX-IDに、“01”が設定されている場合には、プロトコル制御回路98が、受信フレームの割当先として決定され、フィールド326のRX-IDに、“10”が設定されている場合には、プロトコル制御回路100が、受信フレームの割当先として決定され、フィールド326のRX-IDに、“11”が設定されている場合には、プロトコル制御回路102が、受信フレームの割当先として決定されることになる。
このように、複数の受信フレームを入出力制御装置12で処理する場合でも、各受信フレームをプロトコル制御回路番号408に従って各プロトコル制御回路96〜102に割り当てることで、複数のトランザクションを並列に処理することができ、結果として、各トランザクションの性能を向上させることができる。
また、ANDゲート510は、0〜15ビットの信号であって、プロトコル制御回路番号408とエクスチェンジ番号410を示す信号がそれぞれ“1”である場合、“1”の信号をANDゲート530に出力する。
ANDゲート530は、NOTゲート512の出力が“1”であることを条件に、ANDゲート510から“1”の信号が出力された場合、“1”の信号を全てのORゲート532〜538に“1”の信号を出力する。
即ち、ORゲート532〜538は、ANDゲート530から“1”の信号が出力された場合、ブロードキャスティングの処理として、全てのプロトコル制御回路96〜102に割り込み信号を出力し、受信フレームの割当先を全てのプロトコル制御回路96〜102に決定する。
この場合、各プロトコル制御回路96〜102は、自身が処理すべき受信フレームであれば、受信フレームの処理を実行し、自身が処理すべき受信フレームでない場合には、受信フレームの処理を無効とすることもできる。
次に、入出力制御装置12が受信フレームを処理する場合の処理内容を図9のフローチャートに従って説明する。
この処理は、図6に示す応答フレーム送信(604)の後のルーティング処理または図7のフレーム受信通知(702)におけるルーティング処理として、受信フレームルーティング制御回路94によって実行される。
まず、受信フレームルーティング制御回路94は、受信フレームに付加されたフィールド316のE-Cの内容を判別し、レスポンダ動作か否かを判定する(S11)。レスポンダ動作でない場合、即ち、E-C=1である場合、受信フレームルーティング制御回路94は、入出力制御装置12がオリジネータとして動作するため、受信フレームのうちフィールド324のOX-IDに付与されたエクスチェンジ番号のうち、先頭2ビットのプロトコル制御回路番号408を基に、ルーティング先のプロトコル制御回路番号を決定するための処理を実行する(S12)。
この場合、受信フレームルーティング制御回路94では、レジスタ500から“1”の信号が出力されるとともに、レジスタ502から、プロトコル制御回路番号408を示す2ビットの信号がデコーダ506に出力される。この結果、2ビットのプロトコル制御回路番号408を基にプロトコル制御回路96〜102のうちいずれか1つのプロトコル制御回路に受信フレームを割り当てるための割り込み信号が出力され、割り込みが起動され(S13)、その後、このルーチンでの処理を終了する。
この割り込み処理では、受信フレームのうちフィールド324のOX-IDに、“00”が設定されている場合、プロトコル制御回路96が、受信フレームの割当先として決定され、フィールド324のOX-IDに、“01”が設定されている場合、プロトコル制御回路98が、受信フレームの割当先として決定され、フィールド324のOX-IDに、“10”が設定されている場合、プロトコル制御回路100が、受信フレームの割当先として決定され、フィールド324のOX-IDに、“11”が設定されている場合、プロトコル制御回路102が、受信フレームの割当先として決定されることになる。
一方、ステップS11でレスポンダ動作と判定された場合、即ち、E-C=0である場合、受信フレームルーティング制御回路94では、レジスタ500から、“0”の信号が出力されるとともに、レジスタ504からプロトコル制御回路番号408を示す信号とエクスチェンジ番号410を示す信号がそれぞれ出力される。
ステップS11でレスポンダ動作と判定された場合、受信フレームルーティング制御回路94は、受信フレームのフィールド326のRX-IDに、プロトコル制御回路番号408が付与されているか否かを判定する(S14)。
ステップS14で肯定の判定結果を得た場合、入出力制御装置12がレスポンダとして動作するため、受信フレームのうちフィールド326のRX-IDに付与されたエクスチェンジ番号のうち、先頭2ビットのプロトコル制御回路番号408を基に、ルーティング先のプロトコル制御回路番号を決定するための処理を実行する(S15)。
この場合、受信フレームルーティング制御回路94では、レジスタ500から“0”の信号が出力されるとともに、レジスタ504から、プロトコル制御回路番号408を示す2ビットの信号がデコーダ508に出力される。この結果、2ビットのプロトコル制御回路番号408を基にプロトコル制御回路96〜102のうちいずれか1つのプロトコル制御回路に受信フレームを割り当てるための割り込み信号が出力され、割り込みが起動され(S16)、その後、このルーチンでの処理を終了する。
この割り込み処理では、受信フレームのうちフィールド326のRX-IDに、“00”が設定されている場合、プロトコル制御回路96が、受信フレームの割当先として決定され、フィールド326のRX-IDに、“01”が設定されている場合、プロトコル制御回路98が、受信フレームの割当先として決定され、フィールド326のRX-IDに、“10”が設定されている場合、プロトコル制御回路100が、受信フレームの割当先として決定され、フィールド326のRX-IDに、“11”が設定されている場合、プロトコル制御回路102が、受信フレームの割当先として決定されることになる。
一方、ステップS14で否定の判定結果を得た場合、受信フレームルーティング制御回路94は、全てのプロトコル制御回路96〜102に対してブロードキャスティングを実施するための処理を実行する(S17)。
即ち、受信フレームルーティング制御回路94は、受信フレームに付加される制御情報の中に、全てのプロトコル制御回路96〜102を選択するための識別情報が存在する場合、全てのプロトコル制御回路96〜102に対してブロードキャスティングを実施するための処理を実行する。
具体的には、レジスタ504から出力される16ビットの信号が全て“1”であって、ANDゲート510から“1”の信号が出力され、ANDゲート530から全てのORゲート532〜538に“1”の信号が出力され、プロトコル制御回路96〜102に対して割り込みが起動され(S18)、その後、このルーチンでの処理を終了する。
この場合、各プロトコル制御回路96〜102は、自身が処理すべき受信フレームであれば、受信フレームの処理を実行し、自身が処理すべき受信フレームでない場合には、受信フレームの処理を無効とする。
本実施例によれば、複数の受信フレームを、複数のプロトコル制御回路に割り当て、複数の受信フレームの処理を並列に実行することができる。
また、本実施例によれば、複数の受信フレームを入出力制御装置12で処理する場合でも、各受信フレームをプロトコル制御回路番号408に従って各プロトコル制御回路96〜102に割り当てることで、複数のトランザクションを並列に処理することができ、結果として、各トランザクションの性能を向上させることができる。
本実施例は、4つのファイバチャネルポートに対して4つのプロトコル制御回路を有する入出力制御装置12の場合について説明したが、ファイバチャネルポートに対するプロトコル制御回路の数は、実施例に限定されるものではない。例えば、1つのファイバチャネルポートに対して2つ以上のプロトコル制御回路を有する入出力制御装置12を構成したり、2つ以上のファイバチャネルポートに対して2つ以上のプロトコル制御回路を有する入出力制御装置12を構成したりすることができる。
本実施例では、ホスト装置10とディスク制御装置16との間に入出力制御装置12、14を配置した計算機システムに、本発明を適用したものについて述べたが、図1の入出力制御装置14の位置に、本実施例で述べた入出力制御装置12を配置した計算機システムにも、本発明を適用することができる。
なお、本発明は、上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能等は、それらの一部又は全部を、例えば、集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、IC(Integrated Circuit)カード、SD(Secure Digital)メモリカード、DVD(Digital Versatile Disc)等の記録媒体に記録して置くことができる。
10 ホスト装置、12、14 入出力制御装置、16 ディスク制御装置、28 デバイスドライバ、70〜76 光トランシーバ、78〜84 ファイバチャネルインタフェース制御回路、86 送信データバッファ、88 送信バッファ制御回路、90 受信データバッファ、92 受信バッファ制御回路、94 受信フレームルーティング制御回路、96〜102 プロトコル制御回路、104 DMA制御回路、106 起動キュー制御回路、108 PCI-Express制御回路、110 シリアライザデシリアライザ回路、112 フレーム生成回路、114 フレーム解析回路、116 起動キュー。

Claims (7)

  1. コマンド発行元のアクセス対象とインタフェースを介してデータの送受信を行うと共に、前記コマンド発行元のアクセス対象と送受信されるデータを送受信フレーム毎にフレーム単位で制御する1又は複数のインタフェース制御回路と、
    前記インタフェース制御回路で送受信される送受信フレームのうち受信フレームのデータを受信データとして受信データバッファに格納し、前記受信データバッファに格納された前記受信データを前記コマンド発行元へ転送する受信バッファ制御回路と、
    前記コマンド発行元から送信される送信データを送信データバッファに格納し、前記送信データバッファに格納された前記送信データを前記インタフェースへ転送する送信バッファ制御回路と、
    前記受信バッファ制御回路に対して前記受信データの転送を制御すると共に、前記送信バッファ制御回路に対して前記送信データの転送を制御する複数のプロトコル制御回路と、
    前記コマンド発行元のアクセス対象で生成されるフレームに付加され、前記プロトコル制御回路固有の識別情報を含む制御情報であって、前記インタフェース制御回路で送受信される送受信フレームのうち受信フレームに付加される制御情報を基に前記受信フレームの割当先を前記複数のプロトコル制御回路の中から選択し、前記選択したプロトコル制御回路に前記受信フレームの処理を割り当てる受信フレームルーティング制御回路と、を有し、
    前記複数のプロトコル制御回路のうち、前記コマンド発行元から起動コマンドを受信したプロトコル制御回路は、
    前記起動コマンドに従って送信フレームに付加される前記制御情報として、当該プロトコル制御回路固有の識別情報を含む制御情報を生成し、前記生成した制御情報を前記送信データバッファに格納された送信データに付加し、
    前記複数のプロトコル制御回路のうち、前記受信フレームルーティング制御回路により、前記受信フレームの処理が割り当てられたプロトコル制御回路は、
    前記受信バッファ制御回路に対して前記受信フレームに対応した受信データの転送を指示することを特徴とする入出力制御装置。
  2. 請求項1に記載の入出力制御装置であって、
    前記送信フレームに付加される前記制御情報は、前記送信フレーム送信側の動作を特定する動作情報を含み、前記プロトコル制御回路固有の識別情報は、前記各プロトコル制御回路を一意に識別するためのエクスチェンジ番号を含むことを特徴とする入出力制御装置。
  3. コマンド発行元のアクセス対象とインタフェースを介してデータの送受信を行うと共に、前記コマンド発行元のアクセス対象と送受信されるデータを送受信フレーム毎にフレーム単位で制御する1又は複数のインタフェース制御回路と、
    前記インタフェース制御回路で送受信される送受信フレームのうち受信フレームのデータを受信データとして受信データバッファに格納し、前記受信データバッファに格納された前記受信データを前記コマンド発行元へ転送する受信バッファ制御回路と、
    前記コマンド発行元から送信される送信データを送信データバッファに格納し、前記送信データバッファに格納された前記送信データを前記インタフェースへ転送する送信バッファ制御回路と、
    前記受信バッファ制御回路に対して前記受信データの転送を制御すると共に、前記送信バッファ制御回路に対して前記送信データの転送を制御する複数のプロトコル制御回路と、
    前記コマンド発行元のアクセス対象で生成されるフレームに付加され、前記プロトコル制御回路固有の識別情報を含む制御情報であって、前記インタフェース制御回路で送受信される送受信フレームのうち受信フレームに付加される制御情報を基に前記受信フレームの割当先を前記複数のプロトコル制御回路の中から選択し、前記選択したプロトコル制御回路に前記受信フレームの処理を割り当てる受信フレームルーティング制御回路と、を有することを特徴とする入出力制御装置。
  4. 請求項3に記載の入出力制御装置であって、
    前記受信フレームに付加される制御情報は、前記受信フレームの送信元の動作を特定する動作情報を含み、前記プロトコル制御回路固有の識別情報は、前記各プロトコル制御回路を一意に識別するためのエクスチェンジ番号を含むことを特徴とする入出力制御装置。
  5. 請求項1又は3に記載の入出力制御装置であって、
    前記受信フレームルーティング制御回路は、
    前記受信フレームに付加される制御情報の中に前記プロトコル制御回路を識別するための識別情報として、前記いずれかのプロトコル制御回路を特定する識別情報が存在しない場合、全ての前記プロトコル制御回路に対して、前記受信フレームの処理を割り当てるブロードキャスティングの処理を実行することを特徴とする入出力制御装置。
  6. コマンド発行元のアクセス対象とインタフェースを介してデータの送受信を行うと共に、前記コマンド発行元のアクセス対象と送受信されるデータを送受信フレーム毎にフレーム単位で制御する1又は複数のインタフェース制御回路と、
    前記インタフェース制御回路で送受信される送受信フレームのうち受信フレームのデータを受信データとして受信データバッファに格納し、前記受信データバッファに格納された前記受信データを前記コマンド発行元へ転送する受信バッファ制御回路と、
    前記コマンド発行元から送信される送信データを送信データバッファに格納し、前記送信データバッファに格納された前記送信データを前記インタフェースへ転送する送信バッファ制御回路と、
    前記受信バッファ制御回路に対して前記受信データの転送を制御すると共に、前記送信バッファ制御回路に対して前記送信データの転送を制御する複数のプロトコル制御回路と、
    前記インタフェース制御回路で送受信される送受信フレームのうち受信フレームのルーティングを制御する受信フレームルーティング制御回路と、を有する入出力制御装置のフレーム処理方法であって、
    前記受信フレームルーティング制御回路が、前記コマンド発行元のアクセス対象で生成されるフレームに付加され、前記プロトコル制御回路固有の識別情報を含む制御情報であって、前記インタフェース制御回路で送受信される送受信フレームのうち受信フレームに付加される制御情報を基に前記受信フレームの割当先を前記複数のプロトコル制御回路の中から選択するステップと、
    前記受信フレームルーティング制御回路が、前記選択したプロトコル制御回路に前記受信フレームの処理を割り当てるステップと、
    前記コマンド発行元から起動コマンドを受信したプロトコル制御回路が、前記起動コマンドに従って送信フレームに付加される前記制御情報として、当該プロトコル制御回路固有の識別情報を含む制御情報を生成するステップと、
    前記コマンド発行元から起動コマンドを受信したプロトコル制御回路が、前記生成した制御情報を前記送信データバッファに格納された送信データに付加するステップと、
    前記受信フレームルーティング制御回路により、前記受信フレームの処理が割り当てられたプロトコル制御回路が、前記受信バッファ制御回路に対して前記受信フレームに対応した受信データの転送を指示するステップと、を含むことを特徴とする入出力制御装置のフレーム処理方法。
  7. 請求項6に記載のフレーム処理方法であって、
    前記受信フレームルーティング制御回路が、前記受信フレームに付加される制御情報の中に前記プロトコル制御回路を識別するための識別情報として、前記いずれかのプロトコル制御回路を特定する識別情報が存在しない場合、全ての前記プロトコル制御回路に対して、前記受信フレームの処理を割り当てるブロードキャスティングの処理を実行するステップを含むことを特徴とする入出力制御装置のフレーム処理方法。
JP2013522360A 2011-06-29 2011-06-29 入出力制御装置及び入出力制御装置のフレーム処理方法 Active JP5728088B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/003739 WO2013001578A1 (ja) 2011-06-29 2011-06-29 入出力制御装置及び入出力制御装置のフレーム処理方法

Publications (2)

Publication Number Publication Date
JPWO2013001578A1 JPWO2013001578A1 (ja) 2015-02-23
JP5728088B2 true JP5728088B2 (ja) 2015-06-03

Family

ID=47423527

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013522360A Active JP5728088B2 (ja) 2011-06-29 2011-06-29 入出力制御装置及び入出力制御装置のフレーム処理方法

Country Status (3)

Country Link
US (1) US20140136740A1 (ja)
JP (1) JP5728088B2 (ja)
WO (1) WO2013001578A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9647668B2 (en) 2012-01-13 2017-05-09 Altera Corporation Apparatus for flexible electronic interfaces and associated methods
WO2014192144A1 (ja) 2013-05-31 2014-12-04 株式会社日立製作所 制御装置および制御方法
JP6262360B2 (ja) 2014-10-10 2018-01-17 株式会社日立製作所 計算機システム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0766811A (ja) * 1993-08-25 1995-03-10 Toshiba Corp Atmセル化装置およびatmデセル化装置
JP3128058B2 (ja) * 1996-03-05 2001-01-29 日本電信電話株式会社 プロトコル処理装置
JP3243633B2 (ja) * 1996-04-23 2002-01-07 日本電信電話株式会社 パケットルータ処理装置
JP3671360B2 (ja) * 1996-10-04 2005-07-13 日本電信電話株式会社 パケットルータ処理装置
JPH10340243A (ja) * 1997-06-06 1998-12-22 Hitachi Ltd 入出力データ転送システム
JPH11205339A (ja) * 1998-01-19 1999-07-30 Hitachi Ltd Atm交換機
US6148004A (en) * 1998-02-11 2000-11-14 Mcdata Corporation Method and apparatus for establishment of dynamic ESCON connections from fibre channel frames
US6470397B1 (en) * 1998-11-16 2002-10-22 Qlogic Corporation Systems and methods for network and I/O device drivers
US20020073257A1 (en) * 2000-12-07 2002-06-13 Ibm Corporation Transferring foreign protocols across a system area network
US7596621B1 (en) * 2002-10-17 2009-09-29 Astute Networks, Inc. System and method for managing shared state using multiple programmed processors
JP2005001969A (ja) * 2003-06-13 2005-01-06 Nippon Steel Chem Co Ltd 低内部抵抗炭素微粉の製造方法及び電気二重層キャパシタ
US7353362B2 (en) * 2003-07-25 2008-04-01 International Business Machines Corporation Multiprocessor subsystem in SoC with bridge between processor clusters interconnetion and SoC system bus
JP4794194B2 (ja) * 2005-04-01 2011-10-19 株式会社日立製作所 ストレージシステム及び記憶制御方法
JP4740763B2 (ja) * 2006-02-15 2011-08-03 株式会社日立製作所 ストレージシステム及びストレージコントローラ
US7912051B1 (en) * 2008-12-19 2011-03-22 Emc Corporation Techniques for port virtualization
JP4930554B2 (ja) * 2009-07-07 2012-05-16 株式会社日立製作所 入出力制御装置
US8868505B1 (en) * 2012-03-20 2014-10-21 Emc Corporation Systems and methods for protecting data in a network host environment

Also Published As

Publication number Publication date
JPWO2013001578A1 (ja) 2015-02-23
US20140136740A1 (en) 2014-05-15
WO2013001578A1 (ja) 2013-01-03

Similar Documents

Publication Publication Date Title
US10152441B2 (en) Host bus access by add-on devices via a network interface controller
US11704059B2 (en) Remote direct attached multiple storage function storage device
US9298648B2 (en) Method and system for I/O flow management using RAID controller with DMA capabilitiy to directly send data to PCI-E devices connected to PCI-E switch
CN107995129B (zh) 一种nfv报文转发方法和装置
US8504755B2 (en) USB 3 bridge with embedded hub
CN109445905B (zh) 虚拟机数据通信方法和***以及虚拟机配置方法和装置
CN115687234A (zh) 用于软件定义的互连交换机的架构
WO2023098031A1 (zh) 数据访问方法及计算设备
US11940933B2 (en) Cross address-space bridging
US11741039B2 (en) Peripheral component interconnect express device and method of operating the same
US11449456B2 (en) System and method for scheduling sharable PCIe endpoint devices
US20080162734A1 (en) Computer system and a chipset
JP5728088B2 (ja) 入出力制御装置及び入出力制御装置のフレーム処理方法
US8032675B2 (en) Dynamic memory buffer allocation method and system
US8055817B2 (en) Efficient handling of queued-direct I/O requests and completions
JP5102917B2 (ja) ストレージ装置及びアクセス命令送信方法
US20170344511A1 (en) Apparatus assigning controller and data sharing method
WO2017072868A1 (ja) ストレージ装置
US11386031B2 (en) Disaggregated switch control path with direct-attached dispatch
JP4432388B2 (ja) 入出力制御装置
US9229791B1 (en) System and method for high speed multiple buffer allocation
JP6825263B2 (ja) ストレージ制御装置、およびストレージシステム
JP4930554B2 (ja) 入出力制御装置
US11163706B2 (en) High bandwidth SDRAM controller
US20230350824A1 (en) Peripheral component interconnect express device and operating method thereof

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150209

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150403

R150 Certificate of patent or registration of utility model

Ref document number: 5728088

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150