JP5054818B2 - インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 - Google Patents
インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 Download PDFInfo
- Publication number
- JP5054818B2 JP5054818B2 JP2010515756A JP2010515756A JP5054818B2 JP 5054818 B2 JP5054818 B2 JP 5054818B2 JP 2010515756 A JP2010515756 A JP 2010515756A JP 2010515756 A JP2010515756 A JP 2010515756A JP 5054818 B2 JP5054818 B2 JP 5054818B2
- Authority
- JP
- Japan
- Prior art keywords
- communication mode
- input
- condition
- transmission path
- switching
- 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
Links
- 238000004891 communication Methods 0.000 title claims description 592
- 238000000034 method Methods 0.000 title claims description 57
- 230000005540 biological transmission Effects 0.000 claims description 583
- 238000003860 storage Methods 0.000 claims description 155
- 238000001514 detection method Methods 0.000 claims description 112
- 238000012545 processing Methods 0.000 claims description 29
- 239000000872 buffer Substances 0.000 claims description 19
- 238000004458 analytical method Methods 0.000 description 80
- 238000010586 diagram Methods 0.000 description 41
- 230000004044 response Effects 0.000 description 37
- 238000012546 transfer Methods 0.000 description 19
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 12
- 230000008929 regeneration Effects 0.000 description 12
- 238000011069 regeneration method Methods 0.000 description 12
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 11
- 230000000694 effects Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 239000004065 semiconductor Substances 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 230000010354 integration Effects 0.000 description 3
- 208000033748 Device issues Diseases 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001568 sexual effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000009413 insulation Methods 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 230000011514 reflex Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/14—Two-way operation using the same type of signal, i.e. duplex
- H04L5/16—Half-duplex systems; Simplex/duplex switching; Transmission of break signals non-automatically inverting the direction of transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/14—Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/14—Two-way operation using the same type of signal, i.e. duplex
- H04L5/18—Automatic changing of the traffic direction
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Power Engineering (AREA)
- Bidirectional Digital Transmission (AREA)
- Information Transfer Systems (AREA)
- Communication Control (AREA)
Description
そこで、より少ないLSI端子数で高速なデータ通信を実現する目的でUSB2.0、IEEE1394、PCI Expressといった高速シリアル通信規格が広く採用されている。このような規格における通信方式としては、USB2.0やIEEE1394のように送受信の方向制御や送信権の調停制御が必要な「半二重通信方式」と、PCI Expressのように送信専用の伝送路と、受信専用の伝送路とを少なくとも1チャンネルずつ備えることにより送受信を同時に処理できる「全二重通信方式」が挙げられる。一般的に、全二重通信方式の方が、半二重通信方式に比べ、制御が容易である。その一方で、全二重通信方式では、送信あるいは受信のどちらか一方向のみの通信を行っている期間は、他方向の伝送路が使用されないので、通信に使用されていない他方の伝送路の帯域が無駄になる、という効率面での課題がある。
こうした装置間の通信データ量は、例えば、デジタルスチルカメラの高画素化と高画質化により、急速に増大している。また、一眼レフタイプのデジタルスチルカメラにおいては、高速連写機能の搭載により、データ通信の高速化が強く求められている。
こうした不揮発性記憶装置やネットワークインターフェース装置に代表されるスレーブ装置と、ホスト装置との間は、複数の伝送路により接続される。例えば、スレーブ装置が不揮発性記憶装置である場合、このような伝送路上には、ホスト装置から不揮発性記憶装置に対する命令(コマンド)や通知、不揮発性メモリから読み出されるデータ、もしくは不揮発性メモリに書き込まれるデータ等が、デジタル信号として伝送される。
伝送路を2チャンネル備える場合、1チャンネルの伝送路がホスト装置から不揮発性記憶装置(スレーブ装置の一例)への伝送路(ダウンリンク)として利用され、もう一方の伝送路が不揮発性記憶装置からホスト装置への伝送路(アップリンク)として利用される。全二重通信方式では、ホスト装置および不揮発性記憶装置が同時にコマンドもしくはデータを送信することができる。
特に、半導体メモリカードに代表される不揮発性記憶装置においては、高速なデータ書き込みと、高速なデータ読み出しが同時に行われることは希で、高速書き込み、もしくは、高速読み出しのどちらか一方の処理のみが継続する用途が圧倒的に多い。したがって、このような不揮発性記憶装置において、データ転送(データ書き込み又はデータ読み出し)を行う期間に関しては、半二重通信方式の方が効率の面で極めて有利になる。
従来の、全二重モードと半二重モードとを切り換え可能な通信システムについて、図11Aおよび図11Bを用いて、説明する。
図11Aおよび図11Bは、ホスト装置と不揮発性記憶装置とが2チャンネルの外部伝送路により接続され、全二重モードと半二重モードとを切り換えて通信を行うことができる通信システムにおける、第1伝送路および第2伝送路により送受信されるコマンドおよびデータのタイミング図(タイミングチャート)(外部伝送路上を伝送するコマンド(命令)およびデータを時系列に示したタイミング図)である。具体的には、図11Aは、ホスト装置が半二重モードにて不揮発性記憶装置よりデータを読み出すときのタイミング図である。図11Bは、不揮発性記憶装置へデータを書き込むときのタイミング図である。
このような構成とする理由は、通常、不揮発性記憶装置をはじめとするスレーブ装置は、小型かつ安価であることが求められるため、独自にクロックを持たず(独自にクロック生成せず)、ホスト装置から供給されるクロックで駆動する方が好ましいからである。
図11Aにおいて、ホスト装置は、不揮発性記憶装置に対し半二重モードでデータ読み出しを指示するために、高速Readコマンドを送信する(1111)。高速Readコマンドには、データ読み出し先のアドレス、読み出しサイズが多重されているものとする。
その後、不揮発性記憶装置は、高速Readコマンドに多重された読み出し先のアドレスから読み出しサイズ分のデータを、第1伝送路1101および第2伝送路1102を用いて並列に送信する(1113)。
所定サイズのデータの送受信完了後、不揮発性記憶装置は、第1伝送路1101の不揮発性記憶装置側入出力端子を入力状態にし、ホスト装置は、第1伝送路1101のホスト側入出力端子を出力状態にする。これにより、第1伝送路1101はダウンリンクに戻る(1114)。
高速Writeコマンド送信後、ホスト装置は、第2伝送路1102のホスト側入出力端子を出力状態に設定する。一方、高速Writeコマンドを受信した不揮発性記憶装置は、第2伝送路1102の不揮発性記憶装置側入出力端子を入力状態に設定する。これにより、第2伝送路1102はダウンリンクに設定される(1116)。
その後、ホスト装置は、高速Writeコマンドに多重された書き込み先のアドレスへ書き込みサイズ分のデータを、第1伝送路1101および第2伝送路1102を用いて並列に送信する(1117)。
以上により、従来の、全二重モードと半二重モードとを切り換え可能な通信システムでは、全二重モードと半二重モードとを切り替えることで効率の良い通信を実現することができる。
第1に、ホスト装置が高速Readコマンドを発行し、第1伝送路1101がアップリンクに切り換わった後から再度ダウンリンクに切り換わるまで(1112〜1114)は、第1伝送路1101および第2伝送路1102共にアップリンクとなるため、ホスト装置から不揮発性記憶装置に情報を伝達する手段がない。例えば、高速Readコマンドによるデータ転送の途中(1113)で、ホスト装置の受信バッファの空き領域がなくなり高速Readコマンドを一時停止(「Wait」)させようとしても、データ転送が完了し、第1伝送路1101が再度ダウンリンクに切り換わるまで、ホスト装置から不揮発性記憶装置に「Wait」を指示できない。
第2に、ホスト装置が高速Writeコマンドを発行した場合も、第2伝送路1102がダウンリンクに切り換わった後から再度アップリンクに切り換わるまで(1116〜1118)は、第1伝送路1101および第2伝送路1102共にダウンリンクとなるため、不揮発性記憶装置からホスト装置に情報を伝達する手段がない。よって、データ転送途中(1117)で、高速Writeコマンドを一時停止(「Busy」)させようとしても、データ転送が完了し、第2伝送路1102が再度アップリンクに切り換わるまで、不揮発性記憶装置からホスト装置に「Busy」を通知できない。
第1伝送路用入出力端子は、第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能である。第2伝送路用入出力端子は、第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能である。通信モード切換条件検出部は、通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、半二重通信モードを全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した第1条件または第2条件を満たすか否かを判定する。伝送路切換制御部は、通信モード切換条件検出部により、第1条件が満たされたと判定された場合、第1伝送路用入出力端子および第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、通信モードを、全二重通信モードから半二重通信モードに切り換える。また、伝送路切換制御部は、通信モード切換条件検出部により、第2条件が満たされたと判定された場合、第1伝送路用入出力端子および第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、通信モードを、半二重通信モードから全二重通信モードに切り換える。
なお、第1伝送路用入出力端子と、第2伝送路用入出力端子と、「2つの状態」である「入力状態」と「出力状態」の他に、例えば、「ハイインピーダンス」(絶縁状態)のような、「入力状態」と「出力状態」以外の状態をとるものであってもよい。
第2の発明は、第1の発明であって、通信モード切換条件検出部は、通信システムが、半二重通信モードでの通信に切り換えられた時点から、所定量のデータの送信もしくは受信を完了した場合に、第2条件が満たされたと判断する。
第3の発明は、第1の発明であって、通信モード切換条件検出部は、通信システムが、半二重通信モードでの通信に切り換えられた時点から、N個(Nは自然数)のパケットの送信もしくは受信を完了した場合に、第2条件が満たされたと判断する。
このインターフェース装置では、通信システムが、半二重通信モードでの通信に切り換えられた時点から、N個(Nは自然数)のパケットの送信もしくは受信を完了した場合に、必ず、全二重通信モードに戻るので、半二重通信モード中の割り込み要求の速やかな実行を保証することができる。さらに、このインターフェース装置では、送受信パケット数をカウントするだけで、簡単に、通信モードの切換タイミングを決定することができる。
これにより、第2条件を、簡易かつ確実に、通信相手に通知することができる。なお、データ送受信要求またはデータ送受信命令は、予め定義されたパケットを利用するものであってもよい。
第5の発明は、第1から第4のいずれかの発明であって、伝送路切換制御部は、インターフェース装置の初期設定時に、第2条件を、通信相手に通知及び/又は設定させるためのパケットを送信する。
これにより、インターフェース装置の初期化時に第2条件(半二重から全二重に切り換えるための条件)を、通信相手に通知及び/又は設定させることができるため、通信システムが動作中に、別途第2条件を設定するための通信を行う必要がない。
第6の発明は、第1、第2、第3、および第5のいずれかの発明であって、第2条件が満たされたと判断するための送信もしくは受信したパケット数Nは、通信システムにかかるバッファサイズから決定する。
これにより、通信システムにおいて、適切に高速データ転送を行うことができる。
例えば、パケット数Nの決定方法は、以下のようにすればよい。
インターフェース装置を含むホスト装置と、インターフェース装置を含むスレーブ装置と、を備える通信システムを想定し、ホスト装置側のインターフェース装置のバッファサイズをBuf1[バイト]とし、スレーブ装置側のインターフェース装置のバッファサイズをBuf2[バイト]とし、ホスト装置とスレーブ装置間で通信されるパケットのパケットサイズをA[バイト]としたとき、
(1)Buf1>Buf2である場合、
N=Int(Buf2/A)
(2)Buf1≦Buf2である場合、
N=Int(Buf1/A)
により、パケット数Nを決定すればよい。なお、Int(X)は、Xを超えない最大の整数値を表すものとする(Int(X)は、ガウス記号による演算に相当する関数である)。
また、パケット数Nの決定方法は、ホスト装置およびスレーブ装置の処理速度性能に基づいてパケット数Nを決定する方法であってもよい。例えば、ホスト装置の処理速度、動作クロックがそれぞれP1、C1であり、スレーブ装置の処理速度、動作クロックがそれぞれP2、C2であり、通信パケットのパケットサイズがAである場合、P1、P2、C1、C2およびAの全部若しくは一部に基づいて、パケット数Nを決定するようにしてもよい。なお処理速度性能は、ホスト装置またはスレーブ装置に実装されているプロセッサ処理能力、同じくホスト装置またはスレーブ装置に実装されているRAMやフラッシュメモリ等記録媒体への読み書き速度、外部との通信を行う外部通信路の伝送速度の全部若しくは一部から決まる。
このインターフェース装置では、通信システムが、全二重通信モードでの通信に切り換えられた時点から、所定の時間経過した場合に、半二重通信モードに戻るので、割り込み要求等の実行を終了した後、半二重通信モードによる高速データ通信の再開を速やかに行うことができる。
第8の発明は、第1から第7のいずれかの発明であって、伝送路切換制御部は、インターフェース装置の初期設定時に、第1条件を、通信相手に通知及び/又は設定させるためのパケットを送信する。
第9の発明は、第1から第7のいずれかの発明であって、通信モード切換条件検出部は、通信システムが全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を受信した場合に、第1条件が満たされたと判断する。
このインターフェース装置では、通信システムが、全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を受信した場合に、半二重通信モードに戻るので、割り込み要求等の実行を終了した後、半二重通信モードによる高速データ通信の再開を速やかに行うことができる。また、このインターフェース装置では、インターフェース切換要求命令を受信により通信モードが切り換えられるので、送信側および受信側において、(クロックカウント等による)時間計測を行う必要がない。
このインターフェース装置では、通信システムが、全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を送信した場合に、半二重通信モードに戻るので、割り込み要求等の実行を終了した後、半二重通信モードによる高速データ通信の再開を速やかに行うことができる。また、このインターフェース装置では、インターフェース切換要求命令の送信により通信モードが切り換えられるので、送信側および受信側において、(クロックカウント等による)時間計測を行う必要がない。さらに、インターフェース切換要求命令を送信するタイミングを制御することで、全二重通信モードによる通信期間を所望の期間に設定することができる。このため、効率のよい通信を実現させることができる。
これにより、このインターフェース装置では、Wait指示の割り込み通知(例えば、Wait通知パケット)を受信した時点から、割込処理完了を指示する通知(例えば、Wait解除パケット)を受信する時点までの間、確実に全二重モードを維持することができ、かつ、その間、インターフェース装置は、通信モードを維持したまま、待機していればよいので、余計な通信(余計なパケットの送受信)を行う必要がない(例えば、ポーリングにより、所定の周期で、通信相手の装置の状態を確かめる必要がない)。
これにより、このインターフェース装置では、Wait指示の割り込み通知(例えば、Wait通知パケット)を受信した時点から、所定時間が経過するまでの間、確実に全二重モードを維持することができ、かつ、その間、インターフェース装置は、通信モードを維持したまま、待機していればよいので、余計な通信(余計なパケットの送受信)を行う必要がない(例えば、ポーリングにより、所定の周期で、通信相手の装置の状態を確かめる必要がない)。
なお、所定時間以内にWait指示の割り込み通知を受信しなかった場合、直ちに、半二重通信モードに切り換えることが好ましい。
これにより、第1から第12のいずれかの発明であるインターフェース装置の効果を実現することができる不揮発性記憶装置(例えば、SDカード)を実現することができる。
第14の発明は、外部との通信を行う外部通信部と、外部通信部に対する制御を行う外部通信制御部と、第1から第12のいずれかの発明であるインターフェース装置と、を備える通信装置である。
第15の発明は、第13または第14の発明であるインターフェース装置を含むホスト装置と、第1から第8のいずれかの発明であるインターフェース装置を含むスレーブ装置と、を備える通信システムである。
第16の発明は、少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、伝送路を用いて命令やデータの送受信を行う通信システムに用いられる通信モード切換方法であって、通信モード切換条件検出ステップと、伝送路切換制御ステップと、を備える。
この通信モード切換方法では、半二重モードでのデータ読み出しやデータ書き込みの実行中であっても、所定の条件を満たしたときに伝送路の方向を切り換えて一時的に全二重モードとすることができるので、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。
通信モード切換条件検出部は、通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、半二重通信モードを全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した第1条件または第2条件を満たすか否かを判定する。伝送路切換制御部は、通信モード切換条件検出部により、第1条件が満たされたと判定された場合、第1伝送路用入出力端子および第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、通信モードを、全二重通信モードから半二重通信モードに切り換え。また、伝送路切換制御部は、通信モード切換条件検出部により、第2条件が満たされたと判定された場合、第1伝送路用入出力端子および第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、通信モードを、半二重通信モードから全二重通信モードに切り換える。
第18の発明は、低速伝送路および複数の高速伝送路を有し、低速伝送路または複数の高速伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、低速伝送路用入出力端子と、複数の高速伝送路用入出力端子と、伝送路切換制御部と、を備える。
低速伝送路用入出力端子は、低速伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な入出力端子である。複数の高速伝送路用入出力端子は、高速伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な入出力端子である。
(1)複数の高速伝送路用入出力端子のうち少なくとも1つの高速伝送路用入出力端子を出力状態に設定し、当該出力状態に設定した高速伝送路用入出力端子以外の高速伝送路用入出力端子を入力状態に設定する全二重通信モード。
(2)複数の高速伝送路用入出力端子のすべてを出力状態に設定する半二重出力モード。
(3)複数の高速伝送路用入出力端子のすべてを入力状態に設定する半二重入力モード。
そして、伝送路切換制御部は、半二重出力モードでは、低速伝送路用入出力端子を入力状態に設定し、半二重入力モードでは、低速伝送路用入出力端子を出力状態に設定する。
第19の発明は、第18の発明であって、低速伝送路用入出力端子は、シングルエンド方式による通信を行う伝送路用の入出力端子であり、複数の高速伝送路用入出力端子のうちの少なくとも1つの高速伝送路用入出力端子は、差動伝送方式による通信を行う伝送路用の入出力端子である。
第20の発明は、不揮発性メモリと、不揮発性メモリに対する読み書き制御を行う不揮発性メモリ制御部と、第18または第19の発明であるインターフェース装置と、を備える不揮発性記憶装置である。
第21の発明は、外部との通信を行う外部通信部と、外部通信部に対する制御を行う外部通信制御部と、第18または第19の発明であるインターフェース装置と、を備える通信装置である。
[第1実施形態]
<1.1:通信システムの構成>
図1は、本発明の第1実施形態に係る通信システム1の構成を示したブロック図である。
図1に示すように、通信システム1は、ホスト装置100とスレーブ装置の一種である不揮発性記憶装置110とを備える。そして、ホスト装置100と不揮発性記憶装置110とは、第1伝送路121、第2伝送路122、クロック伝送路123により接続されている。
ホストインターフェース部140は、クロック送信部141、パケット生成部142、伝送路切換制御部143、パケット解析部144、クロックカウンタ145を備える。
不揮発性記憶装置110は、少なくともスレーブインターフェース部160、不揮発性メモリ部読み書き制御部170および不揮発性メモリ部171を備える。
スレーブインターフェース部160は、クロック再生成部161、伝送路切換制御部162、パケット解析部163、パケット生成部164、クロックカウンタ165を備える。
なお、パケット生成部142および164、パケット解析部144および163は、適当な大きさのバッファを備えているものとする。
図2A〜Cに示すように、ホスト装置側の伝送路切換制御部143は、ホストインターフェース部140の切換条件検出部240と、第1伝送路121のホストインターフェース部140内の入出力端子241と、第2伝送路122のホストインターフェース部140内の入出力端子242と、を備える。
スレーブ装置側の伝送路切換制御部162は、スレーブインターフェース部160の切換条件検出部260と、第1伝送路121のスレーブインターフェース部160内の入出力端子261と、第2伝送路122のスレーブインターフェース部160内の入出力端子262と、を備える。
同様に、スレーブ装置側の切換条件検出部260は、パケット解析部163、パケット生成部164、およびクロックカウンタ165の状態を監視して切換条件の充足状況を検出する。そして、切換条件の充足状況に応じて入出力端子261、262を、それぞれ、送信状態または受信状態に設定する。
図2Aでは、第1伝送路121のホストインターフェース部140内の入出力端子241は送信状態(T)、スレーブインターフェース部160内の入出力端子261は受信状態(R)に設定されており、第2伝送路122のホストインターフェース部140内の入出力端子242は受信状態(R)、スレーブインターフェース部160内の入出力端子262は送信状態(T)に設定されている。
一方、図2Bでは、第1伝送路121および第2伝送路122のホストインターフェース部140内の入出力端子241および242は、共に受信状態(R)、スレーブインターフェース部160内の入出力端子261および262は、共に送信状態(T)に設定され、第1伝送路121および第2伝送路122の通信方向が同じ(アップリンク)になっている。また、図2Cでも、第1伝送路121および第2伝送路122の通信方向が同じ(ダウンリンク)になっている。
<1.2:通信システムの動作>
図3A、B、および図12A、Bは、第1実施形態における第1伝送路121および第2伝送路122上を伝送されるパケットを時系列に示したタイミング図(タイミングチャート)である。
以下、図1から図3A、B、図12A、B、および図15から図21を用いて、本実施形態に係る通信システム1の動作を説明する。
不揮発性記憶装置110がホスト装置100に装着されたとき、ホストインターフェース部140がアクティブになる。また、ホストインターフェース部140のクロック送信部141からクロック伝送路123を介してスレーブインターフェース部160のクロック再生成部161にクロックが供給され、スレーブインターフェース部160がアクティブになる。このとき、クロック再生成部161で生成されるクロックは、不揮発性記憶装置110全体、もしくは一部に供給される。
パケット生成部142及びパケット生成部164は、例えば、図17に示すような各種のリクエストパケット、データパケット、レスポンスパケット、メッセージパケット等を生成する。そして、パケット解析部144及びパケット解析部163は、例えば、図17に示すような各種のリクエストパケット、データパケット、レスポンスパケット、メッセージパケット等の解析を行う。
I/O R/W リクエストパケット1701は、図17に示すパケット構造を有している。I/O R/W リクエストパケット1701は、制御レジスタや、状態レジスタ(ステータスレジスタ)等がマッピングされたI/O空間をRead/Writeするための要求を伝達する。
図21に示すI/O空間は、アドレス000(h)(「(h)」は、16進数による表記であることを示す。以下同様。)から、1FF(h)までの各アドレスに1バイト(=8bit)のレジスタもしくはメモリ等の記憶素子が割り当てられていることを示している。よって、この例では、512バイト分のI/O空間が定義されている。
なお、I/O空間は、ホスト装置100、不揮発性記憶装置110のどちらにも存在し(実装され)、それぞれに固有の情報(ホスト装置100にのみ保持される情報と、不揮発性記憶装置のみに保持される情報)と、ホスト装置100と不揮発性記憶装置110の両者に共通の情報とが存在する。
図17に、Memory R/W リクエストパケット1702、データパケット1703、レスポンスパケット1704、およびメッセージパケット1705のパケット構造の一例を示す。これらのパケットについて、以下、説明する。
データパケット1703は、Memory R/W リクエストパケットによる不揮発性メモリ部171からの読み出し要求に基づいて、不揮発性メモリ部171から読み出されたデータを伝送する。また、データパケット1703は、Memory R/W リクエストパケットによる不揮発性メモリ部171への書き込み要求に基づいて、不揮発性メモリ部171への書き込みデータを伝送する。
レスポンスパケット1704は、リクエストパケット(I/O R/W リクエストパケット、及び、Memory R/W リクエストパケット)に対する応答を伝送する。
図17に示すように、パケット1701〜1705において、各パケットの先頭には、各パケット共通の情報を伝達するための、Header1711〜1715が、それぞれ、付加される。
図18に、パケット1701〜1705において、各パケットの先頭に付加されるHeader情報の構成例を示す。
図18に示す例では、Header情報は、2バイトで構成し、バイト0のビット7“DIR”は、パケットの伝送方向を示すビットであり、このビット”Dir”が“0”の場合は不揮発性記憶装置110からホスト装置100にパケットが伝送されることを示し、ビット”Dir”が“1”の場合は、ホスト装置100から不揮発性記憶装置110にパケットが伝送されることを示す。
また、バイト0のビット3〜ビット0、および、バイト1のビット7〜ビット6の合計6ビットで構成される“Destination ID”には、一つのホスト装置100に、複数の不揮発性記憶装置110が接続された場合、どの不揮発性記憶装置にパケットを伝送するかを示すID(パケットの届け先情報)を格納する。
通信システム1において、例えば、ホスト装置100から不揮発性記憶装置110に対して、メモリ部のデータを読み出す要求を行うMemory R/W リクエストパケット1702が伝送される場合について説明する。
Memory R/W リクエストパケット1702の“Transaction ID”が001000(b)であった場合、前記リクエストパケット伝送後に、不揮発性記憶装置110からホスト装置100に伝送されるレスポンスパケット1704の“Transaction ID”が001000(b)の値であれば、当該レスポンスパケット1704は、直前に伝送されたメモリ部のデータを読み出す要求を行うMemory R/W リクエストパケットに対応したレスポンスパケットであると判定する。
また、図17に示すように、パケット1701〜1705の各パケットにおいて、それぞれ、1721〜1725で示す“Argument”は、必要に応じてパケット長に関する情報や、その他制御系の情報等を格納する領域である。
図18に、Memory R/W リクエストパケット1702のArgument1722の一部(Argument1722の先頭1バイト)の例を示す。
バイト2(Argument1722の先頭バイト)のビット6“R/W”は、Memory R/W リクエストパケット1702が、Readリクエスト、Writeリクエストのどちらであるかを示すビットである。ビット6“R/W”が“0”の場合、当該パケットが、Readリクエスト(用のパケット)であることを示し、ビット6“R/W”が“1”の場合、当該パケットが、Writeリクエスト(用のパケット)であることを示す。
I/O R/W リクエストパケット1701の“Address”(図17の1731で示す部分)は、I/O空間のどのエリアの読み出し、もしくは、I/O空間のどのエリアに書き込みを行うかを指定するアドレスを格納する領域である。
また、I/O R/W リクエストパケット1701の“Data”(図17の1741で示す部分)は、I/O空間に書き込むデータを格納する領域である。
例えば、図21に示すI/O空間の“DIR C”へ、値“4(d)”(「(d)」は、10進数による表記であることを示す。以下同様。)を書き込む場合には、“Address”(図17の1731の部分)に030(h)を、“Data”(図17の1741の部分)に“4(d)”を設定して、I/O Write リクエストパケットを伝送する。
データパケット1703の“Data”(図17の1742の部分)は、主に、メモリ空間のRead/Write要求に対するデータを格納する領域であり、レスポンスパケット1704の“Data”(図17の1743の部分)は、主に、I/O空間のRead要求に対するデータを格納する領域である。
図17に示すように、パケット1701〜1705において、各パケットの最後尾には必要に応じて“CRC”(図17の1751〜1755で示す部分)が付加され、伝送した各パケットのデータ誤り検出に用いられる。
(1.2.1:初期化時の伝送切換条件に関するパラメータの設定)
こうした初期化時に、通信システム1のインターフェース部では、伝送路切換条件に関するパラメータのI/O空間への書き込み(設定)を、以下のように行う。
例えば、ホスト装置100は、自身(ホスト装置100)のI/O空間のアドレス30(h)“DIR C”に“4”を設定した上で、ホスト装置100のパケット生成部142により、I/O R/W リクエストパケットを生成する。そして、ホスト装置100は、不揮発性記憶装置110のI/O空間のアドレス30(h)“DIR C”に書き込みを行う(Writeをする)要求とその書き込み値を“4”としたパケットを不揮発性記憶装置110に送信する。
なお、図21に示すI/O空間は論理空間であり、それぞれのアドレスに対応するレジスタもしくはメモリ等の記憶素子は、実際には、関連する各回路ブロック(ハードウェアで実現する場合)に実装されるのが一般的である。本実施形態では、ホスト装置100のI/O空間のアドレス30(h)“DIR C”レジスタは、切換条件検出部240内に実装され、不揮発性記憶装置110のI/O空間のアドレス30(h)“DIR C”レジスタは、切換条件検出部260内に実装されている。
パケット解析部163では、上記パケットが初期化コマンドであることが解析され、必要な初期化が実行される。
初期化完了後、ユーザーは、高速データReadおよび高速データWriteをホスト装置100のユーザーインターフェース部131に指示することができる。
ここで、「高速データRead」とは、伝送路121および122を半二重モード、すなわち、第2通信モードに設定して、不揮発性記憶装置110の不揮発性メモリ部171からデータを読み出す動作のことである。
(1.2.2:高速Readの動作(時間T経過による半二重/全二重モード切換))
以下では、まず、図3Aのタイミング図を参照しながら、通信システム1における高速Readの動作(ユーザーが高速データReadをユーザーインターフェース部131に指示したときの通信システム1の動作)について、説明する。
ユーザーが高速データReadをユーザーインターフェース部131に指示した場合、ユーザーインターフェース部131は、アプリケーション部132に高速データRead指示を伝達する。
ここで、パケット生成部142により生成される高速Readコマンドパケットについて、具体的に説明する。
高速Readコマンドパケットは、図17のMemory R/W リクエストパケット1702の“Address”1732に、読み出し先のアドレスを格納し、“Argument”1722の一部に読み出しサイズを格納することで生成される。
また、Memory R/W リクエストパケットでRead要求を行うことを示すために、“Argument”1722の先頭バイト(図18のバイト2)のビット6“R/W”は、“0”に設定される。
パケット生成部142により生成された高速Readコマンドパケットは、第1伝送路121経由で、パケット解析部163に伝達される(302)。
パケット解析部163では、上記パケットが高速Readコマンドであることが解析される。
伝送路切換制御部143の切換条件検出部240は、パケット生成部142が高速Readコマンドパケットを送信したことを検出し、第1伝送路121の入出力端子241を受信状態に設定する。また、伝送路切換制御部162の切換条件検出部260は、パケット解析部163が高速Readコマンドパケットを受信したことを検出し、第1伝送路121の入出力端子261を送信状態に設定する。これにより、第1伝送路121はアップリンクに設定され(303)、通信システム1は、図2Bに示す半二重モードとなる。
パケット生成部164では、パケットの種別等を示したヘッダと、読み出したデータを適当なサイズに分割して生成されるボディからデータパケットが生成される。
パケット生成部164は、生成したデータパケットを第1伝送路121および第2伝送路122に振り分けながら、伝送路切換制御部162を介してホスト装置100に送信する。
本実施形態では、1番目のデータパケットDATA(1)を第1伝送路121に、2番目のデータパケットDATA(2)を第2伝送路122に振り分けて送信する(304)。
パケット解析部144では、これらのパケットがデータパケットであると解析され、ヘッダを除いたボディ、すなわち、データ本体がメモリ部133に格納される。
以降、3番目のデータパケットDATA(3)および4番目のデータパケットDATA(4)についても、同様に、ホスト装置100に送信される(305)。
次に、伝送路切換制御部162の切換条件検出部260は、初期化時にI/O空間のアドレス30(h)“DIR C”に“4”が設定されているので、パケット生成部164が4個のデータパケットを送信したことを検出し、第1伝送路121の入出力端子261を受信状態に設定する。
このように、通信システム1では、半二重モードから全二重モードに切り換える条件は、N個(Nは任意の整数)のデータパケットの送受信完了時であるとして、初期化コマンドのパラメータで予めホスト装置100から不揮発性記憶装置110に対し通知しておく。
具体的には、ホスト装置100は、自身(ホスト装置100)のI/O空間のアドレス30(h)“DIR C”に“N”を設定した上で、ホスト装置100のパケット生成部142により、I/O R/W リクエストパケットを生成する。そして、ホスト装置100は、不揮発性記憶装置110のI/O空間のアドレス30(h)“DIR C”に書き込みを行う(Writeをする)要求とその書き込み値を“N”としたパケットを不揮発性記憶装置110に送信する。
図3AおよびBでは、初期化コマンドのパラメータをN=4としたときの、通信システム1におけるタイミング図の一例を示している。
また、図20(b)では、N=8としたときの、通信システム1におけるタイミング図の一例を示している。
通信システム1において、第1伝送路121がダウンリンクに設定されたとき、クロックカウンタ165は、クロック再生成部161から供給されるクロックを元にクロック数の計上を開始する。同様に、クロックカウンタ145は、クロック送信部141から供給されるクロックを元にクロック数の計上を開始する。
同様に、スレーブインターフェース部160内の切換条件検出部260は、第1伝送路121がダウンリンクに切り換わった時点から所定の時間Tが経過したことを、クロックカウンタ165を監視することで検出し、第1伝送路121の入出力端子261を再び送信状態に設定する。このとき、切換条件検出部260は、クロックカウンタ165に対してクロック数をゼロクリアさせる。
以後同様に、通信システム1では、4個のデータパケットの送受信を完了する度に、第1伝送路121は、ダウンリンクに設定され(308)、所定の時間Tが経過すると、半二重モードに戻る(309)という制御が繰り返される。
ここで、第1伝送路121がダウンリンクに設定されている間(306〜307、308〜309)に、ホスト装置100が第1伝送路121上にコマンドやメッセージ等を送信することで、不揮発性記憶装置110に対して割り込み要求を行うことが可能である。
次に、通信システム1において、Wait指示(Wait通知・解除)により半二重/全二重モードを切り換える場合の高速Read動作について、説明する。
図3Bは、半二重モードによる通信中に、割り込み要求として、ホスト装置100が不揮発性記憶装置110にWait指示(Wait通知・解除)を送る場合のシーケンスを示している。
初期化コマンドパケット発行から第1伝送路121がアップリンクに設定される(301〜303)までは、図3Aの場合と同様であるので、詳細な説明は省略する。
例えば、半二重モード期間(304〜305)において、メモリ部133の空き状態を監視しているアプリケーション部132が、高速Readコマンドによるスレーブ装置(不揮発性記憶装置110)からのデータ読み出し動作を継続すると、データを格納するためのメモリ部133上の空き領域が不足すると判断したとする。この場合、アプリケーション部132は、パケット生成部142にWait通知パケットを生成させ、第1伝送路121がダウンリンクに設定されている間に不揮発性記憶装置110に送信させる(310)。
その後、メモリ部133に十分な空き領域ができると、アプリケーション部132がそれを検知し、パケット生成部142にWait解除パケットを生成させ、不揮発性記憶装置110に送信させる(311)。
このとき、切換条件検出部240は、パケット生成部142がWait解除パケットを生成したことを検出し、第1伝送路121の入出力端子241を受信状態に設定する。
これにより、第1伝送路121がアップリンクに設定され、通信システム1は、半二重モードとなり、通信システム1において、高速Readコマンドの実行が再開される。
このように、通信システム1では、ホスト装置100から不揮発性記憶装置110に対して、Wait通知パケットが送信された時点から、Wait解除パケットが送信される時点までの間、確実に全二重モードが維持され、かつ、Waitに関するステータスを確かめるための余計なパケットを送受信させる必要がない(例えば、ポーリングにより、所定の周期で、ホスト装置100および/または不揮発性記憶装置110の状態を確かめる必要がない)。
なお、ホスト装置100から不揮発性記憶装置110に対して送信されるWait通知パケットに対して、当該Wait通知パケットに対するレスポンスパケットを、不揮発性記憶装置110からホスト装置100に送信するようにしてもよい。また、ホスト装置100から不揮発性記憶装置110に対して送信されるWait解除パケットに対して、当該Wait解除パケットに対するレスポンスパケットを不揮発性記憶装置110からホスト装置100に送信するようにしてもよい。この場合、Wait解除パケットに対するレスポンスパケットが不揮発性記憶装置110からホスト装置100に送信された後、通信モードを切り換えることが好ましい。
(1.2.4:高速Writeの動作(時間T経過による半二重/全二重モード切換))
次に、通信システム1における高速Writeの動作(時間T経過により半二重/全二重モードを切り替える場合の動作)について、説明する。
図12Aは、通信システム1における高速Writeの動作(時間T経過により半二重/全二重モードを切り替える場合の動作)を説明するためのタイミング図(タイミングチャート)である。
ユーザーが高速データWriteをユーザーインターフェース部131に指示した場合、ユーザーインターフェース部131は、アプリケーション部132に高速データWrite指示を伝達する。
ここで、パケット生成部142により生成される高速Writeコマンドパケットについて、具体的に説明する。
高速Writeコマンドパケットは、図17のMemory R/W リクエストパケット1702の“Address”1732に、読み出し先のアドレスを格納し、“Argument”1722の一部に読み出しサイズを格納することで生成される。
また、Memory R/W リクエストパケットでWrite要求を行うことを示すために、“Argument”1722の先頭バイト(図18のバイト2)のビット6“R/W”は、“1”に設定される。
パケット生成部142により生成された高速Writeコマンドパケットは、第1伝送路121経由でパケット解析部163に供給される(1202)。
パケット解析部163では、上記パケットが高速Writeコマンドであることが解析され、それが不揮発性メモリ部読み書き制御部170に通知される。
不揮発性メモリ部読み書き制御部170は、不揮発性メモリ部171にデータを格納するための空き領域が存在することを確認する。不揮発性メモリ部読み書き制御部170は、不揮発性メモリ部171に空き領域が存在することを確認した場合、パケット生成部142に高速Writeコマンドに対するレスポンスパケットを生成させる。このレスポンスパケットは、第2伝送路122経由でパケット解析部144に供給される(1203)。
伝送路切換制御部162の切換条件検出部260は、パケット解析部163が上記レスポンスパケットを送信したことを検出し、第2伝送路122の入出力端子262を受信状態に設定する。
伝送路切換制御部143の切換条件検出部240は、パケット解析部144が上記レスポンスパケットを受信したことを検出し、第2伝送路122の入出力端子242を送信状態に設定する。
これにより、第2伝送路122は、ダウンリンクに設定され(1204)、通信システム1は、図2Cに示す半二重モードとなる。
不揮発性記憶装置110に送信されたデータパケットは、伝送路切換制御部162を介してパケット解析部163に蓄積される。パケット解析部163により、これらのパケットは、データパケットであると解析されて、データ本体が不揮発性メモリ部読み書き制御部170を介して不揮発性メモリ部171に格納される。
伝送路切換制御部143の切換条件検出部240は、初期化時にI/O空間のアドレス30(h)“DIR C”に“4”が設定されているので、パケット生成部142が4個のデータパケットを送信したことを検出し、第2伝送路122の入出力端子242を受信状態に設定する。
これにより、第2伝送路122はアップリンクに設定され(1207)、通信システム1は、図2Aに示す全二重モードとなる。
通信システム1において、半二重モードから全二重モードに切り換える条件の設定方法は、高速Read時と同様である。
図12A、Bにおいても、初期化コマンドのパラメータをN=4としたときの、通信システム1におけるタイミング図の一例を示している。
以後、通信システム1では、高速Read時と同様に、第2伝送路122がアップリンクに設定されてから所定の時間T経過後、切換条件検出部260は、第2伝送路122の入出力端子262を再び受信状態に設定する。そして、切換条件検出部240は、第2伝送路122の入出力端子242を再び送信状態に設定する。このとき、切換条件検出部240および260は、それぞれ、クロックカウンタ145および165に対してクロック数をゼロクリアさせる。
これにより、第2伝送路122は、ダウンリンクに再設定され(1208)、通信システム1は、図2Bに示す半二重モードに戻る。
ここで、第2伝送路122がアップリンクに設定されている間(1207〜1208、1209〜1210)に、不揮発性記憶装置110が第2伝送路122上にコマンドやメッセージ等を送信することで、ホスト装置100に対して割り込み通知を伝送できる。
(1.2.5:高速Writeの動作(Busy通知・解除による半二重/全二重モード切換))
次に、通信システム1において、Busy通知・解除により半二重/全二重モードを切り換える場合の高速Write動作について、説明する。
半二重モードにおいて、不揮発性メモリ部読み書き制御部170による不揮発性メモリ部171への書き込みが終了するまでデータの受信を一時停止させたい場合や、図示しないデータ受信用メモリの空き容量が不足した場合、不揮発性メモリ部読み書き制御部170は、パケット生成部164にBusy通知パケットを生成させる。そして、不揮発性メモリ部読み書き制御部170は、第2伝送路122がアップリンクに設定されている間に、Busy通知パケットがホスト装置100に送信されるように制御する(1211)。
ホスト装置100に送信されたBusy通知パケットは、パケット解析部144で解析される。このとき、実行中の高速Writeコマンドは、一時停止され、通信システム1において、全二重モードの状態が保持される。この場合、図12Aの場合と異なり、通信システム1は、所定の時間Tが経過しても半二重モードへは切り換わらず、切換条件検出部240および260は、それぞれ、クロックカウンタ145および165に対して、クロック数をゼロクリアさせる。
このとき、切換条件検出部260は、パケット生成部164がBusy解除パケットを生成したことを検出し、第2伝送路122の入出力端子262を再び受信状態に設定する。
また、切換条件検出部240は、パケット解析部144がBusy解除パケットを解析したことを検出し、第2伝送路122の入出力端子242を再び送信状態に設定する。
これにより、第2伝送路122がダウンリンクに設定され、通信システム1は、半二重モードとなり、高速Writeコマンドの実行が再開される。
また、上記処理は、コマンドレベルでの処理、すなわち、ホストインターフェース部140およびメモリ部133による処理で実現させることができ、アプリケーション部132での処理が不要であるため、高速に処理を行うことができる。
したがって、通信システム1では、余計なパケットの送受信を発生させることがなく、また、適切な割込処理を実現させつつ、高速データ転送を行うことができる。
以上が、ユーザーが高速データWriteを指示したときの通信システム1の動作である。
したがって、本実施形態の通信システム1では、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。また、通信システム1では、「Wait」や「Busy」等の割り込み通知を伝送するための外部伝送路を1チャンネル追加する必要もないので、インターフェース装置の回路規模が増大し、コストアップを招くこともない。
通常Read時に、ホスト装置100がWait指示を出す場合は、初期化直後にダウンリンクに設定されている第1伝送路121上に任意のタイミングでWait通知パケットを送信し、さらに、Waitを解除するときも第1伝送路121上に任意のタイミングでWait解除パケットを送信すればよい。
通常Write時も同様に、初期化直後にアップリンクに設定されている第2伝送路122上に任意のタイミングでBusy通知およびBusy解除パケットを送信すればよい。
さらに、通信システム1において、モード切り換えのトリガとなる送受信データパケット数Nおよび所定の時間Tは、ホスト装置100および不揮発性記憶装置110におけるバッファサイズ、処理性能などの条件を元に、適宜取り決めればよい。
≪パケット数Nの決定方法≫
例えば、パケット数Nの決定方法は、以下のようにすればよい。
ホスト装置100と、不揮発性記憶装置110と、を備える通信システム1において、ホスト装置1のバッファサイズをBuf1[バイト]とし、不揮発性記憶装置110(スレーブ装置)のバッファサイズをBuf2[バイト]とし、ホスト装置100と不揮発性記憶装置110(スレーブ装置)間で通信されるパケットのパケットサイズをA[バイト]としたとき、
(1)Buf1>Buf2である場合、
N=Int(Buf2/A)
(2)Buf1≦Buf2である場合、
N=Int(Buf1/A)
により、パケット数Nを決定すればよい。なお、Int(X)は、Xを超えない最大の整数値を表すものとする(Int(X)は、ガウス記号による演算に相当する関数である)。
また、パケット数Nの決定方法は、ホスト装置100および不揮発性記憶装置110(スレーブ装置)の処理速度性能に基づいてパケット数Nを決定する方法であってもよい。例えば、ホスト装置100の処理速度、動作クロックがそれぞれP1、C1であり、不揮発性記憶装置110(スレーブ装置)の処理速度、動作クロックがそれぞれP2、C2であり、通信パケットのパケットサイズがAである場合、P1、P2、C1、C2、およびAの全部若しくは一部に基づいて、パケット数Nを決定するようにしてもよい。なお処理速度性能は、ホスト装置100または不揮発性記憶装置110(スレーブ装置)に実装されているプロセッサ処理能力、同じくホスト装置100または不揮発性記憶装置110(スレーブ装置)に実装されているRAMやフラッシュメモリ等記録媒体への読み書き速度、外部との通信を行う外部通信路の伝送速度の全部若しくは一部から決まる。
また、通信システム1において、ホスト装置100のI/O空間のアドレス30(h)“DIR C”の値を、Memory R/W リクエストパケット1702の“Argument”に定義された前記“DIR Ctrl”に設定して、Memory R/W リクエストパケット1702を伝送し、このMemory R/W リクエストパケット1702を受信した不揮発性記憶装置110が、Memory R/W リクエストパケット1702の“Argument”に格納された前記“DIR Ctrl”の値を、不揮発性記憶装置110のI/O空間のアドレス30(h)“DIR C”に書き込むようにしてもよい。
この方法によれば、N=4の場合の高速Writeは、図15の(a)(N=8の場合は図15(b))のシーケンスで実行することが可能になり、モード切り換えのトリガとなる送受信データパケット数Nを、初期化コマンドのパラメータで予め設定する図19(a)(N=8の場合は図19(b))では必要となる初期化コマンド1901の一部が不要になる。
同様に、N=4の場合の高速Readは、図16の(a)(N=8の場合は図16(b))のシーケンスで実行することが可能になり、モード切り換えのトリガとなる送受信データパケット数Nを、初期化コマンドのパラメータで予め設定する図20(a)(N=8の場合は図20(b))では必要となる初期化コマンド2001の一部が不要になる。
また、本実施形態では、スレーブ装置として不揮発性メモリを有する不揮発性記憶装置を用いる通信システム1について説明したが、これに限定されることはない。例えば、図4に示すように、スレーブ装置を、スレーブインターフェース部160と、ネットワークインターフェース部470と、を備えるネットワークインターフェース装置410とすることで通信システム1Aを構成するようにしてもよい。この場合においても、上記通信システム1と同様の効果を得ることが可能である。
通信システム1Aにおいて、ネットワークインターフェース装置410は、リモート装置480とネットワーク通信路481を介して接続されている。また、ネットワークインターフェース部470は、ネットワーク通信路481を制御する機能と、スレーブインターフェース部160からネットワークを制御する機能とを有する。
また、通信システム1Aにおいて、高速Write時は、半二重モードにて、ホスト装置100からデータパケットが送信され、パケット解析部163で取り出されたデータ本体は、ネットワークインターフェース部470、ネットワーク通信路481を介してリモート装置480内のメモリ部に格納される。
なお、ネットワーク通信路481は、有線ネットワーク、無線ネットワークいずれでも実現可能である。
[第2実施形態]
<2.1:通信システムの構成>
図5は、本発明の第2実施形態に係る通信システム2の構成を示したブロック図である。
図5に示すように、通信システム2は、ホスト装置500と、スレーブ装置としての不揮発性記憶装置510と、を備える。そして、ホスト装置500と不揮発性記憶装置510とは、第1伝送路121、第2伝送路122、クロック伝送路123により接続されている。
ホストインターフェース部540は、クロック送信部141、パケット生成部142、伝送路切換制御部543、パケット解析部144を含む。ホストインターフェース部540は、クロックカウンタを有していない点が、第1実施形態に係るホストインターフェース部140とは異なる。
不揮発性記憶装置510は、少なくともスレーブインターフェース部560、不揮発性メモリ部読み書き制御部170および不揮発性メモリ部171を備える。
スレーブインターフェース部560は、クロック再生成部161、伝送路切換制御部562、パケット解析部163、パケット生成部164、クロックカウンタ165を備える。
図6A〜Cは、ホストインターフェース部540およびスレーブインターフェース部560の構成図であり、特に、ホスト装置側の伝送路切換制御部543およびスレーブ装置側の伝送路切換制御部562の構成を詳細に示した図である。
図6A〜Cに示すように、ホスト装置側の伝送路切換制御部543は、ホストインターフェース部540の切換条件検出部640と、第1伝送路121のホストインターフェース部540内の入出力端子641と、第2伝送路122のホストインターフェース部540内の入出力端子642と、を備える。
スレーブ装置側の伝送路切換制御部562は、スレーブインターフェース部560の切換条件検出部660と、第1伝送路121のスレーブインターフェース部560内の入出力端子661と、第2伝送路122のスレーブインターフェース部560内の入出力端子662と、を備える。
同様に、切換条件検出部660は、パケット解析部163、パケット生成部164、クロックカウンタ165の状態を監視して切換条件の充足状況を検出する。そして、切換条件の充足状況に応じて入出力端子661、662を送信状態または受信状態に設定する。
<2.2:通信システムの動作>
図7A、Bおよび図13A、Bは、第2実施形態における第1伝送路121および第2伝送路122上を伝送されるパケットを時系列に示したタイミング図(タイミングチャート)である。
(2.2.1:高速Readの動作)
まず、図7A、Bのタイミング図を参照しながら、ユーザーが高速データReadをユーザーインターフェース部131に指示したときの動作を説明する。
第1実施形態と同様に、不揮発性記憶装置510がホスト装置500に装着されたとき、通信システム2は、図6Aに示す全二重モードとなる。通信システム2において、初期化コマンドパケットが送信(701)された後、高速Readコマンドパケットが不揮発性記憶装置510に送信される(702)と、第1伝送路121がアップリンクに設定される(703)。この結果、通信システム2は、図6Bに示す半二重モードとなる。
また、伝送路切換制御部543の切換条件検出部640は、パケット解析部144が4個のデータパケットを受信したことを検出し、第1伝送路121の入出力端子641を送信状態に設定する。
これにより、第1伝送路121はダウンリンクに設定され(704)、通信システム2は、図6Aに示す全二重モードとなる。
第1伝送路121がダウンリンクに設定されたとき、クロックカウンタ165は、クロック再生成部161から供給されるクロックを元にクロック数の計上を開始する。
生成された切換通知パケットは、アップリンクに設定されている第2伝送路122を介してホスト装置500に送信される(705)。
伝送路切換制御部562の切換条件検出部660は、パケット生成部164が切換通知パケットを送信したことを検出し、第1伝送路121の入出力端子661を送信状態に設定する。
また、伝送路切換制御部543の切換条件検出部640は、パケット解析部144が切換通知パケットを受信したことを検出し、第1伝送路121の入出力端子641を受信状態に設定する。
以上のように、切換通知パケットを用いることで、通信システム2では、ホストインターフェース部540のクロックカウンタを省略することができるとともに、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。
また、図7Bに示すように、第1実施形態と同様に、通信システム2では、図6Aに示す全二重モードのとき、ホスト装置500は、不揮発性記憶装置510に対してWait等の割り込み要求を行う(707)ことができる。
(2.2.2:高速Writeの動作)
次に、図13A、Bのタイミング図を参照しながら、ユーザーが高速データWriteを指示したときの通信システム2の動作を、高速データReadとの相違点を中心に説明する。
伝送路切換制御部543の切換条件検出部640は、パケット生成部142が4個のデータパケットを送信したことを検出し、第2伝送路122の入出力端子642を受信状態に設定する。
また、伝送路切換制御部562の切換条件検出部660は、パケット解析部163が4個のデータパケットを受信したことを検出し、第2伝送路122の入出力端子662を送信状態に設定する。
通信システム2において、第2伝送路122がアップリンクに設定されたとき、クロックカウンタ165は、クロック再生成部161から供給されるクロックを元にクロック数の計上を開始する。
スレーブインターフェース部560内の切換条件検出部660は、第2伝送路122がアップリンクに切り換わった時点から所定の時間Tが経過したことを、クロックカウンタ165を監視することで検出する。このとき、切換条件検出部660は、パケット生成部164に対し切換通知パケットを生成するよう指示する。
生成された切換通知パケットは、アップリンクに設定されている第2伝送路122を介してホスト装置500に送信される(1306)。
また、伝送路切換制御部543の切換条件検出部640は、パケット解析部144が切換通知パケットを受信したことを検出し、第2伝送路122の入出力端子642を送信状態に設定する。
これにより、第2伝送路122は、ダウンリンクに設定される(1307)。
以上のように、切換通知パケットを用いることで、通信システム2では、ホストインターフェース部540のクロックカウンタを省略することができるとともに、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。
以上説明したように、本実施形態の通信システム2では、全二重モードから半二重モードの切り換えタイミングを、切換通知パケットにより不揮発性記憶装置510からホスト装置500に通知することで、ホスト装置500においてクロックカウントがなくても第1実施形態と同様の効果を得ることができる。
なお、ホスト装置500がクロックカウンタを持ち、切換通知パケットをホスト装置500から不揮発性記憶装置510へ通知することで、不揮発性記憶装置510がクロックカウンタを持たないようにしてもよい。
[第3実施形態]
<3.1:通信システムの構成>
図8は、本発明の第3実施形態に係る通信システム3の構成を示したブロック図である。
ホスト装置800は、少なくともユーザーインターフェース部131、アプリケーション部132、メモリ部133、およびホストインターフェース部840を備える。
ホストインターフェース部840は、クロック送信部141、パケット生成部142、伝送路切換制御部843、パケット解析部144を含む。ホストインターフェース部840は、クロックカウンタを有していない点が、第1実施形態に係るホストインターフェース部140とは異なる。
不揮発性記憶装置810は、少なくともスレーブインターフェース部860、不揮発性メモリ部読み書き制御部170および不揮発性メモリ部171を備える。
つまり、通信システム3は、ホスト装置側およびスレーブ装置側の双方に、クロックカウンタを有していない点が、前述の実施形態に係る通信システム1、1Aおよび2とは相違する。
なお、本実施形態において、前述の実施形態と同様の部分については、同一の符号を付し、詳細な説明を省略する。
図9A〜Cは、ホストインターフェース部840およびスレーブインターフェース部860の構成図であり、特に、ホスト装置側の伝送路切換制御部843およびスレーブ装置側の伝送路切換制御部862の構成を詳細に示した図である。
スレーブ装置側の伝送路切換制御部862は、スレーブインターフェース部860の切換条件検出部960と、第1伝送路121のスレーブインターフェース部860内の入出力端子961と、第2伝送路122のスレーブインターフェース部860内の入出力端子962と、を備える。
ホスト装置側の切換条件検出部940は、パケット生成部142、およびパケット解析部144の状態を監視して切換条件が満たされているか否かを検出する。そして、切換条件検出部940は、切換条件の充足状況に応じて入出力端子941、942を、それぞれ、送信状態または受信状態に設定する。
<3.2:通信システムの動作>
図10A、Bは、第3実施形態における第1伝送路121および第2伝送路122上を伝送されるパケットを時系列に示したタイミング図である。
以下、図8〜図10A、B、および図14A、Bを用いて、本実施形態に係る通信システム3の動作を、前述の実施形態との相違点を中心に説明する。
(3.2.1:高速Readの動作)
まず、図10A、Bのタイミング図を参照しながら、ユーザーが高速データReadをユーザーインターフェース部131に指示したときの動作を説明する。
第1伝送路121がダウンリンクに設定された時点、もしくはそれ以前の所定の時点を起点として、伝送路切換制御部843の切換条件検出部940は、パケット生成部142を監視し、ホスト装置800から不揮発性記憶装置810に対して発行すべき命令があるか否かを検出する。
伝送路切換制御部843の切換条件検出部940は、切換通知パケットがパケット生成部142より送信されたことを検出すると、第1伝送路121の入出力端子941を受信状態に設定する。
また、伝送路切換制御部862の切換条件検出部960は、切換通知パケットがパケット解析部163で受信されたことを検出すると、第1伝送路121の入出力端子961を送信状態に設定する。
これにより、第1伝送路121はアップリンクに設定され(1006)、通信システム3は、図9Bに示す半二重モードとなる。
これにより、ホスト装置800は、不揮発性記憶装置810に対して、割り込み要求を実行できる。
(3.2.2:高速Writeの動作)
次に、図14A、Bのタイミング図を参照しながら、ユーザーが高速データWriteを指示したときの通信システム3の動作を、高速データReadとの相違点を中心に説明する。
通信システム3における、以上の動作は、第1および第2実施形態と同様である。
通信システム3において、第2伝送路122がアップリンクに設定された時点、もしくはそれ以前の所定の時点を起点として、伝送路切換制御部862の切換条件検出部960は、パケット生成部164を監視し、不揮発性記憶装置810からホスト装置800に対して発行すべき命令があるか否かを検出する。
これにより、第2伝送路122は、ダウンリンクに設定され(1407)、通信システム3は、図9Cに示す半二重モードとなる。
これにより不揮発性記憶装置810は、ホスト装置800に対して、割り込み要求を実行できる。
以上説明したように、本実施形態に係る通信システム3では、全二重モードから半二重モードの切り換えタイミングを、高速Read時はホスト装置800から不揮発性記憶装置810へ、高速Write時は不揮発性記憶装置810からホスト装置800へ、切り換え通知パケットを送信する。したがって、通信システム3では、全二重モードから半二重モードへの切り換えの際にクロックカウンタによる計時が不要となる。
[第4実施形態]
次に、第4実施形態について、図22〜図28を参照しながら説明する。
なお、上記実施形態と同様の部分については、同一符号を付し、詳細な説明を省略する。
<4.1:通信システム構成>
図22は、第4実施形態に係る通信システム4の構成を示したブロック図である。
図22に示すように通信システム4は、ホスト装置100Aとスレーブ装置の一種である不揮発性記憶装置110Aとを備える。そして、ホスト装置100Aと不揮発性記憶装置110Aとは、第1伝送路(第1高速バス)121、第2伝送路(第2高速バス)122、第3伝送路(低速バス)123、クロック伝送路(クロックバス)124により接続されている。
ホストインターフェース部140は、クロック送信部141A、パケット生成部142A、伝送路(バス)切換制御部143A、パケット解析部144A、信号生成部145A、信号解析部146Aを備える。
不揮発性記憶装置110は、スレーブインターフェース部160A、不揮発性メモリ読み書き制御部170および不揮発性メモリ171を備える。
スレーブインターフェース部160Aは、クロック再生成部161A、伝送路(バス)切換制御部162A、パケット解析部163A、パケット生成部164A、信号解析部165A、信号生成部166Aを備える。
なお一般的に、高速バスには差動伝送方式が用いられ、低速バスにはシングルエンド伝送方式が用いられる。
<4.2:通信システムの動作>
以下、本実施形態における通信システム4の動作について、図面を用いて説明する。
(4.2.1:起動〜初期化〜定常状態)
不揮発性記憶装置110Aが、ホスト装置100Aに装着されたとき、ホストインターフェース部140Aがアクティブになる。また、ホストインターフェース部140Aのクロック送信部141Aからクロックバス124を介してスレーブインターフェース部160Aのクロック再生成部161Aにクロックが供給され、スレーブインターフェース部160Aがアクティブになる。このとき、クロック再生成部161Aで生成されるクロックは、不揮発性記憶装置110A全体に供給される。
図23に示すように、ホスト装置側の伝送路(バス)切換制御部143Aは、切換条件検出部240Aと、第1高速バス121の入出力端子241Aと、第2高速バス122の入出力端子242Aと、低速バス123の入出力端子243Aと、を備える。
また、図23に示すように、スレーブ装置側の伝送路(バス)切換制御部162Aは、切換条件検出部260Aと、第1高速バス121の入出力端子261Aと、第2高速バス122の入出力端子262Aと、低速バス123の入出力端子263Aと、を備える。
同様に、スレーブ装置側の切換条件検出部260は、パケット解析部163A、パケット生成部164Aが送受信したパケットを監視して切換条件が満たされているか否かを検出する。そして、切換条件の充足状況に応じて入出力端子261A、262A、263Aを、それぞれ、送信状態または受信状態に設定する。
図23では、第1高速バス121のホストインターフェース部140A側の入出力端子241Aは、送信状態(T)に設定されており、スレーブインターフェース部160A側の入出力端子261Aは、受信状態(R)に設定されている。また、第2高速バス122のホストインターフェース部140A側の入出力端子242Aは、受信状態(R)に設定されており、スレーブインターフェース部160A側の入出力端子262Aは、送信状態(T)に設定されている。
この状態で、ホスト装置100Aは、初期化コマンドパケットを第1高速バス121経由で不揮発性記憶装置110Aのパケット解析部163Aに供給する。パケット解析部163Aでは、上記パケットが初期化コマンドであることが解析され、必要な初期化が実施される。初期化完了後、通信システム4は、定常状態(全二重モード)になる。
図24は、通信システム4において、ホスト装置100Aより高速Readコマンドが発行されたときの第1高速バス121、第2高速バス122、および低速バス123上を伝送されるパケットまたは信号を時系列に示したタイミング図である。
通信システム4において、定常状態で、ユーザーは、高速データReadをホスト装置100Aのユーザーインターフェース部131に指示することができる。このとき、ユーザーインターフェース部131は、アプリケーション部132に高速データRead指示を伝達する。アプリケーション部132は、メモリ部133に読み出すデータの格納領域が存在することを確認した後、パケット生成部142に高速Readコマンドパケットを生成させる。高速Readコマンドには、読み出し先のアドレス、読み出しサイズが多重されているものとする。
ホスト装置100Aのバス切換制御部143Aの切換条件検出部240Aは、パケット生成部142Aが高速Readコマンドパケットを送信したことを検出し、第1高速バス121の入出力端子241Aを受信状態に設定する。また、不揮発性記憶装置110Aのバス切換制御部162Aの切換条件検出部260Aは、パケット解析部163Aが高速Readコマンドパケットを受信したことを検出し、第1高速バス121の入出力端子261Aを送信状態に設定する。
これにより、通信システム4において、第1高速バス121はアップリンクに設定される(302)。さらに、ホスト装置100Aのバス切換制御部143Aの切換条件検出部240Aは、低速バス123の入出力端子243Aを送信状態に設定する。
この結果、通信システム4は、半二重Readモードとなり、このときのバス切換制御部143Aおよび162Aによる設定は、図25に示すようになる。
通信システム4では、半二重Readモードに切り換わった後、スレーブインターフェース部160Aは、不揮発性メモリ読み書き制御部170を介し、高速Readコマンドパケットに多重されたアドレスに対応する不揮発性メモリ171上の領域から、同じくコマンドに多重された読み出しサイズだけデータを順次取得し、取得したデータをパケット生成部164Aに供給する。そして、不揮発性記憶装置110Aのパケット生成部164Aは、パケットの種別等を示したヘッダと、不揮発性メモリ読み書き制御部170により読み出されたデータを適当なサイズに分割して生成されるボディと、からデータパケットを生成する。
ホスト装置100Aに送信された上記DATA(1)、DATA(2)は、ホスト装置100Aの伝送路(バス)切換制御部143Aを介して、パケット解析部144Aに蓄積される。パケット解析部144Aでは、これらのパケットがデータパケットと解析され、ヘッダを除いたボディ、すなわちデータ本体が抽出され、抽出されたデータ本体がメモリ部133に格納される。
2k−1番目のデータパケットDATA(2k−1)と2k番目のデータパケットDATA(2k)の転送中(307)、ユーザーが高速Readを中止するようホスト装置100Aのユーザーインターフェース部131に指示したとき、ユーザーインターフェース部131は、アプリケーション部132を介してホストインターフェース部140Aの信号生成部145Aに上記指示を伝達する。
信号生成部145Aは、所定の長さのパルスを生成し、ダウンリンクに設定されている低速バス123経由で、スレーブインターフェース部160Aに上記パルスを送信する(308)。
信号解析部165Aは、上記パルスを受信したとき、「高速Read中止」を指示されていると解析(判断)し、不揮発性メモリ読み書き制御部170に不揮発性メモリ171からのデータ取得を中止するよう指示する。同時に、信号解析部165Aは、パケット生成部164Aに対してコマンド中止受諾パケットを生成するよう指示する。
パケット生成部164Aにより生成されたコマンド中止受諾パケットは、アップリンクに設定されている第2高速バス122を介してホスト装置100Aに送信される(309)。
伝送路(バス)切換制御部162Aの切換条件検出部260Aは、パケット生成部164Aがコマンド中止受諾パケットを送信したことを検出し、第1高速バス121の入出力端子261を受信状態に設定する。
さらに、切換条件検出部240Aは、低速バス123の入出力端子243Aを受信状態に設定する。これにより、低速バス123は通信不可に設定される(311)。
この結果、通信システム4は、全二重モード(定常状態)となり、伝送路(バス)切換制御部143Aおよび162Aによる設定は、図23に示すようになる。
(4.2.3:高速Writeの動作)
図26は、通信システム4において、ホスト装置100Aより高速Writeコマンドが発行されたときの第1高速バス121、第2高速バス122、および低速バス123上を伝送されるパケットまたは信号を時系列に示したタイミング図である。
アプリケーション部132は、不揮発性メモリ171に書き込むべきデータがメモリ部133に保持されていることを確認した後、ホスト装置100Aのパケット生成部142Aに高速Writeコマンドパケットを生成させる。高速Writeコマンドには、書き込み先のアドレス、書き込みサイズが多重されているものとする。
高速Writeコマンドパケットは、第1高速バス121経由で、不揮発性記憶装置110Aのパケット解析部163Aに供給される(501)。パケット解析部163Aでは、上記パケットが高速Writeコマンドであることが解析される。
不揮発性記憶装置110Aでは、伝送路(バス)切換制御部162Aの切換条件検出部260Aは、パケット生成部164Aがコマンド受諾レスポンスパケットを送信したことを検出し、第2高速バス122の入出力端子262Aを受信状態に設定する。
また、ホスト装置100Aでは、伝送路(バス)切換制御部143Aの切換条件検出部240Aは、パケット解析部144Aがコマンド受諾レスポンスパケットを受信したことを検出し、第2高速バス122の入出力端子242Aを送信状態に設定する。これにより、第2高速バス122はダウンリンクに設定される(503)。
この結果、通信システム4は、半二重Writeモードとなり、このときの伝送路(バス)切換制御部143Aおよび162Aによる設定は、図27に示すようになる。
通信システム4において、半二重Writeモードに切り換わった後、ホストインターフェース部140Aは、メモリ部133に保持されているデータをパケット生成部142Aに供給する。
パケット生成部142Aは、パケットの種別等を示したヘッダと、不揮発性記憶装置110Aに書き込むデータを適当なサイズに分割して生成されるボディと、からデータパケットを生成する。
ホスト装置100Aから不揮発性記憶装置110Aに送信された上記DATA(1)、DATA(2)は、不揮発性記憶装置110Aの伝送路(バス)切換制御部162Aを介して、パケット解析部163Aに蓄積される。パケット解析部163Aでは、これらのパケットは、データパケットであると解析(判定)され、ヘッダを除いたボディ、すなわちデータ本体が、不揮発性メモリ読み書き制御部170に供給(出力)される。不揮発性メモリ読み書き制御部170は、不揮発性メモリ171に対して、高速Writeコマンドパケットに多重されたアドレスに対応する不揮発性メモリ171上の領域に、同じく高速Writeコマンドに多重された書き込みサイズに達するまでデータを書き込むよう制御する。
不揮発性記憶装置110Aのパケット解析部163Aに適当なサイズのバッファを備えていることは前述したが、通常、第1高速バス121もしくは第2高速バス122上でのデータ転送速度より、不揮発性メモリ171への書き込み速度の方が遅いため、不揮発性記憶装置110Aがパケットを間断なく受信し続けると、不揮発性記憶装置110Aのパケット解析部163A内のバッファ残量がなくなり、受信したデータがオーバーフローする恐れがある。
図26に示す場合において、不揮発性記憶装置110Aにおいて、DATA(3)およびDATA(4)を受信し、バッファ残量が所定値以下になると判明したと仮定する。この場合、不揮発性記憶装置110Aのパケット解析部163Aは、ホスト装置100Aからのデータ転送を中断すべく、スレーブインターフェース部160A内の信号生成部166Aにその旨の指示を伝達する。
信号生成部166Aにより生成された上記パルスは、ホストインターフェース部140Aの信号解析部146Aに供給される。
信号解析部146Aは、上記パルスを受信したとき、「高速Write中断」を指示されていると解析(判断)し、パケット生成部142Aに対して、データ送信を中断するよう指示する。
不揮発性記憶装置110Aにおいて、不揮発性記憶装置110Aがホスト装置100Aから受信したデータの不揮発性メモリ171への書き込みが進み、パケット解析部163A内のバッファ残量が所定値以上になったと判明したとき、パケット解析部163Aは、ホスト装置100Aからのデータ転送を再開すべく、スレーブインターフェース部160A内の信号生成部166Aにその旨の指示を伝達する。
信号生成部166Aにより生成された上記パルスは、ホストインターフェース部140Aの信号解析部146Aに供給される。
ホスト装置100Aの信号解析部146Aは、上記パルスを受信したとき、高速Write再開を指示されていると解析(判断)し、パケット生成部142Aに対して、不揮発性記憶装置110Aに対するデータ送信を再開するよう指示する。
その結果、5番目のデータパケットDATA(5)と6番目のデータパケットDATA(6)とが、ホスト装置100Aから不揮発性記憶装置110に送信される(509)。
また、不揮発性記憶装置110Aの伝送路(バス)切換制御部162Aの切換条件検出部260Aは、パケット解析部163AがDATA(2k)を受信したことを検出し、第2高速バス122の入出力端子262Aを送信状態に設定する。これにより、通信システム4において、第2高速バス122はアップリンクに設定される(511)。
この結果、通信システム4は、全二重モード(定常状態)となり、伝送路(バス)切換制御部143および162による設定は、図23に示すようになる。
以上説明したように、通信システム4では、2本の高速バスを同時に使用してデータを高速に読み出す半二重Readモードの場合、低速バスをアップリンクに設定し、ホスト装置100Aからパルス信号を送信することで、Readを中止させることができる。
また、通信システム4では、2本の高速バスを同時に使用してデータを高速に書き込む半二重Writeモードの場合、低速バスをダウンリンクに設定し、スレーブ装置(不揮発性記憶装置)110Aからパルス信号をホスト装置100Aに送信することで、ホスト装置100Aに対してデータ送信の可否を通知することができる。
また、通信システム4において、定常状態である全二重モードでのデータReadもしくはデータWriteも可能である。たとえば、通信システム4が、図23に示される状態に設定されているとすると、データReadの場合、アップリンクに設定されている第2高速バス122はデータ伝送に使用されるので、第1高速バス121を使用してRead中止指示を行うことができる。
ところで、本実施形態の通信システム4では、低速バス123に所定の長さのパルスを伝送するとしたが、これに限定されることはなく、例えば、低速バス123に所定の長さのビットパターンを伝送するようにしてもよい。この場合、各ビットパターンに複数種類の指示を割り当てることができ、より複雑な指示を行うことも可能である。
また、本実施形態の通信システム4では、スレーブ装置が、不揮発性メモリを有する不揮発性記憶装置110Aである場合について説明したが、これに限定されることはなく、例えば、図28に示すようなスレーブインターフェース部160A、ネットワークインターフェース部770を備えるネットワークインターフェース装置710Aにおいても同様の効果を得ることが可能である。
図28において、ホスト装置100Aが高速Readコマンドを発行したとき、リモート装置780内のメモリ(図示せず)から、ネットワーク通信路781、ネットワークインターフェース部770を介して、ネットワークインターフェース装置710Aのパケット生成部164Aに格納されたデータは、パケット化された上で、半二重Readモードにて、ネットワークインターフェース装置710Aからホスト装置100Aに送信される。
通常、第1高速バス121もしくは第2高速バス122のデータ転送速度は、ネットワーク通信路781の速度より速いので、本実施形態にて説明したデータ転送中断、再開の制御が必要となる。
なお、ネットワーク通信路781は、有線ネットワーク、無線ネットワークいずれでも実現可能である。
図29は、本発明の第5実施形態において、ホスト装置より高速Writeコマンドが発行されたときの第1高速バス121、第2高速バス122、および低速バス123上を伝送されるパケットまたは信号を時系列に示したタイミング図である。
なお、本実施形態の通信システムは、第4実施形態の通信システム4と同様の構成により実現される。
本実施形態において、第4実施形態と異なる点は、以下の点である。すなわち、本実施形態における高速Write時には、不揮発性記憶装置110Aが書き込み不可の場合、低速バス123を「HIGH」に設定し、それ以外の場合、低速バス123を「LOW」に設定する、とする点が、第4実施形態と異なる。
ホスト装置のホストインターフェース部140Aの信号解析部146Aは、低速バス123が「HIGH」であることを検出し、パケット生成部142Aに対して、データ送信を中断するよう指示する。
また、スレーブ装置のパケット解析部163Aは、バッファ残量が所定値以上になり、データ受信が再開できると判明したとき、スレーブインターフェース部160A内の信号生成部166Aに、低速バス123を「LOW」に設定するよう指示する(803)。これにより、DATA(5)およびDATA(6)の伝送が開始される(804)。
同様に、高速Readの場合、ホスト装置100Aが低速バス123を「LOW」から「HIGH」にして、不揮発性記憶装置110Aにデータ転送中止を指示する構成が可能である。
なお、本実施形態において、全二重モードは低速バスを通信不可状態に設定していたが、これに限定されることはなく、たとえば、全二重モードにおいて低速バスをダウンリンクに設定してホスト装置からスレーブ装置に指示が伝送できるようにしても構わない。また、2本の高速バスを介してホスト装置とスレーブ装置がネゴシエーションを行って、適宜低速バスの方向を切り換える構成としてもよい。
なお、上記で説明した本発明のすべての実施形態において、スレーブ装置がホスト装置に装着され外部伝送路により接続されている場合について説明した。しかし、これに限定されることはなく、例えば、ホスト装置およびスレーブ装置に含まれる構成要素が1個の装置上で内部の伝送路により接続されているような構成においても、本発明と同様の効果を得ることができる。
また、本発明のすべての実施形態において、半二重モードから全二重モードへの切換を4個のデータパケットの送信完了時に実施するとして説明したが、これに限定されることはない。例えば、N個(Nは自然数)のデータパケットの送信完了時に、半二重モードから全二重モードへの切換を実行するようにしてもよい。
また、通信システムにおいて、データパケット数Nおよび、各データパケットのデータ容量は、必ずしも固定にする必要はなく、例えば、通信システムの通信状況により、可変にしてもよい。これにより、通信システムにおいて、通信効率を向上させることができる。
なお、上記実施形態で説明した通信システムのホスト装置およびスレーブ装置において、各ブロックは、LSIなどの半導体装置により個別に1チップ化されても良いし、一部又は全部を含むように1チップ化されても良い。
なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
また、上記実施形態の各処理をハードウェアにより実現してもよいし、ソフトウェアにより実現してもよい。さらに、ソフトウェアおよびハードウェアの混在処理により実現しても良い。なお、上記実施形態に係る通信システムをハードウェアにより実現する場合、各処理を行うためのタイミング調整を行う必要があるのは言うまでもない。上記実施形態においては、説明便宜のため、実際のハードウェア設計で生じる各種信号のタイミング調整の詳細については省略している。
なお、本発明の具体的な構成は、前述の実施形態に限られるものではなく、発明の要旨を逸脱しない範囲で種々の変更および修正が可能である。
100、100A ホスト装置
110、110A 不揮発性記憶装置(スレーブ装置)
121 第1伝送路
122 第2伝送路
123 クロック伝送路(第3伝送路)
131 ユーザーインターフェース部
132 アプリケーション部
133 メモリ
140、140A ホストインターフェース部
141、141A クロック送信部
142、142A パケット生成部
143、143A 伝送路切換制御部
144、144A パケット解析部
145 クロックカウンタ
160、160A スレーブインターフェース部
161、161A クロック再生成部
162、162A 伝送路切換制御部
163、163A パケット解析部
164、164A パケット生成部
165 クロックカウンタ
170 不揮発性メモリ部読み書き制御部
171 不揮発性メモリ
240 切換条件検出部
241、242 入出力端子
260 切換条件検出部
261、262 入出力端子
410 ネットワークインターフェース装置
470 ネットワークインターフェース部
480 リモート装置
481 ネットワーク通信路
500 ホスト装置
510 不揮発性記憶装置
540 ホストインターフェース部
543 伝送路切換制御部
560 スレーブインターフェース部
562 伝送路切換制御部
640 切換条件検出部
641、642 入出力端子
660 切換条件検出部
661、662 入出力端子
800 ホスト装置
810 不揮発性記憶装置
840 ホストインターフェース部
843 伝送路切換制御部
860 スレーブインターフェース部
862 伝送路切換制御部
940 切換条件検出部
941、942 入出力端子
960 切換条件検出部
961、962 入出力端子
Claims (23)
- 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
前記第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な第1伝送路用入出力端子と、
前記第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能な第2伝送路用入出力端子と、
前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出部と、
前記通信モード切換条件検出部により、前記第1条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
前記通信モード切換条件検出部により、前記第2条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御部と、
を備え、
前記通信モード切換条件検出部は、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、所定量のデータの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
インターフェース装置。 - 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
前記第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な第1伝送路用入出力端子と、
前記第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能な第2伝送路用入出力端子と、
前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出部と、
前記通信モード切換条件検出部により、前記第1条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
前記通信モード切換条件検出部により、前記第2条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御部と、
を備え、
前記通信モード切換条件検出部は、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、N個(Nは自然数)のパケットの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
インターフェース装置。 - 前記伝送路切換制御部は、前記第2条件を、データ送受信要求またはデータ送受信命令に含めて通信相手に通知する、
請求項1又は2に記載のインターフェース装置。 - 前記伝送路切換制御部は、前記インターフェース装置の初期設定時に、前記第2条件を、通信相手に通知及び/又は設定させるためのパケットを送信する、
請求項1から3のいずれかに記載のインターフェース装置。 - 前記第2条件が満たされたと判断するための送信もしくは受信したパケット数Nは、前記通信システムにかかるバッファサイズから決定する、
請求項1、2、および4のいずれかに記載のインターフェース装置。 - 前記通信モード切換条件検出部は、前記通信システムが前記全二重通信モードでの通信に切り換えられた時点から、所定の時間Tが経過した場合に、前記第1条件が満たされたと判断する、
請求項1から5のいずれかに記載のインターフェース装置。 - 前記伝送路切換制御部は、前記インターフェース装置の初期設定時に、前記第1条件を、通信相手に通知及び/又は設定させるためのパケットを送信する、
請求項1から6のいずれかに記載のインターフェース装置。 - 前記通信モード切換条件検出部は、前記通信システムが前記全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を受信した場合に、前記第1条件が満たされたと判断する、
請求項1から6のいずれかに記載のインターフェース装置。 - 前記通信モード切換条件検出部は、前記通信システムが前記全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を送信した場合に、前記第1条件が満たされたと判断する、
請求項1から6のいずれかに記載のインターフェース装置。 - 前記伝送路切換制御部は、
前記全二重通信モードに切り換え後、Wait指示の割り込み通知を受信した場合、前記全二重通信モードの状態で待機し、
前記Wait指示の割り込み通知に対応する割り込み処理の完了後に送信される割込処理完了を指示する通知を受信した場合、前記半二重通信モードへ切り換える、
請求項1から5のいずれかに記載のインターフェース装置。 - 前記伝送路切換制御部は、
前記全二重通信モードに切り換え後、所定時間以内にWait指示の割り込み通知を受信しなかった場合、前記半二重通信モードへ切り換える、
請求項1から5のいずれかに記載のインターフェース装置。 - 不揮発性メモリと、
前記不揮発性メモリに対する読み書き制御を行う不揮発性メモリ制御部と、
請求項1から11のいずれかに記載のインターフェース装置と、
を備える不揮発性記憶装置。 - 外部との通信を行う外部通信部と、
前記外部通信部に対する制御を行う外部通信制御部と、
請求項1から11のいずれかに記載のインターフェース装置と、
を備える通信装置。 - 請求項1から11のいずれかに記載のインターフェース装置を含むホスト装置と、
請求項12または13に記載の装置を含むスレーブ装置と、
を備える通信システム。 - 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられる通信モード切換方法であって、
前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出ステップと、
前記通信モード切換条件検出ステップにより、前記第1条件が満たされたと判定された場合、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
前記通信モード切換条件検出ステップにより、前記第2条件が満たされたと判定された場合、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御ステップと、
を備え、
前記通信モード切換条件検出ステップにおいては、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、所定量のデータの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
通信モード切換方法。 - 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられる通信モード切換方法であって、
前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出ステップと、
前記通信モード切換条件検出ステップにより、前記第1条件が満たされたと判定された場合、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
前記通信モード切換条件検出ステップにより、前記第2条件が満たされたと判定された場合、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御ステップと、
を備え、
前記通信モード切換条件ステップにおいては、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、N個(Nは自然数)のパケットの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
通信モード切換方法。 - 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
前記第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な第1伝送路用入出力端子と、
前記第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能な第2伝送路用入出力端子と、
を備えるインターフェース装置に用いられる集積回路であって、
前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出部と、
前記通信モード切換条件検出部により、前記第1条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
前記通信モード切換条件検出部により、前記第2条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御部と、
を備え、
前記通信モード切換条件検出部は、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、所定量のデータの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
集積回路。 - 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
前記第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な第1伝送路用入出力端子と、
前記第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能な第2伝送路用入出力端子と、
を備えるインターフェース装置に用いられる集積回路であって、
前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出部と、
前記通信モード切換条件検出部により、前記第1条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
前記通信モード切換条件検出部により、前記第2条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御部と、
を備え、
前記通信モード切換条件検出部は、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、N個(Nは自然数)のパケットの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
集積回路。 - 低速伝送路および複数の高速伝送路を有し、前記低速伝送路または複数の前記高速伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
前記低速伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な低速伝送路用入出力端子と、
前記高速伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な複数の高速伝送路用入出力端子と、
前記低速伝送路用入出力端子および前記複数の高速伝送路用入出力端子の入出力状態を、それぞれを独立に設定することができ、
前記複数の高速伝送路用入出力端子のうち少なくとも1つの前記高速伝送路用入出力端子を出力状態に設定し、当該出力状態に設定した前記高速伝送路用入出力端子以外の前記高速伝送路用入出力端子を入力状態に設定する全二重通信モードと、
前記複数の高速伝送路用入出力端子のすべてを出力状態に設定する半二重出力モードと、
前記複数の高速伝送路用入出力端子のすべてを入力状態に設定する半二重入力モードと、に基づいて、前記低速伝送路用入出力端子および前記複数の高速伝送路用入出力端子の入出力状態を設定する伝送路切換制御部と、
を備え、
前記伝送路切換制御部は、
前記半二重出力モードでは、前記低速伝送路用入出力端子を入力状態に設定し、
前記半二重入力モードでは、前記低速伝送路用入出力端子を出力状態に設定する、
インターフェース装置。 - 前記低速伝送路用入出力端子は、シングルエンド方式による通信を行う伝送路用の入出力端子であり、
前記複数の高速伝送路用入出力端子のうちの少なくとも1つの高速伝送路用入出力端子は、差動伝送方式による通信を行う伝送路用の入出力端子である、
請求項19に記載のインターフェース装置。 - 不揮発性メモリと、
前記不揮発性メモリに対する読み書き制御を行う不揮発性メモリ制御部と、
請求項19または20に記載のインターフェース装置と、
を備える不揮発性記憶装置。 - 外部との通信を行う外部通信部と、
前記外部通信部に対する制御を行う外部通信制御部と、
請求項19または20に記載のインターフェース装置と、
を備える通信装置。 - 請求項19または20に記載のインターフェース装置を含むホスト装置と、
請求項19または20に記載のインターフェース装置を含むスレーブ装置と、
を備える通信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010515756A JP5054818B2 (ja) | 2008-06-02 | 2009-05-29 | インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 |
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008144456 | 2008-06-02 | ||
JP2008144456 | 2008-06-02 | ||
JP2008158056 | 2008-06-17 | ||
JP2008158057 | 2008-06-17 | ||
JP2008158056 | 2008-06-17 | ||
JP2008158057 | 2008-06-17 | ||
JP2009001573 | 2009-01-07 | ||
JP2009001573 | 2009-01-07 | ||
JP2010515756A JP5054818B2 (ja) | 2008-06-02 | 2009-05-29 | インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 |
PCT/JP2009/002398 WO2009147811A1 (ja) | 2008-06-02 | 2009-05-29 | インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2009147811A1 JPWO2009147811A1 (ja) | 2011-10-20 |
JP5054818B2 true JP5054818B2 (ja) | 2012-10-24 |
Family
ID=41397894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010515756A Active JP5054818B2 (ja) | 2008-06-02 | 2009-05-29 | インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8520563B2 (ja) |
JP (1) | JP5054818B2 (ja) |
WO (1) | WO2009147811A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180037099A (ko) * | 2016-10-03 | 2018-04-11 | 삼성전자주식회사 | 비휘발성 스토리지 시스템 및 비휘발성 스토리지 장치들을 위한 데이터 스토리지 액세스 프로토콜 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5045636B2 (ja) * | 2008-10-08 | 2012-10-10 | コニカミノルタビジネステクノロジーズ株式会社 | 管理システム及び管理方法並びに制御プログラム |
US8185678B1 (en) * | 2009-06-19 | 2012-05-22 | Xilinx, Inc. | Method and apparatus for controlling a data bus |
JP5259836B2 (ja) * | 2010-05-17 | 2013-08-07 | 株式会社東芝 | 通信システム |
US8402320B2 (en) * | 2010-05-25 | 2013-03-19 | Oracle International Corporation | Input/output device including a mechanism for error handling in multiple processor and multi-function systems |
US8693208B2 (en) * | 2010-08-06 | 2014-04-08 | Ocz Technology Group, Inc. | PCIe bus extension system, method and interfaces therefor |
JP5433593B2 (ja) * | 2011-01-21 | 2014-03-05 | 株式会社東芝 | メモリインターフェイスのタイミング調整回路および方法 |
US9467494B1 (en) * | 2011-12-30 | 2016-10-11 | Rupaka Mahalingaiah | Method and apparatus for enabling mobile cluster computing |
US8842584B2 (en) | 2012-07-13 | 2014-09-23 | At&T Intellectual Property I, L.P. | System and method for full duplex cancellation |
US8804583B2 (en) * | 2012-07-13 | 2014-08-12 | At&T Intellectual Property I, L.P. | System and method for medium access control enabling both full-duplex and half-duplex communications |
US9094196B2 (en) | 2012-09-07 | 2015-07-28 | At&T Intellectual Property I, L.P. | System and method for full duplex MAC designs based on backoff in frequency domain |
US9935785B2 (en) | 2012-09-14 | 2018-04-03 | At&T Intellectual Property I, L.P. | System and method for full-duplex media access control using Request-to-Send signaling |
JP6468190B2 (ja) * | 2013-09-10 | 2019-02-13 | ソニー株式会社 | 通信装置、通信システムおよび通信方法 |
JP2015215841A (ja) | 2014-05-13 | 2015-12-03 | 株式会社東芝 | メモリシステム |
US9811495B2 (en) * | 2014-08-27 | 2017-11-07 | Lattice Semiconductor Corporation | Arbitration signaling within a multimedia high definition link (MHL 3) device |
WO2016170662A1 (ja) * | 2015-04-23 | 2016-10-27 | 株式会社フィックスターズ | 高速データ伝送が可能な記憶装置、そのためのプログラムおよびアダプタ |
US10732848B2 (en) * | 2018-06-29 | 2020-08-04 | Western Digital Technologies, Inc. | System and method for predictive read of random data |
JP6731602B1 (ja) * | 2019-02-28 | 2020-07-29 | 株式会社安川電機 | スレーブ機器及び通信システム |
JP7391116B2 (ja) * | 2019-06-28 | 2023-12-04 | アナログ・ディヴァイシス・インターナショナル・アンリミテッド・カンパニー | 低複雑度イーサネットノード(len)1ポート |
US11102149B2 (en) * | 2019-12-20 | 2021-08-24 | Hewlett Packard Enterprise Development Lp | Modular, flexibly connected switch-port input-output cards |
US11416263B1 (en) | 2021-02-12 | 2022-08-16 | Western Digital Technologies, Inc. | Boosted boot procedure by background re-arrangement of read patterns |
CN113434090B (zh) * | 2021-06-30 | 2023-03-28 | 同济大学 | 一种用于高速视频测量的海量数据异步存储方法 |
CN115242860B (zh) * | 2022-07-25 | 2024-02-02 | 苏州欧普照明有限公司 | 一种并发数据上报方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002094600A (ja) * | 2000-09-13 | 2002-03-29 | Mitsubishi Electric Corp | 通信装置および通信方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5839138A (ja) | 1981-08-31 | 1983-03-07 | Fujitsu Ltd | デ−タ転送方式 |
US4771417A (en) | 1986-09-18 | 1988-09-13 | Racal Data Communications, Inc. | High speed modem |
JPH01183241A (ja) | 1988-01-18 | 1989-07-21 | Yokogawa Medical Syst Ltd | データ通信回路 |
WO2001020833A1 (fr) | 1999-09-14 | 2001-03-22 | Sharp Kabushiki Kaisha | Procede de communication de donnees, procede de communication bidirectionnelle de donnees, systeme de communication de donnees, systeme de communication bidirectionnelle de donnees, emetteur de donnees, et recepteur de donnees |
JP2001086104A (ja) * | 1999-09-14 | 2001-03-30 | Sharp Corp | 双方向伝送システム |
JP2001086185A (ja) * | 1999-09-14 | 2001-03-30 | Sharp Corp | 通信方法および装置 |
US7636327B1 (en) * | 2003-07-29 | 2009-12-22 | Sprint Spectrum L.P. | Method and system for selectively operating in a half-duplex mode or full-duplex mode in a packet-based real-time media conference |
US7415282B2 (en) * | 2004-07-31 | 2008-08-19 | Nextel Communications Inc. | Wireless communication system providing seamless switching between full-duplex and half-duplex modes |
US7912070B1 (en) * | 2006-07-12 | 2011-03-22 | Nextel Communications Inc. | System and method for seamlessly switching a half-duplex session to a full-duplex session |
US8149743B1 (en) * | 2006-07-12 | 2012-04-03 | Nextel Communications Inc. | System and method for seamlessly switching a full-duplex session to a half-duplex session |
US7742439B2 (en) * | 2006-10-13 | 2010-06-22 | Hewlett-Packard Development Company, L.P. | Automated correction of duplex mismatches |
-
2009
- 2009-05-29 JP JP2010515756A patent/JP5054818B2/ja active Active
- 2009-05-29 US US12/995,558 patent/US8520563B2/en active Active
- 2009-05-29 WO PCT/JP2009/002398 patent/WO2009147811A1/ja active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002094600A (ja) * | 2000-09-13 | 2002-03-29 | Mitsubishi Electric Corp | 通信装置および通信方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180037099A (ko) * | 2016-10-03 | 2018-04-11 | 삼성전자주식회사 | 비휘발성 스토리지 시스템 및 비휘발성 스토리지 장치들을 위한 데이터 스토리지 액세스 프로토콜 |
US11586565B2 (en) | 2016-10-03 | 2023-02-21 | Samsung Electronics Co., Ltd. | Non-volatile storage system and data storage access protocol for non-volatile storage devices |
Also Published As
Publication number | Publication date |
---|---|
US20110182216A1 (en) | 2011-07-28 |
WO2009147811A1 (ja) | 2009-12-10 |
JPWO2009147811A1 (ja) | 2011-10-20 |
US8520563B2 (en) | 2013-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5054818B2 (ja) | インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 | |
US9430432B2 (en) | Optimized multi-root input output virtualization aware switch | |
EP2263155B1 (en) | Direct data transfer between slave devices | |
US10848442B2 (en) | Heterogeneous packet-based transport | |
KR101077900B1 (ko) | 네트워크 효율성을 고려한 SoC 기반 시스템 네트워크에서의 인터페이스 장치의 통신방법 및 그에 의해 통신하는 인터페이스 장치 | |
US7492710B2 (en) | Packet flow control | |
US8693379B2 (en) | Communication system, communication device, and communication method | |
US20080294831A1 (en) | Method for link bandwidth management | |
CN110309088B (zh) | Zynq fpga芯片及其数据处理方法、存储介质 | |
JP3632695B2 (ja) | データ転送制御装置、電子機器及びデータ転送制御方法 | |
CN114546913B (zh) | 一种基于pcie接口的多主机之间数据高速交互的方法和装置 | |
US11449456B2 (en) | System and method for scheduling sharable PCIe endpoint devices | |
CN112527709A (zh) | 一种PCIe扩展交换系统、方法及电子设备和存储介质 | |
CN107852423B (zh) | 用于usb 2.0带宽保留的方法及系统 | |
JP2009502072A (ja) | FlexRay通信モジュール及びFlexRay通信制御装置、並びにFlexRay通信接続とFlexRay加入者装置との間でメッセージを伝送する方法 | |
CN115203084A (zh) | 高速外围组件互连(pcie)接口装置及其操作方法 | |
KR20170015000A (ko) | 온칩 네트워크 및 이의 통신방법 | |
KR101197294B1 (ko) | QoS 및 전송 효율 개선을 위한 SoC 기반 시스템 네트워크에서의 인터페이스 장치의 통신방법 | |
JP2003050788A (ja) | 高レベル・データ・リンク・コントローラから多数個のディジタル信号プロセッサ・コアに信号を分配するための装置と方法 | |
WO2022102088A1 (ja) | ネットワークカードおよびバッファ制御方法 | |
WO2024174846A1 (zh) | 一种随路信息传输方法、装置及设备 | |
CN109165099B (zh) | 一种电子设备、内存拷贝方法及装置 | |
JP5587530B2 (ja) | エンジン・プロセッサ連携システム及び連携方法 | |
US6728815B1 (en) | Method and structure for supporting data streaming by a SCSI target during the data in phase of the packetized SCSI protocol | |
JP2005251095A (ja) | Usb装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120302 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120522 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120704 |
|
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: 20120724 |
|
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: 20120727 |
|
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: 20150803 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |