JP2006185302A - データ転送制御装置 - Google Patents

データ転送制御装置 Download PDF

Info

Publication number
JP2006185302A
JP2006185302A JP2004379904A JP2004379904A JP2006185302A JP 2006185302 A JP2006185302 A JP 2006185302A JP 2004379904 A JP2004379904 A JP 2004379904A JP 2004379904 A JP2004379904 A JP 2004379904A JP 2006185302 A JP2006185302 A JP 2006185302A
Authority
JP
Japan
Prior art keywords
data
mode
fifo
data transfer
transfer
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.)
Withdrawn
Application number
JP2004379904A
Other languages
English (en)
Inventor
Masashi Shimizu
昌志 清水
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004379904A priority Critical patent/JP2006185302A/ja
Publication of JP2006185302A publication Critical patent/JP2006185302A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Transfer Systems (AREA)

Abstract

【課題】 ソフトウェアに負荷をかけず高速データ通信規格に対応した高い通信性能を発揮し、かつ低速な転送モードの時に全体の消費電力を低減させることを目的としている。
【解決手段】受信用、送信用のFIFOをそれぞれ所有するPC周辺機器(プリンタ)において、ホストとのネゴシエーションで高速モード(HSモード)での転送になることを認識すると、受信転送要求時に送信用FIFOを受信用に切り替える。これによりホストPCからのデータ転送時にプリンタの内部処理が480Mbpsの転送速度に追いつかない場合でも、もう片方のFIFOを使用することによりデータ転送を止めずに受信処理を行うことができる。
【選択図】 図1

Description

本発明は、双方向通信可能なシリアルバスを使用した通信システムに関したものであり、特にUSB2.0規格におけるHS(ハイスピード)に対応している信号送受信回路とこれを用いたデータ転送制御装置に関するものである。
従来、ビデオ機器やオーディオ機器には、アナログ信号用の入出力信号が設けられており、ビデオやオーディオ信号は、アナログ形式で機器間の通信が行われていた。近年、アナログ通信に代わり、デジタル通信が普及しつつある。デジタル通信の代表的な規格がUSBである。USBは、従来パソコンと様々なデバイス(周辺機器)を使いやすく、安価で接続できる規格として策定されたインターフェースの規格の一つである。しかし高速な転送速度を必要とするハードディスクやCD−R/RWドライブといった機器には転送速度が遅いという課題が顕著化してきたため、転送速度を480Mbpsに高速化したバージョン(USB 2.0)のHS(Hi−Speed)モードが新たに制定された。HSモードは、手軽に接続できる次世代の高速インターフェースとしてパソコンに搭載され始め、対応周辺機器も数多く登場している。そして大きな特徴として、USB1.1との完全な上位互換性があげられる。特にHSモードに対応するデバイスで要求されることとして、USB2.0のHSで動作できない環境に接続された場合、自らの速度を相手側に合わせてLow−SpeedやFull−Speedに落として、USB1.1環境でも動作するように自動的に調節する必要がある。従って、速度の問題を除けば、HSデバイスとLS,FSデバイスは混在して使用することが可能となっている。
新仕様であるHSモードはデータ転送の高速化に伴い許容される最大パケットサイズが大幅に増加する。例えば大量データの転送に適したバルクイン・バルクアウト転送において、従来のUSB1,.1規格ではパケットサイズが64byteであったことに対し、HSモードでは512byteであるため、従来と比較して8倍のパケットサイズが許容されている。その結果、USBのエンドポイントとしてはバッファの容量が大幅に増大することになる。しかし機器内部のデータ処理がHS転送に比べて遅い場合は、ホスト側で待ち状態が発生し、高速480bps転送の優位性が活かせない。
よってデータ転送制御装置にはより高い通信性能が要求されるため、従来例として以下の内容が出願されている。
特許文献1のように、デュアルポートメモリを送信/受信バッファに用いて大量のデータを転送する方式がある。この方法は送信・受信アドレス設定制御部でそれぞれ送信・受信デュアルポートメモリのアドレスをエンドポイント毎に設定制御して送信・受信バッファの数及びサイズをCPUダイナミックに動的に割り当てるものである。
特許文献2のように、予め2つの受信バッファメモリを備えてダブルバッファ構成にする方式がある。ホストPCがコンピュータ周辺機器のデータ受信領域を定期的に調査して、バルクアウトに十分な空き容量がデータ受信領域に無いと判断した場合は第1の受信バッファメモリから第2の受信バッファメモリに切り替えるものである。
特開平11−328069公報 特開平14−318778公報
特許文献1については、アドレス設定制御は内部のCPUによって行われる。ししかしCPU自体にアドレス制御という負荷が発生するためデータ処理上の問題点がある。
特許文献2については、ホストPCが常にデータ領域の監視をする必要があるためホストPC側に負担がかかる。
かつ両提案とも高速モードを動作させるためには高速のクロックが必要となり、このような高い周波数のクロックを生成するために回路の消費電力は非常に大きなものとなっている。しかし高速モードで無い場合(低速モード)においてもクロック回路を動作させているため、非常に大きな不必要の消費電力を生じさせてしまう。
本発明は上記事情のためのもので、ソフトウェアに負荷をかけず高速データ通信規格に対応した高い通信性能を発揮し、かつ低速な転送モードの時に全体の消費電力を低減させることを目的としている。
上記課題を解決するために本発明は、コンピュータと、前記コンピュータとの間でデータ通信規格に基づいて双方向通信可能なシリアルバスを介して接続されたデータ転送制御装置において、複数のエンドポイントのデータバッファリング用に設けられた双方向それぞれのメモリ領域と、前記コンピュータと前記データ処理手段とのハンドシェークシーケンス時に前記シリアルバスのデータ転送モードを認識する認識手段と、
前記認識手段が高速のデータ転送モードであると判断した後、データの転送方向に応じて前記メモリ領域をすべて前記転送方向用に切り替える切り替え手段を有することを特徴とする。
本発明によれば、シリアルデータ転送の初期に転送モードを検出し、高速転送モード(HSモード)と判断したとき、バッファメモリ(FIFO)の構成を切り替えることによって、機器の内部処理が間に合わない場合でもデータ転送が待ち状態になることを防ぐ。またその際にホストコンピュータや機器内部のCPUに負荷をかけずに、且つ回路規模を抑えながら実現させることができる。
以下添付図面を参照して本発明の好適な実施形態について説明する。
図1−aは本実施例の概略を示した図である。パソコン等のホスト51とプリンタ等の記録装置52とがUSBケーブル53で接続されている状態を示す。記録装置装置52のUSBケーブル53が接続されている部分には、USBインターフェースを解してホストとデータのUSB送受信を行うためのデータハンドラ54が設けられている。まず通常の受信動作において、データハンドラ54で受信したデータは入出力バッファ55を通じて受信FIFOで一時保存される。そして入出力バッファ58を通じてデータ処理部59に送られ、印字動作のための所定のデータ処理が行われる。通常の送信動作においては、データ処理部59から送信されてくるデータが入出力バッファ58を通じて送信FIFO57に入る。データハンドラ回路54はホスト51にデータが送信できる状態になったときに送信FIFOのデータを、入出力バッファ55を通じて読み出しホストパソコン2に転送する。
ホスト51とデータハンドラ55との間で行われる初期のネゴシエーションにおいて、データハンドラ54内のプロトコルコントローラ107がデータ通信が高速(HS)モードになると識別して大量の受信データ転送が行われることが判明した場合は、図1−bのようにホスト51からバルクOUT(データ受信)要求が送られてきたときに送信FIFO58を受信用FIFO56の予備として受信のためのFIFOとして使用する。受信FIFO56がFULL状態になると、送信FIFO57(機能は受信FIFO)に受信データを格納していく。ホスト51のバルクIN(データ用)要求時には受信用FIFOは送信FIFOに戻す。
ネゴシエーションにおいて低速(FS)モードであるとプロトコルコントローラ107が識別した場合は、受信FIFO56と送信FIFO57は本来の役割で使用される。
次に本実施形態におけるデータハンドラ54の詳細図を図2に示す。
データハンドラ54は、転送モード識別ブロック55の他にHSアナログエンド回路101、FSアナログエンド回路105、プロトコルコントローラ107、HS回路102、FS回路106、OSC部108、クロックジェネレータ109、SIE I/F部110が存在している。
プロトコルコントローラ107(データ処理手段)は、USB等に準拠したデータ転送のための種々の処理を行う。より具体的には、送信時には、送信データにSYNC(synchronization)、SOP(Start Of Packet)、EOP(End Of Packet)を付加する処理や、ビットスタッフィング処理などを行う。一方、受信時には、受信データのSYNC、SOP、EOPを検出/削除する処理や、ビットアンスタッフィング処理などを行う。更に、データの送受信を制御するための各種のタイミング信号を生成する処理も行う。なお、受信データはプロトコルコントローラ107から後段の回路(後段のデータ処理手段)であるSIE−IF部110(SIEとはSerial Interface Engineの略)に出力され、各エンドポイントを含むSIE(不図示)に転送される。送信データはSIEからSIE−IF部110を経由してプロトコルコントローラ107に入力されることになる。
HS回路102は、データ転送速度が480MbpsとなるHSモードでのデータの送受信を行うためのロジック回路であり、FS回路106は、データ転送速度が12MbpsとなるFSモードでのデータの送受信を行うためのロジック回路である。
ここで、HSモードは、USB2.0により新たに定義された転送モードである。一方、FSモードは、従来のUSB1.1で既に定義されている転送モードである。
USB2.0では、このようなHSモードが用意されているため、プリンタ、オーディオ、カメラなどにおけるデータ転送のみならず、ハードディスクドライブや光ディスクドライブ(CD−ROM,DVD)などのストレージ機器におけるデータ転送も実現できるようになる。HS回路102は、HSDLL(High Speed Delay Line PLL)回路103、EBUF回路(エラスティシティバッファ)104を含む。
ここでHS−DLL部103は、受信データとクロックジェネレータ109からのクロックとに基づいて、データのサンプリングクロックを生成する回路である。
またEBUF回路(エラスティシティバッファ)102は、内部装置(データ転送制御装置)と外部装置(バスに接続される外部装置)とのクロック周波数差(クロックドリフト)等を吸収するための回路である。
HSアナログエンド回路101は、HSでの送受信を行うためのドライバやレシーバを含むアナログ回路である。同様にFSアナログエンド回路105は、FSでの送受信を行うためのドライバやレシーバを含むアナログ回路である。USBではDP(DATA+) DM(DATA−)を用いた差動信号によりデータを送受信し、またVBUSによってホストコンピュータ(不図示)との接続状態を検知する。クロックジェネレータ109は装置内部で使用する480MHzのクロックや、装置内部及びSIC部で使用する60MHzのクロックを生成する。クロック生成回路440は、PLL480M121、PLL60M122を含む。OSC部108(発振回路)は、例えば外部振動子との組み合わせによりベースクロックを生成する。
PLL480M121は、OSC部108で生成されたベースクロックに基づいて、HSモードで必要な480MHzのクロックを生成するPLL(Phase Locked Loop)である。HSモードで送受信を行う場合には、このPLL480M151によるクロック生成を有効にする必要がある。
PLL60M122は、OSC部108で生成されたベースクロックに基づいて、FSモード、装置内部及びSIEで必要な60MHzのクロックを生成する。なお、このPLL60M152によるクロック生成を有効にしている時には、HSモードでの送受信は不可となる。
またクロックジェネレータ109はプロトコルコントローラ107からの各種の制御信号を受け、クロック生成を制御する処理を行う。なお、クロックジェネレータ109により生成された60MHzのシステムクロックはプロトコルコントローラ107を介してSIEに出力される。
図3にクロックジェネレータ109内部と他の機能ブロックとの接続について示す。クロックジェネレータ109に接続されているOSC部108は、XIN,XOUTに接続された外部振動子を用いて発振動作を行い、ベースクロックBCLK(本実施例では12MHz)を生成する。そして、このベースクロックBCLKは、クロックジェネレータ109に出力される。
なお、XINに入力された外部クロックを直接にベースクロックとして用いることも可能である。クロックジェネレータ109が含むPLL480M121は、プロトコルコントローラ107からの信号PLL480M_STが‘1’であるときにPLL動作を行う。次にプロトコルコントローラ107からの信号PLL480M_ENBが‘1’となったときに出力がイネーブルとなり、ベースクロックBCLKに位相同期した480MHzのクロックを生成する。生成された480MHzのクロックはデータ転送制御装置内部にあるHS回路102やプロトコルコントローラ107に出力される。クロックジェネレータ109が含むPLL60M122は常にイネーブル状態であり、ベースクロックBCLKに位相同期した60MHzのクロックを生成する。そして生成された60MHzのクロックはデータ転送制御装置内部やSIE(後段のデータ処理手段)で使用するシステムクロック(SCLK)として出力される。よってHSモード時、後述するチャープ(CHIRP)送受信時は、PLL480_ENBを‘1’にして、PLL480M151をイネーブルにする必要がある。
次に図4−aにPLL480M121の詳細な構成例を示す。
このPLL480M121は、位相比較器151、CP(チャージポンプ)回路152、LF(ローパスフィルタ)回路153、VCO(Voltage Controlled Oscillator)154、分周器155などを含む。
ここで位相比較器151は、ベースクロックBCLK(12MHz)と分周器155からのクロックNCLKの位相を比較し、位相誤差信号を出力する。CP回路82は、位相比較器151からの位相信号に基づいてチャージポンプ動作を行う。そしてチャージポンプ後にフィルタ回路153を通し、平滑化された制御電圧がVCO154に与えられる。VCO154は、制御電圧に応じてその発振周波数が可変に制御される発振動作を行い、480MHzのクロックを生成する。例えば、制御電圧VC_480Mと発振周波数も高くなり、制御電圧VCが低くなると発振周波数も低くなる。VCO154により生成された480MHzのクロックは、CLK480Mとして外部に出力される。分周器155は、VCO154から入力されるクロックCLK480Mを分周(1/N)して、分周後のクロックNCLK_480M121を位相比較器151に出力する。このように図4−aのPLL480M151によれば、ベースクロックBCLKに位相同期した高周波数の480MHzのクロックを生成できるようになる。
図4−bにPLL60M122の詳細な構成例を示す。
このPLL60M122は、位相比較器156、CP回路157、LF回路158、VCO159、分周器160などを含む。ここで位相比較器156は、ベースクロックBCLK(12MHz)と分周器160のクロックNCLK_60M比較し、位相誤差信号を出力する。CP回路157は、位相比較器156からの位相信号に基づいてチャージポンプ動作を行う。そしてチャージポンプ後にフィルタ回路158を通し、平滑化された制御電圧がVCO159に与えられる。VCO159は、制御電圧に応じてその発振周波数が可変に制御される発振動作を行い、480MHzのクロックを生成する。例えば、制御電圧VCが高くなると発振周波数も高くなり、制御電圧VCが低くなると発振周波数も低くなる。VCO159により生成された60MHzのクロックは、CLK60Mとして外部に出力される。分周器160は、VCO159から入力されるクロックCLK60Mを分周(1/N)して、分周後のクロックNCLK_60Mを位相比較器159に出力する。
図4−bのPLL60Mによれば、ベースクロックBCLKに位相同期した60MHzのクロックを生成できるようになる。
次にデータハンドラからデータ処理部までの詳細接続を図5に示す。ホスト51とデータハンドラ回路55内のプロトコルコントローラ107との間で行われる初期のネゴシエーションによって転送モードが決定されたとき、データハンドラ54は入出力バッファ55,58に転送方向信号201を送信する。またデータハンドラ54は受信FIFO56、送信FIFO57共にデータFULL状態またはFULLに近い状態のときにアクティブになるFULLフラグ203,204を認識することで、FIFOの状態を監視している。
[転送方向信号201が“受信”、かつ転送モード信号が“低速”を示す時]データハンドラ54から、転送モード信号202が“低速”として入出力バッファ58とセレクタ60に、転送方向信号201が“受信”として入出力バッファ55,58とデータ処理部59に、FIFOセレクト信号205が“送信FIFO”入出力バッファ55,58に、それぞれ入力される。上記の条件では入出力バッファ55はデータハンドラ54からの転送データを入力し、受信FIFO56に対してデータの出力を行う。送信FIFO57に対しては未接続状態となる。入出力バッファ58はデータ処理部59に対して出力、受信FIFO56に対して入力になるが、送信FIFO57に対しては未接続状態となる。セレクタ60は入出力バッファ58からのデータを選択する。FULLフラグ203は受信FIFO56がFULL状態のときに出力される信号であり、データハンドラ54に入力される。FULLフラグ204は送信FIFO57(受信FIFOとして使用されるとき)がFULL状態時に出力される信号であり、データハンドラ54に入力される。データハンドラ54はFULL状態のFIFOにはデータ送信を行わない。以上の条件において、ホスト51から送信されてくるデータは、ホスト51→データハンドラ54→入出力バッファ55→受信FIFO56→入出力バッファ58→データ処理部59、という流れになる。
[転送方向信号201が“送信”を示す時]データハンドラ54から、転送モード信号202が“低速”または“高速”として入出力バッファ58とセレクタ60に、転送方向信号201が“送信”として入出力バッファ55,58とデータ処理部59に、FIFOセレクト信号205が“送信FIFO”として入出力バッファ55,58に、それぞれ入力される。上記の条件では入出力バッファ55はデータハンドラ54に対して出力、送信FIFO57に対して入力になる。受信FIFO56に対しては未接続状態となる。入出力バッファ58はデータ処理部59に対して入力、送信FIFO57に対して出力になる。受信FIFO56に対しては未接続状態となる。セレクタ60は、ホスト51とデータハンドラ55との間で行われる初期のネゴシエーションの結果によって、送信FIFO57に出力するデータを選択する回路である。“送信”と判断された場合はデータ処理部59からのデータを選択する。
以上の条件において、ホストに送信されるデータはデータ処理部59→入出力バッファ58→データセレクタ60→送信FIFO57→入出力バッファ55→データハンドラ54→ホスト51、という流れになる。
[転送方向信号201が“受信”、かつ転送モード信号202が“高速”を示す時]データハンドラ54から、転送モード信号202が“高速”として入出力バッファ58とセレクタ60に、転送方向信号201が“受信”として入出力バッファ55,58とデータ処理部59に、FIFOセレクト信号205が“送信FIFO”として入出力バッファ55,58に、それぞれ入力される。上記の条件では転送モード信号が“高速”を示す時でも、初期状態では送信FIFO57はそのまま送信FIFOとして機能する。入出力バッファ55はデータハンドラ54に対して入力、受信FIFO56に対して出力になる。データハンドラ54から“高速”を示す転送モード信号202がデータセレクタ60と入出力バッファ58に送られると、データセレクタ60はホスト51から送られてくるデータを選択して送信FIFO57に入力する。入出力バッファ58は転送方向信号201よりも転送モード信号122を優先させる。よって入出力バッファ58はデータ処理部59に対して出力になる。受信FIFO56がまだFULLでない初期状態においては、受信FIFO56に対して入力になり、送信FIFO57に対しては未接続となる。以上のように構成されたホスト51とデータ処理部59間のデータ転送手順は以下のようになる。
ホスト51からのデータはデータハンドラ54,入出力バッファ55を介して受信FIFO56に格納される。受信FIFO56のデータは入出力バッファ58を介してデータ処理部59に送られる。そしてデータ処理部59が処理しきれない状態になり、受信FIFO56がデータ受信できなくなる(FULL状態)まで受信データ転送が行われる。受信FIFO56の空き状況はFULLフラグ203によってデータハンドラ54が管理している。
次にデータハンドラ54は、受信FIFO56がFULL状態であると認識したときに初めて、ホスト51からのデータの格納先を受信FIFO56から送信FIFO57に切り替える。このときデータハンドラ54は、送信FIFO57を受信FIFOとして使用するために、FIFOセレクト信号205を入出力バッファ55,58,セレクタ60に送信する。すると入力バッファ55はデータ出力先をセレクタ60に、セレクタ60は入力データ元を入出力バッファ55に、入出力バッファ58は入力元を送信FIFO57にする。このときから送信FIFO57は受信FIFOとして使用される。以上のような経路において、転送データが送信FIFO57に格納される。ただしこのとき送信FIFO57から入出力バッファ58へのデータ転送は実施しない。転送データの順序が逆転しないように、送信FIFO57に格納したまま止めておく。送信FIFO57がFULL状態になった場合(データハンドラ54がFULLフラグ204を認識した時)においては、データハンドラ54はホスト51のデータ受信要求を受け付けない。記録制御部34内部のデータ処理が進行しデータ処理部59に空き容量が発生すると、ホスト51からのデータの格納先を送信FIFO57から受信FIFO56に切り替える。データハンドラ54はFIFOセレクト信号205を“送信FIFO”にして入出力バッファ55,58とセレクタ60に入力する。入出力バッファ55はデータハンドラ54からの転送データを入力し、受信FIFO56に対してデータの出力を行う。送信FIFO57に対しては未接続状態となる。入出力バッファ58はデータ処理部59に対して出力、受信FIFO56に対して入力になるが、送信FIFO57に対しては未接続状態となる。セレクタ60は入出力バッファ58からのデータを選択する。このようにしてFULL状態であった受信FIFO56からデータ処理部59に向けてのデータ転送が再開される。再開時において、受信FIFO56に格納されていたデータ数はデータハンドラ54もしくはデータ処理部59に記録されており(不図示)、データ転送順序が逆転しないようになっている。
受信FIFO56内のデータを、入出力バッファ58を経由してデータ処理部59に前記記録データ数だけ転送すると、一時転送を中断して送信FIFO57に切り替える。切り替え方法は、前記受信FIFO56がFULLになったときと同様である。そして送信FIFO57内の全データを、入出力バッファ58を介してデータ処理部59に転送する。送信FIFO57内の全データ転送後再び受信FIFO56に切り替えて、受信データ転送を行う。
以上のようにデータハンドラ54が受信FIFO56の空き状況を監視し,空きが無いと判断した場合に受信FIFO56と送信FIFO57を適宜切り替えてデータを格納していくことにより、効果的にデータ転送を行うことができる。
次に、転送モードの判別方法と、クロックの切り替えタイミングについて説明する。
図6は、本実施形態のデータ転送制御装置がHSモードで動作する通信機器に接続されたときのタイミング波形図の例である。
時間t0において、USBバスに接続される前の初期状態として本実施形態のデータ転送制御装置はFSモードで動作を開始する。このときプロトコルコントローラ107によって信号PLL480_ENBとPLL480_STは‘0’に設定され、PLL480M121は停止状態となるため480MHzは生成されない。また同時にプロトコルコントローラ107はFS回路との接続データ線のみを有効とし、HS回路との接続データ線は無効としている。
時間t1において、USBケーブルが挿入されVBUSが‘1’(有効)になったとき、プロトコルコントローラ107はホストコンピュータが接続されたと判断して信号PLL480_STを‘1’に設定する。そしてこのときからPLL480M121のPLL動作が開始される。ただしPLL動作は未だ安定しないため、プロトコルコントローラ107はPLL480_ENBを‘0’を維持させる。よって各HS制御ブロックには480MHzのクロックは出力されない。
時間t2において、ホストコンピュータはUSBバスに対してバスリセットを発行する。このバスリセット発行から、HSデバイス検出のためのハンドシェークシーケンスが開始される。
時間t3において、バスリセットを検知したプロトコルコントローラ107はUSBバスに対してチャープ信号「K」(Chip−K)を送信する。Chip−Kはデバイス側がHSモードで動作することを示すためのプロトコルである。
時間t4において、Chip−Kを検知したホストコンピュータはUSBバスに対してチャープ信号「K」(Chip−K)とチャープ信号「J」(Chip−J)を交互に送信する。これはホストコンピュータ側がHSモードで動作することを示すためのプロトコルである。
時間t5において、Chip−K/Chip−Jを検知したプロトコルコントローラ107は、HSモード用のデータ通信モードに入るため、PLL480_ENBを‘1’にする。よってPLL480M121の出力はイネーブルとなり、各HS制御ブロックには480MHzのクロックは出力されることなる。次にプロトコルコントローラ107はHS回路との接続データ線のみを有効とし、FS回路との接続データ線は無効とする。これでHSモードでのデータ転送が可能となる。
時間t6において、HSデバイス検出のためのハンドシェークシーケンスが終了し、ホストコンピュータがHSモードによるデータ転送を開始する。
時間t7においてUSBケーブルが抜かれてVBUSが‘0’(無効)になったとき、時間t8においてプロトコルコントローラ107はホストコンピュータとは未接続になったと判断して信号PLL480_STとPLL480_ENBを‘0’に設定する。そしてこのときからPLL480M121のPLL動作は停止する。またFS回路との接続データ線のみを有効とし、HS回路との接続データ線は無効とすることによりFS動作モードに戻る。
図7は、本実施形態のデータ転送制御装置がFSモードで動作する通信機器に接続されたときのタイミング波形図の例である。
時間t0〜t3においては、前記HSモードで動作する通信機器に接続されたときと当用である。
時間t4において、Chip−Kを検知してもホストコンピュータはHSモードには対応していないためUSBバスに対してチャープ信号「K」(Chip−K)は送信せず無応答となる。
時間t5において、Chip−K/Chip−Jを検知できなかったプロトコルコントローラ107は、PLL480_STを‘0’にする。このときからPLL480M121のPLL動作は停止する。
時間t6において、HSデバイス検出のためのハンドシェークシーケンスが終了し、ホストコンピュータがFSモードによるデータ転送を開始する。
時間t7において、USBケーブルが抜かれてVBUSが‘0’(無効)になったとき、既にFSモードになっているため現状を維持する。
以上のタイミングで、プロトコルコントローラ107は転送モード(HS・高速、FS・低速)を認識し、そしてクロックとFIFOの切り替えを行っている。
次に、本実施形態のデータ転送制御装置を含むインクジェット記録装置の例について説明する。
図8は、電子機器(記録装置)の主要な部分の構成を示す図である。図8において、1は印字ヘッド、2は印字ヘッドを搭載するキャリッジ、3はキャリッジ2を駆動するキャリッジモータ、4は記録ヘッド2と不図示のヘッド駆動制御回路を接続するフレキシブルケーブルである。5は紙送りギア、6は紙送りギア5を介して紙送りローラ7を駆動する紙送りモータである。8はリニアエンコーダ、9はキャリッジの位置検出を行う光センサであり、8、9によりキャリッジの位置を検出する光学式エンコーダを構成している。Pは記録用紙である。
図9は記録装置の制御部の構成を示すブロック図である。ブロック図は記録制御部35とヘッド部36に分割される。ホスト31は記録装置とUSBバスにて接続されたホストであり、記録装置に対して印字データを送信する。
USBを介して送られてきたシリアルの印字データは、データ転送制御部10(本実施形態のデータハンドラ54からデータ処理部59まで)にて受信され、I/F回路12を経由してRAM11に格納する。13は装置全体を制御するためのCPUであり、RAM11に格納されたデータを処理してヘッド駆動回路17に転送する。RAM14は所要の作業領域を提供するために存在し、また、15のROMには前記CPU13が動作するためのプログラムや、ヘッド駆動、モータ駆動等の制御テーブルがあらかじめ格納されている。16はキャリッジ位置検出素子であるエンコーダセンサ19の出力によりキャリッジの位置を検出するエンコーダ回路である。17は記録ヘッド21やヘッドドライバ20を駆動するための駆動回路であり、またCPU13から送られてきたデータを更にヘッドドライバ20に転送する。ヘッドドライバ20が転送されてきたデータを記録ヘッド36に送信し、そして記録ヘッド36がデータに応じて吐出をすることで印字動作は行われる。モータ駆動回路18はキャリッジモータ22、紙送りモータ23を駆動するための駆動回路であり、印字動作に合わせてキャリッジモータ22、紙送りモータ23を駆動させることでキャリッジの移動や紙送り動作を実行させる。
なお本実施形態のデータ転送制御装置を適用できる電子機器としては、上記以外にも例えば、種々の光ディスクドライブ(CD−ROM、DVD)、光磁気ディスクドライブ(MO)、ハードディスクドライブ、ビデオカメラ、オーディオ機器、パーソナルコンピュータなど種々のものを考えることができる。
また、本実施例は、USB2.0でのデータ転送であることを基本としているが、それ以外にも、例えばUSB2.0と同様の思想に基づく規格やUSB2.0を発展させた規格におけるシリアルデータ転送にも適用できる。
図1−a,図1−b 本実施例の概略図 データハンドラ回路の詳細図 クロックジェネレータ109内部と他の機能ブロックとの接続を示す図 図4−a PLL480Mの構成例を示すブロック図、図4−b PLL60Mの構成例を示すブロック図 データハンドラからデータ処理部までの詳細接続図 HS検出ハンドシェーク時のタイミング波形図 FS検出ハンドシェーク時のタイミング波形図 インクジェット記録装置の主要機構部分を示す図 記録装置の構成を示すブロック図
符号の説明
1 印字ヘッド
2 キャリッジ
3 キャリッジモータ
4 記録ヘッド
5 紙送りギア
6 紙送りローラを駆動するモータ
7 紙送りローラ
8 リニアエンコーダ
9 光エンコーダセンサ
10 データ転送制御装置
11 RAM
12 I/F回路
13 CPU
14 RAM
15 ROM
16 エンコーダ回路
17 ヘッド駆動回路
18 モータ駆動回路
19 エンコーダセンサ
20 ヘッドドライバ
21 記録ヘッド
22 キャリッジモータ
23 紙送りモータ
31 ホスト
34 記録制御部
35 ヘッド部
51 ホスト
52 記録装置
53 USBケーブル(USBバス)
54 データハンドラ
55、58 入出力バッファ
59 データ処理部
60 セレクタ
101 HSアナログエンド回路
102 HS回路
103 HS−DLL
104 EBUF
105 FSアナログエンド回路
106 FS回路
107 プロトコルコントローラ
108 OSC部
109 クロックジェネレータ
110 SIE I/F部
121 PLL480M
122 PLL60M
151 位相比較器
152 CP回路
153 LF回路
154 VCO
155 分周器
156 位相比較器
157 CP回路
158 LF回路
159 VCO
160 分周器
201 転送方向信号
202 転送モード信号
203,204 FULLフラグ
205 FIFOセレクト信号

Claims (4)

  1. コンピュータとデータ通信規格に基づいて双方向通信可能なシリアルバスを介して接続されたデータ転送制御装置において、
    複数のエンドポイントのデータバッファリング用に設けられたそれぞれのメモリ領域と、前記コンピュータと前記データ処理手段とのハンドシェークシーケンス時に前記シリアルバスのデータ転送モードを認識する認識手段と、
    前記認識手段が高速のデータ転送モードであると判断した後、データの転送方向に応じて前記メモリ領域の一部を前記転送方向用に切り替える切り替え手段を有することを特徴とするデータ転送制御装置。
  2. 前記データ通信規格はUSB(Universal Serial Bus)2.0に準拠したデータ通信であり、前記メモリ領域はバルクアウト転送に対応した第1のFIFOメモリと、バルクイン転送に対応した第2のFIFOメモリで構成されることを特徴とする請求項1記載のデータ転送制御装置。
  3. 前記転送制御装置の内部データ処理の空き状況に基づいて、前記第1のFIFOメモリと前記第2のFIFOメモリを前記切り替え手段によって切り替えることを特徴とした請求項2記載のデータ転送制御装置。
  4. 前記認識手段がUSB2.0規格のFS(フルスピード)モードでデータ転送を行うと判断した時に、HS(ハイスピード)モード用のクロック生成動作をディスエーブルすることを特徴とする請求項2記載のデータ転送制御装置。
JP2004379904A 2004-12-28 2004-12-28 データ転送制御装置 Withdrawn JP2006185302A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004379904A JP2006185302A (ja) 2004-12-28 2004-12-28 データ転送制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004379904A JP2006185302A (ja) 2004-12-28 2004-12-28 データ転送制御装置

Publications (1)

Publication Number Publication Date
JP2006185302A true JP2006185302A (ja) 2006-07-13

Family

ID=36738359

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004379904A Withdrawn JP2006185302A (ja) 2004-12-28 2004-12-28 データ転送制御装置

Country Status (1)

Country Link
JP (1) JP2006185302A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010088068A (ja) * 2008-10-03 2010-04-15 Seiko Epson Corp データ転送制御装置、集積回路装置及び電子機器
JP2010525628A (ja) * 2007-04-04 2010-07-22 ソニー エリクソン モバイル コミュニケーションズ, エービー アクセサリデバイスと携帯デバイスとの間の通信方法およびシステム
CN106294248A (zh) * 2015-05-19 2017-01-04 深圳市超越自然多媒体有限公司 一种用于智能设备与usb声卡之间的控制方法
CN106294265A (zh) * 2015-05-19 2017-01-04 深圳市超越自然多媒体有限公司 一种usb声卡和智能设备之间的音频数据传输方法
CN106293594A (zh) * 2015-05-19 2017-01-04 深圳市超越自然多媒体有限公司 一种用于usb声卡的音频数据传输方法
CN110597748A (zh) * 2019-07-31 2019-12-20 北京航天时代光电科技有限公司 一种基于tlk2711的高速通信接口及数据处理系统

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010525628A (ja) * 2007-04-04 2010-07-22 ソニー エリクソン モバイル コミュニケーションズ, エービー アクセサリデバイスと携帯デバイスとの間の通信方法およびシステム
JP2010088068A (ja) * 2008-10-03 2010-04-15 Seiko Epson Corp データ転送制御装置、集積回路装置及び電子機器
CN106294248A (zh) * 2015-05-19 2017-01-04 深圳市超越自然多媒体有限公司 一种用于智能设备与usb声卡之间的控制方法
CN106294265A (zh) * 2015-05-19 2017-01-04 深圳市超越自然多媒体有限公司 一种usb声卡和智能设备之间的音频数据传输方法
CN106293594A (zh) * 2015-05-19 2017-01-04 深圳市超越自然多媒体有限公司 一种用于usb声卡的音频数据传输方法
CN110597748A (zh) * 2019-07-31 2019-12-20 北京航天时代光电科技有限公司 一种基于tlk2711的高速通信接口及数据处理系统
CN110597748B (zh) * 2019-07-31 2021-09-07 北京航天时代光电科技有限公司 一种基于tlk2711的高速通信接口及数据处理系统

Similar Documents

Publication Publication Date Title
JP3587162B2 (ja) データ転送制御装置及び電子機器
JP3632695B2 (ja) データ転送制御装置、電子機器及びデータ転送制御方法
US7568077B2 (en) Information processing apparatus and file controller
JP2018533120A (ja) マルチノードネットワークにおける入力/出力信号のブリッジングおよび仮想化
JP4377603B2 (ja) バス通信システムおよびその通信制御方法
JP2002342261A (ja) データ転送制御装置及び電子機器
JP2010109961A (ja) シリアルデータ転送装置
JP6429549B2 (ja) 半導体集積回路、半導体集積回路を備えた装置、半導体集積回路におけるクロックの制御方法、並びにプログラム。
US7337382B2 (en) Data transfer control device, electronic instrument, and data transfer control method
JP2002055936A (ja) Usbデバイス機器、usbデバイス機器間の通信システムおよび通信方法
US7779195B2 (en) Communication control apparatus for common bus connection devices
JP2006185302A (ja) データ転送制御装置
JP2010267259A (ja) メモリデバイスおよびメモリデバイス制御装置
JP2007233998A (ja) データ転送制御装置及び電子機器
JP2005122303A (ja) データ転送制御装置、電子機器及びデータ転送制御方法
JP7009866B2 (ja) 電子機器、通信処理方法及びプログラム
JP3347580B2 (ja) 情報処理装置、及び記憶媒体
JP2004302778A (ja) インタフェイス装置
JP2004362282A (ja) ネットワーク機器及びネットワークシステム
JP2015126445A (ja) 情報処理装置、情報処理方法、及びプログラム
JP2004012871A (ja) データ転送制御システム、電子機器及びデータ転送制御方法
JP2006159678A (ja) シリアルバスにおける記録装置
JP2008287578A (ja) メモリコントローラ、情報処理装置及び電子機器
US6745260B1 (en) Method and system for data streaming during the data in phase of the packetized SCSI protocol
US6728815B1 (en) Method and structure for supporting data streaming by a SCSI target during the data in phase of the packetized SCSI protocol

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080304