JP3860546B2 - Clock control circuit - Google Patents

Clock control circuit Download PDF

Info

Publication number
JP3860546B2
JP3860546B2 JP2003032449A JP2003032449A JP3860546B2 JP 3860546 B2 JP3860546 B2 JP 3860546B2 JP 2003032449 A JP2003032449 A JP 2003032449A JP 2003032449 A JP2003032449 A JP 2003032449A JP 3860546 B2 JP3860546 B2 JP 3860546B2
Authority
JP
Japan
Prior art keywords
delay
pulse
circuit
internal clock
clock
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.)
Expired - Fee Related
Application number
JP2003032449A
Other languages
Japanese (ja)
Other versions
JP2003263362A (en
Inventor
春希 戸田
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003032449A priority Critical patent/JP3860546B2/en
Publication of JP2003263362A publication Critical patent/JP2003263362A/en
Application granted granted Critical
Publication of JP3860546B2 publication Critical patent/JP3860546B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、遅延アレイを用いて、CPUが発生する外部クロックのタイミングとメモリ(IC)の内部で使用される内部クロックのタイミングを制御する制御回路に関する。
【0002】
【従来の技術】
最近のメモリは、クロックに同期させてデ−タを転送することによって高速なデ−タ転送を達成するものが増えている。例えば、シンクロナスDRAMなどのクロック同期型のDRAMでは、それぞれ100MHzと250MHzのクロックに同期させ、CPUなどのブロックとの間でデ−タのやりとりを行っている。
【0003】
このようなクロックに同期させてブロック間でデ−タのやりとりを行うシステムでは、CPUなどのブロックからメモリに与えられる外部クロックと、当該メモリ内部で生成される内部クロックとの間に僅かなタイミングのズレ、即ちスキュ−が発生することが問題となる。
【0004】
例えば、100MHzの外部クロックを用いた場合、1サイクルは10nsec(ナノ秒)であるため、外部クロックと内部クロックの間に1nsecのズレが発生すると、このズレは、1サイクルタイムの10%に相当し、高速同期制御の妨げとなる。
【0005】
特に、メモリから他のブロックへデ−タを転送する場合には、外部クロックと内部クロックのスキュ−は、直接、メモリのデ−タ出力時間に影響し、デ−タ転送時間を遅くする。
【0006】
図48は、高速クロックを用いて同期制御するシステムの一例を示すものである。また、図49は、図48のシステムにおける外部クロックと内部クロックの関係を示すものである。
【0007】
メモリ(シンクロナスDRAMなどのクロック同期型DRAM)11には、例えばCPU12により生成される外部クロックCKが入力されている。外部クロックCKは、バッファ13により内部クロックCLKに変換され、内部クロックCLKは、入力回路14、出力回路15や、書き込み・読み出し回路16などに供給され、デ−タの入出力動作を制御する。
【0008】
内部クロックCLKは、外部クロックCKをトリガとしてバッファ13により生成されるため、必然的に外部クロックCKと内部クロックCLKの間にはスキュ−が存在する。
【0009】
メモリ11内部の動作を制御するのは、内部クロックCLKであるため、メモリ11と他のブロック(CPU12など)との間でデ−タのやりとりを行う場合には、外部クロックCKと内部クロックCLKの間のスキュ−を見込んだタイミングの設定が必要となる。
【0010】
しかし、スキュ−を見込んだタイミング設定は、デ−タの転送速度を遅らせることは上述のとおりである。
【0011】
そこで、最近では、このスキュ−をなくすための技術の開発が進められている。以下、現時点における当該技術の二つの例を説明する。
【0012】
一つめは、PLL(フェ−ズ・ロック・ル−プ)を用いる技術である。この技術は、PLLにより、スキュ−の幅を検出し、このスキュ−をゼロとするものである。また、この技術は、内部クロックにフィ−ドバックをかけるため、メモリに与えられる外部クロックが常に一定の周波数で、かつ、途切れることがない場合に有効である。
【0013】
二つめは、所定の原理に基づいて、外部クロックと一致する補正内部クロックを生成する回路を構成する技術である。この技術は、外部クロックの周波数が変化しても、また、外部クロックが途切れても、これらに即座に対応して外部クロックと内部クロックを一致させることができるもので、非常に有望視されている。
【0014】
そこで、後者の技術について以下に詳細に説明する。
【0015】
まず、図50を参照しながら、この技術の原理について説明する。
【0016】
外部クロックCKと内部クロックCLKのスキュ−の幅(遅延量)をD1とし、外部クロックCK及び内部クロックCLKの周期をTとする。
【0017】
ここで、内部クロックCLKの1つめのパルスが発生した時点(立ち上がった時点)から時間Aが経過した時点で遅延模倣パルスFCLを発生させる。この場合、遅延模倣パルスFCLが発生した時点から、内部クロックCLKの2つめのパルスが発生する時点までの時間は、Δとなる。
【0018】
また、この時間Δをコピ−し、遅延模倣パルスFCLを発生させた時点から時間(2×Δ)が経過した時点で遅延模倣パルスRCLが発生するようにする。すると、遅延模倣パルスRCLが発生した時点から時間Aが経過した時点は、内部クロックCLKの3つめのパルスが発生する時点と一致することになる。
【0019】
但し、(A+W)<Tとする。Wは、遅延模倣パルスFCL,RCLの幅である。
【0020】
ここで、遅延模倣パルスRCLが発生した時点から外部クロックCKの3つめのパルスが発生する時点までの時間をD2とすると、遅延模倣パルスRCLを時間D2だけ遅延させてやれば、外部クロックCKのタイミングに一致した補正内部クロックCK´が得られる。
【0021】
つまり、遅延量A,(2×Δ),D2を生成する遅延回路を形成し、内部クロックCLKを時間 A+(2×Δ)+D2 だけ遅らせれば、外部クロックCKのタイミングに一致した補正内部クロックCK´が得られることになる。
【0022】
なお、図50から明らかなように、A=D1+D2という関係が存在するため、遅延量D2は、A及びD1から求めることができる。
【0023】
また、外部クロックCK及び内部クロックCLKの周期Tは、一定でないことを前提としているため、時間Δも、一定の値を有しない。従って、時間(2×Δ)を生成する遅延回路は、外部クロックCK及び内部クロックCLKの周期Tに応じて時間(2×Δ)を正確に生成することができるように構成されていなければならない。
【0024】
このような原理によれば、外部クロックCK及び内部クロックCLKの周期Tによらず、常に、補正内部クロックの1つめのパルスを、外部クロックCKの3つめのパルスに一致させることができる。また、外部クロックCKの3つめのパルス以降は、外部クロックCKのタイミングと補正内部クロックCLKのタイミングは一致していることになるため、外部クロックCKが途切れるような場合においても、これに即座に対応して外部クロックと内部クロックを一致させることが可能になる。
【0025】
次に、上記原理に基づいて外部クロックと内部クロックのタイミングを一致させるための回路構成について検討する。
【0026】
図51は、当該回路構成の一例を示すものである。
【0027】
外部クロックCKは、入力端子21を経由して入力バッファ22に入力される。内部クロックCLKは、入力バッファ22から出力される。ここで、入力バッファ22は、遅延量D1を有しているため、外部クロックCKと内部クロックCLKの間には、遅延量D1分のスキュ−が発生する。
【0028】
内部クロックCLKは、遅延量Aを有する遅延回路23を経由して前進遅延アレイ24に入力される。前進遅延アレイ24は、遅延量dを有する複数の遅延回路25−1,25−2,〜25−nから構成されている。
【0029】
ミラ−制御回路26は、遅延回路25−1,25−2,〜25−nの数に相当する数の制御素子27−1,27−2,〜27−nを有しいている。ミラ−制御回路26は、前進遅延アレイ24における遅延量Δfを決定すると共に、後進遅延アレイ28における遅延量Δbを遅延量Δfに等しくする機能を有する。
【0030】
後進遅延アレイ28は、前進遅延アレイ24と同様に、遅延量dを有する複数の遅延回路29−1,29−2,〜29−nから構成されている。
【0031】
後進遅延アレイ28から出力されるクロックは、遅延量D2を有する遅延回路30を経由することにより、外部クロックCKのタイミングと一致したタイミングを有する補正内部クロックCK´となる。
【0032】
上記構成の回路では、前進遅延アレイ24の構成と後進遅延アレイ28の構成を同じにし、前進パルスの遅延量Δfをそのままコピ−して後進パルスの遅延量Δbとし、2Δ(Δf=Δb=Δ)を得るようにしている。
【0033】
しかし、上記構成の回路では、前進パルスが一定のパルス幅を有していることに起因して、前進パルスの遅延量Δfと後進パルスの遅延量Δbを完全に一致させることが難しい欠点がある。
【0034】
この欠点について説明する。
【0035】
図52は、図50のtの時点(即ち、遅延量Δf,Δbを決定する時点)における図51の回路状態を示したものである。
【0036】
ここで、前進パルスが前進遅延アレイの遅延回路に入力されている状態を活性状態(斜線で示す)とし、当該前進パルスが前進遅延アレイの遅延回路に入力されていない状態を非活性状態とする。この場合において、例えば、前進パルスが遅延回路25−kに入力されると、遅延回路25−kが活性状態になり、他の遅延回路は、非活性状態となる。
【0037】
前進パルスが遅延回路25−kに入力された後に、内部クロックCLKのパルスが発生すると、後進遅延アレイの遅延回路29−kが活性状態となり、遅延回路29−kは、後進パルスを発生する。
【0038】
即ち、遅延アレイの先頭からk番目の制御素子27−kには、前進パルスと内部クロックCLKのパルスが入力されるため、制御素子27−kは、後進遅延アレイの遅延回路29−kを活性状態にして、遅延回路29−kから後進パルスを発生させる。
【0039】
しかし、この場合、前進パルスが入力されている遅延回路29−kの先頭からの位置と、後進パルスを発生する遅延回路29−kの先頭からの位置は、同じである。
【0040】
従って、遅延量Δfを決定する前進パルスのフロントF1と、遅延量Δbを決定する後進パルスのフロントF2は、必然的に、遅延回路1段分の遅延量(例えば、前進パルスのパルス幅W分)だけ相違することになる。つまり、図51の構成を有する回路では、遅延量Δbは、最大で、遅延回路1段分の遅延量だけ遅延量Δfよりも短くなる欠点がある。
【0041】
【発明が解決しようとする課題】
このように、従来は、所定の原理に基づいて、外部クロックに一致する補正内部クロックを生成する回路を構成する技術において、所定の遅延量を正確にコピ−する回路を構成することができなかったため、補正内部クロックを外部クロックに完全に一致させることが難しかった。
【0042】
本発明は、上記欠点を解決するためになされたもので、その目的は、所定の原理に基づいて、外部クロックに一致する補正内部クロックを生成する回路を構成する技術において、所定の遅延量を正確にコピ−することができる回路を構成し、補正内部クロックを外部クロックに完全に一致させることである。
【0043】
また、本発明の目的は、所定の原理に基づいて、外部クロックに対して一定の位相関係を有する、即ち、外部クロックに対して位相が所定量だけ遅れた補正内部クロックを生成する回路を提供することである。
【0044】
【課題を解決するための手段】
本発明のメモリシステムは、外部クロックから生成した内部クロックに基づいてデータを出力するメモリと、前記メモリに等しい前記外部クロックの入力容量を持つダミーメモリと、前記外部クロックを発生すると共に、前記ダミーメモリからのリターンクロックに基づいて前記メモリから出力されるデータを受け取るタイミングを決定するコントローラとを備え、前記コントローラから前記ダミーメモリまでの前記外部クロックの配線長は、前記コントローラから前記メモリまでの前記外部クロックの配線長に等しく、かつ、前記ダミーメモリから前記コントローラまでの前記リターンクロックの配線長は、前記メモリから前記コントローラまでのデータバス長に等しい。
【0045】
【発明の実施の形態】
以下、図面を参照しながら、本発明のクロック制御回路について詳細に説明する。
【0046】
図1は、本発明のクロック制御回路を有するメモリブロックを備える同期制御システムの一例を示すものである。
【0047】
メモリ(シンクロナスDRAMなどのクロック同期型DRAM)11には、例えばCPU12により生成される外部クロックCKが入力されている。外部クロックCKは、バッファ13により内部クロックCLKに変換される。内部クロックCLKは、書き込み・読み出し回路16に供給され、デ−タの書き込み・読み出し動作を制御する。
【0048】
内部クロックCLKは、外部クロックCKをトリガとしてバッファ13により生成されるため、必然的に外部クロックCKと内部クロックCLKの間にはスキュ−が存在する。
【0049】
クロック制御回路31は、内部クロックCLKに基づいて、外部クロックのタイミングに一致した補正内部クロックCK´を生成する。補正内部クロックCK´は、入力回路14及び出力回路15に供給され、デ−タの入出力動作を制御する。
【0050】
図2は、図1のメモリ11内のクロック制御回路31の構成を示すものである。
【0051】
外部クロックCKは、メモリの入力端子30に与えられる。外部クロックCKは、遅延量D1を有する入力バッファ13に入力される。入力バッファ13は、外部クロックCKに対してD1のスキュ−を有する内部クロックCLKを出力する。内部クロックCLKは、遅延量Aを有する遅延回路32に入力され、遅延回路32は、前進パルスFCL1(遅延模倣パルスCL)を出力する。
【0052】
内部クロックCLK、及び内部クロックCLKをインバ−タ35により反転した反転内部クロック/CLKは、それぞれn個の遅延ユニット33−1,33−2,…33−nに入力される。
【0053】
n個の遅延ユニット33−1,33−2,…33−nは、互いに直列に接続されている。初段の遅延ユニット33−1には、前進パルスFCL1が入力され、また、初段の遅延ユニット33−1からは、後進パルスRCL1が出力される。
【0054】
後進パルスRCL1は、遅延量D2を有する遅延回路34を経由することにより、補正内部クロックCK´となる。
【0055】
図3は、図2の遅延ユニットの構成を詳細に示すものである。
【0056】
遅延ユニット33−iは、前進パルス遅延回路、状態保持回路及び後進パルス遅延回路の3つの部分から構成される。
【0057】
前進パルス遅延回路は、3つのインバ−タ41〜43から構成されている。インバ−タ41,42は、直列接続され、インバ−タ41には、前段の遅延ユニットの出力信号FCLiが入力され、インバ−タ42は、後段の遅延ユニットに出力信号FCLi+1を出力する。インバ−タ(クロックドインバ−タ)41の動作は、制御パルス/Pにより制御され、例えば、制御パルス/Pが“1”のとき、インバ−タ41は、活性状態となる。
【0058】
また、インバ−タ43の出力端は、インバ−タ42の入力端に接続され、インバ−タ43の入力端には、常に“0”の電位(例えば、接地電位)が印加されている。インバ−タ(クロックドインバ−タ)43の動作は、制御パルスPにより制御され、例えば、制御パルスPが“1”のとき、インバ−タ43は、活性状態となる。
【0059】
後進パルス遅延回路は、3つのインバ−タ44〜46から構成されている。インバ−タ44,45は、直列接続され、インバ−タ44には、後段の遅延ユニットの出力信号RCLi+1又は内部クロックCLKが入力され、インバ−タ45は、前段の遅延ユニットに出力信号RCLiを出力する。インバ−タ(クロックドインバ−タ)44の動作は、制御パルスQにより制御され、例えば、制御パルスQが“1”のときのみ、インバ−タ44は、活性状態となる。
【0060】
また、インバ−タ46の出力端は、インバ−タ45の入力端に接続され、インバ−タ46の入力端には、常に、内部クロックCLKが入力されている。インバ−タ(クロックドインバ−タ)46の動作は、制御パルス/Qにより制御され、例えば、制御パルス/Qが“1”のとき、インバ−タ46は、活性状態となる。
【0061】
状態保持回路は、状態保持部47及びNAND回路48,49から構成されている。NAND回路48には、前段の遅延ユニットの出力信号FCLi及び反転内部クロック/CLKが入力され、NAND回路49には、インバ−タ45の出力信号及び内部クロックCLKが入力される。
【0062】
NAND回路48の出力信号は、状態保持部47のセット入力/Sとなり、NAND回路49の出力信号は、状態保持部47のリセット入力/Rとなっている。従って、NAND回路48の出力信号(セット入力)/Sが“0”となったとき、状態保持部47はセット状態となり、NAND回路49の出力信号(リセット入力)/Rが“0”となったとき、状態保持部47はリセット状態となる。
【0063】
状態保持部47は、制御パルスQ,/Qを出力するようにも構成されている。制御パルスQは、状態保持部47がセット状態のときに“1”となり、制御パルス/Qは、状態保持部47がリセット状態のときに“1”となる。
【0064】
図4は、図3の状態保持部の構成の一例を示すものである。
【0065】
Pチャネル型MOSトランジスタ51及びNチャネル型MOSトランジスタ53,54は、互いに直列に接続され、その両端には、高電位VDD及び低電位VSSがそれぞれ印加されている。
【0066】
同様に、Pチャネル型MOSトランジスタ52及びNチャネル型MOSトランジスタ55,56は、互いに直列に接続され、その両端には、高電位VDD及び低電位VSSがそれぞれ印加されている。
【0067】
セット入力/Sは、MOSトランジスタ51,54のゲ−トに入力され、リセット入力/Rは、MOSトランジスタ52,56のゲ−トに入力されている。
【0068】
MOSトランジスタ53のゲ−トは、MOSトランジスタ52のドレインに接続され、MOSトランジスタ55のゲ−トは、MOSトランジスタ51のドレインに接続されている。
【0069】
制御パルスQは、MOSトランジスタ51のドレインから出力され、制御パルス/Qは、MOSトランジスタ52のドレインから出力される。
【0070】
図5は、制御パルスP,/Pの発生回路の構成の一例を示すものである。
【0071】
内部クロックCLKは、遅延量A´を有する遅延回路57を経由してNOR回路58の一方の入力端に入力され、反転内部クロック/CLKは、NOR回路58の他方の入力端に入力される。NOR回路58は、制御パルスPを出力する。また、制御パルスPは、インバ−タ59を経由することにより制御パルス/Pとなる。
【0072】
制御パルスP,/Pのパルス幅は、遅延回路57の遅延量A´により決定される。但し、この遅延量A´は、遅延模倣パルスを出力する遅延回路32の遅延量Aよりも小さく設定される。これは、前進パルスが初段の遅延ユニットに入力される前に、全ての遅延ユニットの前進遅延回路を初期化しておく必要があるからである。
【0073】
次に、図6を参照しながら、本発明の原理について確認しておく。
【0074】
外部クロックCKと内部クロックCLKのスキュ−の幅(遅延量)をD1とし、外部クロックCK及び内部クロックCLKの周期をTとする。
【0075】
内部クロックCLKの1つめのパルスが発生した時点(立ち上がった時点)から時間Aが経過した時点で遅延模倣パルスFCL1を発生させる。この場合、遅延模倣パルスFCL1が発生した時点から、内部クロックCLKの2つめのパルスが発生する時点までの時間は、Δfとなる。
【0076】
また、この時間Δfをコピ−してΔbを作り、遅延模倣パルスFCL1を発生させた時点から時間2×Δ(但し、Δf=Δb=Δ)が経過した時点で遅延模倣パルスRCL1が発生するようにする。すると、遅延模倣パルスRCL1が発生した時点から時間Aが経過した時点は、内部クロックCLKの3つめのパルスが発生する時点と一致することになる。但し、(A+W)<Tとする。Wは、遅延模倣パルスFCL,RCLの幅である。
【0077】
遅延模倣パルスRCL1が発生した時点から外部クロックCKの3つめのパルスが発生する時点までの時間をD2とすると、遅延模倣パルスRCL1を時間D2だけ遅延させてやれば、外部クロックCKのタイミングに一致した補正内部クロックCK´が得られる。
【0078】
つまり、遅延量A,(2×Δ),D2を生成する遅延回路を形成し、内部クロックCLKを時間 A+(2×Δ)+D2 だけ遅らせれば、外部クロックCKのタイミングに一致した補正内部クロックCK´が得られることになる。
【0079】
なお、A=D1+D2という関係が存在するため、遅延量D2は、A及びD1から求めることができる。また、制御パルスPは、前進パルスが初段の遅延ユニットに入力される前に、全ての遅延ユニットの前進遅延回路を初期化しておくためのものである。
【0080】
次に、図2乃至図5のクロック制御回路の動作について説明する。
【0081】
1. 図7のタイミングチャ−トのa時点の状態
図8に示すように、内部クロックCLKが“1”となる(立ち上がる)。従って、制御パルス発生回路60の出力信号は、P=“1”、/P=“0”となり、遅延量A´により決定されるパルス幅を有する制御パルスP、/Pが生成され、各遅延ユニット33−1,33−2,〜33−nに入力される。
【0082】
各遅延ユニット33−1,33−2,〜33−nにおいては、P=“1”、/P=“0”となるため、インバ−タ43が活性状態となり、インバ−タ41が非活性状態となる。従って、全ての遅延ユニット33−1,33−2,〜33−nの前進パルス遅延回路の入出力信号FCL1〜FCLnは、全て“0”となり、前進パルスの伝達するラインが初期化される。
【0083】
この後、各遅延ユニット33−1,33−2,〜33−nでは、P=“0”、/P=“1”になると、インバ−タ41が活性状態となり、インバ−タ43が非活性状態となる。即ち、各遅延ユニット33−1,33−2,〜33−nの前進パルス遅延回路が互いに電気的に接続されると共に、遅延ユニット33−1の前進パルス遅延回路の入力端が遅延回路32に電気的に接続され、前進パルスの伝達の準備が完了する。
【0084】
なお、制御パルスP、/Pのパルス幅(Pが“1”、/Pが“0”の期間)は、遅延回路32の遅延量Aにより決定される期間よりも短いことが必須の条件である。前進パルス(遅延模倣パルス)FCL1が遅延ユニット33−1に入力される前に、全ての遅延ユニット33−1,33−2,〜33−nの前進パルスの伝達ラインを初期化しておく必要があるからである。
【0085】
2. 図7のタイミングチャ−トのb時点の状態
図9に示すように、内部クロックCLKが“0”となり、反転内部クロック/CLKが“1”となる。内部クロックCLK及び反転内部クロック/CLKは、全ての遅延ユニット33−1,33−2,〜33−nに共通となっているため、全ての遅延ユニット33−1,33−2,〜33−nのNAND回路48の一方の入力が“1”となる。
【0086】
一方、各遅延ユニット33−1,33−2,〜33−nの状態保持部47は、リセット状態Rになっており、状態保持部47から出力される制御パルスは、Q=“0”,/Q=“1”になっている。
【0087】
従って、各遅延ユニット33−1,33−2,〜33−nのインバ−タ46が活性状態となり、インバ−タ44が非活性状態となり、全ての遅延ユニット33−1,33−2,〜33−nの後進パルス遅延回路の入出力信号RCL1〜RCLnは、全て“0”となる。
【0088】
3. 図7のタイミングチャ−トのc時点の状態
図10に示すように、遅延回路(遅延量A)32から前進パルス(遅延模倣パルス)FCL1が出力され、遅延ユニット33−1に入力される。なお、前進パルスのパルス幅(“1”の期間)と遅延量Aにより決定される期間を足したものは、内部クロックCLKの周期Tよりも短くなるように設定することが必要である。
【0089】
前進パルスFCL1(=“1”)が遅延ユニット33−1に入力されると、遅延ユニット33−1のNAND回路48の他方の入力が“1”となり、NAND回路48の出力(セット入力/S)は、“0”となる。従って、状態保持部47の状態は、セット状態Sに変化する。
【0090】
状態保持部47がセット状態Sになった遅延ユニット33−1では、状態保持部47から出力される制御パルスは、Q=“1”,/Q=“0”になるため、インバ−タ44が活性状態になり、インバ−タ46が非活性状態になる。
【0091】
4. 図7のタイミングチャ−トのd,e時点の状態
図11に示すように、前進パルスは、遅延ユニット33−1,33−2,〜33−nを順次経由しながら進んでいく。
【0092】
前進パルスが通り過ぎた遅延ユニット33−1では、NAND回路48の他方の入力は再び“0”となり、NAND回路48の出力(セット入力/S)は“1”となるが、状態保持部47の状態は、セット状態Sに維持される。
【0093】
同様に、前進パルスが遅延ユニット33−2に入力されると、遅延ユニット33−2の状態保持部47は、セット状態Sに変わる。前進パルスが遅延ユニット33−2を通り過ぎても、遅延ユニット33−2の状態保持部47は、セット状態Sを維持する。
【0094】
内部クロックCLKが再び“1”になり、反転内部クロック/CLKが“0”になると、各遅延ユニット33−1,33−2,〜33−nには、この内部クロックCLKと反転内部クロック/CLKが入力される。
【0095】
従って、全ての遅延ユニット33−1,33−2,〜33−nのNAND回路48の一方の入力は“0”になると共に、NAND回路49の一方の入力は“1”になる。
【0096】
また、状態保持部47がセット状態Sの遅延ユニット33−1,33−2では、Q=“1”であり、インバ−タ44が活性状態であるため、後進パルス遅延回路の出力信号RCL1,RCL2は、“0”の状態を維持するが、状態保持部47がリセット状態Rの遅延ユニット33−3〜33−nでは、/Q=“1”であり、インバ−タ46が活性状態であるため、後進パルス遅延回路の出力信号RCL3〜RCLnは、“1”となる。
【0097】
これにより、後進パルスのフロントエッジF2が形成される。
【0098】
ここで、後進パルスのフロントエッジF2は、内部クロックCLKが“1”となったときに、状態保持部がリセット状態Rの遅延ユニット33−3〜33−nのうち最も初段の遅延ユニット33−1側に位置する遅延ユニット33−3で形成される。
【0099】
この時、前進パルスのフロントエッジF1は、遅延ユニット33−3の直前に位置していると考えられるため、前進パルスのフロントエッジF1と後進パルスのフロントエッジF2は一致する。
【0100】
従って、前進パルス(遅延模倣パルス)FCL1が発生した時点から内部クロックCLKのパルスが発生するまでの時間Δfと、当該内部クロックCLKのパルスが発生してから(後進パルスが発生してから)後進パルスRCL1が出力され、遅延回路34に入力されるまでの時間Δbは、等しくなる。
【0101】
この後、図12に示すように、制御パルス発生回路60の出力信号は、P= “1”、/P=“0”となり、遅延量A´により決定されるパルス幅を有する制御パルスP、/Pが生成され、各遅延ユニット33−1,33−2,〜33−nに入力される。
【0102】
各遅延ユニット33−1,33−2,〜33−nにおいては、P=“1”、/P=“0”となるため、インバ−タ43が活性状態となり、インバ−タ41が非活性状態となる。従って、全ての遅延ユニット33−1,33−2,〜33−nの前進パルス遅延回路の入出力信号FCL1〜FCLnは、全て“0”となり、前進パルスが消滅し、前進パルスの伝達するラインが初期化される。
【0103】
一方、後進パルス(=“1”)のフロントが遅延ユニット33−1に入力されると、遅延ユニット33−2では、NAND回路49の2つの入力が共に“1”になるため、NAND回路49の出力(リセット入力/R)が“0”となり、状態保持部47は、リセット状態Rに変化する(初期化される)。
【0104】
各遅延ユニットの状態保持部47の初期化(リセット状態Rにすること)は、内部クロックCLKが“1”の期間のみで行われる。即ち、内部クロックCLKが“1”のとき、後進パルス(=“1”)が入力されると、NAND回路49の2つの入力が共に“1”となるからである。
【0105】
なお、各遅延ユニットの状態保持部47の初期化は内部クロックCLKが“1”の期間のみで行われるため、全ての遅延ユニットの状態保持部47を初期化、即ちリセット状態Rにすることができない場合もあるが、特に問題はない。これは、初期化されない遅延ユニット33−1には、次の前進パルスが通り過ぎることが明らかだからである。
【0106】
5. 図7のタイミングチャ−トのf時点の状態
図13に示すように、内部クロックCLKが“0”となり、反転内部クロック/CLKが“1”となる。この内部クロックCLKと反転内部クロック/CLKは、全ての遅延ユニット33−1,33−2,〜33−nに入力される。
【0107】
また、各遅延ユニット33−1,33−2,〜33−nでは、P=“0”、/P=“1”になるため、インバ−タ41が活性状態となり、インバ−タ43が非活性状態となる。即ち、各遅延ユニット33−1,33−2,〜33−nの前進パルス遅延回路が互いに電気的に接続されると共に、遅延ユニット33−1の前進パルス遅延回路の入力端が遅延回路32に電気的に接続され、前進パルスの伝達の準備が完了する。
【0108】
一方、状態保持部47がリセット状態Rの遅延ユニット33−2〜33−nでは、/Q=“1”であり、インバ−タ46が活性状態である。このため、内部クロックCLKが“0”になると、状態保持部47がリセット状態Rの遅延ユニット33−2〜33−nの出力信号RCL2〜RCLnが“0”となり、後進パルスのバックエッジが形成される。
【0109】
従って、後進パルスのパルス幅は、遅延ユニット1段分の遅延量(インバ−タ2段分の遅延量)に相当する期間と同じか、又はそれよりも短くなる。
【0110】
もし、後進パルスのパルス幅を遅延ユニット1段分の遅延量よりも長くしたい場合には、図17に示すように、遅延回路33−nのNAND回路49の他方の入力を、前段の遅延回路33−(n−1)の出力RCLn−1とすればよい。この場合、後進パルスの最大のパルス幅は、遅延ユニット2段分の遅延量(インバ−タ4段分の遅延量)に相当する期間となる。
【0111】
なお、状態保持部47がセット状態Sの遅延ユニット33−1では、Q=“1”であり、インバ−タ44が活性状態である。従って、後進パルスを遅延ユニット33−1経由で遅延回路34に導くための準備が完了する。
【0112】
6. 図7のタイミングチャ−トのg時点の状態
図14に示すように、遅延回路(遅延量A)32から前進パルス(遅延模倣パルス)FCL1が出力され、遅延ユニット33−1に入力される。前進パルスFCL1(=“1”)が遅延ユニット33−1に入力されると、遅延ユニット33−1のNAND回路48の他方の入力が“1”となり、NAND回路48の出力(セット入力/S)は、“0”となる。
【0113】
従って、遅延ユニット33−1の状態保持部47がセット状態のときは、状態保持部47は、セット状態Sを維持し、当該状態保持部47がリセット状態Rのときは、状態保持部47は、セット状態Sに変化する。
【0114】
状態保持部47がセット状態Sになった遅延ユニット33−1では、状態保持部47から出力される制御パルスは、Q=“1”,/Q=“0”になるため、インバ−タ44が活性状態になり、インバ−タ46が非活性状態になる。
【0115】
一方で、後進パルスは、初段の遅延ユニット33−1に入力され、インバ−タ2段分の遅延を受けて、初段の遅延ユニット33−1から出力される。
【0116】
7. 図7のタイミングチャ−トのh時点の状態
図15に示すように、前進パルスは、遅延ユニット33−1,33−2,〜33−nを順次経由しながら進んでいく。
【0117】
前進パルスが通り過ぎた遅延ユニット33−1では、NAND回路48の他方の入力は再び“0”となり、NAND回路48の出力(セット入力/S)は“1”となるが、状態保持部47の状態は、セット状態Sに維持される。
【0118】
同様に、前進パルスが遅延ユニット33−2に入力されると、遅延ユニット33−2の状態保持部47は、セット状態Sに変わる。前進パルスが遅延ユニット33−2を通り過ぎても、遅延ユニット33−2の状態保持部47は、セット状態Sを維持する。
【0119】
一方、後進パルスは、遅延回路34入力される。遅延回路34は、後進パルスを遅延量D2だけ遅らせ、補正内部クロックCK´のパルスを発生する。この補正内部クロックCK´のパルスのタイミングは、外部クロックCKのパルスのタイミングと一致している。
【0120】
8. 図7のタイミングチャ−トのi時点の状態
図16に示すように、内部クロックCLKが再び“1”になり、反転内部クロック/CLKが“0”になると、各遅延ユニット33−1,33−2,〜33−nには、この内部クロックCLKと反転内部クロック/CLKが入力される。
【0121】
従って、全ての遅延ユニット33−1,33−2,〜33−nのNAND回路48の一方の入力は“0”になると共に、NAND回路49の一方の入力は“1”になる。
【0122】
また、状態保持部47がセット状態Sの遅延ユニット33−1,33−2では、Q=“1”であり、インバ−タ44が活性状態であるため、後進パルス遅延回路の出力信号RCL1,RCL2は、“0”の状態を維持するが、状態保持部47がリセット状態Rの遅延ユニット33−3〜33−nでは、/Q=“1”であり、インバ−タ46が活性状態であるため、後進パルス遅延回路の出力信号RCL3〜RCLnは、“1”となる。
【0123】
これにより、後進パルスのフロントF1が形成される。
【0124】
この後は、図12〜図16の動作が繰り返して行われることになる。
【0125】
上記構成のクロック制御回路によれば、各遅延ユニットが状態保持部を持つことにより、遅延模倣パルス(前進パルス)FCL1が発生してから内部クロックCLKのパルスが発生するまでの時間Δfを正確にコピ−してΔbを形成し、当該内部クロックCLKのパルスが発生してから時間Δb(=Δf)後に後進パルスRCL1を遅延量D2を有する遅延回路34に入力させることができる。
【0126】
従って、外部クロックにCKに正確に同期した補正内部クロックCK´を発生することが可能となり、高速クロックを用いたデ−タ転送を達成できる。また、本発明は、シンクロナスDRAMのように、内部クロックが一時中断されることがあると共に、周波数が変化する高速クロックに同期させてデ−タの授受を行うようなメモリに有効である。
【0127】
図18は、図2のクロック制御回路の変形例を示すものである。
【0128】
このクロック制御回路は、図2の回路と比べると、遅延回路34に所定の機能を付加した点が異なり、その他の構成は、図2の回路と同じである。
【0129】
即ち、本実施の形態では、外部クロックCK又は内部クロックCLKの周期Tが所定値以上に長い場合には、内部クロックCLKのタイミングを外部クロックCKのタイミングに合わせるという処理を行わず、メモリの入出力回路の制御は、一定のスキュ−を有する内部クロックCLKにより行うようにしている。
【0130】
これは、外部クロックCKの周波数が比較的に低い(周期が長い)場合には、スキュ−自体があまり問題とならないためである。また、クロック制御回路を構成する遅延ユニットの数も、メモリチップ上の占有面積との関係からあまり大きくでいないためである。
【0131】
以下、本実施の形態の回路の構成を簡単に説明しておく。
【0132】
外部クロックCKは、メモリの入力端子30に与えられる。外部クロックCKは、遅延量D1を有する入力バッファ13に入力される。入力バッファ13は、外部クロックCKに対してD1のスキュ−を有する内部クロックCLKを出力する。内部クロックCLKは、遅延量Aを有する遅延回路32に入力され、遅延回路32は、前進パルスFCL1(遅延模倣パルスCL)を出力する。
【0133】
内部クロックCLK、及び内部クロックCLKをインバ−タ35により反転した反転内部クロック/CLKは、それぞれn個の遅延ユニット33−1,33−2,…33−nに入力される。
【0134】
n個の遅延ユニット33−1,33−2,…33−nは、互いに直列に接続されている。初段の遅延ユニット33−1には、前進パルスFCL1が入力され、また、初段の遅延ユニット33−1からは、後進パルスRCL1が出力される。
【0135】
外部クロックCKの周期Tが所定値未満(高速クロック)の場合には、後進パルスRCL1は、遅延量D2を有する遅延回路34を経由することにより、補正内部クロックCK´となる。この補正内部クロックCK´のタイミングは、外部クロックCKのタイミングと一致しているものである。
【0136】
外部クロックCKの周期Tが所定値以上の場合には、後進パルスRCL1は、遅延量D2を有する遅延回路34に入力されるが、遅延回路34から出力されることはない。その代わりに、内部クロックCLKが遅延回路34から出力される。この場合、当然に内部クロックCLKは、外部クロックCKに対して一定のスキュ−を有しているが、このスキュ−は、外部クロックCKの周期に対してあまり問題とならない程度の量となっている。
【0137】
制御パルス発生回路61は、最終段の遅延ユニット33−nの前進パルス遅延回路の出力LSTと、初段の遅延ユニット33−1の後進パルス遅延回路の出力RCL1に基づいて、制御パルスL,/Lを出力する。制御パルスL,/Lは、補正内部クロックCK´を出力するか、又は内部クロックCLKを出力するかを決定する。
【0138】
図19は、図18の遅延回路34の構成を詳細に示すものである。
【0139】
遅延ユニット33−1の出力RCL1は、遅延回路62及びインバ−タ63を経由してNAND回路64の一方の入力端に入力されると共に、直接、NAND回路64の他方の入力端に入力されている。NAND回路64の出力信号は、3つのインバ−タ65〜67を経由することにより、補正内部クロックCK´となる。
【0140】
インバ−タ66は、制御クロック/Lが“1”のときに活性状態となるようなクロックドインバ−タである。即ち、制御クロック/Lが“1”のとき、後進パルスを一定時間だけ遅らせて補正内部クロックCK´を生成し、制御クロック/Lが“0”のとき、後進パルスを遮断する。
【0141】
内部クロックCLKは、インバ−タ68を経由して遅延回路34のインバ−タ67に入力されている。インバ−タ68は、制御クロックLが“1”のときに活性状態となるようなクロックドインバ−タである。即ち、制御クロックLが“1”のとき、内部クロックCLKをインバ−タ67に導き、制御クロックLが“0”のとき、内部クロックCLKを遮断する。
【0142】
図20は、図18の制御パルス発生回路61の構成を示すものである。
【0143】
NOR回路69の一方の入力端には、最終段の遅延ユニット33−nの前進パルス遅延回路の出力LSTが入力され、他方の入力端には、NOR回路72の出力が入力されている。NOR回路72の一方の入力端には、NOR回路69の出力が入力され、他方の入力端には、NOR回路71の出力が入力されている。
【0144】
NOR回路71には、最終段の遅延ユニット33−nの前進パルス遅延回路の出力LSTと、初段の遅延ユニット33−1の後進パルス遅延回路の出力RCL1をインバ−タ70で反転したものがそれぞれ入力されている。
【0145】
さらに、NAND回路73には、NOR回路69の出力と、この出力を遅延回路74により遅延量D3だけ遅延させたものとがそれぞれ入力されている。NAND回路73の出力は、制御クロックLとなり、この制御クロックLをインバ−タ75で反転したものが制御クロック/Lとなる。
【0146】
NAND回路73及び遅延回路74は、NOR回路69の出力に対して、制御クロックLの立ち上げは遅らせず、制御クロックLの立ち下げのみ遅延量D3だけ遅らせて、遅延回路34内の後進パルスを確実に消滅させ、初期化するためのものである。
【0147】
次に、図21を参照しながら、図18〜図20のクロック制御回路の原理について簡単に説明しておく。
【0148】
図21は、外部クロックCKの1周期(サイクルタイム)が比較的長くなり、全遅延ユニットによる最大遅延量maxΔが、遅延模倣パルスが発生した時点から内部クロックCLKのパルスが発生する時点までの時間Δfよりも短くなった場合におけるタイミングチャ−トを示している。
【0149】
外部クロックCKと内部クロックCLKのスキュ−の幅(遅延量)をD1とし、外部クロックCKの周期をTとする。
【0150】
内部クロックCLKの1つめのパルスが発生した時点(立ち上がった時点)から時間Aが経過した時点で遅延模倣パルスFCL1を発生させる。この場合、遅延模倣パルスFCL1が発生した時点から、内部クロックCLKの2つめのパルスが発生する時点までの時間は、Δfとなる。
【0151】
しかし、全遅延ユニットで形成できる最大遅延量は、maxΔ(<Δf)である。つまり、本発明のクロック制御回路によりコピ−できる遅延量の最大値は、maxΔであるため、内部クロックCLKの2つめのパルスが発生する時点から時間maxΔが経過した時点で遅延模倣パルスRCL1が発生することになり、遅延量Δfを正確にコピ−できなくなる。
【0152】
従って、遅延模倣パルスRCL1が発生した時点から時間D2が経過した時点で補正内部クロックCK´を発生させても、この補正内部クロックCK´のタイミングは、外部クロックCKのタイミングとずれている。しかも、このずれは、もともと存在したスキュ−よりも大きくなることもあり、かえって、メモリの性能を劣化させる。
【0153】
本実施の形態は、このような現象を回避するために考えられたものである。なお、図2の実施の形態では、内部クロックCLKのパルスが発生してから遅延模倣パルスが発生するまでの時間をAとし、全遅延ユニットによる最大遅延量をmaxΔとした場合に、A+maxΔ≦Tを満すことが必要であるが、本実施の形態では、このような条件は必要とされなくなる。
【0154】
次に、図22のタイミングチャ−トを参照しながら、図18乃至図20のクロック制御回路の動作について説明する。
【0155】
なお、A+maxΔ≦Tを満たすときの動作は、図7に示すタイミングチャ−トと同じであるので、以下では、A+maxΔ>Tの場合の動作についてのみ説明する。
【0156】
内部クロックCLKが“1”となると、P=“1”、/P=“0”となり、全ての遅延ユニット33−1,33−2,〜33−nの前進パルス遅延回路の入出力信号FCL1〜FCLnが全て“0”となり、前進パルスの伝達するラインが初期化される。
【0157】
この後、P=“0”、/P=“1”になると、各遅延ユニット33−1,33−2,〜33−nの前進パルス遅延回路が互いに電気的に接続されると共に、遅延ユニット33−1の前進パルス遅延回路の入力端が遅延回路32に電気的に接続され、前進パルスの伝達の準備が完了する。
【0158】
内部クロックCLKが“0”となり、反転内部クロック/CLKが“1”となった後、遅延回路(遅延量A)32から前進パルス(遅延模倣パルス)FCL1が出力され、遅延ユニット33−1に入力される。
【0159】
前進パルスFCL1(=“1”)が遅延ユニット33−1に入力されると、遅延ユニット33−1の状態保持部47の状態は、セット状態Sとなる。また、前進パルスは、遅延ユニット33−1,33−2,〜33−nを順次経由しながら進んでいく。前進パルスが通り過ぎた遅延ユニットでは、状態保持部47の状態がセット状態Sに維持される。
【0160】
この後、前進パルスは、全ての遅延ユニット33−1,33−2,〜33−nを経由し、遅延ユニット33−nから出力パルスLST(=“1”)として出力される。
【0161】
この出力パルスLSTは、制御パルス発生回路61に入力される。その結果、制御パルス発生回路61は、L=“1”,/L=“0”のパス切替信号を発生する。つまり、出力パルスLSTが出力された時点でL=“1”,/L=“0”となり、遅延回路34が非活性化され、遅延回路34からは、内部クロックCLKのタイミングと一致した補正内部クロックCK´が出力される。
【0162】
また、内部クロックCLKが再び“1”になった後、時間maxΔが経過したときに、遅延ユニット33−1からは後進パルスRCL1が出力される。この後進パルスRCL1が制御パルス発生回路61に入力されると、制御パルス発生回路61は、後進パルスRCL1が遅延回路34から出力されるタイミングの後、即ち後進パルスRCL1が消滅した後に、L=“0”,/L=“1”のパス切替信号を発生する。
【0163】
つまり、遅延回路34が初期化(活性化)され、遅延回路34は、遅延ユニット33−1の出力信号RCL1を出力し得る状態に変化する。
【0164】
なお、遅延回路62、インバ−タ63及びNAND回路64は、遅延ユニット33−1から出力される後進パルスのパルス幅を決定する。即ち、内部クロックCLKをメモリの入出力制御に用いる場合、後進パルスが遅延回路34内で消滅した後に、L=“0”,/L=“1”となり、遅延回路34が初期化(活性化)されるように構成する。
【0165】
但し、遅延回路34,62,74の各遅延量は、D3>D2+D2´の関係を有するように設定される。
【0166】
上記構成のクロック制御回路によれば、外部クロックにCKに正確に同期した補正内部クロックCK´を発生することが可能となり、高速クロックを用いたデ−タ転送を達成できる。
【0167】
また、本実施の形態では、外部クロックCKの周波数に応じて、内部クロックCKをそのまま用いるか、又は外部クロックCKに同期した補正内部クロックCK´を用いるかを決定することができる。
【0168】
つまり、外部クロックCKと内部クロックCLKのスキュ−が問題となるような高速クロックに同期させてデ−タの授受を行う場合には、外部クロックCKに同期した補正内部クロックCK´を用い、当該スキュ−が問題とならないようなクロックに同期させてデ−タの授受を行う場合には、通常どうり、内部クロックCKを用いるように構成している。
【0169】
なお、内部クロックを用いるか又は補正内部クロックを用いるかは、遅延ユニットの数により決定される。
【0170】
従って、外部クロックCKの周期(サイクルタイム)が長い場合に、かえって外部クロックCKと補正内部クロックCK´のずれが大きくなるという事態が生じることもない。
【0171】
図23は、本発明のクロック制御回路をチップ上に配置する際のレイアウトを示すものである。
【0172】
本発明のクロック制御回路を実際にICとしてシスレムに組み込む場合には、配線容量に起因する遅延(配線遅延)を考慮する必要がある。
【0173】
そこで、まず、遅延ユニットのアレイ(以下、STBD、Synchronous Traced Backwards Delayという)80は、入力バッファ13からの距離(又は配線遅延量)と出力バッファ(遅延回路)34までの距離(又は配線遅延量)が同じになるような位置に配置する。
【0174】
次に、入力バッファ13とSTBD80を配線長Lの配線により接続する。ここで、実際のスキュ−D1は、入力バッファ13による遅延量と配線長Lの配線による遅延量の合計となる。
【0175】
次に、遅延量Aを有する遅延回路32について検討する。遅延量Aは、上述したようにD1+D2で表される(例えば、図6参照)。また、遅延回路(出力バッファ)34の実際の遅延量D2は、出力バッファ34による遅延量と配線長Lの配線による遅延量の合計となる。
【0176】
そこで、遅延量Aを有する遅延回路は、スキュ−D1を形成するパタ−ン81に対して左右を逆にしたパタ−ン82と、遅延量D2を形成するパタ−ン83と同一のパタ−ン84により構成する。
【0177】
このようなレイアウトにすることで、配線遅延も考慮した上で、遅延量A,D1,D2を決定することができるため、より正確に、補正内部クロックCK´を外部クロックCKに同期させることが可能になる。
【0178】
以上、説明したように、本発明のクロック制御回路によれば、次のような効果を奏する。
【0179】
各遅延ユニットが状態保持部を持つことにより、遅延模倣パルス(前進パルス)FCL1が発生してから内部クロックCLKのパルスが発生するまでの時間Δfを正確にコピ−してΔbを形成し、当該内部クロックCLKのパルスが発生してから時間Δb(=Δf)後に後進パルスRCL1を遅延量D2を有する遅延回路に入力させることができる。
【0180】
この様子を図24〜図27に概略的に示す。
【0181】
即ち、初期状態では、図24に示すように、遅延ユニット33−1〜33−nの前進パルス遅延回路及び後進パルス遅延回路は、全て“0”を出力している状態となっている。
【0182】
また、図25に示すように、前進パルスが遅延ユニット33−4に入力され、遅延ユニット33−4の状態保持部がセット状態Sになった後、内部クロックCLKのパルスが発生すると、状態保持部がリセット状態Rの遅延ユニット33−5〜33−nは、“1”を出力する。
【0183】
つまり、前進パルスのフロントF1と後進パルスのフロントF2は、一致することになるため、遅延量Δfと遅延量Δbは、同じになる。
【0184】
この後、図26及び図27に示すように、遅延ユニット33−4がリセット状態Rに初期化され、さらに後進パルスが形成され、後進パルスは、遅延ユニット33−3,33−2を経由して、遅延ユニット33−1から出力される。
【0185】
このような動作により、外部クロックにCKに正確に同期した補正内部クロックCK´を発生することが可能となり、高速クロックを用いたデ−タ転送を達成できる。
【0186】
また、遅延ユニットの最終段から出力される信号をモニタすることにより、外部クロックCKの周波数に応じて、内部クロックCKをそのまま用いるか、又は外部クロックCKに同期した補正内部クロックCK´を用いるかを決定することができる。
【0187】
つまり、外部クロックCKと内部クロックCLKのスキュ−が問題となるような高速クロックに同期させてデ−タの授受を行う場合には、外部クロックCKに同期した補正内部クロックCK´を用い、当該スキュ−が問題とならないようなクロックに同期させてデ−タの授受を行う場合には、通常どうり、内部クロックCKを用いるように構成している。
【0188】
なお、内部クロックを用いるか又は補正内部クロックを用いるかは、遅延ユニットの数により決定される。
【0189】
従って、外部クロックCKの周期(サイクルタイム)が長い場合に、かえって外部クロックCKと補正内部クロックCK´のずれが大きくなるという事態が生じることもない。
【0190】
さらに、遅延量Aが(D1+D2)で表される点に着目し、配線遅延も考慮した上で、遅延量Aのパタ−ンを、遅延量D1,D2を形成するパタ−ンと同一のパタ−ンにより形成している。
【0191】
従って、簡略化されたレイアウトによって、メモリチップ内に、正確に補正内部クロックCK´を外部クロックCKに同期させるシステムを構成することができる。
【0192】
なお、本発明は、シンクロナスDRAMのように、内部クロックが一時中断されることがあると共に、周波数が変化する高速クロックに同期させてデ−タの授受を行うようなメモリに有効である。
【0193】
図28は、図2のクロック制御回路を簡略化して示している。
【0194】
D1は、遅延量D1を有する遅延回路、D2は、遅延量D2を有する遅延回路、Aは、遅延量D1+D2を有する遅延回路、STBD(Synchronous Traced Backward Delay )は、遅延ユニットのアレイである。STBDは、FD(Forward Delay )とBD(Backward Delay )から構成される。
【0195】
このような構成のクロック制御回路によれば、上述のように、外部クロックCKの位相と内部クロックCK´の位相は、完全に一致する(スキュ−がなくなる)。よって、上記構成のクロック制御回路は、外部クロックCKの立ち上がり時(“L”から“H”への移行時)にデ−タを出力するような場合に有効である。
【0196】
一方、近年では、外部クロックCKの周期をTとしたとき、スキュ−のない内部クロックCK´に加えて、外部クロックCKに対して(k/j)×Tだけ位相が遅れた内部クロックCKDを正確に発生させることが要求されている(k,jは、互いに素な自然数、かつ、j>kである)。
【0197】
例えば、外部クロックCKの立ち上がり時と立ち下がり時にそれぞれデ−タを出力するような場合は、外部クロックCKに対して位相が一致した内部クロックCK´と共に、外部クロックCKに対して位相がT/2(=π)だけ遅れた内部クロックCKDを生成する必要がある。
【0198】
また、このような場合、内部クロックCKDの位相が外部クロックの位相に対して正確にT/2(=π)だけ遅れていないと、デ−タ出力時のデ−タウインドウ(デ−タが確定している期間)が短くなり、誤デ−タを出力する可能性がある。
【0199】
よって、以下では、外部クロックCKに対して(k/j)×Tだけ位相が遅れた内部クロックCKDを正確に発生させることができるクロック制御回路について説明する。
【0200】
図29は、本発明のクロック制御回路の構成の第1例を示すものである。
【0201】
このクロック制御回路は、外部クロックCKに対して位相が一致した内部クロックCK´と共に、外部クロックCKに対して位相がT/2(=π)だけ遅れた内部クロックCKDを生成する(Tは、外部クロックの周期)。
【0202】
外部クロックCKは、遅延量D1を有する入力バッファ13に入力される。入力バッファ13は、外部クロックCKに対してD1のスキュ−を有する内部クロックCLKを出力する。内部クロックCLKは、遅延量Aを有する遅延回路32に入力され、遅延回路32は、遅延模倣パルスCL(前進パルスFCL1)を出力する。
【0203】
遅延模倣パルスCLは、STBD(Synchronous Traced Backward Delay )のFD(Forward Delay )に入力される。FDにおいて遅延模倣パルスCLが遅延量Δ分だけ前進した後、BD(Backward Delay )及びHBD(Half Backward Delay )においてそれぞれ後進パルスが生成される。
【0204】
BD中の後進パルスRCLは、正確に遅延量Δ分だけ後進した後、BDから出力される。また、HBD中の後進パルスHCLは、正確に遅延量Δ/2分だけ後進した後、HBDから出力される。
【0205】
内部クロックCLKは、BD及びHBDに入力され、後進パルスの生成のタイミングを決定する。内部クロックCLKをインバ−タ35により反転した反転内部クロック/CLKは、FDに入力され、前進パルスが前進する期間(遅延量)を制御する。
【0206】
後進パルスRCLは、遅延量D1+(D2×2)を有する遅延回路34を経由すると、外部クロックCKの位相と一致した補正内部クロックCK´となる。また、後進パルスHCLは、遅延量D2を有する遅延回路36を経由すると、外部クロックCKに対して位相がT/2(=180°)だけ遅れた内部クロックCKDとなる。
【0207】
ここで、遅延回路32の遅延量Aは、2×(D1+D2)に設定されている。
【0208】
図30は、本発明のクロック制御回路の構成の第2例を示すものである。
【0209】
このクロック制御回路は、外部クロックCKに対して位相が一致した内部クロックCK´と共に、外部クロックCKに対して位相がT/j(=2π/j)だけ遅れた内部クロックCKDを生成するものである(Tは、外部クロックの周期,jは自然数)。
【0210】
外部クロックCKは、遅延量D1を有する入力バッファ13に入力される。入力バッファ13は、外部クロックCKに対してD1のスキュ−を有する内部クロックCLKを出力する。内部クロックCLKは、遅延量Aを有する遅延回路32に入力され、遅延回路32は、遅延模倣パルスCL(前進パルスFCL1)を出力する。
【0211】
遅延模倣パルスCLは、STBD(Synchronous Traced Backward Delay )のFD(Forward Delay )に入力される。FDにおいて遅延模倣パルスCLが遅延量Δ分だけ前進した後、BD(Backward Delay )及び1/jBD( Backward Delay )においてそれぞれ後進パルスが生成される。
【0212】
BD中の後進パルスRCLは、正確に遅延量Δ分だけ後進した後、BDから出力される。また、1/jBD中の後進パルス1/jCLは、正確に遅延量Δ/j分だけ後進した後、1/jBDから出力される。
【0213】
内部クロックCLKは、BD及び1/jBDに入力され、後進パルスの生成のタイミングを決定する。内部クロックCLKをインバ−タ35により反転した反転内部クロック/CLKは、FDに入力され、前進パルスが前進する期間(遅延量)を制御する。
【0214】
後進パルスRCLは、遅延量(j−1)×D1+j×D2を有する遅延回路34を経由すると、外部クロックCKの位相と一致した補正内部クロックCK´となる。また、後進パルス1/jCLは、遅延量D2を有する遅延回路36を経由すると、外部クロックCKに対して位相がT/j(=360°/n)だけ遅れた内部クロックCKDとなる。
【0215】
ここで、遅延回路32の遅延量Aは、j×(D1+D2)に設定されている。
【0216】
図31は、本発明のクロック制御回路の構成の第3例を示すものである。
【0217】
このクロック制御回路は、外部クロックCKに対して位相が一致した内部クロックCK´と共に、外部クロックCKに対して位相が(k/j)×T(=2π×k/j)だけ遅れた内部クロックCKDを生成するものである(Tは、外部クロックの周期、k,jは、互いに素な自然数、j>kである)。
【0218】
外部クロックCKは、遅延量k×D1を有する入力バッファ13に入力される。入力バッファ13は、外部クロックCKに対してk×D1のスキュ−を有する内部クロックCLKを出力する。内部クロックCLKは、遅延量Aを有する遅延回路32に入力され、遅延回路32は、遅延模倣パルスCL(前進パルスFCL1)を出力する。
【0219】
遅延模倣パルスCLは、STBD(Synchronous Traced Backward Delay )のFD(Forward Delay )に入力される。FDにおいて遅延模倣パルスCLが遅延量Δ分だけ前進した後、BD(Backward Delay )及びk/jBD( Backward Delay )においてそれぞれ後進パルスが生成される。
【0220】
BD中の後進パルスRCLは、正確に遅延量Δ分だけ後進した後、BDから出力される。また、k/jBD中の後進パルスk/jCLは、正確に遅延量Δ× (k/j)分だけ後進した後、k/jBDから出力される。
【0221】
内部クロックCLKは、BD及びk/jBDに入力され、後進パルスの生成のタイミングを決定する。内部クロックCLKをインバ−タ35により反転した反転内部クロック/CLKは、FDに入力され、前進パルスが前進する期間(遅延量)を制御する。
【0222】
後進パルスRCLは、遅延量(j−k)×D1+j×D2を有する遅延回路34を経由すると、外部クロックCKの位相と一致した補正内部クロックCK´となる。また、後進パルスk/jCLは、遅延量k×D2を有する遅延回路36を経由すると、外部クロックCKに対して位相がT×(k/j)(=360°×k/j)だけ遅れた内部クロックCKDとなる。
【0223】
ここで、遅延回路32の遅延量Aは、j×(D1+D2)に設定されている。
【0224】
図32は、本発明のクロック制御回路の構成の第4例を示すものである。
【0225】
このクロック制御回路は、外部クロックCKに対して位相が一致した内部クロックCK´と共に、外部クロックCKに対して位相がT×(k/j)(=2π×k/j)だけ遅れた内部クロックCKDを生成するものである(Tは、外部クロックの周期、k,jは、互いに素な自然数、j>kである)。
【0226】
外部クロックCKは、遅延量D1を有する入力バッファ13に入力される。入力バッファ13は、外部クロックCKに対してD1のスキュ−を有する内部クロックCLKを出力する。内部クロックCLKは、遅延量Aを有する遅延回路32に入力され、遅延回路32は、遅延模倣パルスCL(前進パルスFCL1)を出力する。
【0227】
遅延模倣パルスCLは、STBD(Synchronous Traced Backward Delay )のFD(Forward Delay )に入力される。FDにおいて遅延模倣パルスCLが遅延量Δ分だけ前進した後、BD(Backward Delay )及びk/jBD( Backward Delay )においてそれぞれ後進パルスが生成される。
【0228】
BD中の後進パルスRCLは、正確に遅延量Δ分だけ後進した後、BDから出力される。また、k/jBD中の後進パルスk/jCLは、正確に遅延量Δ× (k/j)分だけ後進した後、k/jBDから出力される。
【0229】
内部クロックCLKは、BD及びk/jBDに入力され、後進パルスの生成のタイミングを決定する。内部クロックCLKをインバ−タ35により反転した反転内部クロック/CLKは、FDに入力され、前進パルスが前進する期間(遅延量)を制御する。
【0230】
後進パルスRCLは、遅延量(j−1)×D1+j×D2を有する遅延回路34を経由すると、外部クロックCKの位相と一致した補正内部クロックCK´となる。また、後進パルスk/jCLは、遅延量(k−1)×D1+k×D2を有する遅延回路36を経由すると、外部クロックCKに対して位相がT×(k/j)(=360°×k/j)だけ遅れた内部クロックCKDとなる。
【0231】
ここで、遅延回路32の遅延量Aは、j×(D1+D2)に設定されている。
【0232】
図33は、本発明のクロック制御回路の構成の第5例を示すものである。
【0233】
このクロック制御回路は、外部クロックCKに対して位相が一致した内部クロックCK´と共に、外部クロックCKに対して位相がT/4(=90°)、T/2(=180°)、3T/4(=270°)だけ遅れた内部クロックCKQ,CKH,CK3Qをそれぞれ生成する。
【0234】
外部クロックCKは、遅延量D1を有する入力バッファ13に入力される。入力バッファ13は、外部クロックCKに対してD1のスキュ−を有する内部クロックCLKを出力する。内部クロックCLKは、遅延量Aを有する遅延回路32に入力され、遅延回路32は、遅延模倣パルスCL(前進パルスFCL1)を出力する。
【0235】
遅延模倣パルスCLは、SAD(Synchronous Adjustable Delay)のFD(Forward Delay )に入力される。SADには、STBD(Synchronous Traced Backward Delay )などが含まれる。
【0236】
FDにおいて遅延模倣パルスCLが遅延量Δ分だけ前進した後、BD(Backward Delay )、QBD(Quarter Backward Delay )、HBD(Half Backward Delay )及び3QBD(3 Quarters Backward Delay )においてそれぞれ後進パルスが生成される。
【0237】
BD中の後進パルスRCLは、遅延量Δ分(遅延素子X個分)だけ後進した後、BDから出力される。また、QBD中の後進パルスQCLは、遅延量Δ/4分(遅延素子X/4個分)だけ後進した後、QBDから出力され、HBD中の後進パルスHCLは、遅延量Δ/2分(遅延素子X/2個分)だけ後進した後、HBDから出力され、3QBD中の後進パルス3QCLは、遅延量3Δ/4分(遅延素子3X/4個分)だけ後進した後、3QBDから出力される。
【0238】
内部クロックCLKは、BD、QBD、HBD、3QBDにそれぞれ入力され、後進パルスの生成のタイミングを決定する。内部クロックCLKをインバ−タ35により反転した反転内部クロック/CLKは、FDに入力され、前進パルスが前進する期間(遅延量)を制御する。
【0239】
後進パルスRCLは、遅延量(D1×3+D2×4)を有する遅延回路34を経由すると、外部クロックCKの位相と一致した補正内部クロックCK´となる。
【0240】
また、後進パルスQCLは、遅延量D2を有する遅延回路36aを経由すると、外部クロックCKに対して位相がT/4(=90°)だけ遅れた内部クロックCKQとなる。
【0241】
また、後進パルスHCLは、遅延量(D1+D2×2)を有する遅延回路36bを経由すると、外部クロックCKに対して位相がT/2(=180°)だけ遅れた内部クロックCKHとなる。
【0242】
さらに、後進パルス3QCLは、遅延量(D1×2+D2×3)を有する遅延回路36cを経由すると、外部クロックCKに対して位相が3T/4(=270°)だけ遅れた内部クロックCKDとなる。
【0243】
ここで、遅延回路32の遅延量Aは、4×(D1+D2)に設定されている。
【0244】
図34は、図32のクロック制御回路の構成を詳細に示すものである。
【0245】
外部クロックCKは、メモリの入力端子30に与えられる。外部クロックCKは、遅延量D1を有する入力バッファ13に入力される。入力バッファ13は、外部クロックCKに対してD1のスキュ−を有する内部クロックCLKを出力する。内部クロックCLKは、遅延量Aを有する遅延回路32に入力され、遅延回路32は、前進パルスFCL1(遅延模倣パルスCL)を出力する。
【0246】
内部クロックCLK、及び内部クロックCLKをインバ−タ35により反転した反転内部クロック/CLKは、それぞれn(nは自然数)個の遅延ユニット33−1,33−2,…33−nに入力される。
【0247】
n個の遅延ユニット33−1,33−2,…33−nは、互いに直列に接続されている。初段の遅延ユニット33−1には、前進パルスFCL1が入力され、また、初段の遅延ユニット33−1からは、後進パルスRCL1が出力される。
【0248】
n個の遅延ユニット33−1,33−2,…33−nには、制御パルス発生回路60が出力する制御パルスP,/Pが入力される。また、遅延ユニット33−i(iは、1〜n)は、制御パルスQi,/Qiを出力する。制御パルスQi,/Qiは、k/jBD37に入力される。
【0249】
後進パルスRCL1は、遅延量(j−1)×D1+j×D2を有する遅延回路34を経由することにより、補正内部クロックCK´となる。
【0250】
後進パルスk/jCLは、遅延量(k−1)×D1+k×D2を有する遅延回路36を経由することにより、外部クロックCKに対して位相がT×(k/j)(=360°×k/j)だけ遅れた内部クロックCKDとなる。
【0251】
図35は、図34の遅延ユニットの構成の第1例を詳細に示すものである。
【0252】
遅延ユニットUi(i=1〜n)は、前進パルス遅延回路、状態保持回路及び後進パルス遅延回路の3つの部分から構成される。
【0253】
前進パルス遅延回路は、3つのインバ−タ41〜43から構成されている。インバ−タ41,42は、直列接続され、インバ−タ41には、前段の遅延ユニットの出力信号FCLiが入力され、インバ−タ42は、後段の遅延ユニットに出力信号FCLi+1を出力する。インバ−タ(クロックドインバ−タ)41の動作は、制御パルス/Pにより制御され、例えば、制御パルス/Pが“1”のとき、インバ−タ41は、活性状態となる。
【0254】
また、インバ−タ43の出力端は、インバ−タ42の入力端に接続され、インバ−タ43の入力端には、常に“0”の電位(例えば、接地電位)が印加されている。インバ−タ(クロックドインバ−タ)43の動作は、制御パルスPにより制御され、例えば、制御パルスPが“1”のとき、インバ−タ43は、活性状態となる。
【0255】
後進パルス遅延回路は、3つのインバ−タ44〜46から構成されている。インバ−タ44,45は、直列接続され、インバ−タ44には、後段の遅延ユニットの出力信号RCLi+1又は内部クロックCLKが入力され、インバ−タ45は、前段の遅延ユニットに出力信号RCLiを出力する。インバ−タ(クロックドインバ−タ)44の動作は、制御パルスQiにより制御され、例えば、制御パルスQiが“1”のときのみ、インバ−タ44は、活性状態となる。
【0256】
また、インバ−タ46の出力端は、インバ−タ45の入力端に接続され、インバ−タ46の入力端には、常に、内部クロックCLKが入力されている。インバ−タ(クロックドインバ−タ)46の動作は、制御パルス/Qiにより制御され、例えば、制御パルス/Qiが“1”のとき、インバ−タ46は、活性状態となる。
【0257】
状態保持回路は、状態保持部47及びNAND回路48,49から構成されている。NAND回路48には、前段の遅延ユニットの出力信号FCLi及び反転内部クロック/CLKが入力され、NAND回路49には、インバ−タ45の出力信号及び内部クロックCLKが入力される。
【0258】
NAND回路48の出力信号は、状態保持部47のセット入力/Sとなり、NAND回路49の出力信号は、状態保持部47のリセット入力/Rとなっている。従って、NAND回路48の出力信号(セット入力)/Sが“0”となったとき、状態保持部47はセット状態となり、NAND回路49の出力信号(リセット入力)/Rが“0”となったとき、状態保持部47はリセット状態となる。
【0259】
状態保持部47は、制御パルスQ,/Qを出力するようにも構成されている。制御パルスQは、状態保持部47がセット状態のときに“1”となり、制御パルス/Qは、状態保持部47がリセット状態のときに“1”となる。
【0260】
状態保持部47は、例えば、図4のような構成のものを使用することができる。
【0261】
前進パルスが通過した遅延ユニットUiでは、制御パルスQiが“H”となり、/Qiが“L”となる。一方、後進パルスが通過した遅延ユニットUiでは、制御パルスQiが“L”となり、/Qiが“H”となる。
【0262】
図36は、図34の遅延ユニットの構成の第2例を詳細に示すものである。
【0263】
遅延ユニットUi(i=1〜n)は、前進パルス遅延回路fdi、状態保持回路sri及び後進パルス遅延回路bdiの3つの部分から構成される。
【0264】
前進パルス遅延回路fdiは、5つのインバ−タ91〜95から構成されている。インバ−タ91〜93は、直列接続され、インバ−タ91には、前段の遅延ユニットの出力信号FCLiが入力され、インバ−タ92は、後段の遅延ユニットに出力信号FCLi+1を出力する。インバ−タ(クロックドインバ−タ)91の動作は、制御パルス/Pにより制御され、例えば、制御パルス/Pが“1”のとき、インバ−タ91は、活性状態となる。
【0265】
また、インバ−タ94の出力端は、インバ−タ91の出力端に接続されると共にインバ−タ92,95の入力端に接続され、インバ−タ94の入力端には、常に“0”の電位(例えば、接地電位)が印加されている。インバ−タ(クロックドインバ−タ)94の動作は、制御パルスPにより制御され、例えば、制御パルスPが“1”のとき、インバ−タ94は、活性状態となる。
【0266】
後進パルス遅延回路bdiは、5つのインバ−タ96〜100から構成されている。インバ−タ96〜98は、直列接続され、インバ−タ96には、後段の遅延ユニットの出力信号RCLi+1又は内部クロックCLKが入力され、インバ−タ97は、前段の遅延ユニットに出力信号RCLiを出力する。インバ−タ (クロックドインバ−タ)96の動作は、制御パルスQiにより制御され、例えば、制御パルスQiが“1”のときのみ、インバ−タ96は、活性状態となる。
【0267】
また、インバ−タ99の出力端は、インバ−タ96の出力端に接続されると共にインバ−タ97,100の入力端に接続され、インバ−タ99の入力端には、常に、内部クロックCLKが入力されている。インバ−タ(クロックドインバ−タ)99の動作は、制御パルス/Qiにより制御され、例えば、制御パルス/Qiが“1”のとき、インバ−タ99は、活性状態となる。
【0268】
状態保持回路sriは、PチャネルMOSトランジスタ101,102、NチャネルMOSトランジスタ103,104及びインバ−タ105から構成されている。
【0269】
PチャネルMOSトランジスタ101,102は、電源端子とノ−ドZの間に直列接続され、NチャネルMOSトランジスタ103,104は、接地端子とノ−ドZの間に直列接続されている。
【0270】
MOSトランジスタ101,104のゲ−トには、内部クロックCLKを反転させたクロック信号/CLKが入力され、MOSトランジスタ102のゲ−トには、遅延ユニットUi−3の出力信号/RCLi−3が入力され、MOSトランジスタ103のゲ−トには、遅延ユニットUi−1の出力信号FFCLiが入力される。
【0271】
インバ−タ105の入力端は、ノ−ドZに接続され、インバ−タ105の出力端からは制御パルスQi−2が出力される。ノ−ドZからは、制御パルス/Qi−2が出力される。
【0272】
図37及び図38は、図34のk/jBDの構成の一例を示している。
【0273】
本例では、kが1、jが2の場合、即ち、外部クロックに対して位相がT/2だけ遅れる場合について説明する。この場合、k/jBDは、HBD(Half Backward Delay )となる。
【0274】
HBDは、直列接続されたm(mは自然数)個の遅延ユニットbdi(i=1〜m)から構成されている。各遅延ユニットbdiの構成は、SAD(Synchronous Adjustable Delay)の遅延ユニットUiの後進パルス遅延回路bdiの構成と同じである。
【0275】
よって、BDにおける後進パルスの遅延量とHBDにおける後進パルスの遅延量の比は、BDにおける遅延ユニット数とHBDにおける遅延ユニット数の比、正確には、1つのブロック内におけるBDの遅延ユニット数とHBDの遅延ユニット数の比に等しくなる。
【0276】
具体的には、本例では、n個の遅延ユニットUi(i=1〜n)とm個の遅延ユニットbdi(i=1〜m)を、それぞれr(rは自然数)個のブロックB(1),B(2),…B(r)に均等に分けている。
【0277】
例えば、ブロックB(1)を、2個の遅延ユニットU1,U2と1つの遅延ユニットbd1から構成し、遅延ユニットU1を制御する制御パルスQ1,/Q1及び遅延ユニットU2を制御する制御パルスQ2,/Q2のうちのいずれか一方を遅延ユニットbd1に与えている。
【0278】
同様に、ブロックB(r)を、2個の遅延ユニットUn−1,Unと1つの遅延ユニットbdmから構成し、遅延ユニットUn−1を制御する制御パルスQn−1,/Qn−1及び遅延ユニットUnを制御する制御パルスQn,/Qnのうちのいずれか一方を遅延ユニットbdmに与えている。
【0279】
つまり、本例では、SADの2個の遅延ユニットに対してHBDの1個の遅延ユニットを設けている。よって、BDにおいては、後進パルスは、Δだけ遅延するのに対し、HBDにおいては、後進パルスは、Δ/2だけ遅延することになる。
【0280】
なお、本例の場合、rとmは、等しく、m=n/2の関係がある。また、上記説明において度々でてくる互いに素な自然数j,kは、それぞれj=2(1つのブロック内のSADの遅延ユニットの数に等しい)、k=1(1つのブロック内のHBDの遅延ユニットの数に等しい)となる。
【0281】
また、SADの遅延ユニットの総数nは、j(本例では2)×rとなり、HBDの遅延ユニットの総数mは、k(本例では1)×rとなる。
【0282】
また、HBDの遅延ユニットbd1〜bdmは、SADの遅延ユニットU1〜Unに対して均等に配置するのがよい。つまり、SADの隣接する2つの遅延ユニットに対してHBDの1つの遅延ユニットを対応させれば、正確にΔ/2の遅延を生成できるようになる。
【0283】
図39は、HBDにおける遅延ユニットbdiの構成の一例を示している。
【0284】
本例は、図35の遅延ユニットUiを用いた場合の例である。即ち、遅延ユニットUiの後進パルス遅延回路は、3つのインバ−タ44〜46から構成されているため、HBDにおける遅延ユニットbdiも、3つのインバ−タ44´〜46´から構成される。
【0285】
インバ−タ44´,45´は、直列接続され、インバ−タ44´には、後段の遅延ユニットの出力信号HCLi+1又は内部クロックCLKが入力され、インバ−タ45´は、前段の遅延ユニットに出力信号HCLiを出力する。インバ−タ(クロックドインバ−タ)44´の動作は、制御パルスQiにより制御され、例えば、制御パルスQiが“1”のときのみ、インバ−タ44´は、活性状態となる。
【0286】
また、インバ−タ46´の出力端は、インバ−タ45´の入力端に接続され、インバ−タ46´の入力端には、常に、内部クロックCLKが入力されている。インバ−タ(クロックドインバ−タ)46´の動作は、制御パルス/Qiにより制御され、例えば、制御パルス/Qiが“1”のとき、インバ−タ46´は、活性状態となる。
【0287】
図40は、図39の遅延ユニットbdiをシンボル化して示すものである。よって、図39の回路と図40の回路は、同一のものを示している。
【0288】
図41は、図34のk/jBDの構成の一例を示している。
【0289】
本例では、jが3、kが1の場合、即ち、外部クロックに対して位相がT/3だけ遅れる場合について説明する。
【0290】
1/3BDは、直列接続されたm個の遅延ユニットbdi(i=1〜m)から構成されている。各遅延ユニットbdiの構成は、SAD(Synchronous Adjustable Delay)の遅延ユニットUiの後進パルス遅延回路bdiの構成と同じである。
【0291】
よって、BDにおける後進パルスの遅延量と1/3BDにおける後進パルスの遅延量の比は、BDにおける遅延ユニットの数と1/3BDにおける遅延ユニットの数の比、正確には、1つのブロック内におけるBDの遅延ユニット数と1/3BDの遅延ユニット数の比に等しくなる。
【0292】
具体的には、本例では、n個の遅延ユニットUi(i=1〜n)とm個の遅延ユニットbdi(i=1〜m)を、r個のブロックB(1),B(2),…B (r)に均等に分けている。
【0293】
例えば、ブロックB(1)を、3個の遅延ユニットU1〜U3と1つの遅延ユニットbd1から構成し、遅延ユニットU1を制御する制御パルスQ1,/Q1を遅延ユニットbd1に与えている。但し、制御パルスQ1,/Q1に変えて、遅延ユニットU2又は遅延ユニットU3を制御する制御パルスを遅延ユニットbd1に与えてもよい。
【0294】
つまり、本例では、SADの3個の遅延ユニットに対して1/3BDの1個の遅延ユニットを設けている。よって、BDにおいては、後進パルスは、Δだけ遅延するのに対し、1/3BDにおいては、後進パルスは、Δ/3だけ遅延することになる。
【0295】
なお、本例の場合、rとmは、等しく、m=n/3の関係がある。また、上記説明において度々でてくる互いに素な自然数j,kは、それぞれj=3(1つのブロック内のSADの遅延ユニットの数に等しい)、k=1(1つのブロック内のHBDの遅延ユニットの数に等しい)となる。
【0296】
また、SADの遅延ユニットの総数nは、j(本例では3)×rとなり、HBDの遅延ユニットの総数mは、k(本例では1)×rとなる。
【0297】
また、1/3BDの遅延ユニットbd1〜bdmをSADの遅延ユニットU1〜Unに対して均等に配置するのがよい。つまり、SADの隣接する3つの遅延ユニットに対して1/3BDの1つの遅延ユニットを対応させれば、正確にΔ/3の遅延を生成できるようになる。
【0298】
図42は、図34のk/jBDの構成の一例を示している。
【0299】
本例では、kが2、jが3の場合、即ち、外部クロックに対して位相が2T/3だけ遅れる場合について説明する。
【0300】
2/3BDは、直列接続されたm個の遅延ユニットbdi(i=1〜m)から構成されている。各遅延ユニットbdiの構成は、SAD(Synchronous Adjustable Delay)の遅延ユニットUiの後進パルス遅延回路bdiの構成と同じである。
【0301】
よって、BDにおける後進パルスの遅延量と2/3BDにおける後進パルスの遅延量の比は、BDにおける遅延ユニット数と2/3BDにおける遅延ユニット数の比、正確には、1つのブロック内におけるBDの遅延ユニット数と2/3BDの遅延ユニット数の比に等しくなる。
【0302】
具体的には、本例では、n個の遅延ユニットUi(i=1〜n)とm個の遅延ユニットbdi(i=1〜m)を、r個のブロックB(1),B(2),…B (r)に均等に分けている。
【0303】
例えば、ブロックB(1)を、3個の遅延ユニットU1〜U3と2つの遅延ユニットbd1,bd2から構成し、遅延ユニットU1を制御する制御パルスQ1,/Q1を遅延ユニットbd1に与え、遅延ユニットU3を制御する制御パルスQ3,/Q3を遅延ユニットbd2に与えている。
【0304】
但し、制御パルスQ1,/Q1,Q3,/Q3に変えて、制御パルスQ1,/Q1,Q2,/Q2を遅延ユニットbd1,bd2に与えてもよいし、また、制御パルスQ2,/Q2,Q3,/Q3を遅延ユニットbd1,bd2に与えてもよい。
【0305】
つまり、本例では、SADの3個の遅延ユニットに対して2/3BDの2個の遅延ユニットを設けている。よって、BDにおいては、後進パルスは、Δだけ遅延するのに対し、2/3BDにおいては、後進パルスは、2Δ/3だけ遅延することになる。
【0306】
なお、本例の場合、m=2n/3の関係がある。また、上記説明において度々でてくる互いに素な自然数j,kは、それぞれj=3(1つのブロック内のSADの遅延ユニットの数に等しい)、k=2(1つのブロック内のHBDの遅延ユニットの数に等しい)となる。
【0307】
また、SADの遅延ユニットの総数nは、j(本例では3)×rとなり、HBDの遅延ユニットの総数mは、k(本例では2)×rとなる。また、m/n=k×r/j×rであるから、m/n=k/jの関係がある。
【0308】
また、2/3BDの遅延ユニットbd1〜bdmをSADの遅延ユニットU1〜Unに対して均等に配置するのがよい。つまり、SADの隣接する3つの遅延ユニットに対して2/3BDの2つの遅延ユニットを対応させれば、正確に2Δ/3の遅延を生成できるようになる。
【0309】
図43は、図34のk/jBDの構成を一般的に示している。図44は、図43の1つのブロックB(i)内におけるk/jBDの構成を示している。
【0310】
SADは、r個のブロックB(1)〜B(r)から構成されている。SADにおいて、各ブロックは、j個の遅延ユニットを含んでいる。同様に、k/jBDは、r個のブロックB(1)〜B(r)から構成されている。k/jBDにおいて、各ブロックは、k個の遅延ユニットを含んでいる。
【0311】
j及びkは、互いに素な自然数であり、j>kに設定するのが一般的である。ブロックがr個存在するから、SADの遅延ユニットの合計数nは、r×j個となり、k/jBDの遅延ユニットの合計数mは、r×k個となる。
【0312】
SADのブロック数とk/jBDのブロック数は等しい。例えば、SADのブロックB(1)は、k/jBDのブロック(1)に対応し、SADのブロックB(2)は、k/jBDのブロック(2)に対応し、SADのブロックB(r)は、k/jBDのブロック(r)に対応している。
【0313】
例えば、SADのブロック(1)は、j組の制御パルスQ1,/Q1,Q2,/Q2,・・・Qj,/Qjにより制御されている。そこで、これらj組の制御パルスのうちのk(<j)組のみを選択し、このk組の制御パルスをk/jBDのブロック(1)に供給する。
【0314】
k組の制御パルスは、j組の制御パルスQ1,/Q1,Q2,/Q2,・・・Qj,/Qjから規則的かつ均等に選択される。
【0315】
また、選択されたk組の制御パルスは、k/jBDの対応するk個の遅延ユニットに規則的に与えられる。例えば、制御パルスQ1,/Q1,Q2,/Q2が選択される場合には、制御パルスQ1,/Q1をk/jBDの遅延ユニットbd1に与え(bd2に与えない)、制御パルスQ2,/Q2をk/jBDの遅延ユニットbd2に与える(bd1に与えない)。
【0316】
このような構成によれば、SADの前進パルスが到達する遅延ユニットの位置にかかわらず、常に、SADの遅延ユニット数とk/jBDの遅延ユニット数の比は、k/j=m/nを満たすようになる。よって、前進パルスが到達する遅延ユニットの位置にかかわらず、k/jBDにおいて正確にk/jΔの遅延量を生成することができる。
【0317】
次に、図45を参照しながら、本発明(図31の例の場合)の原理について説明する。
【0318】
外部クロックCKと内部クロックCLKのスキュ−の幅(遅延量)をk×D1とし、外部クロックCK及び内部クロックCLKの周期をTとする。
【0319】
内部クロックCLKの1つめのパルスが発生した時点(立ち上がった時点)から時間Aが経過した時点で遅延模倣パルスCLを発生させる。この場合、遅延模倣パルスCLが発生した時点から、内部クロックCLKの2つめのパルスが発生する時点までの時間は、Δfとなる。
【0320】
また、この時間Δfをコピ−してΔbを作り、遅延模倣パルスCLを発生させた時点から時間2×Δ(但し、Δf=Δb=Δ)が経過した時点で遅延模倣パルスRCLが発生するようにする。すると、遅延模倣パルスRCLが発生した時点から時間Aが経過した時点は、内部クロックCLKの3つめのパルスが発生する時点と一致することになる。但し、(A+W)<Tとする。Wは、遅延模倣パルスCL,RCLの幅である。
【0321】
遅延模倣パルスRCLが発生した時点から外部クロックCKの3つめのパルスが発生する時点までの時間を(j−k)×D1+j×D2とすると、遅延模倣パルスRCLを時間(j−k)×D1+j×D2だけ遅延させてやれば、外部クロックCKのタイミングに一致した補正内部クロックCK´が得られる。
【0322】
つまり、遅延量A,(2×Δ),(j−k)×D1+j×D2を生成する遅延回路を形成し、内部クロックCLKを時間 A+(2×Δ)+{(j−k)×D1+j×D2}だけ遅らせれば、外部クロックCKのタイミングに一致した補正内部クロックCK´が得られることになる。
【0323】
遅延量(2×Δ)は、SADにより生成され、また、遅延量(j−k)×D1+j×D2は、遅延素子により生成される。遅延量Aは、以下のようにして決定される。
【0324】
図45の関係から、
k×D1+A+Δ = T+k×D1 …(1)
k×D1+A+2Δ+(j−k)×D1+j×D2 = 2T …(2)
が導ける。
【0325】
(1)式より、T = A+Δ …(3)が導け、
(2)式より、A+2Δ+j(D1+D2) = 2T …(4)が導ける。
【0326】
(3),(4)式より、
A+2Δ+j(D1+D2) = 2(A+Δ)
A = j(D1+D2) …(5)
となる。
【0327】
また、外部クロックCKに対して(k/j)×Tだけ遅延した内部クロックCKDが生成される原理は、以下の通りである。
【0328】
時間(k/j)×Δ(Δ=Δf=Δb)を作り、遅延模倣パルスCLを発生させた時点から時間Δ+(k/j)×Δが経過した時点で遅延パルスk/jCLが発生するようにする。また、遅延パルスk/jCLが発生した時点から時間k×D2が経過した時点において、内部クロックCKDを発生させる。
【0329】
この時、図45から明らかなように、内部クロックCKDは、外部クロックCKに対して、
k×D1+(k/j)×Δ+k×D2 …(6)
だけ遅れていることになる。
【0330】
(6)式を変形すると、
(k/j)×(j×D1+Δ+j×D2)
= (k/j)×{j(D1+D2)+Δ} …(7)
となる。
【0331】
(7)式は、上記(3),(5)式より、
(k/j)×T …(8)
となる。
【0332】
つまり、内部クロックCKDは、外部クロックCKに対して位相が(k/j)×Tだけ遅れていることを意味する。
【0333】
よって、遅延量A,Δ+(k/j)×Δ,k×D2を生成する遅延回路を形成し、内部クロックCLKを時間 A+{Δ+(k/j)×Δ}+k×D2だけ遅らせれば、外部クロックCKに対して位相が(k/j)×Tだけ遅れた内部クロックCKDが得られることになる。
【0334】
遅延量Δは、SADのFDにより生成され、また、遅延量k×D2は、遅延素子により生成される。遅延量Aは、上述の手法によって、(5)式に示すように、j(D1+D2)に設定される。
【0335】
次に、図46を参照しながら、本発明(図32の例の場合)の原理について説明する。
【0336】
外部クロックCKと内部クロックCLKのスキュ−の幅(遅延量)をD1とし、外部クロックCK及び内部クロックCLKの周期をTとする。
【0337】
内部クロックCLKの1つめのパルスが発生した時点(立ち上がった時点)から時間Aが経過した時点で遅延模倣パルスCLを発生させる。この場合、遅延模倣パルスCLが発生した時点から、内部クロックCLKの2つめのパルスが発生する時点までの時間は、Δfとなる。
【0338】
また、この時間Δfをコピ−してΔbを作り、遅延模倣パルスCLを発生させた時点から時間2×Δ(但し、Δf=Δb=Δ)が経過した時点で遅延模倣パルスRCLが発生するようにする。すると、遅延模倣パルスRCLが発生した時点から時間Aが経過した時点は、内部クロックCLKの3つめのパルスが発生する時点と一致することになる。但し、(A+W)<Tとする。Wは、遅延模倣パルスCL,RCLの幅である。
【0339】
遅延模倣パルスRCLが発生した時点から外部クロックCKの3つめのパルスが発生する時点までの時間を(j−1)×D1+j×D2とすると、遅延模倣パルスRCLを時間(j−1)×D1+j×D2だけ遅延させてやれば、外部クロックCKのタイミングに一致した補正内部クロックCK´が得られる。
【0340】
つまり、遅延量A,(2×Δ),(j−1)×D1+j×D2を生成する遅延回路を形成し、内部クロックCLKを時間 A+(2×Δ)+{(j−1)×D1+j×D2}だけ遅らせれば、外部クロックCKのタイミングに一致した補正内部クロックCK´が得られることになる。
【0341】
遅延量(2×Δ)は、SADにより生成され、また、遅延量(j−1)×D1+j×D2は、遅延素子により生成される。遅延量Aは、以下のようにして決定される。
【0342】
図46の関係から、
D1+A+Δ = T+D1 …(9)
D1+A+2Δ+(j−1)×D1+j×D2 = 2T …(10)
が導ける。
【0343】
(9)式より、T = A+Δ …(11)が導け、
(10)式より、A+2Δ+j(D1+D2) = 2T …(12)が導ける。
【0344】
(11),(12)式より、
A+2Δ+j(D1+D2) = 2(A+Δ)
A = j(D1+D2) …(13)
となる。
【0345】
また、外部クロックCKに対して(k/j)×Tだけ遅延した内部クロックCKDが生成される原理は、以下の通りである。
【0346】
時間(k/j)×Δ(Δ=Δf=Δb)を作り、遅延模倣パルスCLを発生させた時点から時間Δ+(k/j)×Δが経過した時点で遅延パルスk/jCLが発生するようにする。また、遅延パルスk/jCLが発生した時点から時間(k−1)×D2+k×D2が経過した時点において、内部クロックCKDを発生させる。
【0347】
この時、図46から明らかなように、内部クロックCKDは、外部クロックCKに対して、
D1+(k/j)×Δ+(k−1)×D1+k×D2 …(14)
だけ遅れていることになる。
【0348】
(14)式を変形すると、
(k/j)×(j×D1+Δ+j×D2)
= (k/j)×{j(D1+D2)+Δ} …(15)
となる。
【0349】
(15)式は、上記(11),(12)式より、
(k/j)×T …(16)
となる。
【0350】
つまり、内部クロックCKDは、外部クロックCKに対して位相が(k/j)×Tだけ遅れていることを意味する。
【0351】
よって、遅延量A,Δ+(k/j)×Δ,k×D2を生成する遅延回路を形成し、内部クロックCLKを時間 A+{Δ+(k/j)×Δ}+k×D2だけ遅らせれば、外部クロックCKに対して位相が(k/j)×Tだけ遅れた内部クロックCKDが得られることになる。
【0352】
遅延量Δは、SADのFDにより生成され、また、遅延量k×D2は、遅延素子により生成される。遅延量Aは、上述の手法によって、(13)式に示すように、j(D1+D2)に設定される。
【0353】
図47は、外部クロックを発生し、デ−タを受け取るコントロ−ラと、外部クロックから生成した内部クロックに基づいてデ−タを出力するメモリとの接続関係を示している。
【0354】
上述の例では、外部クロックと内部クロックの位相関係を明確に決定し、メモリから正確なデ−タを出力する技術について述べた。本例では、このようなメモリから読み出された正確なデ−タを、コントロ−ラが正確に受け取ることができる技術について説明する。
【0355】
一般に、メモリシステムは、コントロ−ラ(CPU)と、複数のメモリ(IC)とを含んでいる。また、外部クロックCKがコントロ−ラからメモリ1,2に到達するまでには、一定の時間がかかる。そこで、まず、コントロ−ラから各メモリ1,2までの外部クロックの配線長を等しくする。
【0356】
また、メモリ1又はメモリ2は、外部クロックCKに対して一定の位相関係にある内部クロックに基づいてデ−タを出力する。デ−タは、デ−タバスを経由してコントロ−ラに導かれる。
【0357】
コントロ−ラは、メモリ1又はメモリ2からデ−タを受け取るが、デ−タバスの配線長、配線容量などにより、デ−タがメモリ1又はメモリ2から出力され、コントロ−ラに入力されるまでに一定の時間がかかる。
【0358】
即ち、コントロ−ラは、正確なデ−タを取り込むため、デ−タバスのデ−タの伝搬時間を考慮したタイミングによりデ−タを取り込む必要がある。
【0359】
そこで、メモリ1,2に等しい外部クロックの入力容量を持つダミ−メモリ (IC)を用意する。コントロ−ラからダミ−メモリまでの外部クロックの配線長は、コントロ−ラから各メモリ1,2までの外部クロックの配線長に等しくする。
【0360】
また、ダミ−ICに入力される外部クロックCKをさらにコントロ−ラに戻し、これをリタ−ンクロックとする。
【0361】
リタ−ンクロックは、コントロ−ラがメモリ1又はメモリ2の出力デ−タを受け取るタイミングを決定するものである。よって、ダミ−メモリからコントロ−ラまでのリタ−ンクロックの配線長は、メモリ1又はメモリ2からコントロ−ラまでのデ−タバス長に等しくする。
【0362】
このように、コントロ−ラは、リタ−ンクロックに基づいて、メモリ1又はメモリ2からのデ−タを受け取る。よって、誤デ−タがコントロ−ラに入力されることがない。
【0363】
【発明の効果】
以上、説明したように、本発明のクロック制御回路によれば、次のような効果を奏する。
【0364】
外部クロックに対し常に一定の位相関係になる内部クロックを安定して生成することができ、しかも、外部クロックの周期が変化しても、外部クロックの数サイクル目には、外部クロックに対して内部クロックが常に一定の位相関係を有するようになる。
【0365】
よって、本発明は、いわゆるシンクロナスメモリのようなクロック同期型のDRAMのデ−タ入出力回路の制御に最適である。
【0366】
また、クロックのサイクルを分周してデ−タ出力を行うような制御により、クロックの1周期で複数のデ−タを出力するような場合には、外部クロックに対して位相が所定量だけ正確にずれた内部クロックを複数必要とするが、本発明によれば、このような複数の内部クロックをPLLなどの複雑なシステムを用いなくても、容易に生成することができる。
【図面の簡単な説明】
【図1】本発明の回路を有するメモリを備えたシステムの主要部を示す図。
【図2】図1のメモリ内のクロック制御回路の構成を示す図。
【図3】図2の回路内の遅延ユニットを詳細に示す回路図。
【図4】図3の遅延ユニット内の状態保持部を詳細に示す回路図。
【図5】図2の回路内の制御パルス発生回路を詳細に示す図。
【図6】本発明の原理について示す図。
【図7】図2〜5の回路の動作を示すタイミング図。
【図8】図7のタイミング図のaの状態を示す図。
【図9】図7のタイミング図のbの状態を示す図。
【図10】図7のタイミング図のcの状態を示す図。
【図11】図7のタイミング図のdの状態を示す図。
【図12】図7のタイミング図のeの状態を示す図。
【図13】図7のタイミング図のfの状態を示す図。
【図14】図7のタイミング図のgの状態を示す図。
【図15】図7のタイミング図のhの状態を示す図。
【図16】図7のタイミング図のiの状態を示す図。
【図17】図2の回路の変形例を示す図。
【図18】図2の回路の変形例を示す図、
【図19】図18の回路内の遅延回路34を詳細に示す図。
【図20】図18の回路内の制御パルス発生延回路61を詳細に示す図、
【図21】図2の回路の動作の問題点を示す図。
【図22】図18〜図20の回路の動作を示すタイミング図。
【図23】本発明の回路をチップに組み込む場合のレイアウトを示す図。
【図24】図2及び図18の回路の動作を示す図。
【図25】図2及び図18の回路の動作を示す図。
【図26】図2及び図18の回路の動作を示す図。
【図27】図2及び図18の回路の動作を示す図。
【図28】図2のクッロック制御回路の概略の構成を示す図。
【図29】本発明のクロック制御回路の第1例を示す図。
【図30】本発明のクロック制御回路の第2例を示す図。
【図31】本発明のクロック制御回路の第3例を示す図。
【図32】本発明のクロック制御回路の第4例を示す図。
【図33】本発明のクロック制御回路の第5例を示す図。
【図34】図1のクロック制御回路の構成を詳細に示す図。
【図35】図34の回路内の遅延ユニットUiの構成を詳細に示す図。
【図36】図34の回路内の遅延ユニットUiの構成を詳細に示す図。
【図37】HBDの構成の第1例を示す図。
【図38】HBDの構成の第2例を示す図。
【図39】図37又は図38の遅延ユニットbdiの構成を示す図。
【図40】図39の回路をシンボル化して示す図。
【図41】1/3BDの構成の第1例を示す図。
【図42】1/3BDの構成の第2例を示す図。
【図43】m/nBDの構成を示す図。
【図44】図43のブロックB(i)の構成を示す図。
【図45】本発明の原理について示す図。
【図46】本発明の原理について示す図。
【図47】本発明のメモリシステムの構成を示す図。
【図48】従来のシステムの主要部を示す図。
【図49】図48のシステムの外部クロックと内部クロックのスキュ−を示す回路図。
【図50】本発明の基礎となる同期システムの原理を示す図。
【図51】図50の原理を達成するための回路の一例を示す図。
【図52】図51の回路における遅延量Δf,Δbの決定の様子を示す図。
【符号の説明】
11 :メモリ、 12 :CPU、 13 :バッファ、 14 :入力回路、 15 :出力回路、 16 :書き込み・読み出し回路、 17:メモリセルアレイ、 18 :デ−タバス、 21 :入力端子、 22 :入力バッファ、 23、25−1〜25−n、29−1〜29−n,30 :遅延回路、24 :前進遅延アレイ、 26 :ミラ−制御回路、 27−1〜27−n:制御素子、 28 :後進遅延アレイ、 31 :クロック同期遅延制御回路、 32、33−1〜33−n、34,57,62 :遅延回路、 41〜46,59,63,66〜68,70 :インバ−タ、 47 :状態保持部、 48,49,64 :NAND回路、 51,52 :Pチャネル型MOSトランジスタ、 53〜56 :Nチャネル型MOSトランジスタ、 58,69,71,72 :NOR回路、 60,61 :制御パルス発生回路、 73:NAND回路、 74 :遅延回路、 75 :インバ−タ、 81〜84 :回路パタ−ン。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a control circuit that uses a delay array to control the timing of an external clock generated by a CPU and the timing of an internal clock used in a memory (IC).
[0002]
[Prior art]
An increasing number of recent memories achieve high-speed data transfer by transferring data in synchronization with a clock. For example, in a clock synchronous DRAM such as a synchronous DRAM, data is exchanged with blocks such as a CPU in synchronization with clocks of 100 MHz and 250 MHz, respectively.
[0003]
In a system in which data is exchanged between blocks in synchronization with such a clock, there is a slight timing between an external clock given to a memory from a block such as a CPU and an internal clock generated inside the memory. There is a problem that the deviation, that is, the skew occurs.
[0004]
For example, when a 100 MHz external clock is used, one cycle is 10 nsec (nanoseconds). Therefore, if a deviation of 1 nsec occurs between the external clock and the internal clock, this deviation corresponds to 10% of one cycle time. This hinders high-speed synchronization control.
[0005]
In particular, when data is transferred from the memory to another block, the skew of the external clock and the internal clock directly affects the data output time of the memory and delays the data transfer time.
[0006]
FIG. 48 shows an example of a system that performs synchronous control using a high-speed clock. FIG. 49 shows the relationship between the external clock and the internal clock in the system of FIG.
[0007]
For example, an external clock CK generated by the CPU 12 is input to the memory (clock synchronous DRAM such as a synchronous DRAM) 11. The external clock CK is converted into the internal clock CLK by the buffer 13, and the internal clock CLK is supplied to the input circuit 14, the output circuit 15, the write / read circuit 16, and the like, and controls the input / output operation of the data.
[0008]
Since the internal clock CLK is generated by the buffer 13 using the external clock CK as a trigger, there is necessarily a skew between the external clock CK and the internal clock CLK.
[0009]
Since the internal clock CLK controls the internal operation of the memory 11, when data is exchanged between the memory 11 and another block (CPU 12 or the like), the external clock CK and the internal clock CLK It is necessary to set the timing in consideration of the skew between.
[0010]
However, as described above, the timing setting in consideration of the skew delays the data transfer rate.
[0011]
Therefore, recently, development of a technique for eliminating this skew has been promoted. Hereinafter, two examples of the technology at present will be described.
[0012]
The first is a technique using a PLL (phase lock loop). In this technique, the width of a skew is detected by a PLL, and this skew is made zero. In addition, since this technique applies feedback to the internal clock, it is effective when the external clock supplied to the memory always has a constant frequency and is not interrupted.
[0013]
The second is a technique for configuring a circuit that generates a corrected internal clock that matches an external clock based on a predetermined principle. This technology is very promising because it can immediately match the external clock and the internal clock even if the external clock frequency changes or the external clock is interrupted. Yes.
[0014]
The latter technique will be described in detail below.
[0015]
First, the principle of this technique will be described with reference to FIG.
[0016]
The skew width (delay amount) of the external clock CK and the internal clock CLK is D1, and the period of the external clock CK and the internal clock CLK is T.
[0017]
Here, the delayed imitation pulse FCL is generated when the time A elapses from the time when the first pulse of the internal clock CLK is generated (when it rises). In this case, the time from the time when the delayed imitation pulse FCL is generated to the time when the second pulse of the internal clock CLK is generated is Δ.
[0018]
Also, this time Δ is copied so that the delayed imitation pulse RCL is generated when the time (2 × Δ) has elapsed since the generation of the delayed imitation pulse FCL. Then, the time when the time A has elapsed from the time when the delayed imitation pulse RCL is generated coincides with the time when the third pulse of the internal clock CLK is generated.
[0019]
However, (A + W) <T. W is the width of the delayed mimic pulses FCL, RCL.
[0020]
Here, assuming that the time from the time when the delayed imitation pulse RCL is generated to the time when the third pulse of the external clock CK is generated is D2, if the delay imitation pulse RCL is delayed by the time D2, the external clock CK A corrected internal clock CK ′ matching the timing is obtained.
[0021]
That is, if a delay circuit for generating delay amounts A, (2 × Δ), D2 is formed and the internal clock CLK is delayed by time A + (2 × Δ) + D2, a corrected internal clock that matches the timing of the external clock CK is obtained. CK 'is obtained.
[0022]
As apparent from FIG. 50, since the relationship A = D1 + D2 exists, the delay amount D2 can be obtained from A and D1.
[0023]
Further, since it is assumed that the period T of the external clock CK and the internal clock CLK is not constant, the time Δ does not have a constant value. Therefore, the delay circuit that generates time (2 × Δ) must be configured to be able to generate time (2 × Δ) accurately according to the period T of the external clock CK and the internal clock CLK. .
[0024]
According to such a principle, the first pulse of the corrected internal clock can always coincide with the third pulse of the external clock CK regardless of the period T of the external clock CK and the internal clock CLK. Further, after the third pulse of the external clock CK, the timing of the external clock CK coincides with the timing of the corrected internal clock CLK. Therefore, even when the external clock CK is interrupted, this immediately Correspondingly, the external clock and the internal clock can be matched.
[0025]
Next, a circuit configuration for matching the timings of the external clock and the internal clock based on the above principle will be examined.
[0026]
FIG. 51 shows an example of the circuit configuration.
[0027]
The external clock CK is input to the input buffer 22 via the input terminal 21. The internal clock CLK is output from the input buffer 22. Here, since the input buffer 22 has the delay amount D1, a skew corresponding to the delay amount D1 is generated between the external clock CK and the internal clock CLK.
[0028]
The internal clock CLK is input to the forward delay array 24 via the delay circuit 23 having the delay amount A. The forward delay array 24 includes a plurality of delay circuits 25-1, 25-2 to 25-n having a delay amount d.
[0029]
The mirror control circuit 26 has a number of control elements 27-1, 27-2, to 27-n corresponding to the number of delay circuits 25-1, 25-2 to 25-n. The mirror control circuit 26 has a function of determining the delay amount Δf in the forward delay array 24 and making the delay amount Δb in the backward delay array 28 equal to the delay amount Δf.
[0030]
Similar to the forward delay array 24, the backward delay array 28 is composed of a plurality of delay circuits 29-1, 29-2, to 29-n having a delay amount d.
[0031]
The clock output from the backward delay array 28 passes through the delay circuit 30 having the delay amount D2, and becomes a corrected internal clock CK ′ having a timing that matches the timing of the external clock CK.
[0032]
In the circuit having the above configuration, the configuration of the forward delay array 24 and the configuration of the backward delay array 28 are the same, and the delay amount Δf of the forward pulse is copied as it is to obtain the delay amount Δb of the backward pulse. 2Δ (Δf = Δb = Δ ).
[0033]
However, the circuit having the above configuration has a drawback that it is difficult to completely match the forward pulse delay amount Δf and the reverse pulse delay amount Δb due to the forward pulse having a constant pulse width. .
[0034]
This drawback will be described.
[0035]
FIG. 52 shows the circuit state of FIG. 51 at time t in FIG. 50 (that is, when the delay amounts Δf and Δb are determined).
[0036]
Here, a state in which the forward pulse is input to the delay circuit of the forward delay array is an active state (indicated by hatching), and a state in which the forward pulse is not input to the delay circuit of the forward delay array is an inactive state. . In this case, for example, when a forward pulse is input to the delay circuit 25-k, the delay circuit 25-k is activated and the other delay circuits are deactivated.
[0037]
When a pulse of the internal clock CLK is generated after the forward pulse is input to the delay circuit 25-k, the delay circuit 29-k of the backward delay array is activated, and the delay circuit 29-k generates a backward pulse.
[0038]
That is, since the forward pulse and the pulse of the internal clock CLK are input to the kth control element 27-k from the head of the delay array, the control element 27-k activates the delay circuit 29-k of the backward delay array. Then, the backward pulse is generated from the delay circuit 29-k.
[0039]
However, in this case, the position from the head of the delay circuit 29-k to which the forward pulse is input and the position from the head of the delay circuit 29-k that generates the backward pulse are the same.
[0040]
Accordingly, the forward pulse front F1 for determining the delay amount Δf and the reverse pulse front F2 for determining the delay amount Δb inevitably have a delay amount equivalent to one stage of the delay circuit (for example, the pulse width W of the forward pulse). ) Will be different. That is, the circuit having the configuration of FIG. 51 has a disadvantage that the delay amount Δb is at most shorter than the delay amount Δf by the delay amount of one stage of the delay circuit.
[0041]
[Problems to be solved by the invention]
As described above, conventionally, in a technique for configuring a circuit that generates a corrected internal clock that matches an external clock based on a predetermined principle, a circuit that accurately copies a predetermined delay amount cannot be configured. Therefore, it is difficult to make the corrected internal clock completely coincide with the external clock.
[0042]
The present invention has been made to solve the above-described drawbacks, and an object of the present invention is to provide a predetermined delay amount in a technique for constructing a circuit that generates a corrected internal clock that matches an external clock based on a predetermined principle. A circuit that can be copied accurately is constructed, and the corrected internal clock is perfectly matched with the external clock.
[0043]
Another object of the present invention is to provide a circuit that generates a corrected internal clock having a fixed phase relationship with respect to the external clock, that is, a phase delayed by a predetermined amount with respect to the external clock, based on a predetermined principle. It is to be.
[0044]
[Means for Solving the Problems]
  The memory system of the present invention includes:A memory that outputs data based on an internal clock generated from an external clock, a dummy memory having an input capacity of the external clock equal to the memory, the external clock, and a return clock from the dummy memory A controller for determining a timing of receiving data output from the memory, and a wiring length of the external clock from the controller to the dummy memory is equal to a wiring length of the external clock from the controller to the memory The wiring length of the return clock from the dummy memory to the controller is equal to the data bus length from the memory to the controller.
[0045]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, a clock control circuit of the present invention will be described in detail with reference to the drawings.
[0046]
FIG. 1 shows an example of a synchronous control system including a memory block having a clock control circuit of the present invention.
[0047]
For example, an external clock CK generated by the CPU 12 is input to the memory (clock synchronous DRAM such as a synchronous DRAM) 11. The external clock CK is converted into the internal clock CLK by the buffer 13. The internal clock CLK is supplied to the write / read circuit 16 to control the data write / read operation.
[0048]
Since the internal clock CLK is generated by the buffer 13 using the external clock CK as a trigger, there is necessarily a skew between the external clock CK and the internal clock CLK.
[0049]
Based on the internal clock CLK, the clock control circuit 31 generates a corrected internal clock CK ′ that matches the timing of the external clock. The corrected internal clock CK ′ is supplied to the input circuit 14 and the output circuit 15, and controls the input / output operation of the data.
[0050]
FIG. 2 shows a configuration of the clock control circuit 31 in the memory 11 of FIG.
[0051]
The external clock CK is given to the input terminal 30 of the memory. The external clock CK is input to the input buffer 13 having a delay amount D1. The input buffer 13 outputs an internal clock CLK having a D1 skew with respect to the external clock CK. The internal clock CLK is input to a delay circuit 32 having a delay amount A, and the delay circuit 32 outputs a forward pulse FCL1 (delay imitation pulse CL).
[0052]
The internal clock CLK and the inverted internal clock / CLK obtained by inverting the internal clock CLK by the inverter 35 are input to n delay units 33-1, 33-2,... 33-n, respectively.
[0053]
The n delay units 33-1, 33-2,... 33-n are connected in series with each other. A forward pulse FCL1 is input to the first-stage delay unit 33-1 and a backward pulse RCL1 is output from the first-stage delay unit 33-1.
[0054]
The backward pulse RCL1 becomes the corrected internal clock CK ′ by passing through the delay circuit 34 having the delay amount D2.
[0055]
FIG. 3 shows the configuration of the delay unit of FIG. 2 in detail.
[0056]
The delay unit 33-i includes three parts: a forward pulse delay circuit, a state holding circuit, and a reverse pulse delay circuit.
[0057]
The forward pulse delay circuit is composed of three inverters 41-43. The inverters 41 and 42 are connected in series, and the inverter 41 receives the output signal FCLi of the preceding delay unit, and the inverter 42 outputs the output signal FCLi + 1 to the subsequent delay unit. The operation of the inverter (clocked inverter) 41 is controlled by the control pulse / P. For example, when the control pulse / P is “1”, the inverter 41 is activated.
[0058]
The output terminal of the inverter 43 is connected to the input terminal of the inverter 42, and a potential of “0” (for example, ground potential) is always applied to the input terminal of the inverter 43. The operation of the inverter (clocked inverter) 43 is controlled by the control pulse P. For example, when the control pulse P is “1”, the inverter 43 is activated.
[0059]
The reverse pulse delay circuit is composed of three inverters 44-46. The inverters 44 and 45 are connected in series, and the inverter 44 receives the output signal RCLi + 1 of the subsequent delay unit or the internal clock CLK, and the inverter 45 receives the output signal RCLi to the previous delay unit. Output. The operation of the inverter (clocked inverter) 44 is controlled by the control pulse Q. For example, the inverter 44 is activated only when the control pulse Q is “1”.
[0060]
The output terminal of the inverter 46 is connected to the input terminal of the inverter 45, and the internal clock CLK is always input to the input terminal of the inverter 46. The operation of the inverter (clocked inverter) 46 is controlled by the control pulse / Q. For example, when the control pulse / Q is “1”, the inverter 46 is activated.
[0061]
The state holding circuit includes a state holding unit 47 and NAND circuits 48 and 49. The NAND circuit 48 receives the output signal FCLi of the preceding delay unit and the inverted internal clock / CLK, and the NAND circuit 49 receives the output signal of the inverter 45 and the internal clock CLK.
[0062]
The output signal of the NAND circuit 48 becomes the set input / S of the state holding unit 47, and the output signal of the NAND circuit 49 becomes the reset input / R of the state holding unit 47. Therefore, when the output signal (set input) / S of the NAND circuit 48 becomes “0”, the state holding unit 47 is set, and the output signal (reset input) / R of the NAND circuit 49 becomes “0”. When this happens, the state holding unit 47 enters a reset state.
[0063]
The state holding unit 47 is also configured to output control pulses Q and / Q. The control pulse Q is “1” when the state holding unit 47 is in the set state, and the control pulse / Q is “1” when the state holding unit 47 is in the reset state.
[0064]
FIG. 4 shows an example of the configuration of the state holding unit of FIG.
[0065]
The P-channel MOS transistor 51 and the N-channel MOS transistors 53 and 54 are connected in series with each other, and a high potential VDD and a low potential VSS are applied to both ends thereof.
[0066]
Similarly, the P-channel MOS transistor 52 and the N-channel MOS transistors 55 and 56 are connected in series with each other, and a high potential VDD and a low potential VSS are applied to both ends thereof.
[0067]
The set input / S is input to the gates of the MOS transistors 51 and 54, and the reset input / R is input to the gates of the MOS transistors 52 and 56.
[0068]
The gate of the MOS transistor 53 is connected to the drain of the MOS transistor 52, and the gate of the MOS transistor 55 is connected to the drain of the MOS transistor 51.
[0069]
The control pulse Q is output from the drain of the MOS transistor 51, and the control pulse / Q is output from the drain of the MOS transistor 52.
[0070]
FIG. 5 shows an example of the configuration of the control pulse P, / P generation circuit.
[0071]
The internal clock CLK is input to one input terminal of the NOR circuit 58 via the delay circuit 57 having the delay amount A ′, and the inverted internal clock / CLK is input to the other input terminal of the NOR circuit 58. The NOR circuit 58 outputs a control pulse P. Further, the control pulse P becomes the control pulse / P through the inverter 59.
[0072]
The pulse widths of the control pulses P and / P are determined by the delay amount A ′ of the delay circuit 57. However, the delay amount A ′ is set smaller than the delay amount A of the delay circuit 32 that outputs the delay imitation pulse. This is because it is necessary to initialize the forward delay circuits of all the delay units before the forward pulse is input to the first delay unit.
[0073]
Next, the principle of the present invention will be confirmed with reference to FIG.
[0074]
The skew width (delay amount) of the external clock CK and the internal clock CLK is D1, and the period of the external clock CK and the internal clock CLK is T.
[0075]
The delayed imitation pulse FCL1 is generated when the time A elapses from the time when the first pulse of the internal clock CLK is generated (when it rises). In this case, the time from the time when the delay imitation pulse FCL1 is generated to the time when the second pulse of the internal clock CLK is generated is Δf.
[0076]
Further, the time Δf is copied to make Δb, and when the time 2 × Δ (where Δf = Δb = Δ) elapses from the time when the delay imitation pulse FCL1 is generated, the delay imitation pulse RCL1 is generated. To. Then, the time when the time A elapses from the time when the delayed imitation pulse RCL1 is generated coincides with the time when the third pulse of the internal clock CLK is generated. However, (A + W) <T. W is the width of the delayed mimic pulses FCL, RCL.
[0077]
If the time from the time when the delayed imitation pulse RCL1 is generated to the time when the third pulse of the external clock CK is generated is D2, if the delay imitation pulse RCL1 is delayed by the time D2, it matches the timing of the external clock CK. The corrected internal clock CK ′ is obtained.
[0078]
That is, if a delay circuit for generating delay amounts A, (2 × Δ), D2 is formed and the internal clock CLK is delayed by time A + (2 × Δ) + D2, a corrected internal clock that matches the timing of the external clock CK is obtained. CK 'is obtained.
[0079]
Since the relationship A = D1 + D2 exists, the delay amount D2 can be obtained from A and D1. The control pulse P is for initializing the forward delay circuits of all the delay units before the forward pulse is input to the first delay unit.
[0080]
Next, the operation of the clock control circuit of FIGS. 2 to 5 will be described.
[0081]
1. State at timing a of the timing chart of FIG.
As shown in FIG. 8, the internal clock CLK becomes “1” (rises). Accordingly, the output signals of the control pulse generation circuit 60 are P = “1” and / P = “0”, and control pulses P and / P having a pulse width determined by the delay amount A ′ are generated. Input to the units 33-1, 33-2, to 33-n.
[0082]
In each of the delay units 33-1 and 33-2 to 33-n, P = “1” and / P = “0”, so that the inverter 43 is activated and the inverter 41 is inactivated. It becomes a state. Accordingly, the input / output signals FCL1 to FCLn of the forward pulse delay circuits of all the delay units 33-1, 33-2, to 33-n are all “0”, and the line for transmitting the forward pulse is initialized.
[0083]
Thereafter, in each of the delay units 33-1 and 33-2 to 33-n, when P = “0” and / P = “1”, the inverter 41 is activated and the inverter 43 is inactive. Become active. That is, the forward pulse delay circuits of the delay units 33-1, 33-2, to 33-n are electrically connected to each other, and the input terminal of the forward pulse delay circuit of the delay unit 33-1 is connected to the delay circuit 32. Electrically connected and ready for forward pulse transmission.
[0084]
Note that the pulse widths of the control pulses P and / P (period in which P is “1” and / P is “0”) must be shorter than the period determined by the delay amount A of the delay circuit 32. is there. Before the forward pulse (delay mimic pulse) FCL1 is input to the delay unit 33-1, it is necessary to initialize the forward pulse transmission lines of all the delay units 33-1, 33-2 to 33-n. Because there is.
[0085]
2. State at timing b of the timing chart of FIG.
As shown in FIG. 9, the internal clock CLK becomes “0” and the inverted internal clock / CLK becomes “1”. Since the internal clock CLK and the inverted internal clock / CLK are common to all the delay units 33-1, 33-2, to 33-n, all the delay units 33-1, 33-2, to 33- One input of the n NAND circuit 48 is “1”.
[0086]
On the other hand, the state holding unit 47 of each of the delay units 33-1, 33-2, to 33-n is in the reset state R, and the control pulse output from the state holding unit 47 is Q = “0”, / Q = “1”.
[0087]
Accordingly, the inverter 46 of each delay unit 33-1, 33-2,..., 33-n is activated, the inverter 44 is deactivated, and all the delay units 33-1, 33-2,. The input / output signals RCL1 to RCLn of the backward pulse delay circuit 33-n are all “0”.
[0088]
3. State at time point c in the timing chart of FIG.
As shown in FIG. 10, a forward pulse (delay mimic pulse) FCL1 is output from the delay circuit (delay amount A) 32 and input to the delay unit 33-1. Note that the sum of the pulse width of the forward pulse (period of “1”) and the period determined by the delay amount A needs to be set to be shorter than the cycle T of the internal clock CLK.
[0089]
When the forward pulse FCL1 (= “1”) is input to the delay unit 33-1, the other input of the NAND circuit 48 of the delay unit 33-1 becomes “1”, and the output (set input / S ) Becomes “0”. Accordingly, the state of the state holding unit 47 changes to the set state S.
[0090]
In the delay unit 33-1 in which the state holding unit 47 is in the set state S, the control pulses output from the state holding unit 47 are Q = “1” and / Q = “0”. Becomes active and the inverter 46 becomes inactive.
[0091]
4). State at time d and e of the timing chart of FIG.
As shown in FIG. 11, the forward pulse advances while sequentially passing through the delay units 33-1, 33-2 to 33 -n.
[0092]
In the delay unit 33-1 in which the forward pulse has passed, the other input of the NAND circuit 48 becomes “0” again, and the output (set input / S) of the NAND circuit 48 becomes “1”. The state is maintained in the set state S.
[0093]
Similarly, when the forward pulse is input to the delay unit 33-2, the state holding unit 47 of the delay unit 33-2 changes to the set state S. Even if the forward pulse passes through the delay unit 33-2, the state holding unit 47 of the delay unit 33-2 maintains the set state S.
[0094]
When the internal clock CLK becomes “1” again and the inverted internal clock / CLK becomes “0”, each of the delay units 33-1 and 33-2 to 33-n includes the internal clock CLK and the inverted internal clock / CLK. CLK is input.
[0095]
Therefore, one input of the NAND circuit 48 of all the delay units 33-1, 33-2,..., 33-n is “0”, and one input of the NAND circuit 49 is “1”.
[0096]
In the delay units 33-1 and 33-2 in which the state holding unit 47 is in the set state S, since Q = “1” and the inverter 44 is in the active state, the output signal RCL1, RCL2 maintains the state of “0”, but in the delay units 33-3 to 33-n in which the state holding unit 47 is in the reset state R, / Q = “1” and the inverter 46 is in the active state. Therefore, the output signals RCL3 to RCLn of the backward pulse delay circuit are “1”.
[0097]
Thereby, the front edge F2 of the backward pulse is formed.
[0098]
Here, the front edge F2 of the backward pulse indicates that the delay unit 33- of the first stage among the delay units 33-3 to 33-n whose state holding unit is in the reset state R when the internal clock CLK becomes "1". It is formed by a delay unit 33-3 located on one side.
[0099]
At this time, since the front edge F1 of the forward pulse is considered to be located immediately before the delay unit 33-3, the front edge F1 of the forward pulse and the front edge F2 of the backward pulse coincide.
[0100]
Accordingly, the time Δf from when the forward pulse (delayed imitation pulse) FCL1 is generated until the internal clock CLK pulse is generated, and the backward movement after the internal clock CLK pulse is generated (after the backward pulse is generated). The time Δb until the pulse RCL1 is output and input to the delay circuit 34 becomes equal.
[0101]
Thereafter, as shown in FIG. 12, the output signal of the control pulse generation circuit 60 becomes P = “1”, / P = “0”, and the control pulse P having a pulse width determined by the delay amount A ′, / P is generated and input to each delay unit 33-1, 33-2, to 33-n.
[0102]
In each of the delay units 33-1 and 33-2 to 33-n, P = “1” and / P = “0”, so that the inverter 43 is activated and the inverter 41 is inactivated. It becomes a state. Accordingly, the input / output signals FCL1 to FCLn of the forward pulse delay circuits of all the delay units 33-1 and 33-2 to 33-n are all “0”, the forward pulse disappears, and the forward pulse is transmitted. Is initialized.
[0103]
On the other hand, when the front of the backward pulse (= “1”) is input to the delay unit 33-1, the two inputs of the NAND circuit 49 are both “1” in the delay unit 33-2. Output (reset input / R) becomes “0”, and the state holding unit 47 changes to the reset state R (initialized).
[0104]
Initialization (setting to the reset state R) of the state holding unit 47 of each delay unit is performed only during a period in which the internal clock CLK is “1”. That is, when the backward clock (= “1”) is input when the internal clock CLK is “1”, the two inputs of the NAND circuit 49 both become “1”.
[0105]
Since the initialization of the state holding unit 47 of each delay unit is performed only during the period when the internal clock CLK is “1”, the state holding units 47 of all delay units can be initialized, that is, set to the reset state R. There are cases where this is not possible, but there is no particular problem. This is because it is clear that the next forward pulse passes through the delay unit 33-1 which is not initialized.
[0106]
5). State at time f of timing chart in FIG.
As shown in FIG. 13, the internal clock CLK becomes “0” and the inverted internal clock / CLK becomes “1”. The internal clock CLK and the inverted internal clock / CLK are input to all the delay units 33-1, 33-2, to 33-n.
[0107]
In each of the delay units 33-1 and 33-2 to 33-n, P = “0” and / P = “1”, so that the inverter 41 is activated and the inverter 43 is inactive. Become active. That is, the forward pulse delay circuits of the delay units 33-1, 33-2, to 33-n are electrically connected to each other, and the input terminal of the forward pulse delay circuit of the delay unit 33-1 is connected to the delay circuit 32. Electrically connected and ready for forward pulse transmission.
[0108]
On the other hand, in the delay units 33-2 to 33-n in which the state holding unit 47 is in the reset state R, / Q = "1" and the inverter 46 is in the active state. Therefore, when the internal clock CLK becomes “0”, the output signals RCL2 to RCLn of the delay units 33-2 to 33-n in the state holding unit 47 in the reset state R become “0”, and the back edge of the backward pulse is formed. Is done.
[0109]
Therefore, the pulse width of the backward pulse is the same as or shorter than the period corresponding to the delay amount for one stage of the delay unit (delay amount for the two inverter stages).
[0110]
If the pulse width of the backward pulse is desired to be longer than the delay amount for one stage of the delay unit, as shown in FIG. 17, the other input of the NAND circuit 49 of the delay circuit 33-n is connected to the preceding delay circuit. The output RCLn-1 may be 33- (n-1). In this case, the maximum pulse width of the backward pulse is a period corresponding to a delay amount corresponding to two delay units (a delay amount corresponding to four inverter stages).
[0111]
In the delay unit 33-1 in which the state holding unit 47 is in the set state S, Q = “1” and the inverter 44 is in the active state. Therefore, the preparation for guiding the backward pulse to the delay circuit 34 via the delay unit 33-1 is completed.
[0112]
6). State at timing g of the timing chart in FIG.
As shown in FIG. 14, a forward pulse (delay mimic pulse) FCL1 is output from the delay circuit (delay amount A) 32 and input to the delay unit 33-1. When the forward pulse FCL1 (= “1”) is input to the delay unit 33-1, the other input of the NAND circuit 48 of the delay unit 33-1 becomes “1”, and the output (set input / S ) Becomes “0”.
[0113]
Therefore, when the state holding unit 47 of the delay unit 33-1 is in the set state, the state holding unit 47 maintains the set state S, and when the state holding unit 47 is in the reset state R, the state holding unit 47 is , Change to the set state S.
[0114]
In the delay unit 33-1 in which the state holding unit 47 is in the set state S, the control pulses output from the state holding unit 47 are Q = “1” and / Q = “0”. Becomes active and the inverter 46 becomes inactive.
[0115]
On the other hand, the backward pulse is input to the first-stage delay unit 33-1, receives the delay of two inverter stages, and is output from the first-stage delay unit 33-1.
[0116]
7). State at time point h in the timing chart of FIG.
As shown in FIG. 15, the forward pulse advances while sequentially passing through the delay units 33-1, 33-2 to 33 -n.
[0117]
In the delay unit 33-1 in which the forward pulse has passed, the other input of the NAND circuit 48 becomes “0” again, and the output (set input / S) of the NAND circuit 48 becomes “1”. The state is maintained in the set state S.
[0118]
Similarly, when the forward pulse is input to the delay unit 33-2, the state holding unit 47 of the delay unit 33-2 changes to the set state S. Even if the forward pulse passes through the delay unit 33-2, the state holding unit 47 of the delay unit 33-2 maintains the set state S.
[0119]
On the other hand, the backward pulse is input to the delay circuit 34. The delay circuit 34 delays the backward pulse by the delay amount D2, and generates a pulse of the corrected internal clock CK ′. The timing of the pulse of the corrected internal clock CK ′ coincides with the timing of the pulse of the external clock CK.
[0120]
8). State at timing i of the timing chart of FIG.
As shown in FIG. 16, when the internal clock CLK becomes “1” again and the inverted internal clock / CLK becomes “0”, each delay unit 33-1, 33-2,. Clock CLK and inverted internal clock / CLK are input.
[0121]
Therefore, one input of the NAND circuit 48 of all the delay units 33-1, 33-2,..., 33-n is “0”, and one input of the NAND circuit 49 is “1”.
[0122]
In the delay units 33-1 and 33-2 in which the state holding unit 47 is in the set state S, since Q = “1” and the inverter 44 is in the active state, the output signal RCL1, RCL2 maintains the state of “0”, but in the delay units 33-3 to 33-n in which the state holding unit 47 is in the reset state R, / Q = “1” and the inverter 46 is in the active state. Therefore, the output signals RCL3 to RCLn of the backward pulse delay circuit are “1”.
[0123]
As a result, a reverse pulse front F1 is formed.
[0124]
Thereafter, the operations of FIGS. 12 to 16 are repeated.
[0125]
According to the clock control circuit having the above configuration, each delay unit has a state holding unit, so that the time Δf from when the delayed imitation pulse (forward pulse) FCL1 is generated to when the internal clock CLK is generated can be accurately determined. By copying, Δb is formed, and the backward pulse RCL1 can be input to the delay circuit 34 having the delay amount D2 after time Δb (= Δf) after the pulse of the internal clock CLK is generated.
[0126]
Therefore, it becomes possible to generate the corrected internal clock CK ′ that is accurately synchronized with the external clock CK, and it is possible to achieve data transfer using a high-speed clock. The present invention is effective for a memory such as a synchronous DRAM in which the internal clock may be temporarily interrupted and data is transmitted and received in synchronization with a high-speed clock whose frequency changes.
[0127]
FIG. 18 shows a modification of the clock control circuit of FIG.
[0128]
This clock control circuit is different from the circuit of FIG. 2 in that a predetermined function is added to the delay circuit 34, and the other configuration is the same as that of the circuit of FIG.
[0129]
That is, in this embodiment, when the cycle T of the external clock CK or the internal clock CLK is longer than a predetermined value, the process of matching the timing of the internal clock CLK with the timing of the external clock CK is not performed, and The output circuit is controlled by an internal clock CLK having a fixed skew.
[0130]
This is because when the frequency of the external clock CK is relatively low (the period is long), the skew itself is not a problem. This is also because the number of delay units constituting the clock control circuit is not so large due to the relationship with the occupied area on the memory chip.
[0131]
The configuration of the circuit according to this embodiment will be briefly described below.
[0132]
The external clock CK is given to the input terminal 30 of the memory. The external clock CK is input to the input buffer 13 having a delay amount D1. The input buffer 13 outputs an internal clock CLK having a D1 skew with respect to the external clock CK. The internal clock CLK is input to a delay circuit 32 having a delay amount A, and the delay circuit 32 outputs a forward pulse FCL1 (delay imitation pulse CL).
[0133]
The internal clock CLK and the inverted internal clock / CLK obtained by inverting the internal clock CLK by the inverter 35 are input to n delay units 33-1, 33-2,... 33-n, respectively.
[0134]
The n delay units 33-1, 33-2,... 33-n are connected in series with each other. A forward pulse FCL1 is input to the first-stage delay unit 33-1 and a backward pulse RCL1 is output from the first-stage delay unit 33-1.
[0135]
When the period T of the external clock CK is less than a predetermined value (high-speed clock), the backward pulse RCL1 becomes the corrected internal clock CK ′ through the delay circuit 34 having the delay amount D2. The timing of the corrected internal clock CK ′ coincides with the timing of the external clock CK.
[0136]
When the period T of the external clock CK is equal to or greater than a predetermined value, the backward pulse RCL1 is input to the delay circuit 34 having the delay amount D2, but is not output from the delay circuit 34. Instead, the internal clock CLK is output from the delay circuit 34. In this case, of course, the internal clock CLK has a fixed skew with respect to the external clock CK, but this skew is of an amount that does not cause much problem with respect to the period of the external clock CK. Yes.
[0137]
Based on the output LST of the forward pulse delay circuit of the last delay unit 33-n and the output RCL1 of the reverse pulse delay circuit of the first delay unit 33-1, the control pulse generation circuit 61 controls the control pulses L, / L. Is output. The control pulses L and / L determine whether to output the corrected internal clock CK ′ or the internal clock CLK.
[0138]
FIG. 19 shows the configuration of the delay circuit 34 of FIG. 18 in detail.
[0139]
The output RCL1 of the delay unit 33-1 is input to one input terminal of the NAND circuit 64 via the delay circuit 62 and the inverter 63 and directly input to the other input terminal of the NAND circuit 64. Yes. The output signal of the NAND circuit 64 passes through the three inverters 65 to 67 and becomes the corrected internal clock CK ′.
[0140]
The inverter 66 is a clocked inverter that is activated when the control clock / L is "1". That is, when the control clock / L is “1”, the backward pulse is delayed by a fixed time to generate the corrected internal clock CK ′, and when the control clock / L is “0”, the backward pulse is cut off.
[0141]
The internal clock CLK is input to the inverter 67 of the delay circuit 34 via the inverter 68. The inverter 68 is a clocked inverter that is activated when the control clock L is “1”. That is, when the control clock L is “1”, the internal clock CLK is guided to the inverter 67, and when the control clock L is “0”, the internal clock CLK is cut off.
[0142]
FIG. 20 shows a configuration of the control pulse generation circuit 61 of FIG.
[0143]
The output LST of the forward pulse delay circuit of the final delay unit 33-n is input to one input terminal of the NOR circuit 69, and the output of the NOR circuit 72 is input to the other input terminal. The output of the NOR circuit 69 is input to one input terminal of the NOR circuit 72, and the output of the NOR circuit 71 is input to the other input terminal.
[0144]
The NOR circuit 71 is obtained by inverting the output LST of the forward pulse delay circuit of the delay unit 33-n at the final stage and the output RCL1 of the reverse pulse delay circuit of the first delay unit 33-1 by the inverter 70, respectively. Have been entered.
[0145]
Further, the output of the NOR circuit 69 and the output obtained by delaying the output by the delay circuit 74 by the delay amount D3 are input to the NAND circuit 73, respectively. The output of the NAND circuit 73 is the control clock L, and the control clock L is obtained by inverting the control clock L with the inverter 75.
[0146]
The NAND circuit 73 and the delay circuit 74 do not delay the rise of the control clock L with respect to the output of the NOR circuit 69, and delay only the fall of the control clock L by the delay amount D3. It is for surely extinguishing and initializing.
[0147]
Next, the principle of the clock control circuit of FIGS. 18 to 20 will be briefly described with reference to FIG.
[0148]
FIG. 21 shows that the period (cycle time) of the external clock CK becomes relatively long, and the maximum delay amount maxΔ by all delay units is the time from the time when the delayed imitation pulse is generated to the time when the pulse of the internal clock CLK is generated. The timing chart in the case where it becomes shorter than Δf is shown.
[0149]
The skew width (delay amount) between the external clock CK and the internal clock CLK is D1, and the cycle of the external clock CK is T.
[0150]
The delayed imitation pulse FCL1 is generated when the time A elapses from the time when the first pulse of the internal clock CLK is generated (when it rises). In this case, the time from the time when the delay imitation pulse FCL1 is generated to the time when the second pulse of the internal clock CLK is generated is Δf.
[0151]
However, the maximum delay amount that can be formed by all delay units is maxΔ (<Δf). That is, since the maximum delay amount that can be copied by the clock control circuit of the present invention is maxΔ, the delay imitation pulse RCL1 is generated when the time maxΔ has elapsed from the time when the second pulse of the internal clock CLK is generated. As a result, the delay amount Δf cannot be copied accurately.
[0152]
Therefore, even if the corrected internal clock CK ′ is generated when the time D2 has elapsed from the time when the delayed imitation pulse RCL1 is generated, the timing of the corrected internal clock CK ′ is shifted from the timing of the external clock CK. In addition, this shift may be larger than the skew that originally existed, which rather degrades the performance of the memory.
[0153]
This embodiment is conceived to avoid such a phenomenon. In the embodiment of FIG. 2, when A is the time from the generation of the internal clock CLK pulse until the delay imitation pulse is generated, and the maximum delay amount by all delay units is maxΔ, A + maxΔ ≦ T However, in this embodiment, such a condition is not required.
[0154]
Next, the operation of the clock control circuit of FIGS. 18 to 20 will be described with reference to the timing chart of FIG.
[0155]
Since the operation when A + maxΔ ≦ T is the same as the timing chart shown in FIG. 7, only the operation when A + maxΔ> T will be described below.
[0156]
When the internal clock CLK becomes “1”, P = “1”, / P = “0”, and the input / output signal FCL1 of the forward pulse delay circuit of all the delay units 33-1, 33-2, to 33-n. ... FCLn are all "0", and the line for transmitting the forward pulse is initialized.
[0157]
Thereafter, when P = “0” and / P = “1”, the forward pulse delay circuits of the delay units 33-1, 33-2, to 33-n are electrically connected to each other, and the delay unit The input terminal of the forward pulse delay circuit 33-1 is electrically connected to the delay circuit 32, and preparation for transmission of the forward pulse is completed.
[0158]
After the internal clock CLK becomes “0” and the inverted internal clock / CLK becomes “1”, the forward pulse (delay imitation pulse) FCL1 is output from the delay circuit (delay amount A) 32, and is supplied to the delay unit 33-1. Entered.
[0159]
When the forward pulse FCL1 (= “1”) is input to the delay unit 33-1, the state of the state holding unit 47 of the delay unit 33-1 becomes the set state S. Further, the forward pulse advances while sequentially passing through the delay units 33-1, 33-2, to 33-n. In the delay unit where the forward pulse has passed, the state of the state holding unit 47 is maintained in the set state S.
[0160]
Thereafter, the forward pulse is output as an output pulse LST (= “1”) from the delay unit 33-n via all the delay units 33-1, 33-2, to 33-n.
[0161]
The output pulse LST is input to the control pulse generation circuit 61. As a result, the control pulse generation circuit 61 generates a path switching signal with L = “1” and / L = “0”. That is, when the output pulse LST is output, L = “1”, / L = “0”, the delay circuit 34 is deactivated, and the delay circuit 34 generates a corrected internal signal that matches the timing of the internal clock CLK. The clock CK ′ is output.
[0162]
Further, when the time maxΔ elapses after the internal clock CLK becomes “1” again, the backward pulse RCL1 is output from the delay unit 33-1. When the reverse pulse RCL1 is input to the control pulse generation circuit 61, the control pulse generation circuit 61 outputs L = "" after the timing when the reverse pulse RCL1 is output from the delay circuit 34, that is, after the reverse pulse RCL1 disappears. A path switching signal of “0”, / L = “1” is generated.
[0163]
That is, the delay circuit 34 is initialized (activated), and the delay circuit 34 changes to a state in which the output signal RCL1 of the delay unit 33-1 can be output.
[0164]
The delay circuit 62, the inverter 63 and the NAND circuit 64 determine the pulse width of the backward pulse output from the delay unit 33-1. That is, when the internal clock CLK is used for input / output control of the memory, after the backward pulse disappears in the delay circuit 34, L = “0”, / L = “1”, and the delay circuit 34 is initialized (activated). ) To be configured.
[0165]
However, the delay amounts of the delay circuits 34, 62, and 74 are set to have a relationship of D3> D2 + D2 ′.
[0166]
According to the clock control circuit having the above configuration, it is possible to generate the corrected internal clock CK ′ that is accurately synchronized with the external clock CK, and it is possible to achieve data transfer using a high-speed clock.
[0167]
In the present embodiment, it is possible to determine whether to use the internal clock CK as it is or to use the corrected internal clock CK ′ synchronized with the external clock CK according to the frequency of the external clock CK.
[0168]
That is, when data is transferred in synchronization with a high-speed clock in which the skew between the external clock CK and the internal clock CLK becomes a problem, the corrected internal clock CK ′ synchronized with the external clock CK is used. When data is exchanged in synchronization with a clock that does not cause a problem with the skew, the internal clock CK is used as usual.
[0169]
Whether to use an internal clock or a corrected internal clock is determined by the number of delay units.
[0170]
Therefore, when the period (cycle time) of the external clock CK is long, a situation in which the difference between the external clock CK and the corrected internal clock CK ′ does not occur is not caused.
[0171]
FIG. 23 shows a layout when the clock control circuit of the present invention is arranged on a chip.
[0172]
When the clock control circuit of the present invention is actually incorporated into a system as an IC, it is necessary to consider a delay (wiring delay) caused by wiring capacitance.
[0173]
Therefore, first, an array of delay units (hereinafter referred to as STBD, Synchronous Traced Backward Delays) 80 has a distance (or wiring delay amount) from the input buffer 13 and a distance (or wiring delay amount) to the output buffer (delay circuit) 34. ) In the same position.
[0174]
Next, the input buffer 13 and the STBD 80 are connected by a wiring having a wiring length L. Here, the actual skew D1 is the sum of the delay amount due to the input buffer 13 and the delay amount due to the wiring having the wiring length L.
[0175]
Next, the delay circuit 32 having the delay amount A will be considered. The delay amount A is represented by D1 + D2 as described above (see, for example, FIG. 6). The actual delay amount D2 of the delay circuit (output buffer) 34 is the sum of the delay amount due to the output buffer 34 and the delay amount due to the wiring having the wiring length L.
[0176]
Accordingly, the delay circuit having the delay amount A has the same pattern 82 as the pattern 82 that forms the delay amount D2 and the pattern 82 that is reversed right and left with respect to the pattern 81 that forms the skew D1. 84.
[0177]
By adopting such a layout, the delay amounts A, D1, and D2 can be determined in consideration of the wiring delay. Therefore, the corrected internal clock CK ′ can be more accurately synchronized with the external clock CK. It becomes possible.
[0178]
As described above, the clock control circuit of the present invention has the following effects.
[0179]
Since each delay unit has a state holding unit, the time Δf from the generation of the delayed imitation pulse (forward pulse) FCL1 to the generation of the internal clock CLK pulse is accurately copied to form Δb, The backward pulse RCL1 can be input to the delay circuit having the delay amount D2 after time Δb (= Δf) from the generation of the pulse of the internal clock CLK.
[0180]
This state is schematically shown in FIGS.
[0181]
That is, in the initial state, as shown in FIG. 24, the forward pulse delay circuit and the backward pulse delay circuit of the delay units 33-1 to 33-n are all in the state of outputting “0”.
[0182]
Further, as shown in FIG. 25, after the forward pulse is input to the delay unit 33-4 and the state holding unit of the delay unit 33-4 is set to the set state S, the state is held when the internal clock CLK pulse is generated. The delay units 33-5 to 33-n whose units are in the reset state R output “1”.
[0183]
That is, the forward pulse front F1 and the reverse pulse front F2 coincide, so that the delay amount Δf and the delay amount Δb are the same.
[0184]
Thereafter, as shown in FIGS. 26 and 27, the delay unit 33-4 is initialized to the reset state R, and a backward pulse is formed. The backward pulse passes through the delay units 33-3 and 33-2. And output from the delay unit 33-1.
[0185]
Such an operation makes it possible to generate a corrected internal clock CK ′ that is accurately synchronized with the external clock CK, and achieve data transfer using a high-speed clock.
[0186]
Whether the internal clock CK is used as it is or the corrected internal clock CK ′ synchronized with the external clock CK is used according to the frequency of the external clock CK by monitoring the signal output from the final stage of the delay unit. Can be determined.
[0187]
That is, when data is transferred in synchronization with a high-speed clock in which the skew between the external clock CK and the internal clock CLK becomes a problem, the corrected internal clock CK ′ synchronized with the external clock CK is used. When data is exchanged in synchronization with a clock that does not cause a problem with the skew, the internal clock CK is used as usual.
[0188]
Whether to use an internal clock or a corrected internal clock is determined by the number of delay units.
[0189]
Therefore, when the period (cycle time) of the external clock CK is long, a situation in which the difference between the external clock CK and the corrected internal clock CK ′ does not occur is not caused.
[0190]
Further, paying attention to the fact that the delay amount A is represented by (D1 + D2) and considering the wiring delay, the pattern of the delay amount A is the same as the pattern forming the delay amounts D1 and D2. -Is formed.
[0191]
Therefore, a system that accurately synchronizes the corrected internal clock CK ′ with the external clock CK can be configured in the memory chip with a simplified layout.
[0192]
The present invention is effective for a memory such as a synchronous DRAM in which the internal clock may be temporarily interrupted and data is exchanged in synchronization with a high-speed clock whose frequency changes.
[0193]
FIG. 28 shows the clock control circuit of FIG. 2 in a simplified manner.
[0194]
D1 is a delay circuit having a delay amount D1, D2 is a delay circuit having a delay amount D2, A is a delay circuit having a delay amount D1 + D2, and STBD (Synchronous Traced Backward Delay) is an array of delay units. The STBD is composed of an FD (Forward Delay) and a BD (Backward Delay).
[0195]
According to the clock control circuit having such a configuration, as described above, the phase of the external clock CK and the phase of the internal clock CK ′ completely match (no skew). Therefore, the clock control circuit having the above configuration is effective when outputting data when the external clock CK rises (at the time of transition from “L” to “H”).
[0196]
On the other hand, in recent years, when the cycle of the external clock CK is T, in addition to the internal clock CK ′ without skew, the internal clock CKD whose phase is delayed by (k / j) × T with respect to the external clock CK. It is required to be generated accurately (k and j are relatively prime natural numbers and j> k).
[0197]
For example, when data is output when the external clock CK rises and falls, the internal clock CK ′ having the same phase as the external clock CK and the phase T / It is necessary to generate the internal clock CKD delayed by 2 (= π).
[0198]
Further, in such a case, if the phase of the internal clock CKD is not exactly delayed by T / 2 (= π) with respect to the phase of the external clock, the data window (data is displayed at the time of data output). There is a possibility that erroneous data will be output.
[0199]
Therefore, hereinafter, a clock control circuit capable of accurately generating the internal clock CKD whose phase is delayed by (k / j) × T with respect to the external clock CK will be described.
[0200]
FIG. 29 shows a first example of the configuration of the clock control circuit of the present invention.
[0201]
This clock control circuit generates an internal clock CKD whose phase is delayed by T / 2 (= π) with respect to the external clock CK, together with the internal clock CK ′ whose phase is matched with the external clock CK (T is External clock period).
[0202]
The external clock CK is input to the input buffer 13 having a delay amount D1. The input buffer 13 outputs an internal clock CLK having a D1 skew with respect to the external clock CK. The internal clock CLK is input to a delay circuit 32 having a delay amount A, and the delay circuit 32 outputs a delay imitation pulse CL (forward pulse FCL1).
[0203]
The delayed imitation pulse CL is input to an FD (Forward Delay) of an STBD (Synchronous Traced Backward Delay). After the delay imitation pulse CL advances by the delay amount Δ in the FD, backward pulses are generated in the BD (Backward Delay) and the HBD (Half Backward Delay), respectively.
[0204]
The reverse pulse RCL in the BD is output from the BD after moving backward exactly by the delay amount Δ. The backward pulse HCL in the HBD is output from the HBD after moving backward by the delay amount Δ / 2 accurately.
[0205]
The internal clock CLK is input to BD and HBD, and determines the generation timing of the backward pulse. The inverted internal clock / CLK obtained by inverting the internal clock CLK by the inverter 35 is input to the FD and controls the period (delay amount) in which the forward pulse advances.
[0206]
The backward pulse RCL becomes a corrected internal clock CK ′ that matches the phase of the external clock CK after passing through the delay circuit 34 having the delay amount D1 + (D2 × 2). Further, the backward pulse HCL, when passing through the delay circuit 36 having the delay amount D2, becomes the internal clock CKD whose phase is delayed by T / 2 (= 180 °) with respect to the external clock CK.
[0207]
Here, the delay amount A of the delay circuit 32 is set to 2 × (D1 + D2).
[0208]
FIG. 30 shows a second example of the configuration of the clock control circuit of the present invention.
[0209]
This clock control circuit generates an internal clock CKD whose phase is delayed by T / j (= 2π / j) with respect to the external clock CK together with the internal clock CK ′ whose phase is identical to that of the external clock CK. (T is the period of the external clock, j is a natural number).
[0210]
The external clock CK is input to the input buffer 13 having a delay amount D1. The input buffer 13 outputs an internal clock CLK having a D1 skew with respect to the external clock CK. The internal clock CLK is input to a delay circuit 32 having a delay amount A, and the delay circuit 32 outputs a delay imitation pulse CL (forward pulse FCL1).
[0211]
The delayed imitation pulse CL is input to an FD (Forward Delay) of an STBD (Synchronous Traced Backward Delay). After the delay imitation pulse CL advances by the delay amount Δ in the FD, backward pulses are generated in the BD (Backward Delay) and 1 / jBD (Backward Delay), respectively.
[0212]
The reverse pulse RCL in the BD is output from the BD after moving backward exactly by the delay amount Δ. Further, the backward pulse 1 / jCL in 1 / jBD is outputted from 1 / jBD after being advanced by the delay amount Δ / j accurately.
[0213]
The internal clock CLK is input to BD and 1 / jBD, and determines the generation timing of the backward pulse. The inverted internal clock / CLK obtained by inverting the internal clock CLK by the inverter 35 is input to the FD and controls the period (delay amount) in which the forward pulse advances.
[0214]
The backward pulse RCL becomes the corrected internal clock CK ′ that matches the phase of the external clock CK after passing through the delay circuit 34 having the delay amount (j−1) × D1 + j × D2. Further, the backward pulse 1 / jCL becomes an internal clock CKD whose phase is delayed by T / j (= 360 ° / n) with respect to the external clock CK through the delay circuit 36 having the delay amount D2.
[0215]
Here, the delay amount A of the delay circuit 32 is set to j × (D1 + D2).
[0216]
FIG. 31 shows a third example of the configuration of the clock control circuit of the present invention.
[0217]
The clock control circuit includes an internal clock CK ′ whose phase is identical to that of the external clock CK and an internal clock whose phase is delayed by (k / j) × T (= 2π × k / j) with respect to the external clock CK. CKD is generated (T is the period of the external clock, k, j are relatively prime natural numbers, j> k).
[0218]
The external clock CK is input to the input buffer 13 having a delay amount k × D1. The input buffer 13 outputs an internal clock CLK having a skew of k × D1 with respect to the external clock CK. The internal clock CLK is input to a delay circuit 32 having a delay amount A, and the delay circuit 32 outputs a delay imitation pulse CL (forward pulse FCL1).
[0219]
The delayed imitation pulse CL is input to an FD (Forward Delay) of an STBD (Synchronous Traced Backward Delay). After the delay imitation pulse CL advances by the delay amount Δ in the FD, backward pulses are generated in the BD (Backward Delay) and k / jBD (Backward Delay), respectively.
[0220]
The reverse pulse RCL in the BD is output from the BD after moving backward exactly by the delay amount Δ. Further, the backward pulse k / jCL in k / jBD moves backward by exactly the delay amount Δ × (k / j) and is then output from k / jBD.
[0221]
The internal clock CLK is input to BD and k / jBD, and determines the generation timing of the backward pulse. The inverted internal clock / CLK obtained by inverting the internal clock CLK by the inverter 35 is input to the FD and controls the period (delay amount) in which the forward pulse advances.
[0222]
The backward pulse RCL becomes a corrected internal clock CK ′ that matches the phase of the external clock CK after passing through the delay circuit 34 having the delay amount (j−k) × D1 + j × D2. Further, the backward pulse k / jCL is delayed by T × (k / j) (= 360 ° × k / j) from the external clock CK through the delay circuit 36 having the delay amount k × D2. It becomes the internal clock CKD.
[0223]
Here, the delay amount A of the delay circuit 32 is set to j × (D1 + D2).
[0224]
FIG. 32 shows a fourth example of the configuration of the clock control circuit according to the present invention.
[0225]
The clock control circuit includes an internal clock CK ′ whose phase is identical to that of the external clock CK and an internal clock whose phase is delayed by T × (k / j) (= 2π × k / j) with respect to the external clock CK. CKD is generated (T is the period of the external clock, k, j are relatively prime natural numbers, j> k).
[0226]
The external clock CK is input to the input buffer 13 having a delay amount D1. The input buffer 13 outputs an internal clock CLK having a D1 skew with respect to the external clock CK. The internal clock CLK is input to a delay circuit 32 having a delay amount A, and the delay circuit 32 outputs a delay imitation pulse CL (forward pulse FCL1).
[0227]
The delayed imitation pulse CL is input to an FD (Forward Delay) of an STBD (Synchronous Traced Backward Delay). After the delay imitation pulse CL advances by the delay amount Δ in the FD, backward pulses are generated in the BD (Backward Delay) and k / jBD (Backward Delay), respectively.
[0228]
The reverse pulse RCL in the BD is output from the BD after moving backward exactly by the delay amount Δ. Further, the backward pulse k / jCL in k / jBD moves backward by exactly the delay amount Δ × (k / j) and is then output from k / jBD.
[0229]
The internal clock CLK is input to BD and k / jBD, and determines the generation timing of the backward pulse. The inverted internal clock / CLK obtained by inverting the internal clock CLK by the inverter 35 is input to the FD and controls the period (delay amount) in which the forward pulse advances.
[0230]
The backward pulse RCL becomes the corrected internal clock CK ′ that matches the phase of the external clock CK after passing through the delay circuit 34 having the delay amount (j−1) × D1 + j × D2. Further, when the backward pulse k / jCL passes through the delay circuit 36 having the delay amount (k−1) × D1 + k × D2, the phase thereof is T × (k / j) (= 360 ° × k) with respect to the external clock CK. / J) becomes the internal clock CKD delayed by a delay.
[0231]
Here, the delay amount A of the delay circuit 32 is set to j × (D1 + D2).
[0232]
FIG. 33 shows a fifth example of the configuration of the clock control circuit of the present invention.
[0233]
This clock control circuit has an internal clock CK ′ that is in phase with the external clock CK, and a phase that is T / 4 (= 90 °), T / 2 (= 180 °), 3T / Internal clocks CKQ, CKH, and CK3Q delayed by 4 (= 270 °) are generated.
[0234]
The external clock CK is input to the input buffer 13 having a delay amount D1. The input buffer 13 outputs an internal clock CLK having a D1 skew with respect to the external clock CK. The internal clock CLK is input to a delay circuit 32 having a delay amount A, and the delay circuit 32 outputs a delay imitation pulse CL (forward pulse FCL1).
[0235]
The delayed imitation pulse CL is input to an FD (Forward Delay) of a SAD (Synchronous Adjustable Delay). SAD includes STBD (Synchronous Traced Backward Delay) and the like.
[0236]
After the delay imitation pulse CL advances by the delay amount Δ in the FD, backward pulses are generated in the BD (Backward Delay), QBD (Quarter Backward Delay), HBD (Half Backward Delay) and 3QBD (3 Quarters Backward Delay), respectively. The
[0237]
The backward pulse RCL in the BD is output from the BD after moving backward by a delay amount Δ (X delay elements). Further, the backward pulse QCL in the QBD moves backward by a delay amount Δ / 4 minutes (corresponding to four delay elements X) and then is output from the QBD. The backward pulse HCL in the HBD has a delay amount Δ / 2 minutes ( The backward pulse 3QCL is output from the HBD after moving backward by the delay element X / 2), and the backward pulse 3QCL in the 3QBD is output from the 3QBD after moving backward by the delay amount 3Δ / 4 minutes (for the delay element 3X / 4). The
[0238]
The internal clock CLK is input to each of BD, QBD, HBD, and 3QBD, and determines the generation timing of the backward pulse. The inverted internal clock / CLK obtained by inverting the internal clock CLK by the inverter 35 is input to the FD and controls the period (delay amount) in which the forward pulse advances.
[0239]
The backward pulse RCL passes through the delay circuit 34 having a delay amount (D1 × 3 + D2 × 4) and becomes a corrected internal clock CK ′ that matches the phase of the external clock CK.
[0240]
Further, the backward pulse QCL becomes the internal clock CKQ whose phase is delayed by T / 4 (= 90 °) with respect to the external clock CK when passing through the delay circuit 36a having the delay amount D2.
[0241]
Further, the backward pulse HCL passes through the delay circuit 36b having the delay amount (D1 + D2 × 2), and becomes the internal clock CKH whose phase is delayed by T / 2 (= 180 °) with respect to the external clock CK.
[0242]
Further, the backward pulse 3QCL becomes an internal clock CKD whose phase is delayed by 3T / 4 (= 270 °) with respect to the external clock CK when passing through a delay circuit 36c having a delay amount (D1 × 2 + D2 × 3).
[0243]
Here, the delay amount A of the delay circuit 32 is set to 4 × (D1 + D2).
[0244]
FIG. 34 shows the configuration of the clock control circuit of FIG. 32 in detail.
[0245]
The external clock CK is given to the input terminal 30 of the memory. The external clock CK is input to the input buffer 13 having a delay amount D1. The input buffer 13 outputs an internal clock CLK having a D1 skew with respect to the external clock CK. The internal clock CLK is input to a delay circuit 32 having a delay amount A, and the delay circuit 32 outputs a forward pulse FCL1 (delay imitation pulse CL).
[0246]
The internal clock CLK and the inverted internal clock / CLK obtained by inverting the internal clock CLK by the inverter 35 are respectively input to n (n is a natural number) delay units 33-1, 33-2, ... 33-n. .
[0247]
The n delay units 33-1, 33-2,... 33-n are connected in series with each other. A forward pulse FCL1 is input to the first-stage delay unit 33-1 and a backward pulse RCL1 is output from the first-stage delay unit 33-1.
[0248]
The control pulses P and / P output from the control pulse generation circuit 60 are input to the n delay units 33-1, 33-2,... 33-n. The delay unit 33-i (i is 1 to n) outputs control pulses Qi and / Qi. The control pulses Qi, / Qi are input to the k / jBD 37.
[0249]
The backward pulse RCL1 becomes the corrected internal clock CK ′ by passing through the delay circuit 34 having the delay amount (j−1) × D1 + j × D2.
[0250]
The backward pulse k / jCL passes through the delay circuit 36 having the delay amount (k−1) × D1 + k × D2, so that the phase is T × (k / j) (= 360 ° × k) with respect to the external clock CK. / J) becomes the internal clock CKD delayed by a delay.
[0251]
FIG. 35 shows the first example of the configuration of the delay unit of FIG. 34 in detail.
[0252]
The delay unit Ui (i = 1 to n) includes three parts: a forward pulse delay circuit, a state holding circuit, and a reverse pulse delay circuit.
[0253]
The forward pulse delay circuit is composed of three inverters 41-43. The inverters 41 and 42 are connected in series, and the inverter 41 receives the output signal FCLi of the preceding delay unit, and the inverter 42 outputs the output signal FCLi + 1 to the subsequent delay unit. The operation of the inverter (clocked inverter) 41 is controlled by the control pulse / P. For example, when the control pulse / P is “1”, the inverter 41 is activated.
[0254]
The output terminal of the inverter 43 is connected to the input terminal of the inverter 42, and a potential of “0” (for example, ground potential) is always applied to the input terminal of the inverter 43. The operation of the inverter (clocked inverter) 43 is controlled by the control pulse P. For example, when the control pulse P is “1”, the inverter 43 is activated.
[0255]
The reverse pulse delay circuit is composed of three inverters 44-46. The inverters 44 and 45 are connected in series, and the inverter 44 receives the output signal RCLi + 1 of the subsequent delay unit or the internal clock CLK, and the inverter 45 receives the output signal RCLi to the previous delay unit. Output. The operation of the inverter (clocked inverter) 44 is controlled by the control pulse Qi. For example, the inverter 44 is activated only when the control pulse Qi is “1”.
[0256]
The output terminal of the inverter 46 is connected to the input terminal of the inverter 45, and the internal clock CLK is always input to the input terminal of the inverter 46. The operation of the inverter (clocked inverter) 46 is controlled by the control pulse / Qi. For example, when the control pulse / Qi is “1”, the inverter 46 is activated.
[0257]
The state holding circuit includes a state holding unit 47 and NAND circuits 48 and 49. The NAND circuit 48 receives the output signal FCLi of the preceding delay unit and the inverted internal clock / CLK, and the NAND circuit 49 receives the output signal of the inverter 45 and the internal clock CLK.
[0258]
The output signal of the NAND circuit 48 becomes the set input / S of the state holding unit 47, and the output signal of the NAND circuit 49 becomes the reset input / R of the state holding unit 47. Therefore, when the output signal (set input) / S of the NAND circuit 48 becomes “0”, the state holding unit 47 is set, and the output signal (reset input) / R of the NAND circuit 49 becomes “0”. When this happens, the state holding unit 47 enters a reset state.
[0259]
The state holding unit 47 is also configured to output control pulses Q and / Q. The control pulse Q is “1” when the state holding unit 47 is in the set state, and the control pulse / Q is “1” when the state holding unit 47 is in the reset state.
[0260]
As the state holding unit 47, for example, a configuration as shown in FIG. 4 can be used.
[0261]
In the delay unit Ui through which the forward pulse has passed, the control pulse Qi becomes “H” and / Qi becomes “L”. On the other hand, in the delay unit Ui through which the backward pulse has passed, the control pulse Qi becomes “L” and / Qi becomes “H”.
[0262]
FIG. 36 shows a second example of the configuration of the delay unit of FIG. 34 in detail.
[0263]
The delay unit Ui (i = 1 to n) includes three parts: a forward pulse delay circuit fdi, a state holding circuit sri, and a backward pulse delay circuit bdi.
[0264]
The forward pulse delay circuit fdi is composed of five inverters 91-95. The inverters 91 to 93 are connected in series, the inverter 91 receives the output signal FCLi of the preceding delay unit, and the inverter 92 outputs the output signal FCLi + 1 to the subsequent delay unit. The operation of the inverter (clocked inverter) 91 is controlled by the control pulse / P. For example, when the control pulse / P is “1”, the inverter 91 is activated.
[0265]
The output terminal of the inverter 94 is connected to the output terminal of the inverter 91 and also connected to the input terminals of the inverters 92 and 95. The input terminal of the inverter 94 is always “0”. (For example, ground potential) is applied. The operation of the inverter (clocked inverter) 94 is controlled by the control pulse P. For example, when the control pulse P is “1”, the inverter 94 is activated.
[0266]
The reverse pulse delay circuit bdi is composed of five inverters 96-100. The inverters 96 to 98 are connected in series, and the inverter 96 receives the output signal RCLi + 1 of the subsequent delay unit or the internal clock CLK. The inverter 97 receives the output signal RCLi to the preceding delay unit. Output. The operation of the inverter (clocked inverter) 96 is controlled by the control pulse Qi. For example, the inverter 96 is activated only when the control pulse Qi is “1”.
[0267]
The output terminal of the inverter 99 is connected to the output terminal of the inverter 96 and to the input terminals of the inverters 97 and 100. The input terminal of the inverter 99 is always connected to the internal clock. CLK is input. The operation of the inverter (clocked inverter) 99 is controlled by the control pulse / Qi. For example, when the control pulse / Qi is “1”, the inverter 99 is activated.
[0268]
The state holding circuit sri includes P-channel MOS transistors 101 and 102, N-channel MOS transistors 103 and 104, and an inverter 105.
[0269]
P-channel MOS transistors 101 and 102 are connected in series between the power supply terminal and node Z, and N-channel MOS transistors 103 and 104 are connected in series between the ground terminal and node Z.
[0270]
A clock signal / CLK obtained by inverting the internal clock CLK is input to the gates of the MOS transistors 101 and 104, and an output signal / RCLi-3 of the delay unit Ui-3 is input to the gate of the MOS transistor 102. The output signal FFCLi of the delay unit Ui-1 is input to the gate of the MOS transistor 103.
[0271]
The input terminal of the inverter 105 is connected to the node Z, and the control pulse Qi-2 is output from the output terminal of the inverter 105. From the node Z, a control pulse / Qi-2 is output.
[0272]
37 and 38 show an example of the configuration of k / jBD in FIG.
[0273]
In this example, a case where k is 1 and j is 2, that is, a case where the phase is delayed by T / 2 with respect to the external clock will be described. In this case, k / jBD is HBD (Half Backward Delay).
[0274]
The HBD is composed of m (m is a natural number) delay units bdi (i = 1 to m) connected in series. The configuration of each delay unit bdi is the same as the configuration of the backward pulse delay circuit bdi of the delay unit Ui of SAD (Synchronous Adjustable Delay).
[0275]
Therefore, the ratio of the delay amount of the backward pulse in the BD and the delay amount of the backward pulse in the HBD is the ratio of the number of delay units in the BD to the number of delay units in the HBD, more precisely, the number of delay units of the BD in one block. It becomes equal to the ratio of the number of delay units of HBD.
[0276]
Specifically, in this example, n delay units Ui (i = 1 to n) and m delay units bdi (i = 1 to m) are respectively divided into r (r is a natural number) block B ( 1), B (2),... B (r).
[0277]
For example, the block B (1) is composed of two delay units U1, U2 and one delay unit bd1, and a control pulse Q1, / Q1 for controlling the delay unit U1 and a control pulse Q2, for controlling the delay unit U2. Any one of / Q2 is given to the delay unit bd1.
[0278]
Similarly, the block B (r) is composed of two delay units Un-1 and Un and one delay unit bdm, and the control pulses Qn-1, / Qn-1 and the delay for controlling the delay unit Un-1 One of the control pulses Qn and / Qn for controlling the unit Un is given to the delay unit bdm.
[0279]
That is, in this example, one delay unit of HBD is provided for two delay units of SAD. Therefore, in the BD, the backward pulse is delayed by Δ, whereas in the HBD, the backward pulse is delayed by Δ / 2.
[0280]
In this example, r and m are equal and have a relationship of m = n / 2. In the above description, the relatively prime natural numbers j and k that are frequently used are j = 2 (equal to the number of SAD delay units in one block) and k = 1 (delay of the HBD in one block). Equal to the number of units).
[0281]
The total number n of SAD delay units is j (2 in this example) × r, and the total number m of HBD delay units is k (1 in this example) × r.
[0282]
The HBD delay units bd1 to bdm are preferably arranged equally to the SAD delay units U1 to Un. That is, if one delay unit of HBD is associated with two delay units adjacent to SAD, a delay of Δ / 2 can be generated accurately.
[0283]
FIG. 39 shows an example of the configuration of the delay unit bdi in the HBD.
[0284]
In this example, the delay unit Ui of FIG. 35 is used. That is, since the backward pulse delay circuit of the delay unit Ui is composed of the three inverters 44 to 46, the delay unit bdi in the HBD is also composed of the three inverters 44 'to 46'.
[0285]
The inverters 44 ′ and 45 ′ are connected in series. The output signal HCLi + 1 of the subsequent delay unit or the internal clock CLK is input to the inverter 44 ′. The inverter 45 ′ is connected to the delay unit of the previous stage. Output signal HCLi is output. The operation of the inverter (clocked inverter) 44 'is controlled by the control pulse Qi. For example, the inverter 44' is activated only when the control pulse Qi is "1".
[0286]
The output end of the inverter 46 'is connected to the input end of the inverter 45', and the internal clock CLK is always input to the input end of the inverter 46 '. The operation of the inverter (clocked inverter) 46 ′ is controlled by the control pulse / Qi. For example, when the control pulse / Qi is “1”, the inverter 46 ′ is activated.
[0287]
FIG. 40 shows the delay unit bdi of FIG. 39 as a symbol. Therefore, the circuit of FIG. 39 and the circuit of FIG. 40 are the same.
[0288]
FIG. 41 shows an example of the configuration of k / jBD in FIG.
[0289]
In this example, a case where j is 3 and k is 1, that is, a case where the phase is delayed by T / 3 with respect to the external clock will be described.
[0290]
The 1 / 3BD is composed of m delay units bdi (i = 1 to m) connected in series. The configuration of each delay unit bdi is the same as the configuration of the backward pulse delay circuit bdi of the delay unit Ui of SAD (Synchronous Adjustable Delay).
[0291]
Therefore, the ratio of the delay amount of the backward pulse in the BD and the delay amount of the backward pulse in the 1/3 BD is the ratio of the number of delay units in the BD to the number of delay units in the 1/3 BD, more precisely in one block. This is equal to the ratio of the number of BD delay units to the number of 1/3 BD delay units.
[0292]
Specifically, in this example, n delay units Ui (i = 1 to n) and m delay units bdi (i = 1 to m) are divided into r blocks B (1) and B (2 ),... B (r).
[0293]
For example, the block B (1) is composed of three delay units U1 to U3 and one delay unit bd1, and control pulses Q1 and / Q1 for controlling the delay unit U1 are given to the delay unit bd1. However, instead of the control pulses Q1 and / Q1, a control pulse for controlling the delay unit U2 or the delay unit U3 may be given to the delay unit bd1.
[0294]
In other words, in this example, one delay unit of 1/3 BD is provided for three delay units of SAD. Therefore, in BD, the backward pulse is delayed by Δ, whereas in 1/3 BD, the backward pulse is delayed by Δ / 3.
[0295]
In this example, r and m are equal and have a relationship of m = n / 3. In the above description, the relatively prime natural numbers j and k that are frequently used are j = 3 (equal to the number of SAD delay units in one block) and k = 1 (delay of the HBD in one block). Equal to the number of units).
[0296]
The total number n of SAD delay units is j (3 in this example) × r, and the total number m of HBD delay units is k (1 in this example) × r.
[0297]
Also, the 1/3 BD delay units bd1 to bdm are preferably arranged equally to the SAD delay units U1 to Un. That is, if one delay unit of 1/3 BD is associated with three delay units adjacent to each other in SAD, a delay of Δ / 3 can be generated accurately.
[0298]
FIG. 42 shows an example of the configuration of k / jBD in FIG.
[0299]
In this example, a case where k is 2 and j is 3, that is, a case where the phase is delayed by 2T / 3 with respect to the external clock will be described.
[0300]
The 2 / 3BD is composed of m delay units bdi (i = 1 to m) connected in series. The configuration of each delay unit bdi is the same as the configuration of the backward pulse delay circuit bdi of the delay unit Ui of SAD (Synchronous Adjustable Delay).
[0301]
Therefore, the ratio of the delay amount of the backward pulse in the BD and the delay amount of the backward pulse in the 2/3 BD is the ratio of the number of delay units in the BD to the number of delay units in the 2/3 BD, more precisely, the BD in one block. It becomes equal to the ratio of the number of delay units to the number of delay units of 2/3 BD.
[0302]
Specifically, in this example, n delay units Ui (i = 1 to n) and m delay units bdi (i = 1 to m) are divided into r blocks B (1) and B (2 ),... B (r).
[0303]
For example, the block B (1) is composed of three delay units U1 to U3 and two delay units bd1 and bd2, and gives control pulses Q1 and / Q1 for controlling the delay unit U1 to the delay unit bd1. Control pulses Q3 and / Q3 for controlling U3 are given to the delay unit bd2.
[0304]
However, instead of the control pulses Q1, / Q1, Q3, / Q3, the control pulses Q1, / Q1, Q2, / Q2 may be given to the delay units bd1, bd2, or the control pulses Q2, / Q2, Q3 and / Q3 may be given to the delay units bd1 and bd2.
[0305]
That is, in this example, two delay units of 2/3 BD are provided for three delay units of SAD. Therefore, in BD, the backward pulse is delayed by Δ, whereas in 2 / 3BD, the backward pulse is delayed by 2Δ / 3.
[0306]
In this example, there is a relationship of m = 2n / 3. In the above description, the relatively prime natural numbers j and k that are frequently used are j = 3 (equal to the number of SAD delay units in one block) and k = 2 (delay of the HBD in one block). Equal to the number of units).
[0307]
The total number n of SAD delay units is j (3 in this example) × r, and the total number m of HBD delay units is k (2 in this example) × r. Since m / n = k × r / j × r, there is a relationship of m / n = k / j.
[0308]
Further, it is preferable that the 2 / 3BD delay units bd1 to bdm are equally arranged with respect to the SAD delay units U1 to Un. That is, if two delay units of 2 / 3BD are made to correspond to three delay units adjacent to SAD, a delay of 2Δ / 3 can be generated accurately.
[0309]
FIG. 43 generally shows the configuration of k / jBD in FIG. FIG. 44 shows the configuration of k / jBD in one block B (i) of FIG.
[0310]
The SAD is composed of r blocks B (1) to B (r). In SAD, each block includes j delay units. Similarly, k / jBD is composed of r blocks B (1) to B (r). In k / jBD, each block includes k delay units.
[0311]
j and k are natural numbers that are relatively prime to each other, and it is common to set j> k. Since r blocks exist, the total number n of SAD delay units is r × j, and the total number m of k / jBD delay units is r × k.
[0312]
The number of SAD blocks is equal to the number of k / jBD blocks. For example, the SAD block B (1) corresponds to the k / jBD block (1), the SAD block B (2) corresponds to the k / jBD block (2), and the SAD block B (r ) Corresponds to block (r) of k / jBD.
[0313]
For example, the SAD block (1) is controlled by j sets of control pulses Q1, / Q1, Q2, / Q2,... Qj, / Qj. Therefore, only k (<j) sets of these j sets of control pulses are selected, and these k sets of control pulses are supplied to the block (1) of k / jBD.
[0314]
The k sets of control pulses are regularly and evenly selected from j sets of control pulses Q1, / Q1, Q2, / Q2,... Qj, / Qj.
[0315]
The selected k sets of control pulses are regularly given to k delay units corresponding to k / jBD. For example, when the control pulses Q1, / Q1, Q2, / Q2 are selected, the control pulses Q1, / Q1 are given to the delay unit bd1 of k / jBD (not given to bd2), and the control pulses Q2, / Q2 Is given to the delay unit bd2 of k / jBD (not given to bd1).
[0316]
According to such a configuration, the ratio of the number of delay units of SAD and the number of delay units of k / jBD is always k / j = m / n regardless of the position of the delay unit at which the forward pulse of SAD arrives. To meet. Therefore, it is possible to accurately generate a delay amount of k / jΔ in k / jBD regardless of the position of the delay unit that the forward pulse reaches.
[0317]
Next, the principle of the present invention (in the case of the example of FIG. 31) will be described with reference to FIG.
[0318]
The skew width (delay amount) of the external clock CK and the internal clock CLK is k × D1, and the period of the external clock CK and the internal clock CLK is T.
[0319]
The delay imitation pulse CL is generated when the time A elapses from the time when the first pulse of the internal clock CLK is generated (when it rises). In this case, the time from the time when the delay imitation pulse CL is generated to the time when the second pulse of the internal clock CLK is generated is Δf.
[0320]
In addition, the time Δf is copied to make Δb, and when the time 2 × Δ (where Δf = Δb = Δ) elapses from the time when the delayed imitation pulse CL is generated, the delayed imitation pulse RCL is generated. To. Then, the time when the time A has elapsed from the time when the delayed imitation pulse RCL is generated coincides with the time when the third pulse of the internal clock CLK is generated. However, (A + W) <T. W is the width of the delayed imitation pulses CL and RCL.
[0321]
Assuming that the time from the time when the delayed imitation pulse RCL is generated to the time when the third pulse of the external clock CK is generated is (j−k) × D1 + j × D2, the delay imitation pulse RCL is time (j−k) × D1 + j. If delayed by × D2, a corrected internal clock CK ′ that matches the timing of the external clock CK can be obtained.
[0322]
That is, a delay circuit for generating the delay amount A, (2 × Δ), (j−k) × D1 + j × D2 is formed, and the internal clock CLK is set to the time A + (2 × Δ) + {(j−k) × D1 + j. If delayed by × D2}, a corrected internal clock CK ′ that matches the timing of the external clock CK is obtained.
[0323]
The delay amount (2 × Δ) is generated by SAD, and the delay amount (j−k) × D1 + j × D2 is generated by a delay element. The delay amount A is determined as follows.
[0324]
From the relationship of FIG.
k × D1 + A + Δ = T + k × D1 (1)
k × D1 + A + 2Δ + (j−k) × D1 + j × D2 = 2T (2)
Can guide.
[0325]
From equation (1), T = A + Δ (3) can be derived,
From the equation (2), A + 2Δ + j (D1 + D2) = 2T (4) can be derived.
[0326]
From equations (3) and (4),
A + 2Δ + j (D1 + D2) = 2 (A + Δ)
A = j (D1 + D2) (5)
It becomes.
[0327]
The principle of generating the internal clock CKD delayed by (k / j) × T with respect to the external clock CK is as follows.
[0328]
The time (k / j) × Δ (Δ = Δf = Δb) is created, and the delay pulse k / jCL is generated when the time Δ + (k / j) × Δ elapses from the time when the delay imitation pulse CL is generated. Like that. Further, the internal clock CKD is generated when the time k × D2 has elapsed since the generation of the delay pulse k / jCL.
[0329]
At this time, as apparent from FIG. 45, the internal clock CKD is compared to the external clock CK.
k × D1 + (k / j) × Δ + k × D2 (6)
Will be delayed only.
[0330]
When formula (6) is transformed,
(K / j) × (j × D1 + Δ + j × D2)
= (K / j) × {j (D1 + D2) + Δ} (7)
It becomes.
[0331]
Equation (7) is obtained from the equations (3) and (5) above.
(K / j) × T (8)
It becomes.
[0332]
That is, the internal clock CKD means that the phase is delayed by (k / j) × T with respect to the external clock CK.
[0333]
Therefore, if a delay circuit for generating the delay amounts A, Δ + (k / j) × Δ, k × D2 is formed and the internal clock CLK is delayed by time A + {Δ + (k / j) × Δ} + k × D2. Thus, an internal clock CKD whose phase is delayed by (k / j) × T with respect to the external clock CK is obtained.
[0334]
The delay amount Δ is generated by the FD of the SAD, and the delay amount k × D2 is generated by the delay element. The delay amount A is set to j (D1 + D2) as shown in the equation (5) by the above-described method.
[0335]
Next, the principle of the present invention (in the case of the example of FIG. 32) will be described with reference to FIG.
[0336]
The skew width (delay amount) of the external clock CK and the internal clock CLK is D1, and the period of the external clock CK and the internal clock CLK is T.
[0337]
The delay imitation pulse CL is generated when the time A elapses from the time when the first pulse of the internal clock CLK is generated (when it rises). In this case, the time from the time when the delay imitation pulse CL is generated to the time when the second pulse of the internal clock CLK is generated is Δf.
[0338]
In addition, the time Δf is copied to make Δb, and when the time 2 × Δ (where Δf = Δb = Δ) elapses from the time when the delayed imitation pulse CL is generated, the delayed imitation pulse RCL is generated. To. Then, the time when the time A has elapsed from the time when the delayed imitation pulse RCL is generated coincides with the time when the third pulse of the internal clock CLK is generated. However, (A + W) <T. W is the width of the delayed imitation pulses CL and RCL.
[0339]
Assuming that the time from the generation of the delay imitation pulse RCL to the generation of the third pulse of the external clock CK is (j−1) × D1 + j × D2, the delay imitation pulse RCL is time (j−1) × D1 + j. If delayed by × D2, a corrected internal clock CK ′ that matches the timing of the external clock CK can be obtained.
[0340]
That is, a delay circuit for generating the delay amounts A, (2 × Δ), (j−1) × D1 + j × D2 is formed, and the internal clock CLK is converted to the time A + (2 × Δ) + {(j−1) × D1 + j. If delayed by × D2}, a corrected internal clock CK ′ that matches the timing of the external clock CK is obtained.
[0341]
The delay amount (2 × Δ) is generated by SAD, and the delay amount (j−1) × D1 + j × D2 is generated by a delay element. The delay amount A is determined as follows.
[0342]
From the relationship of FIG.
D1 + A + Δ = T + D1 (9)
D1 + A + 2Δ + (j−1) × D1 + j × D2 = 2T (10)
Can guide.
[0343]
From equation (9), T = A + Δ (11) can be derived,
From equation (10), A + 2Δ + j (D1 + D2) = 2T (12) can be derived.
[0344]
From equations (11) and (12)
A + 2Δ + j (D1 + D2) = 2 (A + Δ)
A = j (D1 + D2) (13)
It becomes.
[0345]
The principle of generating the internal clock CKD delayed by (k / j) × T with respect to the external clock CK is as follows.
[0346]
The time (k / j) × Δ (Δ = Δf = Δb) is created, and the delay pulse k / jCL is generated when the time Δ + (k / j) × Δ elapses from the time when the delay imitation pulse CL is generated. Like that. The internal clock CKD is generated when time (k−1) × D2 + k × D2 elapses from the time when the delay pulse k / jCL is generated.
[0347]
At this time, as is clear from FIG. 46, the internal clock CKD is compared to the external clock CK.
D1 + (k / j) × Δ + (k−1) × D1 + k × D2 (14)
Will be delayed only.
[0348]
When the equation (14) is transformed,
(K / j) × (j × D1 + Δ + j × D2)
= (K / j) × {j (D1 + D2) + Δ} (15)
It becomes.
[0349]
Equation (15) is obtained from the above equations (11) and (12).
(K / j) × T (16)
It becomes.
[0350]
That is, the internal clock CKD means that the phase is delayed by (k / j) × T with respect to the external clock CK.
[0351]
Therefore, if a delay circuit for generating the delay amounts A, Δ + (k / j) × Δ, k × D2 is formed and the internal clock CLK is delayed by time A + {Δ + (k / j) × Δ} + k × D2. Thus, an internal clock CKD whose phase is delayed by (k / j) × T with respect to the external clock CK is obtained.
[0352]
The delay amount Δ is generated by the FD of the SAD, and the delay amount k × D2 is generated by the delay element. The delay amount A is set to j (D1 + D2) by the above-described method as shown in the equation (13).
[0353]
FIG. 47 shows a connection relationship between a controller that generates an external clock and receives data and a memory that outputs data based on an internal clock generated from the external clock.
[0354]
In the above-described example, the technique for clearly determining the phase relationship between the external clock and the internal clock and outputting accurate data from the memory has been described. In this example, a technique will be described in which the controller can accurately receive accurate data read from such a memory.
[0355]
In general, a memory system includes a controller (CPU) and a plurality of memories (ICs). Also, it takes a certain time for the external clock CK to reach the memories 1 and 2 from the controller. Therefore, first, the wiring length of the external clock from the controller to each of the memories 1 and 2 is made equal.
[0356]
Further, the memory 1 or the memory 2 outputs data based on an internal clock having a fixed phase relationship with respect to the external clock CK. The data is guided to the controller via the data bus.
[0357]
The controller receives data from the memory 1 or the memory 2, but the data is output from the memory 1 or the memory 2 and input to the controller depending on the wiring length, wiring capacity, etc. of the data bus. Takes a certain amount of time.
[0358]
That is, in order to capture accurate data, the controller needs to capture data at a timing that takes into account the propagation time of the data bus data.
[0359]
Therefore, a dummy memory (IC) having an external clock input capacity equal to the memories 1 and 2 is prepared. The wiring length of the external clock from the controller to the dummy memory is made equal to the wiring length of the external clock from the controller to each of the memories 1 and 2.
[0360]
Further, the external clock CK input to the dummy IC is further returned to the controller, and this is used as a return clock.
[0361]
The return clock determines the timing at which the controller receives the output data of the memory 1 or memory 2. Therefore, the wiring length of the return clock from the dummy memory to the controller is made equal to the data bus length from the memory 1 or the memory 2 to the controller.
[0362]
As described above, the controller receives data from the memory 1 or the memory 2 based on the return clock. Therefore, erroneous data is not input to the controller.
[0363]
【The invention's effect】
As described above, the clock control circuit of the present invention has the following effects.
[0364]
An internal clock that always has a constant phase relationship with the external clock can be generated stably, and even if the period of the external clock changes, the internal clock is The clock always has a constant phase relationship.
[0365]
Therefore, the present invention is most suitable for controlling a data input / output circuit of a clock synchronous DRAM such as a so-called synchronous memory.
[0366]
In addition, when a plurality of data is output in one cycle of the clock by controlling to divide the clock cycle and output the data, the phase is a predetermined amount with respect to the external clock. Although a plurality of accurately shifted internal clocks are required, according to the present invention, such a plurality of internal clocks can be easily generated without using a complicated system such as a PLL.
[Brief description of the drawings]
FIG. 1 is a diagram showing a main part of a system including a memory having a circuit of the present invention.
FIG. 2 is a diagram showing a configuration of a clock control circuit in the memory of FIG. 1;
3 is a circuit diagram showing in detail a delay unit in the circuit of FIG. 2;
4 is a circuit diagram showing in detail a state holding unit in the delay unit of FIG. 3;
FIG. 5 is a diagram showing in detail a control pulse generation circuit in the circuit of FIG. 2;
FIG. 6 is a diagram showing the principle of the present invention.
FIG. 7 is a timing chart showing the operation of the circuits of FIGS.
FIG. 8 is a diagram showing a state of a in the timing diagram of FIG. 7;
FIG. 9 is a diagram showing a state of b in the timing diagram of FIG. 7;
10 is a diagram showing a state of c in the timing diagram of FIG. 7;
11 is a diagram showing a state d in the timing chart of FIG. 7;
12 is a diagram showing a state “e” in the timing chart of FIG. 7. FIG.
13 is a diagram showing a state f in the timing chart of FIG. 7;
14 is a diagram illustrating a state of g in the timing diagram of FIG. 7;
FIG. 15 is a diagram illustrating a state h in the timing diagram of FIG. 7;
16 is a diagram showing a state i in the timing diagram of FIG. 7;
FIG. 17 is a diagram showing a modification of the circuit of FIG.
18 is a diagram showing a modification of the circuit of FIG.
19 is a diagram showing in detail a delay circuit 34 in the circuit of FIG.
20 is a diagram showing in detail a control pulse generation and extension circuit 61 in the circuit of FIG.
FIG. 21 is a diagram showing a problem in the operation of the circuit of FIG. 2;
FIG. 22 is a timing chart showing the operation of the circuits of FIGS.
FIG. 23 is a diagram showing a layout when a circuit of the present invention is incorporated in a chip;
24 is a diagram showing the operation of the circuit of FIGS. 2 and 18. FIG.
25 is a diagram showing the operation of the circuit of FIGS. 2 and 18. FIG.
FIG. 26 is a diagram showing the operation of the circuit of FIGS. 2 and 18;
FIG. 27 is a diagram showing the operation of the circuit of FIGS. 2 and 18;
FIG. 28 is a diagram showing a schematic configuration of the clock control circuit of FIG. 2;
FIG. 29 is a diagram showing a first example of a clock control circuit according to the present invention.
FIG. 30 is a diagram showing a second example of the clock control circuit according to the present invention.
FIG. 31 is a diagram showing a third example of the clock control circuit according to the present invention;
FIG. 32 is a diagram showing a fourth example of the clock control circuit according to the present invention;
FIG. 33 is a diagram showing a fifth example of the clock control circuit according to the present invention;
34 is a diagram showing in detail the configuration of the clock control circuit of FIG. 1;
FIG. 35 is a diagram showing in detail the configuration of a delay unit Ui in the circuit of FIG.
36 is a diagram showing in detail the configuration of a delay unit Ui in the circuit of FIG. 34. FIG.
FIG. 37 is a diagram showing a first example of a configuration of an HBD.
FIG. 38 is a diagram showing a second example of the configuration of the HBD.
39 is a diagram showing a configuration of a delay unit bdi in FIG. 37 or FIG.
40 is a diagram showing the circuit of FIG. 39 as a symbol.
FIG. 41 is a diagram showing a first example of a 1 / 3BD configuration.
FIG. 42 is a diagram showing a second example of the structure of 1/3 BD.
FIG. 43 is a diagram showing a configuration of m / nBD.
44 is a diagram showing a configuration of a block B (i) in FIG. 43. FIG.
FIG. 45 is a diagram showing the principle of the present invention.
FIG. 46 is a diagram showing the principle of the present invention.
47 is a diagram showing a configuration of a memory system according to the present invention. FIG.
FIG. 48 is a diagram showing a main part of a conventional system.
49 is a circuit diagram showing a skew of an external clock and an internal clock in the system of FIG. 48. FIG.
FIG. 50 is a diagram showing the principle of a synchronization system as the basis of the present invention.
51 is a diagram showing an example of a circuit for achieving the principle of FIG. 50. FIG.
FIG. 52 is a diagram showing how the delay amounts Δf and Δb are determined in the circuit of FIG. 51;
[Explanation of symbols]
11: Memory, 12: CPU, 13: Buffer, 14: Input circuit, 15: Output circuit, 16: Write / read circuit, 17: Memory cell array, 18: Data bus, 21: Input terminal, 22: Input buffer, 23, 25-1 to 25-n, 29-1 to 29-n, 30: delay circuit, 24: forward delay array, 26: mirror control circuit, 27-1 to 27-n: control element, 28: reverse drive Delay array 31: Clock synchronous delay control circuit 32, 33-1-33-n, 34, 57, 62: Delay circuit 41-46, 59, 63, 66-68, 70: Inverter 47: State holding unit 48, 49, 64: NAND circuit 51, 52: P-channel MOS transistor, 53-56: N-channel MOS transistor Star, 58,69,71,72: NOR circuit, 60 and 61: control pulse generation circuit, 73: NAND circuit, 74: delay circuit 75: inverter - motor, 81 to 84: circuit pattern - down.

Claims (1)

外部クロックから生成した内部クロックに基づいてデータを出力するメモリと、前記メモリに等しい前記外部クロックの入力容量を持つダミーメモリと、前記外部クロックを発生すると共に、前記ダミーメモリからのリターンクロックに基づいて前記メモリから出力されるデータを受け取るタイミングを決定するコントローラとを具備し、前記コントローラから前記ダミーメモリまでの前記外部クロックの配線長は、前記コントローラから前記メモリまでの前記外部クロックの配線長に等しく、かつ、前記ダミーメモリから前記コントローラまでの前記リターンクロックの配線長は、前記メモリから前記コントローラまでのデータバス長に等しいことを特徴とするメモリシステム。 A memory that outputs data based on an internal clock generated from an external clock, a dummy memory having an input capacity of the external clock equal to the memory, the external clock, and a return clock from the dummy memory A controller for determining a timing for receiving data output from the memory, and the wiring length of the external clock from the controller to the dummy memory is equal to the wiring length of the external clock from the controller to the memory. The memory system is characterized in that the return clock wiring length from the dummy memory to the controller is equal to the data bus length from the memory to the controller .
JP2003032449A 1996-04-23 2003-02-10 Clock control circuit Expired - Fee Related JP3860546B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003032449A JP3860546B2 (en) 1996-04-23 2003-02-10 Clock control circuit

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-100976 1996-04-23
JP10097696 1996-04-23
JP2003032449A JP3860546B2 (en) 1996-04-23 2003-02-10 Clock control circuit

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP10049097A Division JP3410922B2 (en) 1996-04-23 1997-04-17 Clock control circuit

Publications (2)

Publication Number Publication Date
JP2003263362A JP2003263362A (en) 2003-09-19
JP3860546B2 true JP3860546B2 (en) 2006-12-20

Family

ID=29217487

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003032449A Expired - Fee Related JP3860546B2 (en) 1996-04-23 2003-02-10 Clock control circuit

Country Status (1)

Country Link
JP (1) JP3860546B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7586355B2 (en) * 2007-07-11 2009-09-08 United Memories, Inc. Low skew clock distribution tree

Also Published As

Publication number Publication date
JP2003263362A (en) 2003-09-19

Similar Documents

Publication Publication Date Title
JP3410922B2 (en) Clock control circuit
US10984844B2 (en) Apparatuses and methods for determining a phase relationship between an input clock signal and a multiphase clock signal
JP3429977B2 (en) Skew reduction circuit and semiconductor device
US6466491B2 (en) Memory system and memory controller with reliable data latch operation
US6259288B1 (en) Semiconductor integrated circuit having a DLL circuit and a special power supply circuit for the DLL circuit
US8218708B2 (en) Phase splitter using digital delay locked loops
WO2019160587A1 (en) Improved timing circuit for command path in a memory device
CN109643566A (en) For adjusting the device and method of the delay in command signal path
KR101009335B1 (en) Semiconductor memory device and the method for operating the same
US9325330B2 (en) Semiconductor device including a clock adjustment circuit
EP1377982B1 (en) Multiple bit prefetch output data path
US6194916B1 (en) Phase comparator circuit for high speed signals in delay locked loop circuit
KR100853479B1 (en) Semiconductor memory device
KR100292127B1 (en) Clock synchronous delay control circuit
KR100875671B1 (en) Semiconductor memory device comprising precharge signal generation device and driving method thereof
JP3860546B2 (en) Clock control circuit
KR100399070B1 (en) Doulble locking delay locked loop clock generation device using ring oscillator
JP3982934B2 (en) Input circuit and semiconductor integrated circuit having the input circuit
US20090097330A1 (en) Fuse latch circuit and fuse latch method
JP2001337862A (en) Memory system and method of set up the same
JP2003015764A (en) Clock synchronizing circuit
JP4571959B2 (en) Input circuit and semiconductor integrated circuit having the input circuit
JP2014212365A (en) Semiconductor device
JP2002251228A (en) Clock synchronizing circuit

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050705

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050712

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050912

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060328

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060519

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: 20060919

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060921

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090929

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100929

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110929

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees