JP3808863B2 - 複数のデータ伝送路を持つシリアルデータ通信方式 - Google Patents

複数のデータ伝送路を持つシリアルデータ通信方式 Download PDF

Info

Publication number
JP3808863B2
JP3808863B2 JP2003393036A JP2003393036A JP3808863B2 JP 3808863 B2 JP3808863 B2 JP 3808863B2 JP 2003393036 A JP2003393036 A JP 2003393036A JP 2003393036 A JP2003393036 A JP 2003393036A JP 3808863 B2 JP3808863 B2 JP 3808863B2
Authority
JP
Japan
Prior art keywords
data
buffer
data transmission
skew adjustment
extra
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 - Fee Related
Application number
JP2003393036A
Other languages
English (en)
Other versions
JP2005159578A (ja
Inventor
健 奥山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003393036A priority Critical patent/JP3808863B2/ja
Priority to US10/769,087 priority patent/US7193429B2/en
Publication of JP2005159578A publication Critical patent/JP2005159578A/ja
Application granted granted Critical
Publication of JP3808863B2 publication Critical patent/JP3808863B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/14Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

本発明は、複数のデータ伝送路を持つシリアルデータ通信方式に関し、特に、エラスティックバッファ(Elastic Buffer)を有する半導体集積回路に使用される。
従来、エラスティックバッファによる同期化は、シリアルデータ通信の分野で広く採用されている。このエラスティックバッファを用いた通信方式によれば、データ送信側のクロック信号とデータ受信側のクロック信号とのタイミングのずれを、エクストラシンボル(Extra symbol)と呼ばれるデータの削除又は補完によって調整することができる。
以下、エラスティックバッファを用いた通信システムについて説明する。
図30は、エラスティックバッファを用いた通信システムの例を示している。
データ送信側半導体集積回路IC1は、出力制御回路11と、クロック信号CLK1を発生するPLL回路15とを有する。出力制御回路11は、例えば、データ送信のためのアナログ回路(パラレル・シリアル変換回路など)を有する。データDATA・Xは、このアナログ回路によりデータ伝送路に出力され、データ受信側半導体集積回路IC2に供給される。
データ受信側半導体集積回路IC2は、復元回路12と、エラスティックバッファ(EB)13と、ロジック回路14と、PLL回路16とを有する。復元回路12は、データ受信のためのアナログ回路(シリアル・パラレル変換回路など)を有する。また、復元回路12は、クロック信号CLK2を復元する。
なお、クロック信号CLK2としては、例えば、半導体集積回路IC1から送られてきたものをそのまま使用してもよい。
エラスティックバッファ13には、復元されたデータDATA・X及びクロック信号CLK2、並びに、PLL回路16により生成されたクロック信号CLK3がそれぞれ入力される。エラスティックバッファ13は、例えば、図31に示すように、ライトコントロール回路17、バッファメモリ18及びリードコントロール回路19から構成される。
ライトコントロール回路17は、クロック信号CLK2に同期して、データDATA・Xを、順次、バッファメモリのアドレスADD0,ADD2,・・・ADD7に書き込む。リードコントロール回路19は、クロック信号CLK3に同期して、バッファメモリのアドレスADD0,ADD2,・・・ADD7から、順次、データDATA・Yを読み出す。
ここで、エラスティックバッファ13は、クロック信号CLK2とクロック信号CLK3との間に生じるずれを解消するために、エクストラシンボルの削除又は補完という手段により同期化を図る。
エラスティックバッファ13から出力されるデータDATA・Yは、ロジック回路14に供給される。
図32乃至図34は、エラスティックバッファにおける同期化の例を示している。
同期化を行う時期は、データ送信側半導体集積回路(図30の「IC1」)により決定される。即ち、データ送信側半導体集積回路は、送信データDATA・Xの一部に、同期化のためのエクストラシンボル「Symbol」を含める。
そして、データ受信側半導体集積回路(図30の「IC2」)内のエラスティックバッファ13は、エクストラシンボル「Symbol」に基づいて、以下に示すような処理を行う。
(1) クロック信号CLK2とクロック信号CLK3との間のずれが一定範囲内である場合には、図32に示すように、エクストラシンボル「Symbol」をそのまま転送する。
(2) クロック信号CLK2の周波数がクロック信号CLK3の周波数よりも高いときは、バッファメモリに対する書き込み速度が読み出し速度よりも速くなる。そこで、両クロック信号CLK2,CLK3のずれが一定範囲よりも大きくなったときには、図33に示すように、エクストラシンボル「Symbol」の削除を行う。
(3) クロック信号CLK2の周波数がクロック信号CLK3の周波数よりも低いときは、バッファメモリに対する書き込み速度が読み出し速度よりも遅くなる。そこで、両クロック信号CLK2,CLK3のずれが一定範囲よりも大きくなったときには、図34に示すように、エクストラシンボル「EXT」の補完を行う。
特開2001−127671
単一伝送路によるシリアルデータ通信方式においては、上述のようなエラスティックバッファを用いた通信方式は、データ送信側クロック信号とデータ受信側クロック信号との同期化を図るに当たって、非常に有効な技術である。
しかし、このようなエラスティック技術は、複数伝送路を有するシリアルデータ通信方式に対しては、必ずしも有効なものとは言えない。
図35は、エラスティックバッファを用いた複数伝送路によるシリアルデータ通信方式の例を示している。
4つのデータ伝送路0,1,2,3を持つシステムについて説明する。
データ送信側半導体集積回路IC1は、データ伝送路0,1,2,3に対応して、出力制御回路(パラレル・シリアル変換回路などのアナログ回路を含む)11−0,11−1,11−2,11−3を有する。PLL回路15により発生したクロック信号CLK1は、出力制御回路11−0,11−1,11−2,11−3に供給される。
データ送信側半導体集積回路IC1は、例えば、32ビットデータを送信する場合、この32ビット送信データを、4つの8ビットデータに分割する。8ビットデータは、それぞれ、出力制御回路11−0,11−1,11−2,11−3により、データ伝送路0,1,2,3にシリアル出力される。
データ受信側半導体集積回路IC2は、データ伝送路0,1,2,3に対応して、復元回路(シリアル・パラレル変換回路などのアナログ回路を含む)12−0,12−1,12−2,12−3を有する。復元回路12−0,12−1,12−2,12−3は、シリアル転送されてきたデータをパラレルデータに変換し、かつ、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3を復元する。
ここで、復元されたクロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3の周波数は、復元時の諸条件などにより、互いにばらつきを有する場合があると共に、クロック信号CLK3の周波数に対しても完全に一致するとは限らない。
そこで、エラスティックバッファ13−0,13−1,13−2,13−3を用いて、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3とクロック信号CLK3との同期化を図る。
具体的には、データ伝送路0に対応するエラスティックバッファ13−0は、クロック信号CLK2−0とクロック信号CLK3との同期化を図るために、個別に、「エクストラシンボルの削除/補完」を行う。
同様に、データ伝送路1,2,3に対応するエラスティックバッファ13−1,13−2,13−3においても、それぞれ、クロック信号CLK2−1,CLK2−2,CLK2−3とクロック信号CLK3との同期化を図るために、個別に、「エクストラシンボルの削除/補完」を行う。
ここで、データ伝送路0,1,2,3に対応する信号経路の各々についてみると、エラスティックバッファ13−0,13−1,13−2,13−3により同期化が図られている。しかし、上述したように、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3の周波数には、ばらつきがある。
このため、データ伝送路0,1,2,3に対応する信号経路間についてみると、これら信号経路において、エラスティックバッファ13−0,13−1,13−2,13−3による「エクストラシンボルの削除/補完」が同時に行われるとは限らない。
従って、複数伝送路によるシリアル通信方式では、各々の信号経路に関しては、エラスティックバッファ13−0,13−1,13−2,13−3により、個別に、同期化を図ることができるが、信号経路間に関しては、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3の周波数のばらつきや、エラスティックバッファ13−0,13−1,13−2,13−3における処理などに起因して、データ列に大きなスキュが発生する場合がある。
図36は、エラスティックバッファでエクストラシンボルの削除が行われた場合の様子を示している。
データ伝送路0,2に対応するエラスティックバッファ13−0,13−2においては、それぞれ、クロック信号CLK2−0,CLK2−2とクロック信号CLK3との同期化を図るため、個別に、エクストラシンボル「Symbol」の削除が行われる。
しかし、この場合、エラスティックバッファ13−0,13−2においては、エクストラシンボル「Symbol」の削除が行われているが、データ伝送路1,3に対応するエラスティックバッファ13−1,13−3においては、エクストラシンボル「Symbol」の削除が行われていない。
従って、エラスティックバッファ13−0,13−2においてエクストラシンボルの削除が行われた以降は、データDATA・Y0,DATA・Y2の出力タイミングとデータDATA・Y1,DATA・Y3の出力タイミングとが大きくずれることになる。
本発明は、このような事情に鑑みてなされたもので、その目的は、複数のデータ伝送路を持つシリアル通信方式において、複数のデータ伝送路に対応する複数の信号経路間に生じるデータ列のスキュを解消する新たな同期化技術を提案することにある。
本発明の例に関わる半導体集積回路は、複数のデータ伝送路を持つシリアル通信システムに適用されるものであり、ロジック回路と、複数のデータ伝送路に対応して設けられ、ロジック回路にデータを転送するための複数の信号経路と、1つの信号経路に1つ設けられ、信号経路ごとに同期化を図る複数のエラスティックバッファと、複数の信号経路間に生じるデータ列のスキュを解消するスキュ調整回路とを備える。
本発明の例に関わるシリアル通信システムは、複数のデータ伝送路によるシリアル通信方式により互いに接続される第1のICと第2のICとを備える。そして、第2のICは、ロジック回路と、複数のデータ伝送路に対応して設けられ、ロジック回路にデータを転送するための複数の信号経路と、1つの信号経路に1つ設けられ、信号経路ごとに同期化を図る複数のエラスティックバッファと、複数の信号経路間に生じるデータ列のスキュを解消するスキュ調整回路とを有する。
本発明の例によれば、複数のデータ伝送路を持つシリアル通信方式において、複数のデータ伝送路に対応する複数の信号経路間に生じるデータ列のスキュを、信号経路ごとに新規に設けたスキュ調整回路により解消することができる。
以下、図面を参照しながら、本発明を実施するための最良の形態について詳細に説明する。
図1は、本発明の例に関わる複数のデータ伝送路を持つ通信システムを示している。
本例では、データ伝送路が4つの場合について説明する。
データ送信側半導体集積回路IC1は、出力制御回路11−0,11−1,11−2,11−3と、クロック信号CLK1を発生するPLL回路15とを有する。
出力制御回路11−0,11−1,11−2,11−3は、例えば、データ送信のためのアナログ回路(パラレル・シリアル変換回路など)を有する。
送信データは、例えば、4つ(DATA・X0,DATA・X1,DATA・X2,DATA・X3)に分割される。データDATA・X0,DATA・X1,DATA・X2,DATA・X3は、それぞれ、クロックCLK1に同期して、出力制御回路11−0,11−1,11−2,11−3からデータ伝送路0,1,2,3にシリアル出力される。
データ受信側半導体集積回路IC2は、復元回路12−0,12−1,12−2,12−3と、エラスティックバッファ(EB)13と、ロジック回路14と、PLL回路16と、スキュ調整回路(De−skew回路)20とを有する。
復元回路12−0,12−1,12−2,12−3は、データ受信のためのアナログ回路(シリアル・パラレル変換回路など)を有する。また、復元回路12−0,12−1,12−2,12−3は、それぞれ、シリアル転送されてきたデータをパラレルデータに変換すると共に、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3を復元する。
なお、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3としては、例えば、半導体集積回路IC1から送られてきたものをそのまま使用してもよい。
ここで、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3の周波数は、例えば、アナログ回路による復元時の諸条件などにより、半導体集積回路IC2内のクロック信号CLK3の周波数とは完全に一致していない。
つまり、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3とクロック信号CLK3とは、完全に同期していない。
また、データ伝送路0,1,2,3に対応する半導体集積回路IC2内の信号経路間においては、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3の周波数は、例えば、アナログ回路による復元時の諸条件などにより、互いに、完全に一致するとは限らない。
つまり、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3の間には、周波数のばらつきが発生する可能性がある。
そこで、まず、エラスティックバッファ13−0,13−1,13−2,13−3により、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3とクロック信号CLK3との同期化を図る。
エラスティックバッファ13−0,13−1,13−2,13−3における同期化は、例えば、「エクストラシンボルの削除/補完」により実行する。但し、これは、一例であり、本発明の例においては、エラスティックバッファ13−0,13−1,13−2,13−3における同期化の方法については、限定されない。
エラスティックバッファ13−0,13−1,13−2,13−3の構成は、それぞれ、例えば、図2に示すようになる。この例では、エラスティックバッファ13−0,13−1,13−2,13−3は、ライトコントロール回路17A、バッファメモリ18A及びリードコントロール回路19Aから構成される。
ライトコントロール回路17Aは、クロック信号CLK3−i(i=0,1,2,3)に同期して、データDATA・Xiを、順次、バッファメモリのアドレスADD0,ADD2,・・・ADD7に書き込む。
エラスティックバッファ13−0,13−1,13−2,13−3については、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3とクロック信号CLK3との同期化という目的が達成できれば、どのような構成のものを使用しても構わない。
但し、本発明の例では、エラスティックバッファ13−0,13−1,13−2,13−3は、それぞれ、少なくとも自らが行った処理の内容を示す制御信号CNT0,CNT1,CNT2,CNT3を出力する機能を有していなければならない。
ライトコントロール回路17Aは、例えば、図3に示すように、コントローラとライトポインタとから構成される。エラスティックバッファ13−iが行った処理の内容を示す制御信号CNTiは、例えば、ライトコントロール回路17A内のコントローラから出力される。
リードコントロール回路19Aは、クロック信号CLK3に同期して、バッファメモリのアドレスADD0,ADD2,・・・ADD7から、順次、データDATA・Yiを読み出す。リードコントロール回路19Aは、例えば、図4に示すように、コントローラとリードポインタとから構成される。
次に、スキュ調整回路(De−skew回路)20を用い、クロック信号CLK2−0,CLK2−1,CLK2−2,CLK2−3の周波数のばらつきに起因して、複数の信号経路間に生じるデータ列のスキュを解消する。
複数の信号経路間に生じるデータ列のばらつき(スキュ)は、例えば、1つの信号経路に1つだけ設けられるスキュ調整バッファ(De−skewバッファ)20−0,20−1,20−2,20−3により解消する。
スキュ調整バッファ20−0,20−1,20−2,20−3の構成は、それぞれ、例えば、図5に示すようになる。この例では、スキュ調整バッファ20−0,20−1,20−2,20−3は、ライトコントロール回路17B、バッファメモリ18B及びリードコントロール回路19Bから構成される。
ライトコントロール回路17Bは、クロック信号CLK3−i(i=0,1,2,3)に同期して、データDATA・Yiを、順次、バッファメモリのアドレスADD0,ADD2,・・・ADD7に書き込む。
スキュ調整バッファ20−0,20−1,20−2,20−3についても、複数の信号経路間に生じるデータ列のスキュの解消という目的が達成できれば、どのような構成のものを使用しても構わない。
但し、本発明の例では、スキュ調整バッファ20−0,20−1,20−2,20−3は、エラスティックバッファ13−0,13−1,13−2,13−3が行った処理の内容を示す制御信号CNT0,CNT1,CNT2,CNT3に基づいて、自らが行う処理の内容を決定する。
ライトコントロール回路17Bは、例えば、図6に示すように、コントローラとライトポインタとから構成される。エラスティックバッファ13−iが行った処理の内容を示す制御信号CNTiは、例えば、ライトコントロール回路17B内のコントローラに入力される。
リードコントロール回路19Bは、クロック信号CLK3に同期して、バッファメモリのアドレスADD0,ADD2,・・・ADD7から、順次、データDATA・Ziを読み出す。リードコントロール回路19Aは、例えば、図7に示すように、コントローラとリードポインタとから構成される。
スキュ調整バッファ20−iが行う処理は、以下の2つである。
(1) エクストラシンボルの削除 (Removing Extra Symbol)
この処理は、エクストラシンボルを削除することにより、データ伝送路0,1,2,3に対応する複数の信号経路間に生じるデータ列のばらつき(スキュ)を解消する処理のことである。
エクストラシンボルの削除は、例えば、ライトポインタにより指定されるバッファメモリのアドレスADD0,ADD2,・・・ADD7のインクリメントを、クロック信号CLK3の1クロック分だけ止めることにより行うことができる。
この場合、バッファメモリの一アドレスにエクストラシンボルを書き込んだ後、その一アドレスと同一アドレスに次のデータが上書きされるため、リードポインタにより指定されるバッファメモリのアドレスADD0,ADD2,・・・ADD7を、1つずつ、順次、インクリメントして読み出しを行うと、エクストラシンボルが削除される。
[エクストラシンボルの削除が行われる場合]
A: 一信号経路におけるエラスティックバッファ13−iの処理が「エクストラシンボルの補完」である場合、スキュ調整バッファ20−iにより、その一信号経路において「エクストラシンボルの削除」を行う。
B: 一信号経路におけるエラスティックバッファ13−iで「エクストラシンボルの削除/補完」のいずれも行われず、かつ、その一信号経路以外の残り全ての信号経路のうちの少なくとも1つにおけるエラスティックバッファ13−iの処理が「エクストラシンボルの削除」である場合、スキュ調整バッファ20−iにより、その一信号経路において「エクストラシンボルの削除」を行う。
C: Aが適用される場合、エラスティックバッファ13−iで「エクストラシンボルの削除/補完」のいずれも行われなかった信号経路については、スキュ調整バッファ20−iで「エクストラシンボルの削除/補完」を行わない。また、Bが適用される場合、エラスティックバッファ13−iで「エクストラシンボルの削除」が行われた信号経路については、スキュ調整バッファ20−iで「エクストラシンボルの削除/補完」を行わない。
(2) エクストラシンボルの補完 (Replicate Extra Symbol)
この処理は、エクストラシンボルを補完することにより、データ伝送路0,1,2,3に対応する複数の信号経路間に生じるデータ列のばらつき(スキュ)を解消する処理のことである。
エクストラシンボルの補完は、例えば、ライトポインタにより指定されるバッファメモリのアドレスADD0,ADD2,・・・ADD7のインクリメントを、+2(通常は、+1)に設定することにより行える。
この場合、連続する2つのアドレスに、同時にエクストラシンボルが書き込まれるため、例えば、リードポインタにより指定されるバッファメモリのアドレスADD0,ADD2,・・・ADD7を、1つずつ、順次、インクリメントして読み出しを行うと、エクストラシンボルが補完される。
[エクストラシンボルの補完が行われる場合]
A: 一信号経路におけるエラスティックバッファ13−iで「エクストラシンボルの削除/補完」のいずれも行われず、かつ、その一信号経路以外の残り全ての信号経路のうちの少なくとも1つにおけるエラスティックバッファ13−iの処理が「エクストラシンボルの補完」である場合、スキュ調整バッファ20−iにより、その一信号経路において「エクストラシンボルの補完」を行う。
B: 一信号経路におけるエラスティックバッファ13−iの処理が「エクストラシンボルの削除」である場合、スキュ調整バッファ20−iにより、その一信号経路において「エクストラシンボルの補完」を行う。
C: Aが適用される場合、エラスティックバッファ13−iで「エクストラシンボルの補完」として処理された信号経路については、スキュ調整バッファ20−iで「エクストラシンボルの削除/補完」を行わない。Bが適用される場合、エラスティックバッファ13−iで「エクストラシンボルの削除/補完」のいずれも行われなかった信号経路については、スキュ調整バッファ20−iで「エクストラシンボルの削除/補完」を行わない。
なお、スキュ調整バッファ20−iが行う処理の内容は、エラスティックバッファ13−iが行う処理の内容に近似しているが、前者は、書き込みを制御するクロック信号と読み出しを制御するクロック信号とが同期している(CLK3のみ)のに対し、後者は、それらクロック信号が非同期である(CLK2−iとCLK3)点において相違している。
このようなスキュ調整回路を用いた処理によれば、複数のデータ伝送路を持つシリアル通信方式において、複数の信号経路間にデータ列のばらつき(スキュ)が生じたとしても、これを、スキュ調整回路により解消することができる。
図8は、複数の信号経路間でスキュが生じる第1例を示している。
データ伝送路0,2におけるエラスティックバッファ13−0,13−2においては、それぞれ、クロック信号CLK2−0,CLK2−2とクロック信号CLK3とのスキュを解消するために、個別に、エクストラシンボルの削除が行われる。
従って、エラスティックバッファ13−0,13−2からは、エクストラシンボル「Symbol」が削除されたデータDATA・Y0,DATA・Y2が出力される。この時、エクストラシンボルの削除が行われたことを示す制御信号CNT0,CNT2も出力される。
また、データ伝送路1,3におけるエラスティックバッファ13−1,13−3においては、それぞれ、エクストラシンボルの削除/補完を行わずに、そのまま、データDATA・X1,DATA・X3を、データDATA・Y1,DATA・Y3として出力する。
その結果、エクストラシンボルの削除が行われた後においては、エラスティックバッファ13−0,13−1,13−2,13−3から出力されるデータ列のタイミングが互いにずれる。
図9は、図8のスキュを解消するスキュ調整回路の動作の第1例を示している。
エラスティックバッファ13−0,13−1,13−2,13−3での処理は、図8に示すように、データ伝送路0,2に対応する信号経路では、「エクストラシンボルの削除」であり、データ伝送路1,3に対応する信号経路では、「エクストラシンボルの削除/補完」のいずれでもない。
そこで、上述の条件に基づいて、各スキュ調整バッファが行う処理を決定する。
まず、データ伝送路0,2におけるエラスティックバッファの処理は、「エクストラシンボルの削除」である。従って、上述の (2) B. の条件によれば、データ伝送路0,2では、スキュ調整回路20により、「エクストラシンボルの補完 (Replicate Extra Symbol)」が行われる。
次に、データ伝送路1,3におけるエラスティックバッファの処理は、「エクストラシンボルの削除/補完」のいずれでもない。従って、上述の (2) C. の条件によれば、データ伝送路1,3では、スキュ調整回路20による「エクストラシンボルの削除/補完」は、行われない。
スキュ調整回路20により以上のような処理を行うと、エラスティックバッファでの同期化処理により生じた各信号経路間におけるデータ列のばらつき(スキュ)が解消される。つまり、図9に示すように、各スキュ調整バッファ20−0,20−1,20−2,20−3からは、同じタイミングで、データDATA・Z0,DATA・Z1,DATA・Z2,DATA・Z3が出力される。
図10は、図8のスキュを解消するスキュ調整回路の動作の第2例を示している。
エラスティックバッファ13−0,13−1,13−2,13−3での処理は、図8に示すように、データ伝送路0,2に対応する信号経路では、「エクストラシンボルの削除」であり、データ伝送路1,3に対応する信号経路では、「エクストラシンボルの削除/補完」のいずれでもない。
そこで、上述の条件に基づいて、各スキュ調整バッファが行う処理を決定する。
まず、データ伝送路0,2におけるエラスティックバッファの処理は、「エクストラシンボルの削除」である。従って、上述の (1) C. の条件によれば、データ伝送路0,2では、スキュ調整回路20による「エクストラシンボルの削除/補完」は、行われない。
次に、データ伝送路1,3におけるエラスティックバッファの処理は、「エクストラシンボルの削除/補完」のいずれでもない。また、データ伝送路1,3以外の伝送路において「エクストラシンボルの削除」が行われている。従って、上述の (1) B. の条件によれば、データ伝送路1,3では、スキュ調整回路20により、「エクストラシンボルの削除 (Removing Extra Symbol)」が行われる。
スキュ調整回路20により以上のような処理を行うと、エラスティックバッファでの同期化処理により生じた各信号経路間におけるデータ列のばらつき(スキュ)が解消される。つまり、図10に示すように、各スキュ調整バッファ20−0,20−1,20−2,20−3からは、同じタイミングで、データDATA・Z0,DATA・Z1,DATA・Z2,DATA・Z3が出力される。
図11は、複数の信号経路間でスキュが生じる第2例を示している。
データ伝送路1,3におけるエラスティックバッファ13−1,13−3においては、それぞれ、クロック信号CLK2−1,CLK2−3とクロック信号CLK3とのスキュを解消するために、個別に、エクストラシンボルの補完が行われる。
従って、エラスティックバッファ13−1,13−3からは、エクストラシンボル「EXT」が補完されたデータDATA・Y1,DATA・Y3が出力される。この時、エクストラシンボルの補完が行われたことを示す制御信号CNT1,CNT3も出力される。
また、データ伝送路0,2におけるエラスティックバッファ13−0,13−2においては、それぞれ、エクストラシンボルの削除/補完を行わずに、そのまま、データDATA・X0,DATA・X2を、データDATA・Y0,DATA・Y2として出力する。
その結果、エクストラシンボルの補完が行われた後においては、エラスティックバッファ13−0,13−1,13−2,13−3から出力されるデータ列のタイミングが互いにずれる。
図12は、図11のスキュを解消するスキュ調整回路の動作の第1例を示している。
エラスティックバッファ13−0,13−1,13−2,13−3での処理は、図11に示すように、データ伝送路1,3に対応する信号経路では、「エクストラシンボルの補完」であり、データ伝送路0,2に対応する信号経路では、「エクストラシンボルの削除/補完」のいずれでもない。
そこで、上述の条件に基づいて、各スキュ調整バッファが行う処理を決定する。
まず、データ伝送路1,3におけるエラスティックバッファの処理は、「エクストラシンボルの補完」である。従って、上述の (1) A. の条件によれば、データ伝送路1,3では、スキュ調整回路20により、「エクストラシンボルの削除 (Removing Extra Symbol)」が行われる。
次に、データ伝送路0,2におけるエラスティックバッファの処理は、「エクストラシンボルの削除/補完」のいずれでもない。従って、上述の (1) C. の条件によれば、データ伝送路0,2では、スキュ調整回路20による「エクストラシンボルの削除/補完」は、行われない。
スキュ調整回路20により以上のような処理を行うと、エラスティックバッファでの同期化処理により生じた各信号経路間におけるデータ列のばらつき(スキュ)が解消される。つまり、図12に示すように、各スキュ調整バッファ20−0,20−1,20−2,20−3からは、同じタイミングで、データDATA・Z0,DATA・Z1,DATA・Z2,DATA・Z3が出力される。
図13は、図11のスキュを解消するスキュ調整回路の動作の第2例を示している。
エラスティックバッファ13−0,13−1,13−2,13−3での処理は、図11に示すように、データ伝送路1,3に対応する信号経路では、「エクストラシンボルの補完」であり、データ伝送路0,2に対応する信号経路では、「エクストラシンボルの削除/補完」のいずれでもない。
そこで、上述の条件に基づいて、各スキュ調整バッファが行う処理を決定する。
まず、データ伝送路1,3におけるエラスティックバッファの処理は、「エクストラシンボルの補完」である。従って、上述の (2) C. の条件によれば、データ伝送路1,3では、スキュ調整回路20による「エクストラシンボルの削除/補完」は、行われない。
次に、データ伝送路0,2におけるエラスティックバッファの処理は、「エクストラシンボルの削除/補完」のいずれでもない。また、データ伝送路0,2以外の伝送路において「エクストラシンボルの補完」が行われている。従って、上述の (2) A. の条件によれば、データ伝送路0,2では、スキュ調整回路20により、「エクストラシンボルの補完 (Replicate Extra Symbol)」が行われる。
スキュ調整回路20により以上のような処理を行うと、エラスティックバッファでの同期化処理により生じた各信号経路間におけるデータ列のばらつき(スキュ)が解消される。つまり、図13に示すように、各スキュ調整バッファ20−0,20−1,20−2,20−3からは、同じタイミングで、データDATA・Z0,DATA・Z1,DATA・Z2,DATA・Z3が出力される。
次に、スキュ調整回路内のスキュ調整バッファにおける「エクストラシンボルの削除/補完」の原理について説明する。
図14は、スキュ調整バッファ内のライトコントロール回路の例を示している。
ライトポインタは、例えば、カウンタを有し、データ書き込みの対象となるバッファメモリ18BのアドレスADDjを、原則として、1つずつ、インクリメントしていく。同図の矢印は、ライトポインタによって指定されたライトアドレスADDjを示す。
図15は、「エクストラシンボルの削除」を行うときのスキュ調整回路の動作を示している。
例えば、制御信号CNTiが“H”になると、スキュ調整回路によりエクストラシンボル「EXT」の削除を実行する。
まず、ライトポインタによりアドレスADD N+1が指定され、このアドレスADD N+1に、エクストラシンボル「EXT」が書き込まれる。次に、通常ならば、ライトポインタによって指定されるアドレスが1つだけインクリメントされ、アドレスADD N+2になるのであるが、エクストラシンボル「EXT」の削除を行うときは、ライトポインタによって指定されるアドレスのインクリメントを、クロック信号CLK3の1クロック分だけ止める。
その結果、アドレスADD N+1にデータ「DT1」が書き込まれ、アドレスADD N+1に既に書き込まれているエクストラシンボル「EXT」にデータ「DT1」が上書きされた形となる。
図16は、「エクストラシンボルの補完」を行うときのスキュ調整回路の動作を示している。
例えば、制御信号CNTiが“H”になると、スキュ調整回路によりエクストラシンボル「EXT」の補完を実行する。
まず、ライトポインタによりアドレスADD N+1が指定され、このアドレスADD N+1に、データ「DT1」が書き込まれる。この後、ライトポインタによって指定されるアドレスが+2(通常は、+1)だけインクリメントされる。
その結果、アドレスADD N+2,ADD N+3に、同時に、エクストラシンボル「EXT」が書き込まれる。
ところで、本発明の例に関わる複数のデータ伝送路を持つシリアル通信方式では、スキュ調整回路による2つの処理、即ち、「エクストラシンボルの削除」と「エクストラシンボルの補完」は、選択可能である。
例えば、図17に示すように、データ伝送路0,3に対応するエラスティックバッファ13において「エクストラシンボルの削除」が行われた場合、スキュ調整回路20は、以下の2つの処理を行うことができる。
一つは、データ伝送路1,2に対応するスキュ調整バッファにおいて「エクストラシンボルの削除 (Removing Extra Symbol) 」を行う処理である。この場合、同図(a)に示すように、全てのデータ伝送路0,1,2,3に対応する信号経路について、エクストラシンボルが1個削除された形となるため、エラスティックバッファ13において各伝送路間に生じたデータ列のばらつき(スキュ)を修正できる。
もう一つは、データ伝送路0,3に対応するスキュ調整バッファにおいて「エクストラシンボルの補完 (Replicate Extra Symbol) 」を行う処理である。この場合、同図(b)に示すように、全てのデータ伝送路0,1,2,3に対応する信号経路について、エクストラシンボルが1個追加された形となるため、エラスティックバッファ13において各伝送路間に生じたデータ列のばらつき(スキュ)を修正できる。
また、例えば、図18に示すように、データ伝送路1,2に対応するエラスティックバッファ13において「エクストラシンボルの削除」が行われた場合、スキュ調整回路20は、以下の2つの処理を行うことができる。
一つは、データ伝送路0,3に対応するスキュ調整バッファにおいて「エクストラシンボルの削除 (Removing Extra Symbol) 」を行う処理である。この場合、同図(a)に示すように、全てのデータ伝送路0,1,2,3に対応する信号経路について、エクストラシンボルが1個削除された形となるため、エラスティックバッファ13において各伝送路間に生じたデータ列のばらつき(スキュ)を修正できる。
もう一つは、データ伝送路1,2に対応するスキュ調整バッファにおいて「エクストラシンボルの補完 (Replicate Extra Symbol) 」を行う処理である。この場合、同図(b)に示すように、全てのデータ伝送路0,1,2,3に対応する信号経路について、エクストラシンボルが1個追加された形となるため、エラスティックバッファ13において各伝送路間に生じたデータ列のばらつき(スキュ)を修正できる。
また、例えば、図19に示すように、データ伝送路0,3に対応するエラスティックバッファ13において「エクストラシンボルの補完」が行われた場合、スキュ調整回路20は、以下の2つの処理を行うことができる。
一つは、データ伝送路1,2に対応するスキュ調整バッファにおいて「エクストラシンボルの補完 (Replicate Extra Symbol) 」を行う処理である。この場合、同図(b)に示すように、全てのデータ伝送路0,1,2,3に対応する信号経路について、エクストラシンボルが1個追加された形となるため、エラスティックバッファ13において各伝送路間に生じたデータ列のばらつき(スキュ)を修正できる。
もう一つは、データ伝送路0,3に対応するスキュ調整バッファにおいて「エクストラシンボルの削除 (Removing Extra Symbol) 」を行う処理である。この場合、同図(a)に示すように、全てのデータ伝送路0,1,2,3に対応する信号経路について、エクストラシンボルが1個削除された形となるため、エラスティックバッファ13において各伝送路間に生じたデータ列のばらつき(スキュ)を修正できる。
また、例えば、図20に示すように、データ伝送路1,2に対応するエラスティックバッファ13において「エクストラシンボルの補完」が行われた場合、スキュ調整回路20は、以下の2つの処理を行うことができる。
一つは、データ伝送路0,3に対応するスキュ調整バッファにおいて「エクストラシンボルの補完 (Replicate Extra Symbol) 」を行う処理である。この場合、同図(b)に示すように、全てのデータ伝送路0,1,2,3に対応する信号経路について、エクストラシンボルが1個追加された形となるため、エラスティックバッファ13において各伝送路間に生じたデータ列のばらつき(スキュ)を修正できる。
もう一つは、データ伝送路1,2に対応するスキュ調整バッファにおいて「エクストラシンボルの削除 (Removing Extra Symbol) 」を行う処理である。この場合、同図(a)に示すように、全てのデータ伝送路0,1,2,3に対応する信号経路について、エクストラシンボルが1個削除された形となるため、エラスティックバッファ13において各伝送路間に生じたデータ列のばらつき(スキュ)を修正できる。
なお、図17乃至図20において、「エクストラシンボルの削除/補完」を行うタイミングは、データ送信側の半導体集積回路により生成されるエクストラシンボル「Symbol」により決定される。
図21は、スキュ調整バッファ内のライトポインタが指定するアドレスとリードポインタが指定するアドレスとの関係を示している。
スキュ調整バッファ20−iでは、ライトコントロール回路17Bを用いてバッファメモリ18Bにシリアルデータを書き込み、かつ、リードコントロール回路19Bを用いてバッファメモリ18Bからシリアルデータを読み出すことにより、データ列のタイミング調整を図っている。
ここで、スキュ調整バッファ20−iの動作を正常に保つためには、第一に、常に書き込みが読み出しに先行していなければならない。
例えば、同図において、ライトポインタ及びリードポインタによるアドレスの指定が、共に、アドレスADD0からアドレスADD7に向かって行われ、かつ、これが繰り返される場合に、リードポインタの指定するアドレスが、ライトポインタの指定するアドレスに追い付いてしまうと、正常な調整を行うことができない。
また、第二に、書き込みが読み出しに追い付いてはいけない。
例えば、同図において、ライトポインタ及びリードポインタによるアドレスの指定が、共に、アドレスADD0からアドレスADD7に向かって行われ、かつ、これが繰り返される場合に、ライトポインタの指定するアドレスが、リードポインタの指定するアドレスに追い付いてしまうと、正常な調整を行うことができない。
ところが、上述したように、スキュ調整バッファ20−iにおいては、「エクストラシンボルの削除」が行われると、ライトポインタの移動が1クロック分だけ遅れる。
従って、スキュ調整バッファ20−iにおいて、同じ処理、例えば、「エクストラシンボルの削除」のみが繰り返し行われると、リードポインタの位置がライトポインタの位置に追い付いてしまうことになる(ここでは、バッファメモリ内のデータがなくなることから、「アンダーフロー」と称する)。
また、スキュ調整バッファ20−iにおいては、「エクストラシンボルの補完」が行われると、1クロックで、ライトポインタが2アドレス分移動する。
従って、スキュ調整バッファ20−iにおいて、同じ処理、例えば、「エクストラシンボルの補完」のみが繰り返し行われると、ライトポインタの位置がリードポインタの位置に追い付いてしまうことになる(ここでは、バッファメモリ内にデータが満たされた状態になることから、「オーバーフロー」と称する)。
そこで、本発明の例に関わる通信方式では、「バッファステータス」という概念を採用する。バッファステータスとは、ライトポインタの位置(ライトポインタが指定するアドレス)とリードポインタの位置(リードポインタが指定するアドレス)との相対位置関係を示すものである。
本発明の例に関わる通信方式では、バッファステータスに基づいて、アンダーフローやオーバーフローが生じないように、ライトポインタの位置及びリードポインタの位置を制御する。具体的には、スキュ調整バッファでのタイミング調整時に、バッファステータスに基づいて、「エクストラシンボルの削除 (Removing Extra Symbol)」を行うか、又は、「エクストラシンボルの補完 (Replicate Extra Symbol)を行うかを決定する。
図22は、バッファステータスの概要を示している。
リードポインタは、バッファステータス上においては、所定位置、例えば、「0」に固定される。また、ライトポインタは、初期状態においては、リードポインタの位置「0」から最も離れた位置、具体的には、「3」又は「4」に配置される。本例では、ライトポインタは、初期状態において「4」に配置される。
ここで、同図のバッファステータスでは、0〜7の数字が直線的に描かれているが、バッファメモリのアドレスADD0〜ADD7が繰り返し選択されるように、数字「0」と「7」は、互いに隣接しているものと考える。従って、リードポインタの位置「0」から最も離れた位置は、「3」又は「4」になる。
このバッファステータスにおいて、第一に、「エクストラシンボルの補完 (Replicate Extra Symbol)」を行った場合には、ライトポインタのインクリメントが+2となる。
これは、書き込みが読み出しに追い付く方向、つまり、ライトポインタとリードポインタとの関係がオーバーフローとなる方向にライトポインタが移動することを意味する。同図のバッファステータス上では、ライトポインタは、「5」に移動する。
第二に、「エクストラシンボルの削除 (Removing Extra Symbol)」を行った場合には、ライトポインタのインクリメントが1クロック分停止される。
これは、読み出しが書き込みに追い付く方向、つまり、ライトポインタとリードポインタとの関係がアンダーフローとなる方向にライトポインタが移動することを意味する。同図のバッファステータス上では、ライトポインタは、「3」に移動する。
本発明の例では、図21のスキュ調整バッファ20−iの動作を破錠させないようにするため、タイミング調整時において、バッファステータスに基づいて、スキュ調整バッファ20−iの処理を決定する。
例えば、バッファステータス上におけるライトポインタの位置をPwとし、バッファステータス上におけるリードポインタの位置をPrとした場合には、Pw−Prが4以上のときは、「エクストラシンボルの削除 (Removing Extra Symbol)」を行う。また、Pw−Prが4未満のときは、「エクストラシンボルの補完 (Replicate Extra Symbol)」を行う。
次に、バッファステータスの具体的動作について説明する。
図23は、本発明の例に関わるスキュ調整回路を示している。
バッファステータス21−i(i=0,1,2,3)は、各スキュ調整バッファ20−i内に設けられている。
同図は、バッファステータスの初期状態の様子を表している。
通常、スキュ調整回路の前段に配置されるエラスティックバッファは、所定の法則に従って、エラスティック処理(エクストラシンボルの削除/補完)を行う。
例えば、図17に示すように、1回目の同期化処理で、データ伝送路0,3に対応するエラスティックバッファが「エクストラシンボルの削除」を行ったとすると、図18に示すように、2回目の同期化処理では、データ伝送路1,2に対応するエラスティックバッファが「エクストラシンボルの削除」を行う。
つまり、この場合、2度の同期化処理が完了した時点では、全てのデータ伝送路0,1,2,3に対応するエラスティックバッファが「エクストラシンボルの削除」を行ったことになる。
このような事情を鑑みて、スキュ調整バッファ20−iは、全てのスキュ調整バッファ20−iのバッファステータス21−iの状態が同じになったときに、次にそのスキュ調整バッファ20−iが行う処理の内容を決定する。
例えば、図17に示すように、1回目のタイミング調整で、スキュ調整回路20が、データ伝送路1,2からのデータ例に対して「エクストラシンボルの削除」を行ったとすると(図17(a))、図18に示すように、2回目のタイミング調整では、スキュ調整回路20は、データ伝送路0,3からのデータ例に対して「エクストラシンボルの削除」を行う(図18(a))。
この時、全てのバッファステータス21−iは、同じ状態(ライトポインタとリードポインタの位置関係が同じ状態)になる。
従って、図24のフローチャートに示すように、スキュ調整バッファ20−iは、バッファステータス21−iに基づいて、自らが次に行う処理の内容、即ち、「エクストラシンボルの削除」を行うのか、又は、「エクストラシンボルの補完」を行うのかを決定する。
このようにすれば、タイミング調整時に、その都度、次の処理を判断する必要がなくなるため、制御方法が簡単になる。
即ち、エラスティックバッファでの処理が規則的であるにもかかわらず、エクストラシンボルを検出する度に、バッファステータスを変えていたのでは、バッファステータスが、信号経路ごとに、ばらばらに動くことにもなり兼ねない。
本発明の例によれば、各信号経路のバッファステータスは、それぞれ関連をもって動くため、制御方法が容易になる。
以下、具体例について説明する。
まず、図23の初期状態において、スキュ調整回路20に、図17に示すようなデータ列が入力される場合を考える。
この場合、図24の条件に従うと、スキュ調整回路20では、データ伝送路1,2からのデータ例に対しては、「エクストラシンボルの削除」を行う(図17(a))。この時、図25に示すように、データ伝送路1,2に対応するバッファステータス21−1,21−2では、ライトポインタの位置Pwが「4」から「3」に移動する。
この後、スキュ調整回路20には、図18に示すようなデータ列が入力される。
この場合、図24の条件に従うと、全てのバッファステータス21−0,21−1,21−2,21−3で、ライトポインタとリードポインタの相対位置関係が同じでないため、スキュ調整回路20は、必然的に、データ伝送路0,3からのデータ例に対して「エクストラシンボルの削除」を行う(図18(a))。
この時、図26に示すように、データ伝送路0,3に対応するバッファステータス21−0,21−3では、ライトポインタの位置Pwが「4」から「3」に移動する。
この段階で、図27に示すように、全てのバッファステータス21−0,21−1,21−2,21−3の状態が同じ、即ち、ライトポインタとリードポインタの相対位置関係が同じになる。
次に、この後、スキュ調整回路20に、図17に示すようなデータ列が入力された場合について考える。
この場合、図24の条件に従うと、スキュ調整回路20では、データ伝送路0,3からのデータ例に対しては、「エクストラシンボルの補完」を行う(図17(b))。この時、図28に示すように、データ伝送路0,3に対応するバッファステータス21−0,21−3では、ライトポインタの位置Pwが「3」から「4」に移動する。
この後、スキュ調整回路20には、図18に示すようなデータ列が入力される。
この場合、図24の条件に従うと、全てのバッファステータス21−0,21−1,21−2,21−3で、ライトポインタとリードポインタの相対位置関係が同じでないため、スキュ調整回路20は、必然的に、データ伝送路1,2からのデータ例に対して「エクストラシンボルの補完」を行う(図18(b))。
この時、図29に示すように、データ伝送路1,2のバッファステータスでは、ライトポインタの位置Pwが「3」から「4」に移動する。
このように、本発明の例では、バッファステータスの状態が、Pw−Pr≧4であるときには、「エクストラシンボルの削除 (Removing Extra Symbol)」を行い、バッファステータスの状態を、オーバーフローから遠ざかる方向(アンダーフローに近づく方向)に変える。また、バッファステータスの状態が、Pw−Pr<4であるときには、「エクストラシンボルの補完 (Replicate Extra Symbol)」を行い、バッファステータスの状態を、アンダーフローから遠ざかる方向(オーバーフローに近づく方向)に変える。
このような処理により、スキュ調整回路20内のスキュ調整バッファ20−iの動作の破錠を回避する。
なお、図21乃至図29において説明したアドレスポインタの制御方法又はバッファステータスの制御方法は、スキュ調整回路を構成するスキュ調整バッファに限られることなく、例えば、スキュ調整回路の前段に配置されるエラスティックバッファについても適用可能である。
以上、本発明の例によれば、複数のデータ伝送路を持つシリアル通信方式において、複数のデータ伝送路に対応する複数の信号経路に対し、信号経路ごとに、エラスティックバッファによる同期化を行った場合に、複数の信号経路間にデータ列のタイミングのずれ(スキュ)が発生したとしても、これを容易に解消することができる。
また、本発明の例に関わるシリアル通信方式は、データ伝送路の数の増減に対しても、これに容易に対応することができる。本発明の例の対象となる半導体集積回路は、ロジックIC、メモリ混載ロジックIC、メモリIC、システムICなど、様々なICに適用可能である。バッファ構成に関しては、例えば、メモリセルアレイを使用したダブルバッファ構成に対しても、本発明の例を適用できる。
本発明の例では、エラスティックバッファの構成、エラスティックバッファによる同期化処理、半導体集積回路IC1からIC2へのデータ通信方式などに関しては、特に、上述の実施の形態に限定されることはない。
本発明の例は、上述の形態に限定されるものではなく、その要旨を逸脱しない範囲で、構成要素を変形して具体化できる。また、上述の形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を構成できる。例えば、上述の形態に開示される全構成要素から幾つかの構成要素を削除してもよいし、異なる形態の構成要素を適宜組み合わせてもよい。
本発明の例に関わるシリアルデータ通信方式は、特に、複数伝送路を有し、各伝送路に、データ通信のタイミング調整を図るためのエラスティックバッファ(Elastic Buffer)が接続された半導体集積回路に有効である。
本発明の例に関わる複数のデータ伝送路を持つ通信システムを示す図。 エラスティックバッファの例を示す図。 図2のバッファ内のライトコントロール回路を示す図。 図2のバッファ内のリードコントロール回路を示す図。 スキュ調整バッファの例を示す図。 図5のバッファ内のライトコントロール回路を示す図。 図5のバッファ内のリードコントロール回路を示す図。 エラスティックバッファの動作の概要を示す図。 スキュ調整回路の動作の概要を示す図。 スキュ調整回路の動作の概要を示す図。 エラスティックバッファの動作の概要を示す図。 スキュ調整回路の動作の概要を示す図。 スキュ調整回路の動作の概要を示す図。 ライトコントロール回路内のライトポインタの動作の概要を示す図。 エクストラシンボルの削除を行うときの信号波形を示す波形図。 エクストラシンボルの補完を行うときの信号波形を示す波形図。 エクストラシンボルの削除/補完を選択できる様子を示す図。 エクストラシンボルの削除/補完を選択できる様子を示す図。 エクストラシンボルの削除/補完を選択できる様子を示す図。 エクストラシンボルの削除/補完を選択できる様子を示す図。 ライトポインタとリードポインタの動作の概要を示す図。 ライトポインタとリードポインタとの相対位置関係(バッファステータス)を示す図。 バッファステータスの初期状態を示す図。 バッファステータスの状態を決定するフローチャートを示す図。 図17のエクストラシンボル削除後のバッファステータスを示す図。 図18のエクストラシンボル削除後のバッファステータスを示す図。 全てのバッファステータスの状態が同じになった様子を示す図。 図17のエクストラシンボル補完後のバッファステータスを示す図。 図18のエクストラシンボル補完後のバッファステータスを示す図。 単一データ伝送路を持つ従来の通信システムを示す図。 従来のエラスティックバッファの例を示す図。 従来のエラスティックバッファの動作を示す図。 従来のエラスティックバッファの動作を示す図。 従来のエラスティックバッファの動作を示す図。 複数のデータ伝送路を持つ従来の通信システムを示す図。 図35のエラスティックバッファの動作を示す図。
符号の説明
11,11−0,11−1,11−2,11−3: 出力制御回路、 12,12−0,12−1,12−2,12−3: 復元回路、 13,13−0,13−1,13−2,13−3: エラスティックバッファ、 14: ロジック回路、 15,16: PLL (Phase Locked Loop) 回路、 17,17A,17B: ライトコントロール回路、 18,18A,18B: バッファメモリ、 19,19A,19B: リードコントロール回路、 20: スキュ調整回路、 20−0,20−1,20−2,20−3: スキュ調整バッファ、 21−0,21−1,21−2,21−3: バッファステータス、 IC1,IC2: 半導体集積回路。

Claims (5)

  1. 複数のデータ伝送路を持つシリアル通信システムに用いられる半導体集積回路において、ロジック回路と、前記複数のデータ伝送路に対応して設けられ、前記ロジック回路にデータを転送するための複数の信号経路と、1つの信号経路に1つ設けられ、信号経路ごとにエクストラシンボルの削除/補完という処理により同期化を図る複数のエラスティックバッファと、前記複数の信号経路間に生じるデータ列のスキュを前記エクストラシンボルの削除/補完という処理により解消するスキュ調整回路とを具備することを特徴とする半導体集積回路。
  2. 前記スキュ調整回路は、前記複数の信号経路に対応して設けられる複数のスキュ調整バッファから構成され、前記複数のスキュ調整バッファは、信号経路ごとに前記エクストラシンボルの削除/補完という処理を行うことを特徴とする請求項1に記載の半導体集積回路。
  3. 前記複数のエラスティックバッファの各々は、自らが行った処理の内容を表す制御信号を出力し、前記制御信号は、前記複数のスキュ調整バッファの各々に入力されることを特徴とする請求項2に記載の半導体集積回路。
  4. 前記複数のスキュ調整バッファの各々は、前記ライトアドレスと前記リードアドレスとの位置関係を表すバッファステータスを有し、前記制御信号及び前記バッファステータスに基づいて、自らが行う処理の内容を決定することを特徴とする請求項3に記載の半導体集積回路。
  5. 複数のデータ伝送路によるシリアル通信方式により互いに接続される第1のICと第2のICとを具備し、前記第2のICは、
    ロジック回路と、
    前記複数のデータ伝送路に対応して設けられ、前記ロジック回路にデータを転送するための複数の信号経路と、
    1つの信号経路に1つ設けられ、信号経路ごとにエクストラシンボルの削除/補完という処理により同期化を図る複数のエラスティックバッファと、
    前記複数の信号経路間に生じるデータ列のスキュを前記エクストラシンボルの削除/補完という処理により解消するスキュ調整回路とを有する
    ことを特徴とするシリアル通信システム。
JP2003393036A 2003-11-21 2003-11-21 複数のデータ伝送路を持つシリアルデータ通信方式 Expired - Fee Related JP3808863B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003393036A JP3808863B2 (ja) 2003-11-21 2003-11-21 複数のデータ伝送路を持つシリアルデータ通信方式
US10/769,087 US7193429B2 (en) 2003-11-21 2004-01-29 Serial data communication system having plurality of data transmission paths

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003393036A JP3808863B2 (ja) 2003-11-21 2003-11-21 複数のデータ伝送路を持つシリアルデータ通信方式

Publications (2)

Publication Number Publication Date
JP2005159578A JP2005159578A (ja) 2005-06-16
JP3808863B2 true JP3808863B2 (ja) 2006-08-16

Family

ID=34587542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003393036A Expired - Fee Related JP3808863B2 (ja) 2003-11-21 2003-11-21 複数のデータ伝送路を持つシリアルデータ通信方式

Country Status (2)

Country Link
US (1) US7193429B2 (ja)
JP (1) JP3808863B2 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060146967A1 (en) * 2004-12-31 2006-07-06 Adarsh Panikkar Keep-out asynchronous clock alignment scheme
US7346795B2 (en) * 2004-12-31 2008-03-18 Intel Corporation Delaying lanes in order to align all lanes crossing between two clock domains
US8452929B2 (en) * 2005-04-21 2013-05-28 Violin Memory Inc. Method and system for storage of data in non-volatile media
EP2383657A1 (en) * 2005-04-21 2011-11-02 Violin Memory, Inc. Interconnetion system
US9582449B2 (en) 2005-04-21 2017-02-28 Violin Memory, Inc. Interconnection system
US9286198B2 (en) 2005-04-21 2016-03-15 Violin Memory Method and system for storage of data in non-volatile media
US8112655B2 (en) * 2005-04-21 2012-02-07 Violin Memory, Inc. Mesosynchronous data bus apparatus and method of data transmission
US9384818B2 (en) 2005-04-21 2016-07-05 Violin Memory Memory power management
JP4643359B2 (ja) * 2005-05-17 2011-03-02 株式会社東芝 受信装置
US8194662B2 (en) * 2006-06-08 2012-06-05 Ilnickl Slawomir K Inspection of data
US8028186B2 (en) * 2006-10-23 2011-09-27 Violin Memory, Inc. Skew management in an interconnection system
JP5544896B2 (ja) 2010-01-22 2014-07-09 富士通株式会社 受信回路、情報処理装置、およびバッファ制御方法
US9282046B1 (en) * 2012-11-15 2016-03-08 Qlogic, Corporation Smoothing FIFO and methods thereof
JP6477155B2 (ja) * 2015-03-31 2019-03-06 株式会社デンソー ストリーム処理装置
JP6531513B2 (ja) * 2015-06-22 2019-06-19 株式会社リコー シリアル通信装置及びシリアル通信方法
US10033655B2 (en) * 2015-09-04 2018-07-24 Arris Enterprises Llc Packet prioritization based on client device feedback

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5185863A (en) * 1989-12-01 1993-02-09 National Semiconductor Corporation Byte-wide elasticity buffer
US5323426A (en) * 1992-02-21 1994-06-21 Apple Computer, Inc. Elasticity buffer for data/clock synchronization
AU6310098A (en) * 1998-03-12 1999-09-27 Hitachi Limited Data transmitter
US6466589B1 (en) * 1998-10-19 2002-10-15 Chin-Shen Chou Apparatus for verifying data integrity and synchronizing ATM cell data format for processing
US7054331B1 (en) * 2000-09-13 2006-05-30 Intel Corporation Multi-lane receiver de-skewing
US6536025B2 (en) * 2001-05-14 2003-03-18 Intel Corporation Receiver deskewing of multiple source synchronous bits from a parallel bus

Also Published As

Publication number Publication date
JP2005159578A (ja) 2005-06-16
US20050111604A1 (en) 2005-05-26
US7193429B2 (en) 2007-03-20

Similar Documents

Publication Publication Date Title
JP3808863B2 (ja) 複数のデータ伝送路を持つシリアルデータ通信方式
JP3565600B2 (ja) データ通信装置およびデータ通信方法
US11953934B2 (en) Memory system using asymmetric source-synchronous clocking
JP4643359B2 (ja) 受信装置
US7802123B2 (en) Data processing apparatus and method using FIFO device
US7739538B2 (en) Double data rate chaining for synchronous DDR interfaces
US7783911B2 (en) Programmable bus driver launch delay/cycle delay to reduce elastic interface elasticity requirements
KR100910852B1 (ko) 반도체 메모리 소자
US8898503B2 (en) Low latency data transfer between clock domains operated in various synchronization modes
JP5544896B2 (ja) 受信回路、情報処理装置、およびバッファ制御方法
JP6325672B2 (ja) 双方向通信方法及び装置
CN112052203B (zh) 半导体装置、半导体系统和操作半导体装置的方法
US20050008110A1 (en) System and method for data phase realignment
US7350092B2 (en) Data synchronization arrangement
US6952789B1 (en) System and method for synchronizing a selected master circuit with a slave circuit by receiving and forwarding a control signal between the circuits and operating the circuits based on their received control signal
JP3870942B2 (ja) データ伝送システム及びデータ伝送装置
US6640277B1 (en) Input staging logic for latching source synchronous data
KR102173881B1 (ko) 스큐 제거 동작을 수행하는 반도체 장치
US10873441B2 (en) Method for synchronizing digital data sent in series
US20070300096A1 (en) Late Data Launch for a Double Data Rate Elastic Interface
JP7419944B2 (ja) 半導体装置及び同期化方法
JP2007241614A (ja) スキュー調整回路
KR19980026230A (ko) Atm에서 유토피아 동기소자와 논-유토피아 비동기소자의 접속 제어 로직
JPS6331244A (ja) ル−プ伝送装置
JP2006115403A (ja) インターフェイス回路

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050913

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051114

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060518

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

Free format text: PAYMENT UNTIL: 20090526

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100526

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110526

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110526

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120526

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120526

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130526

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130526

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140526

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees