(57)【要約】【課題】遅延回路を設けることなく、入力されるクロックと内部で遅延したクロックの位相差を吸収し、入力されたクロックに同期した出力を得ることができる同期型半導体記憶装置を提供する。【解決手段】入力クロックＣＬＫ０をツリー状に分配したツリークロックＣＬＫ１で駆動されるＤＲＡＭコア１１とＤＲＡＭインタフェース部１２とを有し、インタフェース部１２は、入力データを入力クロックＣＬＫ０に同期して取り込む第１取り込み部１２１と、その取り込んだ入力データをツリークロックＣＬＫ１に同期して取り込みＤＲＡＭコア１１側に転送する第２取り込み部１２２を含み、ＤＲＡＭコア１１からの出力データをツリークロックＣＬＫ１に同期して取り込む第３取り込み部１２３と、その出力データを入力システムクロックＣＬＫ０に同期して取り込み転送する第４取り込み部１２４を含む。【選択図】      図２
2006092643.tif 000002
【特許請求の範囲】
【請求項１】
入力クロックをツリー状に分配したツリークロックで駆動されるメモリコアと、
上記メモリコアのアクセスを制御するコントロール部と、を有し、
上記コントロール部は、
入力データを上記入力クロックに同期して取り込み、取り込んだ入力データをツリークロックに同期して上記メモリコア側に転送するクロック乗り換え部を含む
同期型半導体記憶装置。
【請求項２】
上記コントロール部のクロック乗り換え部は、
入力データを上記入力クロックに同期して取り込む第１取り込み部と、
上記第１取り込み部で取り込んだ入力データをツリークロックに同期して取り込み上記メモリコア側に転送する第２取り込み部と、を含む
請求項１記載の同期型半導体記憶装置。
【請求項３】
入力クロックをツリー状に分配したツリークロックで駆動されるメモリコアと、
上記メモリコアのアクセスを制御するコントロール部と、を有し、
上記コントロール部は、
上記メモリコアの出力データを上記ツリークロックに同期して取り込み、取り込んだデータを上記入力クロックに同期して外部に転送するクロック乗り換え部を含む
同期型半導体記憶装置。
【請求項４】
上記コントロール部のクロック乗り換え部は、
上記メモリコアの出力データを上記ツリークロックに同期して取り込む第１取り込み部と、
上記第１取り込み部で取り込んだデータを上記入力クロックに同期して取り込み外部に転送する第２取り込み部と、を含む
請求項３記載の同期型半導体記憶装置。
【請求項５】
入力クロックをツリー状に分配したツリークロックで駆動されるメモリコアと、
上記メモリコアのアクセスを制御するコントロール部と、を有し、
上記コントロール部は、
入力データを上記入力クロックに同期して取り込み、取り込んだ入力データをツリークロックに同期して上記メモリコア側に転送する第１クロック乗り換え部と、
上記メモリコアの出力データを上記ツリークロックに同期して取り込み、取り込んだデータを上記入力クロックに同期して外部に転送する第２クロック乗り換え部と、を含む
同期型半導体記憶装置。
【請求項６】
上記コントロール部の第１クロック乗り換え部は、
入力データを上記入力クロックに同期して取り込む第１取り込み部と、
上記第１取り込み部で取り込んだ入力データをツリークロックに同期して取り込み上記メモリコア側に転送する第２取り込み部と、を含み、
上記第２クロック乗り換え部は、
上記メモリコアの出力データを上記ツリークロックに同期して取り込む第３取り込み部と、
上記第１取り込み部で取り込んだデータを上記入力クロックに同期して取り込み外部に転送する第４取り込み部と、を含む
請求項５記載の同期型半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムクロックに同期してデータの入出力処理を行うシクロナスＤＲＡＭ（ＳＤＲＡＭ）等の同期型半導体記憶装置に関するものである。
【背景技術】
【０００２】
外部から与えられるシステムクロックに同期してデータの入出力を行うことによりデータ転送速度を速くするようにした同期型記憶装置の一つにＳＤＲＡＭがある（たとえば特許文献１、２参照）。
ＳＤＲＡＭは、大きく分けて、複数のＤＲＡＭセルがアレイ状に配列されたメモリ部と、メモリ部のセルアクセスをコントロールするコントロール部とにより構成される。
コントロール部は、論理回路であって、複数の機能ブロックと、機能ブロックのデータの入出力をシステムクロックに同期して行う複数のフリップフロップを有する。
【０００３】
ところで、従来、ＤＲＡＭを混載したシステムオンチップ（Ｓｏｃ）のシステム設計を行うに際し、ＤＲＡＭの出力タイミングを適宜遅延させ合わせ込んでいたため、ＤＲＡＭ内部のクロックによる位相差も考慮しなければならなかった。
近年、半導体の微細化がさらに進み、製造上のバラツキが大きくなるので、ＤＲＡＭ内部のクロックの遅延時間のバラツキまで補償することが困難になった。
【０００４】
そこで、ＤＤＲやＲＤＲＡＭではＤＲＡＭコアのクロックに同期して現れる出力をＤＬＬで遅延させ外部クロックに同期させていた。
すなわち、従来は、ＤＲＡＭ内部もしくは外部に調整されたＤＬＬなどの遅延回路を持つ必要があった（たとえば特許文献３参照）。
【特許文献１】特開平９−２０４７７６号公報
【特許文献２】特開平１０−３４０２２２号公報
【特許文献３】特開平１０−１１２１８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところが、位相検出のため、ＤＲＡＭコアの内部クロックの遅延時間を考慮する必要があった。
低周波と高周波では、入力クロックに対しＤＲＡＭコアの内部クロックが同じ遅延時間遅れたとしても、位相差にすると高周波の場合、大きな位相差として現れてしまい、動作マージンの低下を招いてしまう。
従来は、ＤＲＡＭからの出力はＤＲＡＭの内部クロックに同期して出力されていたため、その遅延時間の製造上のバラツキを考慮して、出力のタイミングを規定しなければならなかった。
上述したように、半導体の微細化により製造上のバラツキによる遅延時間の影響が相対的に大きくなったこともあり、出力タイミングの規定が困難になった。
【０００６】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、遅延回路を設けることなく、入力されるクロックと内部で遅延したクロックの位相差を吸収し、入力されたクロックに同期した出力を得ることができる同期型半導体記憶装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の第１の観点は、入力クロックをツリー状に分配したツリークロックで駆動されるメモリコアと、上記メモリコアのアクセスを制御するコントロール部と、を有し、上記コントロール部は、入力データを上記入力クロックに同期して取り込み、取り込んだ入力データをツリークロックに同期して上記メモリコア側に転送するクロック乗り換え部を含む。
【０００８】
好適には、上記コントロール部のクロック乗り換え部は、入力データを上記入力クロックに同期して取り込む第１取り込み部と、上記第１取り込み部で取り込んだ入力データをツリークロックに同期して取り込み上記メモリコア側に転送する第２取り込み部と、を含む。
【０００９】
本発明の第２の観点は、入力クロックをツリー状に分配したツリークロックで駆動されるメモリコアと、上記メモリコアのアクセスを制御するコントロール部と、を有し、上記コントロール部は、上記メモリコアの出力データを上記ツリークロックに同期して取り込み、取り込んだデータを上記入力クロックに同期して外部に転送するクロック乗り換え部を含む。
【００１０】
好適には、上記コントロール部のクロック乗り換え部は、上記メモリコアの出力データを上記ツリークロックに同期して取り込む第１取り込み部と、上記第１取り込み部で取り込んだデータを上記入力クロックに同期して取り込み外部に転送する第２取り込み部と、を含む。
【００１１】
本発明の第３の観点は、入力クロックをツリー状に分配したツリークロックで駆動されるメモリコアと、上記メモリコアのアクセスを制御するコントロール部と、を有し、上記コントロール部は、入力データを上記入力クロックに同期して取り込み、取り込んだ入力データをツリークロックに同期して上記メモリコア側に転送する第１クロック乗り換え部と、上記メモリコアの出力データを上記ツリークロックに同期して取り込み、取り込んだデータを上記入力クロックに同期して外部に転送する第２クロック乗り換え部と、を含む。
【００１２】
好適には、上記コントロール部の第１クロック乗り換え部は、入力データを上記入力クロックに同期して取り込む第１取り込み部と、上記第１取り込み部で取り込んだ入力データをツリークロックに同期して取り込み上記メモリコア側に転送する第２取り込み部と、を含み、上記第２クロック乗り換え部は、上記メモリコアの出力データを上記ツリークロックに同期して取り込む第３取り込み部と、上記第１取り込み部で取り込んだデータを上記入力クロックに同期して取り込み外部に転送する第４取り込み部と、を含む。
【００１３】
本発明によれば、入力されるクロックと内部で遅延したクロックがツリー状に分配されてメモリコアを駆動する。
そして、コントロール部のデータの入力または出力において、外部からの入力側では入力クロックに同期してデータが取り込まれ、次いで、遅延したツリークロックに同期したデータをメモリコアに入力する。
また、メモリコアからのデータ出力の場合には、まず、ツリークロックに同期してデータを取り込み、次に、このデータを入力クロックに同期させる外部に出力する。
【発明の効果】
【００１４】
本発明によれば、タイミング調整が容易になり、設計効率を高めることができる。
メモリのインタフェースは１本の入力クロックに同期した入出力を行えるため、メモリコアの取り扱いが容易になる。
メモリコアの出力は位相差をコア内部で吸収してから出力するので、コア外部にＤＬＬなどの遅延調整回路が不要になる。
メモリの入出力タイミングからメモリコアのタイミングの誤差の影響をなくすことができる。
位相差を吸収するモジュールは遅延回路を含まないため、高周波での動作が可能である。入力クロックとツリークロックの位相差を１つのモジュールで解消するので、このモジュールを入力用、出力用にそれぞれ最適化することができる。
処理時間にモジュール内に隣接されたフリップフロップ間の転送時間しか要さないため、高い周波数で信号の受け渡しが可能となる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施形態を、図面に関連付けて説明する。
【００１６】
図１は、本発明に係る同期型半導体記憶装置の一実施形態を示すブロック構成図である。
本実施形態においては、同期型半導体記憶装置としてＳＤＲＡＭを例に説明する。
また、図２は、本発明に係るＳＤＲＡＭをシステムオンチップ（ＳｏＣ）として適用した例を示す図である。
【００１７】
このＳＤＲＡＭ１０は、図１に示すように、大きく分けて、複数のＤＲＡＭセルがアレイ状に配列されたメモリ部（ＤＲＡＭコアという）１１と、ＤＲＭＡコア１１のセルアクセスをコントロールするＤＲＡＭインタフェース部（コントロール部）１２とにより構成される。
そして、図示しないＣＰＵ等と共に、ＤＲＭＡコア１１、ＤＲＡＭインタフェース部（ＤＲＡＭ  Ｉ／Ｆ）１２は、一つのＩＣに集積化されている。
すなわち、本実施形態のＳＤＲＡＭは、図２に示すように、システムオンチップ（ＳｏＣ）向けの混載ＤＲＡＭとして形成されている。
【００１８】
本実施形態のシステムオンチップ（ＳｏＣ）向けの混載ＳＤＲＡＭ１０は、独立して持つ多数の入力と出力（たとえば２５６ビット）を、高い周波数（たとえば５００ＭＨｚ）で駆動することで高いデータレートを実現する。広いバンド幅と高いデータレートを必要とする画像処理プロセッサなどに適した混載ＳＤＲＡＭとして形成される。
【００１９】
ＤＲＡＭコア１１は、図２に示すように、入力されたクロックＣＬＫ０をツリー状に分配し、ある時間遅延したツリークロックに同期して動作することで、多数ある入出力のタイミングを合わせている。
【００２０】
具体的には、図２に示すように、たとえば５００ＭＨｚのクロック（システムクロック）ＣＬＫ０は、ＤＲＡＭインタフェース１２に入力されて、ＤＲＡＭインタフェース１２内にクロック配線１３を通して分配されると共に、ＤＲＡＭコア１１側にそのまま、５０００ＭＨｚのクロックとしてクロック配線１４を通してそのまま伝搬される。
【００２１】
クロック配線１３は、システムクロックＣＬＫが伝搬され入力される幹線１３−１と、複数の枝線１３−２とを有する。
【００２２】
クロック配線１４は、図２に示すように、クロック配線１３の幹線１３−１が延設された幹線１４−１と、幹線１４−１を伝搬されたのシステムクロックＣＬＫ０をツリークロックＣＬＫ１としてＤＲＡＭコア１１の所定部に分配するための複数の枝線１４−２〜１４−８（本実施形態においては、例として、８本としている）、並びに、システムクロックＣＬＫ０をツリークロックＣＬＫ１としてＤＲＡＭインタフェース部１２に分配（帰還）させるための枝線１４−１０，１４−１１としを有している。
【００２３】
以上の構成を有するＳＤＲＡＭ１０においては、高い周波数ではＤＲＡＭコア１１のツリークロックＣＬＫ２の遅延による位相差が大きくなる。
そこで、本実施形態においては、ＤＲＡＭインタフェース部１２に入力クロックＣＬＫ０とツリークロックＣＬＫ１間の位相差を吸収するためのモジュールを配置し、１本の入力クロック信号に同期した入出力を実現している。
【００２４】
ＤＲＡＭインタフェース部１２は、図２に示すように、システムの図示しない上位装置からの転送された入力データ（コマンド、ローアドレス、カラムアドレス、書き込みデータ等を含む）を入力クロックＣＬＫ０に同期して取り込む第１取り込み部１２１と、第１取り込み部１２１で取り込んだ入力データをツリークロックＣＬＫ１に同期して取り込みＤＲＡＭコア１１側に転送する第２取り込み部１２２を含む。
さらに、ＤＲＡＭインタフェース部１２は、図２に示すように、ＤＲＡＭコア１１からの出力データ（読出データ）をツリークロックＣＬＫ１に同期して取り込む第３取り込み部１２３と、第３取り込み部１２３で取り込んだ出力データを入力システムクロックＣＬＫ０に同期して取り込み図示しない上位装置側に転送する第４取り込み部１２４を含む。
【００２５】
ＤＲＡＭインタフェース部１２における第１取り込み部１２１と第２取り込み部１２２により入力データに対する第１クロック乗り換えモジュール１５が構成され、第３取り込み部１２３と第４取り込み部１２４により出力データに対する第２クロック乗り換えモジュール１６が構成される。
【００２６】
図３は、本実施形態に係る第１および第２クロック乗り換えモジュールの構成例を示すブロック図である。
図４（Ａ）〜（Ｅ）は、図３の第１クロック乗り換えモジュールのタイミングチャートである。図５（Ａ）〜（Ｅ）は、図３の第２クロック乗り換えモジュールのタイミングチャートである。
【００２７】
第１クロック乗り換えモジュール１５は、図示しない上位装置からの転送された入力データ（コマンド、ローアドレス、カラムアドレス、書き込みデータ等を含む）ＤＩＮを入力クロックＣＬＫ０に同期して取り込む第１取り込み部１２１を形成する第１フリップフロップ１５１と、第１フリップフロップ１５１で取り込んだ入力データ（内部信号）Ｄ１５１をツリークロックＣＬＫ１に同期して取り込みデータＤ１５２をＤＲＡＭコア１１側に転送する第２取り込み部１２２を形成する第２フリップフロップ１５２により構成される。
【００２８】
第２クロック乗り換えモジュール１６は、ＤＲＡＭコア１１からの出力データ（読出データ）Ｄ１１をツリークロックＣＬＫ１に同期して取り込む第３取り込み部１２３を形成する第３フリップフロップ１６１と、第３フリップフロップ１６１で取り込んだ出力データ（内部信号）Ｄ１６１を入力システムクロックＣＬＫ０に同期して取り込み図示しない上位装置側に出力データＤ１６２として転送する第４取り込み部１２４を形成する第４フリップフロップ１６２により構成される。
【００２９】
図６および図７は、ｅＤＲＡＭに本発明を適用した場合のシステム構成を示す図である。図６において。１２１はコマンドデコーダ、１２２はローアドレスバッファ、１２３はカラムアドレスバッファ、１２４はコマンドレジスタ、１２５はカラムアドレスカウンタをそれぞれ示している。
以上の第１および第２クロック乗り換えモジュール１５，１６は、たとえば図６、図７に示すように、各データ、コマンド、アドレスの入出力部に配置される。
また、ＤＲＡＭコア１１は８つのバンクＢＮＫ０〜７に分割されている。
【００３０】
図８は、本実施形態に係る第１クロック乗り換えモジュール１５の具体的な構成例を示す回路図である。
【００３１】
第１クロック乗り換えモジュール１５は、上述したように、第１フリップフロップ１５１と、第２フリップフロップ１５２とが入力データの入力ラインに対して縦続接続されている。
【００３２】
第１フリップフロップ１５１は、図８に示すように、インバータ１５１１〜１５１５、転送ゲート１５１６、および２入力ＮＡＮＤ１５１７を有している。
【００３３】
インバータ１５１１は、入力クロックＣＬＫ０に同期して入力データＤＩＮを取り込みレベルを反転させて出力する。
インバータ１５１２，１５１３は入出力同士が接続されて第１のラッチＬＴＣ１が形成され、インバータ１５１１で取り込んだ入力データをラッチする。インバータ１５１３は、入力クロックＣＬＫ０を図示しないインバータで反転させたクロック／ＣＬＫ０に同期してインバータ１５１２の出力を入力側にレベル反転させて転送する。
インバータ１５１４，１５１５は入出力同士が接続されて第２のラッチＬＴＣ２が形成され、第１のラッチＬＴＣ１のラッチデータを転送ゲート１５１６を介して入力しラッチする。インバータ１５１５は、入力クロックＣＬＫ０に同期してインバータ１５１４の出力を入力側にレベル反転させて転送する。
転送ゲート１５１６は、ｐチャネルＭＯＳ（ＰＭＯＳ）トランジスタとｎチャネルＭＯＳ（ＮＭＯＳ）トランジスタのドレイン・ソース同士を接続されており、一方の接続端が第１のラッチＬＴＣ１の出力（インバータ１５１２の出力とインバータ１５１３の入力の接続点）に接続され、他方の接続端が第２のラッチＬＴＣ２の入出力端（インバータ１５１４の入力とインバータ１５１５の出力の接続点）、およびＮＡＮＤ１５１７の一方の入力端子に接続されている。
転送ゲート１５１６のＰＭＯＳトランジスタのゲートに入力クロックＣＬＫ０を図示しないインバータで反転させたクロック／ＣＬＫ０が供給され、ＮＭＯＳトランジスタのゲートに入力クロックＣＬＫ０が供給される。
ＮＡＮＤ１５１７の他方の入力端子はリセット信号ＲＳＴの入力ラインが接続されている。すなわち、第１フリップフロップ１５１はリセット機能を有している。
【００３４】
第２フリップフロップ１５２は、図８に示すように、インバータ１５２１〜１５２４、転送ゲート１５２５，１５２６、２入力ＮＡＮＤ１５２７、および出力バッファとしてのインバータ１５２８を有している。
【００３５】
インバータ１５２１，１５２２は入出力同士が接続されて第３のラッチＬＴＣ３が形成され、転送ゲート１５２５を介して第１フリップフロップ１５１の出力データＤ１５１をラッチする。インバータ１５２２は、ツリークロックＣＬＫ１を図示しないインバータで反転させたクロック／ＣＬＫ１に同期してインバータ１５２１の出力を入力側にレベル反転させて転送する。
インバータ１５２３，１５２４は入出力同士が接続されて第４のラッチＬＴＣ４が形成され、第３のラッチＬＴＣ３のラッチデータを転送ゲート１５２６を介して入力しラッチする。インバータ１５２４は、ツリークロックＣＬＫ１に同期してインバータ１５２３の出力を入力側にレベル反転させて転送する。
転送ゲート１５２１は、ＰＭＯＳトランジスタとＮＭＯＳトランジスタのドレイン・ソース同士を接続されており、一方の接続端が第１フリップフロップ１５１のＮＡＮＤ１５１７の出力に接続され、他方の接続端が第３のラッチＬＴＣ３の入出力端（インバータ１５２１の入力とインバータ１５２２の出力の接続点）に接続されている。
転送ゲート１５２６のＰＭＯＳトランジスタのゲートにツリークロックＣＬＫ１を図示しないインバータで反転させたクロック／ＣＬＫ１が供給され、ＮＭＯＳトランジスタのゲートにツリークロックＣＬＫ１が供給される。
転送ゲート１５２６は、ＰＭＯＳトランジスタとＮＭＯＳトランジスタのドレイン・ソース同士を接続されており、一方の接続端が第３のラッチＬＴＣ３の出力（インバータ１５２１の出力とインバータ１５２２の入力の接続点）に接続され、他方の接続端が第４のラッチＬＴＣ４の入出力端（インバータ１５２３の入力とインバータ１５２４の出力の接続点）、およびＮＡＮＤ１５２７の一方の入力端子に接続されている。
転送ゲート１５２６のＰＭＯＳトランジスタのゲートにツリークロックＣＬＫ１を図示しないインバータで反転させたクロック／ＣＬＫ１が供給され、ＮＭＯＳトランジスタのゲートにツリークロックＣＬＫ１が供給される。
ＮＡＮＤ１５２７の他方の入力端子はリセット信号ＲＳＴの入力ラインが接続されている。すなわち、第２フリップフロップ１５２はリセット機能を有している。
インバータ１５２８は、ＮＡＮＤ１５２７の出力データのレベルを反転させてデータＤ１５２として出力する。
【００３６】
図９は、本実施形態に係る第２クロック乗り換えモジュール１６の具体的な構成例を示す回路図である。
【００３７】
第２クロック乗り換えモジュール１６は、上述したように、第３フリップフロップ１６１と、第４フリップフロップ１６２とが入力データの入力ラインに対して縦続接続されている。
【００３８】
第３フリップフロップ１６１は、図９に示すように、インバータ１６１１〜１６１５、転送ゲート１６１６、および２入力ＮＡＮＤ１６１７を有している。
【００３９】
インバータ１６１１は、入力クロックＣＬＫ０に同期してＤＲＭＡコア１１の出力データ（読出データ）Ｄ１１を取り込みレベルを反転させて出力する。
インバータ１６１２，１６１３は入出力同士が接続されて第５のラッチＬＴＣ５が形成され、インバータ１６１１で取り込んだ入力データをラッチする。インバータ１６１３は、ツリークロックＣＬＫ１を図示しないインバータで反転させたクロック／ＣＬＫ１に同期してインバータ１６１２の出力を入力側にレベル反転させて転送する。
インバータ１６１４，１６１５は入出力同士が接続されて第６のラッチＬＴＣ６が形成され、第５のラッチＬＴＣ５のラッチデータを転送ゲート１６１６を介して入力しラッチする。インバータ１６１５は、ツリークロックＣＬＫ１に同期してインバータ１６１４の出力を入力側にレベル反転させて転送する。
転送ゲート１６１６は、ＰＭＯＳトランジスタとＮＭＯＳトランジスタのドレイン・ソース同士を接続されており、一方の接続端が第５のラッチＬＴＣ５の出力（インバータ１６１２の出力とインバータ１６１３の入力の接続点）に接続され、他方の接続端が第６のラッチＬＴＣ６の入出力端（インバータ１６１４の入力とインバータ１６１５の出力の接続点）、およびＮＡＮＤ１６１７の一方の入力端子に接続されている。
転送ゲート１６１６のＰＭＯＳトランジスタのゲートにツリークロックＣＬＫ１を図示しないインバータで反転させたクロック／ＣＬＫ１が供給され、ＮＭＯＳトランジスタのゲートにツリークロックＣＬＫ１が供給される。
ＮＡＮＤ１６１７の他方の入力端子はリセット信号ＲＳＴの入力ラインが接続されている。すなわち、第３フリップフロップ１６１はリセット機能を有している。
【００４０】
第４フリップフロップ１６２は、図９に示すように、インバータ１６２１〜１６２４、転送ゲート１６２５，１６２６、２入力ＮＡＮＤ１６２７、および出力バッファとしてのインバータ１６２８を有している。
【００４１】
インバータ１６２１，１６２２は入出力同士が接続されて第７のラッチＬＴＣ７が形成され、転送ゲート１６２５を介して第３フリップフロップ１６１の出力データＤ１６１をラッチする。インバータ１６２２は、入力クロックＣＬＫ０を図示しないインバータで反転させたクロック／ＣＬＫ０に同期してインバータ１６２１の出力を入力側にレベル反転させて転送する。
インバータ１６２３，１６２４は入出力同士が接続されて第８のラッチＬＴＣ８が形成され、第７のラッチＬＴＣ７のラッチデータを転送ゲート１６２６を介して入力しラッチする。インバータ１６２４は、入力クロックＣＬＫ０に同期してインバータ１６２３の出力を入力側にレベル反転させて転送する。
転送ゲート１６２１は、ＰＭＯＳトランジスタとＮＭＯＳトランジスタのドレイン・ソース同士を接続されており、一方の接続端が第３フリップフロップ１６１のＮＡＮＤ１６１７の出力に接続され、他方の接続端が第７のラッチＬＴＣ７の入出力端（インバータ１６２１の入力とインバータ１６２２の出力の接続点）に接続されている。
転送ゲート１６２６のＰＭＯＳトランジスタのゲートに入力クロックＣＬＫ０を図示しないインバータで反転させたクロック／ＣＬＫ０が供給され、ＮＭＯＳトランジスタのゲートに入力クロックＣＬＫ０が供給される。
転送ゲート１６２６は、ＰＭＯＳトランジスタとＮＭＯＳトランジスタのドレイン・ソース同士を接続されており、一方の接続端が第７のラッチＬＴＣ７の出力（インバータ１６２１の出力とインバータ１６２２の入力の接続点）に接続され、他方の接続端が第８のラッチＬＴＣ８の入出力端（インバータ１６２３の入力とインバータ１６２４の出力の接続点）、およびＮＡＮＤ１６２７の一方の入力端子に接続されている。
転送ゲート１６２６のＰＭＯＳトランジスタのゲートに入力クロックＣＬＫ０を図示しないインバータで反転させたクロック／ＣＬＫ０が供給され、ＮＭＯＳトランジスタのゲートに入力クロックＣＬＫ０が供給される。
ＮＡＮＤ１６２７の他方の入力端子はリセット信号ＲＳＴの入力ラインが接続されている。すなわち、第４フリップフロップ１６２はリセット機能を有している。
インバータ１６２８は、ＮＡＮＤ１６２７の出力データのレベルを反転させてデータＤ１６２として出力する。
【００４２】
図１０は、ＤＲＡＭマクロをクロック配線に着目して示す図である。
図１０においては、図１および図２と異なり、ＤＲＡＭインタフェース部（コントロール部）１２がＤＲＡＭコア１１の下部に位置するように図示してあるが、これには作図上こういう配置となっているだけで（ＤＲＡＭコア側は図面縦方向に圧縮）、機能的には何ら相違はない。
また、図１０において、１１１で示す部分は、カラムデコーダ、ローデコーダ、ワード線ドライバ、等の各種コントローラ系を示している。
【００４３】
図１０に示すように、ＳＤＲＡＭ１０に入力されるクロックＣＬＫ０は、ＤＲＡＭコア１１でツリー状に分配される。
ツリークロックＣＬＫ１は、図１０中Ａで指し示すように、各点で配線長や負荷が等しくなるように調整してある。幹線１４−１や各枝線１４−２〜１４−１１にインバータや２個のインバータを直列に接続したバッファが適所に配置されている。
したがって、末端では、同じタイミングでクロックＣＬＫ１に同期して動作することができる。
このツリークロックＣＬＫ１は、上述したように枝線１４−１０，１４−１１を通してＤＲＡＭインタフェース部１２に入力されており、ＤＲＡＭインタフェース部１２もＤＲＡＭコア１１と同じタイミングで動作することができる。
ＤＲＡＭインタフェース部１２に配置した２つのクロックの位相差を吸収するクロック乗り換えモジュール１５，１６のＤＲＡＭコア１１側のフリップフロップ１５２，１６１は、ツリークロックＣＬＫ１で駆動するため、ＤＲＡＭコア１１と同期している。
一方、クロック乗り換えモジュール１５，１６のＳＤＲＡＭ１０の外部寄りのフリップフロップ１５１，１６２は入力クロックＣＬＫ０で駆動するため、入力クロックＣＬＫ０に同期した入出力が可能となっている。
【００４４】
以上のように、本実施形態においては、入力クロックＣＬＫ０とツリークロックＣＬＫ１間の位相差を吸収するためのクロック乗り換えモジュール１５、１６は、２つのフリップフロップを一つのモジュールとして扱う。
【００４５】
入力クロックＣＬＫ０に対しツリークロックＣＬＫ１は必ず遅れているので、入力用のモジュール１５は、図４（Ａ）〜（Ｅ）に示すように、前段の第１フリップフロップ１５１で一度入力クロックＣＬＫ０に同期させた内部信号Ｄ１５１を作り、その信号Ｄ１５１を後段の第２フリップフロップ１５２で同じサイクル内のツリークロックＣＬＫ１に同期させる。これにより、２つのクロック間の位相差を吸収し、ツリークロックＣＬＫ１に同期したデータをＤＲＡＭコア１１へ入力する。
【００４６】
出力用のモジュール１６は、図５（Ａ）〜（Ｅ）に示すように、ＤＲＡＭコア１１からの出力を前段の第３フリップフロップ１６１でツリークロックＣＬＫ１に同期させ、その信号Ｄ１６１を後段の第４フリップフロップ１６２で次に来る入力クロックＣＬＫ０で入力クロックに同期した出力を得ることで、入力クロックＣＬＫ０との位相差を吸収し入力クロックＣＬＫ０に同期したデータをＤＲＡＭ外部へ出力する。
【００４７】
ツリークロックＣＬＫ１は遅延時間が調整されているので、入力用と出力用のモジュール１５，１６は、製造上のバラツキなども考慮し、それぞれのクロック間の位相差を吸収できるよう調整しておくことができる。
また、混載向けＤＲＡＭ以外に、入力クロックとツリークロックの位相差を吸収する必要のある場合、このモジュールを使う方式を採用することができる。
ＤＲＡＭの内部クロックはツリークロックでなくとも、設計時にクロックの遅延時間を見積もり、モジュールの特性を合わせることで対応する。
【００４８】
すなわち、本実施形態のＳＤＲＡＭ１０は、入出力タイミングからＤＲＡＭコア１１の製造上のバラツキによるタイミングの誤差の影響をなくすことができるので、ゲート長が１００ナノを切るような微細化された半導体プロセスを用いる場合にこの方式を用いることができる。
【００４９】
以上説明したように、本実施形態によれば、ＤＲＡＭコア１１はツリークロックＣＬＫ１を用いるため、タイミング調整が容易になり、設計効率を高めることができる。
ＳＤＲＡＭ１０のＤＲＡＭインタフェース部１２は１本の入力クロックＣＬＫ０に同期した入出力を行えるため、ＤＲＡＭの取り扱いが容易になる。
ＤＲＡＭの出力は位相差をＤＲＡＭ内部で吸収してから出力するので、ＤＲＡＭ外部にＤＬＬなどの遅延調整回路が不要になる。
ＤＲＡＭの入出力タイミングからＤＲＡＭコアのタイミングの誤差の影響をなくすことができる。
位相差を吸収するモジュールは遅延回路を含まないため、高周波での動作が可能である。入力クロックとツリークロックの位相差を１つのモジュールで解消するので、このモジュールを入力用、出力用にそれぞれ最適化することができる。
処理時間にモジュール内に隣接されたフリップフロップ間の転送時間しか要さないため、高い周波数で信号の受け渡しが可能となる。
【００５０】
ところで、コントロール部としてのＤＲＡＭインタフェース部１２は、フリップフロップを含むクロック乗り換えモジュール１５，１６やデコーダ等の論理ブロックを並列的に配置した論理回路により構成される。
以下に、このコントロール部を構成する論理回路における好適なレイアウト例について説明する。
【００５１】
図１１は、本発明に係る論理回路のレイアウトの一実施形態を示す図である。
【００５２】
本実施形態の論理回路２０は、図１１に示すように、複数（図１１では４）の論理ブロック２１−１〜２１−４と、論理ブロックのデータの入出力をシステムクロックに同期して行うクロック乗り換えモジュール等を構成する複数のフリップフロップＦ／Ｆをアレイ化した複数（図１１では４）のフリップフロップアレイ２２−１〜２２−４と、幹線１３−１と複数（図１１では４）の枝線１３−２１〜１３−２４を有し、幹線１３−１に伝搬されたシステムクロックＣＬＫ０を複数の枝線１３−２１〜１３−２４に分配するクロック配線１３と、を有している。
そして、本実施形態の論理回路２０においては、クロック配線１３の枝線１３−２１〜１３−２４の配置位置（枝線の直下）に対応してフリップフロップアレイ２２−１〜２２−４がそれぞれ配置され、フリップフロップアレイ２２−１〜２２−４の配置領域以外に対応する論理ブロック２１−１〜２１−４が配置されている。
【００５３】
具体的には、クロック配線１３の枝線１３−２１の直下にフリップフロップアレイ２２−１が配置され、フリップフロップアレイ２２−１に対応する論理ブロック２１−１が図中の上部に近接配置されている。
クロック配線１３の枝線１３−２２の直下にフリップフロップアレイ２２−２が配置され、フリップフロップアレイ２２−２に対応する論理ブロック２１−２が図中の上部に近接配置されている。
クロック配線１３の枝線１３−２３の直下にフリップフロップアレイ２２−３が配置され、フリップフロップアレイ３２−３に対応する論理ブロック２１−３が図中の上部に近接配置されている。
クロック配線１３の枝線１３−２４の直下にフリップフロップアレイ２２−４が配置され、フリップフロップアレイ２２−４に対応する論理ブロック２１−４が図中の上部に近接配置されている。
【００５４】
本実施形態の論理回路３０においては、図１２に示すように、フリップフロップアレイ２２−１〜２２−４の入るシステムクロックＣＬＫ０のタイミングは全てクロック配線１３のクロックツリー（CLK Tree）上同じタイミングなので、ホールドマージンを確認するためには、１つのフリップフロップアレイ上の遠端、近端のポイントだけを抑えればよい。
【００５５】
これに基づき、本実施形態の論理回路２０は、異なるフリップフロップアレイ間において、フリップフロップアレイ２２−１〜２２−４上での近端、遠端のみに着目し、特性のばらつきを考慮して算出した最も速いファーストケースと最も遅いスローケースのタイミングのうち、データの送信側を近端のファーストケース、データの受信側をデータのスローケースとしてこの関係でのデータ送信におけるホールドマージンが保証されている。
【００５６】
本実施形態の論理回路２０においては、図１３に示すように、隣接する２つのフリップフロップＦ／Ｆ間でシステムクロックＣＬＫとデータが同一方向に伝播するケースのみ保証させれば、全てのフリップフロップＦ／Ｆの組み合わせでのホールドマージンを保証したことになる。
【００５７】
これに基づき、本実施形態の論理回路２０は、同一のフリップフロップアレイ２２−１〜２２−４において、隣接するフリップフロップＦ／Ｆでのクロック遅延の最も遅いケースでデータ送信におけるホールドマージンが保証されている。
【００５８】
以下、上記構成を有する論理回路２０の設計手順について説明する。
【００５９】
クロック配線１３を幹線１３−１と枝線１３−２１〜１３−２４を有するようにクロックツリーを展開した後、フリップフロップＦＦをツリー直下、すなわち枝線１３−２１〜１３−２４の直下にアレイ配置する。
論理ブロック２１−１〜２１−４は、セットアップ期間を使って、このフリップフロップアレイの配置に影響を与えないエリアに置く。
以下、２点のホールド検証を行うことで、ブロック内の任意のフリップフロップＦ／Ｆ間のホールドマージンを保証したことになる。
【００６０】
１）異なるフリップフロップ（Ｆ／Ｆ）アレイ間でのホールドマージン検証：
まず、異なるフリップフロップ（Ｆ／Ｆ）アレイ間でのホールドマージン検証について、図１４および図１５に関連付けて説明する。
図１４は、異なるフリップフロップアレイ間でのホールドマージン検証を説明するためのアレイ配置を示す図である。
図１５は、異なるフリップフロップアレイ間でのホールドマージン検証を説明するためのタイミング図である。
図１４の例では、２つのフリップフロップアレイブロックＢＬＫａ，ＢＬＫｂとして、送信側アレイブロックＢＬＫａから受信側アレイブロックＢＬＫｂにデータを転送する場合である。
図中のＲＣは配線抵抗Ｒと容量Ｃによる遅延成分を示す。
【００６１】
この場合、フリップフロップアレイ上での近端、遠端のみに着目し、ＲＣ、トランジスタＴｒのばらつきを考慮した、ファースト（Fast）／スロー（Slow）ケースでのタイミングを算出しておく。
データの送信側を近端のファーストケース、データの受信側をデータのスローケースとしてこの関係でのデータ送信におけるホールドマージンを保証するように設計することで任意のフリップフロップＦ／Ｆ間でのホールドマージンを保証できる。
【００６２】
具体的には、ＲＣばらつき、Ｔｒばらつきを考慮し、送信側のCLK  *は、Fastケース、受信側のCLK  *は、Slowケースで算出すると、図１５に示すように、CLK  bn→ CLK af間でのデータ転送が、ホールドマージン上のクリティカルケースとなる。
この１ケースのみ確認、保証すれば、図１４における異なるフリップフロップアレイ間の任意のフリップフロップＦ／Ｆ間でのホールドマージンを保証したことになる。
【００６３】
２）同一のフリップフロップ（Ｆ／Ｆ）アレイ上でホールドマージン検証：
次に、同一のフリップフロップ（Ｆ／Ｆ）アレイ間でのホールドマージン検証について、図１６および図１７に関連付けて説明する。
図１６は、同一のフリップフロップアレイ間でのホールドマージン検証を説明するためのアレイ配置を示す図である。
図１７は、同一のフリップフロップアレイ間でのホールドマージン検証を説明するためのタイミング図である。
図中のＲＣは配線抵抗Ｒと容量Ｃによる遅延成分を示す。
【００６４】
この場合、隣接するフリップフロップＦ／Ｆでのクロック遅延の最も遅いケースでデータ送信のホールドマージンを保証すれば、任意のフリップフロップＦ／Ｆでのホールドマージンを保証できる。
【００６５】
具体的には、ＲＣばらつき、Ｔｒばらつきを考慮し、送信側のCLK  *は、Fastケース、受信側のCLK  *は、Slowケースで算出すると、図１７に示すように、CLK  an→ CLK af間でのデータ転送が、ホールドマージン上のクリティカルケースとなる。
この１ケースのみ確認、保証すれば、図１６における同一のフリップフロップアレイ間の任意のフリップフロップＦ／Ｆ間でのホールドマージンを保証したことになる。
【００６６】
以上説明したように、複数（図１１では４）の論理ブロック２１−１〜２１−４と、論理ブロックのデータの入出力をシステムクロックに同期して行う複数のフリップフロップＦ／Ｆをアレイ化した複数のフリップフロップアレイ２２−１〜２２−４と、幹線１３−１と複数（本実施形態では４）の枝線１３−２１〜１３−２４を有し、幹線１３−１に伝搬されたシステムクロックＣＬＫを複数の枝線１３−２１〜１３−２４に分配するクロック配線１３と、を有し、クロック配線１３の枝線１３−２１〜１３−２４の配置位置（枝線の直下）に対応してフリップフロップアレイ２２−１〜２２−４がそれぞれ配置され、フリップフロップアレイ２２−１〜２２−４の配置領域以外に対応する論理ブロック２１−１〜２１−４が配置されていることから、以下の効果を得ることができる。
【００６７】
たとえば手設計によってクロックツリーを構成し、ツリー直下にフリップフロップアレイを配置することによって、構成した回路内のホールドマージンを容易に保証できるようになる。
その結果、自動配置配線を用いた論理設計で行うタイミング解析を行う必要がないため、冗長なマージン設計を行う必要がなくなり、高速化が可能になる上、面積削減にもつながるという利点がある。
【００６８】
また、本実施形態の論理回路２０は、図１および図２に示すように、複数のＤＲＡＭセルがアレイ状に配列されたメモリ部１１と、メモリ部１１のセルアクセスをコントロールするコントロール部１２とにより構成されるＳＤＲＡＭのコントロール部１２に適用可能である。
コントロール部１２は、論理回路であって、複数の機能ブロックと、機能ブロックのデータの入出力をシステムクロックに同期して行う複数のフリップフロップを有する。
【００６９】
図１８は、図１のコントロール部の実際のアレイ配置例を示す図である。
なお、図１８においては、理解を容易にするために、図１１と同一構成および機能部分には同一符号を付している。
１つのフリップフロップアレイ２２枠内には、たとえば３０〜５０個のフリップフロップＦ／Ｆが配置されている。
【００７０】
このＳＤＤＲＡＭはツリークロックを用いるため、タイミング調整が容易になり、設計効率を高めることができる。
【図面の簡単な説明】
【００７１】
【図１】本発明に係る同期型半導体記憶装置の一実施形態を示すブロック構成図である。
【図２】本発明に係るＳＤＲＡＭをシステムオンチップ（ＳｏＣ）として適用した例を示す図である。
【図３】本実施形態に係る第１および第２クロック乗り換えモジュールの構成例を示すブロック図である。
【図４】（Ａ）〜（Ｅ）は、図３の第１クロック乗り換えモジュールのタイミングチャートである。
【図５】（Ａ）〜（Ｅ）は、図３の第２クロック乗り換えモジュールのタイミングチャートである。
【図６】ｅＤＲＡＭに本発明を適用した場合のシステム構成を示す図である。
【図７】ｅＤＲＡＭに本発明を適用した場合のシステム構成を示す図である。
【図８】本実施形態に係る第１クロック乗り換えモジュールの具体的な構成例を示す回路図である。
【図９】本実施形態に係る第２クロック乗り換えモジュールの具体的な構成例を示す回路図である。
【図１０】本実施形態に係るＤＲＡＭマクロをクロック配線に着目して示す図である。
【図１１】本発明に係る論理回路のレイアウトの一実施形態を示す図である。
【図１２】異なるフリップフロップアレイ間でのホールドマージン検証を説明するための図である。
【図１３】同一のフリップフロップアレイ間でのホールドマージン検証を説明するための図である。
【図１４】異なるフリップフロップアレイ間でのホールドマージン検証を説明するためのアレイ配置を示す図である。
【図１５】異なるフリップフロップアレイ間でのホールドマージン検証を説明するためのタイミング図である。
【図１６】同一のフリップフロップアレイ間でのホールドマージン検証を説明するためのアレイ配置を示す図である。
【図１７】同一のフリップフロップアレイ間でのホールドマージン検証を説明するためのタイミング図である。
【図１８】図１のコントロール部の実際のアレイ配置例を示す図である。
【符号の説明】
【００７２】
１０…ＳＤＲＡＭ、１１…ＤＲＡＭコア（メモリ部）、１２…ＤＲＡＭインタフェース（コントロール部）、１３…クロック配線、１３−１…幹線、１３−２１〜１３−２４…枝線、１４…クロック配線、１４−１…幹線、１４−２〜１４−１１…枝線、１５…第１クロック乗り換えモジュール、１５１…第１フリップフロップ、１５２…第２フリップフロップ、１６…第２クロック乗り換えモジュール、１６１…第３フリップフロップ、１６２…第４フリップフロップ、２０…論理回路、２１−１…２１−２…論理ブロック、２２−１〜２２−４…フリップフロップアレイ、ＣＬＫ０…入力クロック（システムクロック）、ＣＬＫ１…ツリークロック。
【図１】
2006092643.tif 000003
【図２】
2006092643.tif 000004
【図３】
2006092643.tif 000005
【図４】
2006092643.tif 000006
【図５】
2006092643.tif 000007
【図６】
2006092643.tif 000008
【図７】
2006092643.tif 000009
【図８】
2006092643.tif 000010
【図９】
2006092643.tif 000011
【図１０】
2006092643.tif 000012
【図１１】
2006092643.tif 000013
【図１２】
2006092643.tif 000014
【図１３】
2006092643.tif 000015
【図１４】
2006092643.tif 000016
【図１５】
2006092643.tif 000017
【図１６】
2006092643.tif 000018
【図１７】
2006092643.tif 000019
【図１８】
2006092643.tif 000020