(57)【要約】【課題】出力負荷が低減されたポイントシフト型ＦＩＦＯ回路を有するレイテンシカウンタを提供する。【解決手段】カウンタ回路２００と、ポイントシフト型ＦＩＦＯ回路３００とを備える。ポイントシフト型ＦＩＦＯ回路３００に含まれるラッチ回路３３０は、出力がワイヤードオアされたｎ個のグループにグループ分けされており、カウント値が更新されるたびに異なるグループに属するラッチ回路の出力が順次選択される。これにより、全てのラッチ回路からの出力を纏めてワイヤードオア接続する場合と比べて出力負荷が低減する。しかも、ワイヤードオアされた各配線にリセット回路を設ける必要がなく、回路規模を縮小することが可能となる。さらに、ｎクロックサイクルで内部コマンドが連続生成されるケースでは、ワイヤードオアされた配線上の波形が変化しないことから、消費電力を削減することも可能となる。【選択図】図２
2011060355.tif 000002
【特許請求の範囲】
【請求項１】
最短でクロック信号のｎサイクル間隔で生成される内部コマンドのレイテンシをカウントするレイテンシカウンタであって、
前記クロック信号に同期してカウント値を更新するカウンタ回路と、
複数のラッチ回路を含み、前記カウンタ回路のカウント値に基づいて、前記複数のラッチ回路のいずれかに前記内部コマンドを取り込み、前記カウンタ回路のカウント値に基づいて、前記複数のラッチ回路のいずれかに取り込まれた前記内部コマンドを出力するポイントシフト型ＦＩＦＯ回路と、を備え、
前記複数のラッチ回路は、出力がワイヤードオアされたｎ個のグループにグループ分けされており、前記カウント値が更新されるたびに異なるグループに属するラッチ回路の出力が順次選択されることを特徴とするレイテンシカウンタ。
【請求項２】
前記ポイントシフト型ＦＩＦＯ回路は、前記ｎ個のグループからの出力を合成する第１のゲート回路と、前記ゲート回路から出力される前記内部コマンドの活性化期間を１／ｎに短縮する第２のゲート回路とを含むことを特徴とする請求項１に記載のレイテンシカウンタ。
【請求項３】
前記カウンタ回路は、
前記クロック信号に基づいて、互いに位相の異なる少なくとも第１及び第２の分周クロックからなる複数の分周クロックを生成する分周回路と、
前記第１の分周クロックをカウントする第１のカウンタ部と、
前記第２の分周クロックに同期して、前記第１のカウンタのカウント値を取り込む第２のカウンタ部と、
前記第１及び第２のカウンタ部のカウント値を排他的に選択する選択回路と、を備えることを特徴とする請求項１又は２に記載のレイテンシカウンタ。
【請求項４】
前記選択回路は、前記第１の分周クロックに基づいて前記第１のカウンタ部のカウント値を選択し、前記第２の分周クロックに基づいて前記第２のカウンタ部のカウント値を選択することを特徴とする請求項３に記載のレイテンシカウンタ。
【請求項５】
前記第１のカウンタ部は、バイナリ形式でカウント値を出力するリップルカウンタを含むことを特徴とする請求項３又は４に記載のレイテンシカウンタ。
【請求項６】
前記第１のカウンタ部は、カウント値を構成する複数のビットの変化タイミングを一致させる第１の遅延回路を含んでいることを特徴とする請求項５に記載のレイテンシカウンタ。
【請求項７】
前記第２のカウンタ部は、前記第２の分周クロックを遅延させる第２の遅延回路を含んでおり、前記第２の遅延回路によって遅延された前記第２の分周クロックに応答して、前記第１のカウンタ部のカウント値を取り込むことを特徴とする請求項３乃至６のいずれか一項に記載のレイテンシカウンタ。
【請求項８】
前記第１の遅延回路の遅延量よりも、前記第２の遅延回路の遅延量の方が大きいことを特徴とする請求項７に記載のレイテンシカウンタ。
【請求項９】
前記ポイントシフト型ＦＩＦＯ回路は、
前記カウンタ回路のカウント値に基づいて、複数の信号経路のいずれか一つに前記内部コマンドを供給する入力選択回路と、
あらかじめ定められた前記複数の信号経路と前記複数のラッチ回路との対応関係に基づいて、前記内部コマンドを所定のラッチ回路に供給するシフト回路と、
前記カウンタ回路のカウント値に基づいて、前記複数のラッチ回路のいずれかに取り込まれた前記内部コマンドを出力させる出力選択回路と、を備え、
前記シフト回路は、前記複数の信号経路と前記複数の第１のラッチ回路との対応関係を設定信号に基づいて変更可能であることを特徴とする請求項１乃至８のいずれか一項に記載のレイテンシカウンタ。
【請求項１０】
第１の動作モードである場合には前記内部コマンドを前記ポイントシフト型ＦＩＦＯ回路に相対的に早く供給し、第２の動作モードである場合には前記内部コマンドを前記ポイントシフト型ＦＩＦＯ回路に相対的に遅く供給するモード切替回路をさらに備えることを特徴とする請求項１乃至９のいずれか一項に記載のレイテンシカウンタ。
【請求項１１】
前記第１の動作モードは前記クロック信号が位相制御された状態であり、前記第２の動作モードは前記クロック信号が位相制御されていない状態であることを特徴とする請求項１０に記載のレイテンシカウンタ。
【請求項１２】
請求項１乃至１１のいずれか一項に記載のレイテンシカウンタを備える半導体記憶装置。
【請求項１３】
請求項１２に記載の半導体記憶装置とデータプロセッサとがシステムバスにより相互に接続されていることを特徴とするデータ処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はレイテンシカウンタに関し、特に、同期式メモリ内において内部コマンドのレイテンシをカウントするレイテンシカウンタに関する。さらに、本発明はこのようなレイテンシカウンタを備える半導体記憶装置、並びに、このような半導体記憶装置を備えるデータ処理システムに関する。
【背景技術】
【０００２】
シンクロナスＤＲＡＭ（Synchronous Dynamic Random Access Memory）に代表される同期式メモリは、パーソナルコンピュータのメインメモリなどに広く利用されている。同期式メモリは、コントローラより供給されるクロック信号に同期してデータを入出力することから、より高速なクロックを使用することによって、データ転送レートを高めることが可能である。
【０００３】
しかしながら、シンクロナスＤＲＡＭにおいても、ＤＲＡＭコアはあくまでアナログ動作であり、極めて微弱な電荷をセンス動作により増幅する必要がある。そのため、リードコマンドが発行されてから、最初のデータを出力するまでの時間を短縮することはできず、リードコマンドが発行されてから所定の遅延時間が経過した後、外部クロックに同期して最初のデータが出力される。
【０００４】
この遅延時間は一般に「ＣＡＳレイテンシ」と呼ばれ、クロック周期の整数倍に設定される。例えば、ＣＡＳレイテンシが５（ＣＬ＝５）であれば、外部クロックに同期してリードコマンドを取り込んだ後、５周期後の外部クロックに同期して最初のデータが出力される。つまり、５クロックサイクル後に最初のデータが出力されることになる。このようなレイテンシをカウントするカウンタは、「レイテンシカウンタ」と呼ばれる。
【０００５】
レイテンシカウンタとしては、本発明者が提案した特許文献１に記載の回路が知られている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−４７２６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載されたレイテンシカウンタは、いわゆるポイントシフト型のＦＩＦＯ回路が用いられている。ポイントシフト型のＦＩＦＯ回路においては、複数のラッチ回路の出力端が出力ゲートを介してワイヤードオアされることから、ラッチ回路の数が増えるにつれて、ラッチ回路からの出力負荷が大きくなってしまう。
【課題を解決するための手段】
【０００８】
本発明によるレイテンシカウンタは、最短でクロック信号のｎサイクル間隔で生成される内部コマンドのレイテンシをカウントするレイテンシカウンタであって、前記クロック信号に同期してカウント値を更新するカウンタ回路と、複数のラッチ回路を含み、前記カウンタ回路のカウント値に基づいて、前記複数のラッチ回路のいずれかに前記内部コマンドを取り込み、前記カウンタ回路のカウント値に基づいて、前記複数のラッチ回路のいずれかに取り込まれた前記内部コマンドを出力するポイントシフト型ＦＩＦＯ回路と、を備え、前記複数のラッチ回路は、出力がワイヤードオアされたｎ個のグループにグループ分けされており、前記カウント値が更新されるたびに異なるグループに属するラッチ回路の出力が順次選択されることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、複数のラッチ回路の出力がワイヤードオアされたｎ個のグループにグループ分けされていることから、全てのラッチ回路からの出力を纏めてワイヤードオア接続する場合と比べて出力負荷が低減する。しかも、カウント値が更新されるたびに異なるグループに属するラッチ回路の出力が順次選択されることから、ワイヤードオアされた各配線にリセット回路を設ける必要がなく、回路規模を縮小することが可能となる。さらに、ｎクロックサイクルで内部コマンドが連続生成されるケースでは、ワイヤードオアされた配線上の波形が変化せず、アクティブレベルを保持したままとなることから、充放電による電流消費が生じない。このため、消費電力を削減することも可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の好ましい実施形態による半導体記憶装置１０の全体構成を示すブロック図である。
【図２】本発明の好ましい実施形態によるレイテンシカウンタ５５の回路図である。
【図３】分周回路１００の動作を説明するためのタイミング図である。
【図４】カウンタ回路２００の動作を説明するためのタイミング図である。
【図５】タイミング制御回路３１０−０の回路図である。
【図６】入力選択回路３１０の動作を説明するためのタイミング図である。
【図７】入力選択回路３１０の動作を説明するための別のタイミング図である。
【図８】比較例による入力選択回路の動作を説明するためのタイミング図である。
【図９】シフト回路３２０の回路図である。
【図１０】シフト回路３２０の機能を説明するための模式図である。
【図１１】ラッチ回路３３０−０及び出力ゲート３４０−０の回路図である。
【図１２】レイテンシカウンタ５５の動作を説明するためのタイミング図である。
【図１３】本発明の好ましい実施形態によるデータ処理システム５００の構成を示すブロック図である。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照しながら、本発明の好ましい実施の形態について詳細に説明する。
【００１２】
図１は、本発明の好ましい実施形態による半導体記憶装置１０の全体構成を示すブロック図である。
【００１３】
本実施形態による半導体記憶装置１０はシンクロナスＤＲＡＭであり、外部端子として、クロック端子１１ａ，１１ｂ、コマンド端子１２ａ〜１２ｅ、アドレス端子１３、データ入出力端子１４、データストローブ端子１５ａ，１５ｂ及び電源端子１６ａ，１６ｂを備えている。
【００１４】
クロック端子１１ａ，１１ｂは、それぞれクロック信号ＣＫ，／ＣＫが供給される端子であり、供給されたクロック信号ＣＫ，／ＣＫは、クロック入力回路２１に供給される。本明細書において信号名の先頭に「／」が付されている信号は、対応する信号の反転信号又はローアクティブな信号であることを意味する。したがって、クロック信号ＣＫ，／ＣＫは互いに相補の信号である。クロック入力回路２１の出力は、タイミング発生回路２２及びＤＬＬ回路２３に供給される。タイミング発生回路２２は内部クロックＩＣＬＫを生成し、これをデータ出力系の回路を除く各種内部回路に供給する役割を果たす。また、ＤＬＬ回路２３は出力用クロックＬＣＬＫを生成し、これをデータ出力系の回路に供給する役割を果たす。
【００１５】
ＤＬＬ回路２３が生成する出力用クロックＬＣＬＫは、クロック信号ＣＫ，／ＣＫに対して位相制御された信号であり、リードデータＤＱ（及びデータストローブ信号ＤＱＳ，／ＱＤＳ）の位相がクロック信号ＣＫ，／ＣＫの位相と一致するよう、クロック信号ＣＫ，／ＣＫに対してやや位相が進められる。
【００１６】
ＤＬＬ回路２３は、モードレジスタ５６へのセット内容に応じて、使用の可否が選択される。つまり、モードレジスタ５６に「ＤＬＬオンモード」がセットされている場合には、ＤＬＬ回路２３は使用状態とされ、出力用クロックＬＣＬＫはクロック信号ＣＫ，／ＣＫに対して位相制御される。一方、モードレジスタ５６に「ＤＬＬオフモード」がセットされている場合には、ＤＬＬ回路２３は不使用状態とされ、出力用クロックＬＣＬＫはクロック信号ＣＫ，／ＣＫに対して位相制御されなくなる。したがって、ＤＬＬオフモードである場合には、出力用クロックＬＣＬＫはクロック信号ＣＫよりも位相の遅れた信号となる。モードレジスタ５６によるＤＬＬ回路２３の制御は、モード信号Ｍによって行われる。
【００１７】
コマンド端子１２ａ〜１２ｅは、それぞれロウアドレスストローブ信号／ＲＡＳ、カラムアドレスストローブ信号／ＣＡＳ、ライトイネーブル信号／ＷＥ、チップセレクト信号／ＣＳ、及びオンダイターミネーション信号ＯＤＴが供給される端子である。これらのコマンド信号は、コマンド入力回路３１に供給される。コマンド入力回路３１に供給されたこれらコマンド信号は、コマンドデコーダ３２に供給される。コマンドデコーダ３２は、内部クロックＩＣＬＫに同期して、コマンド信号の保持、デコード及びカウントなどを行うことによって、各種内部コマンドＩＣＭＤを生成する回路である。生成された内部コマンドは、ロウ系制御回路５１、カラム系制御回路５２、リード制御回路５３、ライト制御回路５４、レイテンシカウンタ５５及びモードレジスタ５６に供給される。各種内部コマンドＩＣＭＤのうち、リードコマンドＭＤＲＤＴは少なくともレイテンシカウンタ５５に供給される。
【００１８】
本実施形態においては、外部リードコマンドの最短発行サイクル（ｔＣＣＤ）は４クロックである。コマンドデコーダ３２は、外部リードコマンドが発行されると、２クロックの間隔を空けて内部リードコマンドＭＤＲＤＴを２回生成する。したがって、本実施形態においては、内部リードコマンドＭＤＲＤＴは最短で２クロック間隔で連続的に活性化する。
【００１９】
レイテンシカウンタ５５は、リードコマンドＭＤＲＤＴが発行されてから、あらかじめ設定されたＣＡＳレイテンシが経過した後にリードデータが出力されるよう、リードコマンドＭＤＲＤＴを遅延させた出力制御信号ＤＲＣを生成する回路である。ここで、リードコマンドＭＤＲＤＴは内部クロックＩＣＬＫに同期した信号である一方、レイテンシカウンタ５５の出力である出力制御信号ＤＲＣは、出力用クロックＬＣＬＫに同期している必要がある。したがって、レイテンシカウンタ５５は、同期対象となるクロックを内部クロックＩＣＬＫから出力用クロックＬＣＬＫに乗せ替える役割も果たす。レイテンシカウンタ５５の詳細については後述する。
【００２０】
アドレス端子１３は、アドレス信号ＡＤＤが供給される端子であり、供給されたアドレス信号ＡＤＤは、アドレス入力回路４１に供給される。アドレス入力回路４１の出力は、アドレスラッチ回路４２に供給される。アドレスラッチ回路４２は、内部クロックＩＣＬＫに同期してアドレス信号ＡＤＤをラッチする回路である。アドレスラッチ回路４２にラッチされたアドレス信号ＡＤＤのうち、ロウアドレスについてはロウ系救済回路６１に供給され、カラムアドレスについてはカラム系救済回路６２に供給される。また、ロウ系救済回路６１には、リフレッシュカウンタ６３によって生成されるロウアドレスも供給される。さらに、モードレジスタセットにエントリーしている場合には、アドレス信号ＡＤＤはモードレジスタ５６に供給される。
【００２１】
ロウ系救済回路６１は、欠陥のあるワード線を示すロウアドレスが供給された場合、本来のワード線ではなく冗長ワード線に対して代替アクセスを行うことによって、当該ロウアドレスを救済する回路である。ロウ系救済回路６１の動作は、ロウ系制御回路５１によって制御され、その出力はロウデコーダ７１に供給される。もちろん、欠陥のないワード線を示すロウアドレスが供給された場合には、当該ロウアドレスがロウデコーダ７１にそのまま供給される。ロウデコーダ７１は、メモリセルアレイ７０に含まれるいずれかのワード線ＷＬを選択する回路である。メモリセルアレイ７０においては、複数のワード線ＷＬと複数のビット線ＢＬが交差しており、その交点にはメモリセルＭＣが配置されている（図１においては、１本のワード線ＷＬ、１本のビット線ＢＬ及び１個のメモリセルＭＣのみを示している）。ビット線ＢＬは、センス回路７３内の対応するセンスアンプＳＡに接続されている。
【００２２】
カラム系救済回路６２は、欠陥のあるビット線を示すカラムアドレスが供給された場合、本来のビット線ではなく冗長ビット線に対して代替アクセスを行うことによって、当該カラムアドレスを救済する回路である。カラム系救済回路６２の動作は、カラム系制御回路５２によって制御され、その出力はカラムデコーダ７２に供給される。もちろん、欠陥のないビット線を示すカラムアドレスが供給された場合には、当該カラムアドレスがカラムデコーダ７２にそのまま供給される。カラムデコーダ７２は、メモリセルアレイ７０に含まれるいずれかのセンスアンプＳＡを選択する回路である。
【００２３】
カラムデコーダ７２によって選択されたセンスアンプＳＡは、リード動作時にはリードアンプ７４に接続され、ライト動作時にはライトアンプ７５に接続される。リードアンプ７４の動作はリード制御回路５３によって制御され、ライトアンプ７５の動作はライト制御回路５４によって制御される。
【００２４】
データ入出力端子１４は、リードデータＤＱの出力及びライトデータＤＱの入力を行うための端子であり、データ出力回路８１及びデータ入力回路８２に接続されている。データ出力回路８１は、ＦＩＦＯ回路８３を介してリードアンプ７４に接続されており、これにより、プリフェッチされた複数のリードデータＤＱがデータ入出力端子１４からバースト出力される。また、データ入力回路８２は、ＦＩＦＯ回路８４を介してライトアンプ７５に接続されており、これにより、データ入出力端子１４からバースト入力された複数のライトデータＤＱがメモリセルアレイ７０に同時に書き込まれる。
【００２５】
データストローブ端子１５ａ，１５ｂは、それぞれデータストローブ信号ＤＱＳ，／ＤＱＳの入出力を行うための端子であり、データストローブ信号出力回路８５及びデータストローブ信号入力回路８６に接続されている。
【００２６】
図１に示すように、データ出力回路８１及びデータストローブ信号出力回路８５には、ＤＬＬ回路２３によって生成される出力用クロックＬＣＬＫと、レイテンシカウンタ５５によって生成される出力制御信号ＤＲＣが供給される。出力制御信号ＤＲＣは、ＦＩＦＯ回路８３にも供給される。
【００２７】
電源端子１６ａ，１６ｂは、それぞれ電源電位ＶＤＤ，ＶＳＳが供給される端子であり、内部電圧発生回路９０に接続されている。内部電圧発生回路９０は、図示しない各種内部電圧を生成する回路である。
【００２８】
以上が本実施形態による半導体記憶装置１０の全体構成である。次に、半導体記憶装置１０に含まれるレイテンシカウンタ５５について説明する。
【００２９】
図２は、本発明の好ましい実施形態によるレイテンシカウンタ５５の回路図である。
【００３０】
図２に示すように、本実施形態によるレイテンシカウンタ５５は、出力用クロックＬＣＬＫに基づいて分周クロックＬＣＬＫＥ，ＬＣＬＫＯを生成する分周回路１００と、分周クロックＬＣＬＫＥ，ＬＣＬＫＯに基づいてカウント動作を行うカウンタ回路２００と、カウンタ回路２００のカウント値を用いて、リードコマンドＭＤＲＤＴのレイテンシをカウントするポイントシフト型ＦＩＦＯ回路３００とを備えている。但し、本明細書において単に「カウンタ回路」と呼ぶときは、分周回路１００とカウンタ回路２００の両方を含むことがある。
【００３１】
出力用クロックＬＣＬＫは、図１に示したＤＬＬ回路２３によって生成されるクロックである。セルフリフレッシュ時やパワーダウン時においては、消費電力を低減するため、ＤＬＬ回路２３の動作は停止する。したがって、セルフリフレッシュモードやパワーダウンモードから復帰する場合、ＤＬＬ回路２３の動作が再開し、この際、一時的に出力用クロックＬＣＬＫが不安定な状態となり、ハザードが出力されることがある。
【００３２】
このようなハザードは、一般的にレイテンシカウンタを誤動作させる原因となる。しかしながら、本実施形態によるレイテンシカウンタ５５は、出力用クロックＬＣＬＫにハザードが生じてもカウント値がジャンプするのみであり、カウント値が不定となったり、カウント動作が停止したりすることがない。
【００３３】
以下、レイテンシカウンタ５５を構成する各回路ブロックの構成及び動作について説明する。
【００３４】
まず、分周回路１００について説明する。
【００３５】
図２に示すように、分周回路１００は、出力用クロックＬＣＬＫの立ち下がりエッジに同期してラッチ動作を行うラッチ回路１０１と、ラッチ回路１０１の出力端Ｑより出力される分周信号ＬＱを反転させて入力端Ｄに供給するインバータ１０２と、出力用クロックＬＣＬＫと分周信号ＬＱの論理積をとるＡＮＤ回路１０３と、出力用クロックＬＣＬＫと分周信号ＬＱの反転信号の論理積をとるＡＮＤ回路１０４とを備えている。
【００３６】
このような回路構成により、図３に示すように、ＡＮＤ回路１０３の出力である分周クロックＬＣＬＫＥは、偶数番目の内部クロックＬＣＬＫに連動した波形となり、ＡＮＤ回路１０４の出力である分周クロックＬＣＬＫＯは、奇数番目の内部クロックＬＣＬＫに連動した波形となる。このため、分周クロックＬＣＬＫＥ，ＬＣＬＫＯは、アクティブな期間（ハイレベルである期間）が０．５ｔＣＫとなり、非アクティブな期間（ローレベルである期間）が１．５ｔＣＫとなる。
【００３７】
このように、本実施形態による分周回路は、出力用クロックＬＣＬＫを２分周することによって、互いに位相の異なる２つの分周クロックＬＣＬＫＥ，ＬＣＬＫＯを生成している。生成された分周クロックＬＣＬＫＥ，ＬＣＬＫＯは、図２に示すようにカウンタ回路２００に供給される。このため、カウンタ回路２００は、出力用クロックＬＣＬＫの半分の周波数で動作を行うことになる。
【００３８】
次に、カウンタ回路２００について説明する。
【００３９】
図２に示すように、カウンタ回路２００は、分周クロックＬＣＬＫＥをカウントする第１のカウンタ部２１０と、分周クロックＬＣＬＫＯに同期して第１のカウンタ部２１０のカウント値を取り込む第２のカウンタ部２２０と、第１及び第２のカウンタ部２１０，２２０のカウント値を排他的に選択する選択回路２３０とを備えている。
【００４０】
図２に示すように、第１のカウンタ部２１０は、リップル型のフリップフロップ２１１，２１２が従属接続された２ビットのリップルカウンタと、リップルカウンタの出力をデコードするデコーダ２１３とを含んでいる。フリップフロップ２１１のクロック端には分周クロックＬＣＬＫＥが供給されており、したがって、フリップフロップ２１１の出力ビットＢ１はバイナリ信号の最下位ビットを示す。フリップフロップ２１２の出力ビットＢ２はバイナリ信号の最上位ビットである。
【００４１】
これらフリップフロップ２１１，２１２の出力ビットＢ１，Ｂ２は、デコーダ２１３に供給される。しかしながら、出力ビットＢ１，Ｂ２の変化タイミングは同時ではなく、下位ビットから変化する。つまり、上位ビットの変化が遅れる。本実施形態では、このような変化タイミングの差を無くすために、遅延回路２１４を用いている。遅延回路２１４は、フリップフロップ１段分に相当する遅延量を有している。図２に示すように、遅延回路２１４は、フリップフロップ２１１とデコーダ２１３との間に接続されている。このため、フリップフロップ２１１の出力ビットＢ１は、フリップフロップ１段分の遅延が与えられた後、デコーダ２１３に入力される。
【００４２】
これにより、デコーダ２１３に入力されるビットＢ１，Ｂ２の変化タイミングは実質的に一致することになる。デコーダ２１３は、バイナリ形式であるビットＢ１，Ｂ２に基づいて、４本（＝２２）の出力のいずれか一つをハイレベルに活性化させる。
【００４３】
デコーダ２１３の出力は、フリップフロップ２１１，２１２や遅延回路２１４の存在により分周クロックＬＣＬＫＥよりも遅れて変化するが、本実施形態では、第１のカウンタ部２１０が僅か２ビットのリップルカウンタであり、遅延量が非常に小さいことから、デコーダ２１３の出力と分周クロックＬＣＬＫＥとのスキューはほとんど問題とならない。
【００４４】
一方、第２のカウンタ部２２０は、データラッチ型のフリップフロップ２２１，２２２と、フリップフロップ２２１，２２２の出力をデコードするデコーダ２２３とを含んでいる。フリップフロップ２２１，２２２のクロック端には、遅延回路２２４にて遅延された分周クロックＬＣＬＫＯが供給されている。また、フリップフロップ２２１のデータ入力端Ｄにはフリップフロップ２１１の出力ビットＢ１が供給され、フリップフロップ２２２のデータ入力端Ｄにはフリップフロップ２１２の出力ビットＢ２が供給される。かかる構成により、第２のカウンタ部２２０は、分周クロックＬＣＬＫＯに同期して第１のカウンタ部２１０のカウント値を取り込むことができる。つまり、分周クロックＬＣＬＫＯが活性化すると、第２のカウンタ部２２０のカウント値は第１のカウンタ部２１０のカウント値と一致することになる。
【００４５】
これらフリップフロップ２２１，２２２の出力ビットＢ３，Ｂ４は、デコーダ２２３に供給される。これら出力ビットＢ３，Ｂ４の変化タイミングは同時であることから、出力ビットＢ３，Ｂ４の信号経路に遅延回路などは挿入されていない。しかしながら、上述の通り第１のカウンタ部２１０はリップル型のカウンタであることから、生成される出力ビットＢ１，Ｂ２が変化する際、合計でフリップフロップ２段分の遅延が生じる。このような遅延を持った出力ビットＢ１，Ｂ２を正しくラッチすべく、第２のカウンタ部２２０には、遅延回路２２４が設けられている。遅延回路２２４は、フリップフロップ２段分に相当する遅延量を有している。図２に示すように、遅延回路２２４は、分周クロックＬＣＬＫＯの信号経路に挿入されている。
【００４６】
これにより、デコーダ２２３に入力される出力ビットＢ３，Ｂ４の変化タイミングは、出力ビットＢ１，Ｂ２の変化タイミングと実質的に一致することになる。デコーダ２２３は、バイナリ形式であるビットＢ３，Ｂ４に基づいて、４本（＝２２）の出力のいずれか一つをハイレベルに活性化させる。
【００４７】
選択回路２３０は、第１のカウンタ部２１０の出力に対応する４つのＡＮＤ回路２３０−０，２，４，６と、第２のカウンタ部２２０の出力に対応する４つのＡＮＤ回路２３０−１，３，５，７によって構成されている。ＡＮＤ回路２３０−０，２，４，６の一方の入力端には、第１のカウンタ部２１０の対応する出力ビットがそれぞれ供給され、他方の入力端には分周クロックＬＣＬＫＥが共通に供給される。また、ＡＮＤ回路２３０−１，３，５，７の一方の入力端には、第２のカウンタ部２２０の対応する出力ビットがそれぞれ供給され、他方の入力端には分周クロックＬＣＬＫＯが共通に供給される。
【００４８】
かかる構成により、第１のカウンタ部２１０の出力と第２のカウンタ部２２０の出力が交互に選択され、選択されたカウント値がポイントシフト型ＦＩＦＯ回路３００に供給される。カウンタ回路２００のカウント値は、出力ゲート制御信号ＣＯＴ０〜ＣＯＴ７として用いられる。
【００４９】
図４は、カウンタ回路２００の動作を説明するためのタイミング図である。
【００５０】
図４に示すように、第１のカウンタ部２１０のカウント値である出力ビットＢ１，Ｂ２は、分周クロックＬＣＬＫＥに同期してインクリメントし、第２のカウンタ部２２０のカウント値である出力ビットＢ３，Ｂ４は、分周クロックＬＣＬＫＯに同期してインクリメントする。但し、これらのインクリメント動作は相互に無関係に行われるのではなく、第１のカウンタ部２１０のカウント値が第２のカウンタ部２２０のカウント値として取り込まれるため、第２のカウンタ部２２０のカウント値は第１のカウンタ部２１０のカウント値に追従する。したがって、ハザードなどによって第１のカウンタ部２１０のカウント値がジャンプした場合には、第２のカウンタ部２２０のカウント値も同じ値にジャンプする。このように、第１のカウンタ部２１０のカウント値と第２のカウンタ部２２０のカウント値は、常に相関した状態でインクリメントされる。
【００５１】
このようにして生成されるカウント値は、選択回路２３０によって選択される。つまり、分周クロックＬＣＬＫＥがハイレベルである期間においては第１のカウンタ部２１０のカウント値が選択され、分周クロックＬＣＬＫＯがハイレベルである期間においては第２のカウンタ部２２０のカウント値が選択される。その結果、カウンタ回路２００のカウント値は、出力用クロックＬＣＬＫに同期してインクリメントされることになる。つまり、出力ゲート制御信号ＣＯＴ０〜ＣＯＴ７がこの順に活性化されることになる。
【００５２】
また、ハザードなどによって第１のカウンタ部２１０のカウント値がジャンプした場合、活性化される出力ゲート制御信号ＣＯＴ０〜ＣＯＴ７が不測に変化する。しかしながら、第１及び第２のカウンタ部２１０，２２０はバイナリ形式でカウント値を出力することから、複数の出力ゲート制御信号ＣＯＴ０〜ＣＯＴ７が同時に活性化したり、いずれの出力ゲート制御信号ＣＯＴ０〜ＣＯＴ７も活性化しないというような不定状態とはならならず、あくまでカウント値がジャンプするのみである。しかも、ハザードが生じるのは、パワーダウンモードからの復帰時などであることから、後述するポイントシフト型ＦＩＦＯ回路３００には、リードコマンドＭＤＲＤＴが蓄積されていない状態である。
【００５３】
したがって、ハザードなどによってカウント値がジャンプした場合であっても、カウンタ回路２００は自動復旧し、そのまま正常な動作を行うことが可能となる。これは、ポイントシフト型ＦＩＦＯ回路３００が動作を開始する場合、カウンタ回路２００のカウント値自体に意味はなく、カウント値が順次変化すれば正しい動作を行うことができるからである。
【００５４】
次に、ポイントシフト型ＦＩＦＯ回路３００について説明する。
【００５５】
図２に示すように、ポイントシフト型ＦＩＦＯ回路３００は、入力選択回路３１０と、シフト回路３２０と、ラッチ回路３３０と、出力選択回路３４０と、出力合成回路３５０とを備えている。
【００５６】
入力選択回路３１０は、８つのタイミング制御回路３１０−０〜３１０−７によって構成されている。これらタイミング制御回路３１０−０〜３１０−７には、モード切替回路４００を通過したリードコマンドＭＤＲＤＴが共通に入力されるとともに、遅延回路３９０によって出力ゲート制御信号ＣＯＴ０〜ＣＯＴ７を遅延させた入力ゲート制御信号ＣＩＴ０〜ＣＩＴ７がそれぞれ入力される。
【００５７】
図５は、タイミング制御回路３１０−０の回路図である。
【００５８】
図５に示すように、タイミング制御回路３１０−０は、ＳＲ型ラッチ回路３１１と、ＳＲ型ラッチ回路３１１の出力ＭＤＲＤＩＴと入力ゲート制御信号ＣＩＴ０が入力されるＮＡＮＤゲート３１２を有している。ＳＲ型ラッチ回路３１１のセット端子Ｓには、インバータ３１３によって反転されたリードコマンドＭＤＲＤＴが供給され、リセット端子Ｒには入力ゲート制御信号ＣＩＴ０が供給される。ＮＡＮＤゲート３１２の出力は、対応する信号経路Ｌａ０に接続されており、当該信号経路Ｌａ０を介して内部リードコマンドＤＲＣａ０が出力される。かかる構成により、ＳＲ型ラッチ回路３１１は、リードコマンドＭＤＲＤＴによってセットされ、カウンタ回路２００の対応するカウント値（入力ゲート制御信号ＣＩＴ０）の非活性化に応答してリセットされることになる。
【００５９】
その他のタイミング制御回路３１０−１〜３１０−７についても、それぞれ入力ゲート制御信号ＣＩＴ１〜ＣＩＴ７が入力される他は、図５に示したタイミング制御回路３１０−０と同じ回路構成を有している。タイミング制御回路３１０−１〜３１０−７の出力は、それぞれ対応する信号経路Ｌａ１〜Ｌａ７に接続されており、これら信号経路Ｌａ１〜Ｌａ７を介してリードコマンドＤＲＣａ１〜ＤＲＣａ７が出力される。
【００６０】
図６は、入力選択回路３１０の動作を説明するためのタイミング図である。
【００６１】
図６に示す例においては、外部クロックＣＫのアクティブエッジ０及び４に応答してリードコマンドＲＤが発行されており、これに応答して外部クロックＣＫのアクティブエッジ０，２，４，６に対応するリードコマンドＭＤＲＤＴが生成されている。但し、外部リードコマンドＲＤが発行されてから、内部リードコマンドＭＤＲＤＴが生成されるまでには所定の時間が必要であり、図６に示す例では約１クロックサイクルの遅延が生じている。
【００６２】
図６において、符号３１０−０，３１０−２，３１０−４，３１０−６で囲んでいる箇所は、それぞれタイミング制御回路３１０−０，３１０−２，３１０−４，３１０−６による動作を示している。図６に示す例は、出力用クロックＬＣＬＫにジッタ成分が含まれていない場合を示しており、この場合、入力ゲート制御信号ＣＩＴ０，ＣＩＴ２，ＣＩＴ４，ＣＩＴ６は、内部のリードコマンドＭＤＲＤＴの波形とほぼ一致する。このようなケースでは、図６に示すように、タイミング制御回路３１０−０，３１０−２，３１０−４，３１０−６からそれぞれ出力されるリードコマンドＤＲＣａ０，ＤＲＣａ２，ＤＲＣａ４，ＤＲＣａ６の活性化期間（ローレベルである期間）は約０．５ｔＣＫ（ｔＣＫとはクロックサイクルを指す）となる。
【００６３】
図７は、入力選択回路３１０の動作を説明するための別のタイミング図であり、ジッタによって出力用クロックＬＣＬＫにやや遅れ（＋０．４ｔＣＫ）が生じているケースを示している。
【００６４】
図７に示すように、ジッタによって出力用クロックＬＣＬＫがやや遅れが生じている場合であっても、図５に示した回路から明らかなように、リードコマンドＤＲＣａ０，ＤＲＣａ２，ＤＲＣａ４，ＤＲＣａ６が非活性レベル（ハイレベル）から活性レベル（ローレベル）に遷移するタイミングはジッタのない場合（図６のケース）と同じとなる。一方、リードコマンドＤＲＣａ０，ＤＲＣａ２，ＤＲＣａ４，ＤＲＣａ６が活性レベル（ローレベル）から非活性レベル（ハイレベル）に遷移するタイミングについては、ジッタ分だけ遅れる。しかしながら、後述するように、ラッチ回路３３０のラッチタイミングはリードコマンドが非活性レベル（ハイレベル）から活性レベル（ローレベル）に遷移するタイミングによって規定されるため、上記の遅れは回路動作に影響を与えない。
【００６５】
図８は、比較例による入力選択回路の動作を説明するためのタイミング図である。本例は、図５に示したＳＲ型ラッチ回路３１１を用いることなく、ＮＡＮＤゲート３１２にリードコマンドＭＤＲＤＴと入力ゲート制御信号ＣＩＴ０〜ＣＩＴ７を直接入力した場合の動作を示しており、図７と同様、ジッタによって出力用クロックＬＣＬＫにやや遅れ（＋０．２ｔＣＫ）が生じているケースを示している。
【００６６】
図８に示す例では、ジッタによって出力用クロックＬＣＬＫがやや遅れが生じている場合、リードコマンドＤＲＣａ０，ＤＲＣａ２，ＤＲＣａ４，ＤＲＣａ６が非活性レベル（ハイレベル）から活性レベル（ローレベル）に遷移するタイミングがジッタ分遅れてしまう。その結果、リードコマンドＤＲＣａ０，ＤＲＣａ２，ＤＲＣａ４，ＤＲＣａ６の活性化期間（ローレベルである期間）がジッタ分短くなってしまい（＝０．３ｔＣＫ）、ラッチ回路３３０のラッチマージンが減少してしまう。
【００６７】
これに対し、本実施形態による入力選択回路３１０によれば、ジッタによって出力用クロックＬＣＬＫに遅れが生じている場合であっても、ラッチ回路３３０によるラッチマージンが減少することがない。
【００６８】
以上が入力選択回路３１０の回路構成及びその動作である。
【００６９】
このように、本実施形態では、リードコマンドＭＤＲＤＴが活性化すると、カウンタ回路２００のカウント値に基づいて信号経路Ｌａ０〜Ｌａ７のいずれか一つにリードコマンドＤＲＣａ０〜ＤＲＣａ７が供給されることになる。例えば、入力ゲート制御信号ＣＩＴ０が活性化しているタイミングでリードコマンドＭＤＲＤＴが供給された場合には、信号経路Ｌａ０にのみリードコマンドＤＲＣａ０が供給され、他の信号経路Ｌａ１〜Ｌａ７にはリードコマンドＤＲＣａ１〜ＤＲＣａ７は供給されない。
【００７０】
これら信号経路Ｌａ０〜Ｌａ７は、シフト回路３２０の入力端に接続されている。シフト回路３２０は、あらかじめ定められた対応関係に基づいて、入力側である信号経路Ｌａ０〜Ｌａ７と出力側である信号経路Ｌｂ０〜Ｌｂ７とを接続する。これにより、入力選択回路３１０から出力されたリードコマンドＤＲＣａがリードコマンドＤＲＣｂとして所定のラッチ回路３３０−１〜３３０−８に供給される。
【００７１】
図９は、シフト回路３２０の回路図である。
【００７２】
図９に示すように、シフト回路３２０は、８つのマルチプレクサ３２０−０〜３２０−７によって構成されている。マルチプレクサ３２０−０〜３２０−７の入力側はいずれも信号経路Ｌａ０〜Ｌａ７に接続されており、あらかじめ定められた信号経路Ｌａ０〜Ｌａ７上にリードコマンドＤＲＣａ０〜ＤＲＣａ７が供給された場合に、これをリードコマンドＤＲＣｂ０〜ＤＲＣｂ７として出力側の信号経路Ｌｂ０〜Ｌｂ７に出力する。
【００７３】
どの信号経路Ｌａ０〜Ｌａ７上にリードコマンドＤＲＣａ０〜ＤＲＣａ７が供給された場合に、信号経路Ｌｂ０〜Ｌｂ７上にリードコマンドＤＲＣｂ０〜ＤＲＣｂ７を出力するかは、マルチプレクサ３２０−０〜３２０−７によって全て異なっている。その指定は、レイテンシ設定信号ＣＬによって行われる。
【００７４】
図１０は、シフト回路３２０の機能を説明するための模式図である。
【００７５】
図１０に示す外側のリングＬａは、入力側となる信号経路Ｌａ０〜Ｌａ７を示し、内側のリングＬｂは出力側となる信号経路Ｌｂ０〜Ｌｂ７を示している。そして、これらリングに付された目盛りが一致する信号経路が対応する信号経路であることを意味する。
【００７６】
より具体的に説明すると、図１０（ａ）は、信号経路Ｌａ０〜Ｌａ７と信号経路Ｌｂ０〜Ｌｂ７との差分を「０」に設定した例を示している。この場合、信号経路Ｌａｋ（ｋ＝０〜７）にリードコマンドＤＲＣａｋが供給され、信号経路Ｌｂｊ（ｊ＝０〜７）からリードコマンドＤＲＣｂｊが出力されるとすると、ｊ＝ｋの状態である。
【００７７】
一方、図１０（ｂ）は、信号経路Ｌａ０〜Ｌａ７と信号経路Ｌｂ０〜Ｌｂ７との差分を「７」に設定した例を示している。この場合、信号経路Ｌａｋ（ｋ＝０〜７）にリードコマンドＤＲＣａｋが供給され、信号経路Ｌｂｊ（ｊ＝０〜７）からリードコマンドＤＲＣｂｊが出力されるとすると、ｊ−ｋ＝７又は−１の状態である。
【００７８】
差分は０〜７のいずれかに設定可能であり、設定された状態においては、入力側の信号経路Ｌａと出力側の信号経路Ｌｂとの対応関係は固定される。このように、シフト回路３２０は、入力側の信号経路Ｌａと出力側の信号経路Ｌｂとの対応関係をレイテンシ設定信号ＣＬに基づいてシフトする役割を果たす。
【００７９】
このように、本実施形態では、シフト回路３２０の前段に入力選択回路３１０が配置されていることから、リードコマンドＭＤＲＤＴが活性化した場合、マルチプレクサ３２０−０〜３２０−７のいずれか一つだけが動作する。このため、リードコマンドＭＤＲＤＴの活性化の有無にかかわらず全てのマルチプレクサを動作させる場合に比べて、消費電力を低減することが可能となる。
【００８０】
シフト回路３２０から出力されるリードコマンドＤＲＣｂ０〜ＤＲＣｂ７は、ラッチ回路３３０−０〜３３０−７にそれぞれ供給される。ラッチ回路３３０−０〜３３０−７の後段には、出力選択回路３４０を構成する出力ゲート３４０−０〜３４０−７がそれぞれ接続されている。
【００８１】
図１１は、ラッチ回路３３０−０及び出力ゲート３４０−０の回路図である。
【００８２】
図１１に示すように、ラッチ回路３３０−０は、信号経路Ｌｂ０を介して入力されるリードコマンドＤＲＣｂ０が非活性レベル（ハイレベル）から活性レベル（ローレベル）に変化するとセットされるＳＲ型ラッチ回路３３１を含んでいる。ＳＲ型ラッチ回路３３１のリセットは、リセット回路３３２によって行われる。リセット回路３３２は、リセット信号ＲＥＳＥＴ及び次の出力ゲート制御信号ＣＯＴ１が供給されており、これらのいずれかがハイレベルとなると、ＳＲ型ラッチ回路３３１がリセットされる。ここで、「次の出力ゲート制御信号」とは対応する出力ゲート制御信号をＣＯＴｍ（ｍ＝０〜７）とした場合、出力ゲート制御信号ＣＯＴｍ＋１又はＣＯＴｍ−７を指す。すなわち、対応する出力ゲート制御信号の次のクロックサイクルで活性化する出力ゲート制御信号を指す。
【００８３】
また、出力ゲート３４０−０は、出力ゲート制御信号ＣＯＴ０がハイレベルである期間において、ＳＲ型ラッチ回路３３１にラッチされたリードコマンドＤＲＣｃ０を出力する。出力ゲート制御信号ＣＯＴ０がローレベルである期間においては、その出力はハイインピーダンス状態となる。
【００８４】
他のラッチ回路３３０−１〜３３０−７についても、それぞれ対応する信号経路Ｌｂ１〜Ｌｂ７を介して入力されるリードコマンドＤＲＣｂ１〜ＤＲＣｂ７によってセットされ、次の出力ゲート制御信号ＣＯＴ２〜ＣＯＴ７，ＣＯＴ０によってリセットされる他は、図１１に示したラッチ回路３３０−０と同じ回路構成を有している。また、他の出力ゲート３４０−１〜３４０−７についても、それぞれ対応する出力ゲート制御信号ＣＯＴ１〜ＣＯＴ７によって活性化される他は、図１１に示した出力ゲート３４０−０と同じ回路構成を有している。
【００８５】
このように、本実施形態では、次の出力ゲート制御信号によって当該ラッチ回路がリセットされることから、リセット用のワンショットパルスを生成するための回路などを各ラッチ回路に設ける必要がなくなる。これにより、回路規模を縮小することができるとともに、消費電力を削減することが可能となる。尚、図１１に示す回路では、リードコマンドＤＲＣｃを出力した後も、次の出力ゲート制御信号が活性化するまで、当該ラッチ回路の内容が保持されたままとなる。しかしながら、当該ラッチ回路に次のリードコマンドＤＲＣｂが入力されるタイミングは、最短でも、遅延回路３９０によって当該出力ゲート信号を遅延させたタイミング（ＣＩＴの活性化タイミング）となるため、コマンドが衝突することはない。すなわち、ＦＩＦＯカウンタの深さが少なくなることはない。
【００８６】
図２に戻って、出力選択回路３４０からの出力は出力合成回路３５０に供給され、出力合成回路３５０からリードコマンドＤＲＣとして出力される。ここで、出力ゲート３４０−０，２，４，６からの出力であるリードコマンドＤＲＣｃ０，２，４，６は配線３５１にてワイヤードオアされ、出力ゲート３４０−１，３，５，７からの出力であるリードコマンドＤＲＣｃ１，３，５，７は配線３５２にてワイヤードオアされる。つまり、カウント値が更新されるたびに異なるグループに属するラッチ回路の出力が順次選択されることになる。
【００８７】
これら配線３５１，３５２は、ＯＲゲート回路３５３の入力端に接続されている。また、各配線３５１，３５２には、ワイヤードオアされたリードコマンドを保持するためのラッチ回路３５１ａ，３５２ａがそれぞれ接続されている。一方、各配線３５１，３５２には、ワイヤードオアされたリードコマンドをリセットするためのリセット回路は設けられていない。したがって、一旦ラッチ回路３５１ａ，３５２ａにリードコマンドが保持されると、上書きされるまでリードコマンドが残ったままになる。そのため、ＯＲゲート回路３５３の出力が活性化する期間は２クロックサイクルとなる。しかしながら、配線３５１上のリードコマンドと配線３５２上のリードコマンドが衝突することはない。これは、本実施形態では内部リードコマンドＭＤＲＤＴの最短生成サイクルが２クロックサイクルだからであり、一方の配線にリードコマンドが出力された後、これがリセットされる前に他方の配線にリードコマンドが出力されることは無いからである。
【００８８】
ＯＲゲート回路３５３の出力は、ＡＮＤゲート３５４を通過した後、ラッチ回路３５５にてラッチされ、出力制御信号ＤＲＣとして出力される。図１を用いて説明したとおり、出力制御信号ＤＲＣは、データ出力回路８１、データストローブ信号出力回路８５及びＦＩＦＯ回路８３に供給され、これら回路の動作タイミングを規定する信号として用いられる。
【００８９】
ラッチ回路３５５は、出力用クロックＬＣＬＫに同期してラッチ動作を行い、その出力は反転されてＡＮＤゲート３５４に帰還される。これにより、出力制御信号ＤＲＣの活性化期間は１／２（＝１クロックサイクル）に短縮される。
【００９０】
このように、本実施形態では、８つのラッチ回路３３０−０〜３３０−７からの出力が２つにグループ分けされ、それぞれワイヤードオア接続されるとともに、得られたワイヤードオア出力がＯＲゲート回路３５３によってさらに合成される。かかる構成により、全てのラッチ回路３３０−０〜３３０−７からの出力を纏めてワイヤードオア接続する場合と比べて、出力ゲート３４０−０〜３４０−７の出力負荷が低減する。このため、出力制御信号ＤＲＣの信号品質を高めることが可能となる。
【００９１】
また、グループ数（＝２）と内部リードコマンドＭＤＲＤＴの最短生成サイクルが一致しており、且つ、カウント値が更新されるたびに異なるグループに属するラッチ回路の出力が順次選択されることから、上述の通り、配線３５１上のリードコマンドと配線３５２上のリードコマンドが衝突することがない。このため、各配線にリセット回路を設ける必要がなくなり、回路規模を縮小することが可能となる。
【００９２】
しかも、２クロックサイクルで内部リードコマンドＭＤＲＤＴが連続生成されるケースでは、配線３５１，３５２上の波形が変化せず、アクティブレベル（ハイレベル）を保持したままとなる。このため、充放電による電流消費が生じないことから、消費電力を削減することも可能となる。
【００９３】
尚、本実施形態では、ラッチ回路３３０の出力を２つのグループに分けているが、これは、内部リードコマンドＭＤＲＤＴの生成サイクルが最短で２クロックサイクルだからである。したがって、ラッチ回路３３０の出力をいくつのグループに分けるかは、内部リードコマンドＭＤＲＤＴの最短生成サイクルに基づいて定めることができる。具体的には、内部リードコマンドＭＤＲＤＴの生成サイクルが最短でｎクロックサイクルであれば、ラッチ回路３３０の出力をｎ個のグループに分け、グループごとにワイヤードオアすればよい。この場合、ＯＲゲート回路３５３の出力が活性化する期間はｎクロックサイクルとなるが、ＡＮＤゲート３５４及びラッチ回路３５５によって、出力制御信号ＤＲＣの活性化期間は１／ｎ（＝１クロックサイクル）に短縮される。
【００９４】
図２に示すように、本実施形態によるレイテンシカウンタ５５は、モード切替回路４００をさらに備えている。
【００９５】
モード切替回路４００は、リードコマンドＭＤＲＤＴを遅延させる遅延回路４０１と、モード信号に基づいて、遅延されていないリードコマンドＭＤＲＤＴ及び遅延されたリードコマンドＭＤＲＤＴのいずれか一方を選択するマルチプレクサ４０２とを含んでいる。
【００９６】
マルチプレクサ４０２は、ＤＬＬ回路２３を使用する動作モード（ＤＬＬオンモード）である場合には、遅延されていないリードコマンドＭＤＲＤＴを選択する。これにより、ポイントシフト型ＦＩＦＯ回路３００には、リードコマンドＭＤＲＤＴが高速に供給される。これに対し、ＤＬＬ回路２３を使用しない動作モード（ＤＬＬオフモード）である場合には、マルチプレクサ４０２は遅延回路４０１によって遅延されたリードコマンドＭＤＲＤＴを選択する。これにより、リードコマンドＭＤＲＤＴは、ＤＬＬオンモード時よりも遅れてポイントシフト型ＦＩＦＯ回路３００に供給されることになる。
【００９７】
遅延回路４０１の遅延量としては、ＤＬＬ回路２３が動作していない場合において、外部のクロック信号ＣＫに対して生じる出力用クロックＬＣＬＫの遅れに相当する遅延量に設定することが好ましい。これによれば、ＤＬＬオフモードにより、クロック信号ＣＫに対して出力用クロックＬＣＬＫが遅れている場合であっても、ＤＬＬオンモード時と同様の動作マージンを確保することが可能となる。
【００９８】
以上が本実施形態によるレイテンシカウンタ５５の構成である。次に、本実施形態によるレイテンシカウンタ５５の動作について説明する。
【００９９】
図１２は、本実施形態によるレイテンシカウンタ５５の動作を説明するためのタイミング図であり、内部リードコマンドＤＲＣｂがラッチ回路３３０にラッチされる様子を示している。
【０１００】
図１２では、外部のクロック信号ＣＫのエッジ０，４，８に同期してリードコマンドＲＤが発行された例を示している。図８に示すように、リードコマンドＲＤが発行されてから、内部リードコマンドＭＤＲＤＴが生成されるまでには所定の時間がかかる。また、外部からリードコマンドＲＤが発行されると、コマンドデコーダ３２は、２クロック分の間隔を空けて２回の内部リードコマンドＭＤＲＤＴを生成する。したがって、本例では、クロック信号ＣＫのエッジ０，２，４，６，８，１０に対応してリードコマンドＭＤＲＤＴが生成されている。
【０１０１】
生成されたリードコマンドＭＤＲＤＴは、カウンタ回路２００の出力に基づいて、ポイントシフト型ＦＩＦＯ回路３００に含まれる８つのラッチ回路３３０−０〜３３０−７のいずれかに保持される。本例では、１回目のリードコマンドＭＤＲＤＴが生成されたタイミングにおいて入力ゲート制御信号ＣＩＴ０が活性化しており、シフト回路３２０のシフト動作によって、ラッチ回路３３０−７にリードコマンドが格納された状態を示している。２回目以降のリードコマンドＭＤＲＤＴは、それぞれラッチ回路３３０−１，３，５，７，１に順次格納される。
【０１０２】
ラッチ回路３３０−７に格納されたリードコマンドＤＲＣｂ７は、カウンタ回路２００のインクリメントによって、次の出力ゲート制御信号ＣＯＴ０が活性化され、これによりリセットされるまで、ラッチ回路３３０−７に保持される。そして、リセットされる直前である出力ゲート制御信号ＣＯＴ７が活性化されるタイミングで、出力ゲート３４０−７が開き、出力制御信号ＤＲＣｃ７が活性化する。出力制御信号ＤＲＣｃ７は２クロックサイクルに亘って活性化するが、ＡＮＤゲート３５４及びラッチ回路３５５によって１クロック幅に変換され、出力制御信号ＤＲＣとして出力される。そして、図１に示したデータ出力回路８１は、出力制御信号ＤＲＣに同期して実際にリードデータＤＱを出力する。
【０１０３】
その後、ラッチ回路３３０−１，３，５，７，１に順次格納されるリードコマンドが順次出力されるため、この間、配線３５２の論理レベルはハイレベルに固定される。一方、ラッチ回路３３０−０，２，４，６にはリードコマンドが格納されないため、配線３５１の論理レベルはローレベルに固定される。このように、２クロックサイクル間隔でリードコマンドＭＤＲＤＴが連続的に活性化される場合、一方のグループに属するラッチ回路のみが使用され、他方のグループに属するラッチ回路は使用されなくなる。
【０１０４】
その後、セルフリフレッシュモードやパワーダウンモードにエントリーすると、図１に示したＤＬＬ回路２３が停止する。そして、通常動作に復帰する際、出力用クロックＬＣＬＫにハザードが生じることがあり、これによってカウンタ回路２００のカウント値がジャンプすることがある。
【０１０５】
しかしながら、本実施形態によるレイテンシカウンタ５５では、カウント値自体に意味はなく、通常動作時において正しくインクリメント（又はデクリメント）されれば問題は全く生じない。つまり、カウント値がエラーとなること自体が無く、ハザードによってカウント値が変化しても、そのまま次の動作を実行することができる。このように、本実施形態によるレイテンシカウンタ５５によれば、出力用クロックＬＣＬＫのハザードに起因するエラーを防止することが可能となる。
【０１０６】
以上説明したように、本実施形態によるレイテンシカウンタ５５によれば、出力用クロックＬＣＬＫを２分周した分周クロックＬＣＬＫＥ，ＬＣＬＫＯに同期してカウント動作を行っていることから、出力用クロックＬＣＬＫの周波数が高い場合であってもカウンタ回路２００の動作マージンを十分に確保することが可能となる。
【０１０７】
また、カウンタ回路２００を第１のカウンタ部２１０と第２のカウンタ部２２０に分けていることから、第１のカウンタ部２１０に含まれるリップルカウンタのビット数が少なくなる。これにより、リップルカウンタにて生じる遅延が小さくなり、その結果、選択回路２３０に分周クロックＬＣＬＫＥ，ＬＣＬＫＯを直接供給することが可能となる。つまり、リップルカウンタの遅延が大きい場合、正しく同期を取るためには、分周クロックＬＣＬＫＥ，ＬＣＬＫＯをある程度遅延させてから選択回路２３０に入力する必要がある。この場合、遅延を回復させるための再同期回路を設けることによって、リードコマンドＭＤＲＤＴを出力用クロックＬＣＬＫに再同期させる必要が生じる。このような再同期回路は、クロックの周波数が高い場合、コマンドの転送マージンを低下させる原因となりうる。しかしながら、本実施形態では、このような再同期回路は不要であり、その結果、クロックの周波数が高い場合であっても十分な転送マージンを確保することが可能となる。
【０１０８】
しかも、第１のカウンタ部２１０については分周クロックＬＣＬＫＥをバイナリ形式でカウントする一方、第２のカウンタ部２２０については分周クロックＬＣＬＫＯに同期して第１のカウンタ部２１０のカウント値を取り込んでいることから、第１のカウンタ部２１０のカウント値と第２のカウンタ部２２０のカウント値がずれることがない。このため、第１のカウンタ部２１０のカウント値に基づいてラッチしたリードコマンドＭＤＲＤＴを、第２のカウンタ部２２０のカウント値に基づいて出力することが可能となる。もちろんその逆も可能である。このことは、分周クロックＬＣＬＫＥ，ＬＣＬＫＯに同期してカウント動作を行っているにもかかわらず、ポイントシフト型ＦＩＦＯ回路３００が分周による影響を受けないことを意味する。
【０１０９】
つまり、もし第１のカウンタ部２１０のカウント値と第２のカウンタ部２２０のカウント値が無関係であれば、第１のカウンタ部２１０のカウント値に基づいてラッチしたリードコマンドＭＤＲＤＴについては、第１のカウンタ部２１０のカウント値に基づいて出力することが必須となる。同様に、第２のカウンタ部２２０のカウント値に基づいてラッチしたリードコマンドＭＤＲＤＴについては、第２のカウンタ部２２０のカウント値に基づいて出力することが必須となる。この場合、ポイントシフト型ＦＩＦＯ回路３００に設定可能なレイテンシ数は偶数のみとなり、レイテンシを奇数に設定するためには、レイテンシ追加回路などを付加する必要が生じる。しかしながら、本実施形態では、第１のカウンタ部２１０のカウント値と第２のカウンタ部２２０のカウント値が連動していることから、このような制約を受けることが無くなり、レイテンシ追加回路などを付加することなく、レイテンシを任意の値に設定することが可能となる。
【０１１０】
しかも、本実施形態では、第１のカウンタ部２１０がリップルカウンタであることから、上述の通り、出力用クロックＬＣＬＫのハザードに起因するエラーを防止することが可能となる。
【０１１１】
また、本実施形態においては、シフト回路３２０の前段に入力選択回路３１０を設けることによって、リードコマンドＭＤＲＤＴが供給された場合にだけシフト回路３２０を動作させていることから、リードコマンドＭＤＲＤＴの有無にかかわらずシフト回路を常時動作させる場合に比べて、消費電力を低減することが可能となる。
【０１１２】
さらに、本実施形態では、入力選択回路３１０を構成する複数のタイミング制御回路３１０−０〜３１０−７にＳＲ型ラッチ回路３１１を設け、リードコマンドＭＤＲＤＴによってセットするとともに、対応する入力ゲート選択信号の非活性化に応答してリセットしていることから、ジッタによって出力用クロックＬＣＬＫに遅れが生じている場合であっても、リードコマンドＤＲＣａのウィンドウ幅が減少しない。このため、ラッチ回路３３０によるラッチマージンが減少することがない。
【０１１３】
さらに、本実施形態では、ラッチ回路３３０にラッチされたリードコマンドＤＲＣｂを対応する出力ゲート制御信号によって出力した後、次の出力ゲート制御信号によって当該ラッチ回路をリセットしていることから、リセット用のワンショットパルスを生成するための回路などを各ラッチ回路に設ける必要がなくなる。このため、回路面積が縮小されるとともに、消費電力が削減される。
【０１１４】
さらに、本実施形態では、カウント値が更新されるたびに異なるグループに属するラッチ回路３３０−０〜３３０−７の出力が順次選択されるよう、８つのラッチ回路３３０−０〜３３０−７をグループ分けし、グループごとに出力をワイヤードオア接続していることから、全てのラッチ回路３３０−０〜３３０−７からの出力を纏めてワイヤードオア接続する場合と比べて、出力ゲート３４０−０〜３４０−７の出力負荷が低減する。しかも、ワイヤードオアされた各配線にリセット回路を設ける必要がないため、回路規模を縮小することが可能となる。さらに、２クロックサイクルで内部リードコマンドＭＤＲＤＴが連続生成されるケースでは、配線３５１，３５２上の波形が変化せず、アクティブレベル（ハイレベル）を保持したままとなることから、充放電による電流消費が生じない。このため、消費電力を削減することも可能となる。
【０１１５】
さらに、本実施形態においては、モード切替回路４００を用いることにより、ＤＬＬオフモードである場合にリードコマンドＭＤＲＤＴの供給をＤＬＬオンモード時よりも遅らせていることから、出力用クロックＬＣＬＫが外部のクロック信号ＣＫに対して遅れている場合であっても、ＤＬＬオンモード時と同様にリードコマンドＭＤＲＤＴの取り込みマージンを十分に確保することが可能となる。
【０１１６】
図１３は、本発明の好ましい実施形態による半導体記憶装置１０を用いたデータ処理システム５００の構成を示すブロック図である。
【０１１７】
図１３に示すデータ処理システム５００は、データプロセッサ５２０と、本実施形態による半導体記憶装置（ＤＲＡＭ）１０が、システムバス５１０を介して相互に接続された構成を有している。データプロセッサ５２０としては、例えば、マイクロプロセッサ（ＭＰＵ）、ディジタルシグナルプロセッサ（ＤＳＰ）などを含まれるが、これらに限定されない。図１３においては簡単のため、システムバス５１０を介してデータプロセッサ５２０とＤＲＡＭ１０とが接続されているが、システムバス５１０を介さずにローカルなバスによってこれらが接続されていても構わない。
【０１１８】
また、図１３には、簡単のためシステムバス５１０が１組しか描かれていないが、必要に応じ、コネクタなどを介しシリアルないしパラレルに設けられていても構わない。また、図１０に示すメモリシステムデータ処理システムでは、ストレージデバイス５４０、Ｉ／Ｏデバイス５５０、ＲＯＭ５６０がシステムバス５１０に接続されているが、これらは必ずしも必須の構成要素ではない。
【０１１９】
ストレージデバイス５４０としては、ハードディスクドライブ、光学ディスクドライブ、フラッシュメモリなどが挙げられる。また、Ｉ／Ｏデバイス５５０としては、液晶ディスプレイなどのディスプレイデバイスや、キーボード、マウスなどの入力デバイスなどが挙げられる。また、Ｉ／Ｏデバイス５５０は、入力デバイス及び出力デバイスのいずれか一方のみであっても構わない。さらに、図１３に示す各構成要素は、簡単のため１つずつ描かれているが、これに限定されるものではなく、１又は２以上の構成要素が複数個設けられていても構わない。
【０１２０】
以上、本発明の好ましい実施形態について説明したが、本発明は、上記の実施形態に限定されることなく、本発明の主旨を逸脱しない範囲で種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることはいうまでもない。
【０１２１】
例えば、本発明においてカウンタ回路２００の回路構成については特に限定されず、公知の種々のカウンタ路を用いることが可能である。
【０１２２】
また、上記実施形態では、分周回路１００を用いて出力用クロックＬＣＬＫを２分周しているが、本発明において分周数がこれに限定されるものではない。したがって、出力用クロックＬＣＬＫがより高速である場合には、出力用クロックＬＣＬＫを４分周するとともに、第２のカウンタ部２２０と同様、第１のカウンタ部２１０と連動する第３及び第４のカウンタを用いればよい。
【０１２３】
また、上記実施形態では、第１のカウンタ部２１０がリップルカウンタを含んでいるが、本発明がこれに限定されるものではない。
【０１２４】
さらに、上記実施形態では、カウンタ回路２００をレイテンシカウンタ５５の一部として利用しているが、本発明によるカウンタ回路の用途がこれに限定されるものではない。
【０１２５】
また、本発明においてモード切替回路４００を備えることは必須でない。
【０１２６】
さらに、本発明において入力選択回路３１０やラッチ回路３３０の回路構成については特に限定されず、上記実施形態にて示した回路とは異なる回路を用いることが可能である。
【符号の説明】
【０１２７】
１０      半導体記憶装置（ＤＲＡＭ）
１１ａ，１１ｂ    クロック端子
１２ａ〜１２ｅ    コマンド端子
１３      アドレス端子
１４      データ入出力端子
１５ａ，１５ｂ    データストローブ端子
１６ａ，１６ｂ    電源端子
２１      クロック入力回路
２２      タイミング発生回路
２３      ＤＬＬ回路
３１      コマンド入力回路
３２      コマンドデコーダ
４１      アドレス入力回路
４２      アドレスラッチ回路
５１      ロウ系制御回路
５２      カラム系制御回路
５３      リード制御回路
５４      ライト制御回路
５５      レイテンシカウンタ
５６      モードレジスタ
６１      ロウ系救済回路
６２      カラム系救済回路
６３      リフレッシュカウンタ
７０      メモリセルアレイ
７１      ロウデコーダ
７２      カラムデコーダ
７３      センスアンプ
７４      リードアンプ
７５      ライトアンプ
８１      データ出力回路
８２      データ入力回路
８３，８４    ＦＩＦＯ回路
８５      データストローブ信号出力回路
８６      データストローブ信号入力回路
９０      内部電圧発生回路
１００    分周回路
１０１    ラッチ回路
１０２    インバータ
１０３，１０４    ＡＮＤ回路
２００    カウンタ回路
２１０    第１のカウンタ部
２１１，２１２，２２１，２２２    フリップフロップ
２１３，２２３    デコーダ
２１４，２２４    遅延回路
２２０    第２のカウンタ部
２３０    選択回路
２３０−０〜２３０−７    ＡＮＤ回路
３００    ポイントシフト型ＦＩＦＯ回路
３１０    入力選択回路
３１０−０〜３１０−７    タイミング制御回路
３１１    ＳＲ型ラッチ回路
３１２    ＮＡＮＤゲート
３１３    インバータ
３２０    シフト回路
３２０−０〜３２０−７    マルチプレクサ
３３０−０〜３３０−７    ラッチ回路
３３１    ＳＲ型ラッチ回路
３３２    リセット回路
３４０    出力選択回路
３４０−０〜３４０−７    出力ゲート
３５０    出力合成回路
３５１，３５２    配線
３５１ａ，３５２ａ    ラッチ回路
３５３    ＯＲゲート回路
３５４    ＡＮＤゲート回路
３５５    ラッチ回路
３９０    遅延回路
４００    モード切替回路
４０１    遅延回路
４０２    マルチプレクサ
５００    データ処理システム
５１０    システムバス
５２０    データプロセッサ
５４０    ストレージデバイス
５５０    Ｉ／Ｏデバイス
５６０    ＲＯＭ
ＣＩＴ０〜ＣＩＴ７    入力ゲート制御信号
ＣＯＴ０〜ＣＯＴ７    出力ゲート制御信号
Ｌａ０〜Ｌａ７    信号経路（入力側）
Ｌｂ０〜Ｌｂ７    信号経路（出力側）
【図１】
2011060355.tif 000003
【図２】
2011060355.tif 000004
【図３】
2011060355.tif 000005
【図４】
2011060355.tif 000006
【図５】
2011060355.tif 000007
【図６】
2011060355.tif 000008
【図７】
2011060355.tif 000009
【図８】
2011060355.tif 000010
【図９】
2011060355.tif 000011
【図１０】
2011060355.tif 000012
【図１１】
2011060355.tif 000013
【図１２】
2011060355.tif 000014
【図１３】
2011060355.tif 000015