(57)【特許請求の範囲】
【請求項１】
発生するクロックの周波数を周波数データにより指示する制御部と、
前記周波数データに応じた周波数のクロックを発生するクロック発生装置と、
被検査回路に入力テストデータを供給し、前記被検査回路が入力テストデータを受けて出力する出力テストデータと前記期待値テストデータとを比較することにより前記被検査回路の動作状態を判定するテスト回路と、を備え、
前記クロック発生装置が発生するクロックの周波数を変化させつつ、前記被検査回路の動作状態を判定することで、被検査回路の動作可能な周波数を測定する動作周波数測定装置であって、
前記クロック発生装置は、
基準クロックを遅延させた複数の遅延クロックを生成するためにディレイ素子をチェーン状に接続したディレイチェーン部と、
前記ディレイチェーン部の出力から遅延情報を導き出す遅延検出部と、
前記遅延情報と前記周波数データとを参照して、前記複数の遅延クロックの中から選択すべき遅延クロックを示す切替制御情報を生成する切替制御部と、
前記切替制御情報に基づいて前記複数の遅延クロックの中から選択して所望の周波数のクロックを生成するセレクト部と、により構成され、
前記遅延検出部は、前記ディレイチェーン部からの複数の遅延信号の出力にそれぞれフリップフロップを接続し、前記遅延信号の出力のうち基準クロックに同期している同期ポイント情報を検出する回路を設け、隣り合う前記同期ポイン情報からそれらの間の遅延段数を遅延情報として出力することを特徴とする動作周波数測定装置。
【請求項２】
前記テスト回路は、
被検査回路に供給する入力テストデータと、被検査回路に入力テストデータを供給して正常時に期待される期待値テストデータとを発生するテストデータ生成部と、
前記被検査回路が前記入力テストデータを受けて出力する出力テストデータと前記期待値テストデータとを比較することにより前記被検査回路の動作状態を判定する判定部と、により構成されていることを特徴とする請求項１記載の動作周波数測定装置。
【請求項３】
前記各部が集積回路で構成される、ことを特徴とする請求項１または請求項２のいずれかに記載の動作周波数測定装置。
【請求項４】
前記各部がデジタル回路で構成される、ことを特徴とする請求項１乃至請求項３のいずれかに記載の動作周波数測定装置。
【請求項５】
前記請求項１乃至請求項４のいずれかの動作周波数測定装置を備え、画像処理回路を被検査回路とする、ことを特徴とする画像形成装置。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は動作周波数測定装置および画像形成装置に関し、さらに詳しくは、回路の動作周波数の上限を検査することが可能な動作周波数測定装置、および、この動作周波数測定装置を備えた画像形成装置に関する。
【０００２】
【従来の技術】
各種ディジタル回路において、回路動作のためにクロックを必要としている。このクロックは、各種方式のクロック発生回路によって生成されている。そして、近年、各回路に高速処理が要求されてきており、クロックの周波数（動作周波数）も年々高くなってきている。
【０００３】
なお、回路の動作周波数は、各デバイスの遅延量に依存しており、これは製造ばらつき、温度変動、電源電圧変動などの各種要因により変動するものである。
なお、規定の動作周波数で回路を動作せるためには、
・各種ばらつきに対して十分なマージンを持った回路設計を行う。
・回路記述、論理合成、レイアウトなどの面でそれぞれ、工夫を行う。
・コンピュータ上の専用ツールを用いて、遅延シミュレーションや遅延解析などを行って確認し、回路設計にフィードバックさせる。
【０００４】
【発明が解決しようとする課題】
なお、回路の動作周波数を測定するためには、専用のテスタを用いて、実デバイスにテストデータを入力し、デバイスの出力と予め求めておいた期待値とをテスタ内部で比較する。これにより、実デバイスを、特定の動作周波数で動作可能か否かをテストすることができる。さらに、動作周波数を変更しつつ、このテストを実行することで、動作周波数の上限（最大動作周波数）を求めることができる。この結果、製造ばらつきなどのために設けておいたマージン分を排除して、動作周波数を向上させることが可能になる。しかし、高価な専用のテスタが必要になる問題があり、さらに、量産デバイスの全てにテストをしなければならないといった問題もある。
【０００５】
また、以上の専用のテスタを用いる手法以外に、スキャンパス手法や、バウンダリスキャン手法（JTAG）も用いられている。これらの手法では、回路のデバイス内部の論理部やデバイスの端子間について、専用回路を付加し、専用ツールでテストデータを自動的に生成して、全ての端子間やデバイスをもれなく検査する手法である。ただし、実動作と異なるテストデータを用いることや、技術的制約から実動作周波数での検査ができないといった問題が存在している。
【０００６】
さらに、ＢＩＳＴ（Built-In Self-Test）と呼ばれる手法があり、被検査回路内部に、被検査回路に供給する入力テストデータと、被検査回路に入力テストデータを供給して正常時に期待される期待値テストデータとを発生するテストデータ生成部と、前記被検査回路が前記入力テストデータを受けて出力する出力テストデータと前記期待値テストデータとを比較することにより前記被検査回路の動作状態を判定する判定部とを備え、自動的に自己テストを実行する。
【０００７】
しかし、このようなＢＩＳＴであっても、実際の装置での実装状態で、動作周波数を自在に変更しつつ、動作周波数の上限（最大動作周波数）を求めて、製造ばらつきなどのために設けておいたマージン分を排除して、動作周波数を向上させることは困難であった。すなわち、クロック発生部にＰＬＬ回路を用いて周波数を可変にしたとしても、変更した周波数で安定した状態を得るまでに一定の時間が必要であり、周波数を頻繁に変更して動作周波数を求めるには多くの時間が必要になる。
【０００８】
本発明は、上記の課題を解決するためになされたものであって、実際の装置での実装状態で、動作周波数を自在に変更しつつ、動作周波数の上限（最大動作周波数）を求めて、製造ばらつきなどのために設けておいたマージン分を排除して、動作周波数を向上させることが可能な動作周波数測定装置および画像形成装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上述の課題は以下の構成により解決することができる。
（１）本発明は、発生するクロックの周波数を周波数データにより指示する制御部と、前記周波数データに応じた周波数のクロックを発生するクロック発生装置と、被検査回路に入力テストデータを供給し、前記被検査回路が入力テストデータを受けて出力する出力テストデータと前記期待値テストデータとを比較することにより前記被検査回路の動作状態を判定するテスト回路と、を備え、前記クロック発生装置が発生するクロックの周波数を変化させつつ、前記被検査回路の動作状態を判定することで、被検査回路の動作可能な周波数を測定する動作周波数測定装置であって、前記クロック発生装置は、基準クロックを遅延させた複数の遅延クロックを生成するためにディレイ素子をチェーン状に接続したディレイチェーン部と、前記ディレイチェーン部の出力から遅延情報を導き出す遅延検出部と、前記遅延情報と前記周波数データとを参照して、前記複数の遅延クロックの中から選択すべき遅延クロックを示す切替制御情報を生成する切替制御部と前記切替制御情報に基づいて前記複数の遅延クロックの中から選択して所望の周波数のクロックを生成するセレクト部と、により構成され、前記遅延検出部は、前記ディレイチェーン部からの複数の遅延信号の出力にそれぞれフリップフロップを接続し、前記遅延信号の出力のうち基準クロックに同期している同期ポイント情報を検出する回路を設け、隣り合う前記同期ポイン情報からそれらの間の遅延段数を遅延情報として出力し、前記テスト回路は、被検査回路に供給する入力テストデータと、被検査回路に入力テストデータを供給して正常時に期待される期待値テストデータとを発生するテストデータ生成部と、前記被検査回路が前記入力テストデータを受けて出力する出力テストデータと前記期待値テストデータとを比較することにより前記被検査回路の動作状態を判定する判定部と、により構成されている、ことを特徴とする動作周波数測定装置である。
【００１０】
この動作周波数測定装置の発明では、被検査回路の動作可能な周波数を測定する際に、クロック発生装置が発生するクロックの周波数を変化させつつ、被検査回路の動作状態を判定していることで、被検査回路の動作可能な周波数の上限を測定することができる。
【００１１】
これにより、実際の装置での実装状態で、動作周波数を自在に変更しつつ、動作周波数の上限（最大動作周波数）を求めて、製造ばらつきなどのために設けておいたマージン分を排除して、動作周波数を向上させることが可能になる。そして、この場合、高価なテスタを用いる必要がなくなる。また、被検査回路に、高価なプロセス技術を用いずに、安価なＣ−ＭＯＳプロセスのディジタル回路を用いることが可能になる。
【００１２】
また、被検査回路の回路基板を変更することなく、ソフトウェアによる設定で、被検査回路の動作速度を変更することが可能になる。また、これに伴って、ＥＭＩの影響を考慮して動作周波数を決定することも可能になる。
【００１４】
（２）また、以上の（１）において、前記テスト回路は、被検査回路に供給する入力テストデータと、被検査回路に入力テストデータを供給して正常時に期待される期待値テストデータとを発生するテストデータ生成部と、前記被検査回路が前記入力テストデータを受けて出力する出力テストデータと前記期待値テストデータとを比較することにより前記被検査回路の動作状態を判定する判定部と、により構成されることが望ましい。
【００１５】
（３）また、以上の（１）または（２）において、前記各部が集積回路で構成されることが望ましい。
【００１６】
（４）また、以上の（１）〜（３）において、前記各部がデジタル回路で構成されることが望ましい。
【００１７】
（５）また、以上の（１）〜（４）の動作周波数測定装置を備え、画像処理回路を被検査回路とすることも望ましい。
【００１８】
【発明の実施の形態】
以下、図面を参照して、本発明の動作周波数測定装置、および動作周波数測定装置を適用した画像形成装置の実施の形態例を詳細に説明する。
【００１９】
〈動作周波数測定装置の全体構成〉
以下、本発明の実施の形態例の動作周波数測定装置の実施の形態例を詳細に説明する。
【００２０】
この図１において、１００は動作可能な周波数の測定がなされる被検査回路であり、各種の回路が対象となるが、画像形成装置内の画像処理回路などが望ましい。１０１はクロック発生装置全体または動作周波数測定装置全体を制御する制御部として動作するＣＰＵである。なお、このＣＰＵ１０１が、クロックの周波数を設定するために周波数データ（図１▲３▼）を生成している。１０２は被検査回路１００に供給する入力テストデータ（図１▲８▼）と、被検査回路１００に入力テストデータを供給した際の正常時に期待される期待値テストデータ（図１▲７▼）とを発生するテストデータ生成部である。なお、このテストデータ生成部１０２は入力テストデータと期待値テストデータとを生成するが、それぞれのテストデータを別個の回路で生成するようにしてもよい。１０３は被検査回路１００が入力テストデータを受けて出力する出力テストデータ（図１▲９▼）と期待値テストデータ（図１▲７▼）とを比較することにより、被検査回路１００の動作状態を判定する判定部である。なお、請求項におけるテスト回路は、テストデータ生成部１０２と判定部１０３とにより構成されている。
【００２１】
４００はクロック発生部であり、以下の４１０〜４５０により構成されている。４１０は基準となるクロック（基準クロック）を生成する基準クロック発生部である。
【００２２】
４２０は入力信号（基準クロック発生部４１０からの基準クロック）を遅延させて位相が少しずつ異なる複数の遅延クロック（複数のクロック：図１▲１▼）を得るためディレイチェーン部である。
【００２３】
ここで、ディレイチェーン部４２０は、位相が少しずつ異なる遅延クロックについて、基準クロックの２周期分にわたって生成できる段数になるようにチェーン状に多数のディレイ素子が縦続接続されている。
【００２４】
４３０はディレイチェーン部４２０の出力から遅延情報を導き出す遅延検出部である。すなわち、複数のクロック（図１▲２▼）の中で基準クロック（所望の入力信号の先端位置）に同期している遅延クロックの段数（同期ポイント）を検出する手段であり、遅延情報を出力する。なお、この遅延情報を位相差状態と呼ぶこともでき、この遅延情報（位相差状態）は、後述する同期ポイント情報や位相差そのものの状態（位相差状態）を含む。
【００２５】
ここで、遅延検出部４３０には、基準クロック発生部４１０からの基準クロックとディレイチェーン部４２０からの複数のクロックとが与えられており、複数のクロック（図１中の丸数字１）の中で、最初に基準クロックに同期している第１同期ポイント情報Ｖ1stと、２番目に基準クロックに同期している第２同期ポイント情報Ｖ2ndと、それらの間の遅延段数Ｖprd（図１中の丸数字２）を出力できる。
【００２６】
図２では基準クロックと複数のクロックのうちのＤＬ１９〜ＤＬ５１とを示しており、ここに示す例では、第１同期ポイント情報Ｖ1st＝２０，第２同期ポイント情報Ｖ2nd＝５０，遅延段数Ｖprd＝３０，となっている。
【００２７】
なお、以上のように基準クロックに同期する段数を検出するためには、複数のディレイチェーン部４２０の隣接する各出力同士を入力とするフリップフロップを設け、隣接する入力の論理が反転する箇所を検出するようにすればよい。
【００２９】
４４０はセレクト段数情報を生成する切替制御部であり、基準クロック発生部４１０からの基準クロックと、遅延検出部４３０からの同期ポイント情報（図１▲２▼）と、ＣＰＵ１０１からの周波数データ（図１▲３▼）とをもとにして、所望のタイミング（所定の時刻もしくは所定の時間）にクロックの立ち上がりと立ち下がりを生じさせて所望の周波数（所望の周期）クロックパルスを生成するために、複数のクロック（図１▲２▼）の中からどの位相のクロックを選択すべきかのセレクト段数情報（図１▲４▼）を出力する。
【００３０】
セレクト部４５０は、切替制御部４４０からのセレクト段数情報（図１▲４▼）を受け、ディレイチェーン部４２０からの複数のクロック（図１▲１▼）の中から、所望の立ち上がりと立ち下がりのクロックを選択して、所望の周波数のクロックパルス（図１▲５▼）を生成する。
【００３１】
なお、このセレクト部４５０は、図３に示すように、所望の立ち上がりタイミングのクロックを選択するためのセレクタ４５１と、所望の立ち下がりタイミングのクロックを選択するためのセレクタ４５２と、所望の立ち上がりタイミングのクロックと所望の立ち下がりタイミングのクロックとによって所望のクロックパルス（図１▲５▼）を生成する論路回路（ＡＮＤ，ＯＲ，ＮＡＮＤ，ＮＯＲ，ＥｘＯＲ，ＥｘＮＯＲなど）で構成された組み合わせ回路４５２で構成されている。
【００３２】
以上のような回路構成により、ディレイチェーン部４２０で生成される複数のクロック（図２参照）についての遅延情報に応じて切替制御部４４０が決定したセレクト段数情報に従って、セレクト部４５０は所望のタイミングかつ所望の周波数のクロックパルスを生成することができる。
【００３３】
このクロック発生部４００はＣＰＵ１０１からの指示を受けて、出力するクロックパルスの立ち上がりと立ち下がりとをディジタル的に決定（選択）しているため、瞬時に周波数やタイミングを変更することが可能である。また、ディレイチェーン部４２０の素子によって遅延時間が変動したとしても、遅延検出部４３０でその変動が検出されるため、最終的なクロックパルスに影響がでることはなく、安定したタイミングと周波数のクロックパルスを得ることができている。すなわち、従来のＰＬＬ回路による周波数の変更のようなセットアップタイムが必要になるといった問題は生じない。すなわち、リアルタイムで演算して瞬時に所望のクロックパルスを得ることが可能になっている。
【００３４】
また、このクロック発生部４００では、複数のクロックを用いて、最終的なクロックパルスの立ち上がりと立ち下がりとを決定しているため、一般的なディジタル回路の逓倍や分周などと異なり、基準クロックの周波数の整数倍等に限られない、任意の周波数のクロックパルスを得ることが可能である。
【００３５】
図４は本実施の形態例の動作周波数測定装置の動作状態を示すタイムチャートである。
ここでは、基準クロック発生部４１０からの基準クロックが１００ＭＨｚであるとする（図４（ａ））。そして、図４（ｂ）の開始信号がＨレベルになるタイミングで動作周波数測定を開始する。
【００３６】
最初のテスト期間では、ＣＰＵ１０１は基準クロックを２分周して５０ＭＨｚのクロックパルスを生成するための周波数データ（図１▲３▼）を、切替制御部４４０と判定部１０３とに供給している。次のテスト期間では、ＣＰＵ１０１は基準クロックに等しい１００ＭＨｚのクロックパルスを生成するための周波数データ（図１▲３▼）を、切替制御部４４０と判定部１０３とに供給している。さらに次のテスト期間では、ＣＰＵ１０１は基準クロックを１．５逓倍して１５０ＭＨｚのクロックパルスを生成するための周波数データ（図１▲３▼）を、切替制御部４４０と判定部１０３とに供給している（図４（ｄ））。
【００３７】
なお、たとえば、画像処理演算のためのパラメータなど被検査回路１００を動作させるために必要な各種設定値に関しては、動作周波数測定の前に予め設定しておく。
【００３８】
まず、最初のテスト期間では、５０ＭＨｚのクロックパルスを供給されている被検査回路１００の入力端子に対して入力テストデータ（図１▲８▼）を供給すると、被検査回路１００の出力端子から出力テストデータ（図１▲９▼）が得られる。この出力テストデータ（図１▲９▼）と、テストデータ生成部１０２が生成する期待値テストデータ（図１▲７▼）とを、判定部１０３が比較する。クロックパルス５０ＭＨｚにおける出力テストデータ（図４（ｈ））と期待値テストデータ（図４（ｈ））とは一致しているため、判定部１０３は「ＯＫ」の判定をする（図４（ｉ））。
【００３９】
そして、次のテスト期間では、１００ＭＨｚのクロックパルスを供給されている被検査回路１００の入力端子に対して入力テストデータ（図１▲８▼）を供給すると、被検査回路１００の出力端子から出力テストデータ（図１▲９▼）が得られる。この出力テストデータ（図１▲９▼）と、テストデータ生成部１０２が生成する期待値テストデータ（図１▲７▼）とを、判定部１０３が比較する。クロックパルス１００ＭＨｚにおける出力テストデータ（図４（ｈ））と期待値テストデータ（図４（ｈ））とは大部分一致しているが、一部で不一致が発生しているため、判定部１０３は「ＮＧ」の判定をする（図４（ｉ））。
【００４０】
なお、１００ＭＨｚで「ＮＧ」の判定が出たため、ＣＰＵ１０１はこれ以上の高い周波数でのテストは不要であると判断し、テストモードを終了しても構わない。
【００４１】
以上のような判定部１０３からの判定結果を受けたＣＰＵ１０１では、判定結果として「ＯＫ」がでた最大の周波数を、動作周波数の上限（最大動作周波数）として定める。この実施の形態例の場合では、５０ＭＨｚを最大動作周波数としてＣＰＵ１０１が定める（図４（ｊ））。
【００４２】
なお、以上の実施の形態例では、説明を簡単にするために、基準クロック１００ＭＨｚの場合に、クロックパルスを５０ＭＨｚ，１００ＭＨｚ，１５０ＭＨｚで測定したが、この周波数に限られるものではない。クロック発生部４００では自由にクロックパルスの周波数を選択することができるので、１ＭＨｚ単位等の細かなステップで徐々に周波数を上げていって、被検査回路１００の最大動作周波数を厳密に求めることが可能である。
【００４３】
すなわち、本実施の形態例によれば、実際の装置での実装状態で、動作周波数を自在に変更しつつ、動作周波数の上限（最大動作周波数）を求めることができる。さらに、製造ばらつきなどのために設けておいたマージン分を排除して、動作周波数を向上させることも可能になる。
【００４４】
また、この実施の形態例では、クロック発生部４００がディジタル的に瞬時に周波数を変更することが可能であるので、周波数を変更しつつ最大動作周波数を測定する動作を無駄な時間を必要とせずに安定した状態で短時間に実行できる。
【００４５】
また、この実施の形態例によれば、被検査回路１００を、ＥＭＩの最も少ない周波数で動作させるように設定することも可能になる。
また、本実施の形態例では、簡単な構成で済ませることができ、従来のような高価なテスタを用いる必要がなくなる。また、被検査回路に、高価なプロセス技術を用いずに、安価なＣ−ＭＯＳプロセスのディジタル回路を用いることが可能になる。
【００４６】
また、本実施の形態例の動作周波数測定装置は、被検査回路１００を画像処理回路とした場合に、複写機などの画像形成装置に組み込むことが可能である。その場合には、基板の変更無く、ＣＰＵ１０１の制御（ソフトウェアの処理）によって画像処理の周波数を変更することが可能になる。また、画像形成速度に合わせて画像処理の速度を変更することも可能になる。
【００４７】
【発明の効果】
以上詳細に説明したように、本発明によれば、実際の装置での実装状態で、動作周波数を自在に変更しつつ、動作周波数の上限（最大動作周波数）を求めることが可能になる。さらに、製造ばらつきなどのために設けておいたマージン分を排除して、動作周波数を向上させることも可能になる。
【図面の簡単な説明】
【図１】本発明の一実施の形態例の動作周波数測定装置の全体の電気的構成を示す構成図である。
【図２】本発明の一実施の形態例の動作周波数測定装置のクロック発生の動作を説明するタイムチャートである。
【図３】本発明の一実施の形態例の動作周波数測定装置の主要部の電気的構成を示す構成図である。
【図４】本発明の一実施の形態例の動作周波数測定装置の動作を説明するタイムチャートである。
【符号の説明】
１００  被検査回路
１０１  ＣＰＵ
１０２  テストデータ生成部
１０３  判定部
４１０  基準クロック発生部
４２０  ディレイチェーン部
４３０  遅延検出部
４４０  切替制御部
４５０  セレクト部
【図１】
0004032612.tif 000002
【図２】
0004032612.tif 000003
【図３】
0004032612.tif 000004
【図４】
0004032612.tif 000005