JP3998532B2 - データ転送装置 - Google Patents
データ転送装置 Download PDFInfo
- Publication number
- JP3998532B2 JP3998532B2 JP2002230423A JP2002230423A JP3998532B2 JP 3998532 B2 JP3998532 B2 JP 3998532B2 JP 2002230423 A JP2002230423 A JP 2002230423A JP 2002230423 A JP2002230423 A JP 2002230423A JP 3998532 B2 JP3998532 B2 JP 3998532B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- clock
- speed operation
- operation block
- serial
- 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.)
- Expired - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M9/00—Parallel/series conversion or vice versa
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Systems (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Bus Control (AREA)
Description
【発明の属する技術分野】
この発明は、高速シリアル通信装置において、異なるクロックドメイン間のデータ転送を同期で行うデータ転送装置に関するものである。
【0002】
【従来の技術】
図20は従来のデータ転送装置を示すブロック図であり、図において、Aは高速動作ブロック、Bは低速動作ブロック、Cはクロック生成ブロックである。
【0003】
次に動作について説明する。
高速シリアル通信装置において、伝送速度もしくはそれ以上の速いクロックに同期してプロトコル処理や信号処理を行うことは、1周期当たりのゲート段数から考えてゲート段数が増大し、回路の実装面から考えて非常に困難である。
このため、図20に示したような従来の高速シリアル通信装置では、高速動作ブロックAにおいて、伝送速度と同等もしくはそれ以上の高速なクロックCLK Aで受信したシリアルデータをパラレルデータに変換し、低速動作ブロックBにおいて、伝送速度よりも遅いクロックCLK Bでプロトコル処理するのが一般的である。
また、送信についても、低速動作ブロックBにおいて、パラレルデータ単位でプロトコル処理のほとんどを行い、高速動作ブロックAにおいて、シリアルデータへの変換後に最小限の処理のみを行って送信している。
【0004】
【発明が解決しようとする課題】
従来のデータ転送装置は以上のように構成されているので、次の2つの課題があった。
(1)各ブロックは、異なる周波数のクロックである。つまり、ブロック間の転送は非同期である。このため、ブロック間転送にはメタステーブル対策を施す必要がある。メタステーブル対策を施すことにより、F/F(レジスタ)の増加による消費電力およびゲート規格の増加、内部遅延の増加等の課題がある。
(2)低速動作ブロックBのクロックCLK Bと、高速動作ブロックAのクロックCLK Aとの関係が、
(CLK Aの周波数)=(CLK Bの周波数)*(パラレルデータ幅)
のときは、クロックCLK BとクロックCLK Aとのクロックスキューを合わせることで、メタステーブル対策を施すことなく、転送(同期転送)ができる。例えば、クロックCLK Aの周波数が480MHzで、クロックCLK Bの周波数が60MHzで、パラレルデータ幅が8ビットのときが挙げられる。
しかし、この方法では、レイアウト毎にクロックCLK AとクロックCLK Bとのクロックスキューを合わせる必要があり、開発期間の増大につながるという課題がある。
【0005】
シリアル通信データがNRZI,RX,AMI等の符号化および自己同期の場合、シリアル通信データは、自己同期のために、ビット・スタッフィング処理を行っていることがある「文献1:Universal Serial Bus Specification Revision 2.0のP157,P158」。
ビット・スタッフィング処理によって、自己同期を実現しているシリアル通信装置では、シリアル通信データに対して、受信時にはスタフビットを取り除き、送信時にはスタフビットを挿入しなければならない。このことは、上術の(1)、(2)の方法を単純に実施しただけでは転送できないことを意味する。
これに対して、従来、次の2つの方法が採られていた。
(1)ブロック間のパラレルデータの受け渡しをハンドシェークによって制御する。
(2)スタフビットをカウントし、スタフビットのカウント値がパラレルデータのビット幅に到達したら、受信時にはパラレルデータに対するRxValid信号をネゲートする。このときパラレルデータはInvalidなデータである「文献2:UTM2.0 Transceiver Macrocell Interface(UTMI)Specification Ver1.05 Page23 5.6 Bit Unstuff Logic&Fugure5」。
送信時には、プロトコル処理部に対して送信データの送出を停止するTxReady信号をネゲートする「文献3:UTM2.0 Transceiver Macrocell Interface(UTMI)Specification Ver1.05 Page29 5.11 Bistuff Logic&Fugure11」。
しかしこれら従来の方法では、スタフビットあるいは有効なデータ数をカウントするカウンタ、データの制御信号を作る論理回路が必要であり、動作周波数が高い回路では、F/F(レジスタ)間の論理回路段数を増やすこともできないため、これらの論理回路を実装するのが困難である。また、実装できたとしても消費電力およびゲート規模を増大してしまうという課題があった。
【0006】
この発明は上記のような課題を解決するためになされたもので、高速動作ブロックおよび低速動作ブロック間の受信あるいは送信におけるデータ転送時に、データのサンプリングタイミングに対して、データのセットアップおよびホールド期間を長く確保し、非同期対策やスキュー合わせが不要になるデータ転送装置を得ることを目的とする。
また、この発明は、スタフビットを検出もしくは挿入したとき、クロックの周期をスタフビットの除去あるいは挿入分伸ばし、受信データと送信データとの間の同期関系が確保し、オーバーフローやアンダーフロー対策によるゲート数増加やゲート段数増加を回避すると共に、ゲート数増加による消費電力の増加を防ぐデータ転送装置を得ることを目的とする。
【0007】
【課題を解決するための手段】
この発明に係るデータ転送装置は、高速動作ブロックに、第1の制御信号に基づいて受信されるシリアルデータをパラレルデータに変換し低速動作ブロックに出力すると共に、第1の制御信号に基づいて低速動作ブロックから入力されるパラレルデータをシリアルデータに変換するシリアル/パラレル変換部と、第1のクロックのカウント値に応じて第1のクロックの整数倍の周期を有する第2のクロックを生成するクロック生成部と、第1のクロックのカウント値に応じて第2のクロックと同一の周期を有する第1の制御信号を生成し、シリアル/パラレル変換部に供給する第1の制御信号生成部とを備えたものである。
【0008】
この発明に係るデータ転送装置は、受信されるシリアルデータおよびシリアル/パラレル変換部により変換されたシリアルデータが所定ビット連続して一定値である場合に第2の制御信号を生成する第2の制御信号生成部を備え、クロック生成部は、第2の制御信号生成部からの第2の制御信号に応じて第2のクロックの周期を第1のクロックの周期単位で伸ばすようにしたものである。
【0014】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図1はこの発明の実施の形態1によるデータ転送装置を示すブロック図である。この実施の形態1では、次のようなシリアル転送を想定している。具体的には、USB(Universal Serial Bus)である。
(1)受信したシリアルデータが6ビット連続して“High”のとき、次の7ビット目はスタフビットとして“Low”が挿入される。
(2)送信するシリアルデータが6ビット以上連続して“High”のとき、必ず6ビット毎にスタフビットとして“Low”を挿入する。
図1において、高速動作ブロック1と低速動作ブロック2との間の信号は、クロックCLK B(312)、受信データRxData(321)および送信データTxData(322)について示しているが、RxValid、RxActive、TxReady等の制御信号は省略している。これらの信号のドライブタイミングは、受信データRxData(321)もしくは送信データTxData(322)と同じである。
図2はデータ転送装置の各種信号を示す説明図である。
図3はサンプリング回路の詳細を示す回路図である。
図4はクロック生成ブロックの詳細を示す回路図である。
図5はシリアルデータ受信時の動作を示すタイミングチャートであり、受信データとして、FF,80,5A,7Eを受信した様子を示している。
図6はシリアルデータ送信時の動作を示すタイミングチャートであり、送信データとして、80,5A,FF,F0を送信した様子を示している。
【0015】
次に、図1の各ブロックの構成について説明する。
1は高速動作ブロックであり、伝送クロックもしくはそれ以上の速いクロックでシリアルデータを受信もしくは送信するクロックである。
2は低速動作ブロックであり、高速動作ブロック1で処理されたパラレルデータ321,322、RxValid信号、クロックCLK B(321)等を基に、高速動作ブロック1よりも低い周波数でプロトコル処理するブロックである。また、送信するデータのプロトコル処理を行い、送信データを高速動作ブロック1へ渡すブロックである。
12はシフトレジスタ(シリアル/パラレル変換部)であり、受信時には受信シリアルデータSDIN(323)を入力とし、8ビットのパラレルデータへ変換するブロックである。受信時は、ロードイネーブル信号ld en(331)の値に関わりなく、右シフトが実施される。また、送信時には、ロードイネーブル信号ld en(331)が“High”のとき低速動作ブロック2からの送信パラレルデータTxData(322)をサンプリングし、ロードイネーブル信号ld en(331)が“Low”のときは右シフトすることでパラレルデータをシリアルデータに変換する。なお、受信および送信時共、ホールド信号hold(332)が“High”のとき、シフトレジスタ12は、シフト動作せず、内容を保持する。この実施の形態1では、シフトレジスタ12を送信、受信共用しているが、別々に分ける手段もある。
11はホールドレジスタ(シリアル/パラレル変換部)であり、ロードイネーブル信号ld en(331)が“High”のとき、シフトレジスタ12でパラレルデータに変換されたデータsft regs[7:0](335)をサンプルし(図5のC2,C10およびC19)、保持するブロックである。ホールドレジスタ11の出力は、受信パラレルデータRxData(321)であり、低速動作ブロック2へ出力される。
13はスタフビット検出ブロック(第2の制御信号生成部)であり、スタフビットを検出するブロックである。例えば、USBでは受信および送信シリアルデータが6ビット連続して“1”のとき、7ビット目には必ず“0”が挿入されることになっている。本ブロックがUSBの回路であるならば、受信シリアルデータSDIN(323)もしくはsft regs[0](334)が6ビット連続して“1”になったときのみ出力信号hold(332)は“High”になる。それ以外のときは“Low”である。
16はカウンタ(クロック生成部)であり、クロックCLK A(311)に同期してカウントするカウンタである。カウント範囲は、高速動作ブロック1と低速動作ブロック2のデータバス幅に依存する。この実施の形態1では、データバス幅は8ビットのため、0〜7まで1刻みのアップカウンタであり、7までカウントすると次は0となり、再びカウントする。なお、ホールド信号hold(332)が“High”のときは、カウント値は前の値を保持する(図5のC17および図6のC21)。
17はクロック生成ブロック(クロック生成部)であり、クロックCLK B(312)を生成するブロックである。図4にクロック生成ブロックの詳細を示す。図において、161,163はアンド、162,164,167はフリップフロップ、165はエクスクルーシブノア、166はセレクタである。次にこのクロック生成ブロック17の動作について説明する。カウント信号cnt[3](353)が“High”(カウント値が“3”)且つホールド信号hold(332)が“Low”のときのみ、アンド161の出力は“High”となり、クロックCLK A(311)の立上りでフリップフロップ162の出力である立上りイネーブル信号clk neg edge(360)が“High”になる(図5のC5,C13およびC22並びに図6のC8およびC16)。カウント信号cnt[7](357)が“High”(カウント値が“7”)且つホールド信号hold(332)が“Low”のときのみ、アンド163の出力は“High”となり、クロックCLK A(311)の立上りでフリップフロップ164の出力である立下りイネーブル信号clk pos edge(361)が“High”になる(図5のC1,C9およびC18並びに図6のC5,C13およびC22)。クロックCLK B(312)は、エクスクルーシブノア165、セレクタ166、フリップフロップ167によって、立上りイネーブル信号clk neg edge(360)が“High”のときに立上り(図5のC6,C14およびC23並びに図6のC1,C9およびC17)、立下りイネーブル信号clk pos edge(361)が“High”のときに立下る(図5のC2,C10およびC19並びに図6のC6,C14およびC23)。
15はサンプリング回路(第1の制御信号生成部)であり、シフトレジスタ12の出力信号sft regs[7:0](335)をホールドレジスタ11にセット、および低速動作ブロック2からの送信データTxData[7:0](322)をシフトレジスタ12にサンプルするタイミング信号であるロードイネーブル信号ld en(331)を生成している。図3にサンプリング回路の詳細を示す。図において、151はアンド、152はフリップフロップである。次にこのサンプリング回路15の動作について説明する。ロードイネーブル信号ld en(331)は、カウント信号cnt[7](357)が“High”(カウント値が“7”)且つホールド信号hold(332)が“Low”のときのみ、“High”となる(図5のC1,C9およびC18並びに図6のC5,C13およびC22)。
14はスタフビット挿入ブロックであり、送信時、スタフビットを挿入するブロックである。動作は、ホールド信号hold(332)が“High”のとき、シリアルデータsft regs[0](334)を強制的に“Low”にして、出力シリアルデータSDOUT(324)として出力する(図5のC21)。
【0016】
次に動作について説明する。
(1)スタフビットを検出もしくは挿入したとき、クロックCLK B(312)の周期はスタフビットの検出もしくは挿入分伸びる。
図5に示される受信時においては、C10からC15までの期間、シリアルデータの入力信号SDIN(323)が6ビット連続して“High”が続いているため、スタフビット検出ブロック13は、ホールド信号hold(332)を“High”にする(図5のC16)。
このとき、高速動作ブロック1のホールドレジスタ11およびスタフビット挿入ブロック14を除いたブロックの出力信号は、ホールド状態となる(図5のC17)。
このホールド状態により、クロックCLK B(312)の周期は、通常“8CLK A”期間であるのに対して、スタフビット除去分伸びて“9CLK A”期間となる(図5のC16)。
また、シフトレジスタ12では、シリアルデータのスタフビットを取り除いたパラレルデータを得ている。この結果、受信データとクロックCLK B(312)間にはビットずれは起きず、同期関係が得られている。
同様に、図6に示される送信時においては、C14から送信データであるシリアルデータsft regs[0](334)が6ビット以上連続して“High”が続いている。
このとき、スタフビット検出ブロック13は、シリアルデータsft regs[0](334)が6ビット以上連続して“High”になった時点でホールド信号hold(332)を“High”にし、受信時同様に、高速動作ブロック1のホールドレジスタ11およびスタフビット検出ブロック13を除いたブロックの出力信号は、スタフビット検出ブロック13でスタフビットの“Low”を挿入するためホールド状態となる(図6のC21)。
このホールド状態により、クロックCLK B(312)の周期は、通常“8CLK A”期間であるのに対して、スタフビット挿入分伸びる。
この結果、送信パラレルデータTxData(322)は、クロックCLK B(312)の立上りでデータがドライブされるため、スタフビット挿入による送信データのアンダーフローは生じない。
【0017】
(2)高速動作ブロック1から低速動作ブロック2へのデータRxData(321)は、高速動作ブロック1において、クロックCLK B(312)の立下りでドライブされ、クロックCLK B(312)の立上りで低速動作ブロック2にサンプルされる。
例として、図5の受信動作時のタイミングチャートを用いて説明する。図5において、データの送り手である高速動作ブロック1は、クロックCLK B(312)の立下りで受信パラレルデータRxData(321)がドライブされており(C2,C10およびC18)、受け手である低速動作ブロック2では、クロックCLK B(312)の立上りでRxData(321)をサンプルする。このとき、RxData(321)はクロックCLK B(312)の立上りに対してセットアップおよびホールド共、少なくとも“4CLK A”期間確保することができており、“4CLK A”期間を越える遅延、スキュー等がない限り、クロックCLK A(311)とクロックCLK B(312)とのスキュー合わせや非同期転送の処理を行わなくても良く、同期転送として回路設計ができる。
【0018】
(3)送信データは、クロックCLK B(312)の立上りで低速動作ブロック2からドライブされ、クロックCLK B(312)の立下りで高速動作ブロック1にサンプルされる。
例として、図6の送信動作時のタイミングチャートを用いて説明する。図6において、データの送り手である低速動作ブロック2は、クロックCLK B(312)の立上りで送信パラレルデータTxData(322)がドライブされており(図6のC2,C10およびC18)、受け手である高速動作ブロック1では、クロックCLK B(312)の立下りでTxData(322)をサンプルする。このとき、TxData(322)はクロックCLK B(312)の立下りに対してセットアップおよびホールド共、少なくとも“4CLK A”期間確保することができる。このため、送信パラレルデータTxData(322)は安定しており、クロックCLK B(312)の立上りから“4CLK A”期間を越える遅延がない限り、クロックCLK A(311)とクロックCLK B(312)とのスキュー合わせや非同期転送の処理を行わなくても良い。
【0019】
以上のように、この実施の形態1によれば、次の効果が得られる。
(1)スタフビットを検出もしくは挿入したとき、クロックCLK B(312)の周期はスタフビットの除去あるいは挿入分伸びることで、受信データおよび送信データとの間は同期関系が確保される。このため、オーバーフローやアンダーフロー対策によるゲート数増加、ゲート段数増加を回避することができる。また、ゲート数増加による消費電力の増加を防ぐことができる。
(2)高速動作ブロック1および低速動作ブロック2間のデータ転送は、データのサンプリングタイミングに対して、少なくとも“4CLK A”期間確保できるため、非同期対策やスキュー合わせが不要になる。
【0020】
実施の形態2.
実施の形態1は、送信パラレルデータTxData(322)のサンプリングタイミングと受信パラレルデータRxData(321)のドライブタイミングとが同じである。例えば、実施の形態1の装置において、送信パラレルデータTxData(322)の確定がクロックCLK B(312)の立上りから、“4CLK A”期間以上の場合、シフトレジスタ12に取り込むタイミングがずれてしまい、高速動作ブロック1と低速動作ブロック2間の同期関係を満たさなくなる恐れがある。この課題を解決する一案としては、ロードイネーブル信号ld en(331)のイネーブルタイミングをクロックCLK B(312)の立上りエッジからさらに後ろへずらすことで、送信パラレルデータTxData(322)のサンプリングポイントおよび受信パラレルデータRxData(321)のドライブタイミングを変える方法がある。しかし、この方法では、送信パラレルデータTxData(322)のサンプリングポイントの課題は解決したとしても、低速動作ブロック2において、クロックCLK B(312)の立上りエッジで受信パラレルデータRxData(321)がサンプルできない場合もある。
この課題を解決するため、この実施の形態2では、送信パラレルデータTxData(322)のサンプリングポイントと受信パラレルデータRxData(321)のドライブタイミングとをそれぞれ異なるタイミングで行う。
【0021】
図7はこの発明の実施の形態2によるデータ転送装置を示すブロック図である。図7のブロック図は、図1のブロック図と異なり、直接、送信パラレルデータTxData(322)をシフトレジスタ12に取り込むのではなく、一旦、ホールドレジスタ21に取り込んだ後、シフトレジスタ12に取り込む装置の例である。このため、ホールドレジスタ21からシフトレジスタ12への取り込みイネーブル信号sft en(336)を追加している。なお、この実施の形態2において、図1のように送信パラレルデータTxData(322)を直接にシフトレジスタ12で取り込む構成であっても構わない。
次に図7において、図1とは異なる構成について説明する。
21はホールドレジスタ(シリアル/パラレル変換部)であり、図1のホールドレジスタ11とは異なり、シフトレジスタ12からの受信データsft regs[7:0](335)をサンプルし、保持するだけではなく、送信時においては、送信パラレルデータTxData(322)の値をサンプルし、保持する。
送信パラレルデータTxData(322)のサンプリングタイミングは、受信時におけるシフトレジスタ12からのサンプリングタイミング同様、ロードイネーブル信号ld en(331)がイネーブル(“High”)のときにサンプルされる。
22はサンプリング回路(第1の制御信号生成部)であり、この実施の形態2において最も重要なブロックである。図8にサンプリング回路の詳細を示す。図において、421はセレクタであり、その他の構成については、図3と同等である。次にこのサンプリング回路22の動作について説明する。このサンプリング回路22は、図1および図3で示したサンプリング回路15とは異なり、ロードイネーブル信号ld en(331)のイネーブルタイミングが送信時と受信時とでは異なる。サンプリング回路15では、カウント信号cnt[7](357)が“High”(カウント値が“7”)且つホールド信号hold(332)が“Low”のときに、送信および受信時共に、ロードイネーブル信号ld en(331)が“High”になっていた。これに対して、サンプリング回路22は、受信時はサンプリング回路15と同様に、カウント信号cnt[7](357)が“High”(カウント値が“7”)且つホールド信号hold(332)が“Low”のときに、ロードイネーブル信号ld en(331)が“High”になるが、送信時は、カウント信号cnt[2](352)が“High” (カウント値が“2”)且つホールド信号hold(332)が“Low”のときに、ロードイネーブル信号ld en(331)が“High”になる。このため、図8に示すように、送信時と受信時でカウント信号を切換えるセレクタ421を実施の形態1のサンプリング回路15に追加している。
また、サンプリング回路22には、シフトイネーブル信号sft en(336)を生成する機能が追加されている。シフトイネーブル信号sft en(336)は、送信時、カウント信号[3](353)が“High”(カウント値が“3”)のとき“Low”になり、カウント信号[3](353)が“Low”(カウント値が“3”以外)のとき“High”になる。但し、ホールド信号hold(332)が“High”のときは、直前のシフトイネーブル信号sft en値を保持する。
【0022】
次に動作について説明する。
受信時におけるこの実施の形態2の動作は、実施の形態1の受信動作と同じである。
図9はシリアルデータ送信時の動作を示すタイミングチャートであり、次に送信時の動作について説明する。
この実施の形態2の送信時の動作は、実施の形態1と同様に、送り手である低速動作ブロック2は、送信パラレルデータTxData(322)のドライブをクロックCLK B(312)の立上りで行う(図9のC2,C10およびC19)。一方、受け手である高速動作ブロック1は、ロードイネーブル信号ld en(331)がカウント値“2”で“High”に変化するため(図9のC8C16)、クロックCLK B(312)の立上りから“7CLK A”期間後にホールドレジスタ21にサンプルされている(図9のC1,C9およびC17)。
【0023】
以上のように、この実施の形態2によれば、次の効果が得られる。
ロードイネーブル信号ld en(331)のイネーブルタイミングを送信時と受信時とで変更することで、高速動作ブロック1における低速動作ブロック2からの送信データのサンプリングタイミング、および低速動作ブロック2への受信データのドライブタイミングをそれぞれ最適に設定することができる。
なお、この実施の形態2では、送信および受信時共に、ロードイネーブル信号ld en(331)のイネーブル信号を実現したが、装置の構成によって、送信および受信用のロードイネーブル信号を、それぞれ独立に持たせて実現する方法もある。
【0024】
実施の形態3.
実施の形態1と実施の形態2では、送信パラレルデータTxData(322)のサンプルポイントおよび受信パラレルデータRxData(321)のドライブタイミングは固定である。これらに対し、この実施の形態3は、送信パラレルデータTxData(322)のサンプルポイントおよび受信パラレルデータRxData(321)のドライブタイミングをS/W(ソフトウェア)や外部端子からの選択信号によって変更自在にするものである。
図10はこの発明の実施の形態3によるデータ転送装置を示すブロック図であり、実施の形態2の図7に対して、サンプリング回路22をサンプリング回路(第1の制御信号生成部)31に置き換え、外部入力として送信データサンプルポイントのセレクト信号SEL CNT[2:0](326)を新たに追加しただけであり、実施の形態1についても同様のサンプリング回路の置換および信号の追加を行うことで、サンプルポイントの変更を特徴とするこの実施の形態3を実現することができる。
図11はサンプリング回路の詳細を示す回路図であり、図において、711はセレクタである。その他の構成については図8と同等である。この図11は送信パラレルデータTxData(322)のサンプルポイントについてのみ可変にした回路例である。図11では、図8に示したサンプリング回路22に対して、7to1のセレクタ711と、そのセレクト信号としてSEL CNT[2:0](326)を追加している。セレクタ711は、送信時、出力信号ld en(331)のイネーブルタイミングをセレクト信号SEL CNT[2:0](326)の値に応じてカウント値“0”から“7”のいずれか1つを選択する。なお、セレクタ711と同様なセレクタを受信側にも設けることで、受信パラレルデータRxData(321)のドライブタイミングを変更することができる。
【0025】
次に動作について説明する。
図12はシリアルデータ送信時の動作を示すタイミングチャートであり、送信パラレルデータTxData(322)のサンプルポイントをカウント値“1”にしたときのものである。送信パラレルデータTxData(322)のサンプルポイントをカウント値“1”にするため、セレクト信号SEL CNT[2:0](326)は、“0x1”になるようにS/Wまたは外部端子等で設定している。図12では、セレクト信号SEL CNT[2:0](326)を“0x1”に設定しているため、送信パラレルデータTxData(322)のサンプルポイントは、クロックCLK B(312)の立上りから、“6CLK A”期間後である。
同様に、セレクト信号SEL CNT[2:0](326)を“0x2”に設定すると、実施の形態2の図9で示したタイミングとなり、クロックCLK B(312)の立上りから、“7CLK A”期間後に送信パラレルデータTxData(322)はサンプルされる。
【0026】
以上のように、この実施の形態3によれば、次の効果が得られる。
送信パラレルデータTxData(322)のサンプルタイミングおよび受信パラレルデータRxData(321)のドライブタイミングを、S/W(ソフトウェア)や外部端子で設定できるため、回路実装後であってもサンプルタイミングやドライブタイミングの変更が可能である。例えば、LSIに実装後、遅延モデルと実遅延モデルが異なっていた等により、高速動作ブロック1と低速動作ブロック2間でのクロックCLK B(312)に同期してデータ転送ができないトラブルにも、S/W、外部端子等を設定するだけで、救済することが可能となる。
【0027】
実施の形態4.
実施の形態2と実施の形態3では、クロックCLK B(312)の立上りおよび立下りに対して、ロードイネーブル信号ld en(331)のイネーブルタイミングを変更することで、送信パラレルデータTxData(322)のサンプルポイントおよび受信パラレルデータRxData(321)のドライブタイミングを調整する方法である。もしくは、クロックCLK B(312)は、常にカウント値が“3”および“7”のときに、立上りおよび立下り動作を行うことを前提としているため、ロードイネーブル信号ld en(331)のイネーブルタイミングを変更(適切なカウント値の選択)することで、送信パラレルデータTxData(322)のサンプルタイミングおよび受信パラレルデータRxData(321)のドライブタイミングを調整する方法である。
この実施の形態4は、ロードイネーブル信号ld en(331)のイネーブルタイミングを基準に、クロックCLK B(312)の立上りおよび立下りを調整することで、送信パラレルデータTxData(322)のサンプルタイミングおよび受信パラレルデータRxData(321)のドライブタイミングを調整する方法である。
具体的には、実施の形態1がカウント値“3”および“7”によってクロックCLK B(312)の立上りおよび立下りが行われているのに対して、この実施の形態4では、カウント値“2”および“6”によって立上りおよび立下り動作を行う。なお、ロードイネーブル信号ld en(331)は、実施の形態1同様、カウント値“7”によってイネーブル状態となる。つまり、この実施の形態4は、実施の形態1に対して、クロックCLK B(312)が1サイクル(CLK A換算)前倒しで出力する。
【0028】
図13はこの発明の実施の形態4によるデータ転送装置を示すブロック図であり、実施の形態1の図1に対して、クロック生成ブロック17の入力であるカウント信号cnt[7]とcnt[3]が、cnt[6]とcnt[2]に置き換えただけである。
【0029】
次に動作について説明する。
図14はシリアルデータ受信時の動作を示すタイミングチャートであり、図15はシリアルデータ送信時の動作を示すタイミングチャートである。
この実施の形態4では、実施の形態1の図5および図6に対して、クロックCLK B(312)の立上りおよび立下りが1サイクル(クロックCLK A(311)換算)早くなっているだけである。この結果、受信パラレルデータRxData(321)のサンプルポイントは、RxData(321)が変化してから(図14のC2,C10およびC19)、3サイクル後(クロックCLK A(311)換算)である(図14のC5,C13およびC22)。一方、送信パラレルデータTxData(322)のドライブタイミングはクロックCLK B(312)の立上りで行われるため(図15のC1,C9およびC17)、サンプルポイントまで5サイクル後(クロックCLK A(311)換算)である(図14のC6,C14およびC23)。なお、図15のC23でのサンプルは、クロックCLK B(312)の立上り(C17)から6サイクル(クロックCLK A(311)換算)である。これは、C21においてスタフビット処理が行われ、その分(1サイクル)ホールド状態があったためである。
【0030】
以上のように、この実施の形態4によれば、次の効果が得られる。
クロックCLK B(312)の立上りから送信データが確定するまで余裕がないもしくは間に合わないが、受信データのサンプルタイミングには余裕があるとき、クロックCLK B(312)の立上りおよび立下りタイミングを変更することで、実装が可能となる。
また、この実施の形態4と実施の形態2に示した受信および送信時でそれぞれロードイネーブルタイミングを独立に持たせることで、受信データおよび送信データのサンプルタイミングやドライブタイミングをきめ細かく設定することができる。
【0031】
実施の形態5.
実施の形態1と実施の形態4では、クロックCLK B(312)の立上りおよび立下りタイミングは異なるが、回路実装後にこれらのタイミングを変更することはできない。この実施の形態5は回路実装後でもクロックCLK B(312)の立上りおよび立下りタイミングが変更できるように、S/W(ソフトウェア)や外部端子からの選択信号により立上りおよび立下りタイミングを制御するものである。
【0032】
図16はこの発明の実施の形態5によるデータ転送装置を示すブロック図であり、実施の形態4の図13に対して、クロック生成ブロック17をクロック生成ブロック(クロック生成部)51に置き換え、外部入力としてクロックCLK B(312)の立上りタイミングのセレクト信号SEL PE[2:0](327)および立下りタイミングのセレクト信号SEL NE[2:0](328)を追加している。なお、セレクト信号SEL PE[2:0](327)およびセレクト信号SEL NE[2:0](328)は、S/Wによってリード/ライト可能なレジスタや外部端子によって設定される。
図17はクロック生成ブロックの詳細を示す回路図であり、図において、510,511はセレクタである。その他の構成については図4と同等である。図17は、図4のクロック生成ブロック17に対して、7to1のセレクタ510,511と、セレクタ510のセレクト信号としてSEL NE[2:0](328、およびセレクタ511のセレクト信号としてSEL PE[2:0](327)を追加している。
セレクタ510は、立下りタイミングセレクト信号SEL NE[2:0](328)の値に応じてカウント値cnt[0]からcnt[7]のいずれかの信号が選択される。選択されたセレクタ510の出力は、アンド161およびフリップフロップ162によって、クロックCLK B(312)の立下りイネーブル信号clk neg edge(360)となる。
同様に、セレクタ511は、立上りタイミングセレクト信号SEL PE[2:0](327)の値に応じてカウント値cnt[0]からcnt[7]のいずれかの信号が選択される。選択されたセレクタ511の出力は、アンド163およびフリップフロップ164によって、クロックCLK B(312)の立上りイネーブル信号clk pos edge(361)となる。
【0033】
次に動作について説明する。
図18はシリアルデータ受信時の動作を示すタイミングチャートであり、図19はシリアルデータ送信時の動作を示すタイミングチャートである。図18および図19のタイミングチャートは、立上りタイミングセレクト信号SEL PE[2:0](327)を“0x0”、立下りタイミングセレクト信号SEL NE[2:0](328)を“0x4”に設定したときの例である。この場合、受信パラレルデータRxData(321)のサンプルポイントは、RxData(321)がドライブされてから(図18のC2,C10およびC19)、1サイクル後(クロックCLK A(311)換算)である(図18のC3,C11およびC20)。
一方、送信パラレルデータTxData(322)のドライブタイミングはクロックCLK B(312)の立上りで行われるため(図19のC1,C9およびC17)、TxData(322)のサンプルポイントは、データがドライブされてから7サイクル後(クロックCLK A(311)換算)である(図19のC8,C16およびC25)。なお、図19のC25でのサンプルは、クロックCLK B(312)の立上り(C17)から8サイクル(クロックCLK A(311)換算)である。これは、C23においてスタフビット処理が行われ、その分(1サイクル)ホールド状態があったためである。
なお、立上りタイミングセレクト信号SEL PE[2:0](327)を“0x2”、立下りタイミングセレクト信号SEL NE[2:0](328)を“0x6”に設定したときの動作は、実施の形態4と同じである。
立上りタイミングセレクト信号SEL PE[2:0](327)を“0x0”に設定した場合、受信パラレルデータRxData(321)のサンプリングタイミングは、RxData(321)が確定してから1サイクルである。これは、品種によっては十分余裕があると言い難い。このようなときは、この実施の形態5と実施の形態2もしくは実施の形態3を組み合せることで、受信パラレルデータRxData(321)のサンプリングタイミングに余裕を持たせることができる。
【0034】
以上のように、この実施の形態5によれば、次の効果が得られる。
タイミングセレクト信号SEL PE[2:0](327)およびSEL NE[2:0](328)をソフトウェアや外部端子等で設定を可能とすることで、回路実装後であってもクロックCLK B(312)の立上りおよび立下りタイミングを変更することが可能となる。
例えば、高速動作ブロック1をハードマクロ(レイアウト固定)、低速動作ブロック2をソフトマクロとして開発し、これらを多品種にも流用する場合、対象品種のプロセス、テクノロジ等によって、低速動作ブロック2の遅延は異なってくる。このため、高速動作ブロック1と低速動作ブロック2間のインタフェースは、品種毎によってはタイミングを見直す必要がある。このとき、高速動作ブロック1と低速動作ブロック2間のインタフェースのタイミング遅延を満たすため、ハードマクロ化された高速動作ブロック1の改定が生じた場合、実施の形態1、2および4の方法では、改定期間、人工等のコストは非常に大きい。しかし、この実施の形態5を用いた場合には、クロックCLK B(312)の立上りタイミングセレクト信号SEL PE[2:0](327)および立下りタイミングセレクト信号SEL NE[2:0](328)を適切な値に設定するだけで良く、高速動作ブロック1のハードマクロを改定する必要がなくなる。
【0035】
【発明の効果】
以上のように、この発明によれば、高速動作ブロックに、第1の制御信号に基づいて受信されるシリアルデータをパラレルデータに変換し低速動作ブロックに出力すると共に、第1の制御信号に基づいて低速動作ブロックから入力されるパラレルデータをシリアルデータに変換するシリアル/パラレル変換部と、第1のクロックのカウント値に応じて第1のクロックの整数倍の周期を有する第2のクロックを生成するクロック生成部と、第1のクロックのカウント値に応じて第2のクロックと同一の周期を有する第1の制御信号を生成し、シリアル/パラレル変換部に供給する第1の制御信号生成部とを備えるように構成したので、高速動作ブロックおよび低速動作ブロック間の受信あるいは送信におけるデータ転送時に、データのサンプリングタイミングに対して、データのセットアップおよびホールド期間を長く確保することができるため、非同期対策やスキュー合わせが不要になる効果がある。
【0036】
この発明によれば、受信されるシリアルデータおよびシリアル/パラレル変換部により変換されたシリアルデータが所定ビット連続して一定値である場合に第2の制御信号を生成する第2の制御信号生成部を備え、クロック生成部は、第2の制御信号生成部からの第2の制御信号に応じて第2のクロックの周期を第1のクロックの周期単位で伸ばすように構成したので、スタフビットを検出もしくは挿入したとき、第2のクロックの周期は、スタフビットの除去あるいは挿入分伸びることで、受信データと送信データとの間の同期関系が確保される。このため、オーバーフローやアンダーフロー対策によるゲート数増加やゲート段数増加を回避することができる。また、ゲート数増加による消費電力の増加を防ぐことができる効果がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態1によるデータ転送装置を示すブロック図である。
【図2】 データ転送装置の各種信号を示す説明図である。
【図3】 サンプリング回路の詳細を示す回路図である。
【図4】 クロック生成ブロックの詳細を示す回路図である。
【図5】 シリアルデータ受信時の動作を示すタイミングチャートである。
【図6】 シリアルデータ送信時の動作を示すタイミングチャートである。
【図7】 この発明の実施の形態2によるデータ転送装置を示すブロック図である。
【図8】 サンプリング回路の詳細を示す回路図である。
【図9】 シリアルデータ送信時の動作を示すタイミングチャートである。
【図10】 この発明の実施の形態3によるデータ転送装置を示すブロック図である。
【図11】 サンプリング回路の詳細を示す回路図である。
【図12】 シリアルデータ送信時の動作を示すタイミングチャートである。
【図13】 この発明の実施の形態4によるデータ転送装置を示すブロック図である。
【図14】 シリアルデータ受信時の動作を示すタイミングチャートである。
【図15】 シリアルデータ送信時の動作を示すタイミングチャートである。
【図16】 この発明の実施の形態5によるデータ転送装置を示すブロック図である。
【図17】 クロック生成ブロックの詳細を示す回路図である。
【図18】 シリアルデータ受信時の動作を示すタイミングチャートである。
【図19】 シリアルデータ送信時の動作を示すタイミングチャートである。
【図20】 従来のデータ転送装置を示すブロック図である。
【符号の説明】
1 高速動作ブロック、2 低速動作ブロック、11,21 ホールドレジスタ(シリアル/パラレル変換部)、12 シフトレジスタ(シリアル/パラレル変換部)、13 スタフビット検出ブロック(第2の制御信号生成部)、14 スタフビット挿入ブロック、15,22,31 サンプリング回路(第1の制御信号生成部)、16 カウンタ(クロック生成部)、17,51 クロック生成ブロック(クロック生成部)、151,161,163 アンド、152,162,164,167 フリップフロップ、165 エクスクルーシブノア、166,421,510,511,711 セレクタ、311 CLK A、312CLK B、321 RxData[7:0]、322 TxData[7:0]、323 SDIN、324 SDOUT、325 SEL RX TX、326 SEL CNT[2:0]、327 SEL PE[2:0]、328SEL NE[2:0]、331 ld en、332 hold、333 cnt、334 shift regs[0]、335 shift regs[7:0]、336 sft en、352 cnt[2]、353 cnt[3]、356 cnt[6]、357 cnt[7]、360 clk neg edge、361 clk pos edge。
Claims (1)
- 伝送速度もしくはそれ以上速い第1のクロックに同期して動作する高速動作ブロックと、
伝送速度よりも遅い第2のクロックに同期して動作する低速動作ブロックとを備え、
前記高速動作ブロックは、受信されるデータが所定ビット連続して一定値である場合にその次のビットにスタフビットが挿入されたシリアルデータのスタフビットを除去し、そのシリアルデータをパラレルデータに変換して前記低速動作ブロックに出力すると共に、前記低速動作ブロックから入力されるパラレルデータをシリアルデータに変換し且つそのシリアルデータが所定ビット以上連続して一定値である場合にその所定ビット毎にスタフビットを挿入して送信し、
前記低速動作ブロックは、前記高速動作ブロックから入力されるパラレルデータのプロトコル処理をすると共に、送信するパラレルデータのプロトコル処理をして前記高速動作ブロックに出力するデータ転送装置において、
前記高速動作ブロックは、
第1の制御信号に基づいて受信されるシリアルデータをパラレルデータに変換し前記低速動作ブロックに出力すると共に、第1の制御信号に基づいて前記低速動作ブロックから入力されるパラレルデータをシリアルデータに変換するシリアル/パラレル変換部と、
第1のクロックのカウント値に応じて第1のクロックの整数倍の周期を有する第2のクロックを生成し、第2の制御信号生成部からの第2の制御信号に応じて第2のクロックの周期を第1のクロックの周期単位で伸ばすクロック生成部と、
第1のクロックのカウント値に応じて第2のクロックと同一の周期を有する第1の制御信号を生成し、前記シリアル/パラレル変換部に供給する第1の制御信号生成部と、
受信されるシリアルデータおよびシリアル/パラレル変換部により変換されたシリアルデータが所定ビット連続して一定値である場合に第2の制御信号を生成する第2の制御信号生成部と、
を備えることを特徴とするデータ転送装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002230423A JP3998532B2 (ja) | 2002-08-07 | 2002-08-07 | データ転送装置 |
TW092101211A TWI221373B (en) | 2002-08-07 | 2003-01-21 | Data transfer device |
US10/352,164 US6911843B2 (en) | 2002-08-07 | 2003-01-28 | Data transfer device for transferring data between blocks of different clock domains |
DE10313886A DE10313886A1 (de) | 2002-08-07 | 2003-03-27 | Datenübertragungsvorrichtung zur Datenübertragung zwischen Blöcken mit unterschiedlichen Takt-Gültigkeitsbereichen |
CN03107767.6A CN1266904C (zh) | 2002-08-07 | 2003-03-31 | 数据传送装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002230423A JP3998532B2 (ja) | 2002-08-07 | 2002-08-07 | データ転送装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007171028A Division JP4463295B2 (ja) | 2007-06-28 | 2007-06-28 | 半導体装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004072511A JP2004072511A (ja) | 2004-03-04 |
JP2004072511A5 JP2004072511A5 (ja) | 2005-10-27 |
JP3998532B2 true JP3998532B2 (ja) | 2007-10-31 |
Family
ID=31492330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002230423A Expired - Lifetime JP3998532B2 (ja) | 2002-08-07 | 2002-08-07 | データ転送装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6911843B2 (ja) |
JP (1) | JP3998532B2 (ja) |
CN (1) | CN1266904C (ja) |
DE (1) | DE10313886A1 (ja) |
TW (1) | TWI221373B (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4364041B2 (ja) * | 2004-04-01 | 2009-11-11 | Okiセミコンダクタ株式会社 | データ転送回路 |
TWI261174B (en) * | 2004-04-02 | 2006-09-01 | Jtek Technology Corp | Universal serial bus (USB) physical layer apparatus and its method |
JP4291225B2 (ja) * | 2004-06-30 | 2009-07-08 | 富士通株式会社 | パラレルデータを受信する装置および方法 |
KR100563073B1 (ko) | 2004-11-01 | 2006-03-24 | 삼성에스디아이 주식회사 | 샘플링 클럭신호 발생기 |
US7685333B2 (en) * | 2005-03-22 | 2010-03-23 | Sigmatel, Inc | Method and system for communicating with memory devices utilizing selected timing parameters from a timing table |
US7428652B2 (en) * | 2005-05-10 | 2008-09-23 | Intel Corporation | Programmable phase generator for cross-clock communication where the clock frequency ratio is a rational number |
KR100635500B1 (ko) | 2005-05-24 | 2006-10-17 | 삼성에스디아이 주식회사 | 시프트 레지스터 및 이를 포함하는 유기 전계발광 표시장치 |
US7307558B1 (en) * | 2005-12-20 | 2007-12-11 | National Semiconductor Corporation | Dual shift register data serializer |
US7860202B2 (en) * | 2006-04-13 | 2010-12-28 | Etron Technology, Inc. | Method and circuit for transferring data stream across multiple clock domains |
JP5019419B2 (ja) * | 2006-07-07 | 2012-09-05 | ルネサスエレクトロニクス株式会社 | 表示データ受信回路及び表示パネルドライバ |
JP4445535B2 (ja) * | 2007-09-19 | 2010-04-07 | 富士通株式会社 | データ転送装置,情報処理システム,データ転送プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 |
TWI379201B (en) * | 2008-05-27 | 2012-12-11 | Novatek Microelectronics Corp | Data description method and related packet and testing system for a serial transmission interface |
JP2010124268A (ja) * | 2008-11-20 | 2010-06-03 | Sony Corp | データ通信装置、および通信制御方法、並びにプログラム |
CN102541784A (zh) * | 2010-12-21 | 2012-07-04 | 上海华虹集成电路有限责任公司 | 一种实现位填充的并行设计电路 |
CN102592636A (zh) * | 2011-01-11 | 2012-07-18 | 上海华虹集成电路有限责任公司 | 一种nrzi解码并行设计电路 |
CN102340316A (zh) * | 2011-09-07 | 2012-02-01 | 上海大学 | 基于fpga的微型空间过采样直流平衡串行解串器 |
CN103633969B (zh) * | 2012-08-20 | 2017-10-31 | 上海华虹集成电路有限责任公司 | 异步信号传递电路 |
CN103401656B (zh) * | 2013-08-16 | 2016-07-06 | 中国科学院上海微***与信息技术研究所 | 星载相控阵接收天线数据传输*** |
US10349707B2 (en) | 2016-07-05 | 2019-07-16 | Alfatex Nv | Fastener tape |
CN108873766B (zh) * | 2017-08-15 | 2021-03-23 | 北京旷视科技有限公司 | 一种用于相机的io控制电路和相机设备 |
CN108872830A (zh) * | 2018-06-07 | 2018-11-23 | 苏州纳芯微电子股份有限公司 | 一种用于传感器调理芯片的单线测试方法 |
CN110971238B (zh) * | 2019-12-16 | 2023-04-18 | 电子科技大学 | 一种σ-δ型ad的连续等间隙采样的外同步装置 |
CN113407476B (zh) * | 2021-06-17 | 2024-02-23 | 芯天下技术股份有限公司 | 一种提升数据通道速度的方法、装置、存储介质和终端 |
JP2024048776A (ja) * | 2022-09-28 | 2024-04-09 | ラピステクノロジー株式会社 | データ受信回路、表示ドライバ及び表示装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4872155A (en) * | 1987-03-13 | 1989-10-03 | Pioneer Electronic Corporation | Clock generator circuit and a synchronizing signal detection method in a sampled format system and a phase comparator circuit suited for generation of the clock |
US4989223A (en) * | 1988-11-25 | 1991-01-29 | Nec Corporation | Serial clock generating circuit |
US5293628A (en) * | 1991-11-04 | 1994-03-08 | Motorola, Inc. | Data processing system which generates a waveform with improved pulse width resolution |
US5598446A (en) * | 1995-09-08 | 1997-01-28 | Vlsi Technology, Inc. | Clock extraction of a clock signal using rising and falling edges of a received transmission signal |
US5796682A (en) * | 1995-10-30 | 1998-08-18 | Motorola, Inc. | Method for measuring time and structure therefor |
US6259283B1 (en) * | 1999-10-25 | 2001-07-10 | Xilinx, Inc. | Clock doubler circuit and method |
JP3603732B2 (ja) | 2000-03-16 | 2004-12-22 | セイコーエプソン株式会社 | データ転送制御装置及び電子機器 |
EP1172960A3 (en) * | 2000-07-10 | 2003-08-13 | International Business Machines Corporation | Apparatus and method for determining the quality of a digital signal |
-
2002
- 2002-08-07 JP JP2002230423A patent/JP3998532B2/ja not_active Expired - Lifetime
-
2003
- 2003-01-21 TW TW092101211A patent/TWI221373B/zh not_active IP Right Cessation
- 2003-01-28 US US10/352,164 patent/US6911843B2/en not_active Expired - Lifetime
- 2003-03-27 DE DE10313886A patent/DE10313886A1/de not_active Ceased
- 2003-03-31 CN CN03107767.6A patent/CN1266904C/zh not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE10313886A1 (de) | 2004-03-04 |
TWI221373B (en) | 2004-09-21 |
US20040027167A1 (en) | 2004-02-12 |
CN1266904C (zh) | 2006-07-26 |
JP2004072511A (ja) | 2004-03-04 |
TW200402974A (en) | 2004-02-16 |
US6911843B2 (en) | 2005-06-28 |
CN1474567A (zh) | 2004-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3998532B2 (ja) | データ転送装置 | |
KR100434833B1 (ko) | 직렬/병렬 변환 회로, 데이터 전송 제어 장치 및 전자 기기 | |
CN104809094A (zh) | Spi控制器及其通信方法 | |
JP5027241B2 (ja) | 高速シリアライザ/デシリアライザ送信アーキテクチャー | |
US8867573B2 (en) | Transferring data between asynchronous clock domains | |
US7583106B2 (en) | Clock circuitry | |
CN109918332B (zh) | Spi从设备及spi设备 | |
CN104022775A (zh) | 一种面向SerDes技术中基于FIFO协议的数字接口电路 | |
CN113190291A (zh) | 一种基于片上网络数据采集的可配置协议转换***及方法 | |
CN101183347A (zh) | 一种自适应速率匹配总线的桥接电路 | |
JP2005295117A (ja) | デマルチプレクサ装置 | |
JP4463295B2 (ja) | 半導体装置 | |
US6424179B1 (en) | Logic unit and integrated circuit for clearing interrupts | |
Pham-Thai et al. | A novel multichannel UART design with FPGA-based implementation | |
CN116192624A (zh) | 通信接口的配置方法和通信接口 | |
CN112035399A (zh) | 一种基于fpga的spi从机模块实现方法 | |
Li et al. | A Wrapper of PCI Express with FIFO Interfaces based on FPGA | |
Warrier et al. | FPGA implementation of SPI To I2C bridge | |
JP4290412B2 (ja) | データ転送装置 | |
CN113626355B (zh) | 实现串行接口全双工通信的从机芯片的电路结构 | |
Nambiar et al. | Migrating FPGA based PCI express GENI design to gen2 | |
JP2011096172A (ja) | 半導体装置 | |
US11171770B2 (en) | Data transmission device | |
EP0817087A2 (en) | Implementation of high speed synchronous state machines with short setup and hold time signals | |
CN113626356B (zh) | 实现串行接口全双工通信的主机芯片的电路结构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050708 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050708 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060314 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060410 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070426 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070501 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070628 |
|
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: 20070807 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070807 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3998532 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100817 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110817 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110817 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313115 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110817 Year of fee payment: 4 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120817 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120817 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130817 Year of fee payment: 6 |
|
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 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313115 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |