JP2008061222A - パルス幅変調信号生成システム - Google Patents

パルス幅変調信号生成システム Download PDF

Info

Publication number
JP2008061222A
JP2008061222A JP2007171534A JP2007171534A JP2008061222A JP 2008061222 A JP2008061222 A JP 2008061222A JP 2007171534 A JP2007171534 A JP 2007171534A JP 2007171534 A JP2007171534 A JP 2007171534A JP 2008061222 A JP2008061222 A JP 2008061222A
Authority
JP
Japan
Prior art keywords
frequency
pulse width
clock
width modulation
phase
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007171534A
Other languages
English (en)
Other versions
JP5452848B2 (ja
Inventor
Peter Johnston
ジョンストン ピーター,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Laboratory USA Inc
Original Assignee
Konica Minolta Laboratory USA Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Laboratory USA Inc filed Critical Konica Minolta Laboratory USA Inc
Publication of JP2008061222A publication Critical patent/JP2008061222A/ja
Application granted granted Critical
Publication of JP5452848B2 publication Critical patent/JP5452848B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/12Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by photographic printing, e.g. by laser printers
    • G06K15/1204Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by photographic printing, e.g. by laser printers involving the fast moving of an optical beam in the main scanning direction
    • G06K15/1223Resolution control, enlarging or reducing, edge or detail enhancement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits
    • H04N1/40025Circuits exciting or modulating particular heads for reproducing continuous tone value scales
    • H04N1/40037Circuits exciting or modulating particular heads for reproducing continuous tone value scales the reproducing element being a laser

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Optics & Photonics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Facsimile Heads (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

【課題】幅広い範囲のプリント基本周波数で使用可能な高解像度のプリント画像を生成するためのシステム及び方法を提供する。
【解決手段】入力データを用いて、入力パルスの一部の幅を有する出力パルスを生成する。幾つかの実施形態において、入力データと、特定の周波数のパルスを有する入力信号とを受け付ける。また、幾つかの実施形態において、位相ロックループを用いて、入力信号の周波数より高い周波数の複数の信号を生成する。これら複数の信号の各々は、他の信号から特定の位相分オフセットされている。また、幾つかの実施形態において、入力データをこれらの複数の信号の各々に同期させる。これら複数の信号間の位相差を利用して、入力データの関数として入力パルスの一部の幅を有する出力パルスを生成する。
【選択図】図2

Description

本開示は、回路の出力パルスの生成に関し、特に、回路の出力パルスの幅の変調に関する。
現在のプリンタ技術において、より高い解像度を提供する上での制約の一つは、データの生成に用いられる電気パルスの幅が関係している。現在のプリンタ技術では、プリントエンジンに電気パルスを提供することによってピクセルを生成している。ピクセルの大きさは、電気パルスの幅の関数である。印刷物用の高い解像度は、例えば、プリントエンジンで用いられる電気パルスの基本周波数より高い周波数で、サブピクセルデータなどのデータを提供することによって得ることができる。より高い周波数でのデータを提供することによって、プリンタは1ピクセル全体を印刷する代わりに1ピクセルの一部を印刷することができ、その処理過程でより高い解像度を得ることができる。
一の手法においては、プリントエンジンの基本周波数よりも高い周波数でシリアルデータが提供されており、グレースケールレベルが調整された1ドットをプリントするために、高い周波数のシリアルデータを用いている。しかしながら、このようなシリアルデータを提供するには、プリントエンジンの解像度よりもはるかに高い解像度を有するパルス生成回路が必要となる。従って、上記手法を用いて印刷物の解像度を16倍に増加させる場合、プリントエンジンの周波数の16倍の周波数でシリアルデータが提供されなければならない。よって、もし、プリントエンジンが30MHzで動作するクロックを有するのであれば、シリアルデータは480MHzで動作するクロックが必要となる。多くの場合、高額な集積回路(IC)を用いるだけで、このような高いクロック速度を得ることができる。
プリンタ解像度を増加させるために用いられる他の手法は、微細に調整されたパルス幅を生成するために固定遅延を用いるものである。この手法の問題点の一つは、幅広い範囲のプリント基本解像度周波数において同様のピクセル調整性能を得るのが容易ではないということである。例えば、基本周波数が1MHzで16グレースケールレベルを生成するように回路が設計されている場合、基本周波数が30MHzの異なるプリンタでは、同一の回路で8グレースケールレベルを提供するだけである。この手法の他の問題点は、不可避的なプロセス変動のためにICによって大きくばらつく傾向があるICゲート遅延により、遅延が通常発生することである。
従って、幅広い範囲のプリント基本周波数で使用可能な高解像度のプリント画像を生成するためのシステム及び方法が必要である。
本発明の幾つかの実施形態に基づいて、プリント画像の解像度を増加させるためのシステム及び方法が示されている。幾つかの実施形態では、入力データ及びクロック信号が受信され、入力クロックよりも高い周波数を有する一組のクロック信号が生成される。この組の各々のクロック信号は、当該組の他のクロック信号と位相が異なる。このシステムでは、当該組のクロック信号を用い、入力データの関数として出力パルス幅が変調された信号を生成する。
幾つかの実施形態では、プリンタ解像度を増加させるために、複数のパルス幅変調(PWM)回路が使用可能である。幾つかの実施形態において各PWM回路は、入力データと、互いに異なる位相を有する複数のクロック信号のうちの1つと、を受信することができる。各PWM回路は、それぞれのPWM回路によって受信されたクロック信号に同期した信号を生成する。幾つかの実施形態では、各PWM回路からの出力が、論理回路によって入力データの関数として合成されることにより、出力PWM信号が生成される。これらの実施形態及び他の実施形態については、図面を参照して以下詳細に説明する。
ここで、添付の図面において図示される一以上の本発明の例示的な実施形態について詳細に説明する。図面においては、可能な限り、同一の参照符号が同一又は類似の部分を参照する際に用いられる。
図1は、例示的なコンピュータ101に接続された例示的なプリンタ100を示すブロック図である。プリンタ100は、レーザプリンタ、LEDプリンタ、又は本発明の原理と矛盾しないその他のプリンタでありうる。コンピュータ101は、コンピュータワークステーション、デスクトップコンピュータ、ラップトップコンピュータ、又はプリンタ100とともに使用可能なその他のコンピュータデバイスでありうる。接続120は、コンピュータ101とプリンタ100とを接続するものであり、従来の通信プロトコル及び/又はデータポートインターフェースを用いた有線又は無線による接続として実施可能である。概して、接続120は各装置の間のデータ通信を行うあらゆる通信チャネルでありうる。ある実施形態においては、例えば、適切な接続120を通じてデータ通信をするために、USB、ファイヤーワイヤー、及び/又はシリアルポート若しくはパラレルポートなどの従来のデータポートを装置に設けることができる。こうした通信リンクは、無線リンク若しくは有線リンク、又はコンピュータデバイス101とプリンタ100との間で通信を行う本発明の実施形態と矛盾しないあらゆる組み合わせが可能である。
幾つかの実施形態において、プリンタ100によって受信されたデータは、プリンタ100内の制御ロジックによって規定されているように、例示的なデータバス170のような内部のデータ経路並びにその他のデータ及び制御信号経路(図示せず)を通じてプリンタ100内部の様々な機能モジュールに送信されうる。幾つかの実施形態において、コンピュータ101からプリンタ100へ送信されるデータには、ルーティングを容易にするためのあて先アドレス及び/又はコマンドが含まれうる。幾つかの実施形態において、データバス170は、各モジュールの間でデータや電力を移送するサブシステムを備えうる。幾つかの実施形態において、データバス170は、幾つかのモジュールを同一のセットのワイヤ又はそれぞれの接続ごとに異なるワイヤによって論理的に接続しうる。幾つかの実施形態において、データバス170はパラレルバスと同一の論理的機能を有するあらゆる物理的配置であることができ、パラレル接続及びビットシリアル接続の双方とも備えうる。幾つかの実施形態において、データバス170は電気的なパラレル配置若しくはデイジーチェイン配置のいずれか、又はスイッチングハブによって接続されうる。
幾つかの実施形態では、画像データ入力/出力(“IO”)モジュール102、中央処理装置(CPU)103、ダイレクトメモリアクセス(DMA)制御モジュール105、メモリ104、及び展開モジュール106は、データバス170を用いて接続されうる。本発明の幾つかの実施形態によれば、画像データI/Oモジュール102によって受信されたデータは、CPU103の制御の下、DMA制御モジュール105を用いて、メモリ104に置かれる。展開モジュール106は更に、パルス幅変調(PWM)論理モジュール107に接続されうる。幾つかの実施形態において、展開モジュール106は、圧縮されたピクセルデータを受信し、受信したピクセルデータを展開し、PWM論理モジュール107に送信しうる。
各種データ及び制御信号経路を通じて、PWM論理モジュール107、ピクセルクロック生成モジュール181、駆動回路108、プリントヘッド109、装置コントローラ123、ビーム検出センサ112、及び転写ベルト位置センサ125が接続されうる。幾つかの実施形態において、プリントヘッド109はレーザプリントヘッドであり得る。幾つかの実施形態において、ビーム検出センサ112及び/又はベルト位置センサ125はそれぞれ、一画像における各走査線、又は一画像における一組の走査線、又は各画像に対応する幾つかの信号を生成し、生成された信号を装置コントローラ123に送信し、装置コントローラ123はPWM論理モジュール107に信号を送信する。
駆動回路108は、PWM論理モジュール107及びプリントヘッド109に通信可能に接続されうる。幾つかの実施形態においては、走査ミラー111は、走査ミラー111の回転に使用可能な走査モータ110に機械的に又は電磁的に接続されうる。プリントヘッド109からの光は走査ミラー111へ送られ、その光を走査ミラー111が、ビーム検出センサ112及びドラムへのビームガイドミラー113にそれぞれ異なる時点に反射しうる。ドラムへのビームガイドミラー113は、走査ミラー111からの光を感光ドラム114に反射しうる。ドラム帯電器116は感光ドラム114を帯電させるのに用いられうる。
用紙175は給紙トレイ126から転写ローラ124を用いて転写ベルト117へ搬送され、転写ベルト117では感光ドラム114上の潜像が用紙175に転写されうる。幾つかの実施形態においては、感光ドラム114上の潜像は用紙175に転写される前に現像ステーション115においてトナーを用いて現像されうる。感光ドラム114から用紙175への画像の転写は、用紙が転写ベルト117に載せられている間なしうる。画像が転写された後は、用紙175は転写ローラ124を用いて用紙搬送経路118上を搬送され、さらに定着器119、ガイドローラ121を通り、排紙トレイ122へと搬送されうる。幾つかの実施形態において、定着器119は転写された画像の用紙175への接着を促進しうる。
プリンタ100の例示的なプリントエンジン150は、ビーム検出センサ112、ドラムへのビームガイドミラー113、現像ステーション115、感光ドラム114、ドラム帯電器116、走査ミラー111、走査モータ110、及びプリントヘッド109を備えうる。例示的な画像電子サブシステム160にはCPU103、画像データI/Oモジュール102、メモリ104、DMA制御モジュール105、データバス170、展開モジュール106、PWM論理モジュール107、駆動回路108が含まれうる。上述の各種モジュール及びサブシステムはハードウェア、ソフトウェア、若しくはファームウェア又はこれらの様々な組み合わせとして実施されうる。
幾つかの実施形態において、コンピュータ101は画像電子サブシステム160に接続120を通じて画像データを送信しうる。コンピュータ101から送信される画像データは圧縮されたものでありうる。幾つかの実施形態においては、圧縮された画像データはラインごとに順次圧縮された形式のものでありうる。その他の各種形式、例えばポストスクリプト、PCL、及び/又はその他の一般の若しくは独自のページ記述言語などを用いて、データの転送をすることができる。画像データI/Oモジュール102によって画像データが受信された後、CPU103の制御の下でDMA制御モジュール105を用いて、画像データはメモリ104に置かれうる。幾つかの実施形態においては、完全な一ページの画像データがメモリ104に格納されると、プリントシーケンスが開始されうる。幾つかの実施形態においては、装置コントローラ123によって、適切なデータ及び/又は制御信号を通じて、走査モータ110、感光ドラム114、及び転写ベルト117の動作が開始されうる。
ビーム検出センサ112によって、レーザビームの位置を検出することができ、印刷された画像のラインとラインが正しく並べられるように、画像電子サブシステム160に送信されるパルスが生成されうる。幾つかの実施形態においては、画像の各ラインの走査の最初に、プリントヘッド109からの光が走査ミラー111によってビーム検出センサ112へと反射されうる。ビーム検出センサ112によって装置コントローラ123へ信号が送られ、次に装置コントローラ123によって、ビーム検出信号240がPWM論理モジュール107へ送信されうる。幾つかの実施形態においては、これらとは異なる信号であって、一般にデータ先頭信号(TOD信号)又は垂直同期信号(「vsync」信号)といわれる信号が、転写ベルト位置センサ125から受信した情報に基づいて、装置コントローラ123によって生成されうる。TOD信号又はvsync信号によって用紙175への画像データの転送をいつ始められるかが示される。例えば、幾つかの実施形態において、用紙175が転写ベルト位置センサ125を通過すると、TOD信号が装置コントローラ123を通じてPWM論理モジュール107へ送信されうる。一旦TOD信号が受信されると、CPU103によってメモリ104から展開モジュール106への転送が開始されうる。幾つかの実施形態において、展開モジュール106によって画像データが展開され、得られた原画像データはPWM論理モジュール107へ転送される。結果としてPWM論理モジュール107から生じたPWMパルスは、駆動回路108へストリームされ、続いてPWMパルスは駆動回路108からさらにプリントヘッド109へ送信されうる。
幾つかの実施形態においては、プリントヘッド109からのレーザ光がパルスにされ、走査ミラー111及びドラムへのビームガイドミラー113に反射されることで、感光ドラム114上に帯電させた領域と帯電させていない領域の潜像が形成される。幾つかの実施形態では、現像ステーション115において、トナーを用いて前記潜像が現像され、転写ベルト117へ転写されうる。カラー画像などのような複数のコンポーネントを有する画像においては、潜像を形成する処理は各コンポーネントについて繰り返されうる。例えば、CMYKカラープリンタにおいては、シアン(「C」)、マゼンタ(「M」)、イエロー(「Y」)、及びブラック(「K」)を用いるもので、感光ドラム114上の潜像を形成する処理はC、M、Y、及びKのそれぞれの色について繰り返されうる。幾つかの実施形態において、すべてのコンポーネントが転写ベルト117上に揃えられると、用紙175が給紙トレイ126から転写ローラ124へ給紙され、用紙175に画像が転写されうる。幾つかの実施形態では、次に、定着器119によってトナーを用紙175に定着させ、用紙175はガイドローラ121によって排紙トレイ122へ搬送される。
ピクセルクロック生成モジュール181は水晶発振器若しくはプログラム可能な水晶発振器又はその他あらゆる適切なクロック生成装置でありうる。幾つかの実施形態において、例えば、複数のパスを有するプリンタ100においては、各色の映像データが連続的に順次送信されるものであるが、ピクセルクロック生成モジュール181によって生成されるクロック周波数は、プリンタのパスごとに固定されうる。例えば、複数のパスを有するプリンタ100においては、ピクセルクロック生成モジュール181は水晶発振器でありうる。その他の実施形態において、例えば、時にまとめて「タンデムエンジン」と呼ばれる、複数組のプリントエンジン150を用いたプリンタ100については、各チャネルの周波数が、コンポーネントである各色に対応するピクセルクロックの間で異なる場合に、周波数は較正されうる。このような実施形態においては、プログラム可能な一以上のクロック発振器が較正のために用いられうる。
プリンタ100の例示的な実施形態では、複数のプリントヘッド109に接続された複数組のプリントエンジン150を駆動する駆動回路108が備えられうる。幾つかの実施形態においては、プリントヘッド109はすべてレーザプリントヘッドであり得る。また、画像電子サブシステム160のモジュールが個別に複数備えられうる。例えば、一つの展開モジュール106が複数のPWM論理モジュール107に接続可能である。PWM論理モジュール107はそれぞれさらに一以上のピクセルクロック生成モジュール181及び一以上の駆動回路108に接続されうる。画像の一以上の色のコンポーネントのデータは展開モジュール106から各PWM論理モジュール107に提供され、続いて複数の駆動回路108に送られ、さらに一以上の組のプリントエンジン150へ送信されうる。
他の実施形態において、複数の展開モジュール106が複数のPWM論理モジュール107に接続されうる。各展開モジュール106はPWM論理モジュール107に画像の展開コンポーネントを提供することができる。他の実施形態では、一つのPWM論理モジュール107が複数の駆動回路108に画像の複数のコンポーネントを提供することができる。
幾つかの実施形態においては、プリンタ100はレーザプリントヘッドごとに複数のレーザを備えうる。幾つかの実施形態において、プリントヘッド109は複数ラインのデータを駆動回路108から受信し、前記複数ラインのデータを走査ミラー111に投影しうる。続いて、走査ミラー111によって前記複数ラインのデータがビーム検出センサ112及びガイドミラー113へと反射され、これらによって前記複数ラインのデータは感光ドラム114へと反射されうる。幾つかの実施形態においては、ビーム検出センサ112によって、走査ミラー111に反射されたレーザ信号などの単独の信号又は走査ミラー111に反射された複数の信号を検出可能である。
本実施形態において扱われる接続には電子接続、同軸ケーブル、銅線及び光ファイバが含まれうるが、これらに限定されず、データバス170を構成するワイヤも含まれる。接続はまた音波や光波の形態をとることがあり、例えば電波及び赤外線通信において生成されるもの並びにレーザがあげられる。接続はまた制御情報の通信又は他の情報機器との一以上のネットワークを通じたデータ通信により実現しうる。本実施形態において用いられる機械的接続又は電気機械的接続には、物理的なコンポーネントの使用、例えばモータ、ギヤカップリング、ユニバーサルジョイントの使用、又は部品の接続に使用可能なその他のあらゆる機械的、電気機械的装置の使用が含まれうるが、これらに限定されない。
上述の論理モジュール又は機能モジュールは、それぞれ複数のモジュールを備えうる。各モジュールは個別に実施されるか、又はこれらの機能は他のモジュールの機能と組み合わせ可能である。さらに、それぞれのモジュールは個別のコンポーネントに実施されるか、又はコンポーネントの組み合わせとして実施可能である。
CPU103、展開モジュール106、PWM論理モジュール107は、それぞれFPGA(Field-Programmable Gate Array)、ASIC(Application-Specific Integrated Circuit)、CPLD(Complex Programmable Logic Device)、プリント回路基板(PCB)、プログラム可能な論理コンポーネント及びプログラム可能な相互接続の組み合わせ、単独のCPUチップ、マザーボードに接続されたCPUチップ、汎用コンピュータ、又は103、106、107の各モジュールのタスクを実行できるその他あらゆる装置若しくはモジュールの組み合わせとして実施可能である。幾つかの実施形態において、メモリ104は情報及び画像電子サブシステム160によって実行される命令を格納するためにデータバス170に接続される、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、プログラマブル読み出し専用メモリ(PROM)、フィールドプログラマブル読み出し専用メモリ(FPROM)、又はその他のダイナミックメモリを備えうる。
図2は、本発明の幾つかの実施形態に係る例示的なPWM論理モジュール107のブロック図を示している。この例示的なPWM論理モジュール107は、複数のデータ同期回路211、212、213、214、215と、第1加算パルス生成器221と、複数の第2加算パルス生成器222、223、224、225と、論理ゲート230と、位相ロックループ(PLL)モジュール240と、を含む。例示的なPWM論理モジュール107では、PLLモジュール240はクロック生成部として機能し得る。図2に示すように、PLLモジュール240は、データ同期回路211〜215の各々と、第1加算パルス生成器221と、第2加算パルス生成器222〜225とに接続される。また、図2に示すように、データ同期回路211〜215の各々は、加算パルス生成器221〜225のうちの1つと接続される。例示的なPWM論理モジュール107では、データ同期回路211〜215と、加算パルス生成器221〜225と、論理ゲート230との組み合わせは、パルス幅変調信号生成部として機能し得る。入力ピクセルクロック201とピクセルデータ206は、例示的なPWM論理モジュール107に入力され、このPWM論理モジュール107はPWM出力信号230aを出力する。幾つかの実施形態では、ピクセルデータ206は、クロック周期あたり複数ビットのピクセルデータにより構成される。例えば、図2に示す例示的なPWM論理モジュール107では、ピクセルデータ206は4ビット数である。
図2に示すように、ピクセルクロック201はPLLモジュール240に入力され、PLLモジュール240は位相シフトクロック信号240a〜dを出力する。各クロック信号240a〜dは異なる位相を有しているため、クロック信号240a〜dは位相差クロック信号と称される。例示的な位相シフトクロック信号は、位相0クロック240a、位相90クロック240b、位相180クロック240c、位相270クロック240dを含む。幾つかの実施形態においてPLLモジュール240は、ピクセルクロック201の倍数の周波数を有する位相シフトクロック信号を出力する。例えば、図2に示す例示的なPWM論理モジュール107では、位相シフトクロック信号240a〜dの各々は、ピクセルクロック信号201の4倍の周波数を有する。更に、幾つかの実施形態では、連続する位相シフトクロック信号間の位相差は、360°を位相シフトクロックの数で除算した数に等しい。例えば、図2に示すように、4つの位相シフトクロック信号240a〜dを有する例示的なPWM論理モジュール107では、位相0クロック240aは0°シフトされ、一方、位相90クロック240bは90°位相シフトされ、位相180クロック240cは更に90°位相シフトされて180°となり、位相270クロック240dは更に90°位相シフトされて270°となっている。なお、幾つかの実施形態において、位相シフトクロックの数は4より多くても少なくてもよい。また、幾つかの実施形態において、PLLモジュール240は、位相ロックループ(PLL)を用いて実現されてもよい。
図2に示すように、PLLモジュール240はデータ同期回路211〜215に接続されている。例示的なPWM論理モジュール107の実施形態において、データ同期回路211〜215は、ピクセルデータ206を位相シフトクロック240a〜dのうちの1つと同期させることによって、同期化回路として機能し得る。データ同期回路211〜215の各々は、PLL240から出力された位相0クロック240aと、ピクセルデータ206とを入力として受信する。更に、データ同期回路211及び212は、0°のデータオフセットで、それぞれ加算パルス生成器221及び222に接続される。データ同期回路213〜215の各々は、ピクセルデータ206を付加的な位相シフトクロック信号入力と同期させる。例えば、位相0クロック240a及びピクセルデータ206に加えて、データ同期回路214は、PLLモジュール240から出力された位相180クロック240cを入力として更に受信する。データ同期回路214は、ピクセルデータ206を、180°の位相シフトを有する位相180クロック240cと同期させることができる。同様に、データ同期回路213及び215も、ピクセルデータ206をそれぞれ位相90クロック240b及び位相270クロック240dと同期させることができる。
例示的なPWM論理モジュール107では、第1加算パルス生成器220の出力用のプライマリ・ドメインとして、ピクセルクロック201の0°オフセットが使用可能である。幾つかの実施形態では、例示的な信号240aのように、第1加算パルス生成器220に入力される位相シフトクロック信号は、第2加算パルス生成器212〜215の何れにも入力されない。幾つかの実施形態では、データ同期回路211〜215から出力された同期ピクセルデータ211a〜215aは、それぞれ加算パルス生成器221〜225に入力される。
図3aは、本発明の幾つかの実施形態に係る例示的なデータ同期回路214の図を示している。幾つかの実施形態では、データ同期回路211、212、213、215においても、図3aに示したものを適正に変更した類似した回路を用いるのがよい。図3aに示す例示的なデータ同期回路214は、D型フリップフロップ301〜304と311〜314とを含んでいる。データ同期回路214は、位相0クロック240aと、位相180クロック240bと、ピクセルデータ206とを入力として受ける。データ同期回路214は、位相180クロック240cに同期した同期180ピクセルデータ214aを出力する。幾つかの実施形態において、データ同期回路214は、FPGA、ASIC(Application-Specific Integrated Circuit)、CPLD(Complex Programmable Logic Device)、プリント回路基板(PCB)、プログラム可能な論理コンポーネント及びプログラム可能な相互接続の組み合わせ、又はデータ同期回路の機能を実行可能なその他のデバイス若しくはモジュールの適切な組み合わせによって実現可能である。
図3aに示す例示的なデータ同期回路214は、入力ピクセルデータ206を4つのビット線206a〜dにそれぞれ分割可能である。例えば、ビット線206aは最下位ピクセルビットであるビット0を伝送し、ビット線206bはビット1を伝送し、ビット線206cはビット2を伝送し、ビット線206dはビット3を伝送することが可能である。ビット線206a〜dは、それぞれ対応するフリップフロップ301〜304に入力されうる。図3aに示す例示的なデータ同期回路214では、フリップフロップ301は、位相0クロック240aの立ち上がりエッジで、ビット線206a上の信号に対応するD入力の値を取り込む。フリップフロップ遅延の後、フリップフロップ301は、取り込まれた信号をQ出力に出力する。フリップフロップ301のQ出力は中間ビット線301aに接続されており、中間ビット線301aはフリップフロップ311のD入力に入力される。フリップフロップ311は、位相180クロック240cの立ち上がりエッジで、中間ビット線301a上の信号を取り込む。この場合も、フリップフロップ遅延の後、フリップフロップ311は、取り込まれた信号を、出力ビット線311aに接続されたQ出力に出力する。フリップフロップ311は、位相180クロック240cの立ち上がりエッジに従ってデータを取り込んで出力するため、出力ビット線311a上に出力される信号は位相180クロック240cに同期可能となる。同様に、同期された出力ビット線312a〜314aは、それぞれ位相0クロック240a、位相90クロック240b、位相270クロック240dに同期される。その結果、幾つかの実施形態において、出力ビット線311a、312a、313a、314aは同期180ピクセルデータ214aに合成されうる。
図3bは、本発明の幾つかの実施形態に係る図3aに示した例示的なデータ同期回路のタイミング図を示している。図3bは、位相0クロック240a、入力ピクセルデータ206、中間ピクセル信号301、位相180クロック240c、同期180ピクセルデータ214aのタイミング図を示している。このタイミング図に示すように、入力ピクセルデータ206は、位相0クロック240aの立ち上がりエッジ350で取り込まれる。入力ピクセルデータ206は、位相クロック240aの立下りエッジの時に点351で変化するように示されているが、現在のピクセルデータがフリップフロップ301〜304によって取り込まれている限り、位相0クロック240aの1パルスの間はいつでも、入力ピクセルデータ206は変化することができる。フリップフロップ遅延352の後、その取り込まれた信号は中間ピクセルデータ360として出力される。そして、中間ピクセルデータ360は、位相180クロック240cの立ち上がりエッジ353で取り込まれる。フリップフロップ遅延354の後、その取り込まれたデータは同期ピクセルデータ214aとして出力される。
PWMモジュール107の幾つかの実施形態では、データ同期回路211、212、213、215においてもデータ同期回路214と同様の方法で動作可能である。従って、
データ同期回路211〜213、215のタイミング図は、位相シフトクロック及び対応する同期ピクセルデータが、異なる位相でオフセットされていることを除けば、図3bに示したものと類似する。よって、例えば、同期ピクセルデータ213aは90°オフセットされ、同期ピクセルデータ215aは270°オフセットされる。同期ピクセルデータ211a及び212aは0°のオフセットを有し、同期ピクセルデータ211a及び212aが、90°、180°、270°の領域のピクセルデータと等しい量だけ遅延されるように、類似したデータ同期回路に入力可能である。
遅延352は、セットアップ、ホールド及びフリップフロップ遅延の合計時間を表している。図3bのタイミング図に示すように、フリップフロップ301〜304の出力のインテグリティを保証するために、遅延352が、位相0クロック240aと、位相90クロック240b、位相180クロック240c、位相270クロック240dの何れかとの間の最小スキューより小さくなるように設計可能である。例として、図3aに示す例示的なデータ同期回路を用いて、動作周波数が245MHz以下で4クロックドメインとした場合、合計遅延は、[(1/4)*(1/245MHa)]又は1.02nsとなる。従って、その回路はXILINX SPARTAN 3 FPGAを用いて設計することができる。XILINX SPARTAN 3 FPGAは、セットアップ、ホールド及びフリップフロップ遅延の時間が、それぞれ0.42ns、0.6ns、0nsとなるので、合計遅延は1.02nsとなり、設計パラメータを満たしている。
図4aは、本発明の幾つかの実施形態に係る例示的な第1加算パルス生成器221の図を示している。幾つかの実施形態では、データ同期回路211の出力211aは第1加算パルス生成器221に入力され得る。第1加算パルス生成器221は、同期ピクセルデータ211a及び位相0クロック240aを入力として受信し、第1加算パルス出力221aを生成し得る。図4aに示すように、同期ピクセルデータ211aは4ビットの16進数0×Aから構成される。図4aは、0×Aの入力に対する第1加算パルス出力460aの生成に用いられるアクティブゲートを示している。出力460aを生成するためのメモリゲートの動作は、同期ピクセルデータ211aの値に基づいて変化する。幾つかの実施形態では、第1加算パルス生成器221は、カウンタ410と、デマルチプレクサ420と、デマルチプレクサ430と、論理ゲート440、450、460と、を含む。
図4bは、図4aに示した例示的な第1加算パルス生成器のタイミング図を示している。図4bは、ピクセルクロック405と、同期ピクセルデータ406と、位相0クロック415と、位相0カウンタ416と、論理ゲート450からの出力信号455と、論理ゲート440からの出力信号445と、第1加算パルス出力465と、を示している。
幾つかの実施形態では、カウンタ410はデマルチプレクサ420に接続され、PLLモジュール240から出力された位相0クロック240aを入力として受信する。カウンタ410は、接続410a及び410bを介して2ビット数をデマルチプレクサ420に出力する。図4bに示すように、カウンタ410は、位相0クロック240aの各パルス毎に、接続410a及び410bを伝送する2ビット数をインクリメントし得る。図4bに示すように、位相0クロック415は位相0クロック240aの信号を表している。位相0カウンタ416はカウンタ410の出力を表している。図4bのタイミング図に示すように、位相0カウンタ416は、位相0クロック415の各立ち上がりエッジで、0×3の値になるまでインクリメントする。0×3の値になった時点で、位相0カウンタ416は0×0の値に戻り、インクリメントを再開する。従って、位相0カウンタ416は、ピクセルクロック405の1周期の間に0×0から0×3にインクリメントする。接続410a及び410bの一方は、カウンタ410からの最上位ビットを伝送し、他方は最下位ビットを伝送する。410a及び410bのビット順の決定は、実装時固有のものであり、カウンタ410の出力接続によるものとしてもよい。なお、図4aに示すカウンタ410は例示である。2ビット以上を出力し、且つ/又はより大きい値までカウントするカウンタを有するカウンタ410の実施形態を、当業者は理解できるであろう。
図4aに示すように、デマルチプレクサ420はカウンタ410及び論理ゲート450に接続される。本実施形態において、デマルチプレクサ420は、カウンタ410から接続410a及び410bの入力を受信し、接続410a及び410bによる入力に基づいて接続420a〜dのうちの1つを論理値highでアクティブにする。デマルチプレクサ420が接続410a及び410bにより入力として0×0を受け取ったとき、接続420aはアクティブになる。デマルチプレクサ420が0×1を受け取ったとき、接続420bはアクティブになる。デマルチプレクサ420が0×2を受け取ったとき、接続420cはアクティブになる。デマルチプレクサ420が0×3を受け取ったとき、接続420dはアクティブになる。なお、図4aに示すデマルチプレクサ420は例示である。2以上の入力を受け付け、4以上の出力を有するデマルチプレクサを含むカウンタ420の実施形態を、当業者は理解できるであろう。
論理ゲート450は、論理ゲート460及びデマルチプレクサ420に接続されており、デマルチプレクサ420からの接続420a〜cを入力として受ける。論理ゲート450は、入力420a〜cの何れかがデマルチプレクサ420によってアクティブになったとき、出力450aに論理値highを出力できる。これに対応して、入力420dがデマルチプレクサ420によってアクティブになったとき、論理ゲート450は接続450aに論理値lowを出力する。従って、図4bのタイミング図に示すように、カウンタ410が値0×0〜0×2をデマルチプレクサ420に出力したとき、出力信号455は論理値highを有する。カウンタ410が値0×3をデマルチプレクサ420に出力したとき、420dがアクティブとなり、出力信号455は論理値lowを有する。なお、論理ゲート450が論理ORゲートとして示されているが、第1加算パルス生成器220に適用可能な設計の検討をすることによって他の論理ゲートが適切に用いられることは、当業者が理解できることであろう。論理ゲート450の出力は、論理ゲート460によって受信される。
図4aを再度参照する。デマルチプレクサ430は、接続430a〜dによって論理ゲート440に接続され、データ同期回路211から同期ピクセルデータ400を入力として受信する。デマルチプレクサ430は、1ピクセルクロック周期で、同期ピクセルデータ211aから複数ビットのデータを受信することができる。図4aに示すように、同期ピクセルデータ211aは、0×0から0×Fの数を表す4ビットのデータを伝送することができる。デマルチプレクサ430は、同期ピクセルデータ211aの入力に従って接続430a〜dのうちの1つをアクティブにする。図4aに示すように、同期ピクセルデータ211aは、16進数0×Aの2進表現である(1010)を伝送する。デマルチプレクサ430は、この入力を利用して、ポートA用の出力に対応する接続430bをアクティブにする。デマルチプレクサ430が、論理ゲート440以外の他の論理ゲートに接続されてもよいことは、当業者が理解できることであろう。例えば、幾つかの実施形態において、0×1〜0×4、0×5〜0×8、0×9〜0×C、0×D〜0×Fに対するデマルチプレクサ430の出力が、それぞれ、1番目の論理ゲート、2番目の論理ゲート、3番目の論理ゲート、4番目の論理ゲートに接続可能である。また、幾つかの実施形態において、正しい信号が第1加算出力接続460aに出力されるように、第1加算パルス生成器420に、付加的な論理ゲートの出力に適合する付加的な回路構成を含めてもよい。更に、幾つかの実施形態において、デマルチプレクサ430が、図4aの例示的な回路で示した同期ピクセルデータ211aの4ビット入力より大きいビット数でも小さいビット数でも入力として受け入れ可能であることは、当業者が理解できることであろう。また、幾つかの実施形態において、デマルチプレクサ430の出力接続の数を、同期ピクセルデータ211aの入力数に適合するように調整するようにしてもよい。
図4bを参照すると、同期ピクセルデータ406は、ピクセルクロック405の1周期の間は不変となっている。例えば、図4aに示した実施形態では、同期ピクセルデータ406は、ピクセルクロック405の1周期の間、0×Aに対応する信号レベルにとどまっている。ピクセルクロック405の1周期は、位相0カウンタ416が0×0から0×3にインクリメントするまでの間持続するので、同期ピクセルデータ406はこの間信号0×Aを維持する。従って、デマルチプレクサ430への入力は、この間不変である。その結果として、位相0カウンタが0×0から0×3までインクリメントしているとき、デマルチプレクサ430は、highレベルの論理信号を、論理ゲート440に接続された接続430bに出力し続ける。
図4aに示すように、論理ゲート440は、デマルチプレクサ430及び論理ゲート460に接続されている。接続430a〜dの何れかがデマルチプレクサ430によってアクティブにされたとき、例示的な論理ゲート440は接続440aにhighレベルの論理信号を生成する。従って、この論理ゲート440は、接続430bがアクティブ状態であるときに、接続440aにhighレベルの論理信号を生成する。同期ピクセルデータ406が0×Aの値に保持されている図4bを参照すると、接続430bは、ピクセルクロック405の1周期の間アクティブ状態となる。従って、接続440a上の出力信号445は、ピクセルクロック405の1周期の間highレベルのままである。デマルチプレクサ430の他の出力が、同様の論理ゲート(図示せず)への入力として用いられることは、当業者が理解できることであろう。また、第1加算パルス生成器221の設計の検討及び実装時固有事項に基づいて他の構成の論理ゲートが使用可能であることは、当業者が理解できることであろう。
図4aに示すように、論理ゲート460は、論理ゲート440及び450に接続されており、論理ゲート440及び論理ゲート450の出力を入力として受信し、その入力信号を用いて出力460aを生成する。例示的な論理ゲート460はANDゲートであるので、接続440a及び450aの双方がhighレベルの論理信号を有するとき、highレベルの論理信号を生成する。図4bのタイミング図に示すように、接続450a上の出力信号455は、位相0カウンタ416が0×0と0×2の間をインクリメントしているときに、highレベルの論理信号を維持する。接続440a上の出力信号445は、位相0カウンタ416が0×0と0×3の間をインクリメントしているときに、highレベルの論理信号を維持する。従って、位相0カウンタ416が0×0から0×2へインクリメントしているとき、論理ゲート460は接続460aにhighレベルの論理信号を出力する。位相0カウンタ416が0×3までインクリメントした時、論理ゲート450の出力信号455は、lowレベルの論理値に変化する。その結果として、図4bに示すように、論理ゲート460の接続460a上の第1加算パルス出力465も、この時点でlowレベルの論理値に変化する。なお、第1加算パルス生成器221の設計の検討及び実装時固有事項に基づいて他の構成の論理ゲートが使用可能であることは、当業者が理解できることであろう。
第1加算パルス生成器の機能を実現するため、種々のデバイスが使用可能である。例えば、FPGA、ASIC(Application-Specific Integrated Circuit)、CPLD(Complex Programmable Logic Device)、プリント回路基板(PCB)、プログラム可能な論理コンポーネント及びプログラム可能な相互接続の組み合わせ、又は第1加算パルス生成器の機能を実行可能なその他のデバイス若しくはモジュールの組み合わせによって実現可能である。
図5aは、本発明の幾つかの実施形態に係る例示的な第2加算パルス生成器224の図を示している。幾つかの実施形態において、図5aに示した回路に類似し、適切に変更された回路を、第2加算パルス生成器222、223、225に用いてよい。図5aは、0×Aの入力に対する位相180加算パルス出力540aの生成に用いられるアクティブゲートを示している。位相180加算パルス生成器224は、データ同期回路214の出力を受信する。位相180加算パルス生成器224は、同期ピクセルデータ214aとして0×Aを受信する。ピクセルデータ214aが0×Aとは異なるとき、位相180加算パルス出力540aを生成するために、他のゲート(図示せず)が同じように使用可能である。位相180加算パルス生成器224は、カウンタ510と、デマルチプレクサ520と、デマルチプレクサ530と、論理ゲート540と、を含む。
図5bは、本発明の幾つかの実施形態に係る図5aに示した例示的な第2加算パルス生成器224のタイミング図を示している。図5bは、ピクセルクロック405と、同期ピクセル入力信号506と、位相180クロック515と、位相180カウンタ516と、カウンタ信号525と、ピクセル信号535と、第2加算出力545と、を示す。
カウンタ510は、デマルチプレクサ520に接続されており、PLLモジュール240からの位相180クロック240cを入力として受信し、接続510a及び510bを介して2ビット数をデマルチプレクサ520に出力する。図5aに示すように、カウンタ510は、位相180クロック240cのパルスの受信により、接続510a及び510bを伝送する2ビット数をインクリメントする。図5bに示すように、位相180クロック515は、位相180クロック240cによって伝送される信号を表し、位相180カウンタ516は、カウンタ510の出力を表す。図5bに示すように、位相180カウンタ516は、位相180クロック515の各立ち上がりエッジで0×3の値になるまでインクリメントする。0×3の値になると、位相180カウンタ516は値0×0に戻り、インクリメントを再開する。接続510a及び510bの一方は、カウンタ510からの最上位ビットを伝送し、他方は最下位ビットを伝送する。接続510a及び510bのビット順の決定は、実装時固有のものであり、且つ/又はカウンタ510の出力接続によるものとしてもよい。2ビットより多く出力し、且つ/又はより大きい値までカウントするカウンタを有するカウンタ510の実施形態を、当業者は理解できるであろう。
図5aに示すように、デマルチプレクサ520はカウンタ510及び論理ゲート540に接続される。本実施形態において、デマルチプレクサ520は、カウンタ510から接続510a及び510bを入力として受け、接続510a及び510bによる入力に基づいて接続520a〜dのうちの1つを論理値highでアクティブにする。デマルチプレクサ520が接続510a及び510bにより入力として0×0を受け取ったとき、接続520aはアクティブになる。デマルチプレクサ520が0×1を受け取ったとき、接続520bはアクティブになる。デマルチプレクサ520が0×2を受け取ったとき、接続520cはアクティブになる。デマルチプレクサ520が0×3を受け取ったとき、接続520dはアクティブになる。幾つかの実施形態において、デマルチプレクサ520は、カウンタ510から出る接続の数が増加しても受け付け可能である。図5aに示すデマルチプレクサ520は例示である。なお、2以上の入力を受け付け、4以上の出力を有するデマルチプレクサを含むカウンタ420の実施形態を、当業者は理解できるであろう。
図5aに示すように、デマルチプレクサ530は、接続530aによって論理ゲート540に接続され、データ同期回路214から同期ピクセルデータ214aを入力として受信する。デマルチプレクサ530は、1ピクセルクロック周期で、同期ピクセルデータ214aの複数ビットのデータを受信することができる。図5aに示すように、同期ピクセルデータ214aは、0×0から0×Fの数を表す4ビットのデータを伝送することができる。デマルチプレクサ530は、同期ピクセルデータ214aの入力に従って接続のうちの1つをアクティブにする。図5aに示すように、同期ピクセルデータ214aは、16進数0×Aの2進表現である(1010)を伝送する。デマルチプレクサ530は、この入力を利用して、デマルチプレクサ530のポートAに対応する接続530aをアクティブにする。デマルチプレクサ530が、論理ゲート540以外の他の論理ゲートに接続されてもよいことは、当業者が理解できることであろう。例えば、幾つかの実施形態において、0×1〜0×9と0×B〜0×Fの各々に対する出力接続が、それぞれ、論理ゲート540と同様の機能を有する1つの論理ゲートに接続可能である。正しい信号が接続540aに出力されるように、位相180加算パルス生成器223に、これらの付加的な論理ゲートの出力に適合する付加的な回路を含めてもよい。更に、幾つかの実施形態において、デマルチプレクサ530が、図5aの例示的な回路で示した同期ピクセルデータ214aの4ビット入力より大きいビット数でも小さいビット数でも入力として受け入れ可能であることは、当業者が理解できることであろう。また、幾つかの実施形態において、デマルチプレクサ530の出力接続の数を、同期ピクセルデータ214aの入力数に適合するように調整するようにしてもよい。
図5bを参照すると、同期ピクセル入力信号506は、位相180カウンタ516が0×0から0×3までインクリメントしている間、不変となっている。例えば、図5aに示した実施形態では、同期ピクセル入力信号506は、位相180カウンタ516が0×0から0×3までインクリメントしている間、0×Aに対応する信号レベルにとどまっている。その結果として、デマルチプレクサ530は、0×Aがデマルチプレクサ530に入力されている間、論理ゲート540に接続された接続530aに論理値highを出力する。
図5aに示すように、論理ゲート540は、デマルチプレクサ520及びデマルチプレクサ530に接続され、接続520c上のデマルチプレクサ520の出力と、接続530a上のデマルチプレクサ530の出力を入力として受信する。論理ゲート540は、接続520c及び530aからの信号を用いて、接続540aへの出力信号を生成する。論理ゲート540はNANDゲートであるので、接続520c及び530aの双方がhighレベルの論理信号を有する場合、lowレベルの論理信号を生成する。その他の場合、論理ゲート540はhighレベルの論理信号を生成する。図5bのタイミング図に示すように、接続540a上の第2加算出力545は、位相180カウンタ516が0×0から0×1までインクリメントしているとき、highレベルの論理信号を維持する。この間、接続530a上のピクセル信号535は、highレベルの論理信号を維持する。また、接続520c上のカウンタ信号525は、位相180カウンタ516が0×0から0×1までインクリメントしているとき、lowレベルの論理信号を維持する。位相180カウンタ516が0×2までインクリメントしたとき、接続520c上の信号525はアクティブ状態で論理値highとなり、一方、接続530aはhighレベルの論理信号を伝送し続ける。従って、この時点で、接続520c及び530aは両方ともhighレベルの論理信号を伝送しているので、位相180カウンタ516が0×2の値のとき、論理ゲート540は接続540aにlowレベルの論理信号を出力する。図5bに示すように、位相180カウンタ516が0×3までインクリメントしたとき、接続520c上の信号は論理値lowに戻り、一方、接続540a上の第2加算出力545は論理値highに戻る。なお、この回路で用いられた第2加算パルス生成器の設計の検討及び実装時固有事項に基づいて、他の構成の論理ゲートが使用可能であることは、当業者が理解できることであろう。
同期ピクセルデータ212a、213a、215aが、それぞれ、位相0加算パルス生成器222、位相90加算パルス生成器223、位相270加算パルス生成器225に入力されているとき、入力ピクセルデータ206が0×Aに対応する場合、これらの加算パルス生成器の出力はhighのままである。図5cは、加算パルス生成器222、223、225に対する構成要素の例示的な実施形態を接続がない状態で示している。図5cに示すように、加算パルス生成器222、223、225の各々は、デマルチプレクサ531及び論理ゲート541を個別に有する。幾つかの実施形態において、個々のデマルチプレクサ531及び論理ゲート541は、位相180加算パルス生成器224においてデマルチプレクサ530及び論理ゲート540によって実行される機能と同様の機能を実行することができる。図5cに示すように、加算パルス生成器222、223、225は、論理ゲート541に供給される、デマルチプレクサ531のAゲートからの接続を有していない。結果として、ピクセルデータ206が0×Aの値を伝送しているとき、論理ゲート541への入力はlowとなり、位相ピクセルクロックの1周期の間、lowにとどまる。図5cでは、論理ゲート541はNANDゲートを用いて実行され、0×Aが入力されている間、デマルチプレクサ531からの少なくとも1つの入力は論理値lowにとどまるので、ピクセルデータ206が0×Aの値を伝送している間、論理ゲート541はhighレベルの信号を出力する。
第2加算パルス生成器の機能を実現するため、種々のデバイスが使用可能である。例えば、FPGA、ASIC(Application-Specific Integrated Circuit)、CPLD(Complex Programmable Logic Device)、プリント回路基板(PCB)、プログラム可能な論理コンポーネント及びプログラム可能な相互接続の組み合わせ、又は第2加算パルス生成器の機能を実行可能なその他のデバイス若しくはモジュールの組み合わせによって実現可能である。
図6aは、本発明の幾つかの実施形態に係る第1加算パルス生成器と第2加算パルス生成器のうちの1つとの間の接続を表す例示的な実施形態を説明するためのブロック図を示している。図6aに示すように、第1加算パルス生成器221及び位相180加算パルス生成器224の双方は、論理ゲート601に接続されている。図6aに示す実施形態では、論理ゲート601はANDゲートを用いて実行され、第1加算パルス生成器221の出力460aと、位相180加算パルス生成器224の出力540aとを入力として受け付ける。論理ゲート601は、中間加算パルス出力601aを出力する。
図6bは、本発明の幾つかの実施形態に係る第1加算パルス生成器と第2加算パルス生成器のうちの1つとを表す例示的な実施形態のタイミング図を示している。図6bは、ピクセルクロック405、ピクセルデータ406、位相0クロック415、位相0カウンタ416、第1加算出力465、位相180クロック信号515、位相180カウンタ516、位相180加算出力545、中間PWM出力605のタイミング図を示している。
図6bに示すように、位相180クロック515、位相180カウンタ516及び位相180加算出力545は、第1加算パルス生成器の信号から180°だけオフセットされている。第1加算出力465及び位相180加算出力545は、ANDゲートである論理ゲート601に入力される。従って、第1加算出力465及び位相180加算出力545の双方がhighであるときに、論理ゲート601の出力601aはhighとなる。図6bに示すように、位相0クロック415が0×0から0×2にインクリメントしているとき、接続460a上の第1加算出力465はhighにとどまる。位相180カウンタ516が0×0から0×1にインクリメントしているとき、位相180加算出力545はhighにとどまる。従って、位相180カウンタ516が0×0から0×1にインクリメントしている間、接続601a上の中間PWM出力605は論理値highとなる。位相180加算出力545がlowレベルの信号を生成している間、中間PWM出力605もlowレベルの論理信号を生成する。これは、位相180カウンタ516が0×2までインクリメントした時に起こる。図6bに示すように、中間PWM出力605は、1ピクセルクロックの10/16のパルス幅の間、論理値highにとどまる。位相180カウンタが0×3を出力したとき、位相180加算出力545は論理値highに戻る。しかし、このとき、第1加算出力465はすでにlowレベルの論理状態になっている。従って、本実施形態では、中間PWM出力は論理値lowにとどまる。
図2に示すように、残っている加算パルス生成器222、223、225からのそれぞれの出力222a、223a、225aは、中間PWM出力601aとともに論理ゲート210に入力される。上述したように、本実施形態では、入力されるピクセルデータ206の値が0×Aである間、出力222a、223a、225aはhighにとどまっている。
本実施形態において、論理ゲート230はANDゲートであり、値0×Aに対して出力222a、223a、225aはhighにとどまっているので、中間PWM出力601aが論理値highとしてとどまっている限り、PWMモジュール107の出力230aは論理値highを生成する。本実施形態において、入力ピクセルデータの値が0×Aである場合、1ピクセルクロックパルスの10/16の間、中間出力601aはhighにとどまる。従って、出力230aは、ピクセルクロック201の10/16のパルス幅を有する信号を生成する。出力信号のパルス幅解像度は、特定構造において可能な最小のパルス間隔に等しい。従って、本実施形態のパルス幅解像度は、基本ピクセルクロックの1/16のパルス幅に等しい。更に、このパルス幅解像度に対応する周波数は、ピクセルクロックの周波数の16倍である。なお、パルス幅解像度に対応する周波数が、ピクセルクロックの周波数の16倍よりも大きい場合又は小さい場合の他の実施形態を、当業者は理解できるであろう。
一般に、特定のパルス幅解像度に対応する周波数は、基本ピクセルクロックの周波数の整数倍に等しくなり得る。幾つかの実施形態において、この整数倍を、PLLモジュール240からの位相シフトクロック240a〜dの出力周波数がピクセルクロック201の周波数の何倍かを示す倍数と、ピクセルクロック201の1パルスに含まれる位相シフトクロック240a〜dの何れかのパルス数との積に等しくなるようにしてよい。また、幾つかの実施形態において、この整数倍を、PLLモジュール240からの位相シフトクロック240a〜dの出力周波数がピクセルクロック201の周波数の何倍かを示す倍数と、第2加算パルス生成器222〜225の数との積に等しくしてもよい。例示的なPWMモジュール107では、位相シフトクロック240a〜dの周波数は、ピクセルクロック201の周波数の4倍に等しい。また、各位相シフトクロックは、ピクセルクロック201の1パルスごとに4つのパルスを有する。従って、例示的なPWMモジュール107におけるパルス幅解像度は、ピクセルクロック201の周波数の16倍に等しい周波数を有し、ピクセルクロック201の1/16の幅のパルス幅解像度となる。特定のパルス幅解像度に対応する周波数が、入力信号の周波数の16倍よりも大きくても小さくてもよいことは、当業者が理解できることであろう。
図6bに示すように、位相180カウンタ516が前のピクセル値に対して0×3を出力しているとき、即ち期間655に、位相180加算出力545が論理値highを生成している場合、中間PWM出力は、ピクセルクロック405の10/16のパルス幅の出力605を生成する。しかしながら、もし、期間655に位相180加算出力545が論理値lowを生成しているのであれば、中間PWM出力605はlow状態で始まる。例えば、前のピクセルの中間PWM出力605が、ピクセルクロック201の14/16のパルス幅である場合、位相180カウンタ516が前のピクセル値に対して0×3を出力する時点で、位相180加算出力545はlow状態である。もし、位相180カウンタ516が前のピクセル値に対して0×3を出力している時点で、位相180加算出力545がlow状態であれば、現在のピクセルの出力と干渉を起こしてしまう。従って、幾つかの実施形態において、一つ置きのピクセルデータを並行して処理する2つのPWMモジュール107を設けるようにしてもよい。この場合、一方のPWMモジュール107は1つのピクセルデータ値を処理し、他方のPWMモジュール107は、すぐ後に続くピクセルデータ値を処理することになる。各カウンタが0×3を出力しているときに第2加算パルス生成器222〜225の各々が論理値highを出力するように、各PWMモジュール107でのピクセルデータ値の処理間にデータが入力される。なお、他の適切な変更を加えてもよいし、このような変更は当業者の知識の範囲内である。
本発明のその他の実施形態は、本明細書に開示される詳細な説明の検討及び本発明の実施によって当業者にとって明らかとなるであろう。本明細書と具体例は例示とすることのみを意図しており、本発明の真の範囲や意図は請求項において示される。よって、本発明は請求項のみによって限定される。
本発明の幾つかの実施形態において、例示的なコンピュータに接続された例示的なプリンタのブロック図である。 本発明の幾つかの実施形態に係る例示的なPWMパルス生成器のブロック図である。 本発明の幾つかの実施形態に係る例示的なデータ同期回路の図である。 本発明の幾つかの実施形態に係る図3aに示す例示的なデータ同期回路のタイミング図である。 本発明の幾つかの実施形態に係る例示的な第1加算パルス生成器の図である。 本発明の幾つかの実施形態に係る図4aに示す例示的な第1加算パルス生成器のタイミング図である。 本発明の幾つかの実施形態に係る例示的な第2加算パルス生成器の図である。 本発明の幾つかの実施形態に係る図5aに示す例示的な第2加算パルス生成器のタイミング図である。 加算パルス生成器222、223、225に対する構成要素の例示的な実施形態を接続がない状態で示す図である。 本発明の幾つかの実施形態に係る第1加算パルス生成器と第2加算パルス生成器のうちの1つとの間の接続を表す例示的な実施形態を説明するためのブロック図である。 本発明の幾つかの実施形態に係る第1加算パルス生成器及び第2加算パルス生成器のうちの1つを表す例示的な実施形態のタイミング図である。

Claims (22)

  1. 入力データを受信する装置において、
    第1周波数を有する第1クロック信号を受信し、前記第1周波数よりも高い第2周波数を有する複数の位相の異なる第2クロック信号を生成するクロック生成部と、
    前記複数の位相の異なる第2クロック信号うちの1つ以上を用いて、前記入力データの関数としてパルス幅変調信号を生成するパルス幅変調信号生成部と、
    を備える装置。
  2. 前記クロック生成部は位相ロックループを備える請求項1に記載の装置。
  3. 前記パルス幅変調信号生成部により生成されるパルス幅変調信号は、前記第1周波数の整数倍である第3周波数に等しいパルス幅解像度を有する請求項1に記載の装置。
  4. 前記第2周波数を前記第1周波数の倍数として示す整数をNとし、前記複数の位相の異なる第2クロック信号うちの何れか一つのパルスの数をMとしたとき、前記第3周波数は前記第1周波数のN×M倍である請求項3に記載の装置。
  5. 入力データを受信する装置において、
    複数の位相の異なるクロック信号のうちの一つと前記入力データとを受信し、その入力クロック信号に同期した第1パルス幅変調信号を生成する複数のパルス幅変調回路と、
    前記第1パルス幅変調信号を入力として受信し、前記入力データの関数であるパルス幅を有する第2パルス幅変調信号を出力する論理回路と、
    を備える装置。
  6. 前記複数の位相の異なるクロック信号は前記入力データの関数である請求項5に記載の装置。
  7. 前記複数のパルス幅変調回路は、
    前記入力データと、前記複数の位相の異なるクロック信号のうちの一つとを受信し、前記入力データのプライマリクロックドメインに対応する第1パルス幅変調信号を生成する第1パルス幅変調回路と、
    前記複数の位相の異なるクロック信号の各々に対応し、前記入力データの関数として第1パルス幅変調信号を生成する1以上の第2パルス幅変調回路と、
    を備える請求項5に記載の装置。
  8. 前記論理回路は、前記第1パルス幅変調回路及び前記1以上の第2パルス幅変調回路によって生成した第1パルス幅変調信号の論理結合を出力するAND回路を備える請求項5に記載の装置。
  9. 前記入力データと、前記複数の位相の異なるクロック信号のうちの少なくとも一つとを受信し、当該複数の位相の異なるクロック信号のうちの一つと同期した前記入力データを出力することができる同期化回路を更に有する前記複数のパルス幅変調回路のうちの少なくとも一つを更に備える請求項5に記載の装置。
  10. 複数の同期化回路を更に備え、
    前記複数の同期化回路の各々は、前記複数のパルス幅変調回路のうち、それぞれ異なる回路に接続され、前記複数の位相の異なるクロック信号のうち、それぞれ異なる信号に接続される請求項9に記載の装置。
  11. 第1周波数を有する第1クロック信号を受信し、前記第1周波数よりも高い第2周波数を有し互いに位相の異なる複数の第2クロック信号を生成するクロック生成部を更に備え、
    前記複数の第2クロック信号は前記複数のパルス幅変調回路によって受信される請求項5に記載の装置。
  12. 前記クロック生成部は位相ロックループ回路を含む請求項11に記載の装置。
  13. 前記第2パルス幅変調信号は、前記第1周波数の整数倍である第3周波数に等しいパルス幅解像度を有する請求項11に記載の装置。
  14. 前記第2周波数を前記第1周波数の倍数として示す整数をNとし、互いに位相の異なる前記複数の第2クロック信号うちの何れか一つのパルスの数をMとしたとき、前記第3周波数は前記第1周波数のN×M倍である請求項13に記載の装置。
  15. 入力データを受信するシステムにおいて、
    第1周波数を有する第1クロック信号を受信し、前記第1周波数よりも高い第2周波数を有する複数の位相の異なる第2クロック信号を生成するクロック生成部と、
    前記複数の位相の異なる第2クロック信号うちの1つ以上を用いて、前記入力データの関数としてパルス幅変調信号を生成するパルス幅変調信号生成部と、
    を備えるシステム。
  16. 前記クロック生成部は位相ロックループを備える請求項15に記載のシステム。
  17. 前記パルス幅変調信号生成部により生成されるパルス幅変調信号は、前記第1周波数の整数倍である第3周波数に等しいパルス幅解像度を有する請求項15に記載のシステム。
  18. 前記第2周波数を前記第1周波数の倍数として示す整数をNとし、前記複数の位相の異なる第2クロック信号うちの何れか一つのパルスの数をMとしたとき、前記第3周波数は前記第1周波数のN×M倍である請求項17に記載のシステム。
  19. 入力データを受信する方法において、
    第1周波数を有する第1クロック信号を受信し、前記第1周波数よりも高い第2周波数を有する複数の位相の異なる第2クロック信号を生成し、
    前記複数の位相の異なる第2クロック信号うちの1つ以上を用いて、前記入力データの関数としてパルス幅変調信号を生成する方法。
  20. 複数の位相の異なる第2クロック信号の生成は、位相ロックループを用いて実行される請求項19に記載の方法。
  21. 前記生成されたパルス幅変調信号は、前記第1周波数の整数倍である第3周波数に等しいパルス幅解像度を有する請求項19に記載の方法。
  22. 前記第2周波数を前記第1周波数の倍数として示す整数をNとし、前記複数の位相の異なる第2クロック信号うちの何れか一つのパルスの数をMとしたとき、前記第3周波数は前記第1周波数のN×M倍である請求項21に記載の方法。
JP2007171534A 2006-06-30 2007-06-29 画像形成装置、画像形成システム及び画像形成方法 Expired - Fee Related JP5452848B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/479,294 2006-06-30
US11/479,294 US7822115B2 (en) 2006-06-30 2006-06-30 Systems for generating a pulse width modulated signal

Publications (2)

Publication Number Publication Date
JP2008061222A true JP2008061222A (ja) 2008-03-13
JP5452848B2 JP5452848B2 (ja) 2014-03-26

Family

ID=38876299

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007171534A Expired - Fee Related JP5452848B2 (ja) 2006-06-30 2007-06-29 画像形成装置、画像形成システム及び画像形成方法

Country Status (2)

Country Link
US (1) US7822115B2 (ja)
JP (1) JP5452848B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7907303B2 (en) * 2006-06-30 2011-03-15 Konica Minolta Systems Laboratory, Inc. Systems and methods for processing pixel data for a printer
US7619644B2 (en) * 2006-06-30 2009-11-17 Konica Minolta Systems Laboratory, Inc. Method and apparatus for image alignment
US7957025B2 (en) * 2006-06-30 2011-06-07 Konica Minolta Systems Laboratory, Inc. Systems and methods for processing pixel data for a printer
US20080002229A1 (en) * 2006-06-30 2008-01-03 Konica Minolta Systems Laboratory, Inc. Systems and method for saving memory on screen
US8782371B2 (en) * 2008-03-31 2014-07-15 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for memory management for rasterization
US8817032B2 (en) * 2008-08-29 2014-08-26 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for framebuffer management
US8854680B2 (en) * 2008-09-11 2014-10-07 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for optimal memory allocation units
US8861014B2 (en) * 2008-09-30 2014-10-14 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for optimized printer throughput in a multi-core environment
US8320012B2 (en) * 2009-03-27 2012-11-27 Konica Minolta Laboratory U.S.A., Inc. Apparatus, system, and method for color data printing
US8223390B2 (en) * 2009-03-27 2012-07-17 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for reducing color registration errors in tandem engines
CN103442482B (zh) * 2013-08-12 2016-01-20 深圳市天微电子股份有限公司 发光二极管照明脉冲宽度调制驱动电路
WO2020091767A1 (en) * 2018-10-31 2020-05-07 Hewlett-Packard Development Company, L.P. Continuous frequency based print pipeline generation
CN115328268B (zh) * 2022-10-17 2023-01-17 湖南大学 一种基于fpga的高分辨率数字pwm信号调制方法及系统

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09149017A (ja) * 1995-11-24 1997-06-06 Oki Electric Ind Co Ltd Pll回路及びビット位相同期回路
JP2001186348A (ja) * 1999-10-15 2001-07-06 Ricoh Co Ltd パルス幅変調回路、光書き込み装置及び画像形成装置
JP2003103831A (ja) * 2001-09-28 2003-04-09 Ricoh Co Ltd パルス変調信号生成回路、半導体レーザ変調装置、光学走査装置及び画像形成装置
JP2004011431A (ja) * 2002-06-03 2004-01-15 Toyota Motor Corp 内燃機関の制御装置
JP2004040451A (ja) * 2002-07-03 2004-02-05 Canon Inc Pwm信号生成回路
JP2005005770A (ja) * 2003-06-09 2005-01-06 Canon Inc Pwm信号生成回路
JP2005038475A (ja) * 2003-07-17 2005-02-10 Ricoh Co Ltd 光情報記録方法及びその装置
JP2005303633A (ja) * 2004-04-09 2005-10-27 Fuji Xerox Co Ltd パルス幅変調装置および方法
JP2005297368A (ja) * 2004-04-12 2005-10-27 Ricoh Co Ltd 画素クロック生成回路及び画像形成装置
JP2006048836A (ja) * 2004-08-05 2006-02-16 Ricoh Co Ltd 情報記録方法とレーザ駆動回路と情報記録装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4782398A (en) 1986-02-14 1988-11-01 Canon Kabushiki Kaisha Image processing apparatus
US5041920A (en) 1989-11-15 1991-08-20 Xerox Corporation Image halftone generation by static RAM look-up table
US6092171A (en) 1991-09-16 2000-07-18 Advanced Micro Devices, Inc. System and method for using a memory management unit to reduce memory requirements
US5477257A (en) 1991-11-11 1995-12-19 Matsushita Electric Industrial Co., Ltd. Image forming method and apparatus using rotated screen with pulse width modulation
JPH05244371A (ja) 1992-02-27 1993-09-21 Canon Inc 記録装置および方法
US5646670A (en) 1993-08-31 1997-07-08 Canon Kabushiki Kaisha Color image forming apparatus which reduces toner consumption during image formation
US5946334A (en) * 1996-03-27 1999-08-31 Ricoh Company, Inc. Semiconductor laser control system
JP3156605B2 (ja) 1996-11-19 2001-04-16 セイコーエプソン株式会社 トナー転写式の印刷装置のためのパルス幅データの生成装置及び方法
US6178036B1 (en) 1997-01-14 2001-01-23 California Institute Of Technology Opto-electronic devices and systems based on brillouin selective sideband amplification
US6252675B1 (en) 1998-05-08 2001-06-26 Xerox Corporation Apparatus and method for halftone hybrid screen generation
JP3620310B2 (ja) 1998-10-16 2005-02-16 富士ゼロックス株式会社 パルス発生装置および画像記録装置
US6707563B1 (en) 1999-01-11 2004-03-16 T/R Systems Multiple print engine with error handling capability
US6326993B1 (en) 2000-03-15 2001-12-04 Toshiba Tec Kabushiki Kaisha Pulse width modulation system and image forming apparatus having the pulse width modulation system
US7064859B1 (en) 2000-03-27 2006-06-20 International Business Machines Corporation Method, system, program, and data structure for producing a look-up table to enhance print quality
JP2001350439A (ja) 2000-06-06 2001-12-21 Sony Corp 変調回路およびこれを用いた画像表示装置
JP3985437B2 (ja) 2000-08-03 2007-10-03 セイコーエプソン株式会社 電子写真の画像形成装置及びその画像形成プログラム製品
US7031025B1 (en) 2000-08-23 2006-04-18 Hewlett-Packard Development Company, L.P. Combined dot density and dot size modulation
JP2002267963A (ja) 2001-03-07 2002-09-18 Ricoh Co Ltd 画像形成装置
US6731317B2 (en) 2001-03-14 2004-05-04 Ricoh Company, Ltd. Pulse modulation signal generation circuit, and semiconductor laser modulation device, optical scanning device and image formation device using the same
US7038671B2 (en) 2002-02-22 2006-05-02 Intel Corporation Digitally driving pixels from pulse width modulated waveforms
US7280246B2 (en) 2003-02-12 2007-10-09 Marvell International Technology Ltd. Laser print apparatus that generates pulse width value and justification value based on pixels in a multi-bit image
JP4563737B2 (ja) * 2004-07-02 2010-10-13 ルネサスエレクトロニクス株式会社 パルス幅変調回路
US7782442B2 (en) 2005-12-06 2010-08-24 Nikon Corporation Exposure apparatus, exposure method, projection optical system and device producing method

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09149017A (ja) * 1995-11-24 1997-06-06 Oki Electric Ind Co Ltd Pll回路及びビット位相同期回路
JP2001186348A (ja) * 1999-10-15 2001-07-06 Ricoh Co Ltd パルス幅変調回路、光書き込み装置及び画像形成装置
JP2003103831A (ja) * 2001-09-28 2003-04-09 Ricoh Co Ltd パルス変調信号生成回路、半導体レーザ変調装置、光学走査装置及び画像形成装置
JP2004011431A (ja) * 2002-06-03 2004-01-15 Toyota Motor Corp 内燃機関の制御装置
JP2004040451A (ja) * 2002-07-03 2004-02-05 Canon Inc Pwm信号生成回路
JP2005005770A (ja) * 2003-06-09 2005-01-06 Canon Inc Pwm信号生成回路
JP2005038475A (ja) * 2003-07-17 2005-02-10 Ricoh Co Ltd 光情報記録方法及びその装置
JP2005303633A (ja) * 2004-04-09 2005-10-27 Fuji Xerox Co Ltd パルス幅変調装置および方法
JP2005297368A (ja) * 2004-04-12 2005-10-27 Ricoh Co Ltd 画素クロック生成回路及び画像形成装置
JP2006048836A (ja) * 2004-08-05 2006-02-16 Ricoh Co Ltd 情報記録方法とレーザ駆動回路と情報記録装置

Also Published As

Publication number Publication date
US7822115B2 (en) 2010-10-26
US20080002228A1 (en) 2008-01-03
JP5452848B2 (ja) 2014-03-26

Similar Documents

Publication Publication Date Title
JP5452848B2 (ja) 画像形成装置、画像形成システム及び画像形成方法
US7619644B2 (en) Method and apparatus for image alignment
JP5410659B2 (ja) 画像形成装置、画像形成方法及び画像形成システム
JP4699699B2 (ja) ビーム光走査装置及び画像形成装置
JP5129995B2 (ja) 画像形成装置、画像形成の方法及び画像形成システム
JP2008048390A (ja) Pwmピクセルの調整を支援する回路
JP2008094079A (ja) プリンタにおけるピクセルデータ処理の方法及びシステム
US8994984B2 (en) Information processing apparatus, image forming apparatus, and image processing method
JP2007334416A (ja) 画像処理装置及び画像処理方法
US10027852B2 (en) Image processing device, image forming apparatus, and image processing method
US11249414B1 (en) Driving apparatus and image forming apparatus
JP2007276191A (ja) 画像形成装置
JP6168757B2 (ja) 画像データ出力装置、画像形成装置、画像データ出力装置の制御方法、及び画像形成装置の制御方法
JP5447988B2 (ja) ビーム光走査装置及び画像形成装置
JP2022085234A (ja) 画像形成装置及び画像形成プログラム
JP2783949B2 (ja) Ledプリンタ
JP2004255849A (ja) 画像形成装置
JP2005260620A (ja) 画像処理装置およびそのデータ伝送方法
JP2006259990A (ja) プリンタ制御装置
JP5297760B2 (ja) 集積回路及びこれを備えた回路基板、画像形成装置
JP2019164553A (ja) 情報処理装置及び回路装置
JP2004249466A (ja) ビデオデータ転送装置
JP2002029096A (ja) レーザプリンタの印刷クロック発生回路
JP2005059408A (ja) 画像形成装置
JP2002103696A (ja) プリンタ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120702

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120717

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121015

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20121015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130418

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140106

R150 Certificate of patent or registration of utility model

Ref document number: 5452848

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees