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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
- G06F13/4059—Coupling 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
削除処理を低速のクロック周波数で実現できるデータ転
送制御装置及び電子機器を提供すること。 【解決手段】 送信側ではビットスタッフィング回路1
0及びNRZIデコーダ12をパラレル−シリアル変換
回路の前段に設け、受信側ではNRZIデコーダ14及
びビットアンスタッフィング回路16をシリアル−パラ
レル変換回路の後段に設け、ビットスタッフィング、N
RZIエンコード、NRZIデコード、ビットアンスタ
ッフィングを、シリアルデータ処理ではなくパラレルデ
ータ処理で実現する。ビット挿入によりあふれたビット
を次のクロックサイクルのデータに繰り越したり、ビッ
ト削除により足りなくなったビットを次のクロックサイ
クルのデータから繰り上げる。演算されたきビットスタ
ッフィング(ビットアンスタッフィング)位置に基づき
ビットを挿入(削除)し、あふれ(縮み)ビット数の累
積値に基づき出力すべきパラレルデータの範囲を決定す
る。
Description
置及び電子機器に関し、特に、USB規格に準じたデー
タ転送を行うためのデータ転送制御装置及び電子機器に
関する。
ーソナルコンピュータと周辺機器(広義には電子機器)
とを接続するためのインターフェース規格として、US
B(Universal Serial Bus)が注目を集めている。
とその周辺機器をシリアルバスを介して最大で127台
まで接続できるという利点がある。また、従来は別々の
規格のコネクタで接続されていたマウスやキーボードや
プリンタなどの周辺機器を、同じ規格のコネクタで接続
できると共に、いわゆるプラグ&プレイやホットプラグ
を実現できるという利点もある。
NRZI(Non Return to Zero Invert)と呼ばれる方
式でエンコードされて転送される。このNRZIは、一
般的なデータでは"0"のビットの発生比率が"1"のビッ
トの発生比率に比べてはるかに高いことに着目し、シリ
アルバス上の信号レベルの変化の頻度を増やして同期は
ずれを防ごうとするエンコード方式である。このため、
NRZIでは、元データのビットが"1"の場合には前の
信号レベルを維持し、元データのビットが"0"の場合に
は前の信号レベルを反転させる。
元データに"0"のビットが並んでいる場合には、エンコ
ード後のデータはビット毎に信号レベルが変化するよう
になる。
でいる場合には、エンコード後のデータの信号レベルが
変化しない状態が長時間続くことになり、同期はずれの
問題が生じてしまう。
ビットスタッフィング(広義にはビット挿入)と呼ばれ
る処理を施すようにしている。即ち、"1"のビットが連
続して6回続くと、その後に必ず"0"のビットを挿入す
るようにする。そして、このようにビットスタッフされ
たデータを、上述のNRZIでエンコードする。このよ
うにすることで、元データに"1"のビットが並んでいた
場合にも、信号レベルが変化しない状態が長時間続かな
いようになる。
はあるが、同じくシリアルバスインターフェース規格と
して脚光を浴びているIEEE1394に比べて、転送
速度が遅いという不利点がある。
高速な480Mbps(ハイスピードモード)のデータ
転送速度を実現できるUSB2.0規格の策定が、現在
急ピッチで進められている。
速化されると、前述のビットスタッフィングやNRZI
の処理を1クロックサイクル内で完了することが難しい
という問題があることが判明した。
シリアルデータ処理(シリアルデータで行う処理)に適
している。従って、パラレルデータをパラレル−シリア
ル変換回路によりシリアルデータに変換し、変換後のシ
リアルデータに対してビットスタッフィング処理が行わ
れ、その後にNRZIのエンコードが行われることにな
る。このため、データ転送速度が前述のように480M
bpsである場合には、ビットスタッフィングやNRZ
Iの処理に使用されるクロックの周波数も480MHz
にしなければならない。従って、微細加工が可能な最新
の半導体プロセスが必要となり、このような半導体プロ
セスを使用できない場合には、データ転送速度が480
MHzとなるハイスピードモードでのビットスタッフィ
ングやNRZIの処理を実現するのは非常に困難にな
る。
ィカルパスの支配的な要因になる微細半導体プロセスで
は、480MHzで動作する論理回路を構成するために
は、クロックスキューを最小化して同期動作を保証する
ために手作業による配置、配線が必要になるという問題
もある。
てなされたものであり、その目的とするところは、ビッ
ト挿入、エンコード、デコード、ビット削除処理を低速
のクロック周波数で実現できるデータ転送制御装置及び
電子機器を提供することにある。
に本発明は、シリアルバスを介したデータ転送のための
データ転送制御装置であって、第1の信号レベルのビッ
トが所与の個数だけ連続したことを条件に第2の信号レ
ベルのビットを挿入するビット挿入回路と、パラレルデ
ータを前記シリアルバスで転送されるシリアルデータに
変換するためのパラレル−シリアル変換回路とを含み、
前記ビット挿入回路が、前記パラレル−シリアル変換回
路の前段に設けられると共に、前記ビット挿入回路が、
前段の回路から所与のクロックサイクルで入力されたN
ビットのパラレル入力データを受け、ビット挿入された
Nビットのパラレル出力データを出力することを特徴と
する。
ル−シリアル変換回路の前段に設けられる。従って、シ
リアルデータに変換される前のパラレルデータの状態
で、ビット挿入処理を行うことができるようになる。こ
れにより、シリアルデータの状態のままで処理する場合
に比べて、例えば1/Nのクロック周波数でビット挿入
回路は動作すればよいことになる。従って、微細加工が
可能な最新の半導体プロセスを使う必要が無くなるた
め、データ転送制御装置の低コスト化を図れる。また、
信号タイミングに関するクリティカルパスが減るため、
データ転送制御装置の開発期間を短縮化できると共に、
データ転送制御装置の動作の信頼性を高めることが可能
になる。また、データ転送制御装置の回路パターンの生
成に、既存の自動配置配線手法を使用できるようにな
る。更に、演算に要する時間に余裕が生まれるため、H
DL(Hardware Description Language)を用いた回路
合成により論理回路を生成する手法も使用できるように
なる。
ット挿入によりあふれたビットを次のクロックサイクル
のデータに繰り越すための処理を行うことを特徴とす
る。
ルでNビットのパラレル入力データが順次入力されてき
た場合に、ビット挿入されたNビットのパラレル出力デ
ータを、例えば同一のクロックサイクルで適正に順次出
力できるようになる。
記第2の信号レベルのビットの挿入位置とビット挿入に
よりあふれたビットの数とを演算する演算回路と、演算
されたあふれビット数を累積的に加算又は減算すること
で得られるあふれ累積値を記憶するあふれ累積値記憶回
路とを含み、前記ビット挿入回路が、前記ビット挿入位
置に基づいて、前記第2の信号レベルのビットを挿入し
ながら、前記あふれ累積値に基づいて、出力すべきパラ
レル出力データを決定することを特徴とする。
すべきパラレル出力データの範囲を簡素な処理で決める
ことができるようになる。
記パラレル出力データの末尾における第1の信号レベル
のビットの連続数を記憶する連続数記憶回路を含み、前
記演算回路が、前回のクロックサイクルにおいて記憶さ
れた前記連続数に基づいて、前記ビット挿入位置を演算
することを特徴とする。
に第2の信号レベルのビットを挿入できるようになる。
なくとも1クロックサイクル前のパラレル入力データを
記憶するデータ記憶回路と、記憶された前記少なくとも
1クロックサイクル前のパラレル入力データと現在のク
ロックサイクルのパラレル入力データとを合成した合成
データを出力するデータ合成回路と、前記あふれ累積値
に基づいて、前記合成データの中から、ビット挿入され
たパラレル出力データを選択するセレクタとを含むこと
を特徴とする。
クロックサイクルでパラレル入力データが順次入力され
てきた場合にも、これらのパラレル入力データをデータ
記憶回路に一時的に保持しながら、ビット挿入処理を行
うことができるようになる。
記あふれ累積値が所与の値になった場合に、パラレル入
力データの入力を少なくとも1クロックサイクル期間だ
け停止させる信号を前段の回路に対して出力することを
特徴とする。
クロックサイクルでパラレル入力データが次々と入力さ
れることで、処理が追いつかなくなった場合にも、前段
の回路によるパラレル入力データの出力を停止させるこ
とができるようになる。これにより、前段の回路からの
パラレル入力データが喪失されてしまう事態を防止でき
る。
パラレル−シリアル変換回路の間に設けられ、前記ビッ
ト挿入回路からのNビットのパラレル出力データを、物
理層用のNビットのパラレルエンコードデータに変換す
るエンコーダを含むことを特徴とする。
される前のパラレルデータの状態で、データのエンコー
ド処理を行うことができるようになる。これにより、シ
リアルデータの状態で処理する場合に比べて、例えば1
/Nのクロック周波数でエンコーダは動作すればよいこ
とになる。従って、データ転送制御装置の低コスト化、
開発期間の短縮化、信頼性の向上を図れるようになる。
タ転送のためのデータ転送制御装置であって、前記シリ
アルバスで転送されるシリアルデータをパラレルデータ
に変換するためのシリアル−パラレル変換回路と、第1
の信号レベルのビットが所与の個数だけ連続したことを
条件に挿入された第2の信号レベルのビットを削除する
ビット削除回路とを含み、前記ビット削除回路が、前記
シリアル−パラレル変換回路の後段に設けられると共
に、前記ビット削除回路が、前記シリアル−パラレル変
換回路を介して所与のクロックサイクルで入力されたN
ビットのパラレル入力データを受け、ビット削除された
Nビットのパラレル出力データを出力することを特徴と
する。
ル−パラレル変換回路の後段に設けられる。従って、パ
ラレルデータの状態で、ビット削除処理を行うことがで
きるようになる。これにより、シリアルデータの状態の
ままで処理する場合に比べて、例えば1/Nのクロック
周波数でビット削除回路は動作すればよいことになる。
従って、微細加工が可能な最新の半導体プロセスを使う
必要が無くなるため、データ転送制御装置の低コスト化
を図れる。また、信号タイミングに関するクリティカル
パスが減るため、データ転送制御装置の開発期間を短縮
化できると共に、データ転送制御装置の動作の信頼性を
高めることができるようになる。
ット削除によるデータ長の縮みにより足りなくなったビ
ットを次のクロックサイクルのデータから繰り上げるた
めの処理を行うことを特徴とする。
ルでNビットのパラレル入力データが順次入力されてき
た場合に、ビット削除されたNビットのパラレル出力デ
ータを、例えば同一のクロックサイクルで適正に順次出
力できるようになる。
記第2の信号レベルのビットの削除位置とビット削除に
よるデータ長の縮みビット数とを演算する演算回路と、
演算された縮みビット数を累積的に加算又は減算するこ
とで得られる縮み累積値を記憶する縮み累積値記憶回路
とを含み、前記ビット削除回路が、前記ビット削除位置
に基づいて、前記第2の信号レベルのビットを削除しな
がら、前記縮み累積値に基づいて、出力すべきパラレル
出力データを決定することを特徴とする。
すべきパラレル出力データの範囲を簡素な処理で決める
ことができるようになる。
ット削除される前のパラレル出力データの末尾における
第1の信号レベルのビットの連続数を記憶する連続数記
憶回路を含み、前記演算回路が、前回のクロックサイク
ルにおいて記憶された前記連続数に基づいて、前記ビッ
ト削除位置を演算することを特徴とする。
第2の信号レベルのビットを適正に削除できるようにな
る。
なくとも1クロックサイクル前のパラレル入力データを
記憶するデータ記憶回路と、記憶された前記少なくとも
1クロックサイクル前のパラレル入力データと現在のク
ロックサイクルのパラレル入力データとを合成した合成
データを出力するデータ合成回路と、前記縮み累積値に
基づいて、前記合成データの中から、ビット削除された
パラレル出力データを選択するセレクタとを含むことを
特徴とする。
換回路を介して所与のクロックサイクルでパラレル入力
データが順次入力されてきた場合にも、これらのパラレ
ル入力データをデータ記憶回路に一時的に保持しなが
ら、ビット削除処理を行うことができるようになる。
記縮み累積値が所与の値になった場合に、パラレル出力
データの取り込みを少なくとも1クロックサイクル期間
だけ停止させる信号を後段の回路に対して出力すること
を特徴とする。
段の回路に出力すべきパラレル出力データが無くなった
場合にも、後段の回路によるパラレル出力データの取り
込みを停止させることができるようになる。これによ
り、誤ったパラレル出力データが後段の回路に出力され
る事態を防止できる。
換回路と前記ビット削除回路との間に設けられ、物理層
用に変換されたNビットのパラレルエンコードデータを
デコードし、Nビットのパラレル入力データとして前記
ビット削除回路に出力するデコーダを含むことを特徴と
する。
で、エンコードデータのデコード処理を行うことができ
るようになる。これにより、シリアルデータの状態で処
理する場合に比べて、例えば1/Nのクロック周波数で
デコーダは動作すればよいことになる。従って、データ
転送制御装置の低コスト化、開発期間の短縮化、信頼性
の向上を図れるようになる。
ビットが所与の個数だけ連続したことを条件に前記第2
の信号レベルのビットを挿入する処理が、USB(Univ
ersal Serial Bus)規格におけるビットスタッフィング
処理であることが望ましい。
れかのデータ転送制御装置と、前記データ転送制御装置
及び前記シリアルバスを介して相手デバイスから受信し
たデータに所与の処理を施す装置と、処理が施されたデ
ータを出力又は記憶するための装置とを含むことを特徴
とする。また本発明に係る電子機器は、上記のいずれか
のデータ転送制御装置と、前記データ転送制御装置及び
前記シリアルバスを介して相手デバイスに転送するデー
タに所与の処理を施す装置と、処理が施されるデータを
取り込むための装置とを含むことを特徴とする。
ータ転送制御装置の低コスト化、信頼性の向上を図れる
ため、電子機器の低コスト化、信頼性の向上も図ること
ができるようになる。また、本発明によれば、高速な転
送モードでデータ転送を行うことができるようになるた
め、電子機器の処理の高速化を図れるようになる。
ついて図面を用いて詳細に説明する。
を示す。
タ処理回路200、パケット処理回路202、HS(ハ
イスピードモード)用エンコーダ&デコーダ204、F
S(フルスピードモード)用エンコーダ&デコーダ20
6、シグナリング回路208を含む。なお、データ処理
回路200、パケット処理回路202、FS用エンコー
ダ&デコーダ206は任意の構成要素であり、本実施形
態のデータ転送制御装置は、これらの構成要素を全て含
む必要はない。
ランザクション層の処理や、FIFO(送受信バッフ
ァ)を用いたエンドポイントの管理処理などを行う回路
である。また、データ処理回路200は、外部のCPU
やDMAコントローラとのインターフェース回路として
の機能も有する。
送受信されるパケットを組み立てたり分解したりする処
理を行う回路である。より具体的には、送信時には、S
OP(Start Of Packet)やEOP(End Of Packet)を
付加する処理などを行い、受信時には、SOPやEOP
を削除する処理などを行う。またパケット処理回路20
2は、データの送受信を制御するための各種のタイミン
グ信号を生成する処理も行う。
用エンコーダ&デコーダ206は、USBで転送される
データのエンコード(送信時)やデコード(受信時)を
行う回路である。そして、HS用エンコーダ&デコーダ
204は、データ転送速度が480Mbpsとなるハイ
スピードモード用のエンコーダ、デコーダであり、FS
用エンコーダ&デコーダ206は、データ転送速度が1
2Mbpsとなるフルスピードモード用のエンコーダ、
デコーダである。
2.0により規格化される予定の転送モードである。一
方、フルスピードモードは、従来のUSB1.1で規格
化されている転送モードである。
ドモードが用意されているため、プリンタ、オーディ
オ、カメラなどにおけるデータ転送のみならず、ハード
ディスクドライブや光ディスクドライブ(CDROM、
DVD)などのストレージ機器におけるデータ転送も実
現できるようになる。
て他のデバイスに送信する信号の波形を調整したり、U
SBを介して他のデバイスから受信した信号の同期化処
理や、データやクロックを抽出する処理などを行う。
時にHS用エンコーダ&デコーダ204又はFS用エン
コーダ&デコーダ206から出力されるパラレルデータ
を、シリアルデータに変換するパラレル−シリアル変換
回路210を含む。また、受信時にUSBを介して転送
されるシリアルデータをパラレルデータに変換し、HS
用エンコーダ&デコーダ204又はFS用エンコーダ&
デコーダ206に出力するシリアル−パラレル変換回路
212を含む。
ンコーダ&デコーダ204の構成例を示す。
ットスタッフィング回路10(広義にはビット挿入回
路)、NRZIエンコーダ12(広義には、パラレルデ
ータを物理層用のパラレルエンコードデータに変換する
エンコーダ)、NRZIデコーダ14(広義には、物理
層用に変換されたパラレルエンコードデータをデコード
し、パラレルデータを出力するデコーダ)、ビットアン
スタッフィング回路16(広義にはビット削除回路)を
含む。
NRZIエンコーダ12は、データの送信(TX)時に
動作する回路であり、NRZIデコーダ14、ビットア
ンスタッフィング回路16は、データの受信(RX)時
に動作する回路である。
ert)、ビットスタッフィング(BitStuffing)について
図3(A)、(B)を用いて簡単に説明する。
示すように、元データのビットが"0"である場合には信
号レベルを反転させ、A3に示すように、元データのビ
ットが"1"である場合には信号レベルを維持する。この
ようなエンコード方式を採用すれば、元データに"0"の
ビットが続くことで、信号レベルが長時間変化しなかっ
た場合にも、NRZI後のデータの信号レベルはビット
毎に信号レベルが変化するようになる。従って、元デー
タの"0"のビットの発生比率が"1"のビットの発生比率
に比べて十分に高い場合には、クロック抽出に最適なデ
ータにエンコードできるようになる。
かなように、元データに"1"のビットが連続して並ぶ
と、NRZI後のデータの信号レベルが変化しない状態
が長時間続くことになり、PLLの同期はずれの問題が
生じてしまう。
グ(広義にはビット挿入)と呼ばれる処理を採用してい
る。即ち図3(B)のA4に示すように、"1"のビット
が連続して6個続くと、その後に必ず"0"のビットを挿
入するようにする。そしてA5に示すように、ビットス
タッフ後のデータをNRZIでエンコードする。
ビットが並んでいた場合にも、図3(B)のA6に示す
ようにNRZIエンコードデータの信号レベルが反転す
るようになる。従って、信号レベルが長時間変化しない
状態が続く問題を解決でき、クロック抽出に最適なデー
タを得ることができる。
スタッフィングにより挿入された"0"のビットを削除す
るビットアンスタッフィング処理を行う。即ち、"1"の
ビットが連続して6個続き、その後に"0"のビットが挿
入されていた場合には、その"0"のビットを削除する。
フィングやビットアンスタッフィングは、前のビットの
信号レベルの状態を見て現在のビットの信号レベルの状
態を決めるため、シリアルデータ処理に最適な処理とな
る。
に示すように、ビットスタッフィング回路302やNR
ZIエンコーダ304は、通常、パラレル−シリアル変
換回路300の後段に設けられる。そして、パラレル−
シリアル変換回路300による変換により得られたシリ
アルデータに対して、ビットスタッフィングやNRZI
エンコードの処理が行われる。
ダ306やビットアンスタッフィング回路308は、通
常、シリアル−パラレル変換回路310の前段に設けら
れる。そして、シリアルデータの状態でビットアンタッ
フィングやNRZIデコードの処理を行い、処理後のシ
リアルデータをシリアル−パラレル変換回路310に入
力して、パラレルデータを得る。
スピードモードでは、データ転送速度が480Mbps
となるため、図4の構成では、B1、B2に示すシリア
ルデータ処理(NRZI、ビットスタッフィング、ビッ
トアンスタッフィング)を480MHzのクロック周波
数で実現しなければならなくなる。
プロセスを採用すれば、B1、B2に示すシリアルデー
タ処理を480MHzで実現することも可能である。
ecific Integrated Circuit)などでは、コストとの兼
ね合いから、このような最新の半導体プロセスではな
く、通常の半導体プロセスを採用する方が望ましい。
302、NRZIエンコーダ304、NRZIデコーダ
306、ビットアンスタッフィング回路308の回路パ
ターンを、配線容量が最適になるように手作業でレイア
ウトすれば、通常の半導体プロセスを用いても、これら
の回路を480MHzで動作させ得る可能性はある。
トは、ICの開発期間の長期化の問題やICの誤動作の
問題を招く。
に、送信側においては、ビットスタッフィング回路10
(ビット挿入回路)を、パラレル−シリアル変換回路
(図1の210)の前段に設けるようにしている。そし
て、このビットスタッフィング回路10が、前段のパケ
ット処理回路(図1の202)から所与のクロックサイ
クルで入力された8ビット(広義にはNビット)のtx_d
ata(パラレル入力データ)を受け、ビットスタッフ
(ビット挿入)された8ビットのtx_bs_data(パラレル
出力データ)を例えば上記クロックサイクルで出力する
ようにしている。
の8ビットのtx_bs_dataを、8ビットのtx_en_data(物
理層用のパラレルエンコードデータ)に変換するNRZ
Iエンコーダ12を、ビットスタッフィング回路10と
パラレル−シリアル変換回路の間に設けるようにしてい
る。
ッフィング回路16(ビット削除回路)を、シリアル−
パラレル変換回路(図1の212)の後段に設けるよう
にしている。そして、このビットアンスタッフィング回
路16が、シリアル−パラレル変換回路を介して所与の
クロックサイクルで入力された8ビット(Nビット)の
rx_bs_data(パラレル入力データ)を受け、ビットアン
スタッフ(ビット削除)された8ビットのrx_data(パ
ラレル出力データ)を例えば上記クロックサイクルで出
力するようにしている。
変換されたパラレルエンコードデータ)をデコードし、
8ビットのrx_bs_data(パラレル入力データ)としてビ
ットアンスタッフィング回路16に出力するNRZIデ
コーダ14を、シリアル−パラレル変換回路とビットア
ンスタッフィング回路16との間に設けるようにしてい
る。
I、ビットスタッフィング、ビットアンスタッフィング
の処理をパラレルデータの状態のままで実現できるよう
になる。従って、例えばN=8ビットの場合には480
MHz/8=60MHzという低いクロック周波数で、
ビットスタッフィング回路10、NRZIエンコーダ1
2、NRZIデコーダ14、ビットアンスタッフィング
回路16は動作すればよいことになる。
ロセスを用いなくても、NRZI、ビットスタッフィン
グ、ビットアンスタッフィングの処理を実現できるよう
になる。この結果、データ転送制御装置の低コスト化を
図れる。
を手作業でレイアウトしなくても済むようになる。従っ
て、回路10〜16のパターンをゲートアレイなどの自
動配置配線で生成できるようになり、開発期間の短縮
化、データ転送制御装置の低コスト化を図れる。
う低速のクロック周波数で動作すればよいため、データ
のスキューやジッタに対する耐性を高めることができ、
データ転送の信頼性を大幅に向上できる。
ング及びNRZIエンコードの様子を示す。
でデータが入出力される。また、USB2.0において
はEOP(FEh)についてはビットスタッフされな
い。
して3バイトの(00000008h)が付加され、E
OPとして1バイトの(FEh)が付加された場合につ
いて示してある。また、USBのパケット書式ではあり
得ないデータではあるが、パケット本体として8バイト
の(FFFFFFFFFFFFFFFFh)のデータが
入力された場合について示してある。
値が不問であることを意味する。
して(FFh)が図2のビットスタッフィング回路10
に入力された場合を考える。この場合には、前のクロッ
クサイクルでの末尾(MSB側)の"1"のビットの連続
数はC2に示すように1であるため、"1"のビットの連
続数が5になったところでC3に示すようにビットスタ
ッフィングにより"0"のビットが挿入される。
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の信号レベルが反転するよ
うになり、受信側でのクロックの抽出が容易になる。
入されると、C8に示すビットがあふれることになる。
そこで本実施形態では、このあふれたビットを、C9に
示すように次のクロックサイクルのデータに繰り越すよ
うにしている。
クルでの末尾の"1"のビットの連続数は2(C8のビッ
トが繰り越されているため)であるため、"1"のビット
の連続数が4になったところでC11に示すように"0"
のビットが挿入される。
ら出力されるtx_bs_dataは、C12に示すように(EF
h)になる。またNRZIエンコーダ12から出力され
るtx_en_dataはC13に示すように(F0h)になる。
即ち、C14に示すように"0"のビットが挿入されるこ
とで、C15に示すようにtx_en_dataの信号レベルが反
転し、受信側でのクロックの抽出が容易になる。
累積値(あふれビット数の累積値)が8個以上になった
ため、前段のパケット処理回路(図1の202)からの
tx_dataの入力が停止される。これは、前段のパケット
処理回路に出力される図2の信号tx_readyを非アクティ
ブにすることで実現される。
及びビットアンスタッフィングの様子を示す。
ト書式ではあり得ないデータではあるが、パケット本体
として8バイトの(FFFFFFFFFFFFFFFF
h)のデータが入力された場合について示してある。
が不問であることを意味し、斜線網掛け部分はビットス
タッフィングにより"0"が挿入されているビットを表
す。
として(1Fh)が図2のNRZIデコーダ14に入力
された場合には、NRZIデコーダ14から出力される
rx_bs_dataはD2に示すように(DFh)になる。この
(DFh)は、送信側のビットスタッフィングによりD
3に示す位置に"0"が挿入されたデータである(図5の
C6参照)。
ンスタッフィング回路16に入力されると、D3に示
す"0"のビットが削除される。即ち、この場合には、前
のクロックサイクルでの末尾の"1"のビットの連続数は
D4に示すように1であるため、"1"のビットの連続数
が5になったところでビットアンスタッフィングにより
次の"0"のビットが削除される。これにより、ビットア
ンスタッフィング回路16から出力されるrx_dataはD
5に示すように(FFh)になる。
除されると、データ長が縮んでしまい、データ長が8ビ
ットに満たなくなってしまう。そこで本実施形態では、
D6に示すビットを次のクロックサイクルのデータから
繰り上げるようにしている。
して(F0h)がNRZIデコーダ14に入力された場
合には、NRZIデコーダ14から出力されるrx_bs_da
taはD8に示すように(EFh)になる。この(EF
h)は、送信側のビットスタッフィングによりD9に示
す位置に"0"が挿入されたデータである(図5のC14
参照)。
ッフィング回路16に入力されると、D9に示す"0"の
ビットが削除される。即ち、この場合には、前のクロッ
クサイクルでの末尾の"1"のビットの連続数は3(D6
に示すビットが繰り上げられているため)であるた
め、"1"のビットの連続数が3になったところで次の"
0"のビットが削除される。これにより、ビットアンス
タッフィング回路16から出力されるrx_dataはD10
に示すように(FFh)になる。
累積値(縮みビット数の累積値)が8以上になったた
め、後段のパケット処理回路(図1の202)によるrx
_dataの取り込み処理が停止される。これは、後段のパ
ケット処理回路に出力される図2の信号rx_strbを非ア
クティブにすることで実現される。
明する。
を示す。
スタッフィング処理回路20と、データ記憶回路32
と、データ合成回路34と、プリセレクタ36(プリシ
フター)及びポストセレクタ38(ポストシフター)を
有するセレクタ35を含む。
0は、ビット挿入によりあふれたビットを次のクロック
サイクルのデータに繰り越すための処理を行うものであ
り、送信シーケンサ22、ビットスタッフ位置&あふれ
演算回路24、あふれ累積値記憶回路26、連続数演算
回路28、連続数記憶回路30を含む。
ング処理や送信処理のための各種の信号を生成する。具
体的には、ビットスタッフィング処理回路20内の各回
路ブロックに対する制御信号を生成する。また、前段の
パケット処理回路(図1の202)からの送信要求信号
tx_reqやビットスタッフィングの禁止指示信号dis_bsを
受け、送信レディ信号tx_readyを出力する。また、後段
のNRZIエンコーダ(図2の12)に対して、tx_bs_
dataが有効か否かを表す信号tx_validやクリア信号clea
rを出力する。
は、ビットスタッフ位置(第2の信号レベルのビットの
挿入位置)と、ビットスタッフィング(ビット挿入)に
よりあふれたビットの数を演算する処理を行う。
ッフ位置&あふれ演算回路24により演算されたあふれ
ビット数を累積的に加算(減算でもよい)することで得
られるあふれ累積値を記憶する。
フ位置に基づいて、ビットスタッフィングのための"0"
のビットが挿入される。また、記憶されたあふれ累積値
に基づいて、出力すべきtx_bs_dataの範囲が決定され
る。
における"1"のビットの連続数を演算し、この連続数を
連続数記憶回路30が記憶する。
は、前回のクロックサイクルにおいて連続数記憶回路3
0に記憶された末尾の"1"の連続数に基づいて、ビット
スタッフ位置を演算することになる。
ル前のtx_dataの全ビットを記憶する回路である。な
お、必要であれば、2クロックサイクル前のtx_dataの
一部又は全部のビットや、3〜M(M>4)クロックサ
イクル前のtx_dataの一部又は全部のビットを記憶する
ようにしてもよい。
2に記憶された1クロックサイクル前のtx_dataの全ビ
ットと、現在のクロックサイクルのtx_dataの全ビット
とを合成し、16ビットの合成データを出力する。
路26からのあふれ累積値に基づいて、この16ビット
の合成データから8ビットのデータを選択して、ポスト
セレクタ38に出力する。
からの8ビットのデータを受け、ビットスタッフ位置&
あふれ演算回路24により演算されたビットスタッフ位
置に"0"のビットを挿入し、ビット挿入された8ビット
のtx_bs_dataを出力する。
いて詳細に説明する。
イクルのtx_dataであるI2=(FFh)と、1クロッ
クサイクル前のtx_dataであり、データ記憶回路32に
記憶されているI1=(80h)とが、データ合成回路
34に入力される。データ合成回路34は、これらの
(FFh)と(80h)からなる合成データをプリセレ
クタ36に出力する。
されるあふれ累積値は図8のE2に示すように0になっ
ている。従って、このあふれ累積値をあふれ累積値記憶
回路26から受けたプリセレクタ36は、合成データの
中から、E3に示す位置を先頭ビットとする8ビットの
データを選択して出力する。
尾の"1"の連続数は図8のE4、E5に示すように1で
あるため、ビットスタッフ位置&あふれ演算回路24
は、6−1=5の計算を行い、E6に示す位置をビット
スタッフ位置としてポストセレクタ38に知らせる。
のデータとビットスタッフ位置&あふれ演算回路24か
らのビットスタッフ位置を受けたポストセレクタ38
は、指定されたビットスタッフ位置に"0"のビットを挿
入する。これにより、E7に示す8ビットのデータ(D
Fh)が、E8に示すようにtx_bs_dataとして出力され
るようになる。
力された8ビットのデータのうちE9に示すビットは、
ビットスタッフィングによりあふれビットになるため、
E10に示すように次のクロックサイクルのデータに繰
り越されることになる。
は、I3=(FFh)とI2=(FFh)を合成し、プ
リセレクタ36に出力する。
8のE12に示すように1になっている。従って、プリ
セレクタ36は、合成データの中から、E13に示す位
置を先頭ビットとする8ビットのデータを選択して出力
する。
ように2であるため、E15に示す位置がビットスタッ
フ位置としてポストセレクタ38に知らされる。
たビットスタッフ位置に"0"のビットを挿入する。これ
により、E16に示す(EFh)が、E17に示すよう
にtx_bs_dataとして出力されるようになる。
tx_bs_dataがクロックサイクル毎に順次出力される。そ
して、ビットスタッフィングにより"0"のビットが挿入
される毎に、あふれ累積値が例えばE18、E19、E
20、E21、E22に示すように増加して行く。そし
て、これに伴い、8ビットのデータを取り出す位置もE
23、E24、E25、E26、E27に示すように変
化して行く。
が8になると、あふれ累積値は0に初期化される(9の
場合には1に初期化される)。すると、図7の送信シー
ケンサ22が、前段のパケット処理回路に出力する送信
レディ信号tx_readyを、図8のE29に示すように1ク
ロックサイクル期間だけ非アクティブにする。これによ
り、E30、E31に示すように、tx_dataの入力が、
1クロックサイクル期間だけ停止される。また、E3
2、E33に示すように、図7のデータ記憶回路32へ
のデータの取り込みも停止される。
は、あふれ累積値が0に初期化されているため、E35
に示す位置から8ビットのデータが取り出されることに
なる。
は、あふれ累積値が8又は9(所与の値)になった場合
にも合成データの中から8ビットのデータを矛盾無く取
り出すことに成功している。
す。
コード演算回路50と末尾ビット記憶回路52を含む。
は、前段のビットスタッフィング回路10からのtx_bs_
dataと末尾ビット記憶回路52からのlast1bitを受け、
エンコード後のtx_en_dataを出力する回路である。
末尾の1ビットの信号レベルを記憶し、これをlast1bit
としてNRZIエンコード演算回路50に出力する回路
である。
ビットスタッフィング回路10からの信号clearがアク
ティブになるとリセットされる。また、信号tx_validに
1が立っていることを条件に、tx_en_dataの末尾の1ビ
ットを記憶する。
0の動作を表すフローチャートを示す。
0からのtx_bs_data[0](tx_bs_dataのビット0)が1
か否かを判断する(ステップS1)。
x_en_data[0]の信号レベルをlast1bitと同一信号レベ
ルに設定する(ステップS2)。例えば図11のF1で
は、tx_bs_data[0]=1でありlast1bit=1であるた
め、tx_en_data[0]=1(last1bit=1と同一信号レベ
ル)になる。
en_data[0]の信号レベルをlast1bitの反転信号レベル
に設定する(ステップS3)。例えば図11のF2で
は、tx_bs_data[0]=0でありlast1bit=0であるた
め、tx_en_data[0]=1(last1bit=0の反転信号レベ
ル)になる。
1か否かを判断する(ステップS4、S5)。
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と
同一信号レベル)になる。
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の反
転信号レベル)になる。
ップS8)。そして、ステップS5〜S8の処理をn>
8になるまで繰り返すことで(ステップS9)、全ての
tx_en_data[n]を得る。
0、NRZIエンコーダ14において入出力される各種
の信号の波形例を示す。なお、図12のtx_bs_dataは、
波形を整えるためにクロックでサンプリングされている
ため、図8のtx_bs_dataよりも1クロックサイクルだけ
遅れた信号になっている。
累積値が8又は9になると、送信レディ信号tx_readyが
非アクティブになり、tx_dataの入力が1クロックサイ
クル期間だけ停止する(図8のE29、E30、E31
参照)。
=(FEh)の入力時にdis_bsがアクティブになり、ビ
ットスタッフィングが禁止される。
信号tx_reqが非アクティブになってから、例えば2クロ
ックサイクル後に信号clearがアクティブになり、図9
の末尾ビット記憶回路52がリセットされる。
dataが有効な時にだけ1になる。
す。
ド演算回路60と末尾ビット記憶回路62を含む。
は、前段のシリアル−パラレル変換回路(図1の21
2)からのrx_en_dataと末尾ビット記憶回路62からの
last1bitを受け、デコード後のrx_bs_dataを出力する回
路である。
末尾の1ビットの信号レベルを記憶し、これをlast1bit
としてNRZIデコード演算回路60に出力する回路で
ある。
earがアクティブになるとリセットされる。また、信号r
x_validに1が立っていることを条件に、rx_en_dataの
末尾の1ビットを記憶する。
の動作を表すフローチャートを示す。
からのrx_en_data[0](rx_en_dataのビット0)の信号
レベルがlast1bitの信号レベルと等しいか否かを判断す
る(ステップS11)。
t1bitと等しい場合には、rx_bs_data[0]=1にする(ス
テップS12)。例えば図15のG1では、rx_en_data
[0]=last1bit=1であるため、rx_bs_data[0]=1に
なる。
bitと等しくない場合には、rx_bs_data[0]=0にする
(ステップS13)。例えば図15のG2では、rx_en_
data[0]=1、last1bit=0であるため、rx_bs_data
[0]=0になる。
信号レベルがrx_en_data[n-1]の信号レベルに等しいか
否かを判断する(ステップS14、S15)。
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になる。
_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になる。
ップS18)。そして、ステップS15〜S18の処理
をn>8になるまで繰り返すことで(ステップS1
9)、全てのrx_bs_data[n]を得る。
構成例を示す。
ットアンスタッフィング処理回路70と、データ記憶回
路82と、データ合成回路84と、プリセレクタ86
(プリシフター)及びポストセレクタ88(ポストシフ
ター)を有するセレクタ85を含む。
路70は、ビット削除によるデータ長の縮みにより足り
なくなったビットを次のクロックサイクルのデータから
繰り上げるための処理を行うものであり、受信シーケン
サ72、ビットアンスタッフ位置&縮み演算回路74、
縮み累積値記憶回路76、連続数演算回路78、連続数
記憶回路80を含む。
フィング処理や受信処理のための各種の信号を生成す
る。具体的には、ビットアンスタッフィング処理回路7
0内の各回路ブロックに対する制御信号を生成する。ま
た、前段のシリアル−パラレル変換回路(図1の21
2)から信号rx_validを受け、信号clear、rx_in、rx_s
trbを出力する。
4は、ビットアンスタッフ位置(第2の信号レベルのビ
ットの削除位置)と、ビットアンスタッフィング(ビッ
ト削除)によるデータ長の縮みビット数を演算する処理
を行う。
タッフ位置&縮み演算回路74により演算された縮みビ
ット数を初期値から累積的に減算(加算でもよい)する
ことで得られる縮み累積値を記憶する。
タッフ位置に基づいて、送信側のビットスタッフィング
により挿入された"0"のビットが削除される。また、記
憶された縮み累積値に基づいて、出力すべきrx_dataの
範囲が決定される。
フされる前のrx_dataの末尾における"1"のビットの連続
数(プリセレクタ86の出力のうちポストセレクタ88
により選択されるデータの末尾における"1"のビットの
連続数)を演算し、この連続数を連続数記憶回路80が
記憶する。
4は、前回のクロックサイクルにおいて連続数記憶回路
80に記憶された末尾の"1"の連続数に基づいて、ビッ
トアンスタッフ位置を演算することになる。
ル前のrx_bs_dataのbit7(末尾ビット)と1クロックサ
イクル前のrx_bs_dataの全ビットを記憶する回路であ
る。なお、必要であれば、2クロックサイクル前のrx_b
s_dataの全部のビットや、3〜M(M>4)クロックサ
イクル前のrx_bs_dataの一部又は全部のビットを記憶す
るようにしてもよい。
2に記憶された2クロックサイクル前のrx_bs_dataのbi
t7及び1クロックサイクル前のrx_bs_dataの全ビット
と、現在のクロックサイクルのrx_bs_dataの全ビットと
を合成し、17ビットの合成データを出力する。
76からの縮み累積値に基づいて、この17ビットの合
成データから10ビットのデータを選択して、ポストセ
レクタ88に出力する。
からの10ビットのデータを受け、ビットアンスタッフ
位置&縮み演算回路74により演算されたビットアンス
タッフ位置にある"0"のビットを削除し、ビット削除さ
れた8ビットのrx_dataを出力する。
について詳細に説明する。
サイクルのrx_bs_dataであるI3=(EFh)と、1ク
ロックサイクル前のI2=(DFh)と、2クロックサ
イクル前のI1の末尾ビットである"1”が、データ合
成回路84により合成され、その合成データがプリセレ
クタ86に出力される。
れる縮み累積値は図17のH2に示すように8(初期
値)になっている。従って、この縮み累積値を受けたプ
リセレクタ86は、合成データの中から、H3に示す位
置を先頭ビットとする10ビットのデータを選択して出
力する。
尾の"1"の連続数は図17のH4、H5に示すように1
であるため、ビットアンスタッフ位置&縮み演算回路7
4は、6−1=5の計算を行い、H6に示す位置をビッ
トアンスタッフ位置としてポストセレクタ88に知らせ
る。
トのデータとビットアンスタッフ位置&縮み演算回路7
4からのビットアンスタッフ位置を受けたポストセレク
タ88は、指定されたビットアンスタッフ位置にある"
0"のビットを削除する。これにより、H7に示す8ビ
ットのデータ(FFh)が、H8に示すようにrx_data
として出力されるようになる。
なくなったH9に示すビットは、データI2の次のクロ
ックサイクルのデータI3から繰り上げられることにな
る。
は、I4=(F7h)、I3=(EFh)、I2の末尾
ビットである"1"を合成し、プリセレクタ86に出力す
る。
1に示すように7になっている。従って、プリセレクタ
86は、合成データの中から、H12に示す位置を先頭
ビットとする10ビットのデータを選択して出力する。
ように3であるため、H14に示す位置がビットアンス
タッフ位置としてポストセレクタ88に知らされる。
たビットアンスタッフ位置にある"0"のビットを削除す
る。これにより、H15に示す(FFh)が、H16に
示すようにrx_dataとして出力されるようになる。
れたrx_dataがクロックサイクル毎に順次出力される。
そして、ビットアンスタッフィングにより"0"のビット
が削除される毎に縮み累積値が例えばH17、H18、
H19に示すように減少して行く。そして、これに伴
い、10ビットのデータを取り出す位置もH20、H2
1、H22に示すように変化して行く。
0になると、縮み累積値は8に初期化される(1の場合
には9に初期化される)。すると、図16の受信シーケ
ンサ72が、後段のパケット処理回路に出力する受信ス
トローブ信号rx_strbを、図17のH24に示すように
1クロックサイクル期間だけ非アクティブにする。これ
により、H25に示すように、rx_dataの取り込みが、
1クロックサイクル期間だけ停止される。
は、縮み累積値が8に初期化されているため、H27に
示す位置から10ビットのデータが取り出されることに
なる。
は、縮み累積値が0又は1(所与の値)になった場合に
も合成データの中から10ビットのデータを矛盾無く取
り出すことに成功している。
アンスタッフィング回路16で入出力される各種の信号
の波形例を示す。なお、図18のrx_data、rx_strbは、
波形を整えるためにクロックでサンプリングされている
ため、図17のrx_data、rx_strbよりも1クロックサイ
クルだけ遅れた信号になっている。
積値が8又は9になると、受信ストローブ信号rx_strb
が非アクティブになり、rx_dataの取り込みが1クロッ
クサイクル期間だけ停止する(図17のH24、H25
参照)。
側ではEOPに対するビットスタッフィング処理が行わ
れない。従って、EOPを受け取った時に受信側ではビ
ットスタッフィングエラーが生じ、図18のJ3に示す
ように、受信エラー信号rx_errがアクティブになる。即
ち、受信側は、ビットスタッフィングエラーを検出する
ことで、EOPを検出することになる。
の例について説明する。
るプリンタの内部ブロック図を示し、図20(A)にそ
の外観図を示す。CPU(マイクロコンピュータ)51
0はシステム全体の制御などを行う。操作部511はプ
リンタをユーザが操作するためのものである。ROM5
16には、制御プログラム、フォントなどが格納され、
RAM517はCPU510のワーク領域として機能す
る。DMAC518は、CPU510を介さずにデータ
転送を行うためのDMAコントローラである。表示パネ
ル519はプリンタの動作状態をユーザに知らせるため
のものである。
どの他のデバイスから送られてきたシリアルの印字デー
タは、データ転送制御装置500によりパラレルの印字
データに変換される。そして、変換後のパラレル印字デ
ータは、CPU510又はDMAC518により、印字
処理部(プリンタエンジン)512に送られる。そし
て、印字処理部512においてパラレル印字データに対
して所与の処理が施され、プリントヘッダなどからなる
印字部(データを出力するための装置)514により紙
に印字されて出力される。
ャナの内部ブロック図を示し、図20(B)にその外観
図を示す。CPU520はシステム全体の制御などを行
う。操作部521はスキャナをユーザが操作するための
ものである。ROM526には制御プログラムなどが格
納され、RAM527はCPU520のワーク領域とし
て機能する。DMAC528はDMAコントローラであ
る。
り部(データを取り込むための装置)522により原稿
の画像が読み取られ、読み取られた画像のデータは画像
処理部(スキャナエンジン)524により処理される。
そして、処理後の画像データは、CPU520又はDM
AC528によりデータ転送制御装置500に送られ
る。データ転送制御装置500は、このパラレルの画像
データをシリアルデータに変換し、USBを介してパー
ソナルコンピュータなどの他のデバイスに送信する。
−RWドライブの内部ブロック図を示し、図20(C)
にその外観図を示す。CPU530はシステム全体の制
御などを行う。操作部531はCD−RWをユーザが操
作するためのものである。ROM536には制御プログ
ラムなどが格納され、RAM537はCPU530のワ
ーク領域として機能する。DMAC538はDMAコン
トローラである。
取り&書き込み部(データを取り込むための装置又はデ
ータを記憶するための装置)533によりCD−RW5
32から読み取られたデータは、信号処理部534に入
力され、エラー訂正処理などの所与の信号処理が施され
る。そして、信号処理が施されたデータが、CPU53
0又はDMAC538によりデータ転送制御装置500
に送られる。データ転送制御装置500は、このパラレ
ルのデータをシリアルデータに変換し、USBを介して
パーソナルコンピュータなどの他のデバイスに送信す
る。
られてきたシリアルのデータは、データ転送制御装置5
00によりパラレルのデータに変換される。そして、こ
のパラレルデータは、CPU530又はDMAC538
により信号処理部534に送られる。そして、信号処理
部534においてこのパラレルデータに対して所与の信
号処理が施され、読み取り&書き込み部533によりC
D−RW532に記憶される。
いて、CPU510、520、530の他に、データ転
送制御装置500でのデータ転送制御のためのCPUを
別に設けるようにしてもよい。
器に用いれば、USB2.0におけるハイスピードモー
ドでのデータ転送が可能になる。従って、ユーザがパー
ソナルコンピュータなどによりプリントアウトの指示を
行った場合に、少ないタイムラグで印字が完了するよう
になる。また、スキャナへの画像取り込みの指示の後
に、少ないタイムラグで読み取り画像をユーザは見るこ
とができるようになる。また、CD−RWからのデータ
の読み取りや、CD−RWへのデータの書き込みを高速
に行うことができるようになる。
電子機器に用いれば、製造コストが安い通常の半導体プ
ロセスでデータ転送制御装置のICを製造できるように
なる。従って、データ転送制御装置の低コスト化を図
れ、電子機器の低コスト化も図れるようになる。また、
データ転送制御の中で高速で動作する部分を少なくする
ことができるため、データ転送の信頼性を向上でき、電
子機器の信頼性も向上できるようになる。
用できる電子機器としては、上記以外にも例えば、種々
の光ディスクドライブ(CD−ROM、DVD)、光磁
気ディスクドライブ(MO)、ハードディスクドライ
ブ、TV、VTR、ビデオカメラ、オーディオ機器、電
話機、プロジェクタ、パーソナルコンピュータ、電子手
帳、ワードプロセッサなど種々のものを考えることがで
きる。
本発明の要旨の範囲内で種々の変形実施が可能である。
成は、図1や図2に示す構成に限定されるものではな
い。
ーダ、ビット削除回路の構成も、図7、図9、図13、
図16で説明した構成が特に望ましいが、これらと均等
な種々の構成を採用できる。
転送に適用されることが特に望ましいが、これに限定さ
れるものではない。例えばUSB2.0と同様の思想に
基づく規格やUSB2.0を発展させた規格におけるデ
ータ転送にも本発明は適用できる。
を示す図である。
コーダの構成例を示す図である。
タッフィングについて説明するための図である。
ZIエンコードの様子について示す図である。
NRZIデコードの様子について示す図である。
の構成例を示す図である。
するための図である。
ためのフローチャートである。
ための図である。
ーダで入出力される各種の信号の波形例である。
めのフローチャートである。
めの図である。
回路)の構成例を示す図である。
て説明するための図である。
コーダで入出力される各種の信号の波形例である。
子機器の内部ブロック図の例である。
子機器の外観図の例である。
路) 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の信号レベルのビットが所与の個数だけ連続したこ
とを条件に第2の信号レベルのビットを挿入するビット
挿入回路と、 パラレルデータを前記シリアルバスで転送されるシリア
ルデータに変換するためのパラレル−シリアル変換回路
とを含み、 前記ビット挿入回路が、 前記パラレル−シリアル変換回路の前段に設けられると
共に、 前記ビット挿入回路が、 前段の回路から所与のクロックサイクルで入力されたN
ビットのパラレル入力データを受け、ビット挿入された
Nビットのパラレル出力データを出力することを特徴と
するデータ転送制御装置。 - 【請求項2】 請求項1において、 前記ビット挿入回路が、 ビット挿入によりあふれたビットを次のクロックサイク
ルのデータに繰り越すための処理を行うことを特徴とす
るデータ転送制御装置。 - 【請求項3】 請求項1又は2において、 前記ビット挿入回路が、 前記第2の信号レベルのビットの挿入位置とビット挿入
によりあふれたビットの数とを演算する演算回路と、 演算されたあふれビット数を累積的に加算又は減算する
ことで得られるあふれ累積値を記憶するあふれ累積値記
憶回路とを含み、 前記ビット挿入回路が、 前記ビット挿入位置に基づいて、前記第2の信号レベル
のビットを挿入しながら、前記あふれ累積値に基づい
て、出力すべきパラレル出力データを決定することを特
徴とするデータ転送制御装置。 - 【請求項4】 請求項3において、 前記ビット挿入回路が、 前記パラレル出力データの末尾における第1の信号レベ
ルのビットの連続数を記憶する連続数記憶回路を含み、 前記演算回路が、 前回のクロックサイクルにおいて記憶された前記連続数
に基づいて、前記ビット挿入位置を演算することを特徴
とするデータ転送制御装置。 - 【請求項5】 請求項3又は4において、 前記ビット挿入回路が、 少なくとも1クロックサイクル前のパラレル入力データ
を記憶するデータ記憶回路と、 記憶された前記少なくとも1クロックサイクル前のパラ
レル入力データと現在のクロックサイクルのパラレル入
力データとを合成した合成データを出力するデータ合成
回路と、 前記あふれ累積値に基づいて、前記合成データの中か
ら、ビット挿入されたパラレル出力データを選択するセ
レクタとを含むことを特徴とするデータ転送制御装置。 - 【請求項6】 請求項3乃至5のいずれかにおいて、 前記ビット挿入回路が、 前記あふれ累積値が所与の値になった場合に、パラレル
入力データの入力を少なくとも1クロックサイクル期間
だけ停止させる信号を前段の回路に対して出力すること
を特徴とするデータ転送制御装置。 - 【請求項7】 請求項1乃至6のいずれかにおいて、 前記ビット挿入回路と前記パラレル−シリアル変換回路
の間に設けられ、前記ビット挿入回路からのNビットの
パラレル出力データを、物理層用のNビットのパラレル
エンコードデータに変換するエンコーダを含むことを特
徴とするデータ転送制御装置。 - 【請求項8】 シリアルバスを介したデータ転送のため
のデータ転送制御装置であって、 前記シリアルバスで転送されるシリアルデータをパラレ
ルデータに変換するためのシリアル−パラレル変換回路
と、 第1の信号レベルのビットが所与の個数だけ連続したこ
とを条件に挿入された第2の信号レベルのビットを削除
するビット削除回路とを含み、 前記ビット削除回路が、 前記シリアル−パラレル変換回路の後段に設けられると
共に、 前記ビット削除回路が、 前記シリアル−パラレル変換回路を介して所与のクロッ
クサイクルで入力されたNビットのパラレル入力データ
を受け、ビット削除されたNビットのパラレル出力デー
タを出力することを特徴とするデータ転送制御装置。 - 【請求項9】 請求項8において、 前記ビット削除回路が、 ビット削除によるデータ長の縮みにより足りなくなった
ビットを次のクロックサイクルのデータから繰り上げる
ための処理を行うことを特徴とするデータ転送制御装
置。 - 【請求項10】 請求項8又は9において、 前記ビット削除回路が、 前記第2の信号レベルのビットの削除位置とビット削除
によるデータ長の縮みビット数とを演算する演算回路
と、 演算された縮みビット数を累積的に加算又は減算するこ
とで得られる縮み累積値を記憶する縮み累積値記憶回路
とを含み、 前記ビット削除回路が、 前記ビット削除位置に基づいて、前記第2の信号レベル
のビットを削除しながら、前記縮み累積値に基づいて、
出力すべきパラレル出力データを決定することを特徴と
するデータ転送制御装置。 - 【請求項11】 請求項10において、 前記ビット削除回路が、 ビット削除される前のパラレル出力データの末尾におけ
る第1の信号レベルのビットの連続数を記憶する連続数
記憶回路を含み、 前記演算回路が、 前回のクロックサイクルにおいて記憶された前記連続数
に基づいて、前記ビット削除位置を演算することを特徴
とするデータ転送制御装置。 - 【請求項12】 請求項10又は11において、 前記ビット削除回路が、 少なくとも1クロックサイクル前のパラレル入力データ
を記憶するデータ記憶回路と、 記憶された前記少なくとも1クロックサイクル前のパラ
レル入力データと現在のクロックサイクルのパラレル入
力データとを合成した合成データを出力するデータ合成
回路と、 前記縮み累積値に基づいて、前記合成データの中から、
ビット削除されたパラレル出力データを選択するセレク
タとを含むことを特徴とするデータ転送制御装置。 - 【請求項13】 請求項10乃至12のいずれかにおい
て、 前記ビット削除回路が、 前記縮み累積値が所与の値になった場合に、パラレル出
力データの取り込みを少なくとも1クロックサイクル期
間だけ停止させる信号を後段の回路に対して出力するこ
とを特徴とするデータ転送制御装置。 - 【請求項14】 請求項8乃至13のいずれかにおい
て、 前記シリアル−パラレル変換回路と前記ビット削除回路
との間に設けられ、物理層用に変換されたNビットのパ
ラレルエンコードデータをデコードし、Nビットのパラ
レル入力データとして前記ビット削除回路に出力するデ
コーダを含むことを特徴とするデータ転送制御装置。 - 【請求項15】 請求項1乃至14のいずれかにおい
て、 前記第1の信号レベルのビットが所与の個数だけ連続し
たことを条件に前記第2の信号レベルのビットを挿入す
る処理が、USB(Universal Serial Bus)規格におけ
るビットスタッフィング処理であることを特徴とするデ
ータ転送制御装置。 - 【請求項16】 請求項1乃至15のいずれかのデータ
転送制御装置と、 前記データ転送制御装置及び前記シリアルバスを介して
相手デバイスから受信したデータに所与の処理を施す装
置と、 処理が施されたデータを出力又は記憶するための装置と
を含むことを特徴とする電子機器。 - 【請求項17】 請求項1乃至15のいずれかのデータ
転送制御装置と、 前記データ転送制御装置及び前記シリアルバスを介して
相手デバイスに転送するデータに所与の処理を施す装置
と、 処理が施されるデータを取り込むための装置とを含むこ
とを特徴とする電子機器。
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)
| 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)
| 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)
| 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 |
-
2000
- 2000-03-16 JP JP2000073622A patent/JP3603732B2/ja not_active Expired - Fee Related
-
2001
- 2001-03-14 US US09/805,029 patent/US6732204B2/en not_active Expired - Lifetime
- 2001-03-16 TW TW090106255A patent/TW540208B/zh not_active IP Right Cessation
- 2001-03-16 CN CN01122059.7A patent/CN1269049C/zh not_active Expired - Fee Related
Cited By (2)
| 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 |