[go: up one dir, main page]

JP2001268142A - データ転送制御装置及び電子機器 - Google Patents

データ転送制御装置及び電子機器

Info

Publication number
JP2001268142A
JP2001268142A JP2000073622A JP2000073622A JP2001268142A JP 2001268142 A JP2001268142 A JP 2001268142A JP 2000073622 A JP2000073622 A JP 2000073622A JP 2000073622 A JP2000073622 A JP 2000073622A JP 2001268142 A JP2001268142 A JP 2001268142A
Authority
JP
Japan
Prior art keywords
data
bit
circuit
parallel
bits
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.)
Granted
Application number
JP2000073622A
Other languages
English (en)
Other versions
JP3603732B2 (ja
Inventor
Takuya Ishida
卓也 石田
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2000073622A priority Critical patent/JP3603732B2/ja
Priority to US09/805,029 priority patent/US6732204B2/en
Priority to CN01122059.7A priority patent/CN1269049C/zh
Priority to TW090106255A priority patent/TW540208B/zh
Publication of JP2001268142A publication Critical patent/JP2001268142A/ja
Application granted granted Critical
Publication of JP3603732B2 publication Critical patent/JP3603732B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • G06F13/4059Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Dc Digital Transmission (AREA)

Abstract

(57)【要約】 【課題】 ビット挿入、エンコード、デコード、ビット
削除処理を低速のクロック周波数で実現できるデータ転
送制御装置及び電子機器を提供すること。 【解決手段】 送信側ではビットスタッフィング回路1
0及びNRZIデコーダ12をパラレル−シリアル変換
回路の前段に設け、受信側ではNRZIデコーダ14及
びビットアンスタッフィング回路16をシリアル−パラ
レル変換回路の後段に設け、ビットスタッフィング、N
RZIエンコード、NRZIデコード、ビットアンスタ
ッフィングを、シリアルデータ処理ではなくパラレルデ
ータ処理で実現する。ビット挿入によりあふれたビット
を次のクロックサイクルのデータに繰り越したり、ビッ
ト削除により足りなくなったビットを次のクロックサイ
クルのデータから繰り上げる。演算されたきビットスタ
ッフィング(ビットアンスタッフィング)位置に基づき
ビットを挿入(削除)し、あふれ(縮み)ビット数の累
積値に基づき出力すべきパラレルデータの範囲を決定す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ転送制御装
置及び電子機器に関し、特に、USB規格に準じたデー
タ転送を行うためのデータ転送制御装置及び電子機器に
関する。
【0002】
【背景技術及び発明が解決しようとする課題】近年、パ
ーソナルコンピュータと周辺機器(広義には電子機器)
とを接続するためのインターフェース規格として、US
B(Universal Serial Bus)が注目を集めている。
【0003】このUSBには、パーソナルコンピュータ
とその周辺機器をシリアルバスを介して最大で127台
まで接続できるという利点がある。また、従来は別々の
規格のコネクタで接続されていたマウスやキーボードや
プリンタなどの周辺機器を、同じ規格のコネクタで接続
できると共に、いわゆるプラグ&プレイやホットプラグ
を実現できるという利点もある。
【0004】さて、USBにおいては、転送データは、
NRZI(Non Return to Zero Invert)と呼ばれる方
式でエンコードされて転送される。このNRZIは、一
般的なデータでは"0"のビットの発生比率が"1"のビッ
トの発生比率に比べてはるかに高いことに着目し、シリ
アルバス上の信号レベルの変化の頻度を増やして同期は
ずれを防ごうとするエンコード方式である。このため、
NRZIでは、元データのビットが"1"の場合には前の
信号レベルを維持し、元データのビットが"0"の場合に
は前の信号レベルを反転させる。
【0005】従って、NRZIのエンコードを行うと、
元データに"0"のビットが並んでいる場合には、エンコ
ード後のデータはビット毎に信号レベルが変化するよう
になる。
【0006】ところが、元データに"1"のビットが並ん
でいる場合には、エンコード後のデータの信号レベルが
変化しない状態が長時間続くことになり、同期はずれの
問題が生じてしまう。
【0007】このためUSBでは、元データに対して、
ビットスタッフィング(広義にはビット挿入)と呼ばれ
る処理を施すようにしている。即ち、"1"のビットが連
続して6回続くと、その後に必ず"0"のビットを挿入す
るようにする。そして、このようにビットスタッフされ
たデータを、上述のNRZIでエンコードする。このよ
うにすることで、元データに"1"のビットが並んでいた
場合にも、信号レベルが変化しない状態が長時間続かな
いようになる。
【0008】さて、USBには前述のように種々の利点
はあるが、同じくシリアルバスインターフェース規格と
して脚光を浴びているIEEE1394に比べて、転送
速度が遅いという不利点がある。
【0009】そこで、USB1.1規格に比べて格段に
高速な480Mbps(ハイスピードモード)のデータ
転送速度を実現できるUSB2.0規格の策定が、現在
急ピッチで進められている。
【0010】ところが、このようにデータ転送速度が高
速化されると、前述のビットスタッフィングやNRZI
の処理を1クロックサイクル内で完了することが難しい
という問題があることが判明した。
【0011】即ち、ビットスタッフィングやNRZIは
シリアルデータ処理(シリアルデータで行う処理)に適
している。従って、パラレルデータをパラレル−シリア
ル変換回路によりシリアルデータに変換し、変換後のシ
リアルデータに対してビットスタッフィング処理が行わ
れ、その後にNRZIのエンコードが行われることにな
る。このため、データ転送速度が前述のように480M
bpsである場合には、ビットスタッフィングやNRZ
Iの処理に使用されるクロックの周波数も480MHz
にしなければならない。従って、微細加工が可能な最新
の半導体プロセスが必要となり、このような半導体プロ
セスを使用できない場合には、データ転送速度が480
MHzとなるハイスピードモードでのビットスタッフィ
ングやNRZIの処理を実現するのは非常に困難にな
る。
【0012】また、配線遅延が信号タイミングのクリテ
ィカルパスの支配的な要因になる微細半導体プロセスで
は、480MHzで動作する論理回路を構成するために
は、クロックスキューを最小化して同期動作を保証する
ために手作業による配置、配線が必要になるという問題
もある。
【0013】本発明は、以上のような技術的課題に鑑み
てなされたものであり、その目的とするところは、ビッ
ト挿入、エンコード、デコード、ビット削除処理を低速
のクロック周波数で実現できるデータ転送制御装置及び
電子機器を提供することにある。
【0014】
【課題を解決するための手段】上記課題を解決するため
に本発明は、シリアルバスを介したデータ転送のための
データ転送制御装置であって、第1の信号レベルのビッ
トが所与の個数だけ連続したことを条件に第2の信号レ
ベルのビットを挿入するビット挿入回路と、パラレルデ
ータを前記シリアルバスで転送されるシリアルデータに
変換するためのパラレル−シリアル変換回路とを含み、
前記ビット挿入回路が、前記パラレル−シリアル変換回
路の前段に設けられると共に、前記ビット挿入回路が、
前段の回路から所与のクロックサイクルで入力されたN
ビットのパラレル入力データを受け、ビット挿入された
Nビットのパラレル出力データを出力することを特徴と
する。
【0015】本発明によれば、ビット挿入回路がパラレ
ル−シリアル変換回路の前段に設けられる。従って、シ
リアルデータに変換される前のパラレルデータの状態
で、ビット挿入処理を行うことができるようになる。こ
れにより、シリアルデータの状態のままで処理する場合
に比べて、例えば1/Nのクロック周波数でビット挿入
回路は動作すればよいことになる。従って、微細加工が
可能な最新の半導体プロセスを使う必要が無くなるた
め、データ転送制御装置の低コスト化を図れる。また、
信号タイミングに関するクリティカルパスが減るため、
データ転送制御装置の開発期間を短縮化できると共に、
データ転送制御装置の動作の信頼性を高めることが可能
になる。また、データ転送制御装置の回路パターンの生
成に、既存の自動配置配線手法を使用できるようにな
る。更に、演算に要する時間に余裕が生まれるため、H
DL(Hardware Description Language)を用いた回路
合成により論理回路を生成する手法も使用できるように
なる。
【0016】また本発明は、前記ビット挿入回路が、ビ
ット挿入によりあふれたビットを次のクロックサイクル
のデータに繰り越すための処理を行うことを特徴とす
る。
【0017】このようにすれば、所与のクロックサイク
ルでNビットのパラレル入力データが順次入力されてき
た場合に、ビット挿入されたNビットのパラレル出力デ
ータを、例えば同一のクロックサイクルで適正に順次出
力できるようになる。
【0018】また本発明は、前記ビット挿入回路が、前
記第2の信号レベルのビットの挿入位置とビット挿入に
よりあふれたビットの数とを演算する演算回路と、演算
されたあふれビット数を累積的に加算又は減算すること
で得られるあふれ累積値を記憶するあふれ累積値記憶回
路とを含み、前記ビット挿入回路が、前記ビット挿入位
置に基づいて、前記第2の信号レベルのビットを挿入し
ながら、前記あふれ累積値に基づいて、出力すべきパラ
レル出力データを決定することを特徴とする。
【0019】このようにすれば、ビット挿入位置や出力
すべきパラレル出力データの範囲を簡素な処理で決める
ことができるようになる。
【0020】また本発明は、前記ビット挿入回路が、前
記パラレル出力データの末尾における第1の信号レベル
のビットの連続数を記憶する連続数記憶回路を含み、前
記演算回路が、前回のクロックサイクルにおいて記憶さ
れた前記連続数に基づいて、前記ビット挿入位置を演算
することを特徴とする。
【0021】このようにすれば、適正なビット挿入位置
に第2の信号レベルのビットを挿入できるようになる。
【0022】また本発明は、前記ビット挿入回路が、少
なくとも1クロックサイクル前のパラレル入力データを
記憶するデータ記憶回路と、記憶された前記少なくとも
1クロックサイクル前のパラレル入力データと現在のク
ロックサイクルのパラレル入力データとを合成した合成
データを出力するデータ合成回路と、前記あふれ累積値
に基づいて、前記合成データの中から、ビット挿入され
たパラレル出力データを選択するセレクタとを含むこと
を特徴とする。
【0023】このようにすれば、前段の回路から所与の
クロックサイクルでパラレル入力データが順次入力され
てきた場合にも、これらのパラレル入力データをデータ
記憶回路に一時的に保持しながら、ビット挿入処理を行
うことができるようになる。
【0024】また本発明は、前記ビット挿入回路が、前
記あふれ累積値が所与の値になった場合に、パラレル入
力データの入力を少なくとも1クロックサイクル期間だ
け停止させる信号を前段の回路に対して出力することを
特徴とする。
【0025】このようにすれば、前段の回路から所与の
クロックサイクルでパラレル入力データが次々と入力さ
れることで、処理が追いつかなくなった場合にも、前段
の回路によるパラレル入力データの出力を停止させるこ
とができるようになる。これにより、前段の回路からの
パラレル入力データが喪失されてしまう事態を防止でき
る。
【0026】また本発明は、前記ビット挿入回路と前記
パラレル−シリアル変換回路の間に設けられ、前記ビッ
ト挿入回路からのNビットのパラレル出力データを、物
理層用のNビットのパラレルエンコードデータに変換す
るエンコーダを含むことを特徴とする。
【0027】このようにすれば、シリアルデータに変換
される前のパラレルデータの状態で、データのエンコー
ド処理を行うことができるようになる。これにより、シ
リアルデータの状態で処理する場合に比べて、例えば1
/Nのクロック周波数でエンコーダは動作すればよいこ
とになる。従って、データ転送制御装置の低コスト化、
開発期間の短縮化、信頼性の向上を図れるようになる。
【0028】また本発明は、シリアルバスを介したデー
タ転送のためのデータ転送制御装置であって、前記シリ
アルバスで転送されるシリアルデータをパラレルデータ
に変換するためのシリアル−パラレル変換回路と、第1
の信号レベルのビットが所与の個数だけ連続したことを
条件に挿入された第2の信号レベルのビットを削除する
ビット削除回路とを含み、前記ビット削除回路が、前記
シリアル−パラレル変換回路の後段に設けられると共
に、前記ビット削除回路が、前記シリアル−パラレル変
換回路を介して所与のクロックサイクルで入力されたN
ビットのパラレル入力データを受け、ビット削除された
Nビットのパラレル出力データを出力することを特徴と
する。
【0029】本発明によれば、ビット削除回路がシリア
ル−パラレル変換回路の後段に設けられる。従って、パ
ラレルデータの状態で、ビット削除処理を行うことがで
きるようになる。これにより、シリアルデータの状態の
ままで処理する場合に比べて、例えば1/Nのクロック
周波数でビット削除回路は動作すればよいことになる。
従って、微細加工が可能な最新の半導体プロセスを使う
必要が無くなるため、データ転送制御装置の低コスト化
を図れる。また、信号タイミングに関するクリティカル
パスが減るため、データ転送制御装置の開発期間を短縮
化できると共に、データ転送制御装置の動作の信頼性を
高めることができるようになる。
【0030】また本発明は、前記ビット削除回路が、ビ
ット削除によるデータ長の縮みにより足りなくなったビ
ットを次のクロックサイクルのデータから繰り上げるた
めの処理を行うことを特徴とする。
【0031】このようにすれば、所与のクロックサイク
ルでNビットのパラレル入力データが順次入力されてき
た場合に、ビット削除されたNビットのパラレル出力デ
ータを、例えば同一のクロックサイクルで適正に順次出
力できるようになる。
【0032】また本発明は、前記ビット削除回路が、前
記第2の信号レベルのビットの削除位置とビット削除に
よるデータ長の縮みビット数とを演算する演算回路と、
演算された縮みビット数を累積的に加算又は減算するこ
とで得られる縮み累積値を記憶する縮み累積値記憶回路
とを含み、前記ビット削除回路が、前記ビット削除位置
に基づいて、前記第2の信号レベルのビットを削除しな
がら、前記縮み累積値に基づいて、出力すべきパラレル
出力データを決定することを特徴とする。
【0033】このようにすれば、ビット削除位置や出力
すべきパラレル出力データの範囲を簡素な処理で決める
ことができるようになる。
【0034】また本発明は、前記ビット削除回路が、ビ
ット削除される前のパラレル出力データの末尾における
第1の信号レベルのビットの連続数を記憶する連続数記
憶回路を含み、前記演算回路が、前回のクロックサイク
ルにおいて記憶された前記連続数に基づいて、前記ビッ
ト削除位置を演算することを特徴とする。
【0035】このようにすれば、ビット削除位置にある
第2の信号レベルのビットを適正に削除できるようにな
る。
【0036】また本発明は、前記ビット削除回路が、少
なくとも1クロックサイクル前のパラレル入力データを
記憶するデータ記憶回路と、記憶された前記少なくとも
1クロックサイクル前のパラレル入力データと現在のク
ロックサイクルのパラレル入力データとを合成した合成
データを出力するデータ合成回路と、前記縮み累積値に
基づいて、前記合成データの中から、ビット削除された
パラレル出力データを選択するセレクタとを含むことを
特徴とする。
【0037】このようにすれば、シリアル−パラレル変
換回路を介して所与のクロックサイクルでパラレル入力
データが順次入力されてきた場合にも、これらのパラレ
ル入力データをデータ記憶回路に一時的に保持しなが
ら、ビット削除処理を行うことができるようになる。
【0038】また本発明は、前記ビット削除回路が、前
記縮み累積値が所与の値になった場合に、パラレル出力
データの取り込みを少なくとも1クロックサイクル期間
だけ停止させる信号を後段の回路に対して出力すること
を特徴とする。
【0039】このようにすれば、ビット削除により、後
段の回路に出力すべきパラレル出力データが無くなった
場合にも、後段の回路によるパラレル出力データの取り
込みを停止させることができるようになる。これによ
り、誤ったパラレル出力データが後段の回路に出力され
る事態を防止できる。
【0040】また本発明は、前記シリアル−パラレル変
換回路と前記ビット削除回路との間に設けられ、物理層
用に変換されたNビットのパラレルエンコードデータを
デコードし、Nビットのパラレル入力データとして前記
ビット削除回路に出力するデコーダを含むことを特徴と
する。
【0041】このようにすれば、パラレルデータの状態
で、エンコードデータのデコード処理を行うことができ
るようになる。これにより、シリアルデータの状態で処
理する場合に比べて、例えば1/Nのクロック周波数で
デコーダは動作すればよいことになる。従って、データ
転送制御装置の低コスト化、開発期間の短縮化、信頼性
の向上を図れるようになる。
【0042】なお本発明では、前記第1の信号レベルの
ビットが所与の個数だけ連続したことを条件に前記第2
の信号レベルのビットを挿入する処理が、USB(Univ
ersal Serial Bus)規格におけるビットスタッフィング
処理であることが望ましい。
【0043】また本発明に係る電子機器は、上記のいず
れかのデータ転送制御装置と、前記データ転送制御装置
及び前記シリアルバスを介して相手デバイスから受信し
たデータに所与の処理を施す装置と、処理が施されたデ
ータを出力又は記憶するための装置とを含むことを特徴
とする。また本発明に係る電子機器は、上記のいずれか
のデータ転送制御装置と、前記データ転送制御装置及び
前記シリアルバスを介して相手デバイスに転送するデー
タに所与の処理を施す装置と、処理が施されるデータを
取り込むための装置とを含むことを特徴とする。
【0044】本発明によれば、電子機器に使用されるデ
ータ転送制御装置の低コスト化、信頼性の向上を図れる
ため、電子機器の低コスト化、信頼性の向上も図ること
ができるようになる。また、本発明によれば、高速な転
送モードでデータ転送を行うことができるようになるた
め、電子機器の処理の高速化を図れるようになる。
【0045】
【発明の実施の形態】以下、本発明の好適な実施形態に
ついて図面を用いて詳細に説明する。
【0046】1.全体構成 図1に本実施形態のデータ転送制御装置の全体構成の例
を示す。
【0047】本実施形態のデータ転送制御装置は、デー
タ処理回路200、パケット処理回路202、HS(ハ
イスピードモード)用エンコーダ&デコーダ204、F
S(フルスピードモード)用エンコーダ&デコーダ20
6、シグナリング回路208を含む。なお、データ処理
回路200、パケット処理回路202、FS用エンコー
ダ&デコーダ206は任意の構成要素であり、本実施形
態のデータ転送制御装置は、これらの構成要素を全て含
む必要はない。
【0048】データ処理回路200は、USB規格のト
ランザクション層の処理や、FIFO(送受信バッフ
ァ)を用いたエンドポイントの管理処理などを行う回路
である。また、データ処理回路200は、外部のCPU
やDMAコントローラとのインターフェース回路として
の機能も有する。
【0049】パケット処理回路202は、USBにより
送受信されるパケットを組み立てたり分解したりする処
理を行う回路である。より具体的には、送信時には、S
OP(Start Of Packet)やEOP(End Of Packet)を
付加する処理などを行い、受信時には、SOPやEOP
を削除する処理などを行う。またパケット処理回路20
2は、データの送受信を制御するための各種のタイミン
グ信号を生成する処理も行う。
【0050】HS用エンコーダ&デコーダ204、FS
用エンコーダ&デコーダ206は、USBで転送される
データのエンコード(送信時)やデコード(受信時)を
行う回路である。そして、HS用エンコーダ&デコーダ
204は、データ転送速度が480Mbpsとなるハイ
スピードモード用のエンコーダ、デコーダであり、FS
用エンコーダ&デコーダ206は、データ転送速度が1
2Mbpsとなるフルスピードモード用のエンコーダ、
デコーダである。
【0051】ここで、ハイスピードモードは、USB
2.0により規格化される予定の転送モードである。一
方、フルスピードモードは、従来のUSB1.1で規格
化されている転送モードである。
【0052】USB2.0では、このようなハイスピー
ドモードが用意されているため、プリンタ、オーディ
オ、カメラなどにおけるデータ転送のみならず、ハード
ディスクドライブや光ディスクドライブ(CDROM、
DVD)などのストレージ機器におけるデータ転送も実
現できるようになる。
【0053】シグナリング回路208は、USBを介し
て他のデバイスに送信する信号の波形を調整したり、U
SBを介して他のデバイスから受信した信号の同期化処
理や、データやクロックを抽出する処理などを行う。
【0054】そして、シグナリング回路208は、送信
時にHS用エンコーダ&デコーダ204又はFS用エン
コーダ&デコーダ206から出力されるパラレルデータ
を、シリアルデータに変換するパラレル−シリアル変換
回路210を含む。また、受信時にUSBを介して転送
されるシリアルデータをパラレルデータに変換し、HS
用エンコーダ&デコーダ204又はFS用エンコーダ&
デコーダ206に出力するシリアル−パラレル変換回路
212を含む。
【0055】図2に、本実施形態の要部であるHS用エ
ンコーダ&デコーダ204の構成例を示す。
【0056】HS用エンコーダ&デコーダ204は、ビ
ットスタッフィング回路10(広義にはビット挿入回
路)、NRZIエンコーダ12(広義には、パラレルデ
ータを物理層用のパラレルエンコードデータに変換する
エンコーダ)、NRZIデコーダ14(広義には、物理
層用に変換されたパラレルエンコードデータをデコード
し、パラレルデータを出力するデコーダ)、ビットアン
スタッフィング回路16(広義にはビット削除回路)を
含む。
【0057】ここで、ビットスタッフィング回路10、
NRZIエンコーダ12は、データの送信(TX)時に
動作する回路であり、NRZIデコーダ14、ビットア
ンスタッフィング回路16は、データの受信(RX)時
に動作する回路である。
【0058】まず、NRZI(Non Return to Zero Inv
ert)、ビットスタッフィング(BitStuffing)について
図3(A)、(B)を用いて簡単に説明する。
【0059】NRZIでは、図3(A)のA1、A2に
示すように、元データのビットが"0"である場合には信
号レベルを反転させ、A3に示すように、元データのビ
ットが"1"である場合には信号レベルを維持する。この
ようなエンコード方式を採用すれば、元データに"0"の
ビットが続くことで、信号レベルが長時間変化しなかっ
た場合にも、NRZI後のデータの信号レベルはビット
毎に信号レベルが変化するようになる。従って、元デー
タの"0"のビットの発生比率が"1"のビットの発生比率
に比べて十分に高い場合には、クロック抽出に最適なデ
ータにエンコードできるようになる。
【0060】しかしながら、図3(A)のA3から明ら
かなように、元データに"1"のビットが連続して並ぶ
と、NRZI後のデータの信号レベルが変化しない状態
が長時間続くことになり、PLLの同期はずれの問題が
生じてしまう。
【0061】このためUSBでは、ビットスタッフィン
グ(広義にはビット挿入)と呼ばれる処理を採用してい
る。即ち図3(B)のA4に示すように、"1"のビット
が連続して6個続くと、その後に必ず"0"のビットを挿
入するようにする。そしてA5に示すように、ビットス
タッフ後のデータをNRZIでエンコードする。
【0062】このようにすることで、元データに"1"の
ビットが並んでいた場合にも、図3(B)のA6に示す
ようにNRZIエンコードデータの信号レベルが反転す
るようになる。従って、信号レベルが長時間変化しない
状態が続く問題を解決でき、クロック抽出に最適なデー
タを得ることができる。
【0063】なお、受信側においては、送信側のビット
スタッフィングにより挿入された"0"のビットを削除す
るビットアンスタッフィング処理を行う。即ち、"1"の
ビットが連続して6個続き、その後に"0"のビットが挿
入されていた場合には、その"0"のビットを削除する。
【0064】さて、このようなNRZIやビットスタッ
フィングやビットアンスタッフィングは、前のビットの
信号レベルの状態を見て現在のビットの信号レベルの状
態を決めるため、シリアルデータ処理に最適な処理とな
る。
【0065】このため送信側においては、図4の比較例
に示すように、ビットスタッフィング回路302やNR
ZIエンコーダ304は、通常、パラレル−シリアル変
換回路300の後段に設けられる。そして、パラレル−
シリアル変換回路300による変換により得られたシリ
アルデータに対して、ビットスタッフィングやNRZI
エンコードの処理が行われる。
【0066】一方、受信側においては、NRZIデコー
ダ306やビットアンスタッフィング回路308は、通
常、シリアル−パラレル変換回路310の前段に設けら
れる。そして、シリアルデータの状態でビットアンタッ
フィングやNRZIデコードの処理を行い、処理後のシ
リアルデータをシリアル−パラレル変換回路310に入
力して、パラレルデータを得る。
【0067】ところが、USB2.0で採用予定のハイ
スピードモードでは、データ転送速度が480Mbps
となるため、図4の構成では、B1、B2に示すシリア
ルデータ処理(NRZI、ビットスタッフィング、ビッ
トアンスタッフィング)を480MHzのクロック周波
数で実現しなければならなくなる。
【0068】この場合、微細加工が可能な最新の半導体
プロセスを採用すれば、B1、B2に示すシリアルデー
タ処理を480MHzで実現することも可能である。
【0069】しかしながら、ASIC(Application Sp
ecific Integrated Circuit)などでは、コストとの兼
ね合いから、このような最新の半導体プロセスではな
く、通常の半導体プロセスを採用する方が望ましい。
【0070】また、例えば、ビットスタッフィング回路
302、NRZIエンコーダ304、NRZIデコーダ
306、ビットアンスタッフィング回路308の回路パ
ターンを、配線容量が最適になるように手作業でレイア
ウトすれば、通常の半導体プロセスを用いても、これら
の回路を480MHzで動作させ得る可能性はある。
【0071】しかしながら、このような手作業レイアウ
トは、ICの開発期間の長期化の問題やICの誤動作の
問題を招く。
【0072】そこで、本実施形態では図2に示すよう
に、送信側においては、ビットスタッフィング回路10
(ビット挿入回路)を、パラレル−シリアル変換回路
(図1の210)の前段に設けるようにしている。そし
て、このビットスタッフィング回路10が、前段のパケ
ット処理回路(図1の202)から所与のクロックサイ
クルで入力された8ビット(広義にはNビット)のtx_d
ata(パラレル入力データ)を受け、ビットスタッフ
(ビット挿入)された8ビットのtx_bs_data(パラレル
出力データ)を例えば上記クロックサイクルで出力する
ようにしている。
【0073】更に、ビットスタッフィング回路10から
の8ビットのtx_bs_dataを、8ビットのtx_en_data(物
理層用のパラレルエンコードデータ)に変換するNRZ
Iエンコーダ12を、ビットスタッフィング回路10と
パラレル−シリアル変換回路の間に設けるようにしてい
る。
【0074】一方、受信側においては、ビットアンスタ
ッフィング回路16(ビット削除回路)を、シリアル−
パラレル変換回路(図1の212)の後段に設けるよう
にしている。そして、このビットアンスタッフィング回
路16が、シリアル−パラレル変換回路を介して所与の
クロックサイクルで入力された8ビット(Nビット)の
rx_bs_data(パラレル入力データ)を受け、ビットアン
スタッフ(ビット削除)された8ビットのrx_data(パ
ラレル出力データ)を例えば上記クロックサイクルで出
力するようにしている。
【0075】更に、8ビットのrx_en_data(物理層用に
変換されたパラレルエンコードデータ)をデコードし、
8ビットのrx_bs_data(パラレル入力データ)としてビ
ットアンスタッフィング回路16に出力するNRZIデ
コーダ14を、シリアル−パラレル変換回路とビットア
ンスタッフィング回路16との間に設けるようにしてい
る。
【0076】以上のような構成にすることで、NRZ
I、ビットスタッフィング、ビットアンスタッフィング
の処理をパラレルデータの状態のままで実現できるよう
になる。従って、例えばN=8ビットの場合には480
MHz/8=60MHzという低いクロック周波数で、
ビットスタッフィング回路10、NRZIエンコーダ1
2、NRZIデコーダ14、ビットアンスタッフィング
回路16は動作すればよいことになる。
【0077】従って、微細加工が可能な最新の半導体プ
ロセスを用いなくても、NRZI、ビットスタッフィン
グ、ビットアンスタッフィングの処理を実現できるよう
になる。この結果、データ転送制御装置の低コスト化を
図れる。
【0078】また、これらの回路10〜16のパターン
を手作業でレイアウトしなくても済むようになる。従っ
て、回路10〜16のパターンをゲートアレイなどの自
動配置配線で生成できるようになり、開発期間の短縮
化、データ転送制御装置の低コスト化を図れる。
【0079】また、回路10〜16は、60MHzとい
う低速のクロック周波数で動作すればよいため、データ
のスキューやジッタに対する耐性を高めることができ、
データ転送の信頼性を大幅に向上できる。
【0080】図5に、送信側におけるビットスタッフィ
ング及びNRZIエンコードの様子を示す。
【0081】なお、USBにおいてはLSBファースト
でデータが入出力される。また、USB2.0において
はEOP(FEh)についてはビットスタッフされな
い。
【0082】また、説明を簡単にするために、SOPと
して3バイトの(00000008h)が付加され、E
OPとして1バイトの(FEh)が付加された場合につ
いて示してある。また、USBのパケット書式ではあり
得ないデータではあるが、パケット本体として8バイト
の(FFFFFFFFFFFFFFFFh)のデータが
入力された場合について示してある。
【0083】また、図5において、点網掛け部分はその
値が不問であることを意味する。
【0084】例えば図5のC1に示すようにtx_dataと
して(FFh)が図2のビットスタッフィング回路10
に入力された場合を考える。この場合には、前のクロッ
クサイクルでの末尾(MSB側)の"1"のビットの連続
数はC2に示すように1であるため、"1"のビットの連
続数が5になったところでC3に示すようにビットスタ
ッフィングにより"0"のビットが挿入される。
【0085】従って、図2のビットスタッフィング回路
10から出力されるtx_bs_dataは、C4に示すように
(DFh)になる。そして、この(DFh)はNRZI
エンコーダ12にエンコードされ、tx_en_dataとしてC
5に示すように(1Fh)が出力されることになる。即
ち、C6に示すように"0"のビットがビットスタッフィ
ングにより挿入されることで、C7に示すようにtx_en_
dataの信号レベルが反転する。従って、"1"のビットが
続いた場合にも、tx_en_dataの信号レベルが反転するよ
うになり、受信側でのクロックの抽出が容易になる。
【0086】なお、C3に示すように"0"のビットが挿
入されると、C8に示すビットがあふれることになる。
そこで本実施形態では、このあふれたビットを、C9に
示すように次のクロックサイクルのデータに繰り越すよ
うにしている。
【0087】また図5のC10では、前のクロックサイ
クルでの末尾の"1"のビットの連続数は2(C8のビッ
トが繰り越されているため)であるため、"1"のビット
の連続数が4になったところでC11に示すように"0"
のビットが挿入される。
【0088】従って、ビットスタッフィング回路10か
ら出力されるtx_bs_dataは、C12に示すように(EF
h)になる。またNRZIエンコーダ12から出力され
るtx_en_dataはC13に示すように(F0h)になる。
即ち、C14に示すように"0"のビットが挿入されるこ
とで、C15に示すようにtx_en_dataの信号レベルが反
転し、受信側でのクロックの抽出が容易になる。
【0089】また図5のC16では、ビットの挿入数の
累積値(あふれビット数の累積値)が8個以上になった
ため、前段のパケット処理回路(図1の202)からの
tx_dataの入力が停止される。これは、前段のパケット
処理回路に出力される図2の信号tx_readyを非アクティ
ブにすることで実現される。
【0090】図6に、受信側におけるNRZIデコード
及びビットアンスタッフィングの様子を示す。
【0091】図6では、図5と同様に、USBのパケッ
ト書式ではあり得ないデータではあるが、パケット本体
として8バイトの(FFFFFFFFFFFFFFFF
h)のデータが入力された場合について示してある。
【0092】また、図6において点網掛け部分はその値
が不問であることを意味し、斜線網掛け部分はビットス
タッフィングにより"0"が挿入されているビットを表
す。
【0093】例えば図6のD1に示すようにrx_en_data
として(1Fh)が図2のNRZIデコーダ14に入力
された場合には、NRZIデコーダ14から出力される
rx_bs_dataはD2に示すように(DFh)になる。この
(DFh)は、送信側のビットスタッフィングによりD
3に示す位置に"0"が挿入されたデータである(図5の
C6参照)。
【0094】そして、この(DFh)が図2のビットア
ンスタッフィング回路16に入力されると、D3に示
す"0"のビットが削除される。即ち、この場合には、前
のクロックサイクルでの末尾の"1"のビットの連続数は
D4に示すように1であるため、"1"のビットの連続数
が5になったところでビットアンスタッフィングにより
次の"0"のビットが削除される。これにより、ビットア
ンスタッフィング回路16から出力されるrx_dataはD
5に示すように(FFh)になる。
【0095】なお、D3に示すように"0"のビットが削
除されると、データ長が縮んでしまい、データ長が8ビ
ットに満たなくなってしまう。そこで本実施形態では、
D6に示すビットを次のクロックサイクルのデータから
繰り上げるようにしている。
【0096】また図6のD7に示すようにrx_en_dataと
して(F0h)がNRZIデコーダ14に入力された場
合には、NRZIデコーダ14から出力されるrx_bs_da
taはD8に示すように(EFh)になる。この(EF
h)は、送信側のビットスタッフィングによりD9に示
す位置に"0"が挿入されたデータである(図5のC14
参照)。
【0097】そして、この(EFh)がビットアンスタ
ッフィング回路16に入力されると、D9に示す"0"の
ビットが削除される。即ち、この場合には、前のクロッ
クサイクルでの末尾の"1"のビットの連続数は3(D6
に示すビットが繰り上げられているため)であるた
め、"1"のビットの連続数が3になったところで次の"
0"のビットが削除される。これにより、ビットアンス
タッフィング回路16から出力されるrx_dataはD10
に示すように(FFh)になる。
【0098】また図6のD11では、ビットの削除数の
累積値(縮みビット数の累積値)が8以上になったた
め、後段のパケット処理回路(図1の202)によるrx
_dataの取り込み処理が停止される。これは、後段のパ
ケット処理回路に出力される図2の信号rx_strbを非ア
クティブにすることで実現される。
【0099】2.詳細な構成例 次に、図2の各回路ブロックの詳細な構成例について説
明する。
【0100】2.1 ビットスタッフィング回路 図7に、図2のビットスタッフィング回路10の構成例
を示す。
【0101】ビットスタッフィング回路10は、ビット
スタッフィング処理回路20と、データ記憶回路32
と、データ合成回路34と、プリセレクタ36(プリシ
フター)及びポストセレクタ38(ポストシフター)を
有するセレクタ35を含む。
【0102】ここで、ビットスタッフィング処理回路2
0は、ビット挿入によりあふれたビットを次のクロック
サイクルのデータに繰り越すための処理を行うものであ
り、送信シーケンサ22、ビットスタッフ位置&あふれ
演算回路24、あふれ累積値記憶回路26、連続数演算
回路28、連続数記憶回路30を含む。
【0103】送信シーケンサ22は、ビットスタッフィ
ング処理や送信処理のための各種の信号を生成する。具
体的には、ビットスタッフィング処理回路20内の各回
路ブロックに対する制御信号を生成する。また、前段の
パケット処理回路(図1の202)からの送信要求信号
tx_reqやビットスタッフィングの禁止指示信号dis_bsを
受け、送信レディ信号tx_readyを出力する。また、後段
のNRZIエンコーダ(図2の12)に対して、tx_bs_
dataが有効か否かを表す信号tx_validやクリア信号clea
rを出力する。
【0104】ビットスタッフ位置&あふれ演算回路24
は、ビットスタッフ位置(第2の信号レベルのビットの
挿入位置)と、ビットスタッフィング(ビット挿入)に
よりあふれたビットの数を演算する処理を行う。
【0105】あふれ累積値記憶回路26は、ビットスタ
ッフ位置&あふれ演算回路24により演算されたあふれ
ビット数を累積的に加算(減算でもよい)することで得
られるあふれ累積値を記憶する。
【0106】本実施形態では、演算されたビットスタッ
フ位置に基づいて、ビットスタッフィングのための"0"
のビットが挿入される。また、記憶されたあふれ累積値
に基づいて、出力すべきtx_bs_dataの範囲が決定され
る。
【0107】連続数演算回路28は、tx_bs_dataの末尾
における"1"のビットの連続数を演算し、この連続数を
連続数記憶回路30が記憶する。
【0108】ビットスタッフ位置&あふれ演算回路24
は、前回のクロックサイクルにおいて連続数記憶回路3
0に記憶された末尾の"1"の連続数に基づいて、ビット
スタッフ位置を演算することになる。
【0109】データ記憶回路32は、1クロックサイク
ル前のtx_dataの全ビットを記憶する回路である。な
お、必要であれば、2クロックサイクル前のtx_dataの
一部又は全部のビットや、3〜M(M>4)クロックサ
イクル前のtx_dataの一部又は全部のビットを記憶する
ようにしてもよい。
【0110】データ合成回路34は、データ記憶回路3
2に記憶された1クロックサイクル前のtx_dataの全ビ
ットと、現在のクロックサイクルのtx_dataの全ビット
とを合成し、16ビットの合成データを出力する。
【0111】プリセレクタ36は、あふれ累積値記憶回
路26からのあふれ累積値に基づいて、この16ビット
の合成データから8ビットのデータを選択して、ポスト
セレクタ38に出力する。
【0112】ポストセレクタ38は、プリセレクタ36
からの8ビットのデータを受け、ビットスタッフ位置&
あふれ演算回路24により演算されたビットスタッフ位
置に"0"のビットを挿入し、ビット挿入された8ビット
のtx_bs_dataを出力する。
【0113】次に図8を用いて、図7の回路の動作につ
いて詳細に説明する。
【0114】例えば図8のE1では、現在のクロックサ
イクルのtx_dataであるI2=(FFh)と、1クロッ
クサイクル前のtx_dataであり、データ記憶回路32に
記憶されているI1=(80h)とが、データ合成回路
34に入力される。データ合成回路34は、これらの
(FFh)と(80h)からなる合成データをプリセレ
クタ36に出力する。
【0115】この時、あふれ累積値記憶回路26に記憶
されるあふれ累積値は図8のE2に示すように0になっ
ている。従って、このあふれ累積値をあふれ累積値記憶
回路26から受けたプリセレクタ36は、合成データの
中から、E3に示す位置を先頭ビットとする8ビットの
データを選択して出力する。
【0116】また、連続数記憶回路30に記憶される末
尾の"1"の連続数は図8のE4、E5に示すように1で
あるため、ビットスタッフ位置&あふれ演算回路24
は、6−1=5の計算を行い、E6に示す位置をビット
スタッフ位置としてポストセレクタ38に知らせる。
【0117】すると、プリセレクタ36からの8ビット
のデータとビットスタッフ位置&あふれ演算回路24か
らのビットスタッフ位置を受けたポストセレクタ38
は、指定されたビットスタッフ位置に"0"のビットを挿
入する。これにより、E7に示す8ビットのデータ(D
Fh)が、E8に示すようにtx_bs_dataとして出力され
るようになる。
【0118】なお、この場合、プリセレクタ36から出
力された8ビットのデータのうちE9に示すビットは、
ビットスタッフィングによりあふれビットになるため、
E10に示すように次のクロックサイクルのデータに繰
り越されることになる。
【0119】図8のE11では、データ合成回路34
は、I3=(FFh)とI2=(FFh)を合成し、プ
リセレクタ36に出力する。
【0120】この時、あふれ累積値は1つ加算されて図
8のE12に示すように1になっている。従って、プリ
セレクタ36は、合成データの中から、E13に示す位
置を先頭ビットとする8ビットのデータを選択して出力
する。
【0121】また、末尾の"1"の連続数はE14に示す
ように2であるため、E15に示す位置がビットスタッ
フ位置としてポストセレクタ38に知らされる。
【0122】すると、ポストセレクタ38は、指定され
たビットスタッフ位置に"0"のビットを挿入する。これ
により、E16に示す(EFh)が、E17に示すよう
にtx_bs_dataとして出力されるようになる。
【0123】以上のようにして、ビットスタッフされた
tx_bs_dataがクロックサイクル毎に順次出力される。そ
して、ビットスタッフィングにより"0"のビットが挿入
される毎に、あふれ累積値が例えばE18、E19、E
20、E21、E22に示すように増加して行く。そし
て、これに伴い、8ビットのデータを取り出す位置もE
23、E24、E25、E26、E27に示すように変
化して行く。
【0124】そして、E28に示すようにあふれ累積値
が8になると、あふれ累積値は0に初期化される(9の
場合には1に初期化される)。すると、図7の送信シー
ケンサ22が、前段のパケット処理回路に出力する送信
レディ信号tx_readyを、図8のE29に示すように1ク
ロックサイクル期間だけ非アクティブにする。これによ
り、E30、E31に示すように、tx_dataの入力が、
1クロックサイクル期間だけ停止される。また、E3
2、E33に示すように、図7のデータ記憶回路32へ
のデータの取り込みも停止される。
【0125】そして、次のE34のクロックサイクルで
は、あふれ累積値が0に初期化されているため、E35
に示す位置から8ビットのデータが取り出されることに
なる。
【0126】以上のようにすることで、本実施形態で
は、あふれ累積値が8又は9(所与の値)になった場合
にも合成データの中から8ビットのデータを矛盾無く取
り出すことに成功している。
【0127】2.2 NRZIエンコーダ 図9に、図2のNRZIエンコーダ12の構成例を示
す。
【0128】NRZIエンコーダ12は、NRZIエン
コード演算回路50と末尾ビット記憶回路52を含む。
【0129】ここで、NRZIエンコード演算回路50
は、前段のビットスタッフィング回路10からのtx_bs_
dataと末尾ビット記憶回路52からのlast1bitを受け、
エンコード後のtx_en_dataを出力する回路である。
【0130】末尾ビット記憶回路52は、tx_en_dataの
末尾の1ビットの信号レベルを記憶し、これをlast1bit
としてNRZIエンコード演算回路50に出力する回路
である。
【0131】なお、末尾ビット記憶回路52は、前段の
ビットスタッフィング回路10からの信号clearがアク
ティブになるとリセットされる。また、信号tx_validに
1が立っていることを条件に、tx_en_dataの末尾の1ビ
ットを記憶する。
【0132】図10に、NRZIエンコード演算回路5
0の動作を表すフローチャートを示す。
【0133】まず、前段のビットスタッフィング回路1
0からのtx_bs_data[0](tx_bs_dataのビット0)が1
か否かを判断する(ステップS1)。
【0134】そして、tx_bs_data[0]=1の場合には、t
x_en_data[0]の信号レベルをlast1bitと同一信号レベ
ルに設定する(ステップS2)。例えば図11のF1で
は、tx_bs_data[0]=1でありlast1bit=1であるた
め、tx_en_data[0]=1(last1bit=1と同一信号レベ
ル)になる。
【0135】一方、tx_bs_data[0]=0の場合には、tx_
en_data[0]の信号レベルをlast1bitの反転信号レベル
に設定する(ステップS3)。例えば図11のF2で
は、tx_bs_data[0]=0でありlast1bit=0であるた
め、tx_en_data[0]=1(last1bit=0の反転信号レベ
ル)になる。
【0136】次に、n=1に設定し、tx_bs_data[n]が
1か否かを判断する(ステップS4、S5)。
【0137】そして、tx_bs_data[n]=1の場合には、t
x_en_data[n]の信号レベルをtx_en_data[n-1]と同一信
号レベルに設定する(ステップS6)。例えば図11の
F3では、tx_bs_data[1]=1でありtx_en_data[0]=1
であるため、tx_en_data[1]=1(tx_en_data[0]=1と
同一信号レベル)になる。
【0138】一方、tx_bs_data[n]=0の場合には、tx_
en_data[n]の信号レベルをtx_en_data[n-1]の反転信号
レベルに設定する(ステップS7)。例えば図11のF
4では、tx_bs_data[1]=0でありtx_en_data[0]=1で
あるため、tx_en_data[1]=0(tx_en_data[0]=1の反
転信号レベル)になる。
【0139】次に、nを1つインクリメントする(ステ
ップS8)。そして、ステップS5〜S8の処理をn>
8になるまで繰り返すことで(ステップS9)、全ての
tx_en_data[n]を得る。
【0140】図12に、ビットスタッフィング回路1
0、NRZIエンコーダ14において入出力される各種
の信号の波形例を示す。なお、図12のtx_bs_dataは、
波形を整えるためにクロックでサンプリングされている
ため、図8のtx_bs_dataよりも1クロックサイクルだけ
遅れた信号になっている。
【0141】図12のG1、G2に示すように、あふれ
累積値が8又は9になると、送信レディ信号tx_readyが
非アクティブになり、tx_dataの入力が1クロックサイ
クル期間だけ停止する(図8のE29、E30、E31
参照)。
【0142】また、図12のG3に示すように、EOP
=(FEh)の入力時にdis_bsがアクティブになり、ビ
ットスタッフィングが禁止される。
【0143】また、G4、G5に示すように、送信要求
信号tx_reqが非アクティブになってから、例えば2クロ
ックサイクル後に信号clearがアクティブになり、図9
の末尾ビット記憶回路52がリセットされる。
【0144】また、G6に示す信号tx_validは、tx_bs_
dataが有効な時にだけ1になる。
【0145】2.3 NRZIデコーダ 図13に、図2のNRZIデコーダ14の構成例を示
す。
【0146】NRZIデコーダ14は、NRZIデコー
ド演算回路60と末尾ビット記憶回路62を含む。
【0147】ここで、NRZIデコード演算回路60
は、前段のシリアル−パラレル変換回路(図1の21
2)からのrx_en_dataと末尾ビット記憶回路62からの
last1bitを受け、デコード後のrx_bs_dataを出力する回
路である。
【0148】末尾ビット記憶回路62は、rx_en_dataの
末尾の1ビットの信号レベルを記憶し、これをlast1bit
としてNRZIデコード演算回路60に出力する回路で
ある。
【0149】なお、末尾ビット記憶回路62は、信号cl
earがアクティブになるとリセットされる。また、信号r
x_validに1が立っていることを条件に、rx_en_dataの
末尾の1ビットを記憶する。
【0150】図14に、NRZIデコード演算回路60
の動作を表すフローチャートを示す。
【0151】まず、前段のシリアル−パラレル変換回路
からのrx_en_data[0](rx_en_dataのビット0)の信号
レベルがlast1bitの信号レベルと等しいか否かを判断す
る(ステップS11)。
【0152】そして、rx_en_data[0]の信号レベルがlas
t1bitと等しい場合には、rx_bs_data[0]=1にする(ス
テップS12)。例えば図15のG1では、rx_en_data
[0]=last1bit=1であるため、rx_bs_data[0]=1に
なる。
【0153】一方、rx_en_data[0]の信号レベルがlast1
bitと等しくない場合には、rx_bs_data[0]=0にする
(ステップS13)。例えば図15のG2では、rx_en_
data[0]=1、last1bit=0であるため、rx_bs_data
[0]=0になる。
【0154】次に、n=1に設定し、rx_en_data[n]の
信号レベルがrx_en_data[n-1]の信号レベルに等しいか
否かを判断する(ステップS14、S15)。
【0155】そして、rx_en_data[n]の信号レベルがrx_
en_data[n-1]と等しい場合には、rx_bs_data[n]=1に
する(ステップS16)。例えば図15のG3では、rx
_en_data[1]=rx_en_data[0]=1であるため、rx_bs_da
ta[1]=1になる。
【0156】一方、rx_en_data[n]の信号レベルがrx_en
_data[n-1]と等しくない場合には、rx_bs_data[n]=0
にする(ステップS17)。例えば図15のG4では、
rx_en_data[1]=0、rx_en_data[0]=1であるため、rx
_bs_data[1]=0になる。
【0157】次に、nを1つインクリメントする(ステ
ップS18)。そして、ステップS15〜S18の処理
をn>8になるまで繰り返すことで(ステップS1
9)、全てのrx_bs_data[n]を得る。
【0158】2.4 ビットアンスタッフィング回路 図16に、図2のビットアンスタッフィング回路16の
構成例を示す。
【0159】ビットアンスタッフィング回路16は、ビ
ットアンスタッフィング処理回路70と、データ記憶回
路82と、データ合成回路84と、プリセレクタ86
(プリシフター)及びポストセレクタ88(ポストシフ
ター)を有するセレクタ85を含む。
【0160】ここで、ビットアンスタッフィング処理回
路70は、ビット削除によるデータ長の縮みにより足り
なくなったビットを次のクロックサイクルのデータから
繰り上げるための処理を行うものであり、受信シーケン
サ72、ビットアンスタッフ位置&縮み演算回路74、
縮み累積値記憶回路76、連続数演算回路78、連続数
記憶回路80を含む。
【0161】受信シーケンサ72は、ビットアンスタッ
フィング処理や受信処理のための各種の信号を生成す
る。具体的には、ビットアンスタッフィング処理回路7
0内の各回路ブロックに対する制御信号を生成する。ま
た、前段のシリアル−パラレル変換回路(図1の21
2)から信号rx_validを受け、信号clear、rx_in、rx_s
trbを出力する。
【0162】ビットアンスタッフ位置&縮み演算回路7
4は、ビットアンスタッフ位置(第2の信号レベルのビ
ットの削除位置)と、ビットアンスタッフィング(ビッ
ト削除)によるデータ長の縮みビット数を演算する処理
を行う。
【0163】縮み累積値記憶回路76は、ビットアンス
タッフ位置&縮み演算回路74により演算された縮みビ
ット数を初期値から累積的に減算(加算でもよい)する
ことで得られる縮み累積値を記憶する。
【0164】本実施形態では、演算されたビットアンス
タッフ位置に基づいて、送信側のビットスタッフィング
により挿入された"0"のビットが削除される。また、記
憶された縮み累積値に基づいて、出力すべきrx_dataの
範囲が決定される。
【0165】連続数演算回路78は、ビットアンスタッ
フされる前のrx_dataの末尾における"1"のビットの連続
数(プリセレクタ86の出力のうちポストセレクタ88
により選択されるデータの末尾における"1"のビットの
連続数)を演算し、この連続数を連続数記憶回路80が
記憶する。
【0166】ビットアンスタッフ位置&縮み演算回路7
4は、前回のクロックサイクルにおいて連続数記憶回路
80に記憶された末尾の"1"の連続数に基づいて、ビッ
トアンスタッフ位置を演算することになる。
【0167】データ記憶回路82は、2クロックサイク
ル前のrx_bs_dataのbit7(末尾ビット)と1クロックサ
イクル前のrx_bs_dataの全ビットを記憶する回路であ
る。なお、必要であれば、2クロックサイクル前のrx_b
s_dataの全部のビットや、3〜M(M>4)クロックサ
イクル前のrx_bs_dataの一部又は全部のビットを記憶す
るようにしてもよい。
【0168】データ合成回路84は、データ記憶回路8
2に記憶された2クロックサイクル前のrx_bs_dataのbi
t7及び1クロックサイクル前のrx_bs_dataの全ビット
と、現在のクロックサイクルのrx_bs_dataの全ビットと
を合成し、17ビットの合成データを出力する。
【0169】プリセレクタ86は、縮み累積値記憶回路
76からの縮み累積値に基づいて、この17ビットの合
成データから10ビットのデータを選択して、ポストセ
レクタ88に出力する。
【0170】ポストセレクタ88は、プリセレクタ86
からの10ビットのデータを受け、ビットアンスタッフ
位置&縮み演算回路74により演算されたビットアンス
タッフ位置にある"0"のビットを削除し、ビット削除さ
れた8ビットのrx_dataを出力する。
【0171】次に図17を用いて、図16の回路の動作
について詳細に説明する。
【0172】例えば図17のH1では、現在のクロック
サイクルのrx_bs_dataであるI3=(EFh)と、1ク
ロックサイクル前のI2=(DFh)と、2クロックサ
イクル前のI1の末尾ビットである"1”が、データ合
成回路84により合成され、その合成データがプリセレ
クタ86に出力される。
【0173】この時、縮み累積値記憶回路76に記憶さ
れる縮み累積値は図17のH2に示すように8(初期
値)になっている。従って、この縮み累積値を受けたプ
リセレクタ86は、合成データの中から、H3に示す位
置を先頭ビットとする10ビットのデータを選択して出
力する。
【0174】また、連続数記憶回路80に記憶される末
尾の"1"の連続数は図17のH4、H5に示すように1
であるため、ビットアンスタッフ位置&縮み演算回路7
4は、6−1=5の計算を行い、H6に示す位置をビッ
トアンスタッフ位置としてポストセレクタ88に知らせ
る。
【0175】すると、プリセレクタ86からの10ビッ
トのデータとビットアンスタッフ位置&縮み演算回路7
4からのビットアンスタッフ位置を受けたポストセレク
タ88は、指定されたビットアンスタッフ位置にある"
0"のビットを削除する。これにより、H7に示す8ビ
ットのデータ(FFh)が、H8に示すようにrx_data
として出力されるようになる。
【0176】なお、この場合に、ビット削除により足り
なくなったH9に示すビットは、データI2の次のクロ
ックサイクルのデータI3から繰り上げられることにな
る。
【0177】図17のH10では、データ合成回路84
は、I4=(F7h)、I3=(EFh)、I2の末尾
ビットである"1"を合成し、プリセレクタ86に出力す
る。
【0178】この時、縮み累積値は1つ減算されてH1
1に示すように7になっている。従って、プリセレクタ
86は、合成データの中から、H12に示す位置を先頭
ビットとする10ビットのデータを選択して出力する。
【0179】また、末尾の"1"の連続数はH13に示す
ように3であるため、H14に示す位置がビットアンス
タッフ位置としてポストセレクタ88に知らされる。
【0180】すると、ポストセレクタ88は、指定され
たビットアンスタッフ位置にある"0"のビットを削除す
る。これにより、H15に示す(FFh)が、H16に
示すようにrx_dataとして出力されるようになる。
【0181】以上のようにして、ビットアンスタッフさ
れたrx_dataがクロックサイクル毎に順次出力される。
そして、ビットアンスタッフィングにより"0"のビット
が削除される毎に縮み累積値が例えばH17、H18、
H19に示すように減少して行く。そして、これに伴
い、10ビットのデータを取り出す位置もH20、H2
1、H22に示すように変化して行く。
【0182】そして、H23に示すように縮み累積値が
0になると、縮み累積値は8に初期化される(1の場合
には9に初期化される)。すると、図16の受信シーケ
ンサ72が、後段のパケット処理回路に出力する受信ス
トローブ信号rx_strbを、図17のH24に示すように
1クロックサイクル期間だけ非アクティブにする。これ
により、H25に示すように、rx_dataの取り込みが、
1クロックサイクル期間だけ停止される。
【0183】そして、次のH26のクロックサイクルで
は、縮み累積値が8に初期化されているため、H27に
示す位置から10ビットのデータが取り出されることに
なる。
【0184】以上のようにすることで、本実施形態で
は、縮み累積値が0又は1(所与の値)になった場合に
も合成データの中から10ビットのデータを矛盾無く取
り出すことに成功している。
【0185】図18に、NRZIデコーダ14、ビット
アンスタッフィング回路16で入出力される各種の信号
の波形例を示す。なお、図18のrx_data、rx_strbは、
波形を整えるためにクロックでサンプリングされている
ため、図17のrx_data、rx_strbよりも1クロックサイ
クルだけ遅れた信号になっている。
【0186】図18のJ1、J2に示すように、縮み累
積値が8又は9になると、受信ストローブ信号rx_strb
が非アクティブになり、rx_dataの取り込みが1クロッ
クサイクル期間だけ停止する(図17のH24、H25
参照)。
【0187】また、図12のG3で説明したように送信
側ではEOPに対するビットスタッフィング処理が行わ
れない。従って、EOPを受け取った時に受信側ではビ
ットスタッフィングエラーが生じ、図18のJ3に示す
ように、受信エラー信号rx_errがアクティブになる。即
ち、受信側は、ビットスタッフィングエラーを検出する
ことで、EOPを検出することになる。
【0188】3.電子機器 次に、本実施形態のデータ転送制御装置を含む電子機器
の例について説明する。
【0189】例えば図19(A)に電子機器の1つであ
るプリンタの内部ブロック図を示し、図20(A)にそ
の外観図を示す。CPU(マイクロコンピュータ)51
0はシステム全体の制御などを行う。操作部511はプ
リンタをユーザが操作するためのものである。ROM5
16には、制御プログラム、フォントなどが格納され、
RAM517はCPU510のワーク領域として機能す
る。DMAC518は、CPU510を介さずにデータ
転送を行うためのDMAコントローラである。表示パネ
ル519はプリンタの動作状態をユーザに知らせるため
のものである。
【0190】USBを介してパーソナルコンピュータな
どの他のデバイスから送られてきたシリアルの印字デー
タは、データ転送制御装置500によりパラレルの印字
データに変換される。そして、変換後のパラレル印字デ
ータは、CPU510又はDMAC518により、印字
処理部(プリンタエンジン)512に送られる。そし
て、印字処理部512においてパラレル印字データに対
して所与の処理が施され、プリントヘッダなどからなる
印字部(データを出力するための装置)514により紙
に印字されて出力される。
【0191】図19(B)に電子機器の1つであるスキ
ャナの内部ブロック図を示し、図20(B)にその外観
図を示す。CPU520はシステム全体の制御などを行
う。操作部521はスキャナをユーザが操作するための
ものである。ROM526には制御プログラムなどが格
納され、RAM527はCPU520のワーク領域とし
て機能する。DMAC528はDMAコントローラであ
る。
【0192】光源、光電変換器などからなる画像読み取
り部(データを取り込むための装置)522により原稿
の画像が読み取られ、読み取られた画像のデータは画像
処理部(スキャナエンジン)524により処理される。
そして、処理後の画像データは、CPU520又はDM
AC528によりデータ転送制御装置500に送られ
る。データ転送制御装置500は、このパラレルの画像
データをシリアルデータに変換し、USBを介してパー
ソナルコンピュータなどの他のデバイスに送信する。
【0193】図19(C)に電子機器の1つであるCD
−RWドライブの内部ブロック図を示し、図20(C)
にその外観図を示す。CPU530はシステム全体の制
御などを行う。操作部531はCD−RWをユーザが操
作するためのものである。ROM536には制御プログ
ラムなどが格納され、RAM537はCPU530のワ
ーク領域として機能する。DMAC538はDMAコン
トローラである。
【0194】レーザ、モータ、光学系などからなる読み
取り&書き込み部(データを取り込むための装置又はデ
ータを記憶するための装置)533によりCD−RW5
32から読み取られたデータは、信号処理部534に入
力され、エラー訂正処理などの所与の信号処理が施され
る。そして、信号処理が施されたデータが、CPU53
0又はDMAC538によりデータ転送制御装置500
に送られる。データ転送制御装置500は、このパラレ
ルのデータをシリアルデータに変換し、USBを介して
パーソナルコンピュータなどの他のデバイスに送信す
る。
【0195】一方、USBを介して他のデバイスから送
られてきたシリアルのデータは、データ転送制御装置5
00によりパラレルのデータに変換される。そして、こ
のパラレルデータは、CPU530又はDMAC538
により信号処理部534に送られる。そして、信号処理
部534においてこのパラレルデータに対して所与の信
号処理が施され、読み取り&書き込み部533によりC
D−RW532に記憶される。
【0196】なお、図19(A)、(B)、(C)にお
いて、CPU510、520、530の他に、データ転
送制御装置500でのデータ転送制御のためのCPUを
別に設けるようにしてもよい。
【0197】本実施形態のデータ転送制御装置を電子機
器に用いれば、USB2.0におけるハイスピードモー
ドでのデータ転送が可能になる。従って、ユーザがパー
ソナルコンピュータなどによりプリントアウトの指示を
行った場合に、少ないタイムラグで印字が完了するよう
になる。また、スキャナへの画像取り込みの指示の後
に、少ないタイムラグで読み取り画像をユーザは見るこ
とができるようになる。また、CD−RWからのデータ
の読み取りや、CD−RWへのデータの書き込みを高速
に行うことができるようになる。
【0198】また、本実施形態のデータ転送制御装置を
電子機器に用いれば、製造コストが安い通常の半導体プ
ロセスでデータ転送制御装置のICを製造できるように
なる。従って、データ転送制御装置の低コスト化を図
れ、電子機器の低コスト化も図れるようになる。また、
データ転送制御の中で高速で動作する部分を少なくする
ことができるため、データ転送の信頼性を向上でき、電
子機器の信頼性も向上できるようになる。
【0199】なお本実施形態のデータ転送制御装置を適
用できる電子機器としては、上記以外にも例えば、種々
の光ディスクドライブ(CD−ROM、DVD)、光磁
気ディスクドライブ(MO)、ハードディスクドライ
ブ、TV、VTR、ビデオカメラ、オーディオ機器、電
話機、プロジェクタ、パーソナルコンピュータ、電子手
帳、ワードプロセッサなど種々のものを考えることがで
きる。
【0200】なお、本発明は本実施形態に限定されず、
本発明の要旨の範囲内で種々の変形実施が可能である。
【0201】例えば、本発明のデータ転送制御装置の構
成は、図1や図2に示す構成に限定されるものではな
い。
【0202】また、ビット挿入回路、エンコーダ、デコ
ーダ、ビット削除回路の構成も、図7、図9、図13、
図16で説明した構成が特に望ましいが、これらと均等
な種々の構成を採用できる。
【0203】また、本発明は、USB2.0でのデータ
転送に適用されることが特に望ましいが、これに限定さ
れるものではない。例えばUSB2.0と同様の思想に
基づく規格やUSB2.0を発展させた規格におけるデ
ータ転送にも本発明は適用できる。
【図面の簡単な説明】
【図1】本実施形態のデータ転送制御装置の全体構成例
を示す図である。
【図2】本実施形態の要部であるHS用エンコーダ&デ
コーダの構成例を示す図である。
【図3】図3(A)、(B)は、NRZI及びビットス
タッフィングについて説明するための図である。
【図4】比較例について説明するための図である。
【図5】送信側におけるビットスタッフィング及びNR
ZIエンコードの様子について示す図である。
【図6】受信側におけるビットアンスタッフィング及び
NRZIデコードの様子について示す図である。
【図7】ビットスタッフィング回路(ビット挿入回路)
の構成例を示す図である。
【図8】ビットスタッフィング回路の動作について説明
するための図である。
【図9】NRZIエンコーダの構成例を示す図である。
【図10】NRZIエンコーダの動作について説明する
ためのフローチャートである。
【図11】NRZIエンコーダの動作について説明する
ための図である。
【図12】ビットスタッフィング回路、NRZIエンコ
ーダで入出力される各種の信号の波形例である。
【図13】NRZIデコーダの構成例を示す図である。
【図14】NRZIデコーダの動作について説明するた
めのフローチャートである。
【図15】NRZIデコーダの動作について説明するた
めの図である。
【図16】ビットアンスタッフィング回路(ビット削除
回路)の構成例を示す図である。
【図17】ビットアンスタッフィング回路の動作につい
て説明するための図である。
【図18】ビットアンスタッフィング回路、NRZIデ
コーダで入出力される各種の信号の波形例である。
【図19】図19(A)、(B)、(C)は、種々の電
子機器の内部ブロック図の例である。
【図20】図20(A)、(B)、(C)は、種々の電
子機器の外観図の例である。
【符号の説明】
10 ビットスタッフィング回路(ビット挿入回路) 12 NRZIエンコーダ 14 NRZIデコーダ 16 ビットアンスタッフィング回路(ビット削除回
路) 20 ビットスタッフィング処理回路 22 送信シーケンサ 24 ビットスタッフ位置&あふれ演算回路 26 縮み累積値記憶回路 28 連続数演算回路 30 連続数記憶回路 32 データ記憶回路 34 データ合成回路 35 セレクタ 36 プリセレクタ 38 ポストセレクタ 50 NRZIエンコード演算回路 52 末尾ビット記憶回路 60 NRZIデコード演算回路 62 末尾ビット記憶回路 70 ビットアンスタッフィング処理回路 72 受信シーケンサ 74 ビットアンスタッフ位置&縮み演算回路 76 縮み累積値記憶回路 78 連続数演算回路 80 連続数記憶回路 82 データ記憶回路 84 データ合成回路 85 セレクタ 86 プリセレクタ 88 ポストセレクタ

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 シリアルバスを介したデータ転送のため
    のデータ転送制御装置であって、 第1の信号レベルのビットが所与の個数だけ連続したこ
    とを条件に第2の信号レベルのビットを挿入するビット
    挿入回路と、 パラレルデータを前記シリアルバスで転送されるシリア
    ルデータに変換するためのパラレル−シリアル変換回路
    とを含み、 前記ビット挿入回路が、 前記パラレル−シリアル変換回路の前段に設けられると
    共に、 前記ビット挿入回路が、 前段の回路から所与のクロックサイクルで入力されたN
    ビットのパラレル入力データを受け、ビット挿入された
    Nビットのパラレル出力データを出力することを特徴と
    するデータ転送制御装置。
  2. 【請求項2】 請求項1において、 前記ビット挿入回路が、 ビット挿入によりあふれたビットを次のクロックサイク
    ルのデータに繰り越すための処理を行うことを特徴とす
    るデータ転送制御装置。
  3. 【請求項3】 請求項1又は2において、 前記ビット挿入回路が、 前記第2の信号レベルのビットの挿入位置とビット挿入
    によりあふれたビットの数とを演算する演算回路と、 演算されたあふれビット数を累積的に加算又は減算する
    ことで得られるあふれ累積値を記憶するあふれ累積値記
    憶回路とを含み、 前記ビット挿入回路が、 前記ビット挿入位置に基づいて、前記第2の信号レベル
    のビットを挿入しながら、前記あふれ累積値に基づい
    て、出力すべきパラレル出力データを決定することを特
    徴とするデータ転送制御装置。
  4. 【請求項4】 請求項3において、 前記ビット挿入回路が、 前記パラレル出力データの末尾における第1の信号レベ
    ルのビットの連続数を記憶する連続数記憶回路を含み、 前記演算回路が、 前回のクロックサイクルにおいて記憶された前記連続数
    に基づいて、前記ビット挿入位置を演算することを特徴
    とするデータ転送制御装置。
  5. 【請求項5】 請求項3又は4において、 前記ビット挿入回路が、 少なくとも1クロックサイクル前のパラレル入力データ
    を記憶するデータ記憶回路と、 記憶された前記少なくとも1クロックサイクル前のパラ
    レル入力データと現在のクロックサイクルのパラレル入
    力データとを合成した合成データを出力するデータ合成
    回路と、 前記あふれ累積値に基づいて、前記合成データの中か
    ら、ビット挿入されたパラレル出力データを選択するセ
    レクタとを含むことを特徴とするデータ転送制御装置。
  6. 【請求項6】 請求項3乃至5のいずれかにおいて、 前記ビット挿入回路が、 前記あふれ累積値が所与の値になった場合に、パラレル
    入力データの入力を少なくとも1クロックサイクル期間
    だけ停止させる信号を前段の回路に対して出力すること
    を特徴とするデータ転送制御装置。
  7. 【請求項7】 請求項1乃至6のいずれかにおいて、 前記ビット挿入回路と前記パラレル−シリアル変換回路
    の間に設けられ、前記ビット挿入回路からのNビットの
    パラレル出力データを、物理層用のNビットのパラレル
    エンコードデータに変換するエンコーダを含むことを特
    徴とするデータ転送制御装置。
  8. 【請求項8】 シリアルバスを介したデータ転送のため
    のデータ転送制御装置であって、 前記シリアルバスで転送されるシリアルデータをパラレ
    ルデータに変換するためのシリアル−パラレル変換回路
    と、 第1の信号レベルのビットが所与の個数だけ連続したこ
    とを条件に挿入された第2の信号レベルのビットを削除
    するビット削除回路とを含み、 前記ビット削除回路が、 前記シリアル−パラレル変換回路の後段に設けられると
    共に、 前記ビット削除回路が、 前記シリアル−パラレル変換回路を介して所与のクロッ
    クサイクルで入力されたNビットのパラレル入力データ
    を受け、ビット削除されたNビットのパラレル出力デー
    タを出力することを特徴とするデータ転送制御装置。
  9. 【請求項9】 請求項8において、 前記ビット削除回路が、 ビット削除によるデータ長の縮みにより足りなくなった
    ビットを次のクロックサイクルのデータから繰り上げる
    ための処理を行うことを特徴とするデータ転送制御装
    置。
  10. 【請求項10】 請求項8又は9において、 前記ビット削除回路が、 前記第2の信号レベルのビットの削除位置とビット削除
    によるデータ長の縮みビット数とを演算する演算回路
    と、 演算された縮みビット数を累積的に加算又は減算するこ
    とで得られる縮み累積値を記憶する縮み累積値記憶回路
    とを含み、 前記ビット削除回路が、 前記ビット削除位置に基づいて、前記第2の信号レベル
    のビットを削除しながら、前記縮み累積値に基づいて、
    出力すべきパラレル出力データを決定することを特徴と
    するデータ転送制御装置。
  11. 【請求項11】 請求項10において、 前記ビット削除回路が、 ビット削除される前のパラレル出力データの末尾におけ
    る第1の信号レベルのビットの連続数を記憶する連続数
    記憶回路を含み、 前記演算回路が、 前回のクロックサイクルにおいて記憶された前記連続数
    に基づいて、前記ビット削除位置を演算することを特徴
    とするデータ転送制御装置。
  12. 【請求項12】 請求項10又は11において、 前記ビット削除回路が、 少なくとも1クロックサイクル前のパラレル入力データ
    を記憶するデータ記憶回路と、 記憶された前記少なくとも1クロックサイクル前のパラ
    レル入力データと現在のクロックサイクルのパラレル入
    力データとを合成した合成データを出力するデータ合成
    回路と、 前記縮み累積値に基づいて、前記合成データの中から、
    ビット削除されたパラレル出力データを選択するセレク
    タとを含むことを特徴とするデータ転送制御装置。
  13. 【請求項13】 請求項10乃至12のいずれかにおい
    て、 前記ビット削除回路が、 前記縮み累積値が所与の値になった場合に、パラレル出
    力データの取り込みを少なくとも1クロックサイクル期
    間だけ停止させる信号を後段の回路に対して出力するこ
    とを特徴とするデータ転送制御装置。
  14. 【請求項14】 請求項8乃至13のいずれかにおい
    て、 前記シリアル−パラレル変換回路と前記ビット削除回路
    との間に設けられ、物理層用に変換されたNビットのパ
    ラレルエンコードデータをデコードし、Nビットのパラ
    レル入力データとして前記ビット削除回路に出力するデ
    コーダを含むことを特徴とするデータ転送制御装置。
  15. 【請求項15】 請求項1乃至14のいずれかにおい
    て、 前記第1の信号レベルのビットが所与の個数だけ連続し
    たことを条件に前記第2の信号レベルのビットを挿入す
    る処理が、USB(Universal Serial Bus)規格におけ
    るビットスタッフィング処理であることを特徴とするデ
    ータ転送制御装置。
  16. 【請求項16】 請求項1乃至15のいずれかのデータ
    転送制御装置と、 前記データ転送制御装置及び前記シリアルバスを介して
    相手デバイスから受信したデータに所与の処理を施す装
    置と、 処理が施されたデータを出力又は記憶するための装置と
    を含むことを特徴とする電子機器。
  17. 【請求項17】 請求項1乃至15のいずれかのデータ
    転送制御装置と、 前記データ転送制御装置及び前記シリアルバスを介して
    相手デバイスに転送するデータに所与の処理を施す装置
    と、 処理が施されるデータを取り込むための装置とを含むこ
    とを特徴とする電子機器。
JP2000073622A 2000-03-16 2000-03-16 データ転送制御装置及び電子機器 Expired - Fee Related JP3603732B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2000073622A JP3603732B2 (ja) 2000-03-16 2000-03-16 データ転送制御装置及び電子機器
US09/805,029 US6732204B2 (en) 2000-03-16 2001-03-14 Data transfer control device and electronic equipment
CN01122059.7A CN1269049C (zh) 2000-03-16 2001-03-16 数据传送控制装置及电子设备
TW090106255A TW540208B (en) 2000-03-16 2001-03-16 Data transfer control device and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000073622A JP3603732B2 (ja) 2000-03-16 2000-03-16 データ転送制御装置及び電子機器

Publications (2)

Publication Number Publication Date
JP2001268142A true JP2001268142A (ja) 2001-09-28
JP3603732B2 JP3603732B2 (ja) 2004-12-22

Family

ID=18591842

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000073622A Expired - Fee Related JP3603732B2 (ja) 2000-03-16 2000-03-16 データ転送制御装置及び電子機器

Country Status (4)

Country Link
US (1) US6732204B2 (ja)
JP (1) JP3603732B2 (ja)
CN (1) CN1269049C (ja)
TW (1) TW540208B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6911843B2 (en) 2002-08-07 2005-06-28 Renesas Technology Corp. Data transfer device for transferring data between blocks of different clock domains
JP2011186582A (ja) * 2010-03-05 2011-09-22 Seiko Epson Corp データ転送制御装置及び電子機器

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3646644B2 (ja) * 2000-10-31 2005-05-11 セイコーエプソン株式会社 データ転送制御装置及び電子機器
US6901471B2 (en) * 2001-03-01 2005-05-31 Synopsys, Inc. Transceiver macrocell architecture allowing upstream and downstream operation
CN1156783C (zh) * 2001-03-27 2004-07-07 国际商业机器公司 在网页上加载广告的服务器及方法和网页显示装置及方法
US6883047B2 (en) * 2001-05-25 2005-04-19 Intel Corporation Concurrent asynchronous USB data stream destuffer with variable width bit-wise memory controller
US7003599B2 (en) * 2001-10-24 2006-02-21 Intel Corporation Pipelined, universal serial bus parallel frame delineator and NRZI decoder
US7039106B2 (en) * 2002-03-25 2006-05-02 Intel Corporation Processing digital data prior to compression
KR100579838B1 (ko) * 2003-07-14 2006-05-15 삼성전자주식회사 피코넷 간의 상호 간섭을 완화 시키는 초광대역 통신을위한 tfi-ofdm 전송/수신 시스템 및 그의전송/수신 방법
JP2005071273A (ja) * 2003-08-27 2005-03-17 Canon Inc 電子機器及びそのインターフェース制御方法
US8667194B2 (en) * 2003-12-15 2014-03-04 Finisar Corporation Two-wire interface in which a master component monitors the data line during the preamble generation phase for synchronization with one or more slave components
US8225024B2 (en) * 2004-03-05 2012-07-17 Finisar Corporation Use of a first two-wire interface communication to support the construction of a second two-wire interface communication
TWI261174B (en) * 2004-04-02 2006-09-01 Jtek Technology Corp Universal serial bus (USB) physical layer apparatus and its method
JP4750379B2 (ja) * 2004-05-31 2011-08-17 キヤノン株式会社 電子機器
US20060190655A1 (en) * 2005-02-24 2006-08-24 International Business Machines Corporation Apparatus and method for transaction tag mapping between bus domains
US7469312B2 (en) * 2005-02-24 2008-12-23 International Business Machines Corporation Computer system bus bridge
US8514894B2 (en) 2005-08-02 2013-08-20 Elliptic Technologies Inc. Method for inserting/removal padding from packets
KR100969748B1 (ko) * 2007-01-29 2010-07-13 삼성전자주식회사 직렬 통신 시스템에서 직렬 데이터의 송수신 방법 및 장치와 이를 위한 직렬 통신 시스템
US8959182B1 (en) * 2008-04-15 2015-02-17 Crimson Corporation Systems and methods for computer data recovery and destruction
DE102009033085B4 (de) * 2009-07-14 2012-04-19 Infineon Technologies Ag Schaltungsanordnung, Vorrichtung zum Übertragen eines seriellen Datenstroms und Pixel-Matrix-Anzeige
US9264287B2 (en) 2010-10-07 2016-02-16 Marvell World Trade Ltd. Encoding parameters for a wireless communication system
CN102486760A (zh) * 2010-12-03 2012-06-06 上海华虹集成电路有限责任公司 一种实现位抽取的并行设计电路
CN102541784A (zh) * 2010-12-21 2012-07-04 上海华虹集成电路有限责任公司 一种实现位填充的并行设计电路
CN102684702A (zh) * 2011-03-15 2012-09-19 上海华虹集成电路有限责任公司 一种nrzi编码的并行设计电路
CN102904577A (zh) * 2011-07-26 2013-01-30 上海华虹集成电路有限责任公司 一种nrzi编解码并行电路
KR20150038389A (ko) * 2012-08-01 2015-04-08 마벨 월드 트레이드 리미티드 무선 통신 시스템을 위한 파라미터들 인코딩
US9517737B2 (en) * 2013-07-01 2016-12-13 Continental Automotive Systems, Inc. Relay control between power distribution center and body control module
US10289600B2 (en) 2013-08-08 2019-05-14 Qualcomm Incorporated Reducing transmitter encoding jitter in a C-PHY interface using multiple clock phases to launch symbols
US9276731B2 (en) 2013-08-08 2016-03-01 Qualcomm Incorporated N-phase signal transition alignment
EP3036835B1 (en) 2013-08-23 2021-06-16 Myriota Pty Ltd Enhanced automatic identification system
GB2526512B (en) * 2014-03-19 2017-07-26 Dyson Technology Ltd Cleaning appliance
US10742390B2 (en) * 2016-07-13 2020-08-11 Novatek Microelectronics Corp. Method of improving clock recovery and related device
US11947480B2 (en) * 2021-12-20 2024-04-02 Synopsys, Inc. Universal serial bus scheduling using real time data
CN116781207A (zh) * 2022-03-10 2023-09-19 恩智浦美国有限公司 一种通用串行总线标准下的数据通信解码设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3654392B2 (ja) * 1996-09-02 2005-06-02 ソニー株式会社 データ受信装置および方法
DE19733748C2 (de) * 1997-08-04 1999-07-15 Bosch Gmbh Robert Datenübertragungsvorrichtung
US6567423B1 (en) * 1999-11-10 2003-05-20 Intel Corporation Parallel bit stuffing for a serial data transfer protocol

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6911843B2 (en) 2002-08-07 2005-06-28 Renesas Technology Corp. Data transfer device for transferring data between blocks of different clock domains
JP2011186582A (ja) * 2010-03-05 2011-09-22 Seiko Epson Corp データ転送制御装置及び電子機器

Also Published As

Publication number Publication date
CN1320865A (zh) 2001-11-07
JP3603732B2 (ja) 2004-12-22
CN1269049C (zh) 2006-08-09
US6732204B2 (en) 2004-05-04
TW540208B (en) 2003-07-01
US20030018839A1 (en) 2003-01-23

Similar Documents

Publication Publication Date Title
JP3603732B2 (ja) データ転送制御装置及び電子機器
JP3646644B2 (ja) データ転送制御装置及び電子機器
JP3580242B2 (ja) シリアル/パラレル変換回路、データ転送制御装置及び電子機器
US6218969B1 (en) Universal serial bus to parallel bus signal converter and method of conversion
JP5252292B2 (ja) インタフェース装置及び電子装置
US20090222601A1 (en) Concurrent asynchronous usb data stream destuffer with variable width bit-wise memory controller
EP1764940A1 (en) A media converter and a system for converting a packet-based data stream into a serial data stream und vice versa
KR20010051014A (ko) 데이터 전송 제어 장치 및 전자 기기
EP3920498B1 (en) Transmission device, transmission method, reception device, reception method, and transmission/reception device
CN1890627A (zh) 通过用于点到点链路的非数据符号处理的缓冲器管理
US7920079B2 (en) Serial signal receiving device, serial transmission system and serial transmission method
CN100561454C (zh) 接收器符号对准的方法、集成电路装置和系统
US5734341A (en) Encoding digital data
JP2003143117A (ja) データ同期化回路及び通信インターフェース回路
CN100484056C (zh) 数据传输控制装置和电子设备
CN118508975A (zh) 一种基于jesd204c协议的发送电路
JP2006074075A (ja) 差動シリアル・ディジタル出力a/d変換手段および撮像装置
CN119052186B (zh) 一种数据转换方法、系统以及车辆
US20090265484A1 (en) Method for enhancing usb transmission rate
JP2004056376A (ja) 半導体装置及びデータ転送制御方法
CN118740958A (zh) 一种串行解串器及网络设备
JP2001168730A (ja) データ送受信装置
JP2000036804A (ja) 同期化回路
JP2005137022A (ja) データ処理方法及びデータ処理装置
JP2007258977A (ja) 光受信装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040802

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040920

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

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091008

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101008

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101008

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111008

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121008

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121008

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131008

Year of fee payment: 9

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees