(57)【要約】【課題】  より簡易な構成で、データとクロックとの位相の関係を適切に調整するための手段を提供する。【解決手段】  位相調整装置は、比較コード生成部と、演算部と、遅延部とを備える。比較コード生成部は、シリアル転送データに含まれる先頭コードの位相を進めた第１比較コードと、先頭コードの位相を遅らせた第２比較コードとをそれぞれ生成する。演算部は、先頭コードおよび第１比較コードの比較結果と、先頭コードおよび第２比較コードの比較結果とを用いて、シリアル転送データの位相の調整方向を求める。遅延部は、位相の調整方向に基づいて、シリアル転送データの遅延量を調整する。【選択図】  図１
2010176519.tif 000002
【特許請求の範囲】
【請求項１】
シリアル転送データに含まれる先頭コードの位相を進めた第１比較コードと、前記先頭コードの位相を遅らせた第２比較コードとをそれぞれ生成する比較コード生成部と、
前記先頭コードおよび前記第１比較コードの比較結果と、前記先頭コードおよび前記第２比較コードの比較結果とを用いて、前記シリアル転送データの位相の調整方向を求める演算部と、
前記位相の調整方向に基づいて、前記シリアル転送データの遅延量を調整する遅延部と、
を備えることを特徴とする位相調整装置。
【請求項２】
請求項１に記載の位相調整装置において、
前記シリアル転送データの通信回数、時間の経過、温度の変化量のいずれかに応じて、前記比較コード生成部を起動させる制御部をさらに備えることを特徴とする位相調整装置。
【請求項３】
請求項１または請求項２に記載の位相調整装置において、
前記遅延部は、前記シリアル転送データに含まれるデータのうち、前記先頭コードに続いて入力されるデータ領域の有効データが通過した後の期間に前記遅延量を調整することを特徴とする位相調整装置。
【請求項４】
請求項１から請求項３のいずれか１項に記載の位相調整装置において、
前記比較コード生成部は、前記先頭コードおよび前記第１比較コードの比較結果と、前記先頭コードおよび前記第２比較コードの比較結果とに基づいて、前記先頭コードに対する前記第１比較コードの位相のずれ幅と、前記先頭コードに対する前記第２比較コードの位相のずれ幅とを調整することを特徴とする位相調整装置。
【請求項５】
請求項１から請求項４のいずれか１項に記載の位相調整装置を備えることを特徴とするカメラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位相調整装置およびカメラに関する。
【背景技術】
【０００２】
近年、撮像素子の高画素化などに伴って、電子カメラなどの電子機器は、ディジタルデータの転送の高速化がより一層要求されている。かかる電子機器の設計では、伝送路のインピーダンスコントロール、等長配線、プリント基板等の材質の選定や、信号波形のシミュレーションなどによって、データの遅延のばらつきを抑制することでデータとクロックとの位相の関係を保っている。
【０００３】
また、データとクロックとの位相の関係は、電子機器の連続動作時の発熱や周辺回路の構成によっても変化することが知られている。この対策の一例として、特許文献１には、入力信号の電圧を判定する閾値を調整するとともに、位相の異なる２種類のクロックを用いてデータとクロックとの位相の関係を調整する回路の構成が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上記の特許文献１の技術では、電圧の判定閾値を決めることが実際には困難であり、また、クロックが高速化すると２種類のクロックの精度を保つことが困難となる点でなお改善の余地があった。
【０００５】
そこで、本発明は、より簡易な構成で、データとクロックとの位相の関係を適切に調整するための手段を提供することを目的とする。
【課題を解決するための手段】
【０００６】
一の態様に係る位相調整装置は、比較コード生成部と、演算部と、遅延部とを備える。比較コード生成部は、シリアル転送データに含まれる先頭コードの位相を進めた第１比較コードと、先頭コードの位相を遅らせた第２比較コードとをそれぞれ生成する。演算部は、先頭コードおよび第１比較コードの比較結果と、先頭コードおよび第２比較コードの比較結果とを用いて、シリアル転送データの位相の調整方向を求める。遅延部は、位相の調整方向に基づいて、シリアル転送データの遅延量を調整する。
【０００７】
上記の一の態様の位相調整装置は、シリアル転送データの転送回数、時間の経過、温度の変化量のいずれかに応じて、演算部を起動させる制御部をさらに備えていてもよい。
【０００８】
上記の一の態様において、遅延部は、シリアル転送データに含まれるデータのうち、先頭コードに続いて入力されるデータ領域の有効データが通過した後の期間に遅延量を調整してもよい。
【０００９】
上記の一の態様において、比較コード生成部は、先頭コードおよび第１比較コードの比較結果と、先頭コードおよび第２比較コードの比較結果とに基づいて、先頭コードに対する第１比較コードの位相のずれ幅と、先頭コードに対する第２比較コードの位相のずれ幅とを調整してもよい。
【００１０】
なお、上記の一の態様の位相調整装置を備えたカメラまたは電子機器も本発明の具体的態様として有効である。
【発明の効果】
【００１１】
本発明では、シリアル転送データの先頭コードの位相を前後にずらして第１比較コードおよび第２比較コードを生成する。そして、先頭コードおよび第１比較コードの比較結果と、先頭コードおよび第２比較コードの比較結果とに基づいて、シリアル転送データの遅延量を容易かつ適切に調整できる。
【図面の簡単な説明】
【００１２】
【図１】一の実施形態での位相調整装置の構成例を示す模式図
【図２】シリアル転送データのフォーマットの一例を示す図
【図３】一の実施形態における位相調整処理の動作例を示す流れ図
【図４】比較コード生成部の出力を説明する図
【図５】図３のＳ１１０での動作の説明図
【図６】図３のＳ１１２での動作の説明図
【発明を実施するための形態】
【００１３】
（位相調整装置の構成例）
図１は、一の実施形態での位相調整装置の構成例を示す模式図である。図１の位相調整装置は電子カメラに実装されるものであり、送信部１１と、遅延部１２と、比較コード生成部１３と、演算部１４と、ＣＰＵ１５と、電子カメラの温度を検出する温度センサ１６とを有している。送信部１１、遅延部１２、比較コード生成部１３、演算部１４および温度センサ１６は、それぞれＣＰＵ１５と接続されている。
【００１４】
送信部１１は、シリアル方式で転送されるデータパケット（シリアル転送データ）を後段の回路に出力する信号処理回路である。一の実施形態では、クロック信号の周期を５００ＭＨｚとし、１ＧｂｐｓのレートでＤＤＲ（Ｄｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ）方式によりディジタルのデータ信号を送信するものとする。この送信部１１の出力は遅延部１２と接続されている。
【００１５】
ここで、図２は、一の実施形態におけるシリアル転送データのフォーマットの一例を示す図である。一の実施形態でのシリアル転送データは、ヘッダ領域と、データ領域とを有している。
【００１６】
ヘッダ領域には、例えば、シリアル転送データの先頭を示す先頭コードや、データ領域のバイト数を示すデータなどが含まれる。また、データ領域には、シリアル転送の対象となる有効データ（画像データなど）と、データ領域のデータ長を調整するために付加されたパディングデータとが含まれている。
【００１７】
なお、一の実施形態での先頭コードは、１ワードのビット深度が１２ビットであって、「１」が１２回連続するワード「ＦＦＦ（ｈ）」と、「０」が１２回連続するワード「０００（ｈ）」とがそれぞれ交互に並ぶ４ワード分のデータ（「ＦＦＦ（ｈ），０００（ｈ），ＦＦＦ（ｈ），０００（ｈ）」）で構成されるものとする。
【００１８】
図１に戻って、遅延部１２は、複数段直列に接続された複数の遅延素子１２ａ（インバータなど）と、各々の遅延素子１２ａの出力と接続された複数のパス１２ｂと、上記の各パス１２ｂに接続されたセレクタ１２ｃとを有している。上記のセレクタ１２ｃは、ＣＰＵ１５の指示に応じていずれかのパス１２ｂを選択し、遅延部１２から出力されるシリアル転送データの遅延量を調整する。遅延部１２のセレクタ１２ｃの出力は、比較コード生成部１３に接続されている。なお、以下の説明では、遅延部１２での遅延調整値（遅延段数）を「Ｎ」と表記する。
【００１９】
比較コード生成部１３は、入力データに対して位相がそれぞれ前後にずれたデータを生成する１入力３出力の回路である。比較コード生成部１３は、それぞれ同じ構成の３つのプログラマブルな遅延回路１３ａ，１３ｂ，１３ｃを有している。一の実施形態では、各遅延回路１３ａ，１３ｂ，１３ｃの遅延量はそれぞれ同じ値（Ｎｓ）に設定される。また、遅延回路１３ａ，１３ｂ，１３ｃは、ＣＰＵ１５の指示に応じて、遅延量Ｎｓの値を変更することができる。
【００２０】
ここで、比較コード生成部１３の入力は遅延回路１３ａに接続されている。遅延回路１３ａの出力は、信号線Ｔｎと、遅延回路１３ｂの入力とに分岐している。遅延回路１３ｂの出力は、信号線Ｔ０と、遅延回路１３ｃの入力と分岐している。そして、遅延回路１３ｃの出力は、信号線Ｔｐに接続されている。したがって、信号線Ｔｎの出力は、遅延回路１３ｂを通過しないため、信号線Ｔ０の出力よりも位相が進む（図４参照）。また、信号線Ｔｐの出力は、遅延回路１３ｃをさらに通過するため、信号線Ｔ０の出力よりも位相が遅れる（図４参照）。なお、信号線Ｔｎ，Ｔ０，Ｔｐは、それぞれ演算部１４に接続されている。
【００２１】
また、上記の各遅延回路１３ａ，１３ｂ，１３ｃでの遅延量Ｎｓは、シリアル転送データのクロックに応じて適宜設定される。例えば、クロックが５００ＭＨｚのときには１周期が２ｎｓであるので、上記の遅延量Ｎｓの初期値は２００ｐｓ程度に設定される。なお、この場合、後述するＮおよびＮｓの１段階分の変動量は２０ｐｓ程度に設定される。
【００２２】
演算部１４は、信号線Ｔ０から出力される先頭コードと、信号線Ｔｐ，Ｔｎから出力される先頭コードとをそれぞれ比較し、シリアル転送データの位相の調整方向を求める回路である。この演算部１４は、先頭コードと後述の第１比較コードとの比較結果を示すフラグ「Ｔｎ＿ＥＲＲ」の状態と、先頭コードと後述の第２比較コードとの比較結果を示すフラグ「Ｔｐ＿ＥＲＲ」の状態とをそれぞれ保持するレジスタ（不図示）を有している。なお、演算部１４は、信号線Ｔ０からの入力を後段の回路（不図示）にそのまま出力する信号線を有している。
【００２３】
ＣＰＵ１５は、位相調整装置の統括的な制御を行うプロセッサである。このＣＰＵ１５は、例えば、送信部１１でのシリアル転送データの出力の制御や、後述する位相調整処理の開始判定や、セレクタ１２ｃに対するパス１２ｂの切り替え指示や、比較コード生成部１３の各遅延回路の調整指示などを実行する。
【００２４】
（位相調整装置の動作例）
次に、一の実施形態の位相調整装置の動作例を説明する。送信部１１から出力されるシリアル転送データは、遅延部１２、比較コード生成部１３および演算部１４をパイプライン式に通過し、後段の回路にそのまま出力される。なお、遅延部１２の遅延調整値Ｎは、予めクロックに対して同期調整された値が設定されているものとする。
【００２５】
また、ＣＰＵ１５は、上記の通常動作時において、シリアル転送データの転送回数、前回の位相調整処理（または起動時）からの時間、温度センサ１６の温度をそれぞれ監視する。そして、（１）シリアル転送データの転送回数が閾値を超えたとＣＰＵ１５が判定したとき、（２）前回の位相調整処理から一定時間が経過したとＣＰＵ１５が判定したとき、（３）検出される温度の変化量が閾値を超えたとＣＰＵ１５が判定したとき、のいずれかの場合において、ＣＰＵ１５は演算部１４を起動させて位相調整処理を開始する。
【００２６】
以下、図３の流れ図を参照しつつ、一の実施形態における位相調整処理の動作例を説明する。
【００２７】
ステップＳ１０１：演算部１４は、ＣＰＵ１５から位相調整処理の開始指示を受けると、初期化動作を実行する。Ｓ１０１での演算部１４は、フラグ「Ｔｎ＿ＥＲＲ」およびフラグ「Ｔｐ＿ＥＲＲ」をそれぞれ「０」にリセットする（Ｔｎ＿ＥＲＲ＝０，Ｔｐ＿ＥＲＲ＝０）。
【００２８】
そして、Ｓ１０１での演算部１４は、信号線Ｔｎ，Ｔ０，Ｔｐからそれぞれ出力されるシリアル転送データの信号値の監視を開始する。
【００２９】
ステップＳ１０２：演算部１４は、信号線Ｔｎ，Ｔ０，Ｔｐからシリアル転送データの先頭コードが入力されたか否かを判定する。一例として、演算部１４は、入力されるデータの２ワード分を参照し、「ＦＦＦ（ｈ），０００（ｈ）」の入力があったときに先頭コードが入力されたと判定する。
【００３０】
上記要件を満たす場合（ＹＥＳ側）には、Ｓ１０３に処理が移行する。一方、上記要件を満たさない場合（ＮＯ側）には、演算部１４は、シリアル転送データの先頭コードの入力を待機する。
【００３１】
ステップＳ１０３：演算部１４は、信号線Ｔｎから入力された先頭コードの所定部分を読み込んで第１比較コードを取得する。Ｓ１０３での演算部１４は、先頭コードのうちで３番目のワードの部分を用いて第１比較コードを取得する。なお、第１比較コードは、信号線Ｔ０の出力をＮｓだけ位相を進めて（−Ｎｓ）サンプリングした場合の値に相当する。
【００３２】
ステップＳ１０４：演算部１４は、第１比較コード（Ｓ１０３）が、先頭コードと一致するか否かを判定する。すなわち、Ｓ１０４での演算部１４は、第１比較コードが、先頭コードの３番目のワード（「ＦＦＦ（ｈ）」）と一致するか否かを判定する。上記要件を満たす場合（ＹＥＳ側）には、Ｓ１０６に処理が移行する。一方、上記要件を満たさない場合（ＮＯ側）には、Ｓ１０５に処理が移行する。
【００３３】
ステップＳ１０５：演算部１４は、フラグ「Ｔｎ＿ＥＲＲ」の状態を「１」にする（Ｔｎ＿ＥＲＲ＝１）。
【００３４】
ステップＳ１０６：演算部１４は、信号線Ｔｐから入力された先頭コードの所定部分を読み込んで第２比較コードを取得する。Ｓ１０６での演算部１４は、先頭コードのうちで３番目のワードの部分を用いて第２比較コードを取得する。なお、第２比較コードは、信号線Ｔ０の出力をＮｓだけ位相を遅らせて（＋Ｎｓ）サンプリングした場合の値に相当する。
【００３５】
ステップＳ１０７：演算部１４は、第２比較コード（Ｓ１０６）が、先頭コードと一致するか否かを判定する。すなわち、Ｓ１０７での演算部１４は、第２比較コードが、先頭コードの３番目のワード（「ＦＦＦ（ｈ）」）と一致するか否かを判定する。上記要件を満たす場合（ＹＥＳ側）には、Ｓ１０９に処理が移行する。一方、上記要件を満たさない場合（ＮＯ側）には、Ｓ１０８に処理が移行する。
【００３６】
ステップＳ１０８：演算部１４は、フラグ「Ｔｐ＿ＥＲＲ」の状態を「１」にする（Ｔｐ＿ＥＲＲ＝１）。
【００３７】
なお、簡単のため、図３ではＳ１０３からＳ１０８までの処理を直列的に示したが、実際には、上記のＳ１０３からＳ１０５までの処理と、上記のＳ１０６からＳ１０８までの処理とはほぼ同時に並行して実行される。
【００３８】
ステップＳ１０９：演算部１４は、フラグ「Ｔｎ＿ＥＲＲ」の状態が「１」で、かつフラグ「Ｔｐ＿ＥＲＲ」の状態が「０」か否か（Ｔｎ＿ＥＲＲ＝１，Ｔｐ＿ＥＲＲ＝０）を判定する。上記要件を満たす場合（ＹＥＳ側）には、Ｓ１１０に処理が移行する。一方、上記要件を満たさない場合（ＮＯ側）には、Ｓ１１１に処理が移行する。
【００３９】
ステップＳ１１０：この場合、信号線Ｔ０の出力は、位相が進む方向にずれると符号誤りが生じる一方で、位相が遅れる方向にずれても符号誤りは生じない（図５参照）。そのため、Ｓ１１０での演算部１４は、ＣＰＵ１５に対して、遅延部１２の遅延調整値を遅らせる方向に１段階分ずらす指示を行う（Ｎ＝Ｎ＋１）。これにより、後述のＳ１１７の処理で、信号線Ｔ０の位相が適正な方向に微調整される。その後、Ｓ１１７に処理が移行する。
【００４０】
ステップＳ１１１：演算部１４は、フラグ「Ｔｎ＿ＥＲＲ」の状態が「０」で、かつフラグ「Ｔｐ＿ＥＲＲ」の状態が「１」か否か（Ｔｎ＿ＥＲＲ＝０，Ｔｐ＿ＥＲＲ＝１）を判定する。上記要件を満たす場合（ＹＥＳ側）には、Ｓ１１２に処理が移行する。一方、上記要件を満たさない場合（ＮＯ側）には、Ｓ１１３に処理が移行する。
【００４１】
ステップＳ１１２：この場合、信号線Ｔ０の出力は、位相が遅れる方向にずれると符号誤りが生じる一方で、位相が進む方向にずれても符号誤りは生じない（図６参照）。そのため、Ｓ１１２での演算部１４は、ＣＰＵ１５に対して、遅延部１２の遅延調整値を進める方向に１段階分ずらす指示を行う（Ｎ＝Ｎ−１）。これにより、後述のＳ１１７の処理で、信号線Ｔ０の位相が適正な方向に微調整される。その後、Ｓ１１７に処理が移行する。
【００４２】
ステップＳ１１３：演算部１４は、フラグ「Ｔｎ＿ＥＲＲ」およびフラグ「Ｔｐ＿ＥＲＲ」の状態がいずれも「１」か否か（Ｔｎ＿ＥＲＲ＝１，Ｔｐ＿ＥＲＲ＝１）を判定する。上記要件を満たす場合（ＹＥＳ側）には、Ｓ１１４に処理が移行する。一方、上記要件を満たさない場合（ＮＯ側）には、Ｓ１１５に処理が移行する。
【００４３】
ステップＳ１１４：この場合は、遅延回路の遅延量Ｎｓが大きいため、信号線Ｔ０の位相がいずれの方向にずれても符号誤りが生じると判定されたケースである。そのため、Ｓ１１４での演算部１４は、ＣＰＵ１５に対して、各遅延回路の遅延量Ｎｓを１段階分小さくする指示を行う（Ｎｓ＝Ｎｓ−１）。これにより、次回の位相調整処理では、信号線Ｔ０の出力に対して、信号線Ｔｎ，Ｔｐの出力の位相差がそれぞれ小さくなる。したがって、演算部１４は、より細かな刻みで位相調整を行うことが可能となる。その後、Ｓ１１６に処理が移行する。
【００４４】
ステップＳ１１５：この場合は、信号線Ｔ０の位相がいずれの方向にずれても符号誤りが生じないと判定されたケースである。そのため、Ｓ１１５での演算部１４は、ＣＰＵ１５に対して、各遅延回路の遅延量Ｎｓを１段階分大きくする指示を行う（Ｎｓ＝Ｎｓ＋１）。これにより、次回の位相調整処理では、信号線Ｔ０の出力に対して、信号線Ｔｎ，Ｔｐの出力の位相差がそれぞれ大きくなる。したがって、演算部１４は、時間軸方向のより広い範囲をみて位相調整を行うことが可能となる。
【００４５】
ステップＳ１１６：演算部１４は、ＣＰＵ１５に対して、遅延部１２の遅延調整値をそのまま維持する指示を行う（Ｎ＝Ｎ）。
【００４６】
ステップＳ１１７：ＣＰＵ１５は、演算部１４からの指示（Ｓ１１０，Ｓ１１２，Ｓ１１４〜Ｓ１１６）に応じて、遅延部１２の遅延調整値Ｎまたは各遅延回路の遅延量Ｎｓを調整する。その後、ＣＰＵ１５は位相調整処理を終了するとともに、通常動作の状態に復帰する。
【００４７】
ここで、Ｓ１１７での遅延調整値Ｎまたは遅延量Ｎｓの調整は、シリアル転送データのパディングデータが通過している期間（有効データの通過後の期間）を利用して行われる。そのため、位相調整処理により、シリアル転送データの有効データの転送に支障が生じることはない。以上で、図３の流れ図の説明を終了する。
【００４８】
上記の一の実施形態において、演算部１４は、先頭コードに対して位相差を有する第１比較コードおよび第２比較コードを生成するとともに、これらの同一性の有無に基づいてシリアル転送データの位相の調整方向を求める（Ｓ１０３〜Ｓ１０９，Ｓ１１１）。
【００４９】
これにより、一の実施形態では、装置の温度環境などの変化に起因するシリアル転送データの位相のずれを容易に抑制することができる。
【００５０】
また、一の実施形態では、演算部１４はシリアル転送データの先頭コードを用いて位相調整処理を行う。そのため、一の実施形態では、シリアル転送データが連続して転送されている状況（例えば動画データの転送時など）においても、上記のデータ転送を妨げることなく位相調整を行うことができる。
【００５１】
また、Ｎｓの初期値、ＮおよびＮｓの１段階分の変動量を、ユーザによって任意に設定可能としてもよく、またこれらを温度情報などにより動的に切り替えて設定するようにしてもよい。
【００５２】
＜実施形態の補足事項＞
（１）本発明の位相調整装置は、電子カメラに組み込まれる例に限定されず、他の電子機器に組み込まれるものであってもよい。また、上記実施形態では、１つのチャネルでシリアル転送を行う装置の例を説明したが、本発明は複数チャネルの場合にも勿論適用することができる。
【００５３】
（２）上記実施形態では、シリアル転送データの先頭コードのうち３ワード目を利用して比較コードを生成する例を説明したが、例えば、演算部１４は、先頭コードに含まれる任意のワードの一部（数ビット分の信号列）のみを利用して比較コードを生成してもよい。なお、上記の場合において、演算部１４は、複数のワードを跨いで比較コードを生成するようにしてもよい。
【００５４】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲が、その精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずであり、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物によることも可能である。
【符号の説明】
【００５５】
１１…送信部、１２…遅延部、１３…比較コード生成部、１４…演算部、１５…ＣＰＵ、１６…温度センサ
【先行技術文献】
【特許文献】
【００５６】
【特許文献１】特開２００８−１２４７１４
【図１】
2010176519.tif 000003
【図２】
2010176519.tif 000004
【図３】
2010176519.tif 000005
【図４】
2010176519.tif 000006
【図５】
2010176519.tif 000007
【図６】
2010176519.tif 000008