クロック乗せ換え回路およびクロック乗せ換え方法
【課題】より安定してクロックの乗せ換えを行う。
【解決手段】2ポートRAMは、独立して書き込みと読み出しが可能であり、書き込みアドレス制御部は、2ポートRAMにおいて、入力データが書き込まれる書き込みアドレスを制御し、ブランクアドレス検出部は、書き込みアドレスにおいて、入力データが書き込まれないブランクアドレスを検出し、読み出しアドレス変換部は、2ポートRAMにおいて、ブランクアドレス以外の書き込みアドレスを、出力データが読み出される読み出しアドレスに変換する。本技術は、例えば、データ伝送システムに適用することができる。
【解決手段】2ポートRAMは、独立して書き込みと読み出しが可能であり、書き込みアドレス制御部は、2ポートRAMにおいて、入力データが書き込まれる書き込みアドレスを制御し、ブランクアドレス検出部は、書き込みアドレスにおいて、入力データが書き込まれないブランクアドレスを検出し、読み出しアドレス変換部は、2ポートRAMにおいて、ブランクアドレス以外の書き込みアドレスを、出力データが読み出される読み出しアドレスに変換する。本技術は、例えば、データ伝送システムに適用することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、クロック乗せ換え回路およびクロック乗せ換え方法に関し、特に、より安定してクロックの乗せ換えを行うことができるようにするクロック乗せ換え回路およびクロック乗せ換え方法に関する。
【背景技術】
【0002】
従来、あるクロックに同期した入力データを、異なるクロックに同期した出力データとして出力するクロック乗せ換え回路がある。クロック乗せ換え回路においては、書き込みと読み出しが可能な2ポートRAM(Random Access Memory)における書き込みアドレスと読み出しアドレスの位相を比較して、これらが競合しないように書き込みアドレスと読み出しアドレスとを制御することが行われている。
【0003】
例えば、書き込みフレームパルス信号に基づいて、書き込みアドレスを制御するとともに、書き込みフレームパルス信号とは異なる位相の読み出しフレームパルス信号に基づいて、読み出しアドレスを制御するようにしたクロック乗せ換え回路がある(例えば、特許文献1参照)。
【0004】
また、書き込みアドレスと読み出しアドレスの位相の接近を監視し、所定の距離になると、書き込みアドレスと読み出しアドレスとを、ある距離をもって初期化するようにしたクロック乗せ換え回路がある(例えば、特許文献2参照)。
【0005】
一方で、高次伝送フレームのデスタッフ処理において、FIFO(First In First Out)メモリの書き込みアドレスの位相と読み出しアドレスの位相とを、PLL(Phase-Locked Loop)回路の位相比較器により比較することで、書き込みアドレスと読み出しアドレスを適切に制御するようにした光信号伝送システムが提案されている(例えば、特許文献3参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−140619号公報
【特許文献2】特開2009−218885号公報
【特許文献3】特開2008−148250号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1においては、書き込みフレームパルス信号の位相と読み出しフレームパルス信号に位相とが重ならないことが前提とされているものの、これらの位相が重ならないように設定する手段については開示されておらず、実際に、安定してクロックの乗せ換えを行うことはできない。
【0008】
また、特許文献2の技術では、書き込みアドレスと読み出しアドレスの位相が接近した状態で安定動作している場合でも、クロックの揺らぎによって書き込みアドレスと読み出しアドレスが初期化される可能性があり、クロックの乗せ換えにおけるデータの正当性が保証されない。
【0009】
一方、特許文献3の高次伝送フレームのデスタッフ処理においては、デスタッフの頻度が小さいため、デスタッフによりPLL回路のクロックに変化が生じた場合でも、その変化は軽微であるので、PLL回路の動作には影響しない。しかしながら、特許文献3の技術をクロック乗せ換え回路に適用した場合、書き込みアドレスと読み出しアドレスの位相を制御する位相制御情報の出現の頻度が、デスタッフの頻度より大きくなるため、位相制御情報に誤りが生じた場合、PLL回路の動作に影響を及ぼしてしまう。これにより、PLL回路において再引き込みが行われ、PLL回路の出力クロックが不安定になり、後段のシステムにも影響を及ぼす恐れがある。
【0010】
本技術は、このような状況に鑑みてなされたものであり、より安定してクロックの乗せ換えを行うことができるようにするものである。
【課題を解決するための手段】
【0011】
本技術の一側面のクロック乗せ換え回路は、第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路であって、独立して書き込みと読み出しが可能な2ポートRAMと、前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御する書き込みアドレス制御部と、前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出するブランクアドレス検出部と、前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する読み出しアドレス変換部とを備える。
【0012】
前記クロック乗せ換え回路には、前記書き込みアドレスの上位ビットと前記読み出しアドレスの上位ビットの位相を同期させる位相同期回路をさらに設け、前記読み出しアドレス変換部には、前記書き込みアドレスの上位ビットの位相に同期した前記読み出しアドレスの上位ビットの位相を反転させることができる。
【0013】
前記第1のクロックの周波数は、前記第2のクロックの周波数より高く、前記第1のクロックの周波数と前記第2のクロックの周波数との比は、整数比で表されるようにすることができる。
【0014】
前記読み出しアドレス変換部には、前記整数比に応じて、前記ブランクアドレスと前記読み出しアドレスとを対応づけたテーブルに基づいて、前記書き込みアドレスを前記読み出しアドレスに変換させることができる。
【0015】
本技術の一側面のクロック乗せ換え方法は、第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路であって、独立して書き込みと読み出しが可能な2ポートRAMを備えるクロック乗せ換え回路のクロック乗せ換え方法であって、前記クロック乗せ換え回路が、前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御し、前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出し、前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換するステップを含む。
【0016】
本技術の一側面においては、2ポートRAMにおいて、入力データが書き込まれる書き込みアドレスが制御され、書き込みアドレスにおいて、入力データが書き込まれないブランクアドレスが検出され、2ポートRAMにおいて、ブランクアドレス以外の書き込みアドレスが、出力データが読み出される読み出しアドレスに変換される。
【発明の効果】
【0017】
本技術の一側面によれば、より安定してクロックの乗せ換えを行うことが可能となる。
【図面の簡単な説明】
【0018】
【図1】従来のクロック乗せ換え回路を備えるデータ伝送システムの構成例を示す図である。
【図2】データ多重方法について説明する図である。
【図3】データ分離方法について説明する図である。
【図4】本技術を適用したクロック乗せ換え回路の構成例を示す図である。
【図5】クロック乗せ換え回路の動作について説明する図である。
【図6】周波数比に応じた変換テーブルについて説明する図である。
【図7】クロック乗せ換え処理について説明するフローチャートである。
【図8】本技術を適用したクロック乗せ換え回路の具体的な構成例を示す図である。
【図9】クロック乗せ換え方法について説明する図である。
【図10】ブランクアドレスに応じた出力データの遅延量について説明する図である。
【発明を実施するための形態】
【0019】
以下、本技術の実施の形態について図を参照して説明する。なお、説明は以下の順序で行う。
1.従来のクロック乗せ換え回路
2.本技術を適用したクロック乗せ換え回路
3.本技術を適用したクロック乗せ換え回路の具体的な構成例
【0020】
<1.従来のクロック乗せ換え回路>
図1は、従来のクロック乗せ換え回路を備えるデータ伝送システムの構成例を示している。
【0021】
図1のデータ伝送システムにおいて、データ多重装置11は、データを多重化し、並直列変換部12に供給する。並直列変換部12は、データ多重装置11からの多重化されたデータを、パラレル−シリアル変換し、シリアル伝送信号として、直並列変換部13に送信する。直並列変換部13は、並直列変換部12から送信されてきたシリアル伝送信号を、シリアル−パラレル変換し、データ分離装置14に供給する。データ分離装置14は、直並列変換部13からのデータを分離する。
【0022】
データ多重装置11は、クロック乗せ換え回路として構成される。データ多重装置11においては、書き込みクロックCK_Aに同期した入力データDA1乃至DA6が、2ポートRAM(Random Access Memory)21に書き込まれ、読み出しクロックCK_Bに同期した出力データDB1乃至DB6が、2ポートRAM21から読み出される。
【0023】
書き込みアドレス制御部22は、2ポートRAM21において、入力データDA1乃至DA6が書き込まれる書き込みアドレスを制御する。読み出しアドレス制御部23は、2ポートRAM21において、出力データDB1乃至DB6が読み出される読み出しアドレスを制御する。PLL(Phase-Locked Loop)回路24は、書き込みクロックCK_Aに基づいて、読み出しクロックCK_Bを出力する。読み出しクロックCK_Bは、書き込みクロックCK_Aの周波数の5/4倍の周波数で出力される。すなわち、書き込みクロックCK_Aの周波数と、読み出しクロックCK_Bの周波数との比は、4:5とされる。
【0024】
図2は、データ多重装置11によるデータの多重方法について説明する図である。
【0025】
データ多重装置11のクロックの乗せ換えによれば、図2に示されるように、書き込みクロックCK_Aの4クロック分の入力データDA1乃至DA6は、読み出しクロックCK_Bの5クロック分の出力データDB1乃至DB6として読み出される。
【0026】
このとき、読み出しクロックCK_Bの5クロック分の出力データDB1乃至DB6には、図中黒塗りで示される空のデータ(以下、ブランクデータという)が読み出されるようになる。
【0027】
データ多重装置11は、このブランクデータの領域に新規データを格納し、データ分離装置14に伝送することができる。なお、読み出しアドレス制御部23によって、出力データにおけるブランクデータの位置を表すBLNK信号が生成され、出力データDB1乃至DB6とともに、データ分離装置14に伝送される。
【0028】
このように、データ多重装置11は、クロックの乗せ換えを行うことで、入力データに新規データを多重し、データ分離装置14に伝送することができる。
【0029】
データ分離装置14もまた、クロック乗せ換え回路として構成される。データ分離装置14においては、書き込みクロックRCK_Bに同期した入力データRDB1乃至RDB6(=DB1乃至DB6)が、2ポートRAM31に書き込まれ、読み出しクロックRCK_Aに同期した出力データRDA1乃至RDA6(=DA1乃至DA6)が、2ポートRAM31から読み出される。
【0030】
書き込みアドレス制御部32は、2ポートRAM31において、入力データRDB1乃至RDB6が書き込まれる書き込みアドレスを制御する。読み出しアドレス制御部33は、2ポートRAM31において、出力データRDA1乃至RDA6が読み出される読み出しアドレスを制御する。PLL回路34は、書き込みアドレスと読み出しアドレスに基づいて、読み出しクロックRCK_Aを出力する。読み出しクロックRCK_Aは、書き込みクロックRCK_Bの周波数の4/5倍の周波数で出力される。すなわち、書き込みクロックRCK_Bの周波数と、読み出しクロックRCK_Aの周波数との比は、5:4とされる。
【0031】
図3は、データ分離装置14によるデータの分離方法について説明する図である。
【0032】
データ分離装置14のクロックの乗せ換えによれば、図3に示されるように、書き込みクロックRCK_Bの5クロック分の入力データRDB1乃至RDB6は、読み出しクロックRCK_Aの4クロック分の出力データRDA1乃至RDA6として読み出される。
【0033】
まず、データ分離装置14においては、書き込みアドレス制御部32が、入力データにおけるブランクデータの位置を表すRBLNK信号と書き込みクロックRCK_Bとに基づいて、書き込みアドレス制御信号41(以下、書き込みアドレス41という)を生成する。書き込みアドレス41は、図3に示されるように、書き込みアドレス上位、書き込みアドレス下位2bit、および書き込みイネーブル信号を含む。
【0034】
また、読み出しアドレス制御部33は、PLL回路34によって出力される読み出しクロックRCK_Aに基づいて、読み出しアドレス制御信号42(以下、読み出しアドレス42という)を生成する。読み出しアドレス42は、図3に示されるように、読み出しアドレス上位および読み出しアドレス下位2bitを含む。
【0035】
ここで、データ分離装置14においては、読み出しアドレス制御部33が、書き込みアドレス上位(W)の位相を反転した読み出しアドレス上位(R)をPLL回路に入力することで、書き込みアドレスと読み出しアドレスとが重ならないように制御される。
【0036】
また、書き込みアドレス制御部32が、RBLNK信号に基づいて、書き込みアドレス下位2bitを“0”にリセットすることにより、RBLNK信号の位相と書き込みアドレスの位相を同期させるとともに、書き込みイネーブル信号をディスエーブルにすることにより、ブランクデータが2ポートRAM31に書き込まれないようにする。
【0037】
このように、データ分離装置14は、クロックの乗せ換えを行うことで、ブランクデータを含む入力データを、ブランクデータを含まない出力データとして出力するとともに、ブランクデータの領域に新規データが多重されている場合には、RBLNK信号に基づいて、入力データから新規データを分離することができる。
【0038】
しかしながら、RBLNK信号は、シリアル伝送信号として伝送されるため、伝送エラーが発生した場合、PLL回路34の動作に影響を及ぼし、PLL回路34から出力される読み出しクロックRCK_Aが不連続となるか、またはその周波数が変化し、後段のシステムにも影響を及ぼす恐れがある。
【0039】
そこで、以下においては、安定したクロックの乗せ換えを実現する、本技術を適用したクロック乗せ換え回路について説明する。
【0040】
<2.本技術を適用したクロック乗せ換え回路>
[クロック乗せ換え回路の構成例]
図4は、上述したデータ分離装置14に対応する、本技術を適用したクロック乗せ換え回路の構成例を示す図である。
【0041】
図4のクロック乗せ換え回路100は、2ポートRAM101、書き込みアドレス制御部102、読み出しアドレスカウンタ103、PLL回路104、ブランクアドレス検出部105、および読み出しアドレス変換部106から構成される。
【0042】
クロック乗せ換え回路100においては、書き込みクロックRCK_Bに同期した入力データRDB1乃至RDB6が、2ポートRAM101に書き込まれ、読み出しクロックRCK_Aに同期した出力データRDA1乃至RDA6が、2ポートRAM101から読み出される。
【0043】
書き込みアドレス制御部102は、2ポートRAM101において、入力データRDB1乃至RDB6が書き込まれる書き込みアドレスを制御する。読み出しアドレスカウンタ103は、PLL回路104によって出力される読み出しクロックRCK_Aに基づいてカウントする。
【0044】
PLL回路104は、書き込みアドレスと読み出しアドレスカウンタ103によるカウントに基づいて、読み出しクロックRCK_Aを出力する。ブランクアドレス検出部105は、書き込みアドレスと、入力データにおけるブランクデータの位置を表すRBLNK信号とに基づいて、書き込みアドレスにおいて入力データが書き込まれないアドレス(ブランクアドレス)を検出する。
【0045】
読み出しアドレス変換部106は、2ポートRAM101において、ブランクアドレス検出部105によって検出されたブランクアドレス以外の書き込みアドレスを、出力データRDA1乃至RDA6が読み出される読み出しアドレスに変換する。
【0046】
なお、読み出しクロックRCK_Aは、書き込みクロックRCK_Bの周波数の4/5倍の周波数で出力される。すなわち、書き込みクロックRCK_Bの周波数と、読み出しクロックRCK_Aの周波数との比は、5:4とされる。
【0047】
[クロック乗せ換え回路の動作]
次に、図5を参照して、クロック乗せ換え回路100の動作について説明する。
【0048】
クロック乗せ換え回路100のクロックの乗せ換えによれば、図5に示されるように、書き込みクロックRCK_Bの5クロック分の入力データRDB1乃至RDB6は、読み出しクロックRCK_Aの4クロック分の出力データRDA1乃至RDA6として読み出される。図5の入力データRDB1乃至RDB6においては、2クロック目がブランクデータとなっている。
【0049】
まず、クロック乗せ換え回路100においては、書き込みアドレス制御部102が、書き込みクロックRCK_Bに基づいて、書き込みアドレス制御信号111(以下、書き込みアドレス111という)を生成する。書き込みアドレス111は、図5に示されるように、書き込みアドレス上位、書き込みアドレス下位2bit、および書き込みイネーブル信号を含む。
【0050】
ブランクアドレス検出部105は、書き込みアドレス111と、入力データにおけるブランクデータの位置を表すRBLNK信号とに基づいてブランクアドレスを検出し、そのブランクアドレスを示すブランクアドレス信号112(以下、ブランクアドレス112という)を出力する。このブランクアドレス112は、クロック乗せ換え回路100のシステム立ち上げ時から変化しない(図5の例では“1”)。
【0051】
読み出しアドレスカウンタ103は、PLL回路104によって出力される読み出しクロックRCK_Aに基づいてカウントし、読み出しアドレスカウンタ信号113(以下、読み出しアドレスカウンタ113という)を出力する。読み出しアドレスカウンタ113は、図5に示されるように、読み出しアドレスカウンタ上位および読み出しアドレスカウンタ下位2bitを含む。
【0052】
読み出しアドレス変換部106は、ブランクアドレス検出部105によって出力されるブランクアドレス112と、読み出しアドレスカウンタ103によって出力される読み出しアドレスカウンタ113とに基づいて、読み出しアドレス制御信号114(以下、読み出しアドレス114という)を生成する。読み出しアドレス114は、図5に示されるように、読み出しアドレス上位および読み出しアドレス下位3bitを含む。
【0053】
ここで、クロック乗せ換え回路100において、書き込みアドレス制御部102は、RBLNK信号にかかわらず自走の状態で動作する。すなわち、RBLNK信号がPLL回路104の動作に影響を及ぼさないようになされている。
【0054】
そして、図5に示される書き込みアドレス111は、書き込みクロックRCK_Bの5クロックを1周期として出力され、書き込みアドレス上位がPLL回路104の位相比較器に入力されるようになる。なお、書き込みアドレス下位3bitは、図3のように、RBLNK信号に基づいて“0”にリセットされない。また、PLL回路104の位相比較器には、読み出しクロックRCK_Aの4クロックを1周期とした読み出しアドレスカウンタ113の読み出しアドレスカウンタ上位が入力されるようになる。これにより、書き込み側の上位bitと読み出し側の上位bitの位相の同期が実現されるようになる。
【0055】
また、クロック乗せ換え回路100において、ブランクアドレス検出部105は、図5に示されるようにRBLNK信号が“1”となったとき(すなわち、ブランクデータが書き込まれたとき)、書き込みアドレス下位3bit(図5の例では“1”)を保持し、ブランクアドレス112として出力する。そして、読み出しアドレス変換部106は、ブランクアドレス112および読み出しアドレスカウンタ下位2bitに読み出しアドレス下位3bitが対応付けられた変換テーブルに基づいて、読み出しアドレス下位3bitを出力する。
【0056】
図6は、この変換テーブルの例を示している。
【0057】
この変換テーブルは、書き込みクロックRCK_Bの周波数と読み出しクロックRCK_Aの周波数との比(以下、周波数比という)に応じて与えられている。具体的には、図6Aは、周波数比が5:4の場合の変換テーブルを示しており、図6Bは、周波数比が6:4の場合の変換テーブルを示しており、図6Cは、周波数比が6:5の場合の変換テーブルを示している。また、図6Dは、周波数比が7:5の場合の変換テーブルを示しており、図6Eは、周波数比が7:4の場合の変換テーブルを示している。
【0058】
なお、図6において、BL_Pは、ブランクアドレスを示しており、RCNTは、図6A,B,Eにおいては読み出しアドレスカウンタ下位2bitを示しており、図6C,Dにおいては読み出しアドレスカウンタ下位3bitを示している。
【0059】
図5の例では、周波数比は5:4であり、ブランクアドレスBL_Pは“1”であるので、例えば、読み出しアドレスカウンタ下位2bit RCNTが“2”である場合には、図6Aに示される変換テーブルによって、読み出しアドレス下位3bitとして“3”が出力されるようになる。
【0060】
この変換テーブルは、RBLNK信号が“1”となった時の書き込みアドレスを読み出しアドレスとしないように与えられている。これにより、書き込み側のブランクデータが、読み出し側で読み出されないようになり、書き込み側の位相に対して読み出し側の位相を簡単に確定させることができる。
【0061】
また、図5に示されるように、読み出しアドレス変換部106は、PLL回路104の位相比較器に入力される、読み出しアドレスカウンタ113の読み出しアドレスカウンタ上位の位相を反転したものを、読み出しアドレス114の読み出しアドレス上位として出力する。これにより、書き込みアドレスと読み出しアドレスとが重ならないように制御される。
【0062】
[クロック乗せ換え処理]
ここで、図7のフローチャートを参照して、クロック乗せ換え回路100のクロック乗せ換え処理について説明する。
【0063】
ステップS11において、書き込みアドレス制御部102は、書き込みクロックRCK_Bに基づいて、書き込みアドレス111を生成する。
【0064】
ステップS12において、ブランクアドレス検出部105は、書き込みアドレス111とRBLNK信号とに基づいてブランクアドレスを検出し、ブランクアドレス112として出力する。
【0065】
ステップS13において、ブランクアドレス検出部105からのブランクアドレス112と、読み出しアドレスカウンタ103によって出力される読み出しアドレスカウンタ113とに基づいて、ブランクアドレスを除いた書き込みアドレス111を、読み出しアドレス114に変換する。
【0066】
以上の構成および処理によれば、RBLNK信号がPLL回路の動作に影響を及ぼすことなく、かつ、書き込みアドレスと読み出しアドレスとが重ならないようにすることができるようになるので、より安定してクロックの乗せ換えを行うことが可能となる。
【0067】
<3.本技術を適用したクロック乗せ換え回路の具体的な構成例>
[クロック乗せ換え回路の具体的な構成例]
図8は、本技術を適用したクロック乗せ換え回路の具体的な構成例を示す図である。
【0068】
図8のクロック乗せ換え回路200は、2ポートRAM201、PLL回路202、ブランクアドレス検出部203、および読み出しアドレス変換部204から構成される。
【0069】
図8のクロック乗せ換え回路200の2ポートRAM201、ブランクアドレス検出部203、および読み出しアドレス変換部204は、それぞれ、図4のクロック乗せ換え回路100の2ポートRAM101、ブランクアドレス検出部105、および読み出しアドレス変換部106に対応し、同様の機能および構成を有するので、その詳細な説明は省略する。
【0070】
また、図8のクロック乗せ換え回路200のPLL回路202は、図4のクロック乗せ換え回路100の書き込みアドレス制御部102、読み出しアドレスカウンタ103、およびPLL回路104に対応する。
【0071】
PLL回路202は、分周器211,212、位相比較器213、電圧制御発振器(VCO:Voltage Controlled Oscillator)214、分周器215,216、および反転器217を備える。
【0072】
分周器211は、入力された信号の周波数を1/5分周し、分周器212は、入力された信号の周波数を1/2分周する。位相比較器213は、入力された2つの信号の位相差を電圧に変換し出力する。VCO214は、入力された信号の電圧に応じて出力する信号の周波数を制御する。分周器215は、入力された信号の周波数を1/4分周し、分周器216は、入力された信号の周波数を1/2分周する。反転器217は、入力された信号を反転して出力する。
【0073】
なお、図8においても、読み出しクロックRCK_Aは、書き込みクロックRCK_Bの周波数の4/5倍の周波数で出力される。すなわち、書き込みクロックRCK_Bの周波数と、読み出しクロックRCK_Aの周波数との比(周波数比)は、5:4とされる。
【0074】
ここで、図8,9を参照して、クロック乗せ換え回路200の動作について説明する。
【0075】
入力データRDB1乃至RDB6は、書き込みクロックRCK_Bに同期して、2ポートRAM201に書き込まれる。入力データRDB1乃至RDB6には、書き込みクロックRCK_Bの5クロックに1回、ブランクデータBLNK_DATAが含まれ、そのブランクデータBLNK_DATAの時間的な位置は、RBLNK信号によって特定される。
【0076】
分周器211は、書き込みクロックRCK_Bの周波数を1/5分周した周波数でカウントし、書き込みアドレスWA[2:0]を出力する。なお、WA[2:0]は、書き込みアドレスWAの0bit乃至2bitの信号であることを示しており、以下、同様の表記もこれに従うものとする。
【0077】
分周器212は、分周器211からの書き込みアドレスWA[2:0]を1/2分周し、書き込みアドレスWA[3]として出力する。書き込みアドレスWA[3]は、2ポートRAM201および位相比較器213に入力される。
【0078】
このようにして、書き込みアドレスWA[3]は、書き込みアドレスの上位bitとして、書き込みアドレスWA[2:0]は、書き込みアドレスの下位bitとして、2ポートRAM201に入力される。
【0079】
ブランクアドレス検出部203は、RBLNK信号によって特定されるブランクデータBLNK_DATAの位置に対応する書き込みアドレスWA[2:0]をラッチすることで、ブランクアドレス(図9の例では、“2”)を検出し、ブランクアドレス信号BL_Pを出力する。図9に示されるように、ブランクアドレス信号BL_Pは時間に対して変化しない。
【0080】
さて、VCO214は、位相比較器213の出力の電圧に応じた周波数の信号を出力する。分周器215は、VCO214の出力の周波数を1/4分周した周波数でカウントし、読み出しアドレスカウンタ信号RCNT[1:0]を出力する。分周器216は、分周器215からの読み出しアドレスカウンタ信号RCNT[1:0]を1/2分周し、読み出しアドレスカウンタ信号RCNT[2]として出力する。反転器217は、分周器216からの読み出しアドレスカウンタ信号RCNT[2]を反転して、読み出しアドレスRA[3]として、2ポートRAM201に入力する。
【0081】
このようにして、PLL回路202は、書き込みクロックRCK_Bの4/5倍の周波数の読み出しクロックRCK_Aを出力するようになる。
【0082】
2ポートRAM201の書き込み側においては、ブランクデータBLNK_DATAを含む入力データRDB1乃至RDB6が書き込まれるが、読み出し側においては、ブランクデータBLNK_DATAが読み出されないようにする必要がある。
【0083】
そこで、読み出しアドレス変換部204は、ブランクアドレス信号BL_Pおよび読み出しアドレスカウンタ信号RCNT[1:0]に基づいて、ブランクアドレスを含まない読み出しアドレスRA[2:0]を生成し、2ポートRAM201に入力する。
【0084】
具体的には、読み出しアドレス変換部204は、図6Aに示された変換テーブルを用いて、例えば、ブランクアドレス信号BL_Pが“2”の場合、読み出しアドレスカウンタ信号RCNT[1:0]が0,1,2,3と変化したときには、“2”を含まない、0,1,3,4を読み出しアドレスRA[2:0]として出力する。
【0085】
このようにして、読み出しアドレスRA[3]は、読み出しアドレスの上位bitとして、読み出しアドレスRA[2:0]は、読み出しアドレスの下位bitとして、2ポートRAM201に入力される。
【0086】
また、反転器217によって、分周器216からの読み出しアドレスカウンタ信号RCNT[2]が反転されて、読み出しアドレスRA[3]として、2ポートRAM201に入力されるため、PLL回路202によって、書き込み側の最上位アドレスである書き込みアドレスWA[3]と、読み出し側の最上位アドレスである読み出しアドレスRA[3]とは、互いの位相距離が最長となるように制御される。また、PLL回路202は、書き込みクロックRCK_Bおよび読み出しクロックRCK_Aの分周だけで動作し、位相比較器213に入力される信号は、シリアル伝送信号として伝送されるRBLNK信号の伝送エラーの影響を受けないので、安定した読み出しクロックRCK_Aが出力されるようになる。
【0087】
また、以上の動作によれば、入力データRDB1乃至RDB6は、ブランクアドレス信号BL_Pの値によって、読み出しクロックRCK_Aを5分割した単位で、その遅延量(位相)が決定され、出力データRDA1乃至RDA6として読み出されるようになる。
【0088】
図10は、ブランクアドレス信号BL_Pの値に応じた出力データの遅延量について説明する図である。
【0089】
図10においては、上から順番に、ブランクアドレス信号BL_Pの値が4である場合、3である場合、2である場合、1である場合、0である場合の出力データの遅延量を示している。なお、ここでも、書き込みクロックRCK_Bと読み出しクロックRCK_Aの周波数比は、5:4とする。
【0090】
ブランクアドレス信号BL_Pの値が4である場合には、書き込みアドレスWA[2:0]に“0”が書き込まれてから、読み出しアドレスRA[2:0]から“0”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの4.0クロック分となる。
【0091】
ブランクアドレス信号BL_Pの値が3である場合には、書き込みアドレスWA[2:0]に“4”が書き込まれてから、読み出しアドレスRA[2:0]から“4”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの3.8クロック分となる。
【0092】
ブランクアドレス信号BL_Pの値が2である場合には、書き込みアドレスWA[2:0]に“3”が書き込まれてから、読み出しアドレスRA[2:0]に“3”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの3.6クロック分となる。
【0093】
ブランクアドレス信号BL_Pの値が1である場合には、書き込みアドレスWA[2:0]に“2”が書き込まれてから、読み出しアドレスRA[2:0]から“2”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの3.4クロック分となる。
【0094】
ブランクアドレス信号BL_Pの値が0である場合には、書き込みアドレスWA[2:0]に“1”が書き込まれてから、読み出しアドレスRA[2:0]から“1”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの3.2クロック分となる。
【0095】
図10に示されるように、PLL回路202によって、書き込みアドレスWA[3]の位相と読み出しアドレスRA[3]の位相とが同期されていれば、遅延量Delayは、ブランクアドレス信号BL_Pの値によって常に一定に保たれるようになる。
【0096】
また、PLL回路202を含めて、クロック乗せ換え回路200全体が再起動されるような場合であっても、遅延量Delayのばらつきは、読み出しクロックRCK_Aの0.8クロック以内に収まり、0.2クロックの精度で遅延量Delayを推定することが可能となる。
【0097】
なお、以上においては、書き込みクロックRCK_Bと読み出しクロックRCK_Aの周波数比が5:4である場合のクロックの乗せ換えについて説明したが、書き込みクロックRCK_Bの周波数が読み出しクロックRCK_Aの周波数より高く、その周波数比が簡単な整数比で表わされる場合には、本技術を適用することが可能である。
【0098】
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術
の要旨を逸脱しない範囲において種々の変更が可能である。
【0099】
さらに、本技術は以下のような構成をとることができる。
(1) 第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路において、
独立して書き込みと読み出しが可能な2ポートRAMと、
前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御する書き込みアドレス制御部と、
前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出するブランクアドレス検出部と、
前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する読み出しアドレス変換部と
を備えるクロック乗せ換え回路。
(2) 前記書き込みアドレスの上位ビットと前記読み出しアドレスの上位ビットの位相を同期させる位相同期回路をさらに備え、
前記読み出しアドレス変換部は、前記書き込みアドレスの上位ビットの位相に同期した前記読み出しアドレスの上位ビットの位相を反転する
(2)に記載のクロック乗せ換え回路。
(3) 前記第1のクロックの周波数は、前記第2のクロックの周波数より高く、前記第1のクロックの周波数と前記第2のクロックの周波数との比は、整数比で表される
(1)または(2)に記載のクロック乗せ換え回路。
(4) 前記読み出しアドレス変換部は、前記整数比に応じて、前記ブランクアドレスと前記読み出しアドレスとを対応づけたテーブルに基づいて、前記書き込みアドレスを前記読み出しアドレスに変換する
(3)に記載のクロック乗せ換え回路。
(5) 第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路であって、独立して書き込みと読み出しが可能な2ポートRAMを備えるクロック乗せ換え回路のクロック乗せ換え方法において、
前記クロック乗せ換え回路が、
前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御し、
前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出し、
前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する
ステップを含むクロック乗せ換え方法。
【符号の説明】
【0100】
101 2ポートRAM, 102 書き込みアドレス制御部, 103 読み出しアドレスカウンタ, 104 PLL回路, 105 ブランクアドレス検出部, 106 読み出しアドレス変換部
【技術分野】
【0001】
本技術は、クロック乗せ換え回路およびクロック乗せ換え方法に関し、特に、より安定してクロックの乗せ換えを行うことができるようにするクロック乗せ換え回路およびクロック乗せ換え方法に関する。
【背景技術】
【0002】
従来、あるクロックに同期した入力データを、異なるクロックに同期した出力データとして出力するクロック乗せ換え回路がある。クロック乗せ換え回路においては、書き込みと読み出しが可能な2ポートRAM(Random Access Memory)における書き込みアドレスと読み出しアドレスの位相を比較して、これらが競合しないように書き込みアドレスと読み出しアドレスとを制御することが行われている。
【0003】
例えば、書き込みフレームパルス信号に基づいて、書き込みアドレスを制御するとともに、書き込みフレームパルス信号とは異なる位相の読み出しフレームパルス信号に基づいて、読み出しアドレスを制御するようにしたクロック乗せ換え回路がある(例えば、特許文献1参照)。
【0004】
また、書き込みアドレスと読み出しアドレスの位相の接近を監視し、所定の距離になると、書き込みアドレスと読み出しアドレスとを、ある距離をもって初期化するようにしたクロック乗せ換え回路がある(例えば、特許文献2参照)。
【0005】
一方で、高次伝送フレームのデスタッフ処理において、FIFO(First In First Out)メモリの書き込みアドレスの位相と読み出しアドレスの位相とを、PLL(Phase-Locked Loop)回路の位相比較器により比較することで、書き込みアドレスと読み出しアドレスを適切に制御するようにした光信号伝送システムが提案されている(例えば、特許文献3参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−140619号公報
【特許文献2】特開2009−218885号公報
【特許文献3】特開2008−148250号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1においては、書き込みフレームパルス信号の位相と読み出しフレームパルス信号に位相とが重ならないことが前提とされているものの、これらの位相が重ならないように設定する手段については開示されておらず、実際に、安定してクロックの乗せ換えを行うことはできない。
【0008】
また、特許文献2の技術では、書き込みアドレスと読み出しアドレスの位相が接近した状態で安定動作している場合でも、クロックの揺らぎによって書き込みアドレスと読み出しアドレスが初期化される可能性があり、クロックの乗せ換えにおけるデータの正当性が保証されない。
【0009】
一方、特許文献3の高次伝送フレームのデスタッフ処理においては、デスタッフの頻度が小さいため、デスタッフによりPLL回路のクロックに変化が生じた場合でも、その変化は軽微であるので、PLL回路の動作には影響しない。しかしながら、特許文献3の技術をクロック乗せ換え回路に適用した場合、書き込みアドレスと読み出しアドレスの位相を制御する位相制御情報の出現の頻度が、デスタッフの頻度より大きくなるため、位相制御情報に誤りが生じた場合、PLL回路の動作に影響を及ぼしてしまう。これにより、PLL回路において再引き込みが行われ、PLL回路の出力クロックが不安定になり、後段のシステムにも影響を及ぼす恐れがある。
【0010】
本技術は、このような状況に鑑みてなされたものであり、より安定してクロックの乗せ換えを行うことができるようにするものである。
【課題を解決するための手段】
【0011】
本技術の一側面のクロック乗せ換え回路は、第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路であって、独立して書き込みと読み出しが可能な2ポートRAMと、前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御する書き込みアドレス制御部と、前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出するブランクアドレス検出部と、前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する読み出しアドレス変換部とを備える。
【0012】
前記クロック乗せ換え回路には、前記書き込みアドレスの上位ビットと前記読み出しアドレスの上位ビットの位相を同期させる位相同期回路をさらに設け、前記読み出しアドレス変換部には、前記書き込みアドレスの上位ビットの位相に同期した前記読み出しアドレスの上位ビットの位相を反転させることができる。
【0013】
前記第1のクロックの周波数は、前記第2のクロックの周波数より高く、前記第1のクロックの周波数と前記第2のクロックの周波数との比は、整数比で表されるようにすることができる。
【0014】
前記読み出しアドレス変換部には、前記整数比に応じて、前記ブランクアドレスと前記読み出しアドレスとを対応づけたテーブルに基づいて、前記書き込みアドレスを前記読み出しアドレスに変換させることができる。
【0015】
本技術の一側面のクロック乗せ換え方法は、第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路であって、独立して書き込みと読み出しが可能な2ポートRAMを備えるクロック乗せ換え回路のクロック乗せ換え方法であって、前記クロック乗せ換え回路が、前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御し、前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出し、前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換するステップを含む。
【0016】
本技術の一側面においては、2ポートRAMにおいて、入力データが書き込まれる書き込みアドレスが制御され、書き込みアドレスにおいて、入力データが書き込まれないブランクアドレスが検出され、2ポートRAMにおいて、ブランクアドレス以外の書き込みアドレスが、出力データが読み出される読み出しアドレスに変換される。
【発明の効果】
【0017】
本技術の一側面によれば、より安定してクロックの乗せ換えを行うことが可能となる。
【図面の簡単な説明】
【0018】
【図1】従来のクロック乗せ換え回路を備えるデータ伝送システムの構成例を示す図である。
【図2】データ多重方法について説明する図である。
【図3】データ分離方法について説明する図である。
【図4】本技術を適用したクロック乗せ換え回路の構成例を示す図である。
【図5】クロック乗せ換え回路の動作について説明する図である。
【図6】周波数比に応じた変換テーブルについて説明する図である。
【図7】クロック乗せ換え処理について説明するフローチャートである。
【図8】本技術を適用したクロック乗せ換え回路の具体的な構成例を示す図である。
【図9】クロック乗せ換え方法について説明する図である。
【図10】ブランクアドレスに応じた出力データの遅延量について説明する図である。
【発明を実施するための形態】
【0019】
以下、本技術の実施の形態について図を参照して説明する。なお、説明は以下の順序で行う。
1.従来のクロック乗せ換え回路
2.本技術を適用したクロック乗せ換え回路
3.本技術を適用したクロック乗せ換え回路の具体的な構成例
【0020】
<1.従来のクロック乗せ換え回路>
図1は、従来のクロック乗せ換え回路を備えるデータ伝送システムの構成例を示している。
【0021】
図1のデータ伝送システムにおいて、データ多重装置11は、データを多重化し、並直列変換部12に供給する。並直列変換部12は、データ多重装置11からの多重化されたデータを、パラレル−シリアル変換し、シリアル伝送信号として、直並列変換部13に送信する。直並列変換部13は、並直列変換部12から送信されてきたシリアル伝送信号を、シリアル−パラレル変換し、データ分離装置14に供給する。データ分離装置14は、直並列変換部13からのデータを分離する。
【0022】
データ多重装置11は、クロック乗せ換え回路として構成される。データ多重装置11においては、書き込みクロックCK_Aに同期した入力データDA1乃至DA6が、2ポートRAM(Random Access Memory)21に書き込まれ、読み出しクロックCK_Bに同期した出力データDB1乃至DB6が、2ポートRAM21から読み出される。
【0023】
書き込みアドレス制御部22は、2ポートRAM21において、入力データDA1乃至DA6が書き込まれる書き込みアドレスを制御する。読み出しアドレス制御部23は、2ポートRAM21において、出力データDB1乃至DB6が読み出される読み出しアドレスを制御する。PLL(Phase-Locked Loop)回路24は、書き込みクロックCK_Aに基づいて、読み出しクロックCK_Bを出力する。読み出しクロックCK_Bは、書き込みクロックCK_Aの周波数の5/4倍の周波数で出力される。すなわち、書き込みクロックCK_Aの周波数と、読み出しクロックCK_Bの周波数との比は、4:5とされる。
【0024】
図2は、データ多重装置11によるデータの多重方法について説明する図である。
【0025】
データ多重装置11のクロックの乗せ換えによれば、図2に示されるように、書き込みクロックCK_Aの4クロック分の入力データDA1乃至DA6は、読み出しクロックCK_Bの5クロック分の出力データDB1乃至DB6として読み出される。
【0026】
このとき、読み出しクロックCK_Bの5クロック分の出力データDB1乃至DB6には、図中黒塗りで示される空のデータ(以下、ブランクデータという)が読み出されるようになる。
【0027】
データ多重装置11は、このブランクデータの領域に新規データを格納し、データ分離装置14に伝送することができる。なお、読み出しアドレス制御部23によって、出力データにおけるブランクデータの位置を表すBLNK信号が生成され、出力データDB1乃至DB6とともに、データ分離装置14に伝送される。
【0028】
このように、データ多重装置11は、クロックの乗せ換えを行うことで、入力データに新規データを多重し、データ分離装置14に伝送することができる。
【0029】
データ分離装置14もまた、クロック乗せ換え回路として構成される。データ分離装置14においては、書き込みクロックRCK_Bに同期した入力データRDB1乃至RDB6(=DB1乃至DB6)が、2ポートRAM31に書き込まれ、読み出しクロックRCK_Aに同期した出力データRDA1乃至RDA6(=DA1乃至DA6)が、2ポートRAM31から読み出される。
【0030】
書き込みアドレス制御部32は、2ポートRAM31において、入力データRDB1乃至RDB6が書き込まれる書き込みアドレスを制御する。読み出しアドレス制御部33は、2ポートRAM31において、出力データRDA1乃至RDA6が読み出される読み出しアドレスを制御する。PLL回路34は、書き込みアドレスと読み出しアドレスに基づいて、読み出しクロックRCK_Aを出力する。読み出しクロックRCK_Aは、書き込みクロックRCK_Bの周波数の4/5倍の周波数で出力される。すなわち、書き込みクロックRCK_Bの周波数と、読み出しクロックRCK_Aの周波数との比は、5:4とされる。
【0031】
図3は、データ分離装置14によるデータの分離方法について説明する図である。
【0032】
データ分離装置14のクロックの乗せ換えによれば、図3に示されるように、書き込みクロックRCK_Bの5クロック分の入力データRDB1乃至RDB6は、読み出しクロックRCK_Aの4クロック分の出力データRDA1乃至RDA6として読み出される。
【0033】
まず、データ分離装置14においては、書き込みアドレス制御部32が、入力データにおけるブランクデータの位置を表すRBLNK信号と書き込みクロックRCK_Bとに基づいて、書き込みアドレス制御信号41(以下、書き込みアドレス41という)を生成する。書き込みアドレス41は、図3に示されるように、書き込みアドレス上位、書き込みアドレス下位2bit、および書き込みイネーブル信号を含む。
【0034】
また、読み出しアドレス制御部33は、PLL回路34によって出力される読み出しクロックRCK_Aに基づいて、読み出しアドレス制御信号42(以下、読み出しアドレス42という)を生成する。読み出しアドレス42は、図3に示されるように、読み出しアドレス上位および読み出しアドレス下位2bitを含む。
【0035】
ここで、データ分離装置14においては、読み出しアドレス制御部33が、書き込みアドレス上位(W)の位相を反転した読み出しアドレス上位(R)をPLL回路に入力することで、書き込みアドレスと読み出しアドレスとが重ならないように制御される。
【0036】
また、書き込みアドレス制御部32が、RBLNK信号に基づいて、書き込みアドレス下位2bitを“0”にリセットすることにより、RBLNK信号の位相と書き込みアドレスの位相を同期させるとともに、書き込みイネーブル信号をディスエーブルにすることにより、ブランクデータが2ポートRAM31に書き込まれないようにする。
【0037】
このように、データ分離装置14は、クロックの乗せ換えを行うことで、ブランクデータを含む入力データを、ブランクデータを含まない出力データとして出力するとともに、ブランクデータの領域に新規データが多重されている場合には、RBLNK信号に基づいて、入力データから新規データを分離することができる。
【0038】
しかしながら、RBLNK信号は、シリアル伝送信号として伝送されるため、伝送エラーが発生した場合、PLL回路34の動作に影響を及ぼし、PLL回路34から出力される読み出しクロックRCK_Aが不連続となるか、またはその周波数が変化し、後段のシステムにも影響を及ぼす恐れがある。
【0039】
そこで、以下においては、安定したクロックの乗せ換えを実現する、本技術を適用したクロック乗せ換え回路について説明する。
【0040】
<2.本技術を適用したクロック乗せ換え回路>
[クロック乗せ換え回路の構成例]
図4は、上述したデータ分離装置14に対応する、本技術を適用したクロック乗せ換え回路の構成例を示す図である。
【0041】
図4のクロック乗せ換え回路100は、2ポートRAM101、書き込みアドレス制御部102、読み出しアドレスカウンタ103、PLL回路104、ブランクアドレス検出部105、および読み出しアドレス変換部106から構成される。
【0042】
クロック乗せ換え回路100においては、書き込みクロックRCK_Bに同期した入力データRDB1乃至RDB6が、2ポートRAM101に書き込まれ、読み出しクロックRCK_Aに同期した出力データRDA1乃至RDA6が、2ポートRAM101から読み出される。
【0043】
書き込みアドレス制御部102は、2ポートRAM101において、入力データRDB1乃至RDB6が書き込まれる書き込みアドレスを制御する。読み出しアドレスカウンタ103は、PLL回路104によって出力される読み出しクロックRCK_Aに基づいてカウントする。
【0044】
PLL回路104は、書き込みアドレスと読み出しアドレスカウンタ103によるカウントに基づいて、読み出しクロックRCK_Aを出力する。ブランクアドレス検出部105は、書き込みアドレスと、入力データにおけるブランクデータの位置を表すRBLNK信号とに基づいて、書き込みアドレスにおいて入力データが書き込まれないアドレス(ブランクアドレス)を検出する。
【0045】
読み出しアドレス変換部106は、2ポートRAM101において、ブランクアドレス検出部105によって検出されたブランクアドレス以外の書き込みアドレスを、出力データRDA1乃至RDA6が読み出される読み出しアドレスに変換する。
【0046】
なお、読み出しクロックRCK_Aは、書き込みクロックRCK_Bの周波数の4/5倍の周波数で出力される。すなわち、書き込みクロックRCK_Bの周波数と、読み出しクロックRCK_Aの周波数との比は、5:4とされる。
【0047】
[クロック乗せ換え回路の動作]
次に、図5を参照して、クロック乗せ換え回路100の動作について説明する。
【0048】
クロック乗せ換え回路100のクロックの乗せ換えによれば、図5に示されるように、書き込みクロックRCK_Bの5クロック分の入力データRDB1乃至RDB6は、読み出しクロックRCK_Aの4クロック分の出力データRDA1乃至RDA6として読み出される。図5の入力データRDB1乃至RDB6においては、2クロック目がブランクデータとなっている。
【0049】
まず、クロック乗せ換え回路100においては、書き込みアドレス制御部102が、書き込みクロックRCK_Bに基づいて、書き込みアドレス制御信号111(以下、書き込みアドレス111という)を生成する。書き込みアドレス111は、図5に示されるように、書き込みアドレス上位、書き込みアドレス下位2bit、および書き込みイネーブル信号を含む。
【0050】
ブランクアドレス検出部105は、書き込みアドレス111と、入力データにおけるブランクデータの位置を表すRBLNK信号とに基づいてブランクアドレスを検出し、そのブランクアドレスを示すブランクアドレス信号112(以下、ブランクアドレス112という)を出力する。このブランクアドレス112は、クロック乗せ換え回路100のシステム立ち上げ時から変化しない(図5の例では“1”)。
【0051】
読み出しアドレスカウンタ103は、PLL回路104によって出力される読み出しクロックRCK_Aに基づいてカウントし、読み出しアドレスカウンタ信号113(以下、読み出しアドレスカウンタ113という)を出力する。読み出しアドレスカウンタ113は、図5に示されるように、読み出しアドレスカウンタ上位および読み出しアドレスカウンタ下位2bitを含む。
【0052】
読み出しアドレス変換部106は、ブランクアドレス検出部105によって出力されるブランクアドレス112と、読み出しアドレスカウンタ103によって出力される読み出しアドレスカウンタ113とに基づいて、読み出しアドレス制御信号114(以下、読み出しアドレス114という)を生成する。読み出しアドレス114は、図5に示されるように、読み出しアドレス上位および読み出しアドレス下位3bitを含む。
【0053】
ここで、クロック乗せ換え回路100において、書き込みアドレス制御部102は、RBLNK信号にかかわらず自走の状態で動作する。すなわち、RBLNK信号がPLL回路104の動作に影響を及ぼさないようになされている。
【0054】
そして、図5に示される書き込みアドレス111は、書き込みクロックRCK_Bの5クロックを1周期として出力され、書き込みアドレス上位がPLL回路104の位相比較器に入力されるようになる。なお、書き込みアドレス下位3bitは、図3のように、RBLNK信号に基づいて“0”にリセットされない。また、PLL回路104の位相比較器には、読み出しクロックRCK_Aの4クロックを1周期とした読み出しアドレスカウンタ113の読み出しアドレスカウンタ上位が入力されるようになる。これにより、書き込み側の上位bitと読み出し側の上位bitの位相の同期が実現されるようになる。
【0055】
また、クロック乗せ換え回路100において、ブランクアドレス検出部105は、図5に示されるようにRBLNK信号が“1”となったとき(すなわち、ブランクデータが書き込まれたとき)、書き込みアドレス下位3bit(図5の例では“1”)を保持し、ブランクアドレス112として出力する。そして、読み出しアドレス変換部106は、ブランクアドレス112および読み出しアドレスカウンタ下位2bitに読み出しアドレス下位3bitが対応付けられた変換テーブルに基づいて、読み出しアドレス下位3bitを出力する。
【0056】
図6は、この変換テーブルの例を示している。
【0057】
この変換テーブルは、書き込みクロックRCK_Bの周波数と読み出しクロックRCK_Aの周波数との比(以下、周波数比という)に応じて与えられている。具体的には、図6Aは、周波数比が5:4の場合の変換テーブルを示しており、図6Bは、周波数比が6:4の場合の変換テーブルを示しており、図6Cは、周波数比が6:5の場合の変換テーブルを示している。また、図6Dは、周波数比が7:5の場合の変換テーブルを示しており、図6Eは、周波数比が7:4の場合の変換テーブルを示している。
【0058】
なお、図6において、BL_Pは、ブランクアドレスを示しており、RCNTは、図6A,B,Eにおいては読み出しアドレスカウンタ下位2bitを示しており、図6C,Dにおいては読み出しアドレスカウンタ下位3bitを示している。
【0059】
図5の例では、周波数比は5:4であり、ブランクアドレスBL_Pは“1”であるので、例えば、読み出しアドレスカウンタ下位2bit RCNTが“2”である場合には、図6Aに示される変換テーブルによって、読み出しアドレス下位3bitとして“3”が出力されるようになる。
【0060】
この変換テーブルは、RBLNK信号が“1”となった時の書き込みアドレスを読み出しアドレスとしないように与えられている。これにより、書き込み側のブランクデータが、読み出し側で読み出されないようになり、書き込み側の位相に対して読み出し側の位相を簡単に確定させることができる。
【0061】
また、図5に示されるように、読み出しアドレス変換部106は、PLL回路104の位相比較器に入力される、読み出しアドレスカウンタ113の読み出しアドレスカウンタ上位の位相を反転したものを、読み出しアドレス114の読み出しアドレス上位として出力する。これにより、書き込みアドレスと読み出しアドレスとが重ならないように制御される。
【0062】
[クロック乗せ換え処理]
ここで、図7のフローチャートを参照して、クロック乗せ換え回路100のクロック乗せ換え処理について説明する。
【0063】
ステップS11において、書き込みアドレス制御部102は、書き込みクロックRCK_Bに基づいて、書き込みアドレス111を生成する。
【0064】
ステップS12において、ブランクアドレス検出部105は、書き込みアドレス111とRBLNK信号とに基づいてブランクアドレスを検出し、ブランクアドレス112として出力する。
【0065】
ステップS13において、ブランクアドレス検出部105からのブランクアドレス112と、読み出しアドレスカウンタ103によって出力される読み出しアドレスカウンタ113とに基づいて、ブランクアドレスを除いた書き込みアドレス111を、読み出しアドレス114に変換する。
【0066】
以上の構成および処理によれば、RBLNK信号がPLL回路の動作に影響を及ぼすことなく、かつ、書き込みアドレスと読み出しアドレスとが重ならないようにすることができるようになるので、より安定してクロックの乗せ換えを行うことが可能となる。
【0067】
<3.本技術を適用したクロック乗せ換え回路の具体的な構成例>
[クロック乗せ換え回路の具体的な構成例]
図8は、本技術を適用したクロック乗せ換え回路の具体的な構成例を示す図である。
【0068】
図8のクロック乗せ換え回路200は、2ポートRAM201、PLL回路202、ブランクアドレス検出部203、および読み出しアドレス変換部204から構成される。
【0069】
図8のクロック乗せ換え回路200の2ポートRAM201、ブランクアドレス検出部203、および読み出しアドレス変換部204は、それぞれ、図4のクロック乗せ換え回路100の2ポートRAM101、ブランクアドレス検出部105、および読み出しアドレス変換部106に対応し、同様の機能および構成を有するので、その詳細な説明は省略する。
【0070】
また、図8のクロック乗せ換え回路200のPLL回路202は、図4のクロック乗せ換え回路100の書き込みアドレス制御部102、読み出しアドレスカウンタ103、およびPLL回路104に対応する。
【0071】
PLL回路202は、分周器211,212、位相比較器213、電圧制御発振器(VCO:Voltage Controlled Oscillator)214、分周器215,216、および反転器217を備える。
【0072】
分周器211は、入力された信号の周波数を1/5分周し、分周器212は、入力された信号の周波数を1/2分周する。位相比較器213は、入力された2つの信号の位相差を電圧に変換し出力する。VCO214は、入力された信号の電圧に応じて出力する信号の周波数を制御する。分周器215は、入力された信号の周波数を1/4分周し、分周器216は、入力された信号の周波数を1/2分周する。反転器217は、入力された信号を反転して出力する。
【0073】
なお、図8においても、読み出しクロックRCK_Aは、書き込みクロックRCK_Bの周波数の4/5倍の周波数で出力される。すなわち、書き込みクロックRCK_Bの周波数と、読み出しクロックRCK_Aの周波数との比(周波数比)は、5:4とされる。
【0074】
ここで、図8,9を参照して、クロック乗せ換え回路200の動作について説明する。
【0075】
入力データRDB1乃至RDB6は、書き込みクロックRCK_Bに同期して、2ポートRAM201に書き込まれる。入力データRDB1乃至RDB6には、書き込みクロックRCK_Bの5クロックに1回、ブランクデータBLNK_DATAが含まれ、そのブランクデータBLNK_DATAの時間的な位置は、RBLNK信号によって特定される。
【0076】
分周器211は、書き込みクロックRCK_Bの周波数を1/5分周した周波数でカウントし、書き込みアドレスWA[2:0]を出力する。なお、WA[2:0]は、書き込みアドレスWAの0bit乃至2bitの信号であることを示しており、以下、同様の表記もこれに従うものとする。
【0077】
分周器212は、分周器211からの書き込みアドレスWA[2:0]を1/2分周し、書き込みアドレスWA[3]として出力する。書き込みアドレスWA[3]は、2ポートRAM201および位相比較器213に入力される。
【0078】
このようにして、書き込みアドレスWA[3]は、書き込みアドレスの上位bitとして、書き込みアドレスWA[2:0]は、書き込みアドレスの下位bitとして、2ポートRAM201に入力される。
【0079】
ブランクアドレス検出部203は、RBLNK信号によって特定されるブランクデータBLNK_DATAの位置に対応する書き込みアドレスWA[2:0]をラッチすることで、ブランクアドレス(図9の例では、“2”)を検出し、ブランクアドレス信号BL_Pを出力する。図9に示されるように、ブランクアドレス信号BL_Pは時間に対して変化しない。
【0080】
さて、VCO214は、位相比較器213の出力の電圧に応じた周波数の信号を出力する。分周器215は、VCO214の出力の周波数を1/4分周した周波数でカウントし、読み出しアドレスカウンタ信号RCNT[1:0]を出力する。分周器216は、分周器215からの読み出しアドレスカウンタ信号RCNT[1:0]を1/2分周し、読み出しアドレスカウンタ信号RCNT[2]として出力する。反転器217は、分周器216からの読み出しアドレスカウンタ信号RCNT[2]を反転して、読み出しアドレスRA[3]として、2ポートRAM201に入力する。
【0081】
このようにして、PLL回路202は、書き込みクロックRCK_Bの4/5倍の周波数の読み出しクロックRCK_Aを出力するようになる。
【0082】
2ポートRAM201の書き込み側においては、ブランクデータBLNK_DATAを含む入力データRDB1乃至RDB6が書き込まれるが、読み出し側においては、ブランクデータBLNK_DATAが読み出されないようにする必要がある。
【0083】
そこで、読み出しアドレス変換部204は、ブランクアドレス信号BL_Pおよび読み出しアドレスカウンタ信号RCNT[1:0]に基づいて、ブランクアドレスを含まない読み出しアドレスRA[2:0]を生成し、2ポートRAM201に入力する。
【0084】
具体的には、読み出しアドレス変換部204は、図6Aに示された変換テーブルを用いて、例えば、ブランクアドレス信号BL_Pが“2”の場合、読み出しアドレスカウンタ信号RCNT[1:0]が0,1,2,3と変化したときには、“2”を含まない、0,1,3,4を読み出しアドレスRA[2:0]として出力する。
【0085】
このようにして、読み出しアドレスRA[3]は、読み出しアドレスの上位bitとして、読み出しアドレスRA[2:0]は、読み出しアドレスの下位bitとして、2ポートRAM201に入力される。
【0086】
また、反転器217によって、分周器216からの読み出しアドレスカウンタ信号RCNT[2]が反転されて、読み出しアドレスRA[3]として、2ポートRAM201に入力されるため、PLL回路202によって、書き込み側の最上位アドレスである書き込みアドレスWA[3]と、読み出し側の最上位アドレスである読み出しアドレスRA[3]とは、互いの位相距離が最長となるように制御される。また、PLL回路202は、書き込みクロックRCK_Bおよび読み出しクロックRCK_Aの分周だけで動作し、位相比較器213に入力される信号は、シリアル伝送信号として伝送されるRBLNK信号の伝送エラーの影響を受けないので、安定した読み出しクロックRCK_Aが出力されるようになる。
【0087】
また、以上の動作によれば、入力データRDB1乃至RDB6は、ブランクアドレス信号BL_Pの値によって、読み出しクロックRCK_Aを5分割した単位で、その遅延量(位相)が決定され、出力データRDA1乃至RDA6として読み出されるようになる。
【0088】
図10は、ブランクアドレス信号BL_Pの値に応じた出力データの遅延量について説明する図である。
【0089】
図10においては、上から順番に、ブランクアドレス信号BL_Pの値が4である場合、3である場合、2である場合、1である場合、0である場合の出力データの遅延量を示している。なお、ここでも、書き込みクロックRCK_Bと読み出しクロックRCK_Aの周波数比は、5:4とする。
【0090】
ブランクアドレス信号BL_Pの値が4である場合には、書き込みアドレスWA[2:0]に“0”が書き込まれてから、読み出しアドレスRA[2:0]から“0”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの4.0クロック分となる。
【0091】
ブランクアドレス信号BL_Pの値が3である場合には、書き込みアドレスWA[2:0]に“4”が書き込まれてから、読み出しアドレスRA[2:0]から“4”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの3.8クロック分となる。
【0092】
ブランクアドレス信号BL_Pの値が2である場合には、書き込みアドレスWA[2:0]に“3”が書き込まれてから、読み出しアドレスRA[2:0]に“3”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの3.6クロック分となる。
【0093】
ブランクアドレス信号BL_Pの値が1である場合には、書き込みアドレスWA[2:0]に“2”が書き込まれてから、読み出しアドレスRA[2:0]から“2”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの3.4クロック分となる。
【0094】
ブランクアドレス信号BL_Pの値が0である場合には、書き込みアドレスWA[2:0]に“1”が書き込まれてから、読み出しアドレスRA[2:0]から“1”が読み出されるまでの遅延量Delayは、読み出しクロックRCK_Aの3.2クロック分となる。
【0095】
図10に示されるように、PLL回路202によって、書き込みアドレスWA[3]の位相と読み出しアドレスRA[3]の位相とが同期されていれば、遅延量Delayは、ブランクアドレス信号BL_Pの値によって常に一定に保たれるようになる。
【0096】
また、PLL回路202を含めて、クロック乗せ換え回路200全体が再起動されるような場合であっても、遅延量Delayのばらつきは、読み出しクロックRCK_Aの0.8クロック以内に収まり、0.2クロックの精度で遅延量Delayを推定することが可能となる。
【0097】
なお、以上においては、書き込みクロックRCK_Bと読み出しクロックRCK_Aの周波数比が5:4である場合のクロックの乗せ換えについて説明したが、書き込みクロックRCK_Bの周波数が読み出しクロックRCK_Aの周波数より高く、その周波数比が簡単な整数比で表わされる場合には、本技術を適用することが可能である。
【0098】
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術
の要旨を逸脱しない範囲において種々の変更が可能である。
【0099】
さらに、本技術は以下のような構成をとることができる。
(1) 第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路において、
独立して書き込みと読み出しが可能な2ポートRAMと、
前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御する書き込みアドレス制御部と、
前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出するブランクアドレス検出部と、
前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する読み出しアドレス変換部と
を備えるクロック乗せ換え回路。
(2) 前記書き込みアドレスの上位ビットと前記読み出しアドレスの上位ビットの位相を同期させる位相同期回路をさらに備え、
前記読み出しアドレス変換部は、前記書き込みアドレスの上位ビットの位相に同期した前記読み出しアドレスの上位ビットの位相を反転する
(2)に記載のクロック乗せ換え回路。
(3) 前記第1のクロックの周波数は、前記第2のクロックの周波数より高く、前記第1のクロックの周波数と前記第2のクロックの周波数との比は、整数比で表される
(1)または(2)に記載のクロック乗せ換え回路。
(4) 前記読み出しアドレス変換部は、前記整数比に応じて、前記ブランクアドレスと前記読み出しアドレスとを対応づけたテーブルに基づいて、前記書き込みアドレスを前記読み出しアドレスに変換する
(3)に記載のクロック乗せ換え回路。
(5) 第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路であって、独立して書き込みと読み出しが可能な2ポートRAMを備えるクロック乗せ換え回路のクロック乗せ換え方法において、
前記クロック乗せ換え回路が、
前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御し、
前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出し、
前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する
ステップを含むクロック乗せ換え方法。
【符号の説明】
【0100】
101 2ポートRAM, 102 書き込みアドレス制御部, 103 読み出しアドレスカウンタ, 104 PLL回路, 105 ブランクアドレス検出部, 106 読み出しアドレス変換部
【特許請求の範囲】
【請求項1】
第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路において、
独立して書き込みと読み出しが可能な2ポートRAMと、
前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御する書き込みアドレス制御部と、
前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出するブランクアドレス検出部と、
前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する読み出しアドレス変換部と
を備えるクロック乗せ換え回路。
【請求項2】
前記書き込みアドレスの上位ビットと前記読み出しアドレスの上位ビットの位相を同期させる位相同期回路をさらに備え、
前記読み出しアドレス変換部は、前記書き込みアドレスの上位ビットの位相に同期した前記読み出しアドレスの上位ビットの位相を反転する
請求項1に記載のクロック乗せ換え回路。
【請求項3】
前記第1のクロックの周波数は、前記第2のクロックの周波数より高く、前記第1のクロックの周波数と前記第2のクロックの周波数との比は、整数比で表される
請求項1に記載のクロック乗せ換え回路。
【請求項4】
前記読み出しアドレス変換部は、前記整数比に応じて、前記ブランクアドレスと前記読み出しアドレスとを対応づけたテーブルに基づいて、前記書き込みアドレスを前記読み出しアドレスに変換する
請求項3に記載のクロック乗せ換え回路。
【請求項5】
第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路であって、独立して書き込みと読み出しが可能な2ポートRAMを備えるクロック乗せ換え回路のクロック乗せ換え方法において、
前記クロック乗せ換え回路が、
前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御し、
前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出し、
前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する
ステップを含むクロック乗せ換え方法。
【請求項1】
第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路において、
独立して書き込みと読み出しが可能な2ポートRAMと、
前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御する書き込みアドレス制御部と、
前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出するブランクアドレス検出部と、
前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する読み出しアドレス変換部と
を備えるクロック乗せ換え回路。
【請求項2】
前記書き込みアドレスの上位ビットと前記読み出しアドレスの上位ビットの位相を同期させる位相同期回路をさらに備え、
前記読み出しアドレス変換部は、前記書き込みアドレスの上位ビットの位相に同期した前記読み出しアドレスの上位ビットの位相を反転する
請求項1に記載のクロック乗せ換え回路。
【請求項3】
前記第1のクロックの周波数は、前記第2のクロックの周波数より高く、前記第1のクロックの周波数と前記第2のクロックの周波数との比は、整数比で表される
請求項1に記載のクロック乗せ換え回路。
【請求項4】
前記読み出しアドレス変換部は、前記整数比に応じて、前記ブランクアドレスと前記読み出しアドレスとを対応づけたテーブルに基づいて、前記書き込みアドレスを前記読み出しアドレスに変換する
請求項3に記載のクロック乗せ換え回路。
【請求項5】
第1のクロックに同期した入力データを、第2のクロックに同期した出力データとして出力するクロック乗せ換え回路であって、独立して書き込みと読み出しが可能な2ポートRAMを備えるクロック乗せ換え回路のクロック乗せ換え方法において、
前記クロック乗せ換え回路が、
前記2ポートRAMにおいて、前記入力データが書き込まれる書き込みアドレスを制御し、
前記書き込みアドレスにおいて、前記入力データが書き込まれないブランクアドレスを検出し、
前記2ポートRAMにおいて、前記ブランクアドレス以外の前記書き込みアドレスを、前記出力データが読み出される読み出しアドレスに変換する
ステップを含むクロック乗せ換え方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2012−238992(P2012−238992A)
【公開日】平成24年12月6日(2012.12.6)
【国際特許分類】
【出願番号】特願2011−105992(P2011−105992)
【出願日】平成23年5月11日(2011.5.11)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成24年12月6日(2012.12.6)
【国際特許分類】
【出願日】平成23年5月11日(2011.5.11)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]