(57)【要約】【課題】  複数のクロックに対応してデータを出力するデータ出力装置において、データ読み取り側の装置に適した遅延量を確保するための技術を提供する。【解決手段】  クロックを入力し、データを出力するデータ出力装置であって、多段に接続された複数の遅延手段と、前記遅延手段を通る個数の異なるクロックのうちいずれかのクロックを選択する遅延量選択手段と、前記選択されたクロックに合わせてデータを出力するデータ出力手段とを備えること特徴とするデータ出力装置。【選択図】  図１
2007241441.tif 000002
【特許請求の範囲】
【請求項１】
クロックを入力し、データを出力するデータ出力装置であって、
多段に接続された複数の遅延手段と、
前記遅延手段を通る個数の異なるクロックのうちいずれかのクロックを選択する遅延量選択手段と、
前記選択されたクロックに合わせてデータを出力するデータ出力手段とを備えることを特徴とするデータ出力装置。
【請求項２】
前記遅延量選択手段は、
入力されるクロックの速度に応じて設定される設定受け付け手段によりいずれかのクロックを選択することを特徴とするデータ出力装置。
【請求項３】
データ入力装置とデータ出力装置とを有するコントローラであって、
前記データ入力装置は、
前記データ出力装置に供給するクロックに合わせて、前記データ出力装置から入力したデータを読み取るデータ読取手段を備え、
前記データ出力装置は、
複数個が多段に接続され、前記供給されたクロックが初段に入力される遅延手段と、
前記遅延手段を通る個数の異なるクロックのうちいずれかのクロックを選択する遅延量選択手段と、
前記選択されたクロックに合わせてデータを出力するデータ出力手段とを備えることを特徴とするコントローラ。
【請求項４】
請求項３に記載のコントローラであって、
前記遅延量選択手段において、前記データ読み取り手段でのホールド時間が確保できる遅延量が得られるクロックが選択されていることを特徴とするコントローラ。
【請求項５】
複数個が多段に接続され、外部から供給されたクロックが初段に入力される遅延手段と、前記遅延手段を通る個数の異なるクロックのうちいずれかのクロックを選択する遅延量選択手段と、前記選択されたクロックに合わせてデータを出力するデータ出力手段とを備えたデータ出力装置と、前記データ出力装置に供給するクロックに合わせて、前記データ出力装置から入力したデータを読み取るデータ読取手段を備えたデータ読み取り装置とにおけるクロック遅延量設定方法であって、
前記データ出力装置の仕様を定めるステップと、
定められた仕様に基づいてクロック速度を決定するステップと、
決定したクロック速度に基づいて前記遅延量選択手段における選択の設定を行なう遅延量設定ステップとを有することを特徴とするクロック遅延量設定方法。
【請求項６】
請求項５に記載のクロック遅延量設定方法であって、
遅延量設定ステップでは、前記遅延量選択手段において、前記データ読み取り手段でのホールド時間が確保できる遅延量が得られるクロックが選択されるように設定することを特徴とするクロック遅延量設定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ出力装置に係り、特に、複数のクロックに対応してデータを出力するデータ出力装置に関する。
【背景技術】
【０００２】
電子回路等において、クロック等にタイミングを合わせてデータを読み取る場合には、クロックより少なくとも所定時間前にデータの値を確定しておき、クロックの後も少なくとも所定時間はデータの値を保持しておく必要がある。前者の所定時間はセットアップ時間と呼ばれ、後者の所定時間はホールド時間と呼ばれる。
【０００３】
セットアップ時間、ホールド時間に関する技術としては、例えば、メモリモジュールの構成等の違いにより信号に対する負荷が変化する回路において、データ信号のセットアップ時間とホールド時間の確保を行なうことが特許文献１に開示されている。
【０００４】
図６は、入出力制御装置２４０が出力するデータをメモリ制御装置２２０が読み取る電子回路の一例を示すブロック図である。
【０００５】
本図に示すように、メモリ制御装置２２０は、入出力制御装置２４０にクロックを供給する。そして、メモリ制御装置２２０のデータ読取部２２１が、そのクロックのタイミングで、入出力制御装置２４０が出力したデータを読み取るようになっている。
【０００６】
入出力制御装置２４０は、同期用ＰＬＬ２４１、内部回路２４２、フリップフロップ２４３、出力用バッファ２４４を備えており、内部回路２４２で生成あるいは取得した出力用データを、メモリ制御装置２２０から供給されたクロックに同期してメモリ制御装置２２０に出力する。
【０００７】
入出力制御装置２４０からのデータは、メモリ制御装置２２０から供給されたクロックより遅延して出力されるが、この遅延量はメモリ制御装置２４０のデータ読取部２２１においてセットアップ時間、ホールド時間が確保できるように調整されている。
【０００８】
【特許文献１】特開２００４−３３４６７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
メモリ制御装置２２０は、種々のスペックの機種が用意されており、用いる電子機器や制御対象メモリの性能等に応じて最適なスペックの機種が選択される。例えば、ＤＤＲメモリ等を採用した高性能の電子機器に用いるメモリ制御装置２２０は高速クロック仕様の機種を選択し、ＳＤＲＡＭメモリ等を採用した中級機種、普及機種の電子機器に用いるメモリ制御装置２２０は中速あるいは低速クロック仕様の機種を選択する等である。
【００１０】
一方で、入出力制御装置２４０は、どのようなスペックのメモリ制御装置２２０にも対応させることがコスト面等の観点から望ましい。
【００１１】
ところが、入出力制御装置２４０を高速クロック仕様のメモリ制御装置２２０と低速クロック仕様のメモリ制御装置２２０とに共用した場合には、図７に示すようなホールド時間の確保の問題が生じる。
【００１２】
入出力制御装置２４０は、図７（ａ）に示すように、最も高速のクロック仕様のメモリ制御装置２２０に合わせて遅延量を調整する必要がある。これにより、最も高速のクロック仕様のメモリ制御装置２２０に用いた場合に、ホールド時間が確保され、安定したデータ読み取りが可能となっている。なお、遅延量は、実際には最小遅延値（例えば、１．０ｎｓ）、最大遅延値（例えば、４．０ｎｓ）の幅で表わされる。
【００１３】
この入出力制御装置２４０を低速のクロック仕様のメモリ制御装置２２０に用いると、図７（ｂ）に示すように、ホールド時間が確保できなくなって、データ読み取りが不安定になってしまうおそれがある。
【００１４】
これは、一般に、低速クロック仕様のメモリ制御装置２２０は、高速クロック仕様のメモリ制御装置２２０よりも長いホールド時間が必要なことと、遅延量が最小遅延値、最大遅延値の幅を持っていること等によるものである。
【００１５】
また、高速クロック仕様のメモリ制御装置２２０に合わせた遅延量とした場合、低速クロック仕様のメモリ制御装置２２０に適用するときにセットアップ時間に対するマージンと、ホールド時間に対するマージンとがアンバランスになってしまい、基板設計に際しての負荷が大きくなるという問題もある。
【００１６】
本発明は、複数のクロックに対応してデータを出力するデータ出力装置において、データ読み取り側の装置に適した遅延量を確保することを目的とする。
【課題を解決するための手段】
【００１７】
上記課題を解決するため、本発明の第１の態様であるデータ出力装置は、
クロックを入力し、データを出力するデータ出力装置であって、
多段に接続された複数の遅延手段と、
前記遅延手段を通る個数の異なるクロックのうちいずれかのクロックを選択する遅延量選択手段と、
前記選択されたクロックに合わせてデータを出力するデータ出力手段とを備えることを特徴とする。
【００１８】
本態様によれば、多段に接続された遅延手段を用意することで、クロックが通る数をクロックに応じて調整することができるようになるため、複数のクロックに対応してデータを出力するデータ出力装置において、データ読み取り側の装置に適した遅延量を確保することが可能となる。
【００１９】
すなわち、前記遅延量選択手段は、
入力されるクロックの速度に応じて設定される設定受け付け手段によりいずれかのクロックを選択することができる。
【００２０】
上記課題を解決するため、本発明の第２の態様であるコントローラは、
データ入力装置とデータ出力装置とを有するコントローラであって、
前記データ入力装置は、
前記データ出力装置に供給するクロックに合わせて、前記データ出力装置から入力したデータを読み取るデータ読取手段を備え、
前記データ出力装置は、
複数個が多段に接続され、前記供給されたクロックが初段に入力される遅延手段と、
前記遅延手段を通る個数の異なるクロックのうちいずれかのクロックを選択する遅延量選択手段と、
前記選択されたクロックに合わせてデータを出力するデータ出力手段とを備えることを特徴とする。
【００２１】
本態様によれば、多段に接続された遅延手段を用意することで、クロックが通る数をクロックに応じて調整することができるようになるため、複数のクロックに対応してデータを出力するデータ出力装置において、データ読取装置に適した遅延量を確保することが可能となる。
【００２２】
ここで、前記遅延量選択手段において、前記データ読み取り手段でのホールド時間が確保できる遅延量が得られるクロックが選択されるようにする。
【００２３】
上記課題を解決するため、本発明の第３の態様であるクロック遅延量設定方法は、
複数個が多段に接続され、外部から供給されたクロックが初段に入力される遅延手段と、前記遅延手段を通る個数の異なるクロックのうちいずれかのクロックを選択する遅延量選択手段と、前記選択されたクロックに合わせてデータを出力するデータ出力手段とを備えたデータ出力装置と、前記データ出力装置に供給するクロックに合わせて、前記データ出力装置から入力したデータを読み取るデータ読取手段を備えたデータ読み取り装置とにおけるクロック遅延量設定方法であって、
前記データ出力装置の仕様を定めるステップと、
定められた仕様に基づいてクロック速度を決定するステップと、
決定したクロック速度に基づいて前記遅延量選択手段における選択の設定を行なうステップとを有することを特徴とする。
【００２４】
データ出力装置の仕様に基づいて定められたクロック速度に応じて、遅延量を選択するため、複数のクロックに対応してデータを出力するデータ出力装置において、データ読取装置に適した遅延量を確保することが可能となる。
【００２５】
ここで、前記遅延量選択手段において、前記データ読み取り手段でのホールド時間が確保できる遅延量が得られるクロックが選択されるように設定する。
【発明を実施するための最良の形態】
【００２６】
本発明の実施例について図面を参照して説明する。
【００２７】
図１は、本発明のデータ出力装置を適用した電子機器の１実施形態であるプリンタ１０の構成を示すブロック図である。ただし、本発明はプリンタに限られず、情報処理装置、家庭用電器その他の電子機器に適用することができる。
【００２８】
本図に示すように、プリンタ１０は、制御部１００と印刷エンジン１６０とを備えている。制御部１００は、プリンタコントローラであり、ＣＰＵ１１０、メモリ制御装置１２０、ＲＡＭ１３０、入出力制御装置１４０、ＲＯＭ１５０を備え、ホストコンピュータから受信した印刷データ等に基づく印刷処理を制御し、印刷エンジン１６０に印刷を実行させる。
【００２９】
メモリ制御装置１２０は、ＣＰＵ１１０、入出力制御装置１４０のＲＡＭ１３０へのアクセスを制御する処理、ＲＡＭ１３０に展開されたビットマップ画像データを印刷エンジン１６０に出力する処理等を行なう。
【００３０】
入出力制御装置１４０は、ホストコンピュータとの通信処理、ＲＯＭ１５０からのデータ読み取り処理等を制御する。本実施例では、特に、データ出力装置として機能する。
【００３１】
本実施例においては、メモリ制御装置１２０が入出力制御装置１４０の出力するデータを読み取るための構成に着目して説明する。すなわち、本実施例では、メモリ制御装置１２０がデータ読取装置として機能し、入出力制御装置１４０がデータ出力装置として機能する。ここで、メモリ制御装置１２０は、異なるクロックで動作する複数種のタイプがあり、それらのいずれかが用いられる。一方、入出力制御装置１４０は、いずれのクロックにも対応できるようになっている。
【００３２】
ただし、本発明は、メモリ制御装置１２０と入出力制御装置１４０との間におけるデータ読み取りに限られず適用することができる。具体的には、データ入力側の装置として、異なるクロックで動作する複数種のタイプのいずれかが用いられ、データ出力側の装置が、いずれのクロックにも対応できる場合に適用することができる。例えば、データ読取装置としてメモリ制御装置を用い、データ出力装置としてＣＰＵを用いた場合にも適用することができる。
【００３３】
図２は、本実施例におけるメモリ制御装置１２０と入出力制御装置１４０のデータ読み取り関連の構成を示すブロック図である。
【００３４】
本図に示すように、メモリ制御装置１２０は、入出力制御装置１４０にクロックを供給する。そして、データ読取部１２１が、そのクロックのタイミングで、入出力制御装置１４０が出力したデータを読み取るようになっている。
【００３５】
入出力制御装置１４０は、同期用ＰＬＬ１４１、内部回路１４２、フリップフロップ１４３、出力用バッファ１４４を備えており、内部回路１４２で生成あるいは取得した出力用データを、メモリ制御装置１２０から供給されたクロックに同期してメモリ制御装置１２０に出力する。
【００３６】
本実施例において、入出力制御装置１４０は、さらに、多段に接続された複数の遅延バッファ１４５ａ〜１４５ｃと選択部１４６とを備えている。
【００３７】
遅延バッファ１４５ａ〜１４５ｃは、メモリ制御装置１２０から入力したクロックを遅延させるものであり、それぞれの遅延バッファ１４５からの出力クロックが取り出されるようになっている。
【００３８】
本例では３つの遅延バッファ１４５ａ〜１４５ｃが多段に接続されているため、３種類の遅延値を得ることができる。
【００３９】
例えば、遅延バッファ１４５ａのみを通ったクロックは、最小遅延値１．０ｎｓ、最大遅延値４．０ｎｓのクロックとなり、さらに、遅延バッファ１４５ｂを通ったクロックは、最小遅延値１．５ｎｓ、最大遅延値６．０ｎｓのクロックとなり、さらに、遅延バッファ１４５ｃを通ったクロックは、最小遅延値２．５ｎｓ、最大遅延値１０．０ｎｓのクロックになるという具合である。なお、一般に、遅延バッファ１４５の数が増えるにつれ、最小遅延値と最大遅延値との幅が広がっていく。
【００４０】
そして、選択部１４６によりいずれかの遅延量のクロックが選択されてフリップフロップ１４３に入力される。選択部１４６は、例えば、外部ピンの設定により、遅延量を選択することができる。もちろん、他のハードウェア構成あるいはソフトウェア的に遅延量の選択を行なうようにしてもよい。
【００４１】
また、選択部１４６の設定は、設計者が採用するメモリ制御装置１２０に応じて設定するようにしてもよいし、選択部１４６が接続されたメモリ制御装置１２０のスペック、例えば周波数情報を検出して設定するようにしてもよい。
【００４２】
この結果、図３に示すように、入力クロックに対して３種類の遅延量の出力データを選択的に生成することができる。本図には、入力クロックと、遅延バッファ１個を通った遅延値１のクロックによる出力データと、遅延バッファ２個を通った遅延値２のクロックによる出力データと、遅延バッファ３個を通った遅延値３のクロックによる出力データとが示されている。
【００４３】
どの遅延量のクロックを選択するかは、メモリ制御装置１２０のスペックに応じるものとする。例えば、１３３ＭＨｚで動作する高速クロック仕様のメモリ制御装置１２０を用いる場合には、遅延バッファ１４５ａのみを通った最小遅延値１．０ｎｓ、最大遅延値４．０ｎｓのクロックを選択し、８３．５ＭＨｚで動作する中速クロック仕様のメモリ制御装置１２０を用いる場合には、さらに、遅延バッファ１４５ｂを通った最小遅延値１．５ｎｓ、最大遅延値６．０ｎｓのクロックを選択し、５０ＭＨｚで動作する低速クロック仕様のメモリ制御装置１２０を用いる場合には、さらに、遅延バッファ１４５ｃを通った最小遅延値２．５ｎｓ、最大遅延値１０．０ｎｓのクロックを選択するようにする。
【００４４】
図４は、このような選択の結果得られる出力データの例を示している。すなわち、図４（ａ）は、１３３ＭＨｚで動作する高速クロック仕様のメモリ制御装置１２０を用い、１つの遅延バッファ１４５を通ったクロックを選択した場合である。図４（ｂ）は、８３．５ＭＨｚで動作する中速クロック仕様のメモリ制御装置１２０を用い、２つの遅延バッファ１４５を通ったクロックを選択した場合である。図４（ｃ）は、５０ＭＨｚで動作する低速クロック仕様のメモリ制御装置１２０を用い、３つの遅延バッファ１４５を通ったクロックを選択した場合である。
【００４５】
データの読み取りは遅延される前のクロックで行なうため、それぞれの場合とも、適切なタイミングで読み取りが行なわれていることが示されている。
【００４６】
つまり、図５（ａ）に示すように、速いクロック仕様のメモリ制御装置１２０を用いる場合には、クロックが通る遅延バッファ１４５の数を少なく調整することで、速いクロックに合わせた遅延量とする。これにより、適切なセットアップ時間とホールド時間とを確保することができ、安定したデータ読み取りを実現することができる。
【００４７】
一方、図５（ｂ）に示すように、遅いクロック仕様のメモリ制御装置１２０を用いる場合には、クロックが通る遅延バッファ１４５の数を多く調整することで、遅いクロックに合わせた遅延量とする。これにより、適切なセットアップ時間とホールド時間とを確保することができ、安定したデータ読み取りを実現することができる。
【００４８】
以上のように、本発明によれば、複数のクロックの速度に対応してデータを出力するデータ出力装置において、データ読み取り側の装置に適した遅延量を確保することが可能となる。
【図面の簡単な説明】
【００４９】
【図１】本発明を適用した印刷システムの構成を示すブロック図。
【図２】メモリ制御装置と入出力制御装置のデータ読み取り関連の構成を示すブロック図。
【図３】クロックに対する出力データの遅延を示す図。
【図４】クロックに応じた遅延量の選択と出力データを示す図。
【図５】本発明におけるクロック毎の読み取りタイミングを示す図。
【図６】従来のデータ読み取り関連の構成を示すブロック図。
【図７】従来のクロック毎の読み取りタイミングを示す図。
【符号の説明】
【００５０】
１０…プリンタ、１００…制御部、１１０…ＣＰＵ、１２０…メモリ制御装置、１２１…データ読取部、１３０…ＲＡＭ、１４０…入出力制御装置、１４１…ＰＬＬ、１４２…内部回路、１４３…フリップフロップ、１４４…出力用バッファ、１４５…遅延バッファ、１４６…選択部、１５０…ＲＯＭ、１６０…印刷エンジン、２２０…メモリ制御装置、２２１…データ読取部、２４０…入出力制御装置、２４１…ＰＬＬ、２４２…内部回路、２４３…フリップフロップ、２４４…出力用バッファ
【図１】
2007241441.tif 000003
【図２】
2007241441.tif 000004
【図３】
2007241441.tif 000005
【図４】
2007241441.tif 000006
【図５】
2007241441.tif 000007
【図６】
2007241441.tif 000008
【図７】
2007241441.tif 000009