(57)【要約】【課題】クロック乗せ換え回路が使用するメモリのサイズを低減可能なスペクトラム拡散クロックを生成するための技術を提供する。【解決手段】提供されるスペクトラム拡散クロック生成回路は、入力された基準クロックに基づいてスペクトラム拡散クロックを生成して出力する生成部と、１つの基準時刻について、当該基準時刻以降に生成部に入力された基準クロックのパルス数と、当該基準時刻以降に生成部から出力されたスペクトラム拡散クロックのパルス数との差を監視する監視部と、差が所定の範囲に含まれるように、生成部によって生成されるスペクトラム拡散クロックの周波数を制御する制御部とを備える。【選択図】図１
2015039148.tif 000002
【特許請求の範囲】
【請求項１】
入力された基準クロックに基づいてスペクトラム拡散クロックを生成して出力する生成部と、
１つの基準時刻について、当該基準時刻以降に前記生成部に入力された基準クロックのパルス数と、当該基準時刻以降に前記生成部から出力されたスペクトラム拡散クロックのパルス数との差を監視する監視部と、
前記差が所定の範囲に含まれるように、前記生成部によって生成されるスペクトラム拡散クロックの周波数を制御する制御部とを備えることを特徴とするスペクトラム拡散クロック生成回路。
【請求項２】
前記制御部は、前記差が閾値を超えたかどうかの判定を行い、前記差が前記閾値を超えた場合に、前記差が低減するように、前記生成部によって生成されるスペクトラム拡散クロックの周波数を制御することを特徴とする請求項１に記載のスペクトラム拡散クロック生成回路。
【請求項３】
前記制御部は、前記差が変化するごとに前記判定を行うことを特徴とする請求項２に記載のスペクトラム拡散クロック生成回路。
【請求項４】
前記制御部は、前記生成部に前記基準クロックが入力されるごと及び前記生成部から前記スペクトラム拡散クロックが出力されるごとに前記判定を行うことを特徴とする請求項２又は３に記載のスペクトラム拡散クロック生成回路。
【請求項５】
前記監視部は、
前記基準クロックによって駆動される第１巡回シフトレジスタと、
前記スペクトラム拡散クロックによって駆動される第２巡回シフトレジスタと、
前記第１巡回シフトレジスタからの出力と前記第２巡回シフトレジスタからの出力とによって内部状態が決まるセットリセットフリップフロップ回路群と、
前記セットリセットフリップフロップ回路群からの出力に基づいて前記差を取得する取得部とを含むことを特徴とする請求項１乃至４の何れか１項に記載のスペクトラム拡散クロック生成回路。
【請求項６】
前記第１巡回シフトレジスタの段数と、前記第２巡回シフトレジスタの段数とは互いに等しく、
前記セットリセットフリップフロップ回路群は、前記第１巡回シフトレジスタの段数に等しい個数のセットリセットフリップフロップ回路を含むことを特徴とする請求項５に記載のスペクトラム拡散クロック生成回路。
【請求項７】
前記監視部は、
前記生成部に入力された基準クロックのパルス数をカウントする第１カウンタと、
前記生成部から出力されたスペクトラム拡散クロックのパルス数をカウントする第２カウンタと、
前記第１カウンタと前記第２カウンタとの差を出力する減算器と、
前記減算器からの出力に基づいて前記差を取得する取得部とを含むことを特徴とする請求項１乃至４の何れか１項に記載のスペクトラム拡散クロック生成回路。
【請求項８】
前記第２カウンタの出力はグレイコードであることを特徴とする請求項７に記載のスペクトラム拡散クロック生成回路。
【請求項９】
請求項１乃至８の何れか１項に記載のスペクトラム拡散クロック生成回路と、
前記スペクトラム拡散クロック生成回路に供給される基準クロックを生成する発振回路と、
前記スペクトラム拡散クロック生成回路から出力されたスペクトラム拡散クロックによって駆動される回路素子とを備えることを特徴とする集積回路。
【請求項１０】
請求項１乃至８の何れか１項に記載のスペクトラム拡散クロック生成回路と、
メモリと、
基準クロックに従って入力データを前記メモリに書き込む書き込み部と、
前記スペクトラム拡散クロック生成回路から出力されたスペクトラム拡散クロックに従って前記メモリからデータを読み出して出力する読み出し部とを備えることを特徴とするクロック乗せ換え回路。
【請求項１１】
請求項１０に記載のクロック乗せ換え回路と、
前記クロック乗せ換え回路に供給される基準クロックを生成する発振回路と、
原稿を読み取って画像データを生成し、当該画像データを前記クロック乗せ換え回路に供給する読み取り部と、
前記クロック乗せ換え回路から出力された画像データを処理する処理部とを備えることを特徴とする画像読み取り装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スペクトラム拡散クロック生成回路、クロック乗せ換え回路、集積回路及び画像読み取り装置に関する。
【背景技術】
【０００２】
ＥＭＩ（電磁障害）を低減するために、周波数が一定の基準クロックに対してスペクトラム拡散を行って、周波数が変動するスペクトラム拡散クロックを生成するスペクトラム拡散クロック生成回路が知られている。特許文献１は、画像処理の前半を基準クロックに従って動作する画像処理前半ブロックで行い、画像処理の後半をスペクトラム拡散クロックに従って動作する画像処理後半ブロックで行う画像形成装置を提案する。画像処理前半ブロックからの出力データは外部メモリコントローラに供給され、外部メモリコントローラはこのデータを外部メモリに格納する。その後、外部メモリコントローラは外部メモリからデータを読み出して、画像処理後半ブロックへ供給する。このように、外部メモリコントローラはクロック乗せ換え回路として動作する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−１５０５６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
外乱等の影響でスペクトラム拡散クロック生成回路の周波数制御が乱れ、スペクトラム拡散クロックが生成されるべき周波数から外れた場合に、特許文献１の外部メモリコントローラは外部メモリから正しいデータを読み出せなくなることがある。例えば、スペクトラム拡散クロックの周波数が、生成されるべき周波数よりも高い場合には、外部メモリに書き込まれるデータよりも読み出されるデータが多くなり、外部メモリが空になる。一方、スペクトラム拡散クロックの周波数が、生成されるべき周波数よりも低い場合には、外部メモリに書き込まれるデータよりも読み出されるデータが少なくなり、外部メモリがフルになる。外部メモリのサイズを大きくすればスペクトラム拡散クロックの大きな変動を許容できるが、コストが高くなる。そこで、本発明は、クロック乗せ換え回路が使用するメモリのサイズを低減可能なスペクトラム拡散クロックを生成するための技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題に鑑みて、本発明の一部の実施形態によるスペクトラム拡散クロック生成回路は、入力された基準クロックに基づいてスペクトラム拡散クロックを生成して出力する生成部と、１つの基準時刻について、当該基準時刻以降に前記生成部に入力された基準クロックのパルス数と、当該基準時刻以降に前記生成部から出力されたスペクトラム拡散クロックのパルス数との差を監視する監視部と、前記差が所定の範囲に含まれるように、前記生成部によって生成されるスペクトラム拡散クロックの周波数を制御する制御部とを備える。
【発明の効果】
【０００６】
上記手段により、クロック乗せ換え回路が使用するメモリのサイズを低減可能なスペクトラム拡散クロックを生成するための技術が提供される。
【図面の簡単な説明】
【０００７】
【図１】本発明の一部の実施形態のスペクトラム拡散クロック生成回路のブロック図。
【図２】図１のスペクトラム拡散クロック生成回路の生成部のブロック図。
【図３】図１のスペクトラム拡散クロック生成回路のパルス差監視部のブロック図。
【図４】本発明の一部の実施形態のクロック乗せ換え回路のブロック図。
【図５】図４のクロック乗せ換え回路のメモリ状態を説明する図。
【図６】図４のクロック乗せ換え回路のメモリ状態を説明する図。
【図７】本発明の一部の実施形態の集積回路のブロック図。
【図８】本発明の一部の実施形態の画像読み取り装置のブロック図。
【発明を実施するための形態】
【０００８】
添付の図面を参照しつつ本発明の実施形態について以下に説明する。様々な実施形態を通じて同様の要素には同一の参照符号を付して重複する説明を省略する。また、各実施形態は適宜変更、組み合わせが可能である。
【０００９】
図１のブロック図を参照して、本発明の一部の実施形態に係るスペクトラム拡散クロック生成回路１００の構成例を説明する。スペクトラム拡散クロック生成回路１００は、外部から入力された基準クロックに基づいてスペクトラム拡散クロックを生成し、このスペクトラム拡散クロックを外部へ出力する。基準クロックとは、時間を通じて周波数が一定のクロックのことでありうる。スペクトラム拡散クロックとは、基準クロックに対してスペクトラム拡散を行うことによって得られるクロックのことであり、時間を通じて周波数が変動する。
【００１０】
スペクトラム拡散クロック生成回路１００は、生成部１１０と、パルス差制御部１２０と、パルス差監視部１３０とを有しうる。スペクトラム拡散クロック生成回路１００に入力された基準クロックは、生成部１１０とパルス差監視部１３０とのそれぞれに供給される。生成部１１０は、供給された基準クロックに基づいてスペクトラム拡散クロックを生成する。生成部１１０は、生成したスペクトラム拡散クロックを外部へ出力するとともに、パルス差監視部１３０へ供給する。生成部１１０は、基準クロックの平均周波数と、出力されるスペクトラム拡散クロックの平均周波数とが一致するようにスペクトラム拡散クロックを生成しうる。パルス差監視部１３０は、ある時刻以降に生成部１１０に入力された基準クロックのパルス数と、同じ時刻以降に生成部１１０から出力されたスペクトラム拡散クロックの波数との差を継続的に監視する。以下の説明において、この起点となる時刻を基準時刻と呼び、両者のパルス数の差を単にパルス差と呼ぶ。パルス差は、基準クロックのパルス数からスペクトラム拡散クロックのパルス数を減算した値として定義されてもよいし、その逆にスペクトラム拡散クロックのパルス数から基準クロックのパルス数を減算した値として定義されてもよい。パルス差監視部１３０はパルス差を表す信号をパルス差制御部１２０へ供給する。パルス差制御部１２０は、パルス差が所定の範囲内に含まれるように生成部１１０を制御して生成部１１０から出力されるスペクトラム拡散クロックの周波数を調整する。パルス差制御部１２０の動作の詳細は後述する。
【００１１】
続いて、図２のブロック図を参照して、図１の生成部１１０の構成例を説明する。生成部１１０は、周波数差監視部１１１と、周波数差制御部１１２と、発振回路１１３と、加算器１１４とを有しうる。周波数差監視部１１１は、生成部１１０に入力された基準クロックの平均周波数と、生成部１１０から出力されたスペクトラム拡散クロックの平均周波数との差を継続的に監視する。以下では、両者の平均周波数の差を単に平均周波数差と呼ぶ。周波数差監視部１１１は、平均周波数差を表す信号を周波数差制御部１１２へ供給する。周波数差制御部１１２は、発振回路１１３の発振周波数をあらかじめ決められた範囲及び周期で変動させる信号を加算器１１４へ供給する。加算器１１４は、周波数差制御部１１２から供給された信号と、パルス差制御部１２０から供給された信号とを加算して発振回路１１３へ供給する。パルス差制御部１２０から有意な信号が加算器１１４へ供給されていない場合に、発振回路１１３は周波数差制御部１１２からの信号に従って動作する。発振回路１１３は、加算器１１４から供給された信号に従ってスペクトラム拡散クロックを生成して出力する。周波数差制御部１１２は、周波数差監視部１１１から供給された平均周波数差に基づいて、基準クロックの平均周波数と一致するように、発振回路１１３が生成するスペクトラム拡散クロックの平均周波数を調整する。
【００１２】
基準クロックの周波数は時間の経過を通じて一定であるので、どの期間で平均周波数を測定してもその値はほぼ一定である。一方、スペクトラム拡散クロックの周波数は時間の経過とともに変化するので、その平均周波数は測定する期間によって変わりうる。そこで、周波数差監視部１１１は、生成部１１０が外乱等の影響を受けずに定常状態で動作している場合にスペクトラム拡散クロックの平均周波数が時間の経過を通じてほぼ一定となるような期間で平均周波数を測定しうる。例えば、周波数差制御部１１２がスペクトラム拡散クロックの周波数を周期的に変動させる場合に、その周期（以下、拡散変調周期と呼ぶ。）又はその周期の整数倍を測定期間として平均周波数を取得してもよい。
【００１３】
一部の実施形態では、周波数差監視部１１１は３つのカウンタを有しうる。第１カウンタは基準クロックのパルス数をカウントし、第２カウンタはスペクトラム拡散クロックのパルス数をカウントする。第３カウンタは、これらのカウンタのうちの一方のカウンタが所定のカウント値に達してから他方のカウンタがその値に達するまでの時間をカウントする。周波数差監視部１１１は、第３カウンタからの出力を平均周波数差として周波数差制御部１１２へ供給する。
【００１４】
基準クロックと周波数拡散クロックとは非同期であるので、両者の平均周波数が一致している場合であっても、同じ期間におけるカウント値に１カウント程度の誤差が生じる可能性がある。また、周波数拡散クロックは時間の経過とともに周波数が変動するので、カウントする期間に依存して基準クロックとスペクトラム拡散クロックとの間のカウント時間の差が変動する。そこで、周波数差監視部１１１は、これらの誤差や変動を許容できるように動作しうる。例えば、上述の所定のカウント値が周波数の拡散変調周期よりも長く設定されるとともに、第３カウンタのカウント値が閾値を超えた場合にのみ周波数差制御部１１２の出力を変化させてもよい。このように周波数差制御部１１２が動作することにより、低い周波数で観測した場合に、発振回路１１３が出力するスペクトラム拡散クロックの平均周波数を基準クロックの周波数に一致させることができる。
【００１５】
生成部１１０は、基準クロックの平均周波数とスペクトラム拡散クロックの平均周波数を一致させるために、基準クロックを分周した信号の位相と、周波数拡散クロックを分周した信号の位相とを一致させるＰＬＬ（位相同期回路）を使用してもよい。ＰＬＬを使用する場合にも、スペクトラム拡散クロックの周波数変調が意図どおりに行われるように、フィードバックループの時定数を拡散変調周期よりも大きくしてもよい。
【００１６】
続いて、図３（Ａ）のブロック図を参照して、図１のパルス差監視部１３０の構成例を説明する。図３（Ａ）に示すパルス差監視部１３０は、２つの巡回シフトレジスタ１３１、１３２と、セットリセットフリップフロップ回路群１３３と、取得部１３４と、初期値記憶部１３５とを有しうる。巡回シフトレジスタ１３１は基準クロックによって駆動され、巡回シフトレジスタ１３２はスペクトラム拡散クロックによって駆動される。巡回シフトレジスタ１３１、１３２はそれぞれ、パルス差の許容範囲以上の段数を有しうる。例えば、パルス差がａ以上ｂ以下（ａ、ｂは整数）となるようにスペクトラム拡散クロック生成回路１００が動作すべきである場合に、巡回シフトレジスタ１３１、１３２はそれぞれ、（ｂ−ａ）以上の段数を有しうる。巡回シフトレジスタ１３１、１３２はどちらも、ちょうど（ｂ−ａ）段を有してもよい。以下の説明では、パルス差の許容範囲の幅（上記の例では（ｂ−ａ））をＭで表し、巡回シフトレジスタ１３１、１３２がどちらもＭ段であるとする。巡回シフトレジスタ１３１、１３２は、Ｍ個の出力のうちの１つのみにＨ（ハイ）を出力し、その他にＬ（ロー）を出力する。そして、巡回シフトレジスタ１３１、１３２は、パルスが入力されるごとに、Ｈを出力する端子を１つずつ移動する。例えば、Ｍ＝３の場合に、巡回シフトレジスタ１３１、１３２の出力はパルスの入力ごとに以下のように変化する。
（ＬＬＨ）→（ＬＨＬ）→（ＨＬＬ）→（ＬＬＨ）→…
【００１７】
セットリセットフリップフロップ回路群１３３は、Ｍ個のセットリセットフリップフロップ回路を有しうる。巡回シフトレジスタ１３１のＭ個の出力端子とＭ個のセットリセットフリップフロップ回路のＭ個のセット端子は１対１に対応しており、セットリセットフリップフロップ回路は巡回シフトレジスタ１３１の出力端子からＨが供給されるとセットされる。巡回シフトレジスタ１３２のＭ個の出力端子とＭ個のセットリセットフリップフロップ回路のＭ個のリセット端子は１対１に対応しており、セットリセットフリップフロップ回路は巡回シフトレジスタ１３２の出力端子からＨが供給されるとリセットされる。Ｍ個のセットリセットフリップフロップ回路のそれぞれの出力端子は取得部１３４に接続されている。各セットリセットフリップフロップ回路は、自身の内部状態がセット状態である場合にＨを出力し、自身の内部状態がリセット状態である場合にＬを出力する。
【００１８】
取得部１３４は、セットリセットフリップフロップ回路群１３３からのＭ個の出力のうち、Ｈであるもの又はＬであるものの個数をカウントする。以下では、取得部１３４がＨであるものの個数をカウントする場合を説明する。取得部１３４はまず、基準時刻におけるＨの個数を初期値記憶部１３５に格納する。そして、取得部１３４は、セットリセットフリップフロップ回路群１３３からのＭ個の出力の何れかが変化するごとに、その時刻でのＨの個数から、初期値記憶部１３５に格納されている値を減算して得られた値をパルス差制御部１２０へ供給する。この値がパルス差を表す。パルス差制御部１２０は取得部１３４から供給されたパルス差に基づいて、このパルス差が所定の範囲内に含まれるように生成部１１０へ制御信号を供給する。
【００１９】
続いて、図３（Ｂ）のブロック図を参照して、図１のパルス差監視部１３０の他の構成例を説明する。図３（Ｂ）に示すパルス差監視部１３０は、２つのカウンタ１３６、１３７と、減算器１３８と、取得部１３４と、初期値記憶部１３５とを有しうる。カウンタ１３６は基準クロックのパルス数をカウントし、カウント値を減算器１３８へ供給する。カウンタ１３７はスペクトラム拡散クロックのパルス数をカウントし、カウント値を減算器１３８へ供給する。カウンタ１３６、１３７はそれぞれ、パルス差の許容範囲の幅（上述のＭ）以上の数をカウント可能である。減算器１３８は、カウンタ１３６から供給されたカウント値から、カウンタ１３７から供給されたカウント値を減算して、取得部１３４へ供給する。基準クロックと非同期に動作するカウンタ１３７はカウント値をグレイコードで出力してもよい。グレイコードで出力することによって、減算器１３８で取り込まれるカウント値の誤差を１以下にすることができる。
【００２０】
取得部１３４はまず、基準時刻における減算器１３８の出力値を初期値記憶部１３５に格納する。そして、取得部１３４は、減算器１３８からの出力値が変化するごとに、その時刻での出力値から、初期値記憶部１３５に格納されている値を減算して得られた値をパルス差制御部１２０へ供給する。この値がパルス差を表す。パルス差制御部１２０は取得部１３４から供給されたパルス差に基づいて、このパルス差が所定の範囲内に含まれるように生成部１１０へ制御信号を供給する。
【００２１】
続いて、図４のブロック図を参照して、本発明の一部の実施形態に係るクロック乗せ換え回路４００の構成例を説明する。クロック乗せ換え回路４００は、スペクトラム拡散クロック生成回路１００と、書き込み部４１０と、メモリ４２０と、読み出し部４３０とを有しうる。クロック乗せ換え回路４００には外部から基準クロックと入力データとが供給される。入力データは例えばＮビットデジタルデータでありうる。メモリ４２０はＮビットデジタルデータをＭ個格納可能である。書き込み部４１０は、基準クロックのパルスが入力されるごとに、格納場所を１つずつずらして入力データをメモリ４２０に書き込む。スペクトラム拡散クロック生成回路１００は、上述のように基準クロックに基づいてスペクトラム拡散クロックを生成し、読み出し部４３０へ供給する。読み出し部４３０は、スペクトラム拡散クロックのパルスが入力されるごとに、先入れ先出し（ＦＩＦＯ）方式でメモリ４２０からデータを読み出し、外部へ出力する。
【００２２】
続いて、図５、図６のグラフを参照して、スペクトラム拡散クロック生成回路１００のパルス差制御部１２０の動作例について説明する。以下では、スペクトラム拡散クロック生成回路１００がクロック乗せ換え回路４００に搭載されている文脈で説明される。スペクトラム拡散クロック生成回路１００に含まれる周波数差制御部１１２の制御によって、基準クロックの平均周波数とスペクトラム拡散クロックの平均周波数とは一致する。そのため、長期的（例えば、拡散変調周期以上の長さ）にはクロック乗せ換え回路４００に入力されるデータの個数とクロック乗せ換え回路４００から出力されるデータの個数とは一致しうる。しかしながら、スペクトラム拡散クロックは時間の経過とともに周波数が変化するので、短期間で観察した場合に、メモリ４２０内の出力待ちのデータ数は変動する。ここで、出力待ちのデータとは、メモリ４２０に書き込まれた後、まだ読み出されていないデータを表す。
【００２３】
図５を参照して、メモリ４２０内の出力待ちのデータ数の変動の様子を説明する。図５の上図は時間の経過に対するスペクトラム拡散クロックの周波数の変化を表すグラフ５０１を示す。スペクトラム拡散クロックは、基準クロック（図５のＲｅｆ）の上下を周期的に変動する。図５では、外乱がない場合を想定しており、そのためスペクトラム拡散クロックの周波数の平均周波数は基準クロックの平均周波数と等しくなる。図５の下図は時間の経過に対するメモリ４２０内の出力待ちのデータ数の変化を表すグラフ５０２を示す。スペクトラム拡散クロックの周波数が基準クロックの周波数よりも大きい場合に、出力待ちデータ数は減少する。スペクトラム拡散クロックの周波数が基準クロックの周波数よりも小さい場合に、出力待ちデータ数は増加する。そのため、出力待ちデータ数は時刻ｔ０における値Ｉｎｉを中心として変動する。
【００２４】
次に、図６を参照して、外乱がある場合のメモリ４２０内の出力待ちのデータ数の変動の様子を説明する。図６の上図は時間の経過に対するスペクトラム拡散クロックの周波数の変化を表すグラフ６０１を示す。図６の下図は時間の経過に対するメモリ４２０内の出力待ちのデータ数の変化を表すグラフ６０２を示す。図６の例では、時刻ｔ１で外乱が発生し、生成されたスペクトラム拡散クロックの周波数が、本来生成すべき周波数（点線のグラフ５０１）よりも大きくなっている。そのため、メモリ４２０から読み出されるデータ数が多くなる。この状態が継続すると、出力待ちデータ数が０となり、読み出しエラーが発生する。このような外乱の影響は、周波数差制御部１１２による制御によっても解消されうる。しかし、周波数差制御部１１２による制御はフィードバックループの時定数が大きいので、外乱がこの時定数よりも早く変化する場合に対応できない場合がある。例えば、発振回路１１３の周辺の回路で発生する熱により、フィードバックループの応答時間よりも速く温度が上昇した場合に、発振回路１１３の生成する周波数は温度特性に従って、本来生成すべき周波数よりも大きくなる。一方、発熱のおさまる速さがフィードバックループの応答時間よりも遅い場合に、本来生成すべき周波数からの逸脱は小さい。この結果、スペクトラム拡散クロックの平均周波数が一時的に基準クロックの周波数から外れてしまう。また、平均周波数を取得するタイミングによっては、基準時刻からのパルス差の平均値が初期値Ｉｎｉから外れていたとしても、基準クロックの平均周波数とスペクトラム拡散クロックの平均周波数とが一致してしまう場合がある。このような誤差の蓄積によって、書き込みエラー・読み出しエラーが発生してしまう可能性がある。
【００２５】
そこで、パルス差制御部１２０は、基準時刻以降（ｔ０以降）のパルス差が、−Ｉｎｉ以上（Ｍ−Ｉｎｉ）以下となるように発振回路１１３の生成するスペクトラム拡散クロックの周波数を調整する。基準時刻ｔ０以降のパルス差がこの範囲内に含まれる場合に、メモリ４２０内の出力待ちデータ数は１以上Ｍ以下となり、読み出しエラー・書き込みエラーは発生しない。Ｉｎｉの値は例えばＭ／２としてもよい。例えば、パルス差監視部１３０は、出力待ちのデータ数がＭ／２となった時刻（ｔ０）を基準時刻として、パルス差を継続して監視する。
【００２６】
続いて、パルス差制御部１２０の詳細な動作の具体例を説明する。パルス差制御部１２０は、４つの閾値Ｔｈ１〜Ｔｈ４を格納している。これらの閾値はいずれも、パルス差が含まれるべき範囲に含まれる。これらの閾値はパルス差が含まれるべき範囲とともに設定されてもよい。以下の説明では、４つの閾値Ｔｈ１〜Ｔｈ４が小さいものから順に並んでいるとする。また、初期値ＩｎｉはＴｈ２とＴｈ３との間にあるとする。
【００２７】
パルス差制御部１２０は、パルス差が変化するごとに、パルス差が初期値Ｉｎｉから変化した結果として、出力待ちデータ数がＴｈ１を下回ったかどうか及びＴｈ４を上回ったかどうかを判定する。パルス差監視部１３０の出力するパルス差は、基準クロックのパルスが入力されるごと及びスペクトラム拡散クロックのパルスが出力されるごとに変化しうる。図６の例では、時刻ｔ２で、パルス差制御部１２０は、パルス差が（Ｔｈ１−Ｉｎｉ）を下回ったこと、すなわち出力待ちデータ数がＴｈ１を下回ったことを判定する。時刻ｔ２の時点で、スペクトラム拡散クロックの周波数は減少傾向にあるので、パルス差制御部１２０は現在の動作を継続する。時刻ｔ３で、スペクトラム拡散クロックの周波数が基準クロックの周波数を下回ると、出力待ちデータ数は増加し始める。時刻ｔ４で、グラフ５０１に示すように、周波数差制御部１１２はスペクトラム拡散クロックの周波数を増加させる制御信号を発振回路１１３に供給する。そこで、パルス差制御部１２０は、周波数差制御部１１２の制御を打ち消すように、スペクトラム拡散クロックの周波数を減少させる制御信号を発振回路１１３に供給する。その結果、発振回路１１３が出力するスペクトラム拡散クロックの周波数は時刻ｔ３を過ぎても減少し続ける。その後、時刻ｔ５で、パルス差制御部１２０は、出力待ちデータ数がＴｈ２を上回ったことを判定し、スペクトラム拡散クロックの周波数が増加するように制御する。
【００２８】
上記の例では、パルス差が所定の範囲に含まれ、その結果としてメモリ４２０内の出力待ちデータ数が１以上Ｍ以下となるように、パルス差制御部１２０は、パルス差が閾値を超えた場合に、パルス差が低減するようにスペクトラム拡散クロックの周波数を制御した。このような制御は上記の例に限られない。例えば、パルス差制御部１２０は、初期値Ｉｎｉの上下に１つずつ設定された閾値に基づいて、これらの閾値を超えた場合に、パルス差が０に近づくように、所定の時間及びパターンによってスペクトラム拡散クロックの周波数を制御してもよい。パターンの例として、通常の制御範囲の最大周波数又は最小数波数を超えて一定の期間、周波数の増減を継続してもよいし、最大周波数又は最小数波数を超えた周波数を一定期間維持してもよい。また、パルス差制御部１２０は、通常制御時の平均周波数の上下で変調速度を変えることで、平均周波数を変化させてもよい。上述の例では、パルス差制御部１２０はスペクトラム拡散クロックの周波数を連続的に変化させているが、離散的に変化させてもよい。
【００２９】
上述のように、スペクトラム拡散クロック生成回路１００は、外乱等が発生した場合であってもパルス差が所定の範囲に含まれるようにスペクトラム拡散クロックを制御できる。そのため、事前に決定されたメモリ４２０のサイズに応じてパルス差の許容可能な範囲を設定することで、クロック乗せ換え回路４００が使用するメモリのサイズを低減可能となる。
【００３０】
続いて、図７のブロック図を参照して、本発明の一部の実施形態に係る集積回路７００の構成例を説明する。集積回路７００は半導体集積回路でありうる。集積回路７００は、スペクトラム拡散クロック生成回路１００と、発振回路７１０と、回路素子７２０とを有しうる。発振回路７１０は、基準クロックを生成してスペクトラム拡散クロック生成回路１００へ供給する。スペクトラム拡散クロック生成回路１００は、上述のように、基準クロックに基づいてスペクトラム拡散クロックを生成し、回路素子７２０へ供給する。回路素子７２０は、供給されたスペクトラム拡散クロックに従って動作する。回路素子７２０は、例えばフリップフロップ回路等でありうる。
【００３１】
続いて、図８のブロック図を参照して、本発明の一部の実施形態に係る画像読み取り装置８００の構成例を説明する。画像読み取り装置８００は、例えばＭＦＰ（多機能周辺装置）や、スキャナ、複写機でありうる。画像読み取り装置８００は、クロック乗せ換え回路４００と、読み取り部８１０と、発振回路８２０と、画像処理部８３０とを有しうる。読み取り部８１０は、原稿を読み取って画像データを生成する。読み取り部８１０は、光源、縮小光学部品、ラインセンサ、アナログ／デジタル変換器、コントローラ等で構成されうる。発振回路８２０は、基準クロックを生成して読み取り部８１０とクロック乗せ換え回路４００とへ供給する。読み取り部８１０は供給された基準クロックに従って動作する。基準クロックの周波数は例えば数１００ＭＨｚでありうる。クロック乗せ換え回路４００は、上述のように、基準クロックに従って読み取り部８１０から画像データを受け取り、スペクトラム拡散クロックに従って画像データを画像処理部８３０へ供給する。画像処理部８３０は供給された画像データの処理を行う。読み取り部８１０、発振回路８２０及びクロック乗せ換え回路４００は画像読み取り装置８００の可動部に搭載されてもよく、画像処理部８３０は画像読み取り装置８００の本体部に搭載されてもよい。クロック乗せ換え回路４００と画像処理部８３０とは例えば数十センチメートルのワイヤーハーネスによって接続されうる。
【図１】
2015039148.tif 000003
【図２】
2015039148.tif 000004
【図３】
2015039148.tif 000005
【図４】
2015039148.tif 000006
【図５】
2015039148.tif 000007
【図６】
2015039148.tif 000008
【図７】
2015039148.tif 000009
【図８】
2015039148.tif 000010