JP5054818B2 - インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 - Google Patents

インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 Download PDF

Info

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
Application number
JP2010515756A
Other languages
English (en)
Other versions
JPWO2009147811A1 (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2010515756A priority Critical patent/JP5054818B2/ja
Publication of JPWO2009147811A1 publication Critical patent/JPWO2009147811A1/ja
Application granted granted Critical
Publication of JP5054818B2 publication Critical patent/JP5054818B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/14Two-way operation using the same type of signal, i.e. duplex
    • H04L5/16Half-duplex systems; Simplex/duplex switching; Transmission of break signals non-automatically inverting the direction of transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/14Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/14Two-way operation using the same type of signal, i.e. duplex
    • H04L5/18Automatic 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間の通信データ量は益々増加し、通信速度の高速化が求められる傾向にある。一方で、LSIのダイサイズ(チップ面積)に影響を及ぼすとともに、チップ(LSI)の製造単価増の要因となるLSIの端子(パッド)数には、厳しい制約がある。
そこで、より少ないLSI端子数で高速なデータ通信を実現する目的でUSB2.0、IEEE1394、PCI Expressといった高速シリアル通信規格が広く採用されている。このような規格における通信方式としては、USB2.0やIEEE1394のように送受信の方向制御や送信権の調停制御が必要な「半二重通信方式」と、PCI Expressのように送信専用の伝送路と、受信専用の伝送路とを少なくとも1チャンネルずつ備えることにより送受信を同時に処理できる「全二重通信方式」が挙げられる。一般的に、全二重通信方式の方が、半二重通信方式に比べ、制御が容易である。その一方で、全二重通信方式では、送信あるいは受信のどちらか一方向のみの通信を行っている期間は、他方向の伝送路が使用されないので、通信に使用されていない他方の伝送路の帯域が無駄になる、という効率面での課題がある。
また、他の分野に目を向けてみると、デジタルスチルカメラや携帯電話などのポータブル機器の記録媒体として、半導体メモリカード等の不揮発性記憶装置の需要が拡大しており、かつ、その大容量化が急速に進んでいる。この不揮発性記憶装置は、不揮発性メモリとしてフラッシュメモリを備え、フラッシュメモリを制御するフラッシュメモリ部読み書き制御部、およびデジタルスチルカメラやPC(パーソナルコンピュータ)等のホスト装置との通信を行うためのインターフェース回路を有している。このインターフェース回路を介して、不揮発性記憶装置は、ホスト装置から制御可能なスレーブ装置として機能する。
こうした装置間の通信データ量は、例えば、デジタルスチルカメラの高画素化と高画質化により、急速に増大している。また、一眼レフタイプのデジタルスチルカメラにおいては、高速連写機能の搭載により、データ通信の高速化が強く求められている。
また、他のスレーブ装置の例としては、ホスト装置にネットワーク機能を追加するためのネットワークインターフェース装置などがあり、ネットワークの高速化に伴い、ホスト装置とスレーブ装置との間のデータ通信の高速化が必須条件として、強く要請されている。
こうした不揮発性記憶装置やネットワークインターフェース装置に代表されるスレーブ装置と、ホスト装置との間は、複数の伝送路により接続される。例えば、スレーブ装置が不揮発性記憶装置である場合、このような伝送路上には、ホスト装置から不揮発性記憶装置に対する命令(コマンド)や通知、不揮発性メモリから読み出されるデータ、もしくは不揮発性メモリに書き込まれるデータ等が、デジタル信号として伝送される。
伝送路を2チャンネル備える場合、1チャンネルの伝送路がホスト装置から不揮発性記憶装置(スレーブ装置の一例)への伝送路(ダウンリンク)として利用され、もう一方の伝送路が不揮発性記憶装置からホスト装置への伝送路(アップリンク)として利用される。全二重通信方式では、ホスト装置および不揮発性記憶装置が同時にコマンドもしくはデータを送信することができる。
一方、半二重通信方式では、2チャンネルの伝送路がともにホスト装置から不揮発性記憶装置への伝送路(ダウンリンク)、もしくは、ともに不揮発性記憶装置からホスト装置への伝送路(アップリンク)として利用される。このため、半二重通信方式では、一方の装置が送信するとき、他方の装置は、受信のみ可能で、送信は出来なくなる。したがって、ダウンリンク、もしくは、アップリンク、どちらかの一方向のみで見た場合、半二重通信方式では、一方向当たりの通信帯域が、全二重方式の場合の2倍になるため、半二重通信方式は、大容量のデータを同一方向に高速伝送する場合に有効である。
特に、半導体メモリカードに代表される不揮発性記憶装置においては、高速なデータ書き込みと、高速なデータ読み出しが同時に行われることは希で、高速書き込み、もしくは、高速読み出しのどちらか一方の処理のみが継続する用途が圧倒的に多い。したがって、このような不揮発性記憶装置において、データ転送(データ書き込み又はデータ読み出し)を行う期間に関しては、半二重通信方式の方が効率の面で極めて有利になる。
なお、送信あるいは受信のどちらか一方の通信のみを行う期間は、全二重通信を行うための伝送路の方向を切換えることにより、全伝送路を用いた半二重通信方式とし、限られた伝送路の帯域を効率的に使用する従来技術がある(例えば、特許文献1参照)。
従来の、全二重モードと半二重モードとを切り換え可能な通信システムについて、図11Aおよび図11Bを用いて、説明する。
図11Aおよび図11Bは、ホスト装置と不揮発性記憶装置とが2チャンネルの外部伝送路により接続され、全二重モードと半二重モードとを切り換えて通信を行うことができる通信システムにおける、第1伝送路および第2伝送路により送受信されるコマンドおよびデータのタイミング図(タイミングチャート)(外部伝送路上を伝送するコマンド(命令)およびデータを時系列に示したタイミング図)である。具体的には、図11Aは、ホスト装置が半二重モードにて不揮発性記憶装置よりデータを読み出すときのタイミング図である。図11Bは、不揮発性記憶装置へデータを書き込むときのタイミング図である。
図11Aおよび図11Bに示すように、外部伝送路は、第1伝送路1101および第2伝送路1102からなり、初期状態では、第1伝送路1101は、ダウンリンクに設定されており、第2伝送路1102は、アップリンクに設定されている。なお、ホスト装置からはクロック伝送路(図示せず)を介して不揮発性記憶装置にクロックが供給されている。
このような構成とする理由は、通常、不揮発性記憶装置をはじめとするスレーブ装置は、小型かつ安価であることが求められるため、独自にクロックを持たず(独自にクロック生成せず)、ホスト装置から供給されるクロックで駆動する方が好ましいからである。
図11Aにおいて、ホスト装置は、不揮発性記憶装置に対し半二重モードでデータ読み出しを指示するために、高速Readコマンドを送信する(1111)。高速Readコマンドには、データ読み出し先のアドレス、読み出しサイズが多重されているものとする。
高速Readコマンド送信後、ホスト装置は、第1伝送路1101のホスト側入出力端子を入力状態に設定する。一方、高速Readコマンドを受信した不揮発性記憶装置は、第1伝送路1101の不揮発性記憶装置側入出力端子を出力状態に設定する。これにより、第1伝送路1101はアップリンクに設定される(1112)。
その後、不揮発性記憶装置は、高速Readコマンドに多重された読み出し先のアドレスから読み出しサイズ分のデータを、第1伝送路1101および第2伝送路1102を用いて並列に送信する(1113)。
所定サイズのデータの送受信完了後、不揮発性記憶装置は、第1伝送路1101の不揮発性記憶装置側入出力端子を入力状態にし、ホスト装置は、第1伝送路1101のホスト側入出力端子を出力状態にする。これにより、第1伝送路1101はダウンリンクに戻る(1114)。
図11Bにおいて、ホスト装置は、不揮発性記憶装置に対し半二重モードでデータ書き込みを指示するために、高速Writeコマンドを送信する(1115)。高速Writeコマンドには、データ書き込み先のアドレス、書き込みサイズが多重されているものとする。
高速Writeコマンド送信後、ホスト装置は、第2伝送路1102のホスト側入出力端子を出力状態に設定する。一方、高速Writeコマンドを受信した不揮発性記憶装置は、第2伝送路1102の不揮発性記憶装置側入出力端子を入力状態に設定する。これにより、第2伝送路1102はダウンリンクに設定される(1116)。
その後、ホスト装置は、高速Writeコマンドに多重された書き込み先のアドレスへ書き込みサイズ分のデータを、第1伝送路1101および第2伝送路1102を用いて並列に送信する(1117)。
所定サイズのデータの送受信完了後、ホスト装置は、第2伝送路1102のホスト側入出力端子を入力状態にし、不揮発性記憶装置は、第2伝送路1102の不揮発性記憶装置側入出力端子を出力状態にする。これにより、第2伝送路1102はアップリンクに戻る(1118)。
以上により、従来の、全二重モードと半二重モードとを切り換え可能な通信システムでは、全二重モードと半二重モードとを切り替えることで効率の良い通信を実現することができる。
特開2002−94600号公報
しかしながら、上記で説明した通信システムでは、以下のような問題が生じる。
第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の発明は、少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、第1伝送路用入出力端子と、第2伝送路用入出力端子と、通信モード切換条件検出部と、伝送路切換制御部と、を備える。
第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は自然数)のパケットの送信もしくは受信を完了した場合に、必ず、全二重通信モードに戻るので、半二重通信モード中の割り込み要求の速やかな実行を保証することができる。さらに、このインターフェース装置では、送受信パケット数をカウントするだけで、簡単に、通信モードの切換タイミングを決定することができる。
第4の発明は、第1から第3のいずれかの発明であって、伝送路切換制御部は、第2条件を、データ送受信要求またはデータ送受信命令に含めて通信相手に通知する。
これにより、第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を決定する方法であってもよい。つまり、このパケット数Nを決定する方法では、パケット数Nを、バッファサイズの小さい装置を基準にして決定するので、通信システムの通信性能を最大限に引き出すことが可能となる。
また、パケット数Nの決定方法は、ホスト装置およびスレーブ装置の処理速度性能に基づいてパケット数Nを決定する方法であってもよい。例えば、ホスト装置の処理速度、動作クロックがそれぞれP1、C1であり、スレーブ装置の処理速度、動作クロックがそれぞれP2、C2であり、通信パケットのパケットサイズがAである場合、P1、P2、C1、C2およびAの全部若しくは一部に基づいて、パケット数Nを決定するようにしてもよい。なお処理速度性能は、ホスト装置またはスレーブ装置に実装されているプロセッサ処理能力、同じくホスト装置またはスレーブ装置に実装されているRAMやフラッシュメモリ等記録媒体への読み書き速度、外部との通信を行う外部通信路の伝送速度の全部若しくは一部から決まる。
第7の発明は、第1から第6のいずれかの発明であって、通信モード切換条件検出部は、通信システムが全二重通信モードでの通信に切り換えられた時点から、所定の時間経過した場合に、第1条件が満たされたと判断する。
このインターフェース装置では、通信システムが、全二重通信モードでの通信に切り換えられた時点から、所定の時間経過した場合に、半二重通信モードに戻るので、割り込み要求等の実行を終了した後、半二重通信モードによる高速データ通信の再開を速やかに行うことができる。
第8の発明は、第1から第7のいずれかの発明であって、伝送路切換制御部は、インターフェース装置の初期設定時に、第1条件を、通信相手に通知及び/又は設定させるためのパケットを送信する。
これにより、インターフェース装置の初期化時に第1条件(全二重から半二重に切り換えるための条件)を、通信相手に通知及び/又は設定させることができるため、通信システムが動作中に、別途第1条件を設定するための通信を行う必要がない。
第9の発明は、第1から第7のいずれかの発明であって、通信モード切換条件検出部は、通信システムが全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を受信した場合に、第1条件が満たされたと判断する。
このインターフェース装置では、通信システムが、全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を受信した場合に、半二重通信モードに戻るので、割り込み要求等の実行を終了した後、半二重通信モードによる高速データ通信の再開を速やかに行うことができる。また、このインターフェース装置では、インターフェース切換要求命令を受信により通信モードが切り換えられるので、送信側および受信側において、(クロックカウント等による)時間計測を行う必要がない。
第10の発明は、第1から第7のいずれかの発明であって、通信モード切換条件検出部は、通信システムが全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を送信した場合に、第1条件が満たされたと判断する。
このインターフェース装置では、通信システムが、全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を送信した場合に、半二重通信モードに戻るので、割り込み要求等の実行を終了した後、半二重通信モードによる高速データ通信の再開を速やかに行うことができる。また、このインターフェース装置では、インターフェース切換要求命令の送信により通信モードが切り換えられるので、送信側および受信側において、(クロックカウント等による)時間計測を行う必要がない。さらに、インターフェース切換要求命令を送信するタイミングを制御することで、全二重通信モードによる通信期間を所望の期間に設定することができる。このため、効率のよい通信を実現させることができる。
第11の発明は、第1から第6のいずれかの発明であって、伝送路切換制御部は、全二重通信モードに切り換え後、Wait指示の割り込み通知を受信した場合、全二重通信モードの状態で待機し、Wait指示の割り込み通知に対応する割り込み処理の完了後に送信される割込処理完了を指示する通知を受信した場合、半二重通信モードへ切り換える。
これにより、このインターフェース装置では、Wait指示の割り込み通知(例えば、Wait通知パケット)を受信した時点から、割込処理完了を指示する通知(例えば、Wait解除パケット)を受信する時点までの間、確実に全二重モードを維持することができ、かつ、その間、インターフェース装置は、通信モードを維持したまま、待機していればよいので、余計な通信(余計なパケットの送受信)を行う必要がない(例えば、ポーリングにより、所定の周期で、通信相手の装置の状態を確かめる必要がない)。
第12の発明は、第1から第6のいずれかの発明であって、伝送路切換制御部は、全二重通信モードに切り換え後、所定時間以内にWait指示の割り込み通知を受信しなかった場合、半二重通信モードへ切り換える。
これにより、このインターフェース装置では、Wait指示の割り込み通知(例えば、Wait通知パケット)を受信した時点から、所定時間が経過するまでの間、確実に全二重モードを維持することができ、かつ、その間、インターフェース装置は、通信モードを維持したまま、待機していればよいので、余計な通信(余計なパケットの送受信)を行う必要がない(例えば、ポーリングにより、所定の周期で、通信相手の装置の状態を確かめる必要がない)。
なお、所定時間以内にWait指示の割り込み通知を受信しなかった場合、直ちに、半二重通信モードに切り換えることが好ましい。
第13の発明は、不揮発性メモリと、不揮発性メモリに対する読み書き制御を行う不揮発性メモリ制御部と、第1から第12のいずれかの発明であるインターフェース装置と、を備える不揮発性記憶装置である。
これにより、第1から第12のいずれかの発明であるインターフェース装置の効果を実現することができる不揮発性記憶装置(例えば、SDカード)を実現することができる。
第14の発明は、外部との通信を行う外部通信部と、外部通信部に対する制御を行う外部通信制御部と、第1から第12のいずれかの発明であるインターフェース装置と、を備える通信装置である。
第15の発明は、第13または第14の発明であるインターフェース装置を含むホスト装置と、第1から第8のいずれかの発明であるインターフェース装置を含むスレーブ装置と、を備える通信システムである。
これにより、第1から第8のいずれかの発明であるインターフェース装置の効果を実現することができる通信システムを実現することができる。なお、ホスト装置とスレーブ装置は、1つの装置の中に存在し、例えば、内部バスによりホスト装置とスレーブ装置とが接続されているものであってもよい。これにより、例えば、携帯端末装置内のデバイス間において、第1から第8のいずれかの発明であるインターフェース装置により実現される効果と同様の効果を実現させることができる。
第16の発明は、少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、伝送路を用いて命令やデータの送受信を行う通信システムに用いられる通信モード切換方法であって、通信モード切換条件検出ステップと、伝送路切換制御ステップと、を備える。
通信モード切換条件検出ステップでは、通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、半二重通信モードを全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した第1条件または第2条件を満たすか否かを判定する。伝送路切換制御ステップでは、通信モード切換条件検出ステップにより、第1条件が満たされたと判定された場合、通信モードを、全二重通信モードから半二重通信モードに切り換え、そして、通信モード切換条件検出ステップにより、第2条件が満たされたと判定された場合、通信モードを、半二重通信モードから全二重通信モードに切り換える。
この通信モード切換方法では、半二重モードでのデータ読み出しやデータ書き込みの実行中であっても、所定の条件を満たしたときに伝送路の方向を切り換えて一時的に全二重モードとすることができるので、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。
第17の発明は、少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置に用いられる集積回路である。そして、インターフェース装置は、第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な第1伝送路用入出力端子と、第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能な第2伝送路用入出力端子と、を備える。そして、第17の発明である集積回路は、通信モード切換条件検出部と、伝送路切換制御部と、を備える。
通信モード切換条件検出部は、通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、半二重通信モードを全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した第1条件または第2条件を満たすか否かを判定する。伝送路切換制御部は、通信モード切換条件検出部により、第1条件が満たされたと判定された場合、第1伝送路用入出力端子および第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、通信モードを、全二重通信モードから半二重通信モードに切り換え。また、伝送路切換制御部は、通信モード切換条件検出部により、第2条件が満たされたと判定された場合、第1伝送路用入出力端子および第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、通信モードを、半二重通信モードから全二重通信モードに切り換える。
これにより、第1の発明と同様の効果を奏する集積回路を実現することができる。
第18の発明は、低速伝送路および複数の高速伝送路を有し、低速伝送路または複数の高速伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、低速伝送路用入出力端子と、複数の高速伝送路用入出力端子と、伝送路切換制御部と、を備える。
低速伝送路用入出力端子は、低速伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な入出力端子である。複数の高速伝送路用入出力端子は、高速伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な入出力端子である。
伝送路切換制御部は、低速伝送路用入出力端子および複数の高速伝送路用入出力端子の入出力状態を、それぞれを独立に設定することができ、以下の3つのモードに基づいて、低速伝送路用入出力端子および複数の高速伝送路用入出力端子の入出力状態を設定する。
(1)複数の高速伝送路用入出力端子のうち少なくとも1つの高速伝送路用入出力端子を出力状態に設定し、当該出力状態に設定した高速伝送路用入出力端子以外の高速伝送路用入出力端子を入力状態に設定する全二重通信モード。
(2)複数の高速伝送路用入出力端子のすべてを出力状態に設定する半二重出力モード。
(3)複数の高速伝送路用入出力端子のすべてを入力状態に設定する半二重入力モード。
そして、伝送路切換制御部は、半二重出力モードでは、低速伝送路用入出力端子を入力状態に設定し、半二重入力モードでは、低速伝送路用入出力端子を出力状態に設定する。
このインターフェース装置では、複数の高速伝送路を用いて、半二重通信を行っている場合、低速伝送路の通信方向を、当該半二重通信の通信方向と逆方向に設定される。したがって、このインターフェース装置では、複数の高速伝送路を用いて、半二重通信を行っている場合であっても、確実に、割込処理を行うことができる。その結果、このインターフェース装置では、適切な割り込み処理と高速データ転送(半二重モードによる高速なデータ伝送)と両立させることができる。
第19の発明は、第18の発明であって、低速伝送路用入出力端子は、シングルエンド方式による通信を行う伝送路用の入出力端子であり、複数の高速伝送路用入出力端子のうちの少なくとも1つの高速伝送路用入出力端子は、差動伝送方式による通信を行う伝送路用の入出力端子である。
このインターフェース装置では、高い通信速度を要求される複数の高速伝送路に使用される複数の高速伝送路用入出力端子を、差動伝送方式用の入出力端子とし、高い通信速度を要求されない低速伝送路用に使用される低速伝送路用入出力端子をシングルエンド方式用の入出力端子としたので、インターフェース装置の回路規模の増大を抑えつつ、適切な割り込み処理および高速データ転送を実現させることができる。
第20の発明は、不揮発性メモリと、不揮発性メモリに対する読み書き制御を行う不揮発性メモリ制御部と、第18または第19の発明であるインターフェース装置と、を備える不揮発性記憶装置である。
第21の発明は、外部との通信を行う外部通信部と、外部通信部に対する制御を行う外部通信制御部と、第18または第19の発明であるインターフェース装置と、を備える通信装置である。
第22の発明は、第18または第19の発明であるインターフェース装置を含むホスト装置と、第18または第19の発明であるインターフェース装置を含むスレーブ装置と、を備える通信システムである。
本発明によれば、ホスト装置とスレーブ装置が半二重モードでのデータ読み出しやデータ書き込みの実行中であっても、所定の条件を満たしたときに伝送路の方向を切り換えて一時的に全二重モードとすることで、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。
第1実施形態の構成を説明したブロック図 第1実施形態における伝送路切換制御部の詳細構成を説明したブロック図 第1実施形態における伝送路切換制御部の詳細構成を説明したブロック図 第1実施形態における伝送路切換制御部の詳細構成を説明したブロック図 第1実施形態における、高速データRead実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第1実施形態における、高速データRead実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第1実施形態の別の構成を説明したブロック図 第2実施形態の構成を説明したブロック図 第2実施形態における伝送路切換制御部の詳細構成を説明したブロック図 第2実施形態における伝送路切換制御部の詳細構成を説明したブロック図 第2実施形態における伝送路切換制御部の詳細構成を説明したブロック図 第2実施形態における、高速データRead実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第2実施形態における、高速データRead実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第3実施形態の構成を説明したブロック図 第3実施形態における伝送路切換制御部の詳細構成を説明したブロック図 第3実施形態における伝送路切換制御部の詳細構成を説明したブロック図 第3実施形態における伝送路切換制御部の詳細構成を説明したブロック図 第3実施形態における、高速データRead実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第3実施形態における、高速データRead実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 従来の不揮発性記憶システムにおける伝送路上を伝送されるコマンドおよびデータを時系列に示したタイミング図 従来の不揮発性記憶システムにおける伝送路上を伝送されるコマンドおよびデータを時系列に示したタイミング図 第1実施形態における、高速データWrite実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第1実施形態における、高速データWrite実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第2実施形態における、高速データWrite実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第2実施形態における、高速データWrite実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第3実施形態における、高速データWrite実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第3実施形態における、高速データWrite実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第1実施形態における、高速データWrite実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第1実施形態における、高速データRead実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第1実施形態のパケット構成図 第1実施形態のパケットヘッダーと、Argumentの一部を示した図 第1実施形態における、高速データWrite実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第1実施形態における、高速データRead実行時に伝送路上を伝送されるパケットを時系列に示したタイミング図 第1実施形態のI/O空間を示す図 第4実施形態の構成を説明したブロック図 第4実施形態におけるバス切換制御部の全二重モードにおける構成を説明したブロック図 第4実施形態の高速Read時におけるバス上を伝送されるパケットを時系列に示したタイミング図 第4実施形態におけるバス切換制御部の半二重Readモードにおける構成を説明したブロック図 第4実施形態の高速Write時におけるバス上を伝送されるパケットを時系列に示したタイミング図 第4実施形態におけるバス切換制御部の半二重Writeモードにおける構成を説明したブロック図 第4実施形態の別の構成を説明したブロック図 第5実施形態の高速Write時におけるバス上を伝送されるパケットを時系列に示したタイミング図
以下に、本発明の実施の形態について、図面を参照しながら説明する。なお、以下の各実施形態において、以前に説明した符号の説明は省略する。
[第1実施形態]
<1.1:通信システムの構成>
図1は、本発明の第1実施形態に係る通信システム1の構成を示したブロック図である。
図1に示すように、通信システム1は、ホスト装置100とスレーブ装置の一種である不揮発性記憶装置110とを備える。そして、ホスト装置100と不揮発性記憶装置110とは、第1伝送路121、第2伝送路122、クロック伝送路123により接続されている。
ホスト装置100は、少なくともユーザーインターフェース部131、アプリケーション部132、メモリ部133、およびホストインターフェース部140を備える。
ホストインターフェース部140は、クロック送信部141、パケット生成部142、伝送路切換制御部143、パケット解析部144、クロックカウンタ145を備える。
不揮発性記憶装置110は、少なくともスレーブインターフェース部160、不揮発性メモリ部読み書き制御部170および不揮発性メモリ部171を備える。
スレーブインターフェース部160は、クロック再生成部161、伝送路切換制御部162、パケット解析部163、パケット生成部164、クロックカウンタ165を備える。
なお、パケット生成部142および164、パケット解析部144および163は、適当な大きさのバッファを備えているものとする。
図2A〜Cは、ホストインターフェース部140およびスレーブインターフェース部160の構成図であり、特に、ホスト装置側の伝送路切換制御部143およびスレーブ装置側の伝送路切換制御部162の構成を詳細に示した図である。
図2A〜Cに示すように、ホスト装置側の伝送路切換制御部143は、ホストインターフェース部140の切換条件検出部240と、第1伝送路121のホストインターフェース部140内の入出力端子241と、第2伝送路122のホストインターフェース部140内の入出力端子242と、を備える。
スレーブ装置側の伝送路切換制御部162は、スレーブインターフェース部160の切換条件検出部260と、第1伝送路121のスレーブインターフェース部160内の入出力端子261と、第2伝送路122のスレーブインターフェース部160内の入出力端子262と、を備える。
ホスト装置側の切換条件検出部240は、パケット生成部142、パケット解析部144、およびクロックカウンタ145の状態を監視して切換条件が満たされているか否かを検出する。そして、切換条件検出部240は、切換条件の充足状況に応じて入出力端子241、242を、それぞれ、送信状態または受信状態に設定する。
同様に、スレーブ装置側の切換条件検出部260は、パケット解析部163、パケット生成部164、およびクロックカウンタ165の状態を監視して切換条件の充足状況を検出する。そして、切換条件の充足状況に応じて入出力端子261、262を、それぞれ、送信状態または受信状態に設定する。
図2Aでは、第1伝送路121のホストインターフェース部140内の入出力端子241は送信状態(T)、スレーブインターフェース部160内の入出力端子261は受信状態(R)に設定されており、第2伝送路122のホストインターフェース部140内の入出力端子242は受信状態(R)、スレーブインターフェース部160内の入出力端子262は送信状態(T)に設定されている。
このとき、第1伝送路121の通信方向は、ホストインターフェース部140からスレーブインターフェース部160へむかう向き(ダウンリンク)である。そして、第2伝送路122の通信方向は、スレーブインターフェース部160からホストインターフェース部140へむかう向き(アップリンク)である。よって、図2Aに示すように、通信システム1において、第1伝送路121および第2伝送路122の向きが異なり、ホストインターフェース部140とスレーブインターフェース部160の双方からデータを同時に送信することができる。すなわち、図2Aは、通信システム1が「全二重モード」に設定されている場合を示している。
一方、図2Bでは、第1伝送路121および第2伝送路122のホストインターフェース部140内の入出力端子241および242は、共に受信状態(R)、スレーブインターフェース部160内の入出力端子261および262は、共に送信状態(T)に設定され、第1伝送路121および第2伝送路122の通信方向が同じ(アップリンク)になっている。また、図2Cでも、第1伝送路121および第2伝送路122の通信方向が同じ(ダウンリンク)になっている。
つまり、図2BおよびCは、通信システム1が「半二重モード」に設定されている場合を示している。この場合、通信システム1では、全二重モードの2倍の帯域幅でデータを伝送することができる。
<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は、初期化コマンドパケットを生成する。初期化コマンドに関しては、後述する。
パケット生成部142及びパケット生成部164は、例えば、図17に示すような各種のリクエストパケット、データパケット、レスポンスパケット、メッセージパケット等を生成する。そして、パケット解析部144及びパケット解析部163は、例えば、図17に示すような各種のリクエストパケット、データパケット、レスポンスパケット、メッセージパケット等の解析を行う。
I/O R/W リクエストパケット1701は、図17に示すパケット構造を有している。I/O R/W リクエストパケット1701は、制御レジスタや、状態レジスタ(ステータスレジスタ)等がマッピングされたI/O空間をRead/Writeするための要求を伝達する。
図21に、通信システム1で用いられるI/O空間の一例を示す。
図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のパケット構造の一例を示す。これらのパケットについて、以下、説明する。
Memory R/W リクエストパケット1702は、メモリ空間をRead/Writeするための要求を伝達する。この要求を基に、不揮発性記憶装置110の不揮発性メモリ部171からのデータ読み出し、もしくは、不揮発性メモリ部171へのデータ書き込みが実行される。
データパケット1703は、Memory R/W リクエストパケットによる不揮発性メモリ部171からの読み出し要求に基づいて、不揮発性メモリ部171から読み出されたデータを伝送する。また、データパケット1703は、Memory R/W リクエストパケットによる不揮発性メモリ部171への書き込み要求に基づいて、不揮発性メモリ部171への書き込みデータを伝送する。
レスポンスパケット1704は、リクエストパケット(I/O R/W リクエストパケット、及び、Memory R/W リクエストパケット)に対する応答を伝送する。
メッセージパケット1705は、割込みや、Busy、Wait、といった主にイベント通知に使用する。
図17に示すように、パケット1701〜1705において、各パケットの先頭には、各パケット共通の情報を伝達するための、Header1711〜1715が、それぞれ、付加される。
図18に、パケット1701〜1705において、各パケットの先頭に付加されるHeader情報の構成例を示す。
図18に示す例では、Header情報は、2バイトで構成し、バイト0のビット7“DIR”は、パケットの伝送方向を示すビットであり、このビット”Dir”が“0”の場合は不揮発性記憶装置110からホスト装置100にパケットが伝送されることを示し、ビット”Dir”が“1”の場合は、ホスト装置100から不揮発性記憶装置110にパケットが伝送されることを示す。
また、図18に示すように、バイト0のビット6〜ビット4“Packet Type”は、パケットの種類を示すビットであり、この“Packet Type”が000(b)(「(b)」は、2進数による表記であることを示す。以下同様。)の場合は、I/O R/W リクエストパケット1701であることを示し、001(b)の場合は、Memory R/W リクエストパケット1702であることを示し、010(b)の場合は、レスポンスパケット1704であることを示し、011(b)の場合は、データパケット1703であることを示し、111(b)の場合は、メッセージパケット1705であることを示す。
また、バイト0のビット3〜ビット0、および、バイト1のビット7〜ビット6の合計6ビットで構成される“Destination ID”には、一つのホスト装置100に、複数の不揮発性記憶装置110が接続された場合、どの不揮発性記憶装置にパケットを伝送するかを示すID(パケットの届け先情報)を格納する。
また、バイト1のビット5〜ビット0“Transaction ID”は、それぞれの処理毎に割り当てられるIDであり、ある一つのリクエストパケットに対応したレスポンスパケットやデータパケットには、同じ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 リクエストパケットに対応したレスポンスパケットであると判定する。
一方、Memory R/W リクエストパケット1702のパケット伝送後に、不揮発性記憶装置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の先頭バイト)のビット7“DPLX”は、通信モードの設定を行うビットである。“DPLX”が“0”の場合、通信モード設定が、全二重モード、すなわち、第1通信モードであることを意味する。一方、“DPLX”が“1”の場合、通信モード設定が、半二重モード、すなわち、第2通信モードであることを意味する。
バイト2(Argument1722の先頭バイト)のビット6“R/W”は、Memory R/W リクエストパケット1702が、Readリクエスト、Writeリクエストのどちらであるかを示すビットである。ビット6“R/W”が“0”の場合、当該パケットが、Readリクエスト(用のパケット)であることを示し、ビット6“R/W”が“1”の場合、当該パケットが、Writeリクエスト(用のパケット)であることを示す。
バイト2のビット3〜ビット0“DIR Ctrl”に関しては、後述する。
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 リクエストパケットを伝送する。
同様に、Memory R/W リクエストパケット1702の“Address”(図17の1732の部分)は、メモリ空間のどのエリアの読み出し、もしくは、メモリ空間のどのエリアに書き込みを行うかを指定するアドレスを格納する領域である。
データパケット1703の“Data”(図17の1742の部分)は、主に、メモリ空間のRead/Write要求に対するデータを格納する領域であり、レスポンスパケット1704の“Data”(図17の1743の部分)は、主に、I/O空間のRead要求に対するデータを格納する領域である。
図17に示すように、パケット1701〜1705において、各パケットの最後尾には必要に応じて“CRC”(図17の1751〜1755で示す部分)が付加され、伝送した各パケットのデータ誤り検出に用いられる。
本実施形態において、初期化コマンドは、図3の初期化コマンドパケット301、及び、図12の初期化コマンド1201に示すように、説明便宜のために(簡単化するために)、一つのパケットで描き表している。しかし、実際には、前記I/O R/W リクエストにより、ホスト装置100に装着された不揮発性記憶装置110の各種情報(例えば、対応規格のバージョンに関する情報や、製造メーカに関する情報、不揮発性記憶装置のシリアル番号、動作可能な電圧に関する情報、等々)を読み出したり、不揮発性記憶装置110への各種設定を行ったりするための一連のパケット通信により、通信システム1において、初期化を行うのが一般的である。
(1.2.1:初期化時の伝送切換条件に関するパラメータの設定)
こうした初期化時に、通信システム1のインターフェース部では、伝送路切換条件に関するパラメータのI/O空間への書き込み(設定)を、以下のように行う。
図21のI/O空間のアドレス30(h)“DIR C”は、Direction Control設定レジスタであり、半二重モードによるデータ伝送中、一時的に全二重モードに切り替えを行うための条件(切り替え周期についての条件)として、半二重モードによる伝送データパケットの数を設定するためのレジスタである。
例えば、ホスト装置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に送信する。
不揮発性記憶装置110は、ホスト装置100からのパケットを受信して、I/O空間のアドレス30(h)“DIR C”に“4”を設定する(書き込む)。これにより、不揮発性記憶装置110は、通信システム1で半二重モードによるデータパケット転送が開始された時点以降において、データパケット4パケット分の転送が行われる毎に、半二重モード(第2通信モード)から、一旦、全二重モード(第1通信モード)への伝送路切り替えを行う。
なお、図21に示すI/O空間は論理空間であり、それぞれのアドレスに対応するレジスタもしくはメモリ等の記憶素子は、実際には、関連する各回路ブロック(ハードウェアで実現する場合)に実装されるのが一般的である。本実施形態では、ホスト装置100のI/O空間のアドレス30(h)“DIR C”レジスタは、切換条件検出部240内に実装され、不揮発性記憶装置110のI/O空間のアドレス30(h)“DIR C”レジスタは、切換条件検出部260内に実装されている。
ホストインターフェース部140およびスレーブインターフェース部160がアクティブになった直後は、通信システム1は、全二重モード、すなわち図2Aの状態になっているものとする。よって、初期化コマンドパケットは、第1伝送路121経由でパケット解析部163に伝達される(301、1201)。
パケット解析部163では、上記パケットが初期化コマンドであることが解析され、必要な初期化が実行される。
初期化完了後、ユーザーは、高速データReadおよび高速データWriteをホスト装置100のユーザーインターフェース部131に指示することができる。
ここで、「高速データRead」とは、伝送路121および122を半二重モード、すなわち、第2通信モードに設定して、不揮発性記憶装置110の不揮発性メモリ部171からデータを読み出す動作のことである。
また、「高速データWrite」とは、伝送路121および122を半二重モード、すなわち、第2通信モードに設定して、ホスト装置100から不揮発性記憶装置110内の不揮発性メモリ部171にデータを書き込む動作のことである。
(1.2.2:高速Readの動作(時間T経過による半二重/全二重モード切換))
以下では、まず、図3Aのタイミング図を参照しながら、通信システム1における高速Readの動作(ユーザーが高速データReadをユーザーインターフェース部131に指示したときの通信システム1の動作)について、説明する。
ユーザーが高速データReadをユーザーインターフェース部131に指示した場合、ユーザーインターフェース部131は、アプリケーション部132に高速データRead指示を伝達する。
アプリケーション部132は、メモリ部133に読み出したデータを格納するための空き領域が存在することを確認し、その後、パケット生成部142に高速Readコマンドパケットを生成させる。高速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”に設定される。
また、高速モードでReadを行うことを示すために、“Argument”1722の先頭バイト(図18のバイト2)のビット7“DPLX”は、“1”(半二重モード)に設定される(“DPLX”を、“1”(半二重モード)に設定することで、通信システム1において、半二重モード(半二重モード)、すなわち、第2通信モードで通信を行うことを指示することができる)。
パケット生成部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に示す半二重モードとなる。
その後、スレーブインターフェース部160は、不揮発性メモリ部読み書き制御部170を介し、高速Readコマンドパケットに多重されたアドレスに対応する不揮発性メモリ部171上の領域から、同じくコマンドに多重された読み出しサイズだけデータを順次取得し、パケット生成部164に供給する。
パケット生成部164では、パケットの種別等を示したヘッダと、読み出したデータを適当なサイズに分割して生成されるボディからデータパケットが生成される。
パケット生成部164は、生成したデータパケットを第1伝送路121および第2伝送路122に振り分けながら、伝送路切換制御部162を介してホスト装置100に送信する。
本実施形態では、1番目のデータパケットDATA(1)を第1伝送路121に、2番目のデータパケットDATA(2)を第2伝送路122に振り分けて送信する(304)。
ホスト装置100に送信された上記DATA(1)、DATA(2)は、伝送路切換制御部143を介して、パケット解析部144に蓄積される。
パケット解析部144では、これらのパケットがデータパケットであると解析され、ヘッダを除いたボディ、すなわち、データ本体がメモリ部133に格納される。
以降、3番目のデータパケットDATA(3)および4番目のデータパケットDATA(4)についても、同様に、ホスト装置100に送信される(305)。
次に、伝送路切換制御部162の切換条件検出部260は、初期化時にI/O空間のアドレス30(h)“DIR C”に“4”が設定されているので、パケット生成部164が4個のデータパケットを送信したことを検出し、第1伝送路121の入出力端子261を受信状態に設定する。
また、伝送路切換制御部143の切換条件検出部240は、初期化時にI/O空間のアドレス30(h)“DIR C”に“4”が設定されているので、パケット解析部144が4個のデータパケットを受信したことを検出し、第1伝送路121の入出力端子241を送信状態に設定する。これにより、第1伝送路121は、ダウンリンクに設定され(306)、通信システム1は、図2Aに示す全二重モードとなる。
このように、通信システム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に送信する。
不揮発性記憶装置110は、ホスト装置100からのパケットを受信して、I/O空間のアドレス30(h)“DIR C”に“N”を設定する(書き込む)。
図3AおよびBでは、初期化コマンドのパラメータをN=4としたときの、通信システム1におけるタイミング図の一例を示している。
また、図20(b)では、N=8としたときの、通信システム1におけるタイミング図の一例を示している。
通信システム1において、第1伝送路121がダウンリンクに設定されたとき、クロックカウンタ165は、クロック再生成部161から供給されるクロックを元にクロック数の計上を開始する。同様に、クロックカウンタ145は、クロック送信部141から供給されるクロックを元にクロック数の計上を開始する。
ホストインターフェース部140内の切換条件検出部240は、第1伝送路121がダウンリンクに切り換わった時点から所定の時間Tが経過したことを、クロックカウンタ145を監視することで検出し、第1伝送路121の入出力端子241を再び受信状態に設定する。このとき、切換条件検出部240は、クロックカウンタ145に対してクロック数をゼロクリアさせる。
同様に、スレーブインターフェース部160内の切換条件検出部260は、第1伝送路121がダウンリンクに切り換わった時点から所定の時間Tが経過したことを、クロックカウンタ165を監視することで検出し、第1伝送路121の入出力端子261を再び送信状態に設定する。このとき、切換条件検出部260は、クロックカウンタ165に対してクロック数をゼロクリアさせる。
これにより、第1伝送路121は、再びアップリンクに設定され(307)、通信システム1は、図2Bに示す半二重モードに戻る。ここで、全二重モードから半二重モードへ切り換える条件が、全二重モードに移行した後、所定の時間Tが経過した時であることは、初期化コマンドのパラメータで、予めホスト装置100から不揮発性記憶装置110に対し通知しておく。
以後同様に、通信システム1では、4個のデータパケットの送受信を完了する度に、第1伝送路121は、ダウンリンクに設定され(308)、所定の時間Tが経過すると、半二重モードに戻る(309)という制御が繰り返される。
ここで、第1伝送路121がダウンリンクに設定されている間(306〜307、308〜309)に、ホスト装置100が第1伝送路121上にコマンドやメッセージ等を送信することで、不揮発性記憶装置110に対して割り込み要求を行うことが可能である。
(1.2.3:高速Readの動作(Wait通知・解除による半二重/全二重モード切換))
次に、通信システム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)。
不揮発性記憶装置110に送信されたWait通知パケットは、他のコマンドと同様にパケット解析部163で解析される。このとき、実行中の高速Readコマンドは、一時停止され、全二重モードが保持される。この場合、通信システム1は、図3Aの場合とは異なり、所定の時間Tが経過しても半二重モードへは切り換わらない。そして、切換条件検出部240および260は、それぞれ、クロックカウンタ145および165に対して、クロック数をゼロクリアさせる。
その後、メモリ部133に十分な空き領域ができると、アプリケーション部132がそれを検知し、パケット生成部142にWait解除パケットを生成させ、不揮発性記憶装置110に送信させる(311)。
このとき、切換条件検出部240は、パケット生成部142がWait解除パケットを生成したことを検出し、第1伝送路121の入出力端子241を受信状態に設定する。
また、切換条件検出部260は、パケット解析部163がWait解除パケットを解析したことを検出し、第1伝送路121の入出力端子261を送信状態に設定する。
これにより、第1伝送路121がアップリンクに設定され、通信システム1は、半二重モードとなり、通信システム1において、高速Readコマンドの実行が再開される。
このように、通信システム1では、ホスト装置100から不揮発性記憶装置110に対して、Wait通知パケットが送信された時点から、Wait解除パケットが送信される時点までの間、確実に全二重モードが維持され、かつ、Waitに関するステータスを確かめるための余計なパケットを送受信させる必要がない(例えば、ポーリングにより、所定の周期で、ホスト装置100および/または不揮発性記憶装置110の状態を確かめる必要がない)。
したがって、通信システム1では、余計なパケットの送受信を発生させることがなく、また、適切な割込処理を実現させつつ、高速データ転送を行うことができる。
なお、ホスト装置100から不揮発性記憶装置110に対して送信されるWait通知パケットに対して、当該Wait通知パケットに対するレスポンスパケットを、不揮発性記憶装置110からホスト装置100に送信するようにしてもよい。また、ホスト装置100から不揮発性記憶装置110に対して送信されるWait解除パケットに対して、当該Wait解除パケットに対するレスポンスパケットを不揮発性記憶装置110からホスト装置100に送信するようにしてもよい。この場合、Wait解除パケットに対するレスポンスパケットが不揮発性記憶装置110からホスト装置100に送信された後、通信モードを切り換えることが好ましい。
以上が、ユーザーが高速データReadを指示したときの通信システム1の動作である。
(1.2.4:高速Writeの動作(時間T経過による半二重/全二重モード切換))
次に、通信システム1における高速Writeの動作(時間T経過により半二重/全二重モードを切り替える場合の動作)について、説明する。
図12Aは、通信システム1における高速Writeの動作(時間T経過により半二重/全二重モードを切り替える場合の動作)を説明するためのタイミング図(タイミングチャート)である。
ユーザーが高速データWriteをユーザーインターフェース部131に指示した場合、ユーザーインターフェース部131は、アプリケーション部132に高速データWrite指示を伝達する。
アプリケーション部132は、パケット生成部142に高速Writeコマンドパケットを生成させる。高速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”に設定される。
また、高速モードでWriteを行うことを示すために、“Argument”1722の先頭バイト(図18のバイト2)のビット7“DPLX”は、“1”(半二重モード)に設定される(“DPLX”を、“1”(半二重モード)に設定することで、通信システム1において、半二重モード(半二重モード)、すなわち、第2通信モードで通信を行うことを指示することができる)。
パケット生成部142により生成された高速Writeコマンドパケットは、第1伝送路121経由でパケット解析部163に供給される(1202)。
パケット解析部163では、上記パケットが高速Writeコマンドであることが解析され、それが不揮発性メモリ部読み書き制御部170に通知される。
不揮発性メモリ部読み書き制御部170は、不揮発性メモリ部171にデータを格納するための空き領域が存在することを確認する。不揮発性メモリ部読み書き制御部170は、不揮発性メモリ部171に空き領域が存在することを確認した場合、パケット生成部142に高速Writeコマンドに対するレスポンスパケットを生成させる。このレスポンスパケットは、第2伝送路122経由でパケット解析部144に供給される(1203)。
そして、パケット解析部144では、不揮発性記憶装置110から送信されてきたパケットが解析され、当該パケットが高速Writeコマンドに対するレスポンスパケットであることが確認される。
伝送路切換制御部162の切換条件検出部260は、パケット解析部163が上記レスポンスパケットを送信したことを検出し、第2伝送路122の入出力端子262を受信状態に設定する。
伝送路切換制御部143の切換条件検出部240は、パケット解析部144が上記レスポンスパケットを受信したことを検出し、第2伝送路122の入出力端子242を送信状態に設定する。
これにより、第2伝送路122は、ダウンリンクに設定され(1204)、通信システム1は、図2Cに示す半二重モードとなる。
その後、ホストインターフェース部140は、メモリ部133を介し、不揮発性メモリ部171に書き込むデータをパケット生成部142に供給し、パケット生成部142によりデータパケットが生成される。本実施形態においては、高速Write時の第1伝送路121、第2伝送路122へのパケットの振り分け方は、高速Read時と同様とする(1205、1206)。
不揮発性記憶装置110に送信されたデータパケットは、伝送路切換制御部162を介してパケット解析部163に蓄積される。パケット解析部163により、これらのパケットは、データパケットであると解析されて、データ本体が不揮発性メモリ部読み書き制御部170を介して不揮発性メモリ部171に格納される。
伝送路切換制御部143の切換条件検出部240は、初期化時にI/O空間のアドレス30(h)“DIR C”に“4”が設定されているので、パケット生成部142が4個のデータパケットを送信したことを検出し、第2伝送路122の入出力端子242を受信状態に設定する。
また、伝送路切換制御部162の切換条件検出部260は、初期化時にI/O空間のアドレス30(h)“DIR C”に“4”が設定されているので、パケット解析部163が4個のデータパケットを受信したことを検出し、第2伝送路122の入出力端子262を送信状態に設定する。
これにより、第2伝送路122はアップリンクに設定され(1207)、通信システム1は、図2Aに示す全二重モードとなる。
通信システム1において、半二重モードから全二重モードに切り換える条件の設定方法は、高速Read時と同様である。
図12A、Bにおいても、初期化コマンドのパラメータをN=4としたときの、通信システム1におけるタイミング図の一例を示している。
また、図19の(b)では、N=8としたときの、通信システム1におけるタイミング図の一例を示している。
以後、通信システム1では、高速Read時と同様に、第2伝送路122がアップリンクに設定されてから所定の時間T経過後、切換条件検出部260は、第2伝送路122の入出力端子262を再び受信状態に設定する。そして、切換条件検出部240は、第2伝送路122の入出力端子242を再び送信状態に設定する。このとき、切換条件検出部240および260は、それぞれ、クロックカウンタ145および165に対してクロック数をゼロクリアさせる。
これにより、第2伝送路122は、ダウンリンクに再設定され(1208)、通信システム1は、図2Bに示す半二重モードに戻る。
以後同様に、通信システム1では、4個のデータパケットの送受信を完了する毎に、第2伝送路122は、アップリンクに設定され(1209)、所定の時間Tが経過すると、半二重モードに戻る(1210)という制御が繰り返される。
ここで、第2伝送路122がアップリンクに設定されている間(1207〜1208、1209〜1210)に、不揮発性記憶装置110が第2伝送路122上にコマンドやメッセージ等を送信することで、ホスト装置100に対して割り込み通知を伝送できる。
(1.2.5:高速Writeの動作(Busy通知・解除による半二重/全二重モード切換))
次に、通信システム1において、Busy通知・解除により半二重/全二重モードを切り換える場合の高速Write動作について、説明する。
図12Bは、半二重モードによる通信中に、割り込み通知として、不揮発性記憶装置110がホスト装置100にBusy通知・解除を伝送する場合のシーケンスを示している。
半二重モードにおいて、不揮発性メモリ部読み書き制御部170による不揮発性メモリ部171への書き込みが終了するまでデータの受信を一時停止させたい場合や、図示しないデータ受信用メモリの空き容量が不足した場合、不揮発性メモリ部読み書き制御部170は、パケット生成部164にBusy通知パケットを生成させる。そして、不揮発性メモリ部読み書き制御部170は、第2伝送路122がアップリンクに設定されている間に、Busy通知パケットがホスト装置100に送信されるように制御する(1211)。
ホスト装置100に送信されたBusy通知パケットは、パケット解析部144で解析される。このとき、実行中の高速Writeコマンドは、一時停止され、通信システム1において、全二重モードの状態が保持される。この場合、図12Aの場合と異なり、通信システム1は、所定の時間Tが経過しても半二重モードへは切り換わらず、切換条件検出部240および260は、それぞれ、クロックカウンタ145および165に対して、クロック数をゼロクリアさせる。
その後、不揮発性メモリ部読み書き制御部170がデータ受信可能と判断すると、不揮発性メモリ部読み書き制御部170は、パケット生成部164にBusy解除パケットを生成させ、ホスト装置100に送信させる(1212)。
このとき、切換条件検出部260は、パケット生成部164がBusy解除パケットを生成したことを検出し、第2伝送路122の入出力端子262を再び受信状態に設定する。
また、切換条件検出部240は、パケット解析部144がBusy解除パケットを解析したことを検出し、第2伝送路122の入出力端子242を再び送信状態に設定する。
これにより、第2伝送路122がダウンリンクに設定され、通信システム1は、半二重モードとなり、高速Writeコマンドの実行が再開される。
このように、通信システム1では、不揮発性記憶装置110からホスト装置100に対して、Busy通知パケットが送信された時点から、Busy解除パケットが送信される時点までの間、確実に全二重モードが維持され、かつ、Busyに関するステータスを確かめるための余計なパケットを送受信させる必要がない(例えば、ポーリングにより、所定の周期で、ホスト装置100および/または不揮発性記憶装置110の状態を確かめる必要がない)。
また、上記処理は、コマンドレベルでの処理、すなわち、ホストインターフェース部140およびメモリ部133による処理で実現させることができ、アプリケーション部132での処理が不要であるため、高速に処理を行うことができる。
したがって、通信システム1では、余計なパケットの送受信を発生させることがなく、また、適切な割込処理を実現させつつ、高速データ転送を行うことができる。
なお、不揮発性記憶装置110からホスト装置100に対して送信されるBusy通知パケットに対して、当該Busy通知パケットに対するレスポンスパケットをホスト装置100から不揮発性記憶装置110に送信するようにしてもよい。また、不揮発性記憶装置110からホスト装置100に対して送信されるBusy解除パケットに対して、当該Busy解除パケットに対するレスポンスパケットをホスト装置100から不揮発性記憶装置110に送信するようにしてもよい。この場合、Busy解除パケットに対するレスポンスパケットがホスト装置100から不揮発性記憶装置110に送信された後、通信モードを切り換えることが好ましい。
以上が、ユーザーが高速データWriteを指示したときの通信システム1の動作である。
以上説明したように、本実施形態の通信システム1では、2チャンネルの伝送路を同時に使用する半二重モードでデータを高速に伝送するとき、所定数のデータパケットの通信が完了した際に、一時的に1チャンネルの伝送路の通信方向を切り換える。これにより、通信システム1では、半二重モードでコマンドを実行中であっても、ホスト装置100と不揮発性記憶装置110との間で、コマンドやメッセージ等を伝達することができる。この結果、通信システム1では、半二重モードでのデータ読み出し、または書き込みの最中であっても、WaitやBusy等の割り込み要求に迅速に対応することが可能となる。
したがって、本実施形態の通信システム1では、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。また、通信システム1では、「Wait」や「Busy」等の割り込み通知を伝送するための外部伝送路を1チャンネル追加する必要もないので、インターフェース装置の回路規模が増大し、コストアップを招くこともない。
一方、通信システム1において、それほど高速なデータ読み出しを必要としない場合は、通信システム1を全二重モードのままにしておき、データを読み出す、あるいは書き込むコマンドである通常Readコマンドまたは通常Writeコマンドを発行すればよい。
通常Read時に、ホスト装置100がWait指示を出す場合は、初期化直後にダウンリンクに設定されている第1伝送路121上に任意のタイミングでWait通知パケットを送信し、さらに、Waitを解除するときも第1伝送路121上に任意のタイミングでWait解除パケットを送信すればよい。
通常Write時も同様に、初期化直後にアップリンクに設定されている第2伝送路122上に任意のタイミングでBusy通知およびBusy解除パケットを送信すればよい。
なお、本実施形態では、通信システム1において、全二重モード時にデータパケットを送らないものとして説明しているが、全二重モード期間であっても第1伝送路121および第2伝送路122を用いてデータパケットを送受信することが可能である。
さらに、通信システム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を決定する方法であってもよい。つまり、このパケット数Nを決定する方法では、パケット数Nを、バッファサイズの小さい装置を基準にして決定するので、通信システム1の通信性能を最大限に引き出すことが可能となる。
また、パケット数Nの決定方法は、ホスト装置100および不揮発性記憶装置110(スレーブ装置)の処理速度性能に基づいてパケット数Nを決定する方法であってもよい。例えば、ホスト装置100の処理速度、動作クロックがそれぞれP1、C1であり、不揮発性記憶装置110(スレーブ装置)の処理速度、動作クロックがそれぞれP2、C2であり、通信パケットのパケットサイズがAである場合、P1、P2、C1、C2、およびAの全部若しくは一部に基づいて、パケット数Nを決定するようにしてもよい。なお処理速度性能は、ホスト装置100または不揮発性記憶装置110(スレーブ装置)に実装されているプロセッサ処理能力、同じくホスト装置100または不揮発性記憶装置110(スレーブ装置)に実装されているRAMやフラッシュメモリ等記録媒体への読み書き速度、外部との通信を行う外部通信路の伝送速度の全部若しくは一部から決まる。
また、上記では、モード切り換えのトリガとなる送受信データパケット数Nは、初期化コマンドのパラメータで予めホスト装置100から不揮発性記憶装置110に対し通知する方法について説明した。すなわち、ホスト装置100が、自身(ホスト装置100)のI/O空間のアドレス30(h)“DIR C”に“N”を設定した上で、ホスト装置100のパケット生成部142により、I/O R/W リクエストパケットを生成し、不揮発性記憶装置110のI/O空間のアドレス30(h)“DIR C”に書き込みを行う(Writeをする)要求とその書き込み値を“N”としたパケットを伝送し、不揮発性記憶装置110がこれを受信して、I/O空間のアドレス30(h)“DIR C”に“N”を設定する(書き込む)方法、について説明した。しかし、この方法に限定されることはなく、通信システム1において、初期化コマンドではなく、高速Readコマンド、及び/又は高速Writeコマンドに、モード切り換えのトリガとなる送受信データパケット数Nを格納するフィールドを定義して、高速Readコマンド、及び/又は高速Writeコマンドに含めて伝送するようにしてもよい。
この方法は、例えば、図17のMemory R/W リクエストパケット1702の“Argument”1722の先頭バイトに、図18に示すビット3〜ビット0の“DIR Ctrl”フィールドを定義して、前記“DIR Ctrl”に、モード切り換えのトリガとなる送受信データパケット数Nを格納することで、実現することができる。
また、通信システム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”に書き込むようにしてもよい。
これにより、通信システム1において、モード切り換えのトリガとなる送受信データパケット数Nを、初期化コマンドのパラメータで予めホスト装置100から不揮発性記憶装置110に対し通知したときと、同様の動作が可能になる。
この方法によれば、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からネットワークを制御する機能とを有する。
図4に示すように、通信システム1Aにおいて、ホスト装置100が高速Readコマンドを発行したとき、リモート装置480内の図示しないメモリ部から、ネットワーク通信路481、ネットワークインターフェース部470を介してパケット生成部164にデータが格納され、パケット化された上で半二重モードにてホスト装置100に送信される。
また、通信システム1Aにおいて、高速Write時は、半二重モードにて、ホスト装置100からデータパケットが送信され、パケット解析部163で取り出されたデータ本体は、ネットワークインターフェース部470、ネットワーク通信路481を介してリモート装置480内のメモリ部に格納される。
なお、ネットワーク通信路481は、有線ネットワーク、無線ネットワークいずれでも実現可能である。
以上により、通信システム1Aにおいても、通信システム1と同様に、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。
[第2実施形態]
<2.1:通信システムの構成>
図5は、本発明の第2実施形態に係る通信システム2の構成を示したブロック図である。
図5に示すように、通信システム2は、ホスト装置500と、スレーブ装置としての不揮発性記憶装置510と、を備える。そして、ホスト装置500と不揮発性記憶装置510とは、第1伝送路121、第2伝送路122、クロック伝送路123により接続されている。
ホスト装置500は、少なくともユーザーインターフェース部131、アプリケーション部132、メモリ部133、およびホストインターフェース部540を備える。
ホストインターフェース部540は、クロック送信部141、パケット生成部142、伝送路切換制御部543、パケット解析部144を含む。ホストインターフェース部540は、クロックカウンタを有していない点が、第1実施形態に係るホストインターフェース部140とは異なる。
不揮発性記憶装置510は、少なくともスレーブインターフェース部560、不揮発性メモリ部読み書き制御部170および不揮発性メモリ部171を備える。
スレーブインターフェース部560は、クロック再生成部161、伝送路切換制御部562、パケット解析部163、パケット生成部164、クロックカウンタ165を備える。
なお、本実施形態において、第1実施形態と同様の部分については、同一の符号を付し、詳細な説明を省略する。
図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と、を備える。
ホスト装置側の切換条件検出部640は、パケット生成部142、およびパケット解析部144の状態を監視して切換条件が満たされているか否かを検出する。そして、切換条件検出部640は、切換条件の充足状況に応じて入出力端子641、642を、それぞれ、送信状態または受信状態に設定する。
同様に、切換条件検出部660は、パケット解析部163、パケット生成部164、クロックカウンタ165の状態を監視して切換条件の充足状況を検出する。そして、切換条件の充足状況に応じて入出力端子661、662を送信状態または受信状態に設定する。
<2.2:通信システムの動作>
図7A、Bおよび図13A、Bは、第2実施形態における第1伝送路121および第2伝送路122上を伝送されるパケットを時系列に示したタイミング図(タイミングチャート)である。
以下、図5から図7A、B、および図13A、Bを用いて、本実施形態に係る通信システム2の動作を、第1実施形態との相違点を中心に説明する。
(2.2.1:高速Readの動作)
まず、図7A、Bのタイミング図を参照しながら、ユーザーが高速データReadをユーザーインターフェース部131に指示したときの動作を説明する。
第1実施形態と同様に、不揮発性記憶装置510がホスト装置500に装着されたとき、通信システム2は、図6Aに示す全二重モードとなる。通信システム2において、初期化コマンドパケットが送信(701)された後、高速Readコマンドパケットが不揮発性記憶装置510に送信される(702)と、第1伝送路121がアップリンクに設定される(703)。この結果、通信システム2は、図6Bに示す半二重モードとなる。
伝送路切換制御部562の切換条件検出部660は、パケット生成部164が4個のデータパケットを送信したことを検出し、第1伝送路121の入出力端子661を受信状態に設定する。
また、伝送路切換制御部543の切換条件検出部640は、パケット解析部144が4個のデータパケットを受信したことを検出し、第1伝送路121の入出力端子641を送信状態に設定する。
これにより、第1伝送路121はダウンリンクに設定され(704)、通信システム2は、図6Aに示す全二重モードとなる。
第1伝送路121がダウンリンクに設定されたとき、クロックカウンタ165は、クロック再生成部161から供給されるクロックを元にクロック数の計上を開始する。
スレーブインターフェース部560内の切換条件検出部660は、第1伝送路121がダウンリンクに切り換わった時点から所定の時間Tが経過したことを、クロックカウンタ165を監視することで検出する。このとき、切換条件検出部660は、パケット生成部164に対し切換通知パケットを生成するよう指示する。
生成された切換通知パケットは、アップリンクに設定されている第2伝送路122を介してホスト装置500に送信される(705)。
伝送路切換制御部562の切換条件検出部660は、パケット生成部164が切換通知パケットを送信したことを検出し、第1伝送路121の入出力端子661を送信状態に設定する。
また、伝送路切換制御部543の切換条件検出部640は、パケット解析部144が切換通知パケットを受信したことを検出し、第1伝送路121の入出力端子641を受信状態に設定する。
これにより、第1伝送路121は、アップリンクに設定される(706)。
以上のように、切換通知パケットを用いることで、通信システム2では、ホストインターフェース部540のクロックカウンタを省略することができるとともに、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。
また、図7Bに示すように、第1実施形態と同様に、通信システム2では、図6Aに示す全二重モードのとき、ホスト装置500は、不揮発性記憶装置510に対してWait等の割り込み要求を行う(707)ことができる。
(2.2.2:高速Writeの動作)
次に、図13A、Bのタイミング図を参照しながら、ユーザーが高速データWriteを指示したときの通信システム2の動作を、高速データReadとの相違点を中心に説明する。
通信システム2において、初期化コマンドパケットが送信(1301)された後、高速Writeコマンドパケットが不揮発性記憶装置510に送信され(1302)、不揮発性記憶装置510からホスト装置500に対して高速Writeコマンドに対するレスポンスパケットが返送される(1303)と、第2伝送路122がダウンリンクに設定される(1304)。この結果、通信システム2は、図6Cに示す半二重モードとなる。
伝送路切換制御部543の切換条件検出部640は、パケット生成部142が4個のデータパケットを送信したことを検出し、第2伝送路122の入出力端子642を受信状態に設定する。
また、伝送路切換制御部562の切換条件検出部660は、パケット解析部163が4個のデータパケットを受信したことを検出し、第2伝送路122の入出力端子662を送信状態に設定する。
これにより、第2伝送路122は、アップリンクに設定され(1305)、通信システム2は、図6Aに示す全二重モードとなる。
通信システム2において、第2伝送路122がアップリンクに設定されたとき、クロックカウンタ165は、クロック再生成部161から供給されるクロックを元にクロック数の計上を開始する。
スレーブインターフェース部560内の切換条件検出部660は、第2伝送路122がアップリンクに切り換わった時点から所定の時間Tが経過したことを、クロックカウンタ165を監視することで検出する。このとき、切換条件検出部660は、パケット生成部164に対し切換通知パケットを生成するよう指示する。
生成された切換通知パケットは、アップリンクに設定されている第2伝送路122を介してホスト装置500に送信される(1306)。
伝送路切換制御部562の切換条件検出部660は、パケット生成部164が切換通知パケットを送信したことを検出し、第2伝送路122の入出力端子662を受信状態に設定する。
また、伝送路切換制御部543の切換条件検出部640は、パケット解析部144が切換通知パケットを受信したことを検出し、第2伝送路122の入出力端子642を送信状態に設定する。
これにより、第2伝送路122は、ダウンリンクに設定される(1307)。
以上のように、切換通知パケットを用いることで、通信システム2では、ホストインターフェース部540のクロックカウンタを省略することができるとともに、半二重モードによる高速なデータ伝送と、半二重モード中の割り込み要求の速やかな実行を両立させることができる。
また、図13Bに示すように、第1実施形態と同様、通信システム2では、図6Aに示す全二重モードのとき、不揮発性記憶装置510は、ホスト装置500に対してBusy等の割り込み要求を行う(1308)ことができる。
以上説明したように、本実施形態の通信システム2では、全二重モードから半二重モードの切り換えタイミングを、切換通知パケットにより不揮発性記憶装置510からホスト装置500に通知することで、ホスト装置500においてクロックカウントがなくても第1実施形態と同様の効果を得ることができる。
なお、ホスト装置500がクロックカウンタを持ち、切換通知パケットをホスト装置500から不揮発性記憶装置510へ通知することで、不揮発性記憶装置510がクロックカウンタを持たないようにしてもよい。
本実施形態においても、全二重モード時にデータパケットを送らないものとして説明していたが、全二重モード期間であっても第1伝送路121および第2伝送路122を用いてデータパケットを送受信することが可能である。この場合は、所定の時間Tが経過してもデータパケット送信中であれば、当該データパケットの送信完了後に切換通知パケットを送信すればよい。これにより、全二重モード時のデータパケット送信を中断することなく、確実にデータ伝送を完了できる。
[第3実施形態]
<3.1:通信システムの構成>
図8は、本発明の第3実施形態に係る通信システム3の構成を示したブロック図である。
図8に示すように、通信システム3は、ホスト装置800と、不揮発性記憶装置810と、を備える。そして、ホスト装置800と不揮発性記憶装置810とは、第1伝送路121、第2伝送路122、クロック伝送路123により接続されている。
ホスト装置800は、少なくともユーザーインターフェース部131、アプリケーション部132、メモリ部133、およびホストインターフェース部840を備える。
ホストインターフェース部840は、クロック送信部141、パケット生成部142、伝送路切換制御部843、パケット解析部144を含む。ホストインターフェース部840は、クロックカウンタを有していない点が、第1実施形態に係るホストインターフェース部140とは異なる。
不揮発性記憶装置810は、少なくともスレーブインターフェース部860、不揮発性メモリ部読み書き制御部170および不揮発性メモリ部171を備える。
スレーブインターフェース部860は、クロック再生成部161、伝送路切換制御部862、パケット解析部163、およびパケット生成部164を備える。スレーブインターフェース部860は、クロックカウンタを有していない点が、上記実施形態に係るスレーブインターフェース部160、560とは異なる。
つまり、通信システム3は、ホスト装置側およびスレーブ装置側の双方に、クロックカウンタを有していない点が、前述の実施形態に係る通信システム1、1Aおよび2とは相違する。
なお、本実施形態において、前述の実施形態と同様の部分については、同一の符号を付し、詳細な説明を省略する。
図9A〜Cは、ホストインターフェース部840およびスレーブインターフェース部860の構成図であり、特に、ホスト装置側の伝送路切換制御部843およびスレーブ装置側の伝送路切換制御部862の構成を詳細に示した図である。
図9A〜Cに示すように、ホスト装置側の伝送路切換制御部843は、ホストインターフェース部840の切換条件検出部940と、第1伝送路121のホストインターフェース部840内の入出力端子941と、第2伝送路122のホストインターフェース部840内の入出力端子942と、を備える。
スレーブ装置側の伝送路切換制御部862は、スレーブインターフェース部860の切換条件検出部960と、第1伝送路121のスレーブインターフェース部860内の入出力端子961と、第2伝送路122のスレーブインターフェース部860内の入出力端子962と、を備える。
ホスト装置側の切換条件検出部940は、パケット生成部142、およびパケット解析部144の状態を監視して切換条件が満たされているか否かを検出する。そして、切換条件検出部940は、切換条件の充足状況に応じて入出力端子941、942を、それぞれ、送信状態または受信状態に設定する。
同様に、切換条件検出部960は、パケット解析部163、パケット生成部164の状態を監視して切換条件の充足状況を検出する。そして、切換条件の充足状況に応じて入出力端子961、962を送信状態または受信状態に設定する。
<3.2:通信システムの動作>
図10A、Bは、第3実施形態における第1伝送路121および第2伝送路122上を伝送されるパケットを時系列に示したタイミング図である。
以下、図8〜図10A、B、および図14A、Bを用いて、本実施形態に係る通信システム3の動作を、前述の実施形態との相違点を中心に説明する。
(3.2.1:高速Readの動作)
まず、図10A、Bのタイミング図を参照しながら、ユーザーが高速データReadをユーザーインターフェース部131に指示したときの動作を説明する。
不揮発性記憶装置810がホスト装置800に装着された後、初期化コマンドパケットが送信され(1001)、第1伝送路121がアップリンクに設定(1003)されて、通信システム3は、図9Bに示す半二重モードとなる。そして、通信システム3において、4個のデータパケットが送受信された後、第1伝送路121がダウンリンクに設定(1004)されて、通信システム3は、図9Aに示す全二重モードとなる。通信システム3における、ここまでの動作は、第1および第2実施形態と同様である。
第1伝送路121がダウンリンクに設定された時点、もしくはそれ以前の所定の時点を起点として、伝送路切換制御部843の切換条件検出部940は、パケット生成部142を監視し、ホスト装置800から不揮発性記憶装置810に対して発行すべき命令があるか否かを検出する。
ここで、発行すべき命令が存在しない場合、切換条件検出部940は、パケット生成部142に対して切換通知パケットの生成を指示する。そして、生成された切換通知パケットは、第1伝送路121経由で、不揮発性記憶装置810に送信される(1005)。
伝送路切換制御部843の切換条件検出部940は、切換通知パケットがパケット生成部142より送信されたことを検出すると、第1伝送路121の入出力端子941を受信状態に設定する。
また、伝送路切換制御部862の切換条件検出部960は、切換通知パケットがパケット解析部163で受信されたことを検出すると、第1伝送路121の入出力端子961を送信状態に設定する。
これにより、第1伝送路121はアップリンクに設定され(1006)、通信システム3は、図9Bに示す半二重モードとなる。
また、図10Bに示すように、第1伝送路121がダウンリンクに設定されたときに、伝送路切換制御部843の切換条件検出部940がパケット生成部142に発行すべきパケット(例えば、Wait通知パケット)があることを検知した場合、パケット生成部142は、直ちに当該パケットを不揮発性記憶装置810に送信する(1007)。
これにより、ホスト装置800は、不揮発性記憶装置810に対して、割り込み要求を実行できる。
(3.2.2:高速Writeの動作)
次に、図14A、Bのタイミング図を参照しながら、ユーザーが高速データWriteを指示したときの通信システム3の動作を、高速データReadとの相違点を中心に説明する。
通信システム3において、初期化コマンドパケットが送信(1401)され、レスポンスパケットが返送(1403)され、さらに、第2伝送路122がダウンリンクに設定(1404)されて、通信システム3は、図9Cに示す半二重モードとなる。そして、4個のデータパケットの送受信を終えて、第2伝送路122がアップリンクに設定(1405)されて、通信システム3は、図9(a)に示す全二重モードとなる。
通信システム3における、以上の動作は、第1および第2実施形態と同様である。
通信システム3において、第2伝送路122がアップリンクに設定された時点、もしくはそれ以前の所定の時点を起点として、伝送路切換制御部862の切換条件検出部960は、パケット生成部164を監視し、不揮発性記憶装置810からホスト装置800に対して発行すべき命令があるか否かを検出する。
ここで、発行すべき命令が存在しない場合、切換条件検出部960は、パケット生成部164に対して切換通知パケットの生成を指示する。切換通知パケットは、第2伝送路122経由で、ホスト装置800に送信される(1406)。伝送路切換制御部862の切換条件検出部960は、切換通知パケットがパケット生成部164より送信されたことを検出すると、第2伝送路122の入出力端子962を受信状態に設定する。また、伝送路切換制御部843の切換条件検出部940は、切換通知パケットがパケット解析部144で受信されたことを検出すると、第2伝送路122の入出力端子942を送信状態に設定する。
これにより、第2伝送路122は、ダウンリンクに設定され(1407)、通信システム3は、図9Cに示す半二重モードとなる。
また、図14Bに示すように、第2伝送路122がアップリンクに設定されたときに、伝送路切換制御部862の切換条件検出部960がパケット生成部164に発行すべきパケット(例えば、Busy通知パケット)があることを検知した場合、パケット生成部164は、直ちに当該パケットをホスト装置800に送信する(1408)。
これにより不揮発性記憶装置810は、ホスト装置800に対して、割り込み要求を実行できる。
以上説明したように、本実施形態に係る通信システム3では、全二重モードから半二重モードの切り換えタイミングを、高速Read時はホスト装置800から不揮発性記憶装置810へ、高速Write時は不揮発性記憶装置810からホスト装置800へ、切り換え通知パケットを送信する。したがって、通信システム3では、全二重モードから半二重モードへの切り換えの際にクロックカウンタによる計時が不要となる。
さらに、本実施形態の通信システム3では、WaitやBusyなどの割り込み要求がなければ、直ちに切り換え通知パケットを送信し半二重モードでのデータパケット伝送を再開することで、伝送路の使用効率をより高めることができる。
[第4実施形態]
次に、第4実施形態について、図22〜図28を参照しながら説明する。
なお、上記実施形態と同様の部分については、同一符号を付し、詳細な説明を省略する。
<4.1:通信システム構成>
図22は、第4実施形態に係る通信システム4の構成を示したブロック図である。
図22に示すように通信システム4は、ホスト装置100Aとスレーブ装置の一種である不揮発性記憶装置110Aとを備える。そして、ホスト装置100Aと不揮発性記憶装置110Aとは、第1伝送路(第1高速バス)121、第2伝送路(第2高速バス)122、第3伝送路(低速バス)123、クロック伝送路(クロックバス)124により接続されている。
ホスト装置100Aは、少なくともユーザーインターフェース部131、アプリケーション部132、メモリ部133、ホストインターフェース部140Aを備える。
ホストインターフェース部140は、クロック送信部141A、パケット生成部142A、伝送路(バス)切換制御部143A、パケット解析部144A、信号生成部145A、信号解析部146Aを備える。
不揮発性記憶装置110は、スレーブインターフェース部160A、不揮発性メモリ読み書き制御部170および不揮発性メモリ171を備える。
スレーブインターフェース部160Aは、クロック再生成部161A、伝送路(バス)切換制御部162A、パケット解析部163A、パケット生成部164A、信号解析部165A、信号生成部166Aを備える。
なお、パケット生成部142Aおよび164A、パケット解析部144Aおよび163Aは、適当な大きさのバッファを備えているものとする。
なお一般的に、高速バスには差動伝送方式が用いられ、低速バスにはシングルエンド伝送方式が用いられる。
<4.2:通信システムの動作>
以下、本実施形態における通信システム4の動作について、図面を用いて説明する。
(4.2.1:起動〜初期化〜定常状態)
不揮発性記憶装置110Aが、ホスト装置100Aに装着されたとき、ホストインターフェース部140Aがアクティブになる。また、ホストインターフェース部140Aのクロック送信部141Aからクロックバス124を介してスレーブインターフェース部160Aのクロック再生成部161Aにクロックが供給され、スレーブインターフェース部160Aがアクティブになる。このとき、クロック再生成部161Aで生成されるクロックは、不揮発性記憶装置110A全体に供給される。
図23は、ホストインターフェース部140Aおよびスレーブインターフェース部160Aの構成図であり、特に、ホスト装置側の伝送路(バス)切換制御部143Aおよびスレーブ装置側の伝送路(バス)切換制御部162Aの構成を詳細に示した図であり、ホストインターフェース部140Aおよびスレーブインターフェース部160Aがアクティブになった直後の設定について説明するための図である。
図23に示すように、ホスト装置側の伝送路(バス)切換制御部143Aは、切換条件検出部240Aと、第1高速バス121の入出力端子241Aと、第2高速バス122の入出力端子242Aと、低速バス123の入出力端子243Aと、を備える。
また、図23に示すように、スレーブ装置側の伝送路(バス)切換制御部162Aは、切換条件検出部260Aと、第1高速バス121の入出力端子261Aと、第2高速バス122の入出力端子262Aと、低速バス123の入出力端子263Aと、を備える。
ホスト装置側の切換条件検出部240Aは、パケット生成部142A、パケット解析部144Aが送受信したパケットを監視して切換条件が満たされているか否かを検出する。そして、切換条件検出部240Aは、切換条件の充足状況に応じて入出力端子241A、242A、243Aを、それぞれ、送信状態または受信状態に設定する。
同様に、スレーブ装置側の切換条件検出部260は、パケット解析部163A、パケット生成部164Aが送受信したパケットを監視して切換条件が満たされているか否かを検出する。そして、切換条件の充足状況に応じて入出力端子261A、262A、263Aを、それぞれ、送信状態または受信状態に設定する。
図23では、第1高速バス121のホストインターフェース部140A側の入出力端子241Aは、送信状態(T)に設定されており、スレーブインターフェース部160A側の入出力端子261Aは、受信状態(R)に設定されている。また、第2高速バス122のホストインターフェース部140A側の入出力端子242Aは、受信状態(R)に設定されており、スレーブインターフェース部160A側の入出力端子262Aは、送信状態(T)に設定されている。
このとき、第1高速バス121の通信方向はダウンリンクに設定され、第2高速バス122の通信方向はアップリンクに設定されることになる。図23では、第1高速バス121および第2高速バス122の向きが異なるので、通信システム4は、双方からデータを同時に送信できる全二重モードになっている。通信システム4において、全二重モードでは、低速バス123のホストインターフェース部140A側の入出力端子243Aを受信状態(R)に設定し、スレーブインターフェース部160A側の入出力端子263Aを受信状態(R)に設定する。このとき、通信システム4では、低速バス123は、通信不可に設定されることになる。
この状態で、ホスト装置100Aは、初期化コマンドパケットを第1高速バス121経由で不揮発性記憶装置110Aのパケット解析部163Aに供給する。パケット解析部163Aでは、上記パケットが初期化コマンドであることが解析され、必要な初期化が実施される。初期化完了後、通信システム4は、定常状態(全二重モード)になる。
(4.2.2:高速Readの動作)
図24は、通信システム4において、ホスト装置100Aより高速Readコマンドが発行されたときの第1高速バス121、第2高速バス122、および低速バス123上を伝送されるパケットまたは信号を時系列に示したタイミング図である。
通信システム4において、定常状態で、ユーザーは、高速データReadをホスト装置100Aのユーザーインターフェース部131に指示することができる。このとき、ユーザーインターフェース部131は、アプリケーション部132に高速データRead指示を伝達する。アプリケーション部132は、メモリ部133に読み出すデータの格納領域が存在することを確認した後、パケット生成部142に高速Readコマンドパケットを生成させる。高速Readコマンドには、読み出し先のアドレス、読み出しサイズが多重されているものとする。
高速Readコマンドパケットは、第1高速バス121経由で不揮発性記憶装置110Aのパケット解析部163Aに供給される(301)。パケット解析部163では、上記パケットが高速Readコマンドであることが解析される。
ホスト装置100Aのバス切換制御部143Aの切換条件検出部240Aは、パケット生成部142Aが高速Readコマンドパケットを送信したことを検出し、第1高速バス121の入出力端子241を受信状態に設定する。また、不揮発性記憶装置110Aのバス切換制御部162の切換条件検出部260Aは、パケット解析部163Aが高速Readコマンドパケットを受信したことを検出し、第1高速バス121の入出力端子261Aを送信状態に設定する。
これにより、通信システム4において、第1高速バス121はアップリンクに設定される(302)。さらに、ホスト装置100Aのバス切換制御部143Aの切換条件検出部240Aは、低速バス123の入出力端子243Aを送信状態に設定する。
これにより、低速バス123はダウンリンクに設定される(303)。
この結果、通信システム4は、半二重Readモードとなり、このときのバス切換制御部143Aおよび162Aによる設定は、図25に示すようになる。
通信システム4では、半二重Readモードに切り換わった後、スレーブインターフェース部160Aは、不揮発性メモリ読み書き制御部170を介し、高速Readコマンドパケットに多重されたアドレスに対応する不揮発性メモリ171上の領域から、同じくコマンドに多重された読み出しサイズだけデータを順次取得し、取得したデータをパケット生成部164Aに供給する。そして、不揮発性記憶装置110Aのパケット生成部164Aは、パケットの種別等を示したヘッダと、不揮発性メモリ読み書き制御部170により読み出されたデータを適当なサイズに分割して生成されるボディと、からデータパケットを生成する。
次に、パケット生成部164Aは、生成したデータパケットを第1高速バス121および第2高速バス122に振り分けながら、不揮発性記憶装置110Aの伝送路(バス)切換制御部162Aを介してホスト装置100に送信する。本実施形態では、1番目のデータパケットDATA(1)を第1高速バス121に、2番目のデータパケットDATA(2)を第2高速バス122に振り分けて送信する(304)。
ホスト装置100Aに送信された上記DATA(1)、DATA(2)は、ホスト装置100Aの伝送路(バス)切換制御部143Aを介して、パケット解析部144Aに蓄積される。パケット解析部144では、これらのパケットがデータパケットと解析され、ヘッダを除いたボディ、すなわちデータ本体が抽出され、抽出されたデータ本体がメモリ部133に格納される。
以下、順次、3番目のデータパケットDATA(3)と4番目のデータパケットDATA(4)、5番目のデータパケットDATA(5)と6番目のデータパケットDATA(6)についても同様に、不揮発性記憶装置110Aからホスト装置100に送信される(305、306)。
2k−1番目のデータパケットDATA(2k−1)と2k番目のデータパケットDATA(2k)の転送中(307)、ユーザーが高速Readを中止するようホスト装置100Aのユーザーインターフェース部131に指示したとき、ユーザーインターフェース部131は、アプリケーション部132を介してホストインターフェース部140Aの信号生成部145Aに上記指示を伝達する。
信号生成部145Aは、所定の長さのパルスを生成し、ダウンリンクに設定されている低速バス123経由で、スレーブインターフェース部160Aに上記パルスを送信する(308)。
信号生成部145Aにより生成された上記パルスは、スレーブインターフェース部160Aの信号解析部165Aに供給される。
信号解析部165Aは、上記パルスを受信したとき、「高速Read中止」を指示されていると解析(判断)し、不揮発性メモリ読み書き制御部170に不揮発性メモリ171からのデータ取得を中止するよう指示する。同時に、信号解析部165Aは、パケット生成部164Aに対してコマンド中止受諾パケットを生成するよう指示する。
パケット生成部164Aにより生成されたコマンド中止受諾パケットは、アップリンクに設定されている第2高速バス122を介してホスト装置100Aに送信される(309)。
伝送路(バス)切換制御部162Aの切換条件検出部260Aは、パケット生成部164Aがコマンド中止受諾パケットを送信したことを検出し、第1高速バス121の入出力端子261を受信状態に設定する。
また、ホスト装置100Aの伝送路(バス)切換制御部143Aの切換条件検出部240Aは、パケット解析部144Aがコマンド中止受諾パケットを受信したことを検出し、第1高速バス121の入出力端子241を送信状態に設定する。これにより、第1高速バス121は、ダウンリンクに設定される(310)。
さらに、切換条件検出部240Aは、低速バス123の入出力端子243を受信状態に設定する。これにより、低速バス123は通信不可に設定される(311)。
この結果、通信システム4は、全二重モード(定常状態)となり、伝送路(バス)切換制御部143Aおよび162Aによる設定は、図23に示すようになる。
(4.2.3:高速Writeの動作)
図26は、通信システム4において、ホスト装置100Aより高速Writeコマンドが発行されたときの第1高速バス121、第2高速バス122、および低速バス123上を伝送されるパケットまたは信号を時系列に示したタイミング図である。
通信システム4において、定常状態では、ユーザーは、高速データWriteをホスト装置100Aのユーザーインターフェース部131に指示することができる。このときユーザーインターフェース部131はアプリケーション部132に高速データWrite指示を伝達する。
アプリケーション部132は、不揮発性メモリ171に書き込むべきデータがメモリ部133に保持されていることを確認した後、ホスト装置100Aのパケット生成部142Aに高速Writeコマンドパケットを生成させる。高速Writeコマンドには、書き込み先のアドレス、書き込みサイズが多重されているものとする。
高速Writeコマンドパケットは、第1高速バス121経由で、不揮発性記憶装置110Aのパケット解析部163Aに供給される(501)。パケット解析部163Aでは、上記パケットが高速Writeコマンドであることが解析される。
不揮発性記憶装置110Aにて、高速Writeが可能であれば、パケット生成部164Aは、コマンド受諾レスポンスパケットを生成し、生成したコマンド受諾レスポンスパケットをホスト装置100に送信する(502)。
不揮発性記憶装置110Aでは、伝送路(バス)切換制御部162Aの切換条件検出部260Aは、パケット生成部164Aがコマンド受諾レスポンスパケットを送信したことを検出し、第2高速バス122の入出力端子262Aを受信状態に設定する。
また、ホスト装置100Aでは、伝送路(バス)切換制御部143Aの切換条件検出部240Aは、パケット解析部144Aがコマンド受諾レスポンスパケットを受信したことを検出し、第2高速バス122の入出力端子242Aを送信状態に設定する。これにより、第2高速バス122はダウンリンクに設定される(503)。
さらに、不揮発性記憶装置110Aでは、伝送路(バス)切換制御部162Aの切換条件検出部260Aは、低速バス123の入出力端子263Aを送信状態に設定する。これにより、低速バス123はアップリンクに設定される(504)。
この結果、通信システム4は、半二重Writeモードとなり、このときの伝送路(バス)切換制御部143Aおよび162Aによる設定は、図27に示すようになる。
通信システム4において、半二重Writeモードに切り換わった後、ホストインターフェース部140Aは、メモリ部133に保持されているデータをパケット生成部142Aに供給する。
パケット生成部142Aは、パケットの種別等を示したヘッダと、不揮発性記憶装置110Aに書き込むデータを適当なサイズに分割して生成されるボディと、からデータパケットを生成する。
次に、パケット生成部142Aは、生成したデータパケットを第1高速バス121および第2高速バス122に振り分けながら、伝送路(バス)切換制御部143Aを介して不揮発性記憶装置110Aに送信する。本実施形態の通信システム4では、1番目のデータパケットDATA(1)を第1高速バス121、2番目のデータパケットDATA(2)を第2高速バス122に振り分けて送信する(505)。
ホスト装置100Aから不揮発性記憶装置110Aに送信された上記DATA(1)、DATA(2)は、不揮発性記憶装置110Aの伝送路(バス)切換制御部162Aを介して、パケット解析部163Aに蓄積される。パケット解析部163Aでは、これらのパケットは、データパケットであると解析(判定)され、ヘッダを除いたボディ、すなわちデータ本体が、不揮発性メモリ読み書き制御部170に供給(出力)される。不揮発性メモリ読み書き制御部170は、不揮発性メモリ171に対して、高速Writeコマンドパケットに多重されたアドレスに対応する不揮発性メモリ171上の領域に、同じく高速Writeコマンドに多重された書き込みサイズに達するまでデータを書き込むよう制御する。
以下、3番目のデータパケットDATA(3)と4番目のデータパケットDATA(4)についても同様に、ホスト装置100Aから不揮発性記憶装置110Aに送信される(506)。
不揮発性記憶装置110Aのパケット解析部163Aに適当なサイズのバッファを備えていることは前述したが、通常、第1高速バス121もしくは第2高速バス122上でのデータ転送速度より、不揮発性メモリ171への書き込み速度の方が遅いため、不揮発性記憶装置110Aがパケットを間断なく受信し続けると、不揮発性記憶装置110Aのパケット解析部163A内のバッファ残量がなくなり、受信したデータがオーバーフローする恐れがある。
図26に示す場合において、不揮発性記憶装置110Aにおいて、DATA(3)およびDATA(4)を受信し、バッファ残量が所定値以下になると判明したと仮定する。この場合、不揮発性記憶装置110Aのパケット解析部163Aは、ホスト装置100Aからのデータ転送を中断すべく、スレーブインターフェース部160A内の信号生成部166Aにその旨の指示を伝達する。
信号生成部166Aは、所定の長さのパルスを生成し、アップリンクに設定されている低速バス123経由で、ホスト装置100Aのホストインターフェース部140Aに上記パルスを送信する(507)。
信号生成部166Aにより生成された上記パルスは、ホストインターフェース部140Aの信号解析部146Aに供給される。
信号解析部146Aは、上記パルスを受信したとき、「高速Write中断」を指示されていると解析(判断)し、パケット生成部142Aに対して、データ送信を中断するよう指示する。
不揮発性記憶装置110Aにおいて、不揮発性記憶装置110Aがホスト装置100Aから受信したデータの不揮発性メモリ171への書き込みが進み、パケット解析部163A内のバッファ残量が所定値以上になったと判明したとき、パケット解析部163Aは、ホスト装置100Aからのデータ転送を再開すべく、スレーブインターフェース部160A内の信号生成部166Aにその旨の指示を伝達する。
不揮発性記憶装置110Aの信号生成部166Aは、所定の長さのパルスを生成し、アップリンクに設定されている低速バス123経由でホストインターフェース部140Aに上記パルスを送信する(508)。
信号生成部166Aにより生成された上記パルスは、ホストインターフェース部140Aの信号解析部146Aに供給される。
ホスト装置100Aの信号解析部146Aは、上記パルスを受信したとき、高速Write再開を指示されていると解析(判断)し、パケット生成部142Aに対して、不揮発性記憶装置110Aに対するデータ送信を再開するよう指示する。
その結果、5番目のデータパケットDATA(5)と6番目のデータパケットDATA(6)とが、ホスト装置100Aから不揮発性記憶装置110に送信される(509)。
通信システム4において、2k−1番目のデータパケットDATA(2k−1)と2k番目のデータパケットDATA(2k)との伝送により、伝送データサイズが、高速Writeコマンドに多重された書き込みサイズに達する場合(510)、ホスト装置100Aの伝送路(バス)切換制御部143Aの切換条件検出部240Aは、パケット生成部142AがDATA(2k)を送信したことを検出し、第2高速バス122の入出力端子242Aを受信状態に設定する。
また、不揮発性記憶装置110Aの伝送路(バス)切換制御部162Aの切換条件検出部260Aは、パケット解析部163AがDATA(2k)を受信したことを検出し、第2高速バス122の入出力端子262Aを送信状態に設定する。これにより、通信システム4において、第2高速バス122はアップリンクに設定される(511)。
さらに、不揮発性記憶装置110Aの切換条件検出部260Aは、低速バス123の入出力端子263Aを受信状態に設定する。これにより、低速バス123は通信不可に設定される(512)。
この結果、通信システム4は、全二重モード(定常状態)となり、伝送路(バス)切換制御部143および162による設定は、図23に示すようになる。
以上説明したように、通信システム4では、2本の高速バスを同時に使用してデータを高速に読み出す半二重Readモードの場合、低速バスをアップリンクに設定し、ホスト装置100Aからパルス信号を送信することで、Readを中止させることができる。
また、通信システム4では、2本の高速バスを同時に使用してデータを高速に書き込む半二重Writeモードの場合、低速バスをダウンリンクに設定し、スレーブ装置(不揮発性記憶装置)110Aからパルス信号をホスト装置100Aに送信することで、ホスト装置100Aに対してデータ送信の可否を通知することができる。
なお、本実施形態においては、スレーブ装置(不揮発性記憶装置)110Aからホスト装置100Aに対する通知は、データ伝送中は「書き込み中断」を意味するものとし、書き込み中断中は「データ伝送再開」を意味するものとしたが、これに限定されることはなく、例えば、通知は、単なる割り込みとし、ホスト装置100Aは、書き込み中断中に高速バスを用いてスレーブ装置(不揮発性記憶装置)110Aに要因を問い合わせる構成としてもよい。
また、通信システム4において、定常状態である全二重モードでのデータReadもしくはデータWriteも可能である。たとえば、通信システム4が、図23に示される状態に設定されているとすると、データReadの場合、アップリンクに設定されている第2高速バス122はデータ伝送に使用されるので、第1高速バス121を使用してRead中止指示を行うことができる。
また、データWriteの場合、ダウンリンクに設定されている第1高速バス121はデータ伝送に使用されるので、第2高速バス122を使用してデータ書き込み可否の通知を行うことができる。
ところで、本実施形態の通信システム4では、低速バス123に所定の長さのパルスを伝送するとしたが、これに限定されることはなく、例えば、低速バス123に所定の長さのビットパターンを伝送するようにしてもよい。この場合、各ビットパターンに複数種類の指示を割り当てることができ、より複雑な指示を行うことも可能である。
また、本実施形態の通信システム4では、スレーブ装置が、不揮発性メモリを有する不揮発性記憶装置110Aである場合について説明したが、これに限定されることはなく、例えば、図28に示すようなスレーブインターフェース部160、ネットワークインターフェース部770を備えるネットワークインターフェース装置710Aにおいても同様の効果を得ることが可能である。
ネットワークインターフェース装置710Aは、リモート装置780とネットワーク通信路781を介して接続されている。また、ネットワークインターフェース部770は、ネットワーク通信路781を制御する機能と、スレーブインターフェース部160Aからネットワークを制御する機能と、を有する。
図28において、ホスト装置100Aが高速Readコマンドを発行したとき、リモート装置780内のメモリ(図示せず)から、ネットワーク通信路781、ネットワークインターフェース部770を介して、ネットワークインターフェース装置710Aのパケット生成部164Aに格納されたデータは、パケット化された上で、半二重Readモードにて、ネットワークインターフェース装置710Aからホスト装置100Aに送信される。
同様に、ホスト装置100Aが高速Writeコマンドを発行したとき、ホスト装置100Aよりネットワークインターフェース装置710Aに送信されたデータパケットが半二重Writeモードにてパケット解析部163Aに送信され、ボディのみを取り出してネットワークインターフェース部770に供給される。ネットワークインターフェース部770に供給されたデータは、ネットワーク通信路781を介して、リモート装置780内のメモリ(図示せず)に書き込まれる。
通常、第1高速バス121もしくは第2高速バス122のデータ転送速度は、ネットワーク通信路781の速度より速いので、本実施形態にて説明したデータ転送中断、再開の制御が必要となる。
なお、ネットワーク通信路781は、有線ネットワーク、無線ネットワークいずれでも実現可能である。
[第5実施形態]
図29は、本発明の第5実施形態において、ホスト装置より高速Writeコマンドが発行されたときの第1高速バス121、第2高速バス122、および低速バス123上を伝送されるパケットまたは信号を時系列に示したタイミング図である。
なお、本実施形態の通信システムは、第4実施形態の通信システム4と同様の構成により実現される。
本実施形態において、第4実施形態と異なる点は、以下の点である。すなわち、本実施形態における高速Write時には、不揮発性記憶装置110Aが書き込み不可の場合、低速バス123を「HIGH」に設定し、それ以外の場合、低速バス123を「LOW」に設定する、とする点が、第4実施形態と異なる。
つまり、図29に示すように、DATA(3)およびDATA(4)を受信するとバッファ残量が所定値以下になると判明したとき(801)、スレーブ装置のパケット解析部163Aは、スレーブインターフェース部160A内の信号生成部166Aに、低速バス123を「HIGH」にするよう指示する(802)。
ホスト装置のホストインターフェース部140Aの信号解析部146Aは、低速バス123が「HIGH」であることを検出し、パケット生成部142Aに対して、データ送信を中断するよう指示する。
また、スレーブ装置のパケット解析部163Aは、バッファ残量が所定値以上になり、データ受信が再開できると判明したとき、スレーブインターフェース部160A内の信号生成部166Aに、低速バス123を「LOW」に設定するよう指示する(803)。これにより、DATA(5)およびDATA(6)の伝送が開始される(804)。
以上、本実施形態によれば、ホスト装置のホストインターフェース部140Aは、低速バス123が「HIGH」であるか「LOW」であるかを検出するのみで、不揮発性記憶装置110Aが書き込み可能であるか否かを検出することができる。このため、本実施形態に係る通信システムにおいて、上記判定のための回路をより小さくすることができる。
同様に、高速Readの場合、ホスト装置100Aが低速バス123を「LOW」から「HIGH」にして、不揮発性記憶装置110Aにデータ転送中止を指示する構成が可能である。
なお、本実施形態において、全二重モードは低速バスを通信不可状態に設定していたが、これに限定されることはなく、たとえば、全二重モードにおいて低速バスをダウンリンクに設定してホスト装置からスレーブ装置に指示が伝送できるようにしても構わない。また、2本の高速バスを介してホスト装置とスレーブ装置がネゴシエーションを行って、適宜低速バスの方向を切り換える構成としてもよい。
[他の実施形態]
なお、上記で説明した本発明のすべての実施形態において、スレーブ装置がホスト装置に装着され外部伝送路により接続されている場合について説明した。しかし、これに限定されることはなく、例えば、ホスト装置およびスレーブ装置に含まれる構成要素が1個の装置上で内部の伝送路により接続されているような構成においても、本発明と同様の効果を得ることができる。
また、本発明のすべての実施形態において、半二重モードから全二重モードへの切換を4個のデータパケットの送信完了時に実施するとして説明したが、これに限定されることはない。例えば、N個(Nは自然数)のデータパケットの送信完了時に、半二重モードから全二重モードへの切換を実行するようにしてもよい。
また、例えば、通信システムの電源投入時や、スレーブ装置が装着されてアクティブになった時点に、初期化処理として、ホスト装置およびスレーブ装置がネゴシエーションすることで、データパケット数Nおよび、各データパケットのデータ容量を決定するようにしてもよい。このとき、例えば、ホスト装置およびスレーブ装置の送受信能力(バッファリング能力等)を考慮して、データパケット数Nおよび、各データパケットのデータ容量を決定することが好ましい(例えば、ホスト装置およびスレーブ装置のうち、送受信バッファの容量の小さい方の装置の送受信能力を最大限に生かすように、データパケット数Nおよび、各データパケットのデータ容量を決定すればよい)。
また、通信システムにおいて、データパケット数Nおよび、各データパケットのデータ容量は、必ずしも固定にする必要はなく、例えば、通信システムの通信状況により、可変にしてもよい。これにより、通信システムにおいて、通信効率を向上させることができる。
さらに、ホスト装置および不揮発性記憶装置との間で、半二重モード/全二重モードの切換条件等を予め取り決めておき、その取り決めに従い、上記以外の方法により、半二重モード/全二重モードの切換を実行するものであってもよい。
なお、上記実施形態で説明した通信システムのホスト装置およびスレーブ装置において、各ブロックは、LSIなどの半導体装置により個別に1チップ化されても良いし、一部又は全部を含むように1チップ化されても良い。
なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてあり得る。
また、上記実施形態の各処理をハードウェアにより実現してもよいし、ソフトウェアにより実現してもよい。さらに、ソフトウェアおよびハードウェアの混在処理により実現しても良い。なお、上記実施形態に係る通信システムをハードウェアにより実現する場合、各処理を行うためのタイミング調整を行う必要があるのは言うまでもない。上記実施形態においては、説明便宜のため、実際のハードウェア設計で生じる各種信号のタイミング調整の詳細については省略している。
なお、本発明の具体的な構成は、前述の実施形態に限られるものではなく、発明の要旨を逸脱しない範囲で種々の変更および修正が可能である。
本発明は、ホスト装置が複数チャンネルの伝送路を使用してスレーブ装置とデータ伝送する通信システムにおいて、ホスト装置がスレーブ装置から半二重モードで高速にデータを送受信する際に、一時的に全二重モードに切り換えることでWaitやBusyといった割り込み処理を迅速に実行できるインターフェース部、ホスト装置、スレーブ装置、および通信システムを提案したものである。本発明は、少なくともインターフェース部と不揮発性メモリを有した不揮発性記憶装置、少なくともインターフェース部と有線もしくは無線ネットワークインターフェース部を有したネットワークインターフェース装置のほか、これらを装着する動画記録再生装置、静止画記録再生装置、音声記録再生装置、あるいは携帯電話等において有益である。
1、1A、2、3、4 通信システム
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)

  1. 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
    前記第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な第1伝送路用入出力端子と、
    前記第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能な第2伝送路用入出力端子と、
    前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出部と、
    前記通信モード切換条件検出部により、前記第1条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
    前記通信モード切換条件検出部により、前記第2条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御部と、
    を備え、
    前記通信モード切換条件検出部は、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、所定量のデータの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
    ンターフェース装置。
  2. 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
    前記第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な第1伝送路用入出力端子と、
    前記第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能な第2伝送路用入出力端子と、
    前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出部と、
    前記通信モード切換条件検出部により、前記第1条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
    前記通信モード切換条件検出部により、前記第2条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御部と、
    を備え、
    前記通信モード切換条件検出部は、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、N個(Nは自然数)のパケットの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
    ンターフェース装置。
  3. 前記伝送路切換制御部は、前記第2条件を、データ送受信要求またはデータ送受信命令に含めて通信相手に通知する、
    請求項1又は2に記載のインターフェース装置。
  4. 前記伝送路切換制御部は、前記インターフェース装置の初期設定時に、前記第2条件を、通信相手に通知及び/又は設定させるためのパケットを送信する、
    請求項1からのいずれかに記載のインターフェース装置。
  5. 前記第2条件が満たされたと判断するための送信もしくは受信したパケット数Nは、前記通信システムにかかるバッファサイズから決定する、
    請求項1、2、および4のいずれかに記載のインターフェース装置。
  6. 前記通信モード切換条件検出部は、前記通信システムが前記全二重通信モードでの通信に切り換えられた時点から、所定の時間Tが経過した場合に、前記第1条件が満たされたと判断する、
    請求項1からのいずれかに記載のインターフェース装置。
  7. 前記伝送路切換制御部は、前記インターフェース装置の初期設定時に、前記第1条件を、通信相手に通知及び/又は設定させるためのパケットを送信する、
    請求項1からのいずれかに記載のインターフェース装置。
  8. 前記通信モード切換条件検出部は、前記通信システムが前記全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を受信した場合に、前記第1条件が満たされたと判断する、
    請求項1からのいずれかに記載のインターフェース装置。
  9. 前記通信モード切換条件検出部は、前記通信システムが前記全二重通信モードでの通信に切り換えられた後、インターフェース切換要求命令を送信した場合に、前記第1条件が満たされたと判断する、
    請求項1からのいずれかに記載のインターフェース装置。
  10. 前記伝送路切換制御部は、
    前記全二重通信モードに切り換え後、Wait指示の割り込み通知を受信した場合、前記全二重通信モードの状態で待機し、
    前記Wait指示の割り込み通知に対応する割り込み処理の完了後に送信される割込処理完了を指示する通知を受信した場合、前記半二重通信モードへ切り換える、
    請求項1からのいずれかに記載のインターフェース装置。
  11. 前記伝送路切換制御部は、
    前記全二重通信モードに切り換え後、所定時間以内にWait指示の割り込み通知を受信しなかった場合、前記半二重通信モードへ切り換える、
    請求項1からのいずれかに記載のインターフェース装置。
  12. 不揮発性メモリと、
    前記不揮発性メモリに対する読み書き制御を行う不揮発性メモリ制御部と、
    請求項1から11のいずれかに記載のインターフェース装置と、
    を備える不揮発性記憶装置。
  13. 外部との通信を行う外部通信部と、
    前記外部通信部に対する制御を行う外部通信制御部と、
    請求項1から11のいずれかに記載のインターフェース装置と、
    を備える通信装置。
  14. 請求項1から11のいずれかに記載のインターフェース装置を含むホスト装置と、
    請求項12または13に記載の装置を含むスレーブ装置と、
    を備える通信システム。
  15. 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられる通信モード切換方法であって、
    前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出ステップと、
    前記通信モード切換条件検出ステップにより、前記第1条件が満たされたと判定された場合、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
    前記通信モード切換条件検出ステップにより、前記第2条件が満たされたと判定された場合、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御ステップと、
    を備え
    前記通信モード切換条件検出ステップにおいては、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、所定量のデータの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
    通信モード切換方法。
  16. 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられる通信モード切換方法であって、
    前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出ステップと、
    前記通信モード切換条件検出ステップにより、前記第1条件が満たされたと判定された場合、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
    前記通信モード切換条件検出ステップにより、前記第2条件が満たされたと判定された場合、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御ステップと、
    を備え、
    前記通信モード切換条件ステップにおいては、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、N個(Nは自然数)のパケットの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
    通信モード切換方法。
  17. 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
    前記第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な第1伝送路用入出力端子と、
    前記第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能な第2伝送路用入出力端子と、
    を備えるインターフェース装置に用いられる集積回路であって、
    前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出部と、
    前記通信モード切換条件検出部により、前記第1条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
    前記通信モード切換条件検出部により、前記第2条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御部と、
    を備え
    前記通信モード切換条件検出部は、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、所定量のデータの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
    集積回路。
  18. 少なくとも2チャンネルの伝送路である第1伝送路と第2伝送路とを有し、前記伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
    前記第1伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な第1伝送路用入出力端子と、
    前記第2伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、の少なくとも2つの状態に設定可能な第2伝送路用入出力端子と、
    を備えるインターフェース装置に用いられる集積回路であって、
    前記通信システムにおいて全二重による通信を行う通信モードである全二重通信モードを、前記通信システムにおいて半二重による通信を行う通信モードである半二重通信モードに、切り換えるための条件である第1条件と、前記半二重通信モードを前記全二重通信モードに切り換えるための条件である第2条件と、を設定し、設定した前記第1条件または前記第2条件を満たすか否かを判定する通信モード切換条件検出部と、
    前記通信モード切換条件検出部により、前記第1条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子の両方を入力状態、または出力状態に設定することで、前記通信モードを、前記全二重通信モードから前記半二重通信モードに切り換え、
    前記通信モード切換条件検出部により、前記第2条件が満たされたと判定された場合、前記第1伝送路用入出力端子および前記第2伝送路用入出力端子のうちの一方の入出力端子を出力状態に設定し、他方の入出力端子を入力状態に設定することで、前記通信モードを、前記半二重通信モードから前記全二重通信モードに切り換える伝送路切換制御部と、
    を備え、
    前記通信モード切換条件検出部は、前記通信システムが、前記半二重通信モードでの通信に切り換えられた時点から、N個(Nは自然数)のパケットの送信もしくは受信を完了した場合に、前記第2条件が満たされたと判断する、
    集積回路。
  19. 低速伝送路および複数の高速伝送路を有し、前記低速伝送路または複数の前記高速伝送路を用いて命令やデータの送受信を行う通信システムに用いられるインターフェース装置であって、
    前記低速伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な低速伝送路用入出力端子と、
    前記高速伝送路に接続され、命令やデータを受信する状態である入力状態と、命令やデータを送信する出力状態と、少なくとも2つの状態に設定可能な複数の高速伝送路用入出力端子と、
    前記低速伝送路用入出力端子および前記複数の高速伝送路用入出力端子の入出力状態を、それぞれを独立に設定することができ、
    前記複数の高速伝送路用入出力端子のうち少なくとも1つの前記高速伝送路用入出力端子を出力状態に設定し、当該出力状態に設定した前記高速伝送路用入出力端子以外の前記高速伝送路用入出力端子を入力状態に設定する全二重通信モードと、
    前記複数の高速伝送路用入出力端子のすべてを出力状態に設定する半二重出力モードと、
    前記複数の高速伝送路用入出力端子のすべてを入力状態に設定する半二重入力モードと、に基づいて、前記低速伝送路用入出力端子および前記複数の高速伝送路用入出力端子の入出力状態を設定する伝送路切換制御部と、
    を備え、
    前記伝送路切換制御部は、
    前記半二重出力モードでは、前記低速伝送路用入出力端子を入力状態に設定し、
    前記半二重入力モードでは、前記低速伝送路用入出力端子を出力状態に設定する、
    インターフェース装置。
  20. 前記低速伝送路用入出力端子は、シングルエンド方式による通信を行う伝送路用の入出力端子であり、
    前記複数の高速伝送路用入出力端子のうちの少なくとも1つの高速伝送路用入出力端子は、差動伝送方式による通信を行う伝送路用の入出力端子である、
    請求項19に記載のインターフェース装置。
  21. 不揮発性メモリと、
    前記不揮発性メモリに対する読み書き制御を行う不揮発性メモリ制御部と、
    請求項19または20に記載のインターフェース装置と、
    を備える不揮発性記憶装置。
  22. 外部との通信を行う外部通信部と、
    前記外部通信部に対する制御を行う外部通信制御部と、
    請求項19または20に記載のインターフェース装置と、
    を備える通信装置。
  23. 請求項19または20に記載のインターフェース装置を含むホスト装置と、
    請求項19または20に記載のインターフェース装置を含むスレーブ装置と、
    を備える通信システム。
JP2010515756A 2008-06-02 2009-05-29 インターフェース装置、通信システム、不揮発性記憶装置、通信モード切換方法および集積回路 Active JP5054818B2 (ja)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180037099A (ko) * 2016-10-03 2018-04-11 삼성전자주식회사 비휘발성 스토리지 시스템 및 비휘발성 스토리지 장치들을 위한 데이터 스토리지 액세스 프로토콜

Families Citing this family (22)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002094600A (ja) * 2000-09-13 2002-03-29 Mitsubishi Electric Corp 通信装置および通信方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002094600A (ja) * 2000-09-13 2002-03-29 Mitsubishi Electric Corp 通信装置および通信方法

Cited By (2)

* Cited by examiner, † Cited by third party
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