(57)【要約】【課題】回路規模を削減することが可能なクロック乗せ換え回路、方法及びプログラムを提供すること。【解決手段】クロック乗せ換え回路１１は、複数のデータを含む第１列データを所定のビット数毎に第１メモリ１１１１と第３メモリ１１１３に交互に書き込むことと並行して、複数の別のデータを含む第２列データを所定のビット数毎に第２メモリ１１１２と第４メモリ１１１４に交互に書き込む書込制御部１１２と、第１メモリ１１１１、第２メモリ１１１２、第３メモリ１１１３、及び第４メモリ１１１４のそれぞれから、所定のビット数を読み出す読出制御部１１３と、第１メモリ１１１１、第２メモリ１１１２、第３メモリ１１１３、第４メモリ１１１４の順番で、読み出したデータを出力する出力切替部１１４と、を備える。【選択図】図１
2020154738.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータを含む第１列データを所定のビット数毎に第１メモリと第３メモリに交互に書き込むことと並行して、複数の別のデータを含む第２列データを前記所定のビット数毎に第２メモリと第４メモリに交互に書き込む書込制御部と、
前記第１メモリ、前記第２メモリ、前記第３メモリ、及び前記第４メモリのそれぞれから、前記所定のビット数を読み出す読出制御部と、
前記第１メモリ、前記第２メモリ、前記第３メモリ、前記第４メモリの順番で、前記読み出したデータを出力する出力切替部と、
を備え、
前記所定のビット数を読み出す読出速度は、前記所定のビット数を書き込む書込速度と、列データの数と、を乗じて得た速度である、
クロック乗せ換え回路。
【請求項２】
前記書込制御部は、
前記第１列データの最初の前記所定のビット数のデータを前記第１メモリに書き込み、前記第１列データの次の前記所定のビット数のデータを前記第３メモリに書き込み、
前記第２列データの最初の前記所定のビット数のデータを前記第２メモリに書き込み、前記第２列データの次の前記所定のビット数のデータを前記第４メモリに書き込む、
請求項１に記載のクロック乗せ換え回路。
【請求項３】
前記第１メモリ、前記第２メモリ、前記第３メモリ、及び前記第４メモリのそれぞれは、２ポートＲＡＭ（Random Access Memory）である、
請求項１又は２に記載のクロック乗せ換え回路。
【請求項４】
前記書込速度は１００メガヘルツであり、前記読出速度は２００メガヘルツである、
請求項１乃至３のいずれか１つに記載のクロック乗せ換え回路。
【請求項５】
複数のデータを含む第１列データを所定のビット数毎に第１メモリと第３メモリに交互に書き込むことと並行して、複数の別のデータを含む第２列データを前記所定のビット数毎に第２メモリと第４メモリに交互に書き込む書込制御部と、
前記第１メモリ、前記第２メモリ、前記第３メモリ、及び前記第４メモリのそれぞれから、前記所定のビット数を読み出す読出制御部と、
前記第１メモリ、前記第２メモリ、前記第３メモリ、前記第４メモリの順番で、前記読み出したデータを出力する出力切替部と、
を備え、
前記所定のビット数を読み出す読出速度は、前記所定のビット数を書き込む書込速度と、全ての列データの前記所定のビット数のうちの有効なビット数の割合と、を乗じて得た速度である、
クロック乗せ換え回路。
【請求項６】
複数のデータを含む第１列データを所定のビット数毎に第１メモリと第３メモリに交互に書き込むことと並行して、複数の別のデータを含む第２列データを前記所定のビット数毎に第２メモリと第４メモリに交互に書き込むことと、
前記第１メモリ、前記第２メモリ、前記第３メモリ、及び前記第４メモリのそれぞれから、前記所定のビット数を読み出すことと、
前記第１メモリ、前記第２メモリ、前記第３メモリ、前記第４メモリの順番で、前記読み出したデータを出力することと、
前記所定のビット数を読み出す読出速度を、前記所定のビット数を書き込む書込速度と、列データの数と、を乗じて得た速度に設定することと、
を備える方法。
【請求項７】
複数のデータを含む第１列データを所定のビット数毎に第１メモリと第３メモリに交互に書き込むことと並行して、複数の別のデータを含む第２列データを前記所定のビット数毎に第２メモリと第４メモリに交互に書き込むことと、
前記第１メモリ、前記第２メモリ、前記第３メモリ、及び前記第４メモリのそれぞれから、前記所定のビット数を読み出すことと、
前記第１メモリ、前記第２メモリ、前記第３メモリ、前記第４メモリの順番で、前記読み出したデータを出力することと、
前記所定のビット数を読み出す読出速度を、前記所定のビット数を書き込む書込速度と、列データの数と、を乗じて得た速度に設定することと、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、クロック乗せ換え回路、方法及びプログラムに関するものであり、特に、回路規模を削減することが可能なクロック乗せ換え回路、方法及びプログラムに関する。
【背景技術】
【０００２】
クロック乗せ換え方法の一つとして２ポートＲＡＭ（Random Access Memory)にデータを格納することで書き込み処理と読み出し処理の時間を分け、処理の競合による読み出しデータ誤りを回避する回路が知られている。また、複数のデータをまとめたフレーム単位で並び替える方法の一つとして２ポートＲＡＭを２面構成で用い、書き込み側がアクセスしているＲＡＭと、読み出し側がアクセスしているＲＡＭと、を分けることにより書き込み及び読み出しを競合させずにアドレス制御を独立に行う回路が知られている。
【０００３】
特許文献１には、２ポートＲＡＭにおいて、入力データが書き込まれる書き込みアドレスを制御する書き込みアドレス制御部と、書き込みアドレスにおいて、入力データが書き込まれないブランクアドレスを検出するブランクアドレス検出部と、２ポートＲＡＭにおいて、ブランクアドレス以外の書き込みアドレスを、出力データが読み出される読み出しアドレスに変換する読み出しアドレス変換部と、を備えた２ポートＲＡＭが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２３８９９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述のようなクロック乗せ換え回路においては、例えば、特許文献１に示すように、アドレス変換部が必要であり、回路規模を削減することが難しいという課題があった。
【０００６】
本開示の目的は、上述した課題を解決するクロック乗せ換え回路、方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本開示に係るクロック乗せ換え回路は、
複数のデータを含む第１列データを所定のビット数毎に第１メモリと第３メモリに交互に書き込むことと並行して、複数の別のデータを含む第２列データを前記所定のビット数毎に第２メモリと第４メモリに交互に書き込む書込制御部と、
前記第１メモリ、前記第２メモリ、前記第３メモリ、及び前記第４メモリのそれぞれから、前記所定のビット数を読み出す読出制御部と、
前記第１メモリ、前記第２メモリ、前記第３メモリ、前記第４メモリの順番で、前記読み出したデータを出力する出力切替部と、
を備え、
前記所定のビット数を読み出す読出速度は、前記所定のビット数を書き込む書込速度と、列データの数と、を乗じて得た速度である。
【０００８】
本開示に係るクロック乗せ換え回路は、
複数のデータを含む第１列データを所定のビット数毎に第１メモリと第３メモリに交互に書き込むことと並行して、複数の別のデータを含む第２列データを前記所定のビット数毎に第２メモリと第４メモリに交互に書き込む書込制御部と、
前記第１メモリ、前記第２メモリ、前記第３メモリ、及び前記第４メモリのそれぞれから、前記所定のビット数を読み出す読出制御部と、
前記第１メモリ、前記第２メモリ、前記第３メモリ、前記第４メモリの順番で、前記読み出したデータを出力する出力切替部と、
を備え、
前記所定のビット数を読み出す読出速度は、前記所定のビット数を書き込む書込速度と、全ての列データの前記所定のビット数のうちの有効なビット数の割合と、を乗じて得た速度である。
【０００９】
本開示に係る方法は、
複数のデータを含む第１列データを所定のビット数毎に第１メモリと第３メモリに交互に書き込むことと並行して、複数の別のデータを含む第２列データを前記所定のビット数毎に第２メモリと第４メモリに交互に書き込むことと、
前記第１メモリ、前記第２メモリ、前記第３メモリ、及び前記第４メモリのそれぞれから、前記所定のビット数を読み出すことと、
前記第１メモリ、前記第２メモリ、前記第３メモリ、前記第４メモリの順番で、前記読み出したデータを出力することと、
前記所定のビット数を読み出す読出速度を、前記所定のビット数を書き込む書込速度と、列データの数と、を乗じて得た速度に設定することと、
を備える。
【００１０】
本開示に係るプログラムは、
複数のデータを含む第１列データを所定のビット数毎に第１メモリと第３メモリに交互に書き込むことと並行して、複数の別のデータを含む第２列データを前記所定のビット数毎に第２メモリと第４メモリに交互に書き込むことと、
前記第１メモリ、前記第２メモリ、前記第３メモリ、及び前記第４メモリのそれぞれから、前記所定のビット数を読み出すことと、
前記第１メモリ、前記第２メモリ、前記第３メモリ、前記第４メモリの順番で、前記読み出したデータを出力することと、
前記所定のビット数を読み出す読出速度を、前記所定のビット数を書き込む書込速度と、列データの数と、を乗じて得た速度に設定することと、
をコンピュータに実行させる。
【発明の効果】
【００１１】
本開示によれば、回路規模を削減することが可能なクロック乗せ換え回路、方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態に係るクロック乗せ換え回路を例示するブロック図である。
【図２】実施の形態に係るクロック乗せ換え回路を例示するブロック図である。
【図３】実施の形態に係るクロック乗せ換え回路の書込動作を例示するタイミングチャートである。
【図４】実施の形態に係るクロック乗せ換え回路の読出動作を例示するタイミングチャートである。
【図５】実施の形態に係るクロック乗せ換え回路の位相調整処理を例示するタイミングチャートである。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の実施の形態について説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明を省略する。
【００１４】
［実施の形態］
先ず、実施の形態に係るクロック乗せ換え回路の概要を説明する。
図１は、実施の形態に係るクロック乗せ換え回路を例示するブロック図である。
【００１５】
図１に示すように、クロック乗せ換え回路１１は、記憶部１１１と、書込制御部１１２と、読出制御部１１３と、出力切替部１１４と、を備える。記憶部１１１は、第１メモリ１１１１と第２メモリ１１１２と第３メモリ１１１３と第４メモリ１１１４とを有する。
【００１６】
書込制御部１１２は、複数のデータを含む第１列データを所定のビット数毎に第１メモリ１１１１と第３メモリ１１１３に交互に書き込む。書込制御部１１２は、これと並行して、複数の別のデータを含む第２列データを所定のビット数毎に第２メモリ１１１２と第４メモリ１１１４に交互に書き込む。
【００１７】
具体的には、書込制御部１１２は、第１列データの最初の所定のビット数のデータを第１メモリ１１１１に書き込み、第１列データの次の所定のビット数のデータを第３メモリ１１１３に書き込む。書込制御部１１２は、これと並行して、第２列データの最初の所定のビット数のデータを第２メモリ１１１２に書き込み、第２列データの次の所定のビット数のデータを第４メモリ１１１４に書き込む。
【００１８】
尚、所定のビット数のデータの時間的な幅をフレームと称する。よって、書込制御部１１２は、第１列データをフレーム毎（フレーム単位）に第１メモリ１１１１と第３メモリ１１１３に交互に書き込む。
【００１９】
読出制御部１１３は、第１メモリ１１１１、第２メモリ１１１２、第３メモリ１１１３、及び第４メモリ１１１４のそれぞれから、所定のビット数を読み出す。
【００２０】
出力切替部１１４は、第１メモリ１１１１、第２メモリ１１１２、第３メモリ１１１３、第４メモリ１１１４の順番で、読出制御部１１３が読み出したデータを出力データとして出力する。このとき、読出制御部１１３が所定のビット数を読み出す読出速度は、書込制御部１１２が所定のビット数を書き込む書込速度と、列データの数と、を乗じて得た速度である。
【００２１】
例えば、書込速度は１００メガヘルツの場合、読出速度は２００メガヘルツである、
【００２２】
次に、実施の形態に係るクロック乗せ換え回路の詳細を説明する。
図２は、実施の形態に係るクロック乗せ換え回路を例示するブロック図である。
【００２３】
図２に示すように、クロック乗せ換え回路１１は、パルスタイミング比較部１１５と位相信号生成部１１６と位相信号検出部１１７と位相比較部１１８とを備える。また、書込イネーブル生成部１１２１と書込アドレスカウンタ１１２２は、書込制御部１１２に含まれる。また、読出アドレスカウンタ１１３１は、読出制御部１１３に含まれる。
【００２４】
クロック乗せ換え回路１１は、第１列データ及び第２列データという２列で入力される列データを、第１メモリ１１１１から第４メモリ１１１４を用いて書込クロックから読出クロックに乗せ換える。
【００２５】
尚、第１メモリ１１１１、第２メモリ１１１２、第３メモリ１１１３、及び第４メモリ１１１４のそれぞれは、例えば、２ポートＲＡＭ（Random Access Memory）を使用する。
【００２６】
また、クロック乗せ換え回路１１は、動作中に書込処理と読出処理において、２ポートＲＡＭのアドレスが重ならない範囲に初期位相を設定する。
【００２７】
書込アドレスカウンタ１１２２は、（２ポートＲＡＭの深さ）の２倍の値を生成し、最上位ビットを除いた信号を書込アドレス信号ＷＡとして第１メモリ１１１１から第４メモリ１１１４に出力する。
【００２８】
最上位ビットの信号により、第１メモリ１１１１と第２メモリ１１１２、又は、第３メモリ１１１３と第４メモリ１１１４の書込イネーブル信号（ＷＥ１からＷＥ４）を切り替える。
【００２９】
書込イネーブル生成部１１２１は、書込アドレスカウンタ１１２２の値から、各メモリの書込イネーブル信号ＷＥ１から書込イネーブル信号ＷＥ４を生成する。
【００３０】
読出アドレスカウンタ１１３１は、（２ｐｏｒｔＲＡＭの深さ）の４倍の値を生成し、上位２ビットを除く信号を読出アドレス信号ＲＡとして第１メモリ１１１１から第４メモリ１１１４に接続する。
【００３１】
出力切替部１１４は、読出アドレスカウンタ１１３１の値に基づいて第１経路から第４経路を切り替えて出力する。
【００３２】
パルスタイミング比較部１１５は、入力フレームパルスの位相と書込アドレスカウンタ１１２２の位相とを比較し、書込アドレスカウンタ１１２２と読出アドレスカウンタ１１３１を初期化するための初期化信号Ｓ１を生成する。
【００３３】
書込アドレスカウンタ１１２２の値は、位相信号生成部１１６及び位相信号検出部１１７において同期クロックを書込クロックから読出クロックに乗せ換えた後、位相比較部１１８に位相信号の情報Ｓ２として出力される。
【００３４】
位相比較部１１８は、書込アドレス信号ＷＡと読出アドレス信号ＲＡの位相関係を監視する。位相比較部１１８は、位相関係が許容範囲を超えた場合、初期化信号Ｓ３を出力する。
【００３５】
次に、実施の形態に係るクロック乗せ換え回路の動作を説明する。
この例では、複数ビットであるＫ個のデータを、１フレームで２列（第１列データと第２列データ）入力し、クロック乗せ換えにより第１列データと第２列データを１フレームで出力することを説明する。ただし、Ｋは自然数とする。この例では、書込クロック（書込速度）は１００メガヘルツとなり、読出クロック（読出速度）は２００メガヘルツとなる。
【００３６】
図３は、実施の形態に係るクロック乗せ換え回路の書込動作を例示するタイミングチャートである。図３は、入力側（書込み側）のデータ処理を示す。
図４は、実施の形態に係るクロック乗せ換え回路の読出動作を例示するタイミングチャートである。図４は、出力側（読出し側）のデータ処理を示す。
図５は、実施の形態に係るクロック乗せ換え回路の位相調整処理を例示するタイミングチャートである。
【００３７】
図３及び図５に示すように、パルスタイミング比較部１１５は、起動後、最初の入力フレームパルスを検出した場合、書込アドレスカウンタ１１２２及び読出アドレスカウンタ１１３１を初期化するための初期化信号Ｓ１を出力する。読出アドレスカウンタ１１３１は、書込アドレスカウンタ１１２２の位相信号の情報Ｓ２に基づいて初期化される。
【００３８】
位相比較部１１８は、書込アドレスカウンタ１１２２の値と読出アドレスカウンタ１１３１の値とを比較し、設定された範囲を超えた場合、読出アドレスカウンタ１１３１を初期化する初期化信号Ｓ３を生成し、読出アドレスカウンタ１１３１に出力する。
【００３９】
書込イネーブル生成部１１２１は、書込アドレスカウンタ１１２２の最上位ビットが「０」の時、書込イネーブル信号ＷＥ１と書込イネーブル信号ＷＥ３をアサートする。そして、クロック乗せ換え回路１１は、第１列データを第１メモリ１１１１と第３メモリ１１１３に書き込む。
【００４０】
書込イネーブル生成部１１２１は、書込アドレスカウンタ１１２２の最上位ビットが「１」の時、書込イネーブル信号ＷＥ２と書込イネーブル信号ＷＥ４をアサートする。そして、クロック乗せ換え回路１１は、第２列データを第２メモリ１１１２と第４メモリ１１１４に書き込む。
【００４１】
クロック乗せ換え回路１１は、起動後、最初の入力フレームパルスを検出してから第１列データと第２列データの書き込みを開始する。
【００４２】
図４及び図５に示すように、出力切替部１１４は、読出アドレスカウンタ１１３１の上位２ビットの値から、第１メモリ１１１１から第４メモリ１１１４のうちのいずれかを選択する選択信号を生成する。出力切替部１１４は、第１メモリ１１１１、第２メモリ１１１２、第３メモリ１１１３及び第４メモリ１１１４から読み出したデータを選択信号に基づいて選択し、出力データとして出力する。
【００４３】
実施の形態に係るクロック乗せ換え回路１１は、複数の入力データをフレーム単位（フレーム毎）で並び替えてメモリに書き込むと共に、クロック乗せ換え処理を行い乗せ換え後の速度でデータを読み出して出力する。これにより、クロック乗せ換え回路１１の回路規模を削減することができる。
【００４４】
また、クロック乗せ換え回路１１の回路規模が削減され処理時間が短縮されるので、処理遅延を低減することができる。
【００４５】
尚、実施の形態では、入力する列データの数を２列として説明したが、これには限定されない。実施の形態は、入力する列データの数を３列以上としてもよい。
【００４６】
また、クロック乗せ換え前後のクロック周波数の比率は、１対２に限定されない。クロック乗せ換え回路１１が所定のビット数を読み出す読出速度を、所定のビット数を書き込む書込速度と、全ての列データの所定ビット数のうちの有効なビット数の割合と、を乗じて得た速度としてもよい。
【００４７】
具体的には、図２に示す第１列データのＮ個と、第２列データの前半の（Ｎ／２）個を有効なデータとする場合、書込クロックの周波数を１００メガヘルツとし、読出クロックの周波数を１５０メガヘルツとして有効なデータのみを乗せ換えてもよい。ただし、Ｎは２の倍数とする。
【００４８】
なお、上記の実施の形態では、本発明をハードウェアの構成として説明したが、本発明はこれに限定されるものではない。本発明は、各構成要素の処理を、ＣＰＵ（Central Processing Unit）にコンピュータプログラムを実行させることにより実現することも可能である。
【００４９】
上記の実施の形態において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実態のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（具体的にはフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（具体的には光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（具体的には、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ(Erasable PROM)）、フラッシュＲＯＭ、ＲＡＭ(Random Access Memory)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００５０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００５１】
１１…クロック乗せ換え回路
１１１…記憶部
１１１１…第１メモリ
１１１２…第２メモリ
１１１３…第３メモリ
１１１４…第４メモリ
１１２…書込制御部
１１２１…書込イネーブル生成部
１１２２…書込アドレスカウンタ
１１３…読出制御部
１１３１…読出アドレスカウンタ
１１４…出力切替部
１１５…パルスタイミング比較部
１１６…位相信号生成部
１１７…位相信号検出部
１１８…位相比較部
ＷＡ…書込アドレス信号
ＷＥ１、ＷＥ２、ＷＥ３、ＷＥ４…書込イネーブル信号
ＲＡ…読出アドレス信号
Ｓ１、Ｓ３…初期化信号
Ｓ２…位相信号の情報
【図１】
2020154738.tif 000003
【図２】
2020154738.tif 000004
【図３】
2020154738.tif 000005
【図４】
2020154738.tif 000006
【図５】
2020154738.tif 000007