JP2018050264A - データ処理回路およびデータ伝送システム - Google Patents
データ処理回路およびデータ伝送システム Download PDFInfo
- Publication number
- JP2018050264A JP2018050264A JP2016186139A JP2016186139A JP2018050264A JP 2018050264 A JP2018050264 A JP 2018050264A JP 2016186139 A JP2016186139 A JP 2016186139A JP 2016186139 A JP2016186139 A JP 2016186139A JP 2018050264 A JP2018050264 A JP 2018050264A
- Authority
- JP
- Japan
- Prior art keywords
- data
- phase
- pwm signal
- edge
- clock
- 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.)
- Pending
Links
Images
Landscapes
- Dc Digital Transmission (AREA)
Abstract
【課題】データ伝送システムにおいて、伝送速度と消費電力とのトレードオフ関係を緩和する。【解決手段】データ処理回路は、データを前処理する前処理手段と、前処理されたデータに応じてパルス幅変調されたPWM信号を生成する生成手段と、を備える。前処理手段は、データに応じて生成されるPWM信号におけるエッジの位相の時間的平均が一定となるよう、当該データを前処理する。【選択図】図1
Description
本発明は、データ処理回路およびデータ伝送システムに関する。
近年のLSI技術の進歩に伴い、チップ内、チップ間のデータ伝送の重要性が高まっている。これに伴い、データ伝送には、伝送速度の高速化並びに伝送回路の低消費電力化および小面積化が求められている。このような背景の中で、シリアル伝送技術は、データの伝送を少ないピン数および伝送路で実現する伝送技術であることから、特に伝送回路の小面積化に有利な伝送技術として注目を集めている。
シリアル伝送技術の例として、クロックデータリカバリ回路(CDR回路)を用いたクロックエンベデッド伝送やPWM変調(Pulse Width Modulation、パルス幅変調)を用いたクロックエッジ変調などがある。クロックエンベデッド伝送は、受信側のCDR回路を用いてデータからクロックを再生することでシリアルにデータを伝送する技術である。しかしながら、CDR回路で再生されたクロックは、データの位相に同期するため、伝送路の品質やノイズの影響を受けやすい。その結果、そのようにして再生されたクロックは水晶発振器で生成されるクロックに比べて大きなジッタを生じうるという課題がある。
一方で、クロックエッジ変調は、立ち上がりエッジの位相を固定して立ち下がりエッジの位相にデータを重畳する伝送方式である。クロックエッジ変調におけるクロックは、受信側のPLL(Phase Locked Loop、位相同期回路)でデータの立ち上がりエッジを用いて再生される。そのため、PLLでクロックを再生する場合、CDR回路を用いてクロックを再生する場合に比べてジッタを小さくできる。この利点から、クロックエッジ変調は、シリアルにデータとジッタの小さいクロックとを伝送できる通信技術として注目を集めている。クロックエッジ変調の消費電力を削減する手法として特許文献1が提案されている。
特許文献1では、低電力でPWM伝送を行うシリアル伝送方式に関する技術が開示されている。この技術は、伝送するPWM信号のデータにパルス幅の異なるコントロール信号を含めることで、出力のDC電圧を一定に保つ伝送技術である。これにより特許文献1では、送信側の出力ドライバはAC結合の構成をとることができる。加えて、送信側の出力ドライバは電流出力型ではなく、電圧出力型の構成をとることができる。そして、出力ドライバの出力電圧を小振幅に構成することで消費電力を削減することができる。
しかしながら、LVCMOS(Low Voltage CMOS)伝送のようなエッジ数が消費電力と比例関係にある通信システムにおいて、クロックエッジ変調には以下の課題がある。すなわち、エッジあたりの位相の分割数(ビット数)を増やすと、ビット当たりの消費電力が下がる一方で、伝送速度が下がってしまう。具体的には、クロックエッジ変調は、立ち上がりエッジまたは立ち下がりエッジのいずれか一方の位相を固定して他方の位相にデータを重畳する。このとき、ひとつのサイクルに重畳するデータのビット数をNとすると、ビット当たりの消費電力は1/2N+1に比例する。一方で、伝送速度はN/2N+1になるため伝送速度が下がる。このように、クロックエッジ変調を用いた伝送では、消費電力と伝送速度とはトレードオフの関係にある。
本発明はこうした課題に鑑みてなされたものであり、その目的は、データ伝送システムにおいて、伝送速度と消費電力とのトレードオフ関係を緩和することができる技術の提供にある。
本発明のある態様はデータ処理回路に関する。このデータ処理回路は、データを前処理する前処理手段と、前処理されたデータに応じてパルス幅変調されたPWM信号を生成する生成手段と、を備える。前処理手段は、データに応じて生成されるPWM信号におけるエッジの位相の時間的平均が一定となるよう、当該データを前処理する。
本発明の別の態様もまたデータ処理回路である。このデータ処理回路は、エッジの位相の時間的平均が一定となるよう前処理されたデータに応じてパルス幅変調されたPWM信号から、エッジの位相の当該時間的平均に同期するクロック信号を生成するクロック生成手段と、生成されたクロック信号を用いてPWM信号を復調し、復調データを取得する復調手段と、復調データに対して前処理の逆の処理を行う処理手段と、を備える。
本発明によれば、データ伝送システムにおいて、伝送速度と消費電力とのトレードオフ関係を緩和することができる。
以下、図面を参照して本発明の実施の形態を説明する。ただし、本発明の実施の形態は以下の実施の形態に限定されるものではない。各図面に示される同一または同等の構成要素、部材、処理、信号には、同一の符号を付するものとし、適宜重複した説明は省略する。また、各図面において説明上重要ではない部材の一部は省略して表示する。
(第1の実施の形態)
図1は、第1の実施の形態に係るPWMを用いたシリアルデータ伝送システム10の構成例を示す図である。シリアルデータ伝送システム10は、送信回路100と、受信回路101と、を備える。送信回路100、受信回路101はいずれもデータを処理するデータ処理回路である。送信回路100は、PWMエンコーダ102と、前処理部106と、を含む。受信回路101は、PWMデコーダ103と、クロック生成回路104と、後処理部107と、を含む。送信回路100は、外部から送信データS110と送信側クロックS111とを受信または取得し、PWM信号S105をシリアル伝送路109に出力する。シリアル伝送路109は所定のシリアル伝送方式にしたがい送信回路100と受信回路101とを接続するよう構成される。シリアル伝送方式は、データとクロックとをシリアルに伝送する方式である。受信回路101は、シリアル伝送路109からPWM信号S105を受信し、受信データS120と再生クロックS121とを外部に出力する。
図1は、第1の実施の形態に係るPWMを用いたシリアルデータ伝送システム10の構成例を示す図である。シリアルデータ伝送システム10は、送信回路100と、受信回路101と、を備える。送信回路100、受信回路101はいずれもデータを処理するデータ処理回路である。送信回路100は、PWMエンコーダ102と、前処理部106と、を含む。受信回路101は、PWMデコーダ103と、クロック生成回路104と、後処理部107と、を含む。送信回路100は、外部から送信データS110と送信側クロックS111とを受信または取得し、PWM信号S105をシリアル伝送路109に出力する。シリアル伝送路109は所定のシリアル伝送方式にしたがい送信回路100と受信回路101とを接続するよう構成される。シリアル伝送方式は、データとクロックとをシリアルに伝送する方式である。受信回路101は、シリアル伝送路109からPWM信号S105を受信し、受信データS120と再生クロックS121とを外部に出力する。
PWM信号S105には、立ち上がりエッジおよび立ち下がりエッジの両方の位相にデータが重畳されている。加えて、PWM信号S105は、エッジの位相の時間的平均が一定となるように変調される。
図2は、図1の送信回路100の回路構成の一例を示す図である。前処理部106は、送信データS110を取得し、取得された送信データS110を前処理して前処理済みデータS220を生成し、PWMエンコーダ102に出力する。前処理部106は、送信データS110に応じてPWMエンコーダ102で生成されるPWM信号S105におけるエッジの位相の時間的平均が一定となるよう、送信データS110を変換して出力する。
PWMエンコーダ102は、前処理部106から前処理済みデータS220を取得し、取得された前処理済みデータS220に応じてパルス幅変調されたPWM信号S105を生成し、シリアル伝送路109に出力する。PWMエンコーダ102は、PWM部200と、送信ドライバ201と、を含む。PWM部200は、前処理済みデータS220を取得して、PWM変換信号S210を送信ドライバ201へ出力する。送信ドライバ201は、PWM変換信号S210を取得して、PWM信号S105をシリアル伝送路109に出力する。なお、本実施の形態の送信ドライバ201はシングル出力形式であるが、他の実施の形態では差動出力形式のドライバが用いられてもよい。なお、送信ドライバ201は、例えばLVCMOS伝送のようなエッジ数に応じて消費電力が増加する電圧出力形式のドライバを用いてもよい。
以下に、本実施の形態の前処理部106のエンコード方法を説明する。
図3(a)〜(f)は、前処理部106のエンコード方法を説明するための図である。前処理部106は、PWM信号S105のエッジの位相の時間的平均を一定とするための変換を行う。この変換を図3(a)から図3(c)を用いて説明する。図3(a)および図3(b)は、立ち上がりエッジの位相を固定して立ち下がりエッジの位相にそれぞれ1ビットのデータ「0」、「1」を重畳させた場合のPWM信号S105を示す。PWM周期をTとする。図3(a)のデータ「0」を表すPWM信号S105の一周期では、信号のレベルは時刻0から時刻T/3の期間はHigh、時刻T/3から時刻Tまでの期間はLowとなる。同様に、図3(b)のデータ「1」を表すPWM信号S105の一周期では、信号のレベルは時刻0から時刻2T/3の期間はHigh、時刻2T/3から時刻Tまでの期間はLowとなる。
図3(a)〜(f)は、前処理部106のエンコード方法を説明するための図である。前処理部106は、PWM信号S105のエッジの位相の時間的平均を一定とするための変換を行う。この変換を図3(a)から図3(c)を用いて説明する。図3(a)および図3(b)は、立ち上がりエッジの位相を固定して立ち下がりエッジの位相にそれぞれ1ビットのデータ「0」、「1」を重畳させた場合のPWM信号S105を示す。PWM周期をTとする。図3(a)のデータ「0」を表すPWM信号S105の一周期では、信号のレベルは時刻0から時刻T/3の期間はHigh、時刻T/3から時刻Tまでの期間はLowとなる。同様に、図3(b)のデータ「1」を表すPWM信号S105の一周期では、信号のレベルは時刻0から時刻2T/3の期間はHigh、時刻2T/3から時刻Tまでの期間はLowとなる。
図3(c)は、前処理としての位相平均化処理を施した10ビット分のPWM信号S105の波形の例を示す。図3(c)に示されるPWM信号S105は、図3(a)および図3(b)のPWM波形に従い、各立ち下がりエッジに10ビットのデータ「1001110100」を重畳した波形を有する。実線は、各立ち下がりエッジにデータを重畳させた場合の波形を示す。破線は、各立ち下がりエッジで選択されなかったデータを重畳させた場合のエッジの波形を示す。具体的にはデータ「1」を重畳する場合、実線と破線の関係は図3(b)に示される通りとなる。
図3(c)に示される平均波形300は、上記のPWM信号S105の10ビット分(10周期分)の波形をPWM周期Tで重ねて、データの重畳されている立ち下がりエッジの位相の時間平均をとった場合の波形である。このように、PWM信号S105の一周期分の波形を重ね合わせて、立ち上がり/立ち下がりエッジの位相の時間平均をとることにより得られる平均値が、立ち上がり/立ち下がりエッジの位相の時間的平均である。前処理部106では、この時間的平均が一定となるように送信データS110を前処理する。
具体的に図3(c)を用いて説明すると、PWM信号S105には10ビットのデータ「1001110100」が重畳されており、「0」と「1」の頻度が共に5回ずつである。このとき、立ち下がりエッジの位相の時間的平均は「0」に対応するT/3と「1」に対応する2T/3との中間の位相となる。このように、前処理部106は、エッジの位相の時間的平均が一定(=T/2)となるように信号を変換する。なお、図3(c)では、PWM信号S105のエッジの位相の時間的平均をとる期間を10Tとする例を示しているが、この期間は10Tに限られない。
以下、図3(d)、図3(e)、図3(f)を用いて、本実施の形態の前処理部106のエンコード方法をより詳細に説明する。図3(d)は、上述の時間的平均が一定となる変換の一例である8b/10b変換における真理値表を示す。「RD」はランニングディスパリティである。前処理部106は、送信データS110を8ビット取得し、変換後の10ビットの前処理済みデータS220を出力する。以下の説明では、送信データS110を入力、前処理済みデータS220を出力として説明する。
8b/10b変換は、8ビットの入力をデータのシンボルに割り当てることでデータを管理する。また、8b/10b変換は、ひとつ前のシンボルの情報をランニングディスパリティ(Running Disparity、以下、RDと称す)として保持しておき、現在のシンボルの変換においてひとつ前のシンボルのRDの状態によりエンコード結果を選択する。RDの状態はcurrentRD−とcurrentRD+の二つの状態があり、エンコード結果は、RDがcurrentRD−のときと、currentRD+のときとで異なる。具体的には、入力8ビットが「00h」の場合、ひとつ前のシンボルのRDがcurrentRD−のときに出力は「1001110100」、currentRD+のときに出力は「0110001011」となる。8b/10b変換自体は公知の技術であるから、さらなる詳細の説明は省略する。
なお、以下では、10ビットで「0」と「1」の頻度が同じとなる変換の例を示すが、図3(d)に示される通り8b/10b変換のすべてのシンボルに対して10ビットで「0」と「1」の頻度が同じとなるわけではない。しかしながら、8b/10b変換は、10ビットに対して十分に長いビット数で見ると「0」と「1」の頻度が同じとなるような変換であるから、エッジの位相の時間的平均は一定となる。
図3(e)、図3(f)は、入力信号を2ビットに並列化して位相平均化処理を行い、PWM信号の各エッジに2ビットずつデータを重畳する場合の例を示す。図3(e)は、入力信号を2並列の信号(4進数)に変換し、後に位相平均化処理を行う方法を説明する。図3(e)は、入力の16ビットを8ビットの上位ビット列と下位ビット列とに2並列化して位相平均化処理を行った場合の変換例を示す。特に、前処理部106は位相平均化処理として8b/10b変換処理を用い、RDは、currentRD−の状態とした場合の変換例が示される。出力は2ビット並列信号(4進数)の10列分で20ビットの出力となる。
具体的には、入力の上位ビット列を「00h」、下位ビット列を「01h」とした場合、それぞれの8b/10b変換後の出力は、2進数で表すとそれぞれ「1001110100」と「0111010100」となる。これらの結果を4進数で表記すると、出力は、上位ビット列を2倍して下位ビット列と加算して「2113230300」となる。
上記の例では、前処理部106は、複数ビットの並列出力を行うために、入力を複数のビット列に並列化して、それぞれの並列信号に対して8b/10b変換を行う。それぞれの並列信号の8b/10b変換により、後に示すPWM信号への変換においてエッジの位相の時間的平均が一定となる。
なお、上記の複数のビット列への並列化処理を行う背景は、単純に8b/10b変換を行ったデータを2ビットずつPWM信号のエッジに重畳した場合には位相の時間的平均が一定とならない場合があるからである。
なお、本実施の形態では入力を上位ビット列と下位ビット列の2つに分割して、出力を2ビット信号(4進数)で出力する方法を示したが、分割するビット数と出力の並列化のビット数とはいずれも2ビットに限定されない。
なお、前処理部106は、送信データS110を複数のセグメント(例えば、上位ビット列および下位ビット列)に並列化してもよい。この場合、前処理部106は、各セグメントを前処理してもよい。この前処理は、前処理されたセグメントに応じてPWMエンコーダ102でパルス幅変調される信号におけるエッジの位相の時間的平均を一定とする処理であってもよい。前処理部106が出力する前処理済みデータS220は、前処理された各セグメントのビットと、前処理された他のセグメントの対応するビットと、を組み合わせることで生成される、複数のビット(例えば、2ビット)を単位とするデータであってもよい。
前処理部106の出力である前処理済みデータS220は、図2に示されるようにPWMエンコーダ102に入力される。PWMエンコーダ102はPWM信号S105を出力する。図3(f)は、前処理済みデータS220を「2113230300」としたときの、PWMエンコーダ102で生成されるパルス幅変調されたPWM信号S105を示す。PWM信号S105では、立ち上がりエッジおよび立ち下がりエッジの位相にそれぞれ2ビットずつデータが重畳される。重畳されるデータは前処理済みデータS220の4進数のデータ「2113230300」である。平均波形300は、図3(f)のPWM信号S105をT/2周期を一単位として分割し、分割により得られる10単位波形を重ね合わせ、立ち上がりエッジおよび立ち下がりエッジのそれぞれの位相の時間平均をとった場合の波形である。このとき、立ち下がりエッジの位相の時間的平均は「1」に対応するT/8と「2」に対応するT/4との中間の位相となる。
ところで、本実施の形態の前処理部106は、8b/10b変換を用いて位相の時間的平均が一定となるようにデータを変換する。8b/10b変換によると、8ビットの入力を10ビットに拡張することで「0」と「1」の発生頻度が一定となるようにデータを変換することができる。本実施の形態の例では、前処理済みデータS220について、上位ビット列の「1001110100」の平均が0.5、下位ビット列の「0111010100」の平均が0.5である。そのため、上位ビット列に2倍の重み付けをして下位ビット列に加算することにより得られる4進数データ「2113230300」の平均は「1.5」となる。この4進数データ「2113230300」をPWM信号S105に変換することで、PWM信号S105のエッジの位相の時間的平均は、図3(f)に示される通り、データ「1」のエッジの位相とデータ「2」のエッジの位相の中心の位相と一致する。
なお、本実施の形態では8b/10b変換を用いる例を示したが、64b/66b変換や128b/130b変換など、一定期間においてPWM信号S105のエッジの位相の時間的平均が一定となる他の変換方式を用いてもよい。すなわち、前処理部106における前処理は、送信データS110に含まれるKビット(Kは2以上の自然数)のデータを、値の出現頻度が一定となるLビット(LはKより大きな自然数)のデータに変換する処理を含んでもよい。
なお、本実施の形態ではPWM信号S105の各エッジにデータを2ビットずつ重畳する例を示したが、これに限られず、各エッジに重畳するデータのビット数は2ビットに限られない。
なお、本実施の形態では立ち上がりエッジの位相の時間的平均と立ち下がりエッジの位相の時間的平均とが一定となりかつ一致する場合を説明したが、これに限られない。例えば前処理部106は、立ち上がりエッジの位相の時間的平均と立ち下がりエッジの位相の時間的平均とが異なるがいずれも一定となるよう送信データS110を変換してもよい。
図4(a)〜(d)は、PWM部200のエンコード方法を説明するための図である。図4(a)は、PWM部200の回路の構成例を示す図である。PWM部200は、エンコード部400と、シリアライザ401と、を含む。エンコード部400は、前処理済みデータS220を取得して変換し、エンコード出力信号S410[3:0]を出力する。シリアライザ401は、送信側クロックS111のタイミングに応じてエンコード出力信号S410[3:0]をシリアル信号に変換することで、PWM変換信号S210を生成し出力する。
図4(b)および図4(c)は、エンコード部400の動作を示す真理値表である。図4(b)は立ち上がりエッジの位相にデータを重畳させる場合に対応し、図4(c)は立ち下がりエッジの位相にデータを重畳させる場合に対応する。本実施の形態のエンコード部400は、2ビットの4進数表記のデータを入力[1:0]として、4ビットの出力[3:0]を生成する。ここで出力[3]はMSBを示し、出力[0]はLSBを示している。
以下、図4(b)を参照し、立ち上がりエッジの位相にデータを重畳する場合の変換を説明する。入力が4進数表記「0」のとき、出力[3:0]の4ビット([3],[2],[1],[0])はそれぞれ(1,1,1,1)となる。入力が4進数表記「1」のとき、出力[3:0]は(0,1,1,1)となる。同様に、入力が4進数表記「2」、「3」のとき、出力[3:0]はそれぞれ(0,0,1,1)、(0、0、0、1)となる。図4(c)を参照し、立ち下がりエッジの位相にデータを重畳させる場合の変換を説明する。入力が4進数表記「0」のとき、出力[3:0]の4ビット([3],[2],[1],[0])はそれぞれ(0,0,0,0)となる。同様に、入力が4進数表記「1」、「2」、「3」のとき、出力[3:0]はそれぞれ(1、0、0、0)、(1,1,0,0)、(1,1,1,0)となる。
図4(d)は、PWMエンコーダ102の動作を示すタイミングチャートである。横軸は時刻であり、PWM周期はTとする。図4(d)は、PWM信号S105の立ち上がりエッジの位相および立ち下がりエッジの位相にそれぞれ前処理済みデータS220の4進数表記「0」、「1」の信号を重畳させた場合の例を示す。
送信側クロックS111は、T/8の周期のクロック信号である。なお、送信側クロックS111の周期はT/8に限られず、PWM信号S105の位相の数やシリアライザ401の構成に応じて他の周期が用いられてもよい。PWM変換信号S210は、シリアライザ401がエンコード出力信号S410の4ビット([3],[2],[1],[0])のデータを送信側クロックS111に応じてMSBから順にシリアルに出力した結果得られる信号である。立ち上がりエッジの位相および立ち下がりエッジの位相はそれぞれ等間隔に並ぶ4つの位相のなかから選択される。したがって、隣接するエッジの位相の間隔はT/8となる。立ち上がりエッジでは、エンコード出力信号S410の4ビット([3],[2],[1],[0])は、それぞれT/16、3T/16、5T/16、7T/16の時刻に重畳する。立ち下がりエッジでは、エンコード出力信号S410の4ビット([3],[2],[1],[0])は、それぞれ9T/16、11T/16、13T/16,15T/16の時刻に重畳する。なお、受信側ではこれらの時刻(タイミング)でPWM信号S105をサンプリングすることで、エンコード出力信号S410を再構成することができる。
PWM変換信号S210は、上記のタイミングでデータが重畳されるため、エッジの位相はエンコード出力信号S410の4ビットに応じて遷移する。例えば、入力が4進数表記「0」のとき、エンコード出力信号S410は(1,1,1,1)となる。このとき、立ち上がりエッジは時刻0で立ち上がる。入力が4進数表記「1」のときはエンコード出力信号S410は(0,1,1,1)であり、立ち上がりエッジは、時刻2T/16で立ち上がる。エンコード出力信号S410が(0、0、1、1)、(0,0,0,1)のとき、立ち上がりエッジはそれぞれ時刻4T/16、時刻6T/16で立ち上がる。立ち下がりエッジについても同様である。すなわち、エンコード出力信号S410が(0、0、0、0)、(1、0、0、0)、(1,1,0,0)、(1,1,1,0)のとき、立ち下がりエッジはそれぞれ時刻8T/16、時刻10T/16、時刻12T/16、時刻14T/16で立ち下がる。
なお、PWM変換信号S210は、PWM信号S105と実質的に同じ波形を有する。これは、PWM変換信号S210とPWM信号S105とは、それぞれ図2の送信ドライバ201の入力、出力であり、送信ドライバ201は信号を変調するものではないためである。
以下に、図4(d)に示される波形を用いてPWM変換信号S210を説明する。
前処理済みデータS220が立ち上がりエッジについて4進数表記「0」、立ち下がりエッジについて4進数表記「1」のとき、エンコード出力信号S410の4ビット([3],[2],[1],[0])は、それぞれ(1、1、1、1)、(1、0、0、0)となる。このエンコード出力信号S410の4ビットをPWM変換信号S210のそれぞれの時刻に重畳させる。すると、PWM変換信号S210の立ち上がりエッジは時刻0で立ち上がり、時刻0から時刻4T/8までの期間でHighとなる。次に、PWM変換信号S210の立ち下がりエッジでは、エンコード出力信号S410の4ビット([3],[2],[1],[0])はそれぞれ(1,0,0,0)である。このとき、PWM変換信号S210は時刻4T/8から時刻10T/16までの期間でHigh、時刻10T/16から時刻Tまでの期間でLowとなる。上記のようにして、PWM部200は、PWM変換信号S210の立ち上がりのタイミングおよび立ち下がりのタイミングの位相にそれぞれ2ビットのバイナリデータ情報(「0」、「1」)を重畳する。
前処理済みデータS220が立ち上がりエッジについて4進数表記「0」、立ち下がりエッジについて4進数表記「1」のとき、エンコード出力信号S410の4ビット([3],[2],[1],[0])は、それぞれ(1、1、1、1)、(1、0、0、0)となる。このエンコード出力信号S410の4ビットをPWM変換信号S210のそれぞれの時刻に重畳させる。すると、PWM変換信号S210の立ち上がりエッジは時刻0で立ち上がり、時刻0から時刻4T/8までの期間でHighとなる。次に、PWM変換信号S210の立ち下がりエッジでは、エンコード出力信号S410の4ビット([3],[2],[1],[0])はそれぞれ(1,0,0,0)である。このとき、PWM変換信号S210は時刻4T/8から時刻10T/16までの期間でHigh、時刻10T/16から時刻Tまでの期間でLowとなる。上記のようにして、PWM部200は、PWM変換信号S210の立ち上がりのタイミングおよび立ち下がりのタイミングの位相にそれぞれ2ビットのバイナリデータ情報(「0」、「1」)を重畳する。
なお、本実施の形態では、PWM信号S105の立ち上がりエッジの位相および立ち下がりエッジの位相にそれぞれ2ビットずつデータを重畳させているが、重畳されるデータは2ビット以外の多値のデータであってもよい。
なお、本実施の形態では、立ち上がりエッジと立ち下がりエッジとに同じビット数のデータを重畳した例を示したが、これに限られず、立ち上がりエッジと立ち下がりエッジとで異なるビット数のデータを重畳してもよい。
なお、本実施の形態では、立ち上がりエッジと立ち下がりエッジとの位相関係が同じとなるようにPWM信号S105を割り当てたが、立ち上がりエッジと立ち下がりエッジとで割り当てを変えてもよい。
なお、本実施の形態では、PWM部200はシリアライザ401を含む例を示したが、これに限られず、一般的に用いられる多相クロックを用いた構成など位相にデータを重畳することでPWM波形を生成する回路が用いられてもよい。
図5は、図1の受信回路101の一例を示す図である。受信回路101は、PWM信号S105を受信し、受信データS120と再生クロックS121とを出力する。受信したPWM信号S105は、受信回路101の内部でPWMデコーダ103とクロック生成回路104とに供給される。
クロック生成回路104は、PWM信号S105を取得し、PWM信号S105のエッジの位相の時間的平均に同期するクロック信号である再生クロックS121を生成し、出力する。加えて、クロック生成回路104は、多相クロックS507を生成し出力する。多相クロックS507は、再生クロックS121と同期しており、かつそれぞれが同じ時間間隔の位相差を持つ複数のクロック信号からなる。
PWMデコーダ103は、PWM信号S105と多相クロックS507とを取得する。PWMデコーダ103は、取得された多相クロックS507を用いてPWM信号S105を復調し、復調データであるデコード出力S511を生成し、出力する。PWMデコーダ103は、多相クロックS507を用いてPWM信号S105をサンプリングする。多相クロックS507の第0相クロックφ0、第1相クロックφ1、第2相クロックφ2、第3相クロックφ3によりサンプリングされたデータをそれぞれサンプリングデータs0、s1、s2、s3と表記する。このサンプリングデータs0、s1、s2、s3を同じタイミングすなわち多相クロックS507の第0相クロックφ0のタイミングで保持したデータをそれぞれサンプリング出力so0、so1,so2、so3と表記する。
デコード部501は、サンプリング出力so0、so1,so2、so3を取得し、取得されたサンプリング出力に対して図4(b)や図4(c)に示される送信側のエンコードにおける真理値表に従う変換の逆の変換を行う。そして、デコード部501は、デコード結果をデコード出力S511として後処理部107に出力する。
後処理部107は、デコード出力S511を取得して、受信データS120を生成し出力する。後処理部107は、取得されたデコード出力S511に対して図3(d)に示される前処理における真理値表に従う前処理の逆の処理である後処理を行う。この後処理の結果である受信データS120は、送信側でエンコードされる送信データS110と同じデータとなる。
図6は、クロック生成回路104としてPLLを用いた場合の構成例を示す図である。本実施の形態に係るクロック生成回路104は、VCO502(Voltage Controlled Oscillator、電圧制御発振器)と、位相周波数検出部504と、チャージポンプ505と、ループフィルタ506と、分周器509と、を含む。
VCO502は、入力制御電圧により再生クロックS121の発振周波数を変化させる。VCO502は、図5に示されるように複数のインバータ503をリング状に接続したリングオシレータ形式で構成される。VCO502は、それぞれのインバータ503の出力からクロック信号を取り出すことで多相クロックS507を出力する。また、VCO502を構成するインバータ503の遅延量は入力制御電圧S510により決定され、各段のインバータ503は一定の遅延を持った信号を生成する。
位相周波数検出部504は、PWM信号S105と分周器509から帰還した分周クロックS601とを比較し、それらの位相差および周波数差を含む位相検出出力S508を生成しチャージポンプ505に出力する。本実施の形態に係る位相周波数検出部504は、2つの入力のそれぞれの立ち上がりエッジ間の位相差、および立ち下がりエッジ間の位相差を位相の比較結果として取得する。具体的には、位相周波数検出部504は、分周クロックS601およびPWM信号S105のそれぞれの立ち上がりエッジの位相を比較して、分周クロックS601の立ち上がりエッジの位相が遅れていればUPを、進んでいればDOWNをHighにする。位相周波数検出部504は分周クロックS601の立ち下がりエッジの位相とPWM信号S105の立ち下がりエッジの位相とを比較する。位相周波数検出部504は、分周クロックS601の立ち下がりエッジの位相が遅れていればUPを、進んでいればDOWNをHighにする。
チャージポンプ505は、位相検出出力S508をアナログの電流に変換する。ループフィルタ506は、チャージポンプ505で生成される電流を電圧に変換する。ループフィルタ506は、PLLのフィードバックループの帯域の安定化を図るように設計される。入力制御電圧S510は、ループフィルタ506から出力され、VCO502に入力される。
分周器509は、再生クロックS121を1/N(Nは2以上の自然数)の周波数に分周した信号を出力する。分周クロックS601は、分周器509から出力され、位相周波数検出部504にフィードバックされる。
クロック生成回路104は、PWM信号S105と分周クロックS601との周波数差が小さくなり、かつPWM信号S105の立ち上がりエッジ、立ち下がりエッジと分周クロックS601の対応するエッジとの位相差が小さくなるよう入力制御電圧S510を生成する。クロック生成回路104は生成された入力制御電圧S510をVCO502に供給する。
ここで、従来のクロックエッジ変調で上記のPLLを用いる場合、PWM信号の立ち上がりエッジの位相または立ち下がりエッジの位相にはデータを重畳せず、固定することが求められる。具体的に説明すると、従来の方式にしたがってPLLを構成する場合、PLLは再生クロックの位相をPWM信号の位相に同期させるように動作する。PWM信号の立ち上がりエッジおよび立ち下がりエッジの両方の位相に任意のデータが重畳される場合でも、PLLはそのPWM信号の位相に同期した再生クロックを出力する。このとき任意のデータが偏りを持つとすると、PLLは、再生クロックの位相をそのような偏りを含むPWM信号の位相に同期させるように動作する。そのため、クロック生成回路にとって、データに依存して変化するPWM信号のエッジの位相の偏りは、PLLで再生するクロックの同期を妨げるノイズとなる。以上の理由から、クロックの再生を可能とするため、従来のPWM信号では立ち上がりエッジまたは立ち下がりエッジの位相を固定する必要があった。
これに対し、本実施の形態では、送信回路100と受信回路101とが従来と異なる特徴を持つ。これにより、PWM信号S105の立ち上がりエッジの位相および立ち下がりエッジの位相の両方にデータを重畳した場合でも、受信回路101はデータを受信する動作に加えて、データからクロックを再生することができる。
以下に、本実施の形態におけるクロックを再生する動作を説明する。
まず、送信回路100は、既述の通りPWM信号S105のエッジの位相の時間的平均が一定となるように送信データS110を前処理する。例えば、本実施の形態ではPWM信号S105は、送信回路100内部の8b/10b変換により、ある期間で平均をとった場合に「0」と「1」の出現頻度が一定となるように変調されている。この期間は、8b/10b変換では例えば10ビットのデータに対応する10Tである。10ビットのデータを立ち上がりエッジおよび立ち下がりエッジのそれぞれに重畳させると、この期間は5Tとなる。
まず、送信回路100は、既述の通りPWM信号S105のエッジの位相の時間的平均が一定となるように送信データS110を前処理する。例えば、本実施の形態ではPWM信号S105は、送信回路100内部の8b/10b変換により、ある期間で平均をとった場合に「0」と「1」の出現頻度が一定となるように変調されている。この期間は、8b/10b変換では例えば10ビットのデータに対応する10Tである。10ビットのデータを立ち上がりエッジおよび立ち下がりエッジのそれぞれに重畳させると、この期間は5Tとなる。
次に、受信側のクロック生成回路104のループフィルタ506の帯域は、再生クロックS121がPWM信号S105の各エッジの位相に同期するために必要な帯域よりも狭く設定される。特に、ループフィルタ506の帯域は、PWM信号S105のエッジの位相の時間的平均をとる期間の逆数より十分に狭く設定される。例えば、8b/10b変換を用い、PWM信号S105のエッジの位相の時間的平均をとる期間を5Tとすると、ループフィルタ506のカットオフ周波数は逆数の1/5Tに設定される。以下では、PWM信号S105のエッジの位相の時間的平均をとる期間の逆数を位相平均周波数と称す。クロック生成回路104のループフィルタ506の帯域は、位相平均周波数より十分に小さくなるように設計される。
クロック生成回路104は、ループフィルタ506の帯域内の周波数成分の位相変化に応答するように動作し、一方で帯域外の周波数成分の位相変化に対する応答は抑制される。そのため、位相平均周波数がループフィルタ506の帯域の外の場合、クロック生成回路104の周波数応答はデータの位相の変化に追従しない。言い換えると、本実施の形態においてPWM信号S105のデータの位相の変化により生じるノイズは、ループフィルタ506の帯域外のためループフィルタ506で除去される。また、PWM信号S105の位相の時間的平均は一定のため、PWM信号S105の位相の偏りは抑制または除去される。これにより、クロック生成回路104で生成される再生クロックS121は、PWM信号S105のエッジの位相の一定な時間的平均に同期する。
なお、本実施の形態では位相周波数検出部504が立ち上がりエッジの位相差および立ち下がりエッジの位相差の両方を検出する場合を説明したが、これに限られず、例えばどちらか一方が検出されてもよい。
なお、本実施の形態では、多相クロックS507が、リングオシレータ型のVCO502の各インバータの出力から生成される場合を説明したがこれに限られない。例えば、多相クロックS507が多段の遅延回路の出力から生成されるなど、データの位相情報を保持できるならばリングオシレータ型に限らず他の形式の回路で生成されてもよい。
図5に戻り、PWMデコーダ103の動作を説明する。PWMデコーダ103は、複数のデータサンプル回路500と、デコード部501と、を有する。PWMデコーダ103は、多相クロックS507を用いてデータサンプル回路500においてPWM信号S105をサンプリングし、サンプリングしたデータを保持する。そして、デコード部501はこの保持したデータからPWM変調前のデータを再生する(復調(デコード))。
データサンプル回路500は、入力されるデータをクロックの立ち上がりエッジおよび立ち下がりエッジの両方でサンプリングする回路である。前段のデータサンプル回路500は、多相クロックS507の第0相クロックφ0、第1相クロックφ1、第2相クロックφ2、第3相クロックφ3を用いてPWM信号S105をサンプリングし、サンプリングデータs0、s1、s2、s3を出力する。後段のデータサンプル回路500は、多相クロックS507の第0相クロックφ0を用いてサンプリングデータs0、s1、s2、s3をサンプリングし、それぞれのサンプリング出力so0、so1,so2,so3を出力する。サンプリング出力so0、so1、so2、so3は、デコード部501に入力される。
デコード部501は、サンプリング出力so0、so1、so2、so3に対してに対して図4(b)や図4(c)に示される送信側のエンコードにおける真理値表に従う変換の逆の変換を行う。デコード部501はこのようにサンプリング出力を復調し、符号化前の信号を取得し、その信号をデコード出力S511として出力する。
本実施の形態では、多相クロックS507の第0相クロックφ0、第1相クロックφ1、第2相クロックφ2、第3相クロックφ3の立ち上がりエッジの位相はそれぞれ、図4(d)に示される時刻T/16、3T/16、5T/16、7T/16に相当する。これらの時刻におけるデータであるサンプリング出力so0、so1、so2、so3は、図4(d)のエンコード出力信号S410([3],[2],[1],[0])に対応する。
多相クロックS507の第0相クロックφ0、第1相クロックφ1、第2相クロックφ2、第3相クロックφ3の立ち下がりエッジの位相はそれぞれ、図4(d)に示される時刻9T/16、11T/16、13T/16、15T/16に相当する。これらの時刻におけるデータであるサンプリング出力so0、so1、so2、so3は、図4(d)のエンコード出力信号S410([3],[2],[1],[0])に対応する。以上のように、デコード部501は、立ち下がりエッジについて図4(c)の真理値表を逆に適用することでサンプリング出力so0、so1、so2、so3を再生し、デコード出力S511として出力する。
図5に示される後処理部107の動作を説明する。後処理部107は、デコード出力S511を取得し、受信データS120を出力する。後処理部107は、デコード出力S511に対して前処理部106に係る図3(d)の真理値表を逆に適用する。例えば、後処理部107は、前処理部106における8b/10b変換の逆変換を行ってもよい。8b/10b変換およびその逆変換は公知であるから詳細な説明は省略する。
図7は、図1の受信回路101の動作を示すタイミングチャートである。図7の横軸は時刻を示す。PWM信号S105は、送信回路100によって生成されるPWM波形を有する信号である。PWM信号S105の立ち上がりエッジおよび立ち下がりエッジのそれぞれの位相には4階調(2ビット)ずつデータが重畳されている。また、PWM信号S105は、エッジの位相の時間的平均が一定となるように送信側で変調されている。
位相検出出力S508は、位相周波数検出部504においてPWM信号S105のエッジと再生クロックS121のエッジとの位相差を検出した結果を表す出力である。位相検出出力S508のUPは、立ち上がりエッジおよび立ち下がりエッジのそれぞれについて再生クロックS121のエッジの位相よりもPWM信号S105のエッジの位相が早い場合は先のエッジから後のエッジまでの期間にHighとなる。位相検出出力S508のDOWNは、立ち上がりエッジおよび立ち下がりエッジのそれぞれについて再生クロックS121のエッジの位相がPWM信号S105のエッジの位相より早い場合は先のエッジから後のエッジまでの期間にHighとなる。
具体的には、図7に示すように、PWM信号S105のはじめの立ち上がりエッジに重畳されるデータは「2」である。このとき、再生クロックS121の対応する立ち上がりエッジは、PWM信号S105のはじめの立ち上がりエッジよりも先に立ち上がる。この条件において位相検出出力S508のDOWNは、再生クロックS121の立ち上がりエッジからPWM信号S105の立ち上がりエッジまでの期間にHighとなる。本実施の形態では分周器509の分周比は1のため、再生クロックS121は図6の分周クロックS601と同じである。しかしながら、これに限られず、例えば分周比が1以外の場合は再生クロックS121の代わりに分周クロックS601を用いてもよい。
再生クロックS121は、クロック生成回路104で再生されるクロック信号である。本実施の形態に係る再生クロックS121は、PWM信号S105の各エッジの位相の時間的平均に同期した位相を有する。
多相クロックS507は、いずれも周期Tであるが位相が等間隔でそれぞれ異なる複数のクロック信号からなる。多相クロックS507の第0相クロックφ0、第1相クロックφ1、第2相クロックφ2、第3相クロックφ3の立ち上がりエッジはそれぞれ時刻T/16、時刻3T/16、時刻5T/16、時刻7T/16に位置する。多相クロックS507の第0相クロックφ0、第1相クロックφ1、第2相クロックφ2、第3相クロックφ3の立ち下がりエッジはそれぞれ時刻9T/16、時刻11T/16、時刻13T/16、時刻15T/16に位置する。本実施の形態では、再生クロックS121の位相は、多相クロックS507の第1相クロックφ1の位相と一致する。
ここで、多相クロックS507の位相は、PWMデコーダ103の動作で説明した様にPWM信号S105の位相データを取得するタイミングを決める。なお、本実施の形態では多相クロックS507は4位相である場合を説明したが、これに限られず、PWM信号S105を復調できるならば多相クロックS507の位相の数は4に限られない。
サンプリングデータs0、s1、s2、s3は、PWM信号S105を、多相クロックS507の第0相クロックφ0、第1相クロックφ1、第2相クロックφ2、第3相クロックφ3のそれぞれの立ち上がりエッジおよび立ち下がりエッジのタイミングでサンプリングすることで得られるデータである。サンプリング出力(so0、so1、so2、so3)は、サンプリングデータs0、s1、s2、s3を多相クロックS507の第0相クロックφ0の立ち上がりエッジおよび立ち下がりエッジのタイミングで保持した結果である。具体的には、図7の多相クロックS507の第0相クロックφ0がはじめに立ち下がる時間9T/16を例にとると、サンプリング出力(so0、so1、so2、so3)は、それぞれ(0、0、1、1)となる。
デコード出力S511は、サンプリング出力(so0、so1、so2、so3)に、図4(b)や図4(c)に示される真理値表を逆に適用することで得られた結果である。図7のサンプリング出力(so0、so1、so2、so3)である(0、0、1、1)の復調結果は、(0、0、1、1)に図4(b)の真理値表の逆を適用することで、4進数表記「2」となる。このデコード出力S511は、PWM信号S105のエッジの位相に重畳されたデータと一致する。
本実施の形態に係るシリアルデータ伝送システム10によると、PWM信号S105のエッジの位相の時間的平均は一定に保たれ、受信側ではその時間的平均に同期したクロック信号が生成される。したがって、PWM信号S105の立ち上がりエッジおよび立ち下がりエッジの両方の位相にデータを重畳することができる。これにより、同じエッジ数(消費電力)当たりのデータの伝送速度を高めることができる。
また、本実施の形態では、1サイクル当たりのデータのビット数を増やした際に、立ち上がりエッジの位相と立ち下がりエッジの位相とにデータを振り分けることができる。したがって、ビット数の増加による1サイクルの周期の増加を抑えることができる。例えば、従来の片側のエッジにのみデータを重畳する場合に比べて、データのビット数の増加に伴う伝送速度の低減を抑えることができる。その結果、LVCMOS伝送のように出力ドライバの消費電力がPWM信号における単位時間当たりのエッジの数に応じて単調的に増加する、例えば比例する通信システムにおいて、消費電力を抑えつつ伝送速度を維持または向上させることができる。
また、本実施の形態に係るシリアルデータ伝送システム10によると、EMI(Electro Magnetic Interference)を低減することができる。
(第2の実施の形態)
第1の実施の形態では、図1に示すように、PWM信号S105の立ち上がりエッジおよび立ち下がりエッジの両方に位相平均化処理を施したデータを重畳して送受信する例を説明した。これに対して、第2の実施の形態ではPWM信号S105の片側のエッジのみ、すなわち立ち下がりエッジのみにデータを重畳し、受信回路101ではデータが重畳される立ち下がりエッジから再生クロックS121を生成する例を示す。
第1の実施の形態では、図1に示すように、PWM信号S105の立ち上がりエッジおよび立ち下がりエッジの両方に位相平均化処理を施したデータを重畳して送受信する例を説明した。これに対して、第2の実施の形態ではPWM信号S105の片側のエッジのみ、すなわち立ち下がりエッジのみにデータを重畳し、受信回路101ではデータが重畳される立ち下がりエッジから再生クロックS121を生成する例を示す。
本実施の形態には、固定されたエッジから再生クロックを生成する一般的なPWM伝送方式と比べてPWM信号S105の位相のオフセットの変化に対応できるという利点がある。また、本実施の形態には、位相平均化処理を用いることで、データ依存の固定的な周波数成分でのピークを抑えることができるため、EMIの観点でも利点がある。
本実施の形態は第1の実施の形態と比べてPWM信号S105の立ち下がりエッジの位相にデータを重畳し、立ち上がりエッジの位相は固定する点が異なる。以下では、第1の実施の形態と共通または同様の構成については説明を省略し、第1の実施の形態と異なる構成を説明する。
第2の実施の形態に係る送信回路のPWMエンコーダは第1の実施の形態に係るPWM部200とは異なるPWM部250を含む。PWMエンコーダは、PWM信号S105の立ち下がりエッジにのみにデータを重畳する。なお、本実施の形態では立ち下がりエッジにのみデータを重畳する場合を説明するが、立ち上がりエッジにのみデータを重畳してもよい。
図8(a)〜(d)は、第2の実施の形態に係るPWM部250の動作を説明するための図である。図8(a)は、PWM部250のブロック図を示す。本実施の形態に係るPWMエンコーダはPWM信号S105の立ち下がりエッジの位相に1ビットのデータを重畳するため、エンコード出力信号S410のビット数が3ビットである点で図4(a)の構成と異なる。図8(b)は、エンコード部403における変換を示す真理値表である。エンコード部403は、図8(b)の真理値表に従い、入力を3ビットに変換して出力する。入力が「0」の場合、出力[2:0]は(1,0,0)である。入力が「1」の場合、出力[2:0]は(1,1,0)である。なお、本実施の形態では出力[2]をMSBとしている。
図8(c)は、PWM部250の入力が「0」の場合のタイミングチャートを示す。PWM周期はTであり、送信側クロックS111は、T/3の周期のクロックである。エンコード部403の入力が「0」の場合、エンコード出力信号S410は(1,0,0)となる。シリアライザ401は、これをMSBからシリアルに変換することで、PWM変換信号S210を生成する。このとき、PWM変換信号S210は、0からT/3までの期間でHighとなり、T/3からTまでの期間でLowとなる。
図8(d)は、PWM部250の入力が「1」の場合のタイミングチャートを示す。基本的に図8(c)と各ブロックの処理は同様のため説明を省略する。図8(c)と異なるのは、入力が「1」の場合にエンコード出力信号S410は(1,1,0)であるという点である。そして、このときのPWM変換信号S210は、0から2T/3までの期間でHighとなり、2T/3からTまでの期間でLowとなる。なお、受信回路はPWM変換信号S210のT/2のタイミングでデータを取得することで、入力が「0」か「1」かを判別してデコードする。以上の処理により、PWM部250はPWM信号S105の立ち下がりエッジの位相にデータを重畳する。
図9は、第2の実施の形態に係る受信回路150の一例を示す図である。受信回路150と第1の実施の形態に係る受信回路101とで異なるのは、PWMデコーダ151と位相周波数検出部152である。具体的には、PWMデコーダ151について入力のデータを保持するときに用いるクロックが第1の実施の形態のそれと異なる。PWMデコーダ151は、データサンプル回路500で再生クロックS121を用いてPWM信号S105をサンプリングしてデータを保持する。
なお、第1の実施の形態のデータサンプル回路500はクロックの立ち上がりエッジおよび立ち下がりエッジの両方で入力を保持する。これに対し、本実施の形態のデータサンプル回路500は立ち上がりエッジで入力を保持し、立ち下がりエッジでは入力を保持しない。
なお、本実施の形態では、立ち下がりエッジの位相に1ビットのデータを重畳するため、復調時に複数の位相のタイミングを用いる必要はない。本実施の形態に係る受信回路150は、単一のクロックにしたがいデータを保持することでPWM信号S105を復調することができる。
また、第1の実施の形態に係る位相周波数検出部504はPWM信号S105の立ち上がりエッジと再生クロックS121の立ち上がりエッジとの位相差を検出する。同時に、その位相周波数検出部504はPWM信号S105の立ち下がりエッジと再生クロックS121の立ち下がりエッジとの位相差を検出する。これに対して、本実施の形態に係る位相周波数検出部152は、PWM信号S105の立ち下がりエッジと再生クロックS121の立ち下がりエッジとの位相差を検出する。PWM信号S105の立ち下がりエッジの位相の時間的平均は一定であり、再生クロックS121の立ち上がりエッジの位相はPWM信号S105の立ち下がりエッジの位相の時間的平均の位相に同期する。
図10(a)〜(c)は、第2の実施の形態のPWM信号S105と再生クロックS121の動作を説明する図である。図10(a)は、PWM信号S105と再生クロックS121の3周期分の波形を示す。PWM信号S105は、周期がTであり、立ち下がりエッジの位相に1ビットのデータが重畳されている。PWM信号S105は、データが「0」の場合にT/3で立ち下がり、データが「1」の場合に2T/3で立ち下がる。図10(a)に示される例では、PWM信号S105は、時刻0から時刻Tまでの期間に「0」、時刻Tから時刻2Tまでの期間に「1」、時刻2Tから時刻3Tまでの期間に「0」が重畳されている。
再生クロックS121は、図9のクロック生成回路104で再生されるクロックであり、立ち上がりエッジのタイミングはPWM信号S105の立ち下がりエッジの位相の時間的平均であるT/2となる。データサンプル回路500は、この再生クロックS121でPWM信号S105をサンプリングし、サンプリングされたのデータをサンプリング出力so0として保持する。これにより、受信回路150はPWM信号S105に重畳されたデータを復調することができる。
従来用いられてきたPWM伝送では、PWM信号のエッジのうち位相の固定されている立ち上がりエッジを利用して再生クロックが生成される。この場合、再生クロックのT/2における立ち上がりタイミングは、PWM信号の立ち上がりエッジに同期したクロックを遅延回路や反転回路で処理することで生成される。このように、従来用いられてきたPWM伝送の受信回路は、PWM信号の位相が固定されたエッジに同期してクロックを生成し、このクロックにT/2の遅延を付与することで再生クロックを生成する。
立ち上がりエッジと立ち下がりエッジとの位相関係が明確である場合は、T/2の遅延を付与した再生クロックでデータを復調することが可能である。しかしながら、PWM信号の立ち下がりエッジの位相にオフセットがある場合、T/2のタイミングではかならずしもデータを取得できない。
図10(b)を用いて、立ち下がりエッジの位相にオフセットがある場合の例を説明する。図10(b)は、PWM信号S105のエッジの位相にオフセットがある場合の従来技術に係るPWM伝送におけるタイミングチャートを示す。図10(b)に示されるPWM信号S105は、図10(a)に示されるPWM信号S105の立ち下がりエッジの位相がオフセットされている場合の波形である。特に、データが「0」の場合にPWM信号S105はT/2で立ち下がり、データが「1」の場合に3T/4のタイミングで立ち下がる。
従来用いられてきたPWM伝送では、PWM信号S105のエッジのうち位相の固定された立ち上がりエッジを利用してクロックを再生する。この従来技術では、立ち下がりエッジの位相のオフセットを検出する機構がないので、図10(a)の再生クロックS121と同じT/2のタイミングで立ち上がる再生クロックS121を生成してしまう。この再生クロックS121を用いてPWM信号S105をサンプリングする場合、データが「0」であるとサンプリングのタイミング(T/2)とPWM信号S105のレベル遷移のタイミング(T/2)とが重なる。その結果、受信回路でデータを正しく復調することができない。
これに対して、本実施の形態では、データが重畳される立ち下がりエッジの位相の時間的平均に同期した再生クロックS121を生成することで、PWM信号S105の位相のオフセットをも考慮した形の再生クロックS121を提供できる。
図10(c)は、PWM信号S105のエッジの位相にオフセットがある場合の本実施の形態に係るPWM伝送におけるタイミングチャートを示す。本実施の形態では、送信側で、データが重畳されるエッジの位相の時間的平均が一定となるようにPWM信号S105を生成する。特に、PWM信号S105の立ち下がりエッジのタイミングがT/2と3T/4のいずれかから選択される場合において、立ち下がりエッジの位相の時間的平均は5T/8となる。そして、図9の受信回路150は、データが重畳される立ち下がりエッジの位相の時間的平均に同期するよう再生クロックS121を生成するため、再生クロックS121はオフセットを含む上記の5T/8のタイミングに同期する。
本実施の形態に係るシリアルデータ伝送システムによると、データが重畳されるエッジからクロックを再生することで、再生クロックS121の位相がそのエッジの位相の時間的平均に同期する。このため、PWM信号S105の位相にオフセットがある場合においてもデータを復調できる。
以上、実施の形態に係るシリアルデータ伝送システムの構成と動作について説明した。これらの実施の形態は例示であり、その各構成要素や各処理の組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
(その他の実施例)
本発明は、上述の実施の形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施の形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100 送信回路、 101 受信回路、 102 PWMエンコーダ、 103 PWMデコーダ、 104 クロック生成回路、 106 前処理部、 107 後処理部。
Claims (16)
- データを前処理する前処理手段と、
前処理されたデータに応じてパルス幅変調されたPWM信号を生成する生成手段と、を備え、
前記前処理手段は、データに応じて生成されるPWM信号におけるエッジの位相の時間的平均が一定となるよう、当該データを前処理するデータ処理回路。 - 前記生成手段は、PWM信号のエッジの位相にデータを重畳する請求項1に記載のデータ処理回路。
- 前記生成手段は、PWM信号の各エッジの位相に複数のビットのデータを重畳する請求項2に記載のデータ処理回路。
- 前記生成手段は、PWM信号の立ち上がりエッジおよび立ち下がりエッジのそれぞれの位相にデータを重畳する請求項2または3に記載のデータ処理回路。
- 前記生成手段は、PWM信号の立ち上がりエッジまたは立ち下がりエッジのいずれか一方の位相にはデータを重畳せず、固定する請求項2または3に記載のデータ処理回路。
- 前記生成手段によって生成されたPWM信号はシリアル伝送方式により送信される請求項1から5のいずれか1項に記載のデータ処理回路。
- 前記前処理手段は、データを複数のセグメントに並列化し、各セグメントに応じてパルス幅変調された信号におけるエッジの位相の時間的平均が一定となるよう、当該セグメントを前処理する請求項1から6のいずれか1項に記載のデータ処理回路。
- 前記前処理手段は、前処理された各セグメントのビットと、前処理された他のセグメントの対応するビットと、を組み合わせることで複数のビットを単位とするデータを生成し、
前記生成手段は、PWM信号の各エッジの位相に、生成された複数のビットを単位とするデータを重畳する請求項7に記載のデータ処理回路。 - 消費電力がPWM信号における単位時間当たりのエッジの数に応じて単調的に増加する請求項1から8のいずれか1項に記載のデータ処理回路。
- 前記前処理手段における前処理は、データに含まれるKビット(Kは2以上の自然数)のデータを、値の出現頻度が一定となるLビット(LはKより大きな自然数)のデータに変換する処理を含む請求項1から9のいずれか1項に記載のデータ処理回路。
- データを前処理する前処理ステップと、
前処理されたデータに応じてパルス幅変調されたPWM信号を生成する生成ステップと、を含み、
前記前処理ステップは、データに応じて生成されるPWM信号におけるエッジの位相の時間的平均が一定となるよう、当該データを前処理するステップを含むデータ処理方法。 - エッジの位相の時間的平均が一定となるよう前処理されたデータに応じてパルス幅変調されたPWM信号から、エッジの位相の当該時間的平均に同期するクロック信号を生成するクロック生成手段と、
生成されたクロック信号を用いてPWM信号を復調し、復調データを取得する復調手段と、
復調データに対して前処理の逆の処理を行う処理手段と、を備えるデータ処理回路。 - 前記クロック生成手段は位相同期回路を含み、
前記位相同期回路のループフィルタの帯域は、前記位相同期回路の出力がPWM信号の各エッジの位相に同期するために必要な帯域よりも狭く設定される請求項12の記載のデータ処理回路。 - 前記位相同期回路のループフィルタの帯域は、PWM信号のエッジの位相の時間的平均をとる期間の逆数より狭く設定される請求項13に記載のデータ処理回路。
- エッジの位相の時間的平均が一定となるよう前処理されたデータに応じてパルス幅変調されたPWM信号から、エッジの位相の当該時間的平均に同期するクロック信号を生成するクロック生成ステップと、
生成されたクロック信号を用いてPWM信号を復調し、復調データを取得する復調ステップと、
復調データに対して前処理の逆の処理を行う処理ステップと、を含むデータ処理方法。 - 送信回路と受信回路とを備えるデータ伝送システムであって、
前記送信回路は、
データを前処理する前処理手段と、
前処理されたデータに応じてパルス幅変調されたPWM信号を生成する生成手段と、を備え、
前記前処理手段は、データに応じて生成されるPWM信号におけるエッジの位相の時間的平均が一定となるよう、当該データを前処理し、
前記受信回路は、
前記生成手段によって生成されたPWM信号から、エッジの位相の時間的平均に同期するクロック信号を生成するクロック生成手段と、
生成されたクロック信号を用いてPWM信号を復調し、復調データを取得する復調手段と、
復調データに対して前処理の逆の処理を行う処理手段と、を備えるデータ伝送システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016186139A JP2018050264A (ja) | 2016-09-23 | 2016-09-23 | データ処理回路およびデータ伝送システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016186139A JP2018050264A (ja) | 2016-09-23 | 2016-09-23 | データ処理回路およびデータ伝送システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018050264A true JP2018050264A (ja) | 2018-03-29 |
Family
ID=61766605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016186139A Pending JP2018050264A (ja) | 2016-09-23 | 2016-09-23 | データ処理回路およびデータ伝送システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018050264A (ja) |
-
2016
- 2016-09-23 JP JP2016186139A patent/JP2018050264A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10715307B1 (en) | Embedded time of day receiver for clock transmission | |
US7340655B2 (en) | Skew adjustment circuit, skew adjustment method, data synchronization circuit, and data synchronization method | |
JP5202115B2 (ja) | 伝送システム、受信装置および伝送方法 | |
JP2003524914A (ja) | クロック信号ラインを介してデータ信号を送受信するためのシステム及び方法 | |
JP4888393B2 (ja) | クロック再生装置及び方法 | |
US20050078018A1 (en) | Dual phase pulse modulation decoder circuit | |
JP2011041059A (ja) | 符号化装置、情報処理装置、符号化方法、及びデータ伝送方法 | |
JP3000334B2 (ja) | デジタル・デコード装置及び方法 | |
US7103110B2 (en) | Dual phase pulse modulation encoder circuit | |
JP4586912B2 (ja) | 情報処理装置、符号化方法、及び信号伝送方法 | |
JP4683093B2 (ja) | 情報処理装置、信号伝送方法、及び復号方法 | |
KR19990068139A (ko) | 직렬 데이터와 클록 신호를 합성하는 방법 및 장치 | |
JP2011103552A (ja) | 情報処理装置、及び信号処理方法 | |
JP2018050264A (ja) | データ処理回路およびデータ伝送システム | |
KR100899781B1 (ko) | 클록 정보와 함께 데이터를 전송하는 방법 및 장치 | |
JP2746721B2 (ja) | ディジタル信号記録再生装置 | |
JP2010028615A (ja) | クロック・データ・リカバリ回路 | |
JP4789976B2 (ja) | クロック再生用イネーブル生成回路及びクロック再生回路 | |
JP2007142860A (ja) | 送信器、受信器及びデータ伝送方法 | |
JPH0210619B2 (ja) | ||
JP2745993B2 (ja) | 信号伝送方式 | |
JP2011101308A (ja) | 信号処理装置、信号伝送方法、及びデータ復元方法 | |
JPH0222572B2 (ja) | ||
JP2003168973A (ja) | クロックリカバリー回路 | |
JPS63313945A (ja) | ディジタル符号復号装置 |