IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 東芝メモリ株式会社の特許一覧

特開2024-134188通信システム、通信デバイス、及び通信方法
<>
  • 特開-通信システム、通信デバイス、及び通信方法 図1
  • 特開-通信システム、通信デバイス、及び通信方法 図2
  • 特開-通信システム、通信デバイス、及び通信方法 図3
  • 特開-通信システム、通信デバイス、及び通信方法 図4
  • 特開-通信システム、通信デバイス、及び通信方法 図5
  • 特開-通信システム、通信デバイス、及び通信方法 図6
  • 特開-通信システム、通信デバイス、及び通信方法 図7
  • 特開-通信システム、通信デバイス、及び通信方法 図8
  • 特開-通信システム、通信デバイス、及び通信方法 図9
  • 特開-通信システム、通信デバイス、及び通信方法 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024134188
(43)【公開日】2024-10-03
(54)【発明の名称】通信システム、通信デバイス、及び通信方法
(51)【国際特許分類】
   G06F 13/12 20060101AFI20240926BHJP
   G06F 13/36 20060101ALI20240926BHJP
   G06F 13/38 20060101ALI20240926BHJP
   H04L 12/42 20060101ALI20240926BHJP
【FI】
G06F13/12 340D
G06F13/36 310E
G06F13/36 530C
G06F13/38 340A
G06F13/38 350
G06F13/12 330D
H04L12/42 Z
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023044370
(22)【出願日】2023-03-20
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和3年度、国立研究開発法人新エネルギー・産業技術総合開発機構「ポスト5G情報通信システム基盤強化研究開発事業/ポスト5G情報通信システムの開発」に関する委託研究、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】318010018
【氏名又は名称】キオクシア株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】東 裕貴
(72)【発明者】
【氏名】渡邉 学
(72)【発明者】
【氏名】弘原海 潤治
【テーマコード(参考)】
5K031
【Fターム(参考)】
5K031AA01
5K031AA04
5K031CC03
5K031DA05
5K031EC04
(57)【要約】
【課題】通信の処理能力を向上する。
【解決手段】実施形態によれば、通信システムは、ホストコントローラと、複数の通信デバイスと、ホストコントローラと複数の通信デバイスとをリング状に接続し、シリアル信号の通信フレームを伝送可能である通信路とを含む。通信フレームは、複数のコンテナを含む。複数の通信デバイスの各々は、複数のコンテナの少なくとも1つに対して第1データの挿抜が可能な第1回路と、第1回路に接続されたバスと、バスに接続され、バスを介して第1回路と第1データに対応する第2データの送受信が可能な第2回路とを含む。第1データの第1データ長は固定長であり、第2データの転送の単位である第2データ長は可変長である。
【選択図】図5
【特許請求の範囲】
【請求項1】
ホストコントローラと、
複数の通信デバイスと、
前記ホストコントローラと前記複数の通信デバイスとをリング状に接続し、シリアル信号の通信フレームを伝送可能である通信路と、
を備え、
前記通信フレームは、複数のコンテナを含み、
前記複数の通信デバイスの各々は、
前記複数のコンテナの少なくとも1つに対して第1データの挿抜が可能な第1回路と、
前記第1回路に接続されたバスと、
前記バスに接続され、前記バスを介して前記第1回路と前記第1データに対応する第2データの送受信が可能な第2回路と
を含み、
前記第1データの第1データ長は固定長であり、前記第2データの転送の単位である第2データ長は可変長である、
通信システム。
【請求項2】
前記通信フレームに含まれる第1コンテナから抜き出した前記第1データの前記第1データ長が前記第2データ長よりも長い場合、前記第1回路は、前記第2データ長に基づいて前記第1データを分割し、前記バスを介して、分割された前記第1データを前記第2データとして前記第2回路に送信する、
請求項1に記載の通信システム。
【請求項3】
前記通信フレームに含まれる第1コンテナから抜き出した前記第1データの前記第1データ長が前記第2データ長よりも短い場合、前記第1回路は、前記第2データ長に基づく数の前記コンテナのそれぞれからの前記第1データを統合し、前記バスを介して、統合されたデータを前記第2データとして前記第2回路に送信する、
請求項1に記載の通信システム。
【請求項4】
前記第1データ長が前記第2回路から受信した前記第2データの前記第2データ長よりも長い場合、前記第1回路は、前記第1データ長に基づいて複数の前記第2データを統合し、統合された前記複数の第2データを前記第1データとして前記複数のコンテナのいずれか1つに挿入する、
請求項1に記載の通信システム。
【請求項5】
前記第1データ長が前記第2回路から受信した前記第2データの前記第2データ長よりも短い場合、前記第1回路は、前記第1データ長に基づいて前記第2データを分割し、分割された前記第2データを前記第1データとして前記複数のコンテナのうち前記第2データを分割した数と同じ数のコンテナに挿入する、
請求項1に記載の通信システム。
【請求項6】
前記第2データ長は、前記バスのプロトコルに基づく、
請求項1に記載の通信システム。
【請求項7】
前記第2回路は、メモリデバイスまたはプロセッサを含む、
請求項1に記載の通信システム。
【請求項8】
ホストコントローラと複数の通信デバイスとをリング状に接続する通信路から複数のコンテナを含むシリアル信号の通信フレームを受信する受信回路と、
前記複数のコンテナの少なくとも1つに対して第1データの挿抜が可能な第1回路と、
前記第1回路に接続されたバスと、
前記バスに接続され、前記バスを介して前記第1回路と第2データの送受信が可能な第2回路と
を備え、
前記第1データの第1データ長は固定長であり、前記第2データの転送の単位である第2データ長は可変長である、
通信デバイス。
【請求項9】
ホストコントローラと、各々が第1回路、第2回路、及び前記第1回路と前記第2回路を接続するバスを含む複数の通信デバイスと、前記ホストコントローラと前記複数の通信デバイスとをリング状に接続し複数のコンテナを含むシリアル信号の通信フレームを伝送可能である通信路とを含む通信システムにおける通信方法であって、前記通信方法は、
前記通信路に、通信フレームを送信することと、
前記第1回路において、前記複数のコンテナの少なくとも1つに対して固定長の第1データを挿抜することと、
前記バスを介して、前記第1データに対応する可変長の第2データを前記第2回路に対して送受信することと、
を備える、
通信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、通信システム、通信デバイス、及び通信方法に関する。
【背景技術】
【0002】
ホストコントローラと複数の通信デバイスとを有する通信システムでは、接続方法の1つとして、ホストコントローラと複数の通信デバイスとをリング状に接続する接続方法が知られている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2021-150878号公報
【特許文献2】特開2022-49599号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の一実施形態では、通信の処理能力を向上できる通信システム、通信デバイス、及び通信方法を提供する。
【課題を解決するための手段】
【0005】
実施形態に係る通信システムは、ホストコントローラと、複数の通信デバイスと、ホストコントローラと複数の通信デバイスとをリング状に接続し、シリアル信号の通信フレームを伝送可能である通信路とを含む。通信フレームは、複数のコンテナを含む。複数の通信デバイスの各々は、複数のコンテナの少なくとも1つに対して第1データの挿抜が可能な第1回路と、第1回路に接続されたバスと、バスに接続され、バスを介して第1回路と第1データに対応する第2データの送受信が可能な第2回路とを含む。第1データの第1データ長は固定長であり、第2データの転送の単位である第2データ長は可変長である。
【図面の簡単な説明】
【0006】
図1】一実施形態に係る通信システムの全体構成を示すブロック図。
図2】一実施形態に係る通信システムの備える通信デバイスのブロック図。
図3】一実施形態に係る通信システムにおける通信フレームの一例を示す図。
図4】一実施形態に係る通信システムのリング接続における通信フレームの送信例を示す図。
図5】一実施形態に係る通信システムにおいて通信フレームのコンテナからデータを抜き出す場合のフローチャート。
図6】一実施形態に係る通信システムにおいて通信フレームのコンテナから抜き出したデータを分割する場合の具体例を示す図。
図7】一実施形態に係る通信システムにおいて複数の通信フレームのコンテナから抜き出したデータを統合する場合の具体例を示す図。
図8】一実施形態に係る通信システムにおいて通信フレームのコンテナにデータを挿入する場合のフローチャート。
図9】一実施形態に係る通信システムにおいて複数のパケットのデータを統合して通信フレームのコンテナに挿入する場合の具体例を示す図。
図10】一実施形態に係る通信システムにおいてパケットのデータを分割して別々の通信フレームのコンテナに挿入する場合の具体例を示す図。
【発明を実施するための形態】
【0007】
以下に実施形態が図面を参照して記述される。或る実施形態または相違する実施形態での略同一の機能及び構成を有する複数の構成要素は、互いに区別されるために、参照符号の末尾にさらなる数字または文字が付加される場合がある。或る記述済みの実施形態に後続する実施形態では、記述済みの実施形態と異なる点が主に記述される。或る実施形態についての記述は全て、明示的にまたは自明的に排除されない限り、別の実施形態の記述としても当てはまる。
【0008】
1.構成
以下に、実施形態に係る通信システムについて説明する。
【0009】
1.1 通信システムの構成
まず、図1を参照して、通信システム1の構成の一例について説明する。図1は、通信システム1の全体構成を示すブロック図である。
【0010】
図1に示すように、通信システム1は、システムボード2、コネクタ3、ホストコントローラ4、複数のデバイスカード5、及び複数の通信路8を有する。図1の例では、通信システム1は、n個(nは1以上の整数)のデバイスカード5-1~5-nを含む。また、通信システム1は、n個のデバイスカード5-1~5-nにそれぞれ対応するn個の通信路8-1~8-nを含む。
【0011】
システムボード2は、例えば、超広帯域(例えば、200GB/s以上)及び大容量に対応したアクセラレータ・ボードである。
【0012】
コネクタ3は、システムボード2上に設けられる。コネクタ3は、システムボード2と、外部装置(コンピュータ等)との有線接続に用いられる。コネクタ3は、ホストコントローラ4に接続される。なお、システムボード2は、コネクタ3の他に、システムボード2と外部装置との無線接続に用いられる通信回路を有していてもよい。
【0013】
ホストコントローラ4は、通信システム1全体を制御する。ホストコントローラ4は、デバイスカード5に搭載された各通信デバイス6を制御する。例えば、通信デバイス6がメモリデバイスである場合、ホストコントローラ4は、通信デバイス6にデータの書き込み動作または読み出し動作等を要求(命令)する。すなわち、通信デバイス6がメモリデバイスである場合、通信システム1はメモリシステムとも表記され得る。ホストコントローラ4は、コネクタインターフェース回路41及びデバイスインターフェース回路42を含む。
【0014】
コネクタインターフェース回路41は、コネクタ3を介して、外部装置との情報の送受信を行う。
【0015】
デバイスインターフェース回路42は、通信路8を介して、デバイスカード5と情報の送受信を行う。例えば、デバイスインターフェース回路42は、差動シリアル信号の送受信が可能なように構成されている。
【0016】
各デバイスカード5は、基板7及び複数の通信デバイス6を含む。図1の例では、各デバイスカード5は、4つの通信デバイス6-1~6-4を含む。通信デバイス6-1~6-4は、基板7上に半田やソケットなどにより実装されている。例えば、通信デバイス6-1~6-4は、基板7の長手方向に沿って、並んで配置され得る。
【0017】
通信デバイス6は、ホストコントローラ4との通信に基づいて動作するデバイスである。以下では、通信デバイス6がNAND型フラッシュメモリを搭載したメモリデバイスである場合について説明する。例えば、通信デバイス6は、NAND型フラッシュメモリが搭載されたSSD(Solid State Drive)のようなメモリシステムであってもよい。なお、通信デバイス6がメモリデバイスである場合、デバイスカード5は、メモリカードとも表記され得る。通信デバイス6は、通信路8を介して、デバイスインターフェース回路42に通信可能に接続される。
【0018】
通信路8-1~8-nは、デバイスカード5-1~5-nにそれぞれ対応する。各通信路8は、デバイスインターフェース回路42と対応するデバイスカード5に含まれる通信デバイス6-1~6-4とをリング接続する。より具体的には、デバイスインターフェース回路42のデータ出力端子、通信デバイス6-1、通信デバイス6-2、通信デバイス6-3、通信デバイス6-4、及びデバイスインターフェース回路42のデータ入力端子が通信路8を介してリング状に接続される。各通信路8は、差動シリアル信号を伝送可能である。
【0019】
1つのデバイスカード5の複数の通信デバイス6は、通信路8を介して、差動シリアル信号の通信フレームを送受信する。通信フレームは、通信路8を介して、送信されるデータの単位である。リング接続の場合、ホストコントローラ4から出力された通信フレームは、通信デバイス6-1、通信デバイス6-2、通信デバイス6-3、及び通信デバイス6-4を経由して、ホストコントローラ4に入力される。通信フレームは、複数のコンテナを含む。通信フレームに含まれる各コンテナの長さ(またはサイズ)を示すコンテナ長は、固定長である。すなわち、1つのコンテナに含まれるデータ(情報)の長さ(またはサイズ)を示すデータ長は固定長である。各通信デバイス6は、所定の条件に応じて、通信フレームのコンテナに対してデータの挿抜を実行する。データの挿抜は、コンテナにデータを挿入する(書き込む)こと、及びコンテナからデータを抜き出す(読み出す)こと、を含む。例えば、通信フレームは、要求される帯域と各通信デバイス6の帯域とに応じた個数のコンテナを含み得る。
【0020】
なお、通信システム1は、システムボード2が省略された構成であってもよい。また、コネクタインターフェース回路41は、コネクタ3を介さず外部装置に直接接続されてもよい。また、システムボード2と基板7とは一体で形成されてもよい。
【0021】
1.2通信デバイスの構成
次に、図2を参照して、通信デバイス6の構成について説明する。図2は、通信デバイス6のブロック図である。図2の例は、通信デバイス6が不揮発性メモリとしてNAND型フラッシュメモリが搭載されたメモリデバイスである場合を示している。
【0022】
図2に示すように、通信デバイス6は、SoC(System on Chip)60、DRAM(Dynamic Random Access Memory)601、及び複数のNAND型フラッシュメモリ602を含む。以下、NAND型フラッシュメモリ602は、NANDメモリ602とも表記する。
【0023】
SoC60は、ホストコントローラ4からの要求に応答して、動作するデバイスシステムである。SoC60は、DRAM601及びNANDメモリ602を制御する。例えば、SoC60は、NANDメモリ602に対して読み出し動作及び書き込み動作等を命令する。SoC60は、受信部(以下、「Rx」とも表記する)61、送信部(以下、「Tx」とも表記する)62、プロトコル変換部(以下、「PCS」とも表記する)63、通信制御回路(以下、「CONT」とも表記する)64、内部バス65、CPU(Central Processing Unit)66、DRAMコントローラ67、NANDコントローラ68、及びSRAM(Static Random Access Memory)69を含む。SoC60は、これらの構成を含む回路デバイスとして構成される。
【0024】
受信部61、送信部62、プロトコル変換部63、及び通信制御回路64を含む構成は、ホストコントローラ4と自デバイス(通信デバイス6)との間のデータの送受信を制御するインターフェース回路として機能する。通信制御回路64、CPU66、DRAMコントローラ67、NANDコントローラ68、及びSRAM69は、内部バス65により、互いに接続されている。
【0025】
受信部61は、受信回路である。受信部61は物理層に相当する。受信部61は、通信路8及びプロトコル変換部63に接続される。受信部61は、ホストコントローラ4または前段の通信デバイス6から通信路8を介して通信フレームを受信する。受信部61は、受信した通信フレームに波形等化等の物理的な処理をしてプロトコル変換部63へ供給する。
【0026】
送信部62は、送信回路である。送信部62は、物理層に相当する。送信部62は、通信路8及びプロトコル変換部63に接続される。送信部62は、プロトコル変換部63から供給された通信フレームに波形等化等の物理的な処理をする。送信部62は、後段の通信デバイス6またはホストコントローラ4に向けた通信路8に通信フレームを送信する。
【0027】
プロトコル変換部63は、通信フレームのプロトコル変換を行う。プロトコル変換部63は、リンク層に相当する。プロトコル変換部63は、通信制御回路64に接続される。例えば、プロトコル変換部63は、受信部61から受信した通信フレームを、上位階層のプロトコルに応じてプロトコル変換する。換言すれば、プロトコル変換部63は、受信部61から受信した通信フレームを内部バス65のバスプロトコルに応じてプロトコル変換する。上位階層は、ホストコントローラ4と通信デバイス6との間の通信における通信層構造を大まかに分けた場合のリンク層より上位の階層である。例えば、内部バス65及び内部バス65を介して通信制御回路64に接続された各回路(CPU66、DRAMコントローラ67、NANDコントローラ68、SRAM69、DRAM601、及びNANDメモリ602)が上位階層に相当する。プロトコル変換部63は、上位階層に合わせてプロトコル変換した通信フレームを通信制御回路64に送信する。
【0028】
また、プロトコル変換部63は、通信制御回路64から受信した通信フレームを、下位階層のプロトコルに応じてプロトコル変換する。換言すれば、プロトコル変換部63は、通信制御回路64から受信した通信フレームを通信路8に対応するプロトコルに応じてプロトコル変換する。下位階層は、通信層構造を大まかに分けた場合の物理層より下位の階層である。プロトコル変換部63は、下位階層に合わせてプロトコル変換した通信フレームを送信部62に送信する。
【0029】
通信制御回路64は、通信フレームの自デバイスに対応するコンテナに対してデータの挿抜を実行する。通信制御回路64は、リンク層に相当する。例えば、通信制御回路64は、プロトコル変換部63から受信した通信フレームの自デバイスに対応するコンテナからデータ(情報)を抜き出す。また、通信制御回路64は、上位階層のパケットのデータ(情報)を通信フレームの空きコンテナに挿入する。パケットとは、上位階層において実行される動作(書き込み動作あるいは読み出し動作等)に対応して通信制御回路64と上位階層との間で送受信されるデータの伝送単位である。上位階層は、内部バス65を介して接続される複数のデバイスを含む。
【0030】
また、通信制御回路64は、コンテナのコンテナ長と、パケットのパケット長とを比較する。そして、通信制御回路64は、比較結果に基づいて、コンテナまたはパケットに含まれるデータの分割または統合を実行する。
【0031】
コンテナ長は、通信フレームに含まれる各コンテナのコンテナ長である。より具体的には、コンテナ長は、コンテナに含まれるコンテナペイロードのコンテナペイロード長に比例する。コンテナペイロードについては後述する。換言すれば、コンテナ長は、通信フレームのコンテナ(コンテナペイロード)に含まれるデータのデータ長に比例する。
【0032】
パケット長は、上位階層のシステム仕様に基づく。例えば、パケット長は、内部バス65のバスプロトコルに基づいて設定され得る。パケット長は、上位階層で実行される動作に対応して、通信制御回路64と内部バス65との間で送受信(転送)されるパケットに含まれるデータのデータ長に比例する。パケット長は、可変長である。例えば、上位階層で実行される動作により、パケット長(転送データのデータ長)は異なる。
【0033】
より具体的には、例えば、上位階層のNANDメモリ602において書き込み動作が実行される場合、通信制御回路64から上位階層に送信されるパケットは、書き込みデータ、コマンド、及びアドレスを含む。上位階層のNANDメモリ602において読み出し動作が実行される場合、通信制御回路64から上位階層に送信されるパケットは、コマンド及びアドレスを含む。また、NANDメモリ602から読み出された読み出しデータが下位階層に送信される場合、上位階層から通信制御回路64に送信されるパケットは、読み出しデータを含む。読み出しデータのデータ長は書き込みデータのデータ長と異なり得る。従って、書き込み動作の際に通信制御回路64から上位階層に送信されるパケットのパケット長と、読み出し動作の際に通信制御回路64から上位階層に送信されるパケットのパケット長と、読み出し動作の際に上位階層から通信制御回路64に送信されるパケットのパケット長とは、異なる。このように、上位階層において実行される動作により、パケット長(データ長)は可変とされる。
【0034】
通信制御回路64は、下位階層の通信フレームのコンテナからデータを抜き出した場合において、コンテナ長がパケット長よりも長い場合、コンテナから抜き出したデータを分割する。そして、通信制御回路64は、上位階層に、分割データ(「分割コンテナデータ」とも表記する)を別々のパケットとして送信する。他方で、通信制御回路64は、コンテナからデータを抜き出した場合において、コンテナ長がパケット長よりも短い場合、複数のコンテナから抜き出したデータを統合する。そして、通信制御回路64は、上位階層に、統合データ(「統合コンテナデータ」とも表記する)を1つのパケットとして送信する。
【0035】
また、通信制御回路64は、上位階層からパケットのデータを受信した場合において、コンテナ長がパケット長よりも長い場合、複数のパケットのデータを統合する。そして、通信制御回路64は、統合データ(「統合パケットデータ」とも表記する)を1つのコンテナに挿入する。他方で、通信制御回路64は、上位階層からパケットのデータを受信した場合において、コンテナ長がパケット長よりも短い場合、パケットのデータを分割する。そして、通信制御回路64は、分割データ(「分割パケットデータ」とも表記する)を複数のコンテナに別々に挿入する。
【0036】
通信制御回路64は、コンテナ長とパケット長とが同じ場合、受信したデータの分割及び統合を実行しない。
【0037】
CPU66は、プロセッサである。CPU66は、ホストコントローラ4の要求に基づいて、通信デバイス6全体の動作を制御する。CPU66は、内部バス65を介して、DRAMコントローラ67、NANDコントローラ68、及びSRAM69を制御する。例えば、CPU66は、NANDコントローラ68に、NANDメモリ602に対する書き込み動作及び読み出し動作等を命令する。
【0038】
DRAMコントローラ67は、CPU66の要求に基づいて、DRAM601を制御する。DRAMコントローラ67は、信号線IOaを介して、DRAM601とデータの送受信を行う。
【0039】
DRAM601は、揮発性メモリである。なお、DRAM601は、他の揮発性メモリであってもよい。DRAM601は、SoC60が、NANDメモリ602から読み出したデータや、ホストコントローラ4から受信した書き込みデータ等を一時的に記憶する。なお、DRAM601は、SoC60に実装されてもよい。
【0040】
NANDコントローラ68は、NANDメモリ602を制御する。1つのNANDコントローラ68が、複数のNANDメモリ602を制御し得る。NANDコントローラ68は、NANDメモリ602と信号線IObを介してデータの送受信を行う。例えば、NANDコントローラ68は、NANDメモリ602に、書き込み動作、読み出し動作、または消去動作に対応したデータ(コマンド、アドレス、及びデータ等)を送信する。また、NANDコントローラ68は、読み出し動作時には、NANDメモリ602から読み出しデータを受信する。
【0041】
NANDメモリ602は、不揮発性の記憶媒体である。なお、NANDメモリ602は、NAND型フラッシュメモリ以外の不揮発性の記憶媒体であってもよい。NANDメモリ602は、NANDコントローラ68から受信したデータを不揮発に記憶する。また、NANDメモリ602は、不揮発に記憶されたデータを読み出してNANDコントローラ68に送信する。
【0042】
SRAM69は、揮発性メモリである。なお、SRAM69は、他の揮発性メモリであってもよい。SRAM69は、CPU66の作業領域として使用され得る。
【0043】
1.3 通信フレームの構成
次に、図3を参照して通信フレームの構成の一例について説明する。図3は、通信フレームの一例を示す図である。なお、以下の説明において、ホストコントローラ4、通信デバイス6-1、通信デバイス6-2、通信デバイス6-3、及び通信デバイス6-4の識別情報を、ID0、ID1、ID2、ID3、及びID4とそれぞれ表記する。
【0044】
図3に示すように、ホストコントローラ4から複数の通信フレームFRが順に送信される。例えば、各通信フレームFRは、同じ固定長の複数のコンテナCTを含む。図3の例では、通信フレームFR-1は、同じ固定長の4個のコンテナCT(CT1~CT4)を含む。コンテナCTには、通信デバイス6において挿抜され得るデータ(情報)が記憶される。通信フレームFR-2以降も同様である。
【0045】
各コンテナCTには、ホストコントローラ4またはいずれかの通信デバイス6に対応するデータが記憶され得る。図3の例では、コンテナCT1に、識別情報ID1、すなわち通信デバイス6-1に対応するデータが記憶されている。コンテナCT2に、識別情報ID2、すなわち通信デバイス6-2に対応するデータが記憶されている。コンテナCT3に、識別情報ID3、すなわち通信デバイス6-3に対応するデータが記憶されている。コンテナCT4に、識別情報ID4、すなわち通信デバイス6-4に対応するデータが記憶されている。なお、各コンテナCTに記憶されるデータは任意である。コンテナCT1に、識別情報ID0、すなわちホストコントローラ4に対応するデータが記憶されてもよいし、識別情報ID2~ID4のいずれかに対応するデータが記憶されてもよい。更には、コンテナCT1~CT4に、識別情報ID1に対するデータが記憶されていてもよい。
【0046】
コンテナCTは、コンテナヘッダCH及びコンテナペイロードCPを含む。コンテナヘッダCHは、CP識別子及び送信先情報を含む。なお、コンテナヘッダCHは、送信元情報を含んでいてもよい。CP識別子は、コンテナペイロードCPの開始とコンテナペイロードCPの終了を識別する識別子である。送信先情報は、送信先である通信デバイス6またはホストコントローラ4の識別情報IDを含む。例えば、送信先が通信デバイス6-1である場合、送信先情報は、識別情報ID1に関する情報を含む。
【0047】
コンテナペイロードCPは、下位階層と上位階層との間で送受信(転送)されるデータを含む。コンテナペイロードCPに含まれるデータのデータ長は、固定長である。コンテナペイロードCPは、パケットヘッダPH及び1つまたは複数のパケットペイロードPPを含む。例えば、コンテナペイロードCPは、通信制御回路64におけるデータの分割または統合に対応して、複数のパケットペイロードPPを含み得る。
【0048】
パケットヘッダPHは、PP識別子を含む。PP識別子は、パケットペイロードPPの開始とパケットペイロードPPの終了を識別する識別子である。また、パケットヘッダPHは、データの分割または統合に関する情報を含み得る。
【0049】
パケットペイロードPPは、上位階層で実行される動作に対応するデータ(情報)を含む。換言すれば、パケットペイロードPPは、上位階層のパケットPKのデータを含む。例えば、パケットペイロードPPは、送信先の情報(アドレス)、上位階層において実行される動作(読み出し動作または書き込み動作等)の属性情報(コマンド)、データ(書き込みデータまたは読み出しデータ等)、及びパケット長の情報等を含み得る。例えば、NANDメモリ602において書き込み動作が実行される場合、下位階層から上位階層に送信されるパケットペイロードPPは、書き込みコマンド、アドレス、及び書き込みデータを含む。また、例えば、NANDメモリ602において読み出し動作が実行された場合、上位階層から下位階層に送信されるパケットペイロードPPは、読み出しデータを含む。
【0050】
通信制御回路64は、パケットヘッダPHの情報に基づいて、データの分割または統合を実行し得る。換言すれば、通信制御回路64は、パケットヘッダPHの情報に基づいて、パケットペイロードPPの分割または統合を実行し得る。
【0051】
2.リング接続における通信フレームの送信例
次に、図4を参照して、リング接続における通信フレームFRの送信例について説明する。図4は、リング接続における通信フレームFRの送信例を示す図である。図4には、ホストコントローラ4と、ホストコントローラ4に接続された1つのデバイスカード5が示されている。図4の例は、データの分割または統合が実行されていない場合を示す。また、図4の例は、説明を簡略化するために、内部バス65に接続されたNANDコントローラ68が示されており、他の回路や構成は省略されている。
【0052】
図4に示すように、例えば、ホストコントローラ4は、通信デバイス6-1に、コンテナCT1に識別情報ID1(通信デバイス6-1)に対応したデータが格納され、コンテナCT2に識別情報ID2(通信デバイス6-2)に対応したデータが格納され、コンテナCT3に識別情報ID3(通信デバイス6-3)に対応したデータが格納され、コンテナCT4に識別情報ID4(通信デバイス6-4)に対応したデータが格納された通信フレームFRを送信する。
【0053】
通信デバイス6-1において、コンテナCT1のデータの抜き出しが実行される。より具体的には、通信デバイス6-1の通信制御回路64は、以下の動作を実行する。通信制御回路64は、各コンテナCTのコンテナヘッダCHの送信先情報を確認する。通信制御回路64は、コンテナCT1のコンテナヘッダCHが送信先情報として自デバイスの識別情報ID1を含むことを確認すると、コンテナCT1のコンテナペイロードCP(パケットペイロードPP)からデータを抜き出す。通信制御回路64は、抜き出したデータをパケットPKとして、上位階層に送信する。例えば、抜き出されたデータ(パケットPK)が書き込み動作を要求するコマンド、アドレス、及び書き込みデータを含む場合、CPU66は、NANDコントローラ68を制御して、NANDメモリ602に対する書き込み動作を実行させる。
【0054】
例えば、通信デバイス6-1において、コンテナCT1に挿入するデータ(パケットPKのデータ)がある場合、通信制御回路64は、コンテナCT1のコンテナヘッダCHの送信先情報を自デバイスの識別情報ID1からホストコントローラ4の識別情報ID0に変換する。そして、通信制御回路64は、コンテナCT1のコンテナペイロードCP(パケットペイロードPP)に、ホストコントローラ4に送信するデータを挿入して、通信フレームFRを更新する。例えば、挿入するデータが、すでに受信済みの通信フレームFRに含まれていた読み出し動作を要求するコマンドに対応した読み出しデータである場合、通信制御回路64は、NANDメモリ602から読み出したデータをコンテナCT1のコンテナペイロードCPに挿入する。すなわち、コンテナCT1に、識別情報ID0に対応したデータが挿入される。なお、通信制御回路64は、コンテナCTに挿入するデータ(パケットPK)がない場合、コンテナCTのコンテナヘッダCH及びコンテナペイロードCPのデータを消去して空(Null)の状態にして、通信フレームFRを更新する。通信デバイス6-1は、通信デバイス6-2に、更新した通信フレームFRを送信する。
【0055】
通信デバイス6-2において、通信デバイス6-1と同様に、コンテナCT2のデータの挿抜が実行される。この結果、コンテナCT2から識別情報ID2に対応したデータが抜き出される。そして、例えば、コンテナCT2に識別情報ID0に対応したデータが挿入される。通信デバイス6-2は、通信デバイス6-3に、更新した通信フレームFRを送信する。
【0056】
通信デバイス6-3において、通信デバイス6-1と同様に、コンテナCT3のデータの挿抜が実行される。この結果、コンテナCT3から識別情報ID3に対応したデータが抜き出される。そして、例えば、コンテナCT3に識別情報ID0に対応したデータが挿入される。通信デバイス6-3は、通信デバイス6-4に、更新した通信フレームFRを送信する。
【0057】
通信デバイス6-4において、通信デバイス6-1と同様に、コンテナCT4のデータの挿抜が実行される。この結果、コンテナCT4から識別情報ID4に対応したデータが抜き出される。そして、例えば、コンテナCT4に識別情報ID0に対応したデータが挿入される。通信デバイス6-4は、ホストコントローラ4に、更新した通信フレームFRを送信する。
【0058】
3. 通信フレームのコンテナからのデータの抜き出し
次に、通信フレームFRのコンテナCTからデータを抜き出す場合について説明する。
【0059】
3.1 通信フレームのコンテナからデータを抜き出す場合の流れ
図5を参照して、通信フレームFRのコンテナCTからデータを抜き出す場合の流れについて説明する。図5は、通信フレームFRのコンテナCTからデータを抜き出す場合のフローチャートである。
【0060】
図5に示すように、まず、通信デバイス6は、通信フレームFRの自デバイスに対応するコンテナCTからデータを抜き出す(S11)。より具体的には、受信部61は、受信した通信フレームFRを、プロトコル変換部63に送信する。プロトコル変換部63は、通信フレームFRに対して、上位階層(内部バス65のバスプロトコル)に対応したプロトコル変換を実行する。プロトコル変換部63は、プロトコル変換した通信フレームFRを通信制御回路64に送信する。通信制御回路64は、各コンテナCTのコンテナヘッダCHを確認して、自デバイスに対応するコンテナCTからコンテナペイロードCPのデータを抜き出す。更に、通信制御回路64は、パケットヘッダPHを参照して、コンテナペイロードCPからパケットペイロードPPのデータを抜き出す。
【0061】
通信制御回路64は、パケット長とコンテナ長とを比較する(S12)。例えば、通信制御回路64は、パケットヘッダPHを参照して、パケット長とコンテナ長(コンテナペイロード長)とを比較する。
【0062】
パケット長がコンテナ長よりも短い場合(S12_Yes)、通信制御回路64は、パケット長に合わせて、パケットペイロードPPから抜き出したデータを分割する(S13)。換言すれば、通信制御回路64は、分割された複数のパケットペイロードPPを生成する。
【0063】
通信制御回路64は、分割データ(分割コンテナデータ)を別々のパケットPKにして上位階層に送信する(S14)。より具体的には、通信制御回路64は、分割データの各々に対する複数のパケットPKを生成する。例えば、2つの分割データがそれぞれ異なる書き込み動作に対応している場合、各パケットPKは、書き込みデータ、コマンド、及びアドレスを含む。通信制御回路64は、2つのパケットPKを、上位階層に別々に送信する。例えば、通信制御回路64は、2つのパケットPKを、上位階層の別々の回路(CPU66、DRAMコントローラ67、NANDコントローラ68、SRAM69のうちの異なる2つ)に送信する。または、通信制御回路64は、2つのパケットPKを、上位階層の同じ回路(CPU66、DRAMコントローラ67、NANDコントローラ68、SRAM69のいずれか)に時分割して送信する。
【0064】
パケット長がコンテナ長よりも長い場合(S12_No且つS15_Yes)、通信制御回路64は、抜き出したデータのデータ長がパケット長に達するまで、複数のコンテナCT(パケットペイロードPP)のデータを集めて、統合する(S16)。すなわち、通信制御回路64は、複数のコンテナCT(パケットペイロードPP)のデータを統合する。
【0065】
通信制御回路64は、統合データ(統合コンテナデータ)を1つのパケットPKにして上位階層に送信する(S17)。より具体的には、通信制御回路64は、統合データに対応する1つのパケットPKを生成する。例えば、統合データが1回の書き込み動作に対応している場合、パケットPKは、書き込みデータ、コマンド、及びアドレスを含む。通信制御回路64は、パケットPKを上位階層に送信する。
【0066】
パケット長とコンテナ長とが同じ場合(S12_No且つS15_No)、通信制御回路64は、パケットペイロードPPのデータを1つのパケットPKにして、上位階層に送信する(S18)。
【0067】
3.2 通信フレームのコンテナから抜き出したデータを分割する場合の具体例
次に、図6を参照して、通信フレームFRのコンテナCTから抜き出したデータを分割する場合の具体例について説明する。図6は、通信フレームFRのコンテナCTから抜き出したデータを分割する場合の具体例を示す図である。図6の例は、通信デバイス6-1が通信フレームFR-1のコンテナCT1のデータを分割する場合を示している。図6の例では、説明を簡略化するため、対象となるコンテナCT(通信フレームFR-1のコンテナCT1)のパケットペイロードPPが示されており、他のコンテナCTは、省略されている。
【0068】
図6に示すように、下位階層の通信フレームFR-1は、4つのコンテナCT1~CT4を含む。例えば、通信フレームFR-1のコンテナCT1には、パケットペイロードPP1のデータが含まれている。例えば、通信デバイス6-1の通信制御回路64(CONT)は、コンテナCT1のコンテナペイロードCPからパケットペイロードPP1のデータを抜き出す。通信制御回路64は、パケットヘッダPHを参照して、パケット長とコンテナ長とを比較する。例えば、パケット長がコンテナ長の1/2倍である場合、通信制御回路64は、パケットペイロードPP1のデータを2つに分割する。換言すれば、通信制御回路64は、パケットペイロードPP1を2つに分割する。以下、分割された2つのパケットペイロードPP1をパケットペイロードPP1a及びPP1bと表記する。通信制御回路64は、パケットペイロードPP1aのデータとパケットペイロードPP1bのデータとを上位階層に別々に送信する。すなわち、通信制御回路64は、パケットペイロードPP1aのデータを含むパケットPKと、パケットペイロードPP1bのデータを含むパケットPKとを、上位階層に別々に送信する。
【0069】
なお、図6の例は、通信デバイス6-1の通信制御回路64が1つのパケットペイロードPPのデータをパケット長に基づいて分割する場合について説明したが、これに限定されない。例えば、ホストコントローラ4は、1つのコンテナCTのコンテナペイロードCPに、通信デバイス6で分割予定の2つのパケットペイロードPPを予め挿入してもよい。すなわち、ホストコントローラ4がデータの分割を制御してもよい。図6の例であれば、コンテナCT1にパケットペイロードPP1a及びPP1bが予め含まれる。この場合、通信制御回路64は、コンテナCT1のコンテナペイロードCPに含まれるパケットペイロードPPの個数に基づいて、パケットペイロードPP毎にデータを分割し得る。
【0070】
3.3 複数の通信フレームのコンテナから抜き出したデータを統合する場合の具体例
次に、図7を参照して、複数の通信フレームFRのコンテナCTから抜き出したデータを統合する場合の具体例について説明する。図7は、複数の通信フレームFRのコンテナCTから抜き出したデータを統合する場合の具体例を示す図である。図7の例は、通信デバイス6-1が通信フレームFR-1のコンテナCT1と通信フレームFR-2のコンテナCT1とを統合する場合を示している。図7の例では、説明を簡略化するため、対象となるコンテナCT(通信フレームFR-1のコンテナCT1および通信フレームFR-2のコンテナCT1)のパケットペイロードPPが示されており、他のコンテナCTは、省略されている。
【0071】
図7に示すように、下位階層の通信フレームFR-1は、4つのコンテナCT1~CT4を含む。例えば、通信フレームFR-1のコンテナCT1には、パケットペイロードPP1のデータが含まれている。同様に、通信フレームFR-2のコンテナCT1には、パケットペイロードPP2のデータが含まれている。例えば、通信デバイス6-1の通信制御回路64(CONT)は、通信フレームFR-1のコンテナCT1のコンテナペイロードCPからパケットペイロードPP1のデータを抜き出す。通信制御回路64は、パケットヘッダPHを参照して、パケット長とコンテナ長とを比較する。例えば、パケット長がコンテナ長の2倍である場合、通信制御回路64は、更に、通信フレームFR-2のコンテナCT1のコンテナペイロードCPからパケットペイロードPP2のデータを抜き出す。そして、通信制御回路64は、パケットペイロードPP1のデータとパケットペイロードPP2のデータとを統合する。換言すれば、通信制御回路64は、パケットペイロードPP1とパケットペイロードPP2とを統合する。通信制御回路64は、統合データ(統合コンテナデータ)を含むパケットPKを、上位階層に送信する。
【0072】
4. 通信フレームのコンテナへのデータの挿入
次に、通信フレームFRのコンテナCTにデータを挿入する場合について説明する。
【0073】
4.1 通信フレームのコンテナCTにデータを挿入する場合の流れ
図8を参照して、通信フレームFRのコンテナCTにデータを挿入する場合の流れについて説明する。図8は、通信フレームFRのコンテナCTにデータを挿入する場合のフローチャートである。
【0074】
図8に示すように、通信制御回路64は、上位階層からパケットPKを受信する(S21)。すなわち、通信制御回路64は、上位階層から、通信フレームFRのコンテナCTに挿入したいデータを受信する。
【0075】
通信制御回路64は、パケット長とコンテナ長とを比較する(S22)。より具体的には、例えば、通信制御回路64は、上位階層から受信したパケットのパケット長を確認する。そして、通信制御回路64は、パケット長と、コンテナ長とを比較する。
【0076】
パケット長がコンテナ長よりも短い場合(S22_Yes)、通信制御回路64は、上位階層から受信したデータのデータ長がコンテナ長に達するまで、複数のパケットPKのデータを集めて、それらを統合する(S23)。換言すれば、通信制御回路64は、コンテナ長に達するまで、複数のパケットPKを集めて、それらを統合する。
【0077】
通信制御回路64は、統合データ(統合パケットデータ)を、通信フレームFRの1つの空きコンテナCTに挿入し、下位階層に送信する(S24)。より具体的には、通信制御回路64は、空きコンテナCTのコンテナペイロードCPに統合データを含むパケットペイロードPP及びそれに対応するパケットヘッダPHを挿入する。パケットヘッダPHには、統合データであることを示す情報が含まれ得る。更に、通信制御回路64は、空きコンテナCTのコンテナヘッダCHを更新する。通信制御回路64は、更新されたコンテナCTを含む通信フレームFRをプロトコル変換部63に送信する。プロトコル変換部63は、通信フレームFRのプロトコル変換を実行した後、通信フレームFRを送信部62に送信する。送信部62は、通信フレームFRを通信路8に送信する。
【0078】
パケット長がコンテナ長よりも長い場合(S22_No且つS25_Yes)、通信制御回路64は、コンテナ長に合わせて、パケットPKのデータを分割する(S26)。換言すれば、通信制御回路64は、コンテナ長に合わせて、パケットPKを分割する。
【0079】
通信制御回路64は、分割データ(分割パケットデータ)を別々の空きコンテナCTに挿入し、下位階層に送信する(S27)。より具体的には、通信制御回路64は、各空きコンテナCTのコンテナペイロードCPに、分割データを含むパケットペイロードPP及びそれに対応するパケットヘッダPHを挿入する。パケットヘッダPHには、分割データであることを示す情報が含まれ得る。更に、通信制御回路64は、各空きコンテナCTのコンテナヘッダCHを更新する。通信制御回路64は、更新されたコンテナCTを含む通信フレームFRをプロトコル変換部63に送信する。プロトコル変換部63は、通信フレームFRのプロトコル変換を実行した後、通信フレームFRを送信部62に送信する。送信部62は、通信フレームFRを通信路8に送信する。
【0080】
パケット長とコンテナ長とが同じ場合(S22_No且つS25_No)、通信制御回路64は、パケットPKのデータを、1つのパケットペイロードPPとして、空きコンテナCTに挿入し、下位階層に送信する(S28)。
【0081】
4.2 複数のパケットのデータを統合して通信フレームのコンテナに挿入する場合の具体例
次に、図9を参照して、複数のパケットPKのデータを統合して通信フレームFRのコンテナCTに挿入する場合の具体例について説明する。図9は、複数のパケットPKのデータを統合して通信フレームFRのコンテナCTに挿入する場合の具体例を示す図である。図9の例は、通信デバイス6-1が通信フレームFR-1のコンテナCT1に複数のパケットPKの統合データを挿入する場合を示している。図9の例では、説明を簡略化するため、対象となるコンテナCT(通信フレームFR-1のコンテナCT1)が示されており、他のコンテナCTは、省略されている。
【0082】
図9に示すように、通信デバイス6-1の通信制御回路64(CONT)は、上位階層からパケットPK1に含まれるデータを受信する。通信制御回路64は、パケット長とコンテナ長とを比較する。例えば、パケット長がコンテナ長の1/2倍である場合、通信制御回路64は、更に、上位階層からパケットPK2に含まれるデータを受信する。通信制御回路64は、パケットPK1及びPK2のデータを統合する。換言すれば、通信制御回路64は、パケットPK1及びPK2を統合する。
【0083】
例えば、下位階層の通信フレームFR-1のコンテナCT1は、空き(Null)状態である。この場合、通信制御回路64は、通信フレームFR-1のコンテナCT1のコンテナペイロードCPに、統合データを含むパケットペイロードPPとそれに対応したパケットヘッダPHを挿入する。更に、通信制御回路64は、コンテナヘッダCHを更新する。
【0084】
4.3 パケットのデータを分割して別々の通信フレームのコンテナに挿入する場合の具体例
次に、図10を参照して、パケットPKのデータを分割して別々の通信フレームFRのコンテナCTに挿入する場合の具体例について説明する。図10は、パケットPKのデータを分割して別々の通信フレームFRのコンテナCTに挿入する場合の具体例を示す図である。図10の例は、通信デバイス6-1が通信フレームFR-1のコンテナCT1と通信フレームFR-2のコンテナCT1とにパケットPKの分割データをそれぞれ挿入する場合を示している。図10の例では、対象となるコンテナCT(通信フレームFR-1のコンテナCT1及び通信フレームFR-2のコンテナCT1)が示されており、他のコンテナCTは、省略されている。
【0085】
図10に示すように、通信デバイス6-1の通信制御回路64(CONT)は、上位階層からパケットPK3に含まれるデータを受信する。通信制御回路64は、パケット長とコンテナ長とを比較する。例えば、パケット長がコンテナ長の2倍である場合、通信制御回路64は、パケットPK3に含まれるデータを2つに分割する。換言すると、通信制御回路64は、パケットPK3を分割する。そして、通信制御回路64は、一方の分割データを含むパケットペイロードPP3aと、他方の分割データを含むパケットペイロードPP3bとを生成する。
【0086】
例えば、下位階層の通信フレームFR-1のコンテナCT1と、通信フレームFR-2のコンテナCT1は、空き(Null)状態である。この場合、通信制御回路64は、通信フレームFR-1のコンテナCT1のコンテナペイロードCPにパケットペイロードPP3aとそれに対応したパケットヘッダPHを挿入する。更に、通信制御回路64は、通信フレームFR-1のコンテナCT1のコンテナヘッダCHを更新する。同様に、通信制御回路64は、通信フレームFR-2のコンテナCT1にパケットペイロードPP3bとそれに対応したパケットヘッダPHを挿入する。更に、通信制御回路64は、通信フレームFR-2のコンテナCT1のコンテナヘッダCHを更新する。
【0087】
5.本実施形態に係る効果
本実施形態に係る構成であれば、通信の処理能力を向上できる通信システムを提供できる。以下、本効果につき詳述する。
【0088】
例えば、下位階層のコンテナ長と上位階層のパケット長とが同じ固定長である場合、コンテナ長及びパケット長は、上位階層にて実行される動作に必要なデータのデータ長が最も長いパケットに合わせて設定される。例えば、書き込み動作に対応するパケットのパケット長が読み出し動作に対応するパケットのパケット長よりも長い場合、書き込み動作に対応するパケットのパケット長に合わせてパケット長及びコンテナ長が設定される。このため、例えば、読み出し動作等のパケット長が比較的短いデータが上位階層から下位階層に送信される場合、下位階層の通信フレームのコンテナの空き領域にはパディングデータが挿入される。このため、データ(通信フレーム)の転送効率が悪化する。すなわち、通信システムにおける転送性能が低下する。
【0089】
これに対し、本実施形態に係る構成であれば、通信デバイス6の上位階層のパケット長を可変長にできる。そして、通信デバイス6の通信制御回路64において、受信したデータの分割または統合を実行できる。より具体的には、通信デバイス6は、通信フレームFRのコンテナCTからのデータの抜き出しにおいて、コンテナ長がパケット長よりも長い場合、コンテナCTから抜き出したデータを分割して上位階層に送信できる。また、通信デバイス6は、通信フレームFRのコンテナCTからのデータの抜き出しにおいて、コンテナ長がパケット長よりも短い場合、複数のコンテナCTのデータを統合して上位階層に送信できる。更に、通信デバイス6は、通信フレームFRのコンテナCTへのデータの挿入において、コンテナ長がパケット長よりも長い場合、複数のパケットPKのデータを統合して、通信フレームFRの空きコンテナCTに挿入できる。また、通信デバイス6は、通信フレームFRのコンテナCTへのデータの挿入において、コンテナ長がパケット長よりも短い場合、パケットPKのデータを分割して、通信フレームFRの複数の空きコンテナCTに挿入できる。これにより、データ(通信フレームFR)の転送効率の悪化を抑制し、通信システムにおける転送性能の低下を抑制できる。
【0090】
6.その他
上記実施形態では、通信デバイス6がNAND型フラッシュメモリを備えるメモリデバイスである場合について説明したが、通信デバイス6は、メモリデバイスに限定されない。また、1つのデバイスカード5に搭載される複数の通信デバイス6は、互いに異なる通信デバイス6であってもよい。
【0091】
上記実施形態では、通信制御回路64がデータの分割または統合を制御する場合について説明したが、これに限定されない。ホストコントローラ4がデータの分割または統合を制御してもよい。この場合、ホストコントローラ4は、通信フレームFRのパケットPKにデータの分割または統合を指示する情報を挿入してもよい。通信制御回路64は、データの分割または統合を指示する情報に基づいて、データの分割または統合を実行し得る。
【0092】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0093】
1…通信システム、2…システムボード、3…コネクタ、4…ホストコントローラ、5…デバイスカード、6…通信デバイス、7…基板、8…通信路、41…コネクタインターフェース回路、42…デバイスインターフェース回路、SoC…60、61…受信部、62…送信部、63…プロトコル変換部、64…通信制御回路、65…内部バス、66…CPU、67…DRAMコントローラ、68…NANDコントローラ、69…SRAM、601…DRAM、602…NANDメモリ、CH…コンテナヘッダ、CP…コンテナペイロード、CT…コンテナ、FR…通信フレーム、PH…パケットヘッダ、PK…パケット、PP…パケットペイロード
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10