以下、本発明の実施の形態について、図面を用いて説明する。
[第1の実施形態]
本実施の形態は、レイテンシを適切なタイミングで内部で自動的に適切な値に設定する同期式擬似SRAMに関する。
(構成)
図1は、本実施の形態に係る同期式擬似SRAM100の構成を示す。同図を参照して、この同期式擬似SRAM100は、DRAMセルアレイ+周辺回路群101と、アドレスバッファ103と、制御回路102とを含む。
DRAMセルアレイ+周辺回路群101のDRAMセルアレイは、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイである。周辺回路群101は、グローバル入出力線対GIOP(GIOおよび/GIO)と、各列に対応して設けられた列選択線と、列選択ゲートと、センスアンプと、プリアンプと、ライトドライバと、ロウデコーダ、コラムデコーダなどを含む。
アドレスバッファ103は、外部アドレス信号ADD[21:0]を受けて、内部アドレス信号を生成する。
制御回路102は、トリガ生成回路104と、カウンタイネーブル回路105と、クロックカウンタ106と、判定回路107と、レイテンシ用レジスタ108と、WAIT制御回路109と、遅延回路110と、リフレッシュ制御回路111とを含む。
リフレッシュ制御回路111は、図示しない内部のリフレッシュタイマに基づいて、DRAMセルアレイのセルフリフレッシュ動作を制御する。
トリガ生成回路104は、レイテンシの設定のトリガとなるトリガ信号Triggerを出力する。
遅延回路110は、複数段のインバータからなり、トリガ信号Triggerを受けて、遅延トリガ信号dTriggerを出力する。
カウンタイネーブル回路105は、トリガ信号Triggerが入力されてから、遅延トリガ信号dTriggerが入力されるまでの間、カウンタイネーブル信号CEを「H」にする。
クロックカウンタ106は、カウンタイネーブル信号CEが「H」の間、入力される外部クロックCLKの数をカウントする。カウント数は、入力される外部CLKの数と、カウンタイネーブル信号CEが「H」の期間、つまり遅延回路110でのトリガ信号Triggerの遅延量に依存する。遅延回路110での遅延量は、温度などの周囲環境に依存する。
判定回路107は、クロックのカウント数と、そのカウント数で動作可能な最小のレイテンシとの対応関係を記憶する。対応関係は、クロックのカウント数が多いほど、最小のレイテンシが大きくなるように定められる。判定回路107は、この対応関係に基づいて、クロックカウンタ106から出力されるカウント数に応じた最小のレイテンシを判定し、レイテンシ用レジスタ108に出力する。
レイテンシ用レジスタ108は、判定回路107から送られる最小のレイテンシを保存する。
WAIT制御回路109は、レイテンシ用レジスタ108に保存されている最小のレイテンシに応じた期間だけ、WAIT信号を「L」にする。
図2は、トリガ生成回路104の詳細な構成を示す。同図に示すように、トリガ生成回路104は、ラッチ回路121と、インバータIV1,IV2,IV3と、論理積回路AND1とからなる。
図3は、トリガ生成回路104で生成される信号のタイミングチャートである。同図を参照して、ラッチ回路121は、外部アドレス取込信号ADV#をラッチして、アドレス取込ラッチ信号ADV#Lを出力する。ラッチ回路121は、外部チップイネーブル信号CE#をラッチして、チップイネーブルラッチ信号CE#Lを出力する。ラッチ回路121は、外部ライトイネーブル信号WE#をラッチして、ライトイネーブルラッチ信号WE#Lを出力する。ラッチ回路121は、外部コンフィギュレーションレジスタイネーブル信号CRE#をラッチして、コンフィギュレーションレジスタイネーブルラッチ信号CRELを出力する。AND回路1は、アドレス取込ラッチ信号ADV#Lが「L」、チップイネーブルラッチ信号CE#Lが「L」、書込みラッチ信号WE#Lが「H」、コンフィギュレーションレジスタイネーブルラッチ信号CRELが「L」、かつ外部クロックCLKが「H」のときに、読出し信号READを「H」に活性化するとともに、トリガ信号Triggerを「H」にする。
このようなトリガ信号生成回路104により、外部信号の論理値の組合せによって読出し信号READが生成されて読出しが行なわれるときに、トリガ信号Triggerも同時に生成され、レイテンシの設定が行なわれる。
以上のように、本実施の形態に係る同期式擬似SRAMによれば、読出し信号READが生成されて、実際に読出し処理のためにコマンドレイテンシが必要となるタイミングで、入力される外部クロックCLKの周波数および温度などの周囲環境の下で動作可能な最小の値にレイテンシを設定することができる。
なお、本実施の形態では、遅延回路101は、複数個のインバータで構成されるものとしたが、これに限定するものではなく、たとえば、特定の回路を模擬的に再現したレプリカ回路などを用いてもよい。また、クロックカウンタ106は、外部クロックCLKを受けるのではなく、内部クロックを受けるものとしてもよい。
また、本実施の形態は、同期式擬似SRAMに限定して適用されるものではなく、クロックに同期して動作する半導体記憶装置であればどのようなものにも適用することができる。
[第1の実施形態の変形例]
第1の実施形態において、トリガ生成回路104は、読出し信号READが生成されたことを検知して、トリガ信号Triggerを生成したが、これに限定するものではない。たとえば、以下のような場合に、トリガ信号Triggerを生成するものとしてもよい。
(1) 書込み信号WRITEなどの他の動作指示信号が入力されたことを検知して、トリガ信号Triggerを生成する。
(2) 電源投入検知回路により電源が投入されたことを検知したときに、トリガ信号Triggerを生成する。
(3) 動作モード設定コマンド判定回路により外部信号によりレイテンシ、バースト長などのモード設定が行なわれたことを判定したときに、Trigger信号を生成する。
(4) 温度変化検地回路により温度変化を検知したときに、トリガ信号Triggerを生成する。
(5) 内部発信回路により、一定周期でトリガ信号Triggerを生成する。
[第2の実施形態]
本実施の形態は、セルフリフレッシュするバンクを適切に切替えて、WAIT期間を短くした同期式擬似SRAMに関する。
(構成)
図4は、本実施の形態に係る同期式擬似SRAM200の構成を示す。同図を参照して、この同期式擬似SRAM200は、DRAMセルアレイ+周辺回路群201と、制御回路202とを備える。
DRAMセルアレイ+周辺回路群201のDRAMセルアレイは、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイであり、4個のバンクを有する。バンクは、DRAMセルアレイを分割したメモリセル群であって、1度のリフレッシュ動作の単位となる。つまり、1度のリフレッシュでは、1個のバンクがリフレッシュされる。
周辺回路群は、グローバル入出力線対GIOP(GIOおよび/GIO)と、各列に対応して設けられた列選択線と、列選択ゲートと、センスアンプと、プリアンプと、ライトドライバと、ロウデコーダ、コラムデコーダなどを含む。
制御回路202は、コマンドデコーダ214と、リフレッシュバンクアドレス指定回路213と、リフレッシュタイマ212と、リフレッシュ制御回路211と、WAIT制御回路215とを備える。
コマンドデコーダ214は、外部制御信号より生成された内部制御信号の論理レベルの組合せに従って、ロウ活性化信号ACT、読出し信号READ、および書込み信号WRITEを生成する。
リフレッシュタイマ212は、リング発振器で構成され周期的に活性化されたリフレッシュサイクル信号/Refcycを出力する。
リフレッシュバンクアドレス指定回路213は、リフレッシュサイクル信号/Refcycと、読出し信号READまたは書込み信号WRITEと、バンクアドレスとを受けて、リフレッシュするバンクのアドレスおよびそのリフレッシュのタイミングを指定する。
リフレッシュ制御回路211は、リフレッシュバンクアドレス指定回路213からバンクアドレスのみを受けると、即座にそのアドレスのバンクのリフレッシュ動作を制御する。また、リフレッシュ制御回路211は、リフレッシュバンクアドレス指定回路213からバンクアドレスとともに、そのバンクアドレスのバンクの読出し動作終了後にリフレッシュを行なう旨の指令を受けると、所定の時間経過した後、そのバンクのリフレッシュ動作を制御する。
WAIT制御回路215は、リフレッシュ制御回路211がリフレッシュ動作を制御している間、WAIT信号のレベル「L」とする。
図5は、リフレッシュバンクアドレス指定回路213の詳細な構成を示す。同図を参照して、リフレッシュバンクアドレス指定回路213は、OR回路221と、バンクアドレスカウンタ222と、リフレッシュ実施済/未実施判定回路223と、リフレッシュ実施済バンク保持回路224と、第1比較回路225と、第2比較回路227と、読出し/書込み動作バンク検知回路226とを備える。
OR回路221は、リフレッシュタイマ212からリフレッシュサイクル信号/Refcyc、リフレッシュ実施済/未実施判定回路223から次のバンクを指示する信号NEXT、または第1比較回路225から次のバンク指示する信号NEXTを受けると、カウントアップ信号を出力する。
バンクアドレスカウンタ222は、カウントアップ信号を受けると、「1」〜「4」の範囲でカウントをアップする。ただし。カウント値の初期値は、「0」とし、カウント「4」の次は、カウント「1」とする。
リフレッシュ実施済バンク保持回路224は、リフレッシュを実施済みのバンクアドレスを保持する。リフレッシュ実施済バンク保持回路224は、「1」〜「4」のバンクアドレスがすべて保持されたときには、保持しているバンクアドレスをすべて消去するとともに、バンクアドレスカウンタ222のカウント値を「0」にリセットさせる。したがって、4回のリフレッシュで、バンク1〜バンク4のすべてのリフレッシュが完了される。
リフレッシュ実施済/未実施判定回路223は、バンクアドレスカウンタ222のカウンタ値のバンクアドレスが、リフレッシュ実施済バンク保持回路224に保持されているか否かを調べる。リフレッシュ実施済/未実施判定回路223は、カウンタ値のバンクアドレスが保持されていない場合には、未実施と判定し、そのバンクアドレスを第1比較回路225または第2比較回路227のいずれかに出力する。ここで、リフレッシュ実施済/未実施判定回路223は、出力するバンクアドレスがリフレッシュ実施済バンク保持回路224に保持されていない、最後の1つのバンクアドレスのときには、第2比較回路227にそのバンクアドレスを出力する。リフレッシュ実施済/未実施判定回路223は、上記以外のときには、第1比較回路225にそのバンクアドレスを出力する。
リフレッシュ実施済/未実施判定回路223は、カウンタ値のバンクアドレスが保持されている場合には、実施済みと判定し、次のバンクアドレスを指示する信号NEXTを出力する。
読出し/書込み動作バンク検知回路226は、読出し信号READまたは書込み信号WRITEを受けたときに、入力されるバンクアドレス(読出しまたは書込みを行なっているバンクのアドレス)を第1比較回路225および第2比較回路227に出力する。
第1比較回路225は、読出し/書込み動作バンク検知回路226およびリフレッシュ実施済/未実施判定回路223から受けた2つのバンクアドレスが同一か否かを調べる。第1比較回路225は、2つのバンクアドレスが異なるときには、リフレッシュ実施済/未実施判定回路223から受けたバンクアドレスをリフレッシュ制御回路211に送るとともに、リフレッシュ実施済みバンク保持回路224にそのバンクアドレスを出力し保持させる。第1比較回路225は、2つのバンクアドレスが同一のときには、次のバンクアドレスを指示する信号NEXTを出力する。
第2比較回路227は、読出し/書込み動作バンク検知回路226およびリフレッシュ実施済/未実施判定回路223から受けた2つのバンクアドレスが同一か否かを調べる。第2比較回路227は、2つのバンクアドレスが異なるときには、リフレッシュ実施済/未実施判定回路223から受けたバンクアドレスをリフレッシュ制御回路211に送るとともに、リフレッシュ実施済みバンク保持回路224にそのバンクアドレスを出力し保持させる。第2比較回路227は、2つのバンクアドレスが同一のときには、リフレッシュ実施済/未実施判定回路223から受けたバンクアドレスと、そのバンクアドレスのバンクの読出し動作終了後にリフレッシュを行なう旨の指令とをリフレッシュ制御回路211に送る。
(従来の同期式擬似SRAMの動作例)
まず、本実施の形態に係る同期式擬似SRAM200の動作の比較のため、従来の同期式擬似SRAMの動作を説明する。
図6は、従来の同期式擬似SRAMの動作を説明するための図である。同図に示すように、外部指示による読出し信号READに基づき、読出し動作が行なわれている途中に、リフレッシュタイマが、リフレッシュサイクル信号/Refcycを出力したときには、リフレッシュ制御回路は、実行中の読出し動作の終了後に、リフレッシュ動作の制御を開始する。また、WAIT制御回路は、リフレッシュ動作を実行中には外部にWAIT信号を出力する。
したがって、従来の同期式擬似SRAMでは、読出し動作のタイミングとセルフリフレッシュのタイミングとが重なった場合に、セルフリフレッシュのタイミングが遅れるとともに、外部からは、セルフリフレッシュが終了まで、読出し指示を出すことができない。
(本実施の形態の同期式擬似SRAM200の動作例1)
図7は、本実施の形態に係る同期式擬似SRAM200の動作例を説明するための図である。
まず、外部からのバンク2を指定した読出し信号READに基づき、バンク2の読出し動作が行なわれる。
次に、外部からのバンク3を指定した読出し信号READに基づき、バンク3の読出し動作が行なわれる。バンク3の読出し動作中に、リフレッシュタイマ212は、リフレッシュサイクル信号/Refcycを出力する。リフレッシュバンクアドレス指定回路213内のOR回路221は、リフレッシュサイクル信号/Refcycを受けるとカウントアップ信号を出力する。バンクアドレスカウンタ222は、バンクアドレスのカウント値を「1」とする。リフレッシュ実施済/未実施判定回路223は、リフレッシュ実施済バンク保持回路224に未だ何も保持されていないので、未実施と判定し、バンクアドレス「1」を第1比較回路225に出力する。読出し/書込み動作バンク検知回路226は、読出し信号READおよびバンクアドレス「3」を受けて、バンクアドレス「3」を第1比較回路225および第2比較回路227に出力する。第1比較回路225は、受けた2つのバンクアドレスが異なるので、リフレッシュ実施済/未実施判定回路223から受けたバンクアドレス「1」をリフレッシュ制御回路211に送るとともに、リフレッシュ実施済みバンク保持回路224にバンクアドレス「1」を出力し保持させる。リフレッシュ制御回路211は、バンクアドレス「1」を受けるとバンク1のリフレッシュ動作を制御する。
次に、外部からのバンク1を指定した読出し信号READに基づき、バンク1の読出し動作が行なわれる。
次に、外部からのバンク2を指定した読出し信号READに基づき、バンク2の読出し動作が行なわれる。バンク2の読出し動作中に、リフレッシュタイマ212は、リフレッシュサイクル信号/Refcycを出力する。リフレッシュバンクアドレス指定回路213内OR回路221は、リフレッシュサイクル信号/Refcycを受けるとカウントアップ信号を出力する。バンクアドレスカウンタ222は、バンクアドレスのカウント値を「2」とする。リフレッシュ実施済バンク保持回路224には、バンクアドレス「1」のみが保持され、バンクアドレス「2」が保持されていないので、リフレッシュ実施済/未実施判定回路223は、未実施と判定し、バンクアドレス「2」を第1比較回路225に出力する。読出し/書込み動作バンク検知回路226には、読出し信号READおよびバンクアドレス「2」を受けて、バンクアドレス「2」を第1比較回路225および第2比較回路227に出力する。第1比較回路225は、受けた2つのバンクアドレスが同一なので、次のバンク指示する信号NEXTを出力する。
OR回路221は、次のバンク指示する信号NEXTを受けるとカウントアップ信号を出力する。バンクアドレスカウンタ222は、バンクアドレスのカウント値を「3」とする。リフレッシュ実施済バンク保持回路224には、バンクアドレス「1」のみが保持され、バンクアドレス「3」が保持されていないので、リフレッシュ実施済/未実施判定回路223は、未実施と判定し、バンクアドレス「3」を第1比較回路225に出力する。読出し/書込み動作バンク検知回路226には、読出し信号READおよびバンクアドレス「2」を受けて、バンクアドレス「2」を第1比較回路225および第2比較回路227に出力する。第1比較回路225は、受けた2つのバンクアドレスが異なるので、リフレッシュ実施済/未実施判定回路223から受けたバンクアドレス「3」をリフレッシュ制御回路211に送るとともに、リフレッシュ実施済みバンク保持回路224にバンクアドレス「3」を出力し保持させる。リフレッシュ制御回路211は、バンクアドレス「3」を受けるとバンク3のリフレッシュ動作を制御する。
次に、外部からのバンク4を指定した読出し信号READに基づき、バンク4の読出し動作が行なわれる。
次に、外部からのバンク1を指定した読出し信号READに基づき、バンク1の読出し動作が行なわれる。バンク1の読出し動作中に、リフレッシュタイマ212は、リフレッシュサイクル信号/Refcycを出力する。リフレッシュバンクアドレス指定回路213内のOR回路221は、リフレッシュサイクル信号/Refcycを受けるとカウントアップ信号を出力する。バンクアドレスカウンタ222は、バンクアドレスのカウント値を「4」とする。リフレッシュ実施済バンク保持回路224には、バンクアドレス「1」および「3」のみが保持され、バンクアドレス「4」が保持されていないので、リフレッシュ実施済/未実施判定回路223は、未実施と判定し、バンクアドレス「4」を第1比較回路225に出力する。読出し/書込み動作バンク検知回路226には、読出し信号READおよびバンクアドレス「1」を受けて、バンクアドレス「1」を第1比較回路225および第2比較回路227に出力する。第1比較回路225は、受けた2つのバンクアドレスが異なるので、リフレッシュ実施済/未実施判定回路223から受けたバンクアドレス「4」をリフレッシュ制御回路211に送るとともに、リフレッシュ実施済みバンク保持回路224にバンクアドレス「4」を出力し保持させる。リフレッシュ制御回路211は、バンクアドレス「4」を受けるとバンク4のリフレッシュ動作を制御する。
次に、外部からのバンク3を指定した読出し信号READに基づき、バンク3の読出し動作が行なわれる。
次に、外部からのバンク4を指定した読出し信号READに基づき、バンク4の読出し動作が行なわれる。バンク4の読出し動作中に、リフレッシュタイマ212は、リフレッシュサイクル信号/Refcycを出力する。リフレッシュバンクアドレス指定回路213内のOR回路221は、リフレッシュサイクル信号/Refcycを受けるとカウントアップ信号を出力する。バンクアドレスカウンタ222は、バンクアドレスのカウント値を「1」(循環的に更新)とする。リフレッシュ実施済バンク保持回路224には、バンクアドレス「1」、「3」および「4」が保持されているので、リフレッシュ実施済/未実施判定回路223は、実施と判定し、次のバンクを指示する信号NEXTを出力する。
OR回路221は、次のバンク指示する信号NEXTを受けるとカウントアップ信号を出力する。バンクアドレスカウンタ222は、バンクアドレスのカウント値を「2」とする。リフレッシュ実施済バンク保持回路224には、バンクアドレス「1」、「3」、「4」が保持され、バンクアドレス「2」が保持されていないので、リフレッシュ実施済/未実施判定回路223は、未実施と判定し、バンクアドレス「2」を第2比較回路227に出力する。ここで、バンクアドレス「2」を第1比較回路225でなく、第2比較回路227に出力したのは、バンクアドレス「1」〜「4」のうち、このバンクアドレス「2」が未実施の最後のバンクだからである。読出し/書込み動作バンク検知回路226には、読出し信号READおよびバンクアドレス「4」を受けて、バンクアドレス「4」を第1比較回路225および第2比較回路227に出力する。第2比較回路227は、受けた2つのバンクアドレスが異なるので、リフレッシュ実施済/未実施判定回路223から受けたバンクアドレス「2」をリフレッシュ制御回路211に送るとともに、リフレッシュ実施済みバンク保持回路224にバンクアドレス「2」を出力し保持させる。リフレッシュ制御回路211は、バンクアドレス「2」を受けるとバンク2のリフレッシュ動作を制御する。
リフレッシュ実施済バンク保持回路224は、すべてのバンクアドレス「1」〜「4」を保持すると、保持しているバンクアドレスを消去するとともに、バンクアドレスカウンタ222に、バンクアドレスのカウント値を「0」にリセットさせる。
(リフレッシュバンクアドレス指令回路の動作例2)
図8は、本実施の形態に係る同期式擬似SRAM200の別の動作例を説明するための図である。
動作例1の最後の段階で、外部からのバンク4を指定した読出し信号READの代りに、バンク2を指定した読出し信号READが入力されたときの処理について説明する。
外部からのバンク2を指定した読出し信号READに基づき、バンク2の読出し動作が行なわれる。バンク2の読出し動作中に、リフレッシュタイマ212は、リフレッシュサイクル信号/Refcycを出力する。リフレッシュバンクアドレス指定回路213内のOR回路221は、リフレッシュサイクル信号/Refcycを受けるとカウントアップ信号を出力する。バンクアドレスカウンタ222は、バンクアドレスのカウント値を「1」(循環的に更新)とする。リフレッシュ実施済バンク保持回路224には、バンクアドレス「1」、「3」および「4」が保持されているので、リフレッシュ実施済/未実施判定回路223は、実施と判定し、次のバンクを指示する信号NEXTを出力する。
OR回路221は、次のバンク指示する信号NEXTを受けるとカウントアップ信号を出力する。バンクアドレスカウンタ222は、バンクアドレスのカウント値を「2」とする。リフレッシュ実施済バンク保持回路224には、バンクアドレス「1」、「3」、「4」が保持され、バンクアドレス「2」が保持されていないので、リフレッシュ実施済/未実施判定回路223は、未実施と判定し、バンクアドレス「2」を第2比較回路227に出力する。
ここで、バンクアドレス「2」を第1比較回路225でなく、第2比較回路227に出力したのは、バンクアドレス「1」〜「4」のうち、このバンクアドレス「2」が未実施の最後のバンクだからである。読出し/書込み動作バンク検知回路226には、読出し信号READおよびバンクアドレス「2」を受けて、バンクアドレス「2」を第1比較回路225および第2比較回路227に出力する。第2比較回路227は、受けた2つのバンクアドレスが同一なので、リフレッシュ実施済/未実施判定回路223から受けたバンクアドレス「2」と、バンク2の読出し動作終了後にリフレッシュを行なう旨の指令とをリフレッシュ制御回路211に送るとともに、リフレッシュ実施済みバンク保持回路224にバンクアドレス「2」を出力し保持させる。リフレッシュ制御回路211は、バンクアドレス「2」と、バンク2の読出し動作終了後にリフレッシュを行なう旨の指令を受けると、所定の時間経過した後、バンク2のリフレッシュ動作を制御する。
リフレッシュ実施済バンク保持回路224は、すべてのバンクアドレス「1」〜「4」を保持すると、保持しているバンクアドレスを消去するとともに、バンクアドレスカウンタ222に、バンクアドレスのカウント値を「0」にリセットさせる。
以上のように、本実施の形態に係る同期式擬似SRAMによれば、読出しまたは書込みを行なうバンクと重ならず、かつリフレッシュが未実施のバンクがリフレッシュするバンクが決められるので、セルフリフレッシュのタイミングが遅れることなく、かつ公平な頻度でリフレッシュを行なうことができる。
なお、本実施の形態では、1回〜4回、および5回〜8回などの各4回のセルフリフレッシュにおいて、4個のバンクすべてのリフレッシュを完了するものとしたが、これに限定するものではない。たとえば、8回のセルフリフレッシュごとに4個すべてのリフレッシュを完了するものとしてもよい。この場合には、動作例2では、4回目のバンク2のセルフリフレッシュのタイミングを遅らせないようにすることができる。また、外部のシステム側が読出し信号READに先立って、読出すバンクアドレスのスケジュールを指定できるものとしてもよい。この場合には、スケジュール指定されたバンクアドレスの読出しと重ならず、かつリフレッシュ回数がすべてのバンクで均等になるように、リフレッシュするバンクアドレスのスケジュールを設定することができる。
また、本実施の形態の動作例では、読出し動作中にリフレッシュ要求が発生する場合にいて説明したが、書込み動作中にリフレッシュ要求が発生する場合についても、同様にして処理される。
また、本実施の形態は、同期式擬似SRAMに限定して適用されるものではなく、クロックに同期して動作しない擬似SRAMにも適用可能である。
[第3の実施形態]
本実施の形態は、複数個の同期式擬似SRAMを1つのパッケージに収容し、複数個の同期式擬似SRAMのリフレッシュのタイミングを同一にする構成に関する。
(構成)
図9は、本実施の形態に係る1つのパッケージに収容される各同期式擬似SRAM300の構成を示す。この同期式擬似SRAM300は、リフレッシュタイマ301と、制御回路302と、DRAMセルアレイ+周辺回路群303と、スイッチ304とを含む。
DRAMセルアレイ+周辺回路群303のDRAMセルアレイは、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイである。周辺回路群は、グローバル入出力線対GIOP(GIOおよび/GIO)と、各列に対応して設けられた列選択線と、列選択ゲートと、センスアンプと、プリアンプと、ライトドライバと、ロウデコーダ、コラムデコーダなどを含む。
制御回路302は、制御信号端子315を介して外部制御信号を受けるとともに、データ入出力端子316を介してDRAMセルアレイへの書込みデータを受けて、これらに基づいて、この同期式擬似SRAM300全体の処理を制御するとともに、データ入出力端子316を介して、DRAMセルアレイからの読出しデータを出力する。また、制御回路302は、リフレッシュ制御回路305と、WAIT制御回路306とを含む。
リフレッシュタイマ301は、リング発振器で構成され周期的に活性化されたリフレッシュサイクル信号/Refcycをスイッチ304およびリフレッシュタイマ出力PAD311に出力する。リフレッシュタイマ出力PAD311に与えられたリフレッシュサイクル信号/Refcycは、他の同期式擬似SRAMに送られる。
リフレッシュタイマ入力PAD312は、他の同期式擬似SRAMのリフレッシュタイマからのリフレッシュサイクル信号/Refcycを受ける。
ボンディングオプションPAD313は、印可される電位に応じてスイッチ304を制御する。
スイッチ304は、リフレッシュタイマ301からのリフレッシュサイクル信号/Refcycおよびリフレッシュタイマ入力PAD312からのリフレッシュサイクル信号/Refcycを受ける。2つのリフレッシュサイクル信号/Refcycは、周期は同一であるが、タイミングが異なる。
スイッチ304は、ボンディングオプションPAD313の印可電位に応じて、受けたリフレッシュサイクル信号/Refcycのいずれかをリフレッシュ制御回路305に出力する。すなわち、スイッチ304は、ボンディングオプションPAD313に接地電位が印可されたときに、リフレッシュタイマ入力PAD312からのリフレッシュサイクル信号/Refcycを出力し、接地電位以外の電位が印可されたときに、リフレッシュタイマ301からのリフレッシュサイクル信号/Refcycを出力する。
リフレッシュ制御回路305は、セルフリフレッシュの制御を行なう。
図10は、リフレッシュ制御回路305の詳細な構成を示す。同図を参照して、リフレッシュ制御回路305は、指令信号活性化回路50と、判定回路60と、NANDゲート41,44と、インバータ42と、バッファ48と、遅延回路43,49と、フリップフロップ45とを含む。
指令信号活性化回路50はリフレッシュ指令信号/REFEを活性化させるためにリフレッシュフラッグ信号Refflagを出力する。判定回路60は、リフレッシュフラッグ信号Refflagにより活性化されたリフレッシュ指令信号/REFEを出力するか否かを判定するために判定信号Refwinを出力する。
NANDゲート41は、リフレッシュフラッグ信号Refflagと判定信号Refwinとを受け、リフレッシュフラッグ信号Refflagと判定信号Refwinとの論理積を演算し、その演算結果を反転した信号を反転論理積信号/REFSFとして出力する。
インバータ42はNANDゲート41から出力された信号/REFSFを受けて反転した信号φA1を出力する。また、遅延回路43は反転論理積信号/REFSFを受けて一定時間遅延させる。
NANDゲート44はインバータ42の出力信号φA1と遅延回路43の出力信号とを受け、信号φA1と遅延回路43の出力信号との論理積を演算し、その演算結果を反転した信号/REFSを出力する。
フリップフロップ45はNANDゲート46および47で構成される。NANDゲート46は信号/REFSとNANDゲート47から出力された出力信号φA3とを受け、信号/REFSと信号φA3との論理積を演算し、その演算結果を反転した信号φA2を出力する。NANDゲート47はNANDゲート46から出力された信号φA2と遅延回路49から出力された信号φA4とを受け、信号A2と信号A4との理論積を演算し、その演算結果を反転した信号をリフレッシュ指令信号/REFEとして出力する。リフレッシュ指令信号/REFEの活性化に応じて、リフレッシュ動作が行なわれる。
遅延回路49は、フリップフロップ45から出力されたリフレッシュ指令信号/REFEを受けて一定時間遅延させた信号φA4を出力する。
バッファ48は信号φA3を受けてリフレッシュ指令信号/REFEを出力する。
指令信号活性化回路50は、フリップフロップ52と、NANDゲート55と、インバータ56および57と、遅延回路58とを含む。
フリップフロップ52は、NANDゲート53および54で構成される。NANDゲート53はリフレッシュサイクル信号/RefcycとNANDゲート54の出力信号φA11とを受け、リフレッシュサイクル信号/Refcycと信号φA11との論理積を演算し、その演算結果を反転した信号φA10を出力する。また、NANDゲート54は、NANDゲート53から出力された出力信号φA10と、NANDゲート55から出力された出力信号φA12とを受け、信号φA10と信号φA12との論理積を演算し、その演算結果を反転した信号φA11を出力する。
インバータ56は、フリップフロップ52から出力された信号φA11を受け、反転し、反転した信号をリフレッシュフラッグ信号Refflagとして出力する。
インバータ57は、リフレッシュ指令信号/REFEを受け、反転する。また、遅延回路58は、インバータ57により反転されたリフレッシュ指令信号/REFEを受け、反転されたリフレッシュ指令信号/REFEを一定時間遅延させた信号φA13を出力する。
NANDゲート55は、リフレッシュ指令信号/REFEと遅延回路58から出力された信号φA13とを受け、リフレッシュ指令信号/REFEと信号φA13との論理積を演算し、その演算結果を反転した信号φA12を出力する。
判定回路60はバッファ回路61で構成される。バッファ回路61は内部チップイネーブル信号ZINTCEを受け、判定信号Refwinを出力する。
再び、図9を参照して、WAIT制御回路306は、リフレッシュ制御回路305の制御によりリフレッシュ制御が行なわれている間、WAIT端子314を介して出力するWAIT信号のレベルを「L」とする。
(パッケージ)
図11は、本実施の形態に係る2個の同期式擬似SRAMを収納したパッケージの構成を示す。同図を参照して、第1の同期式擬似SRAM300aおよび第2の同期式擬似SRAM300bは、それぞれ、図9の同期式擬似SRAMと同様の構成である。第1の同期式擬似SRAM300aのボンディングオプションPAD313aは、開放されており、スイッチ304aは、リフレッシュタイマ301aから出力されたリフレッシュサイクル信号/Refcycをリフレッシュ制御回路305aに送る。
一方、第2の同期式擬似SRAM300bのボンディングオプションPAD313bは、接地電位が与えられ、スイッチ304bは、リフレッシュタイマ入力PAD312bを通じて受けた第1の同期式擬似SRAM300aのリフレッシュタイマ301aから出力されたリフレッシュサイクル信号/Refcycをリフレッシュ制御回路305bに送る。これにより、リフレッシュ制御回路305aおよび305bは、いずれもリフレッシュタイマ301aのリフレッシュサイクル信号/Refcycにより動作するので、第1の同期式擬似SRAM300aおよび300bのリフレッシュのタイミングが同一となる
WAIT制御回路306aは、WAIT端子314aおよび314を通じてWAIT信号を出力し、WAIT制御回路306bは、WAIT端子314bおよび314を通じてWAIT信号を出力する。リフレッシュ制御回路305aおよび305bのリフレッシュのタイミングが同一となるので、各WAIT信号が「L」に変化するタイミングも同一となる。
以上のように、複数個の同期式擬似SRAMにおいて、リフレッシュ中により、外部から指示された動作を受け付けることができない旨を知らせるWAITのレベル変化のタイミングを同一にすることができる。
なお、本実施の形態では、2個の同期式擬似SRAMを搭載したパッケージを例にして説明したが、2個以上の任意の個数の同期式擬似SRAMを搭載させるものとしてもよい。
また、本実施の形態では、複数の同期式擬似SRAMで、リフレッシュサイクル信号/Refcycを共用することとし、リフレッシュタイマ出力PADを通じて自己のリフレッシュサイクル信号/Refcycを出力し、リフレッシュタイマ入力PADを通じて、他の同期式擬似SRAMのリフレッシュサイクル信号/Refcycを受けたが、これに限定するものではない。たとえば、複数の同期式擬似SRAMでリフレッシュフラッグ信号Refflag、反転論理積信号/REFSF、またはリフレッシュ指令信号/REFEを共用することとし、リフレッシュタイマ出力PADおよびリフレッシュタイマ入力PADを通じて、これらの信号の授受を行なうこととしてもよい。
さらに、本実施の形態では、複数の同期式擬似SRAMがそれぞれのWAIT信号を出力したが、これに限定するものではない。たとえば、WAIT制御回路306aとWAIT端子314aとの間、およびWAIT制御回路306bとWAIT端子314bとの間に、それぞれボンディングオプションPADで制御できるスイッチを設け、一方のスイッチのみ、WAIT端子とWAIT制御回路とが接続するように制御することによって、1つの同期式擬似SRAMからのみWAIT信号を出力するものとしてもよい。
さらに、複数個の同期式擬似SRAMがWAIT信号を出力しない場合、つまり、セルフリフレッシュのタイミングと、外部からの読出し信号READまたは書込み信号WRITEのタイミングとが重なったときに、読出し信号READまたは書込み信号WRITEを保持しておき、セルフリフレッシュ終了後に、読出し動作または書込み動作を行なう場合においては、リフレッシュサイクル信号/Refcycのみを共用するものとしてもよい。つまり、WAITの制御は行なわない。この場合においても、複数個の同期式擬似SRAMが同時にリフレッシュを行なうので、信号の干渉が起こりにくいという一定の効果がある。
また、本実施の形態は、同期式擬似SRAMに限定して適用されるものではなく、クロックに同期して動作しない擬似SRAMにも適用可能である。
[第4の実施形態]
本実施の形態は、バースト読出し/書込みにおいて、読出しまたは書込み信号が生成された第1のクロックに従って先頭から数個のビットの読出し/書込みを行ない、コマンドレイテンシCLで規定される第2のクロック以降のクロックに従って、残りのビットの読出し/書込みを行なう同期式擬似SRAMに関する。
(構成)
図12は、本実施の形態に係る同期式擬似SRAM400の構成を示す。同図を参照して、この同期式擬似SRAM400は、DRAMセルアレイ401と、制御回路402と、アドレスバッファ403と、RCR(Refresh Configuration Register)404と、BCR405(Bus Configuration Register)と、入出力回路およびバッファ406とを備える。
DRAMセルアレイ401は、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイである。
入出力回路およびバッファ406は、データ入出力端子DQを通じて、外部のシステム側との間でデータの入出力を行なう。入出力回路およびバッファ406は、入出力制御回路411から与えられるクロック信号CLKQに同期して、DRAMセルから出力されたデータを出力する。
RCR404は、セルフリフレッシュの方法を規定する。
BCR405は、外部のシステムとのインタフェース、たとえば、バーストレングスBL、およびコマンドレイテンシCLなどを記憶する。
アドレスバッファ403は、外部アドレス信号ADD[21:0]を受けて、内部アドレス信号を生成する。同期式擬似SRAMでは、アドレスバッファ403は、外部アドレス取込み信号ADV#が「L」のときに、外部アドレス信号ADD[21:0]を取込む。外部アドレス取込信号ADV#が「L」となるタイミングは、読出し信号READまたは書込み信号WRITEが生成されるタイミングよりも早い。そして、このとき与えられる外部アドレス信号ADD[21:0]は、ロウアドレスだけでなくコラムアドレスも含む。したがって、ロウアドレスおよびコラムアドレスは、読出し信号READまたは書込み信号WEITEが生成されるよりも先立って、取得される。
このように、ロウアドレスだけでなくコラムアドレスも、読出し信号READまたは書込み信号が生成されるのに先立った取得できるので、ロウアクセスの後、コマンドレイテンシCLで規定されるクロックが入力されるまで待たずに、コラムアクセスを開始することができる。本実施の形態では、このような特徴を利用して、読出し信号READまたは書込み信号が生成されたときのクロック(第1のクロックという)に従って、バーストアクセスの先頭のコラムのデータを読出すためのコラムアクセス処理を行なう。そして、コマンドレイテンシCLで規定されるクロック(第2のクロックという)に従って、バーストアクセスの残りのコラムのデータを読出すためのコラムアクセス処理を行なう。
制御回路402は、コマンドデコーダ410と、入出力制御回路411と、ロウ制御回路409と、コラム制御回路407と、WAIT制御回路412と、リフレッシュ制御回路420とを含む。
コマンドデコーダ410は、外部制御信号より生成された内部制御信号の論理レベルの組合せに従って、ロウ活性化信号ACT、読出し信号READ、および書込み信号WRITEを生成する。
ロウ制御回路409は、コラムイネーブル信号COLE、メモリセルとグローバルビット線対GIO,ZGIOとの間に設けられたビット線対BL,ZBLに接続されたセンスアンプを活性化させるセンスアンプ活性化信号SENSEを生成する。図13は、ロウ制御回路409の構成を示す。同図を参照して、遅延回路(Delay)DL101は、読出し信号READまたは書込み信号WRITEが生成されたクロックである第1クロックCLK0の立ち上がりに応じて活性化されるロウ活性化信号ACTを受ける。遅延回路(Delay)DL101は、ロウ活性化信号ACTを遅延させたセンスアンプ活性化信号SENSEを出力する。遅延回路(Delay)DL102は、センスアンプ活性化信号SENSEを受けて、センスアンプ活性化信号SENSEを遅延させたコラムイネーブル信号COLEを生成する。
コラム制御回路407は、グローバルビット線対GIO,ZGIOに接続されたプリアンプを活性化させるプリアンプ活性化信号PARMと、コラムデコーダ活性化トリガ信号CDETRGを生成する。図14は、コラム制御回路407の構成の一部を示す。同図を参照して、コラム制御回路407は、COLP_SHFT発生器422と、CDETRG発生器421とを備える。
COLP_SHFT発生器422は、外部クロックCLK、読出し信号READ(または書込み信号WRITE)、コマンドレイテンシCL、読出し信号READ(または書込み信号WRITE)が生成されたときのクロックである第1のクロックCLK0で読出すビット数N1(本実施の形態では「1」である)、およびバーストレングスBLに基づいて、コラムシフト信号COLP_SHFTを生成する。すなわち、COLP_SHFT発生器422は、読出し信号READ(または書込み信号WRITE)が生成されたときのクロックの後の、(CL−N1)個目のクロックCLKの立ち下りに応じて、コラムシフト信号COLP_SHFTを活性化し、バーストレングスカウンタのカウンタ値がバーストレングスBLになったことに応じて、コラムシフト信号COLP_SHFTを非活性化する。
CDETRG発生器421は、コラムシフト信号COLP_SHFT、外部クロックCLK、およびコラムイネーブル信号COLEに基づいて、コラムデコーダ活性化トリガ信号CDETRGを生成する。
図15は、CDETRG発生器421の詳細な構成を示す。同図を参照して、CDETRG発生器421は、ワンショットパルス発生器431と、論理積回路AND41と、論理和回路OR42とを備える。ワンショットパルス発生器431は、コラムイネーブル信号COLEの立ち上がりで、レベルが「H」のワンショットパルスを生成する。このワンショットパルスは、第1のクロックCLK0に同期してアクセスされる第1番目のコラムを活性化させる信号となる。
論理積回路AND41は、コラムイネーブル信号COEが「H」であり、COLP_SHFTが「H」のときに、レベルが「H」のクロックパルスを出力する。このクロックパルスが、第2のクロックCLK2以降のクロックに同期してアクセスされる第2番目〜第4番目のコラムを活性化させる信号となる。
論理和回路OR42は、ワンショットパルス発生器431から出力されるワンショットパルス、および論理積回路AND41から出力されるクロックパルスを合成する。合成されたパルスがコラムデコーダ活性化トリガ信号CDETRGのパルスとなる。
図16は、WAIT制御回路412の構成を示す。同図を参照して、このWAIT制御回路412は、WAIT_ASYN発生回路432と、WAIT発生回路433とを備える。
WAIT_ASYN発生回路432は、コマンドデコーダ410から読出し信号READまたは書込み信号WRITEが入力され、かつ外部チップイネーブル信号CE#が「L」に活性化されていることに応じて、WAIT_ASYN信号を「L」にする。その後、WAIT_ASYN発生回路432は、プリアンプ活性化信号PAEを受けた後、先頭のビットのデータD0がデータ出力端子DQから出力されるのに要する所定時間の経過後、WAIT_ASYN信号を「H」にする。その後、WAIT_ASYN発生回路432は、外部チップイネーブル信号CE#が「H」に非活性化されたことに応じて、WAIT_ASYN信号をHi−Zにする。
WAIT発生回路433は、コマンドデコーダ410から読出し信号READまたは書込み信号WRITEが入力され、かつ、外部チップイネーブル信号CE#が「L」に活性化されていることに応じて、WAIT信号を「L」にする。その後、WAIT発生回路433は、(CL−1)+(読出し信号READまたは書込み信号WRITEが生成されたときのクロックである第1のクロックCLK0で読出すビット数N1)の個数のクロックを受けた後、WAIT信号を「H」に活性化する。その後、WAIT発生回路433は、外部チップイネーブル信号CE#が「H」に非活性化されたことに応じて、WAIT信号をHi−Zにする。
(従来の同期式擬似SRAMのWAIT信号のタイミング)
図17は、従来の同期式擬似SRAMのWAIT信号のタイミングを表す図である。同図に示すように、読出し信号READが入力され、かつ、外部チップイネーブル信号CE#が「L」に活性化されていることに応じて、WAIT信号は、「L」になる。その後、(CL−1)(CL=3)の個数のクロックを受けた後、WAIT信号が「H」になる。その後、外部チップイネーブル信号CE#が「H」に非活性化されたことに応じて、WAIT信号は、Hi−Zになる。
(本実施の形態の同期式擬似SRAM400のWAIT_ASYN信号およびWAIT信号のタイミング)
図18は、本実施の形態の同期式擬似SRAM400のWAIT_ASYN信号およびWAIT信号のタイミングを表す図である。同図に示すように、読出し信号READが入力され、かつ、外部チップイネーブル信号CE#が「L」に活性化されていることに応じて、WAIT_ASYN信号は、「L」になる。その後、プリアンプ活性化信号PAEを受けた後、先頭のビットのデータD0がデータ出力端子DQから出力されるのに要する所定時間の経過後、WAIT_ASYN信号は、「H」になる。これにより、クロックCLK0に従ってコラムアクセスが行なわれる先頭のビットのデータD0が出力されるタイミングを外部のシステム側に通知することができる。その後、外部チップイネーブル信号CE#が「H」に非活性化されたことに応じて、WAIT_ASYN信号はHi−Zになる。
また、同図に示すように、読出し信号READが入力され、かつ、外部チップイネーブル信号CE#が「L」に活性化されていることに応じて、WAIT信号は、「L」になる。その後、(CL−1+N1)(CL=3、N1=1)の個数のクロックを受けた後、WAIT信号が「H」になる。これにより、コマンドレイテンシCLに基づいて定められるクロックに同期してコラムアクセスが行なわれる先頭のビットのデータD1が出力されるタイミングを外部のシステム側に通知することができる。その後、外部チップイネーブル信号CE#が「H」に非活性化されたことに応じて、WAIT信号は、Hi−Zになる。
再び、図12を参照して、周辺回路群408は、ロウデコーダ418と、コラムデコーダ417と、図示しないセンスアンプと、図示しないプリアンプとを含む。
ロウデコーダ418は、選択されたワード線を活性化する。
図19は、コラムデコーダ417の構成を示す。同図に示すように、コラムデコーダ活性化トリガ信号CDETRGが活性化されたときに、入力されたコラムアドレスに対応するコラム選択信号CSLを活性化する。
図示しないセンスアンプは、第1の増幅回路であり、ビット線対BL,ZBLの間の電位差を増幅する。
図示しないプリアンプは、第2の増幅回路であり、複数のビット線対BL,ZBLに接続されたグローバルビット線対GIO,ZGIOの間の電位差を拡大する。
図12のリフレッシュ制御回路420は、図示しない内部のリフレッシュタイマに基づいて、DRAMセルアレイのセルフリフレッシュ動作を制御する。
(本実施の形態の同期式擬似SRAMの動作)
図20は、本実施の形態の同期式擬似SRAM400の動作を示すタイミングチャートである。同図を参照して、まず、読出し信号READが生成されたクロックCLK0(第1のクロック)の立ち上がりに同期して、以下のようにロウアクセス処理が行なわれる。
コマンドデコーダ410は、クロックCLK0に同期して活性化されたロウ活性化信号を出力する。
ロウデコーダ418は、アドレスバッファ403から送られるロウアドレスに基づいて、ワード線を選択して、選択したワード線を活性化する。
ロウ制御回路409は、ロウ活性化信号ACTを遅延させてセンスアンプイネーブル信号SENSEが活性化する。これにより、周辺回路群408内の図示しないセンスアンプがビット線対の増幅を行なう。
ロウ制御回路409は、センスアンプイネーブル信号SENSEを遅延させて、コラムイネーブル信号COLEを活性化する。
次に、第1のクロックCLK0の立ち上がりに同期して、第1番目のコラムのコラムアクセス処理が行なわれる。
CDETRG発生器421は、コラムイネーブル信号COLEの立ち上がりから、ワンショットパルスを生成する。これがコラムデコーダ活性化トリガ信号CDETRGの第1番目のパルスとなる。
コラムデコーダ417は、コラムデコーダ活性化トリガ信号CDETRGの第1番目のパルスに応じて、入力された第1番目のコラムのコラムアドレスに対応するコラム選択信号CSLを活性化する。
コラム選択信号CSLで選択された第1番目のコラムのビット線対の電位が周辺回路群408内の図示しないプリアンプに送られて、増幅が行なわれる。
プリアンプで増幅された第1番目のコラムのデータは、入出力回路およびバッファ406に送られる。一方、入出力制御回路411は、外部クロックCLKを受けて内部クロック信号CLKQを出力する。ここで、第1のクロックCLK0の立ち上がりに応じて、先頭のクロック信号CLKQのパルスが生成される。
入出力回路およびバッファ406は、クロック信号CLKQに同期して、第1番目のコラムから出力されたデータD0をデータ出力端子DQを通じて外部へ出力する。
次に、第1のクロックCLK0から(CL−N1)=2個目のクロックCLK2(第2のクロック)以降のクロックに同期して、第2番目〜第4番目のコラムのコラムアクセス処理が行なわれる。
COLP_SHFT発生器422は、クロックCLK2(第2のクロック)の立ち下りに応じて、コラムシフト信号COLP_SHFTを活性化し、バーストレングスカウンタのカウンタ値がバーストレングスBLになったことに応じて、コラムシフト信号COLP_SHFTを非活性化する。
CDETRG発生器421は、コラムシフト信号COLP_SHFTが「H」の期間に含まれる3個のクロックパルスを抽出する。それらがコラムデコーダ活性化トリガ信号CDETRGの第2番目〜第4番目のパルスとなる。
コラムデコーダ417は、コラムデコーダ活性化トリガ信号CDETRGの第2番目〜第4番目のパルスに応じて、入力された第2番目〜第4番目のコラムのコラムアドレスに対応するコラム選択信号CSLを活性化する。
コラム選択信号CSLで選択された第2番目〜第4番目のコラムのビット線対の電位が周辺回路群408内の図示しないプリアンプに送られて、増幅が行なわれる。
プリアンプで増幅された第2番目〜第4番目のコラムのデータは、入出力回路およびバッファ406に送られる。一方、入出力制御回路411は、外部からクロック信号CLKを受けて内部クロック信号CLKQを出力する。クロック信号CLKQの第2番目〜第4番目のパルスのタイミングは、通常通りのタイミングである。
入出力回路およびバッファ406は、クロック信号CLKQの第2番目〜第4番目のパルスに同期して、第2番目〜第4番目のコラムから出力されたデータD1〜D3をデータ出力端子DQを通じて外部へ出力する。
以上のように、本実施の形態に係る同期式擬似SRAMによれば、コマンドレインテンシCLで規定されるタイミングよりも早期にデータを出力するので、システム側では、データを早く受け取ることができ、処理を早く開始することができる。また、バスが不確定な時間を短くできる。
本実施の形態では、第1のクロックCLK0に同期して1個のデータを出力したが、これに限定するものではなく、2個または3個のデータを出力するものとしてもよい。第1のクロックCLK0に同期して出力するデータの個数は、システム側の都合で決めればよい。
なお、本実施の形態では、外部チップイネーブル信号CE#が「H」に非活性化されたことに応じて、WAIT_ASYN信号はHi−Zになるものとしたが、これに限定されるものではない。たとえば、WAIT信号が「H」になったことに応じて、WAIT_ASYN信号はHi−Zになるものとしてもよい。
また、第1のクロックCLK0で読出すビット数N1は、固定値であっても、外部信号によってレジスタに値が設定されるものであってもよい。
また、本実施の形態では、第1のクロックCLK0で読出すビット数N1が「1」のため、ワンショットパルス発生器431を用いて、第1のクロックCLK0に同期してアクセスされる1個のコラムを活性化させる信号を生成したが、N1が2以上の場合には、生成したワンショットパルスを1サイクルごとにシフトしたパルスをN1個出力する回路を追加すればよい。
また、ロウ制御回路は、図13に示すものに限定されるものではなく、たとえば、図21に示すようなものであってもよい。図21を参照して、遅延回路(Delay)DL191および遅延回路(Delay)DL192は、読出し信号READまたは書込み信号WRITEが生成されたクロックである第1クロックCLK0の立ち上がりに応じて活性化されるロウ活性化信号ACTを受ける。遅延回路(Delay)DL191は、ロウ活性化信号ACTを遅延させたセンスアンプ活性化信号SENSEを出力する。遅延回路(Delay)DL192は、ロウ活性化信号ACTを遅延させたコラムイネーブル信号COLEを生成する。
また、本実施の形態は、同期式擬似SRAMに限定して適用されるものではなく、フラッシュメモリなどのようなのでもよく、クロックに同期して動作する半導体記憶装置であればどのようなものにも適用することができる。特に、高集積、高速が要求の高い同期式擬似SRAMへの応用が適している。
なお、本実施の形態の動作例では、外部信号によって読出し信号READが生成されたときの動作を説明したが、外部信号によって書込み信号WRITEが生成されたときも同様に動作する。
[第4の実施形態の変形例]
本変形例は、リフレッシュ動作中に読出し信号READまたは書込み信号WRITEが生成されたときにおいても、第4の実施形態と同様に、バースト読出し/書込みにおいて、第1のクロックに従って先頭から数個のビットを読出し/書込みし、コマンドレイテンシCLで規定される第2のクロック以降のクロックに従って、残りのビットを読出し/書込みする同期式擬似SRAMに関する。
本変形例は、リフレッシュ動作中に読出し信号READまたは書込み信号WRITEが生成されたときにおいても対応できるように、第4の実施形態の制御回路402にコマンドシフト回路480を追加する。
図22は、コマンドシフト回路480の入出力信号を表す図である。コマンドシフト回路408には、コマンドデコーダ410から読出し信号READと、リフレッシュ制御回路420からリフレッシュ動作信号REFRESHとが入力されて、修正読出し信号READFを出力する。この修正読出し信号READFは、読出し信号READが送られている回路に、読出し信号READに代わって送られる。
図23は、コマンドシフト回路480の詳細な構成を示す。同図を参照して、リフレッシュ動作信号REFRESHを受ける反転論理積回路NAND81と、読出し信号READを受ける反転論理積回路NAND82とは、フリップフロップを構成する。インバータIV81は、リフレッシュ動作信号REFRESHを反転する。
インバータIV81の出力を受ける反転論理積回路NAND83と、読出し信号READを受ける反転論理積回路NAND84とは、フリップフロップを構成する。
反転論理積回路NAND83の出力およびリセット信号ZPORを受ける反転論理積回路NAND85と、反転論理積回路NAND82の出力および反転論理積回路NAND84の出力とを受ける反転論理積回路NAND86とは、フリップフロップを構成する。リセット信号ZPORは、電源がオンにされると「H」に活性化される。
インバータIV82は、反転論理積回路NAND86の出力を受ける。インバータIV83は、インバータIV82の出力を受ける。反転論理和回路NOR81は、反転論理積回路NAND86の出力とインバータIV83の出力とを受ける。
反転論理積回路NAND87は、反転論理和回路NOR81の出力とインバータIV82の出力とを受ける。遅延回路DL81は、反転論理積回路NAND87の出力を遅延させる。反転論理和回路NOR82は、インバータIV83の出力と遅延回路DL81の出力とを受ける。遅延回路DL82は、反転論理和回路NOR82の出力を遅延させる。
反転論理積回路NAND88は、遅延回路DL82の出力と反転論理和回路NOR81の出力とを受ける。遅延回路DL83は、反転論理積回路NAND88の出力を遅延させる。反転論理積回路NAND89は、遅延回路DL83の出力と反転論理和回路NOR81の出力とを受ける。
インバータIV84は、反転論理積回路NAND89の出力を受ける。インバータIV85は、インバータIV84の出力を受ける。反転論理積回路NAND90は、インバータIV85の出力と反転論理積回路NAND89の出力とを受ける。反転論理和回路NOR83は、反転論理積回路NAND90の出力とインバータIV84の出力とを受ける。インバータIV86は、反転論理和回路NOR83の出力を反転する。インバータIV87は、インバータIV86の出力を反転する。
反転論理積回路NAND91は、反転論理和回路NOR83の出力とインバータIV87の出力とを受ける。反転論理和回路NOR84は、反転論理積回路NAND91の出力とインバータIV84の出力とを受ける。インバータIV88は、反転論理和回路NOR84の出力を反転する。反転論理和回路NAND85は、インバータIV84の出力とインバータIV88の出力とを受ける。インバータIV89は、反転論理和回路NAND85の出力を反転して修正読出し信号READFを出力する。
図24(a)は、リフレッシュ動作が行なわれていないときに読出し信号READが入力されたときの修正読出し信号READFを表す図である。同図に示すように、リフレッシュ動作が行なわれていないとき、リフレッシュ動作信号REFRESHは、「L」である。コマンドシフト回路480で生成された修正読出し信号READFが活性化されるタイミングは、読出し信号READが活性化されるタイミングとほほ同一である。したがって、この修正読出し信号READFを読出し信号READの代りに用いても、第4の実施形態と同様の動作を行なうことができる。
図24(b)は、リフレッシュ動作中に読出し信号READが入力されたときの修正読出し信号READFを表す図である。同図に示すように、リフレッシュ動作が行なわれているときに、リフレッシュ動作信号REFRESHは、「H」であるが、リフレッシュ動作が終了すると「L」となる。コマンドシフト回路480で生成された修正読出し信号READFが活性化されるタイミングは、リフレッシュ動作信号REFRESHの立ち下り、リフレッシュの終了直後となる。したがって、この修正読出し信号READFを読出し信号READの代りに用いれば、リフレッシュ終了後から直ちに第4の実施形態と同様の動作を行なうことができる。つまり、図20では、読出し信号READが生成されたときのクロックCLK0を起点として一連の処理が行なわれたが、本変形例は、修正読出し信号READFが入力されたときのクロックを起点として一連の処理が行なわれることになる。
なお、本変形例では、リフレッシュ動作中に読出し信号READまたは書込み信号WRITEが生成された場合について説明したが、読出しまたは書込み動作などの実行中に、新たな読出し信号READまたは書込み信号WRITEが生成された場合についても、同様に適用することができる。特に、この新たな読出しまたは書込みを行なうワード線が、その前の読出しまたは書込みを行なっていたワード線と異なるときは、もとのワード線の非活性化、新たなワード線の活性化、およびセンスアンプによる増幅などの処理が必要なことから、本変形は、有効であるといえる。
なお、本変形例では、コマンドシフト回路480は、読出し信号READによって修正読出し信号READを生成するものとしたが、これに限定するものではなく、書込み信号WRITEによって修正書込み信号WRITEFを生成するものであってもよい。
[第5の実施形態]
本実施の形態は、同期モードと、非同期モードの両方のモードを有し、それぞれのモードに適した第2の増幅回路であるプリアンプを有する同期式擬似SRAMに関する。なお、第1の増幅回路であるセンスアンプは、ビット線対BL,ZBLの電位を増幅するものであり、第2の増幅回路であるプリアンプは、複数のビット線対BL,ZBLに接続されたグローバルビット線対GIO,ZGIOの電位を増幅するものである。
(構成)
図25は、本実施の形態に係る同期式擬似SRAM500の構成を示す。同図を参照して、この同期式擬似SRAM500は、DRAMセルアレイ501と、制御回路502と、周辺回路群504と、アドレスバッファ503とを含む。
DRAMセルアレイ501は、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイである。
アドレスバッファ503は、外部アドレス信号ADD[21:0]を受けて、内部アドレス信号を生成する。
制御回路502は、コラム制御回路505と、コマンドデコーダ506と、共通信号生成回路507と、同期対応プリアンプ制御回路508と、非同期対応プリアンプ制御回路509と、リフレッシュ制御回路510と、WAIT制御回路511とを備える。
コラム制御回路505は、入力されるアドレスに基づいて、コラム選択信号CSLを出力する。
リフレッシュ制御回路510は、図示しない内部のリフレッシュタイマに基づいて、DRAMセルアレイのセルフリフレッシュ動作を制御する。
WAIT制御回路511は、リフレッシュ制御回路510の制御によりリフレッシュ制御が行なわれている間、WAIT端子を介して出力するWAIT信号のレベルを「L」とする。
コマンドデコーダ506は、外部制御信号より生成された内部制御信号の論理レベルの組合せに従って、ロウ活性化信号ACT、読出し信号READ、および書込み信号WRITEを生成する。
図26は、共通信号生成回路507の構成を示す。同図を参照して、共通信号生成回路507は、プリアンプ活性化準備信号発生器523と、同期指示信号発生器524とを含む。同図に示すように、プリアンプ活性化準備信号PAEMは、コラム制御回路505から送られたコラム選択信号CSLを遅延回路(Delay)DL53でα時間だけ遅延させて生成される。プリアンプ活性化準備信号PAEMは、同期対応プリアンプ制御回路508と、非同期対応プリアンプ制御回路509とに送られる。
同期指示信号発生器524は、外部チップイネーブル信号CE#を受けるインバータIV54と、インバータIV54の出力と外部クロックCLKとを受ける反転論理積回路NAND53と、外部チップイネーブル信号CE#を受けるインバータIV53と、インバータIV53の出力をβ時間だけ遅延させる遅延回路(Delay)DL51と、外部チップイネーブル信号CE#と遅延回路(Delay)DL51の出力とを受ける反転論理積回路NAND54と、反転論理積回路NAND53の出力と反転論理積回路NAND55の出力とを受ける反転論理積回路NAND58と、反転論理積回路NAND54の出力と反転論理積回路NAND58の出力とを受ける反転論理積回路NAND55とを備える。
図27(a)および(b)は、同期指示信号SYNCが生成されるタイミングチャートを示す。
図27(a)を参照して、外部クロックCLKが入力されているときには、同期指示信号SYNCは、外部チップイネーブル信号CE#が「L」に活性化された後、最初のクロックCLKの立ち上がりで同期モードを示す「H」となり、その後、外部チップイネーブル信号CE#が「H」に非活性化されて遅延回路(Delay)DL51によるβ時間だけ遅延後に「L」となる。
図27(b)を参照して、外部クロックCLKが入力されないときに、同期指示信号SYNCは、非同期モードを示す「L」となる。
同期指示信号SYNCは、同期対応プリアンプ制御回路508と、非同期対応プリアンプ制御回路509とに送られる。
図28は、同期対応プリアンプ制御回路508の構成を示す。同図に示すように、同期対応プリアンプ制御回路508は、基準信号発生器521と、同期式動作用プリアンプ制御信号発生器522とを含む。
図29は、基準信号発生器521の構成を示す。同図に示すように、基準信号発生器521は、プリアンプ活性化準備信号PAEMおよび同期指示信号SYNCを受ける反転論理積回路NAND56と、反転論理積回路NAND56の出力を受けるインバータIV55と、インバータIV55の出力をγ時間だけ遅延させる遅延回路(Delay)DL52と、遅延回路(Delay)DL52の出力の「H」レベル側をε時間だけ遅延させる遅延回路(High側Delay)HDL53とを備える。遅延回路(Delay)DL52の出力が第1の基準信号PACLであり、遅延回路(High側Delay)HDL53の出力が第2の基準信号PAELである。
図30は、High側Delayの一例を示す図である。High側Delayは、PチャネルMOSトランジスタP62と、NチャネルMOSトランジスタN62と、抵抗Rと、コンデンサC51と、インバータIV56とを備える。High側DelayのノードBが「L」から「H」に変化するタイミングは、ノードAが「L」から「H」に変化するタイミングよりも遅れるが、ノードBが「H」から「L」に変化するタイミングは、ノードAが「H」から「L」に変化するタイミングと同一となる。
図31は、同期対応プリアンプ制御信号発生器522の構成を示す。同図に示すように、同期対応プリアンプ制御信号発生器522は、第1の基準信号PAELおよび第2の基準信号PACLを受けて、反転プリアンプ接続信号ZPADT、プリアンプ活性化信号PAE、反転プリアンプ活性化信号ZPAE、反転プリアンプイコライズ信号ZPAEQを生成する。
図32は、同期対応プリアンプ512に関連する信号が生成されるタイミングを示す。同図を参照して、同期モードを指示するときには、図27(a)で説明したように、同期指示信号SYNCが「H」となる。コラム選択信号CSLは、適切なタイミングで「H」に活性化される。
プリアンプ活性化準備信号PAEMは、コラム選択信号CSLをα時間だけ遅延させて生成される。
プリアンプ活性化準備信号PAEMおよび同期指示信号SYNCが同期活性化信号発生器521の反転論理積回路NAND56に入力されて、プリアンプ活性化準備信号PAEMからγ時間だけ遅延した第1の基準信号PACLが生成される。
さらに、この第1の基準信号PACLのパルスの先頭がε時間だけ遅延した第2の基準信号PAELが生成される。
同期対応プリアンプ制御信号発生器522は、第1の基準信号PACLが「H」、かつ第2の基準信号PAELが「L」の時に、反転プリアンプ接続信号ZPADTを「L」に活性化する。また、同期対応プリアンプ制御信号発生器522は、第2の基準信号PAELをδ時間だけ遅延させて、プリアンプ活性化信号PAEを生成する。また、同期対応プリアンプ制御信号発生器522は、プリアンプ活性化信号PAEを反転させて、反転プリアンプ活性化信号ZPAEおよび反転プリアンプイコライズ信号ZPAEQを生成する。
一方、同期指示信号SYNCが非同期モードを示す「L」のときには、第1の基準信号PACLおよび第2の基準信号PAELが活性化されず、その結果、反転プリアンプ接続信号ZPADT、プリアンプ活性化信号PAE、反転プリアンプ活性化信号ZPAE、および反転プリアンプイコライズ信号ZPAEQが活性化されない。
図33は、非同期対応プリアンプ制御回路509の構成を示す。同図に示すように、非同期対応プリアンプ制御回路509は、プリアンプ活性化準備信号PAEMおよび同期指示信号SYNCの反転を受ける反転論理積回路NAND57と、反転論理積回路NAND57の出力をρ時間だけ遅延させる遅延回路(Delay)DL54と、遅延回路(Delay)DL54の出力を受けるインバータIV59とを備える。インバータIV59の出力がプリアンプ活性化信号PAEDである。
図34は、非同期対応プリアンプ513に関連する信号が生成されるタイミングを示す。同図を参照して、非同期モードを指示するときには、図27(b)で説明したように、同期指示信号SYNCが「L」となる。コラム選択信号CSLは、適切なタイミングで「H」に活性化される。
プリアンプ活性化準備信号PAEMは、コラム選択信号CSLをα時間だけ遅延させて生成される。
プリアンプ活性化準備信号PAEMおよび同期指示信号SYNCが非同期対応プリアンプ制御回路509に送られて、プリアンプ活性化準備信号PAEMがρ時間だけ遅延したプリアンプ活性化信号PAEDが生成される。
一方、同期指示信号SYNCが同期モードを示す「H」のときには、プリアンプ活性化信号PAEDは、活性化されない。
再び、図25を参照して、周辺回路群504は、同期対応プリアンプ512と、非同期対応プリアンプ513と、同期対応DBドライバ514と、非同期対応DBドライバ516と、出力回路515とを含む。
(同期対応プリアンプ512)
図35は、同期対応プリアンプ512の構成を示す。同図に示すように、この同期対応プリアンプ512は、反転プリアンプ接続信号ZPADTで制御されるスイッチ部561と、反転プリアンプイコライズ信号ZPAEQで制御されるイコライズ部562と、プリアンプ活性化信号PAEおよび反転プリアンプ活性化信号ZPAEで制御される増幅部563と、プリアンプ活性化信号PAEおよび反転プリアンプ活性化信号ZPAEで制御されるバッファ部564,565とを備える。
スイッチ部561は、PチャネルMOSトランジスタP32と、PチャネルMOSトランジスタP31とを含む。PチャネルMOSトランジスタP32は、グローバル入出力線GIOとNODEXとの間に配置される。PチャネルMOSトランジスタP31は、反転グローバル入出力線ZGIOとNODEYとの間に配置される。PチャネルMOSトランジスタP32およびPチャネルMOSトランジスタP31のゲートには、反転プリアンプ接続信号ZPADTが印加される。
イコライズ部562は、PチャネルMOSトランジスタP34と、PチャネルMOSトランジスタP33とを含む。PチャネルMOSトランジスタP34は、NODEXと電源との間に配置される。PチャネルMOSトランジスタP33は、NODEYと電源との間に配置される。PチャネルMOSトランジスタP34およびPチャネルMOSトランジスタP33のゲートには、反転プリアンプイコライズ信号ZPAEQが印加される。
増幅部563は、PチャネルMOSトランジスタP35〜P39と、NチャネルMOSトランジスタN31とを含む。NODESとNODETとの間には、直列に接続されたPチャネルMOSトランジスタP36およびPチャネルMOSトランジスタP37が置かれ、これと並列に、直列に接続されたPチャネルMOSトランジスタP38およびPチャネルMOSトランジスタP39が配置される。PチャネルMOSトランジスタP36およびP37のゲートは、NODEYと接続する。PチャネルMOSトランジスタP38およびP39のゲートは、NODEXと接続する。PチャネルMOSトランジスタP35は、電源とNODESとの間に配置される。NチャネルMOSトランジスタN31は、NODETとグランドとの間に配置される。PチャネルMOSトランジスタP35のゲートには、反転プリアンプ活性化信号ZPAEが印加され、NチャネルMOSトランジスタN31のゲートには、プリアンプ活性化信号PAEが印加される。
バッファ564は、PチャネルMOSトランジスタP40〜P42と、NチャネルMOSトランジスタN32とを含む。PチャネルMOSトランジスタP40およびPチャネルMOSトランジスタP41は、電源とNODEOとの間に配置される。PチャネルMOSトランジスタP40のゲートは、NODEXと接続する。PチャネルMOSトランジスタP41のゲートは、プリアンプ活性化信号PAEが印加される。PチャネルMOSトランジスタP42は、NODEOとNODEPとの間に配置される。PチャネルMOSトランジスタP42のゲートには、反転プリアンプ活性化信号ZPAEが印加される。NチャネルMOSトランジスタN32は、NODEPとグランドとの間に配置される。NチャネルMOSトランジスタN32のゲートは、NODEXと接続する。NODEXから反転プリアンプ出力データZPDDが出力される。
バッファ565は、PチャネルMOSトランジスタP43〜P45と、NチャネルMOSトランジスタN33とを含む。PチャネルMOSトランジスタP43およびPチャネルMOSトランジスタP44は、電源とNODEQとの間に配置される。PチャネルMOSトランジスタP43のゲートは、NODEYと接続する。PチャネルMOSトランジスタP44のゲートは、プリアンプ活性化信号PAEが印加される。PチャネルMOSトランジスタP45は、NODEQとNODERとの間に配置される。PチャネルMOSトランジスタP45のゲートには、反転プリアンプ活性化信号ZPAEが印加される。NチャネルMOSトランジスタN33は、NODERとグランドとの間に配置される。NチャネルMOSトランジスタN33のゲートは、NODEYと接続する。NODEYからプリアンプ出力データPDDが出力される。
この同期対応プリアンプ512は、スイッチ部561を有するため、反転プリアンプ接続信号ZPADTにより適当なタイミングでグローバル入出力対GIO,ZGIOを増幅部523から切り離すことができる。これにより、増幅部523は、グローバル入出力対GIO,ZGIOの電位を一度取り込んだら、その後の変化に左右されることなく増幅を行なうという、いわゆる閉じ込め式の増幅が可能となり、増幅が高速化できる。また、グローバル入出力対GIO,ZGIOが増幅部523から切り離されるので、増幅部523での増幅と同時に、イコライズ部562でプリチャージ処理を行なうことができ、プリアンプ全体の処理も高速化できる。
また、特に、クロックに同期した読出し処理が行なわれるときには、一定のタイミングでアドレスが変化し、ランダムなタイミングではアドレスは変化しないので、アドレスが変化しないタイミングでスイッチ部561による切り離しを行なえば、グローバル入出力線対GIO,ZGIOのデータを取りのがすことがない。
以上より、この同期対応プリアンプ512は、クロックに同期した読出し動作に適しているといえる。
一方、この同期対応プリアンプ512は、以下に示すように、クロックに同期しない、非同期の読出し動作には適していない。
図36は、同期対応プリアンプ512が非同期読出しには適さないことを説明するための図である。同図に示すように、非同期読出しでは、アドレスの変化に応じて、読出し処理が行なわれる。
同図の(1)に示すように、コラムアドレスが変化した後、さらに短期間にコラムアドレスが変化したときには、それぞれの変化に対応して、反転プリアンプイコライズ信号ZPAQが活性化されるが、同図の(2)に示すように、それらの活性化されるタイミングが接近する。その結果、プリチャージが十分に行なわれない。そして、プリチャージが行なわれないまま、増幅が行なわれるため、同図の(3)に示すように、プリアンプの出力データPDDにゆがみが生じる。このような問題を回避するためには、プリチャージ期間を十分に設けた後、次のコラムのアクセスを行なう必要があり、同期対応プリアンプ512による処理が遅くなる。
また、同図の(4)の示すように、ノイズなどの影響でイリーガルなアドレス変化が生じた場合において、グローバル入出力線対GIO,ZGIOには、イリーガルなコラムアドレス変化のコラムのデータが出力された後、正しいコラムアドレス変化のコラムデータが出力される。この場合、グローバル入出力線対GIO,ZGIOと増幅部563との切り離しのタイミングが早いと、同図の(5)に示すように、イリーガルなデータを増幅し、正しいデータを増幅しない。このような問題を回避するためには、グローバル入出力線対GIO,ZGIOと増幅部563との切り離しのタイミングを遅くする必要があり、同期対応プリアンプ512による処理が遅くなる。
以上のように、この同期対応プリアンプ512を非同期の読出しに用いた場合、処理が遅くなり、適切でないといえる。
(非同期対応プリアンプ513)
図37は、非同期対応プリアンプ513の構成を示す。同図に示すように、この非同期対応プリアンプ513は、差動式のカレントミラータイプの増幅器である。
図37を参照して、PチャネルMOSトランジスタP51およびP52は、カレントミラー回路を構成する。NチャネルMOSトランジスタN51は、ノードZPANとNODECとの間に配置される。NチャネルMOSトランジスタN52は、NODEEとNODEDとの間に配置される。NチャネルMOSトランジスタN51のゲートは、グローバル入出力線GIOと接続する。NチャネルMOSトランジスタN52のゲートは、反転グローバル入出力線ZGIOと接続する。PチャネルMOSトランジスタP53は、NODECとNODEDとの間に配置される。PチャネルMOSトランジスタP53のゲートには、プリアンプ活性化信号PAEDが印加される。
PチャネルMOSトランジスタP55およびP56は、カレントミラー回路を構成する。NチャネルMOSトランジスタN54は、ノードPANとNODEHとの間に配置される。NチャネルMOSトランジスタN53は、NODEFとNODEGとの間に配置される。NチャネルMOSトランジスタN54のゲートは、反転グローバル入出力線ZGIOと接続する。NチャネルMOSトランジスタN53のゲートは、グローバル入出力線GIOと接続する。PチャネルMOSトランジスタP57は、NODEGとNODEHとの間に配置される。PチャネルMOSトランジスタP57のゲートには、プリアンプ活性化信号PAEDが印加される。
NチャネルMOSトランジスタN55は、NODEDとグランドとの間に配置される。NチャネルMOSトランジスタN55のゲートには、プリアンプ活性化信号PAEDが印加される。PチャネルMOSトランジスタP54は、NODEEとNODEFとの間に配置される。PチャネルMOSトランジスタP54のゲートには、プリアンプ活性化信号PAEDが印加される。
さらに、電源とノードZPAN2との間にPチャネルMOSトランジスタP58とPチャネルNOSトランジスタP59とが並列に配置される、PチャネルMOSトランジスタP58のゲートには、プリアンプ活性化信号PAEDが入力され、PチャネルMOSトランジスタP59のゲートは、ノードPANと接続する。
ノードZPAN2とグランドとの間に、NチャネルMOSトランジスタN56、NチャネルMOSトランジスタ57、およびNチャネルMOSトランジスタN58が直列に接続する。NチャネルMOSトランジスタN56のゲートは、反転グローバル入出力線ZGIOと接続する。NチャネルMOSトランジスタN57のゲートは、ノードPAN2と接続する。NチャネルMOSトランジスタN58のゲートには、プリアンプ活性化信号PAEDが入力される。
さらに、電源とノードPAN2との間にPチャネルMOSトランジスタP60とPチャネルNOSトランジスタP61とが並列に配置される、PチャネルMOSトランジスタP61のゲートには、プリアンプ活性化信号PAEDが入力され、PチャネルMOSトランジスタP60のゲートは、ノードZPANと接続する。
ノードPAN2とグランドとの間に、NチャネルMOSトランジスタN59、NチャネルMOSトランジスタ60、およびNチャネルMOSトランジスタN61が直列に接続する。NチャネルMOSトランジスタN59のゲートは、反転グローバル入出力線ZGIOと接続する。NチャネルMOSトランジスタN60のゲートは、ノードZPAN2と接続する。NチャネルMOSトランジスタN61のゲートには、プリアンプ活性化信号PAEDが入力される。
さらに、ノードPAN2と接続する反転論理和回路NOR99と、ノードZPAN2と接続する反転論理和回路NOR98とは、フリップフロップを構成する。インバータIV51は、反転論理和回路NOR99の出力を反転してプリアンプ出力信号PAN3を出力する。インバータIV52は、反転論理和回路NOR98の出力を反転して反転プリアンプ出力信号ZPAN3を出力する。
図38は、非同期対応プリアンプ513の各ノードの電位の時間変化を示す図である。
この非同期対応プリアンプ513は、同期対応プリアンプ512のようなスイッチ部を有しない、いわゆる非閉じ込め式のプリアンプである。したがって、非同期対応プリアンプ513は、増幅中に、グローバル入出力線GIO,ZGIOと切り離されることがないので、アドレス変化に応じて読出しが行われる非同期の読出しに適している。
再び、図25を参照して、同期対応DBドライバ514は、受けた電位をデータバスDBに出力する。図39は、同期対応DBドライバ514の構成を示す。同図に示すように、この同期対応DBドライバ514は、同期対応プリアンプ512の出力PDDを受けて、それを反転してデータバスDBへ出力するインバータIV74で構成される。
非同期対応DBドライバ516は、受けた電位をデータバスDBに出力する。図40は、非同期対応DBドライバ516の構成を示す。この非同期対応DBドライバ516は、非同期対応プリアンプ513の出力PAN3を受けて、それを反転してデータバスDBへ出力するインバータIV72で構成される。
図25の出力回路515は、データバスDBのデータを受けてデータ出力端子DQを通じて外部へ出力する。
以上のように、本実施の形態に係る同期式擬似SRAMによれば、同期モードにおいて適切に動作するプリアンプと、非同期モードで適切に動作するプリアンプとを有するので、すべてのモードで正常にグローバル入出力線GIO,ZGIOの電位差を増幅を行なうことができる。
なお、本実施の形態では、同期動作用のプリアンプと、非同期対応のプリアンプとに分けたが、これに限定するものではなく、バーストモード用のプリアンプとランダムアクセスモード用のプリアンプを設けてもよい。この場合には、半導体記憶装置は、同期モードと非同期モードを有するものではなく、バーストモードとランダムアクセスモードを有するものとなる。バーストモード用としては、先読み動作およびパイプライン動作を効率的に実行できるように、プリアンプ512のような閉じ込め式の増幅が可能なプリアンプが適している。
本実施の形態は、同期指示信号SYNCによって、同期モードと非同期モードが切り替わるものとしたが、これに限定するものではなく、ボンディングオプションPADを有し、それに印可する電位によって、同期モードと非同期モードとを切替えるものとしてもよい。
また、本実施の形態では、同期対応DBドライバ514と非同期対応DBドライバ516を有するものとしたが、同期と非同期に対応したDBドライバを用いるものとしてもよい。
図41は、同期対応DBドライバ514と、非同期対応DBドライバ516とを兼ねる共用DBドライバ590の構成を示す。同図に示すように、この共用DBドライバ590は、一方のバッファ部525の出力を受けて、それをデータバスDBへ出力するインバータIV74で構成される。同期対応プリアンプ512の出力PDDと非同期対応プリアンプ513の出力PAN3とを受ける反転論理和回路NOR71と、反転論理和回路NOR71の出力を反転してデータバスDBへ出力するインバータIV73で構成される。
図42は、同期対応プリアンプ512および非同期対応プリアンプ513のレイアウトを表す図である。同図に示すように、同期対応プリアンプ配置領域596には同期対応プリアンプ512が置かれ、非同期対応プリアンプ配置領域597には非同期対応プリアンプ513が配置されている。
各グローバル入出力線対GIO,ZGIOと接続する同期対応プリアンプ512と非同期対応プリアンプ513とは、コラム方向に並んで配置される。グローバル入出力線対GIO,ZGIOの配置層とプリアンプの配置層とが異なり、グローバル入出力線対GIO,ZGIOは、分岐を有せずに、同期対応プリアンプ512および非同期対応プリアンプ513と接続する。
以上のように、図42に示すレイアウトでは、グローバル入出力線対GIO,ZGIOを分岐させる必要がなく、グローバル入出力線対GIO,ZGIOの配線が容易である。また、このレイアウトは、コラム方向に同期式擬似SRAM500のサイズが大きくとれるような場合に適している。
図43は、同期対応プリアンプ512および非同期対応プリアンプ513の別のレイアウトを表す図である。同図に示すように、同期/非同期対応プリアンプ配置領域598には同期対応プリアンプ512と非同期対応プリアンプ513とが配置されている。
各グローバル入出力線対GIO,ZGIOと接続する同期対応プリアンプ512と非同期対応プリアンプ513とは、ロウ方向に並んで配置される。グローバル入出力線対GIO,ZGIOは、分岐を有し、分岐した一方が同期対応プリアンプ512に接続し、分岐した他方が非同期対応プリアンプ513と接続する。
以上のように、図43に示すレイアウトでは、グローバル入出力線対GIO,ZGIOを分岐させる必要があり。また、このレイアウトは、ロウ方向に同期式擬似SRAM500のサイズが大きくとれるような場合に適している。
[第6の実施形態]
本実施の形態は、バイトマスク機能を有する同期式擬似SRAMに関する。同期式擬似SRAMには、上位バイトまたは下位バイトのマスクを行なうことで、メモリセルから読み出したデータを外部へ出力させないようにすることができる。ところで、バーストモードにおいて、ノーラップモードというものがある。ノーラップモードでは、バースト読出しまたは書込みの途中に最後のコラムに達すると、次のロウへ移行する。この場合、選択していたワード線の不活性化、新たに選択するワード線の活性化、およびセンスアンプによる増幅処理などのロウアクセス処理が必要となる。ロウアクセス処理が行なわれている間、外部に対してWAIT信号が出力される。外部のシステム側は、このWAIT信号が解除されてから、バイトマスク信号を与えればよいが、外部のシステムにとっては、このような次のロウへ移行するためのロウアクセス処理の有無に係らず、同一の方法でバイトマスクの設定ができた方が望ましい。本実施の形態は、バースト読出しまたはバースト書込みが第1のロウと第2のロウの2つのロウに渡り、途中で第1のロウの最後のコラムに達したため第2のロウへ移行する場合においても、外部からは2つのロウに渡らない場合と同様にしてバイトマスク信号を与えることを可能とする同期式擬似SRAMに関する。
(構成)
図44は、本実施の形態に係る同期式擬似SRAM600の構成を示す。同図を参照して、この同期式擬似SRAM600は、DRAMセルアレイ601と、CLKバッファ604と、UBバッファ605と、LBバッファ606と、WEバッファ607と、ADVバッファ608と、制御回路602と、周辺回路群603と、BCR(Bus Configuration
Register)610とを備える。
DRAMセルアレイ601は、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイである。
周辺回路群603は、図示しないグローバル入出力線対GIOP(GIOおよび/GIO)と、各列に対応して設けられた列選択線と、列選択ゲートと、センスアンプと、プリアンプと、ライトドライバと、ロウデコーダ、コラムデコーダなどを含む。周辺回路群603は、さらに出力回路620を含む。
出力回路620は、DRAMセルアレイ601から出力されたデータを保持する。出力回路620は、上位バイトおよび下位バイトごとに出力イネーブル信号OEを受ける。出力回路620は、上位バイトの出力イネーブル信号OEがイネーブル「H」を示すときに、保持しているデータの上位バイトをデータ入出力端子DQを通じて外部に出力する。出力回路620は、下位バイトの出力イネーブル信号OEがイネーブル「H」を示すときに、保持しているデータの下位バイトをデータ入出力端子DQを通じて外部に出力する。
BCR610は、外部のシステムとのインタフェース、たとえば、バーストレングスBL、およびコマンドレイテンシCLなどを記憶する。
図45は、CEバッファ609の詳細な構成を示す。同図を参照して、CEバッファ608は、外部チップイネーブル信号CE#が入力される、PチャネルMOSトランジスタP71およびNチャネルMOSトランジスタN71で構成されるインバータ1と、そのインバータ1に接続される、PチャネルMOSトランジスタP72およびNチャネルMOSトランジスタN72で構成されるインバータ2と、そのインバータ2に接続される、PチャネルMOSトランジスタP73およびNチャネルMOSトランジスタN73で構成されるインバータ3とを含む。インバータ2の出力が反転内部チップイネーブル信号ZINTCEであり、インバータ3の出力が内部チップイネーブル信号INTCEである。
図46は、UBバッファ605の詳細な構成を示す。同図を参照して、UBバッファ605は、外部上位バイトマスク信号UB#が入力される、PチャネルMOSトランジスタP75およびNチャネルMOSトランジスタN74で構成されるインバータ1と、そのインバータ1に接続される、PチャネルMOSトランジスタP76およびNチャネルMOSトランジスタN76で構成されるインバータ2と、そのインバータ2に接続される、インバータIV44とを含む。インバータIV44の出力が内部上位バイトマスク信号INTUBとなる。さらに、電源とPチャネルMOSトランジスタP75との間にPチャネルMOSトランジスタP74を配置する。インバータ1とインバータ2の接続ノードとグランドとの間に、NチャネルMOSトランジスタN75を配置する。
PチャネルMOSトランジスタP74のゲートおよびNチャネルMOSトランジスタN75のゲートには、反転内部チップイネーブル信号ZINTCEが入力される。チップが活性化されているとき、反転チップイネーブル信号ZINTCEが「L」となる。このときには、PチャネルMOSトランジスタP75が電源と接続するとともに、インバータ1とインバータ2の接続ノードが接地されない。したがって、通常の動作が行なわれる。
一方、チップが非活性化されているとき、反転チップイネーブル信号ZINTCEが「H」となる。このときには、PチャネルMOSトランジスタP75が電源と切断されるとともに、インバータ1とインバータ2の接続ノードが接地される。したがって、内部上位バイトマスク信号INTUBは、常に「L」のままとなる。
その他の入力バッファCLKバッファ604,LBバッファ606,WEバッファ607、ADVバッファ608の構成は、UBバッファ605の構成と同一なので、説明は繰返さない。
再び、図44を参照して、制御回路602は、コマンドデコーダ611と、ZRST生成回路612と、ZUB0生成回路613と、ZLB0生成回路614と、ADV0生成回路615と、ZWE0生成回路616と、マスク制御回路617と、ロウ制御回路618と、WAIT制御回路619と、リフレッシュ制御回路621とを備える。
コマンドデコーダ611は、外部制御信号より生成された内部制御信号の論理レベルの組合せに従って、ロウ活性化信号ACT、および読出し信号READを生成する。
図47は、ZUB0生成回路613の詳細な構成を示す。同図を参照して、クロックドインバータCIV61には、内部上位バイトマスク信号INTUBを受ける。クロックドインバータCIV61の出力がインバータIV21とインバータIV22とからなる双安定回路に送られる。双安定回路の出力がインバータIV23に送られる。インバータIV23の出力および内部クロックINTCLKが反転論理積回路NAND21に送られる。反転論理積回路NAND21の出力がインバータIV24に送られ、インバータIV24の出力がZUB0となる。
図48は、ZLB0生成回路614の詳細な構成を示す。同図を参照して、クロックドインバータCIV62には、内部下位バイトマスク信号INTLBを受ける。クロックドインバータCIV62の出力がインバータIV25とインバータIV26とからなる双安定回路に送られる。双安定回路の出力がインバータIV27に送られる。インバータIV27の出力および内部クロックINTCLKが反転論理積回路NAND22に送られる。反転論理積回路NAND22の出力がインバータIV28に送られ、インバータIV28の出力がZLB0となる。
図49は、ADV0生成回路615の詳細な構成を示す。同図を参照して、クロックドインバータCIV63には、内部アドレス取込信号INTADVを受ける。クロックドインバータCIV63の出力がインバータIV29とインバータIV30とからなる双安定回路に送られる。双安定回路の出力および内部クロックINTCLKが反転論理積回路NAND23に送られる。反転論理積回路NAND23の出力がインバータIV31に送られ、インバータIV31の出力がADV0となる。一方、双安定回路の出力がインバータIV32に送られる。インバータIV32の出力および内部クロックINTCLKが反転論理積回路NAND24に送られる。反転論理積回路NAND24の出力がインバータIV33に送られ、インバータIV33の出力がZADV0となる。
図50は、ZWE0生成回路616の詳細な構成を示す。同図を参照して、クロックドインバータCIV64には、内部ライトイネーブル信号INTWEを受ける。クロックドインバータCIV64の出力がインバータIV34とインバータIV35とからなる双安定回路に送られる。双安定回路の出力がインバータIV36に送られる。インバータIV36の出力および内部クロックINTCLKが反転論理積回路NAND25に送られる。反転論理積回路NAND25の出力がインバータIV37に送られ、インバータIV37の出力がZWE0となる。
図51は、ZRST生成回路612の詳細な構成を示す。同図を参照して、インバータIV38は、読出し信号READを受ける。遅延回路(Delay)DL99は、インバータIV99の出力を遅延させる。反転論理和回路NOR21は、読出し信号READと遅延回路(Delay)DL99の出力を受ける。インバータIV42は、反転論理和回路NOR21の出力を受ける。インバータIV42の出力が反転リセット信号ZRSTとなる。
図52は、反転リセット信号ZRSTが生成されるタイミングを表す図である。同図に示すように、反転リセット信号ZRSTは、読出し信号READが「L」に非活性化されるときに、活性化されて「L」レベルのパルスとなる。
図53は、マスク制御回路617の詳細な構成を示す。同図は、下位側(LB)のみを示しているが、上位側(UB)も、これと同様である。図53を参照して、第1制御回路631において、反転論理積回路NAND26は、ADV0、ZLB0、およびZWE0を受ける。反転論理積回路NAND29および反転論理積回路NAND30は、フリップフロップを構成する。反転論理積回路NAND29は、反転論理積回路NAND26の出力を受ける。反転論理積回路NAND30は、反転リセット信号ZRSTを受ける。インバータIV39は、反転論理積回路NAND29の出力を受ける。インバータIV39の出力は、第1出力イネーブル信号OE1となる。このような構成により、第1の制御回路631は、外部バイトマスク信号LB#がバーストアクセスの先頭のビットのバイトマスクを行なうことを示す時には、外部バイトマスク信号LB#が「H」となったクロックCLKから、出力回路620から先頭のビットが出力されるタイミングを含む時点まで、第1の出力イネーブル信号OE1を「L」にする。
第2制御回路632において、反転論理積回路NAND27は、ZADV0、ZLB0、およびZWE0を受ける。反転論理積回路NAND31および反転論理積回路NAND32は、フリップフロップを構成する。反転論理積回路NAND31は、反転論理積回路NAND27の出力を受ける。反転論理積回路NAND31は、反転リセット信号ZRSTを受ける。反転論理積回路NAND35は、ZWAIT信号および反転論理積回路NAND31の出力とを受ける。反転論理積回路NAND35の出力は、第2出力イネーブル信号OE2となる。このような構成により、第2制御回路632は、外部バイトマスク信号LB#が、先頭のビット以外のビットのバイトマスクを行なうことを示す時に、次のロウへの移行のためのロウアクセス処理が行なわれなかったとした場合にそのビットが出力回路620出力されるタイミングにWAIT信号が「H」のときに、通常通り第2の出力イネーブル信号OE2を「L」にし、そのタイミングにWAIT信号が「L」のときに、第2の出力イネーブル信号OE2を「L」にせず、バイトマスク信号に基づいて生成された信号(すなわち、反転論理積回路NAND27の出力)を第3制御回路633に出力する。
第3制御回路633において、インバータIV41は、ZWAIT信号を受ける。遅延回路(Delay)DL21は、インバータIV41の出力を遅延させる。反転論理積回路NAND28は、ZWAIT信号と遅延回路(Delay)DL21の出力を受ける。反転論理積回路NAND33および反転論理積回路NAND34は、フリップフロップを構成する。反転論理積回路NAND33は、反転論理積回路NAND27の出力を受ける。反転論理積回路NAND34、反転リセット信号ZRSTおよび反転論理積回路NAND28の出力を受ける。インバータIV40は、ZWAIT信号を受ける。反転論理積回路NAND36は、インバータIV40の出力と、反転論理積回路NAND33の出力を受ける。反転論理積回路NAND36の出力は、第3出力イネーブル信号OE3となる。このような構成により、第3制御回路633は、バイトマスク信号に基づいて生成された信号を受けて保持し、WAIT信号が「L」から「H」になったタイミングに、第3の出力イネーブル信号OE3を「L」にする。
反転論理積回路NAND60は、第1の出力イネーブル信号OE1、第2の出力イネーブル信号OE2、および第3の出力イネーブル信号OE3を受ける。インバータIV43は、反転論理積回路NAND60の出力を受けて、出力イネーブル信号OEを出力する。反転論理積回路NAND60およびインバータIV43によって、第1の出力イネーブル信号OE1、第2の出力イネーブル信号OE2、および第3の出力イネーブル信号OE3のうちの少なくとも1つが「L」のときに、出力イネーブル信号OEは「L」となる。
再び、図44を参照して、ロウ制御回路618は、ロウアクセス処理(ワード線の活性化、センスアンプによる増幅など)を制御する。
リフレッシュ制御回路621は、図示しない内部のリフレッシュタイマに基づいて、DRAMセルアレイのセルフリフレッシュ動作を制御する。
WAIT制御回路619は、リフレッシュ制御回路621の制御によりリフレッシュ制御が行なわれている間、およびノーラップモードでバースト読出しの途中で最後のコラムに達したため、次のロウへの移行のためのロウアクセス処理(もとのロウのワード線の非活性化、新たなロウのワード線の活性化、およびセンスアンプによる増幅など)を行なっている間に、WAIT端子介して出力するWAIT信号のレベルを「L」とする。つまり、WAIT信号が「L」によって、データが出力されるまで待つことを外部に知らせる。
(次のロウへの移行を伴わないときのアクセス動作)
図54は、本実施の形態の同期式擬似SRAM600におけるバースト読出し時に次のロウへの移行を伴わないときの信号の変化を表すタイミングチャートである。同図を参照して、例1〜例3の動作を説明する。
(例1) マスクなしのとき
外部バイトマスク信号LB#,UB#は、「H」となることがない。この場合には、第1出力イネーブル信号OE1、第2出力イネーブル信号OE2、および第3出力イネーブル信号OE3は、全期間「H」となる。
(例2) 第2ビットをマスクするとき
外部バイトマスク信号LB#,UB#は、同図の(1)において、「H」となる。この場合には、第1出力イネーブル信号OE1および第3出力イネーブル信号OE3は、全期間「H」となる。一方、第2出力イネーブル信号OE2は、同図の(2)に示すように、第2ビットが出力回路620から出力されるタイミング(クロックCLK3の立ち上がりからクロックCLK4の立ち上がりまで)において「L」となる。
(例3) 第1ビットをマスクするとき
外部バイトマスク信号LB#,UB#は、同図の(3)において、「H」となる。この場合には、第2出力イネーブル信号OE2および第3出力イネーブル信号OE3は、全期間「H」となる。第1出力イネーブル信号OE1は、同図の(4)に示すように、外部バイトマスク信号LB#,UB#が「H」となったクロックCLKから、第1ビットが出力回路620から出力されるタイミングを含む時点まで(クロックCLK0の立ち上がりからクロックCLK3の立ち上がりまで)、「L」となる。
(ノーラップモードにおいて、次のロウへの移行を伴うときのアクセス動作)
図55は、本実施の形態の同期式擬似SRAM600におけるノーラップモード設定時に、バースト読出し時に次のロウへの移行を伴うときの変化を表すタイミングチャートである。同図を参照して、例1〜例3の動作を説明する。
(例1)マスクなしのとき
外部バイトマスク信号LB#,UB#は、「H」となることがない。第1出力イネーブル信号OE1、第2出力イネーブル信号OE2、および第3出力イネーブル信号OE3は、全期間「H」となる。
(例2)第2ビットをマスクするとき(次のロウへの移行処理を伴う)
外部バイトマスク信号LB#,UB#は、同図の(1)において、「H」となる。この場合には、第1出力イネーブル信号OE1および第2出力イネーブル信号OE2は、全期間「H」となる。第3出力イネーブル信号OE3は、同図の(3)に示すように、WAIT信号が「H」となったときのタイミング(クロックCLK7の立ち上がりからクロックCLK8の立ち上がりまで)において「L」となる。
これにより、第2ビットのマスク処理は、次のロウのロウアクセス処理が終了してWAIT信号が「H」となる時点まで延長される。
(例3)第3ビットをマスクするとき
外部バイトマスク信号LB#,UB#は、同図の(3)において、「H」となる。この場合、第1出力イネーブル信号OE1および第3出力イネーブル信号OE3は、全期間「H」となる。第2出力イネーブル信号OE2は、同図の(4)に示すように、第3ビットが出力回路620から出力されるタイミング(クロックCLK8の立ち上がりからクロックCLK9の立ち上がりまで)において「L」となる。
(例4)第1ビットをマスクするとき
図示しないが、図54の(例3)のとき同一である。
以上の説明から明らかなように、第2ビットのバイトマスク信号の設定タイミング、すなわち、外部バイトマスク信号LB#,UB#を与えるタイミングは、図54および図55のいずれの(A)で示されるタイミングである。したがって、バースト読出しまたはバースト書込みの途中に、次のロウに移行する場合においても、外部からは、次のロウに移行しない場合と同様にしてバイトマスク信号を与えることができる。
なお、本実施の形態は、ノーラップモードにのみ適用できるものではなく、チップイネーブル信号が非活性になるまで連続して読出し/書込みを行なうコンティニュアスモードにおいても有効である。
また、本実施の形態は、同期式擬似SRAMに限定して適用されるものではなく、クロックに同期して動作する半導体記憶装置であればどのようなものにも適用することができる。
[第7の実施形態]
本実施の形態は、モバイルRAMと、セルラーRAMの両方の機能を備えたモバイル/セルラー兼用RAMに関する。ここで、セルラーRAMとは、非特許文献1に記載されている同期型の擬似SRAMである。モバイルRAMは、携帯電話用の特有の機能を備えた擬似SRAMである。
(構成)
図56は、本実施の形態のモバイル/セルラー兼用RAM700の構成を示す。同図を参照して、このモバイル/セルラー兼用RAM700は、DRAMセルアレイ701と、制御回路707と、入出力回路705とを備える。
DRAMセルアレイ707は、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイである。
入出力回路705は、データ出力端子DQを通じて外部からデータを受けるとともに、外部にデータを出力する。
制御回路707は、共通部702と、モバイルRAM専用部703と、セルラーRAM専用部704と、モバイルRAM/セルラーRAM判定回路706とを含む。
モバイルRAM/セルラーRAM判定回路706は、外部信号に応じて、共通部702、モバイルRAM専用部703、およびセルラーRAM専用部704のいずれを動作させるかを判定して、動作させる。
共通部702は、モバイルRAMとセルラーRAMに共通の機能を実行する。
モバイルRAM専用部703は、モバイルRAMのみが有する機能を実行する。
セルラーRAM専用部704は、セルラーRAMのみが有する機能を実行する。
図57は、共通部702の構成を示す。同図に示すように、共通部702は、リフレッシュタイマ721と、センス動作制御回路722と、アドレスキュー対策回路723と、入出力バッファ724とを備える。
リフレッシュタイマ721は、セルフリフレッシュを行なうタイミング信号を出力する。
センス動作制御回路722は、センスアンプの動作を制御する。
アドレスキュー対策回路723は、アドレスキューが発生しないように制御する回路である。
入出力バッファ724は、外部制御信号、外部アドレス信号、外部クロックなどを受けて保持し、内部制御信号、内部アドレス信号、内部クロックなどを生成するとともに、外部へ出力するデータを保持する。
図58は、セルラーRAM専用部704の構成を示す。同図に示すように、セルラーRAM専用部704は、同期インタフェース回路741と、ZADV制御回路742と、NORインタフェース回路743と、その他のセルラー互換動作制御回路744と、BCR/RCRセット回路745とを備える。
同期インタフェース回路741は、クロックに同期した動作を制御する。
ZADV制御回路742は、外部アドレス取込信号ADV#に基づき、外部アドレスの取込みを制御する。
NORインタフェース回路743は、NOR型フラッシュメモリとのインタフェースを制御する。
その他のセルラー互換動作制御回路744は、たとえば、SRAM互換のインタフェースを制御する。
BCR/RCRセット回路745は、BCR、およびRCRをセットする。
図59は、モバイルRAM専用部703の構成を示す。同図に示すように、モバイルRAM専用部703は、コマンドモード回路731と、バーストリフレッシュ回路732と、アーリーライト回路733と、データ保持ブロック制御回路734とを備える。
コマンドモード回路731は、外部の信号の組合せによって、内部のレジスタのセットおよびリセットを行なう。
バーストリフレッシュ回路732は、リフレッシュ要求を内部カウンタに保持しておき、ある一定のタイミングが入力された時に、連続してリフレッシュ動作を行なう。
アーリーライト回路733は、ライト動作のタイミングを早くしたアーリーライト動作を制御する。
データ保持ブロック制御回路734は、選択したブロックのみリフレッシュを行なうように制御することで、選択したブロックのデータのみ保持する。
以上のように、本実施の形態に係るRAMによれば、セルラーRAMとモバイルRAMの両方の機能を効率よく実現するように構成したので、生産管理を効率化でき、製品切替え時期における在庫の低減を防止し、さらに開発コストを削減できる。
[第8の実施形態]
本実施の形態は、バーストレングスカウンタを用いてプリチャージを実行する同期式擬似SRAMに関する。
(構成)
図60は、本実施の形態に係る同期式擬似SRAM800の構成を示す。同図を参照して、この同期式擬似SRAM800は、DRAMセルアレイ+周辺回路群801と、制御回路802と、コマンドデコーダ803と、BCR(Burst Configuration Register)804と、バーストレングスカウンタ805とを備える。
DRAMセルアレイ+周辺回路群801のDRAMセルアレイは、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイである。周辺回路群は、グローバル入出力線対GIOP(GIOおよび/GIO)と、各列に対応して設けられた列選択線と、列選択ゲートと、センスアンプと、プリアンプと、ライトドライバと、ロウデコーダ、コラムデコーダなどを含む。
コマンドデコーダ803は、外部制御信号より生成された内部制御信号の論理レベルの組合せに従って、ロウ活性化信号ACT、読出し信号READ、および書込み信号WRITEを生成する。
BCR804は、外部のシステムとのインタフェース、たとえば、バーストレングスBL、およびコマンドレイテンシCLなどを記憶する。
図61は、バーストレングスカウンタ805の詳細な構成を示す。同図を参照して、バーストレングスカウンタ805は、CSLカウンタ999と、論理積回路AND101とを含む。CSLカウンタ999は、コラム選択信号CSLを受ける。CSLカウンタ999は、バーストレングスBL個のコラム選択信号CSLのパルスをカウントすると、「H」を出力する。論理積回路AND101は、外部クロックCLKおよびCSLカウンタ999の出力を受けて、CSLカウンタ999の出力が「H」となった後の最初のクロックCLKが入力されたタイミングで、バーストレングスリセット信号BLRSTを「H」に活性化する。
制御回路802は、ロウ制御回路806を含む。ロウ制御回路806は、バーストレングスリセット信号BLRSTを受けると、プリチャージ信号PRCを活性化する。このプリチャージ信号PRCによって、ワード線が非活性化され、ビット線対がプリチャージされる。
(動作)
図62は、ワード線が非活性化されるタイミングチャートを示す。同図に示すように、読出し信号READまたは書込み信号WRITEを受けたクロックのタイミングをクロックCLK0とした時に、コマンドレイテンシCL=2、バーストレングスBL=4より、バーストアクセスの最後のコラムの選択のためのコラム選択信号CSLがクロックCLK4のタイミングで活性化される。バーストレングスカウンタ805は、CLK0から、(CL+BL−1)=5個後のクロックであるクロックCLK5のタイミングで、バーストレングスリセット信号BLRSTを「H」に活性化する。そして、このバーストレングスリセット信号BLRSTに基づいて、プリチャージ信号PRCが活性化され、選択されていたワード線(X0)が非活性化され、ビット線対がプリチャージされる。
以上のように、本実施の形態に係る同期式擬似SRAMによれば、バーストレングスカウンタ805は、バーストレングスBL個のコラム選択信号CSLのパルスをカウントすると、バーストレングスリセット信号BLRSTを活性化するので、外部チップイネーブル信号CE#を「H」にもどさなくても、ワード線を非活性化することができる。
以上のように、本実施の形態に係る同期式擬似SRAMによれば、外部制御によって、ワード線を非活性化するのではなく、内部制御でワード線を非活性化するので、制御が簡易になる。
なお、外部アドレス取込み信号ADV#の立ち下りを起点にリセット信号を発生させて、このリセット信号によってプリチャージ信号PRCを発生するようにしてもよい。
なお、本実施の形態では、バーストレングスリセット信号BLRSTに基づき、ワード線の非活性化を行なったが、これに限定するものではなく、たとえば、読出しも書込みも行なわれていないスタンバイ状態にするものとしてもよい。
また、本実施の形態は、同期式擬似SRAMに限定して適用されるものではなく、クロックに同期して動作する半導体記憶装置であればどのようなものにも適用することができる。
[第9の実施形態]
本実施の形態は、同期モード固定のモードを有する同期式擬似SRAMに関する。
(従来の同期モード/非同期モードの設定)
まず、従来のCellularRAM(R)の同期/非同期モードの設定について説明する。
図63は、従来の同期/非同期モードの設定方法を表す図である。同図に示すように、tCSPが20ns以上のときには、BCR(Bus Configuration Register)の第15ビット目であるBCR[15]の値に係らず、非同期固定モードに設定される。tCSPが20ns未満のときには、BCR[15]の値によって、モードが設定される。tCSPとは、外部チップイネーブル信号CE#の立ち下りから外部クロックCLKが立ち上がるまでの時間である。
図64(a)および(b)は、tCSPの値によるモードの設定を説明するための図である。図64(a)では、tCSPは7.5nsである。この場合、tCSPが20ns未満なので、BCR[15]の値が参照され、値が0のときには、同期/非同期混合モードに設定され、値が1のときには、非同期固定モードに設定される。
図64(b)では、tCSPは22.5nsである。この場合、tCSPが20ns以上なので、外部クロックCLKの立ち下りから20nsとなった時点で、BCR[15]の値に係らず、非同期固定モードに設定される。
以上の説明から明らかなように、図64(b)のように、クロック周波数が低いときには、強制的に非同期固定モードに設定される。したがって、低速のクロック周波数で、かつ同期モードで動作させることができない。
したがって、本実施の形態は、tCSPが20ns以上のようにクロック周波数が低いときでも、同期モードに設定することができる同期式擬似SRAMを提供する。
(本実施の形態の同期/非同期モードの設定)
図65は、本実施の形態の同期/非同期モードの設定方法を表す図である。同図に示すように、BCR[16]の値が0のときには、tCSP、およびBCR[15]の値に係らず、同期固定モードに設定される。一方、BCR[16]の値が1のときには、tCSPおよびBCR[15]の値に応じて、従来と同様に設定される。
(構成)
図66は、本実施の形態に係る同期式擬似SRAM900の構成を示す。同図を参照して、この同期式擬似SRAM900は、DRAMセルアレイ+周辺回路群901と、BCR(Bus Configuration Register)903と、tCSP判定回路906と、同期制御回路904と、非同期制御回路905と、共通制御回路902とを含む。
DRAMセルアレイ+周辺回路群901のDRAMセルアレイは、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイである。周辺回路群は、グローバル入出力線対GIOP(GIOおよび/GIO)と、各列に対応して設けられた列選択線と、列選択ゲートと、センスアンプと、プリアンプと、ライトドライバと、ロウデコーダ、コラムデコーダなどを含む。
BCR903は、外部のシステムとのインタフェースを規定する。
tCSP判定回路906は、外部チップイネーブル信号CE#の立ち下りから、外部クロックCLKが立ち上がるまでの時間が20ns以上となった時点で、非同期制御信号ASYNTRGをアサ−トする。tCSP判定回路906は、BCR[15]と、BCR[16]とを受けて、BCR[15]=1のとき、またはBCR[16]=0のときには、tCSPを判定する処理を行なわない。なぜなら、BCR[16]=0のときには、同期固定モードであり、BCR[15]=1のときには、非同期固定モードなので、tCSPを判定する必要がないからである。
同期制御回路904は、BCR[16]、非同期制御信号ASYNTRG、BCR[15]を受けて、それらの組合せが図65に示す同期固定モードまたは同期/非同期混合モードを示すときに、活性化する。すなわち、同期制御回路904は、BCR[16]=0のときと、BCR[16]=1、非同期制御信号ASYNTRGが非活性化、かつBCR[15]=0のときに活性化し、それ以外のときには非活性化する。同期制御回路904は、活性化しているときに、同期式擬似SRAM900の外部クロックCLKに同期した動作を制御する。
非同期制御回路905は、BCR[16]、非同期制御信号ASYNTRG、およびBCR[15]を受けて、それらの組合せが図65に示す非同期固定モードまたは同期/非同期混合モードを示すときに、活性化し、それ以外のときには、非活性化する。すなわち、非同期制御回路905は、BCR[16]=1のときに活性化し、BCR[16]=0のときに非活性化する。非同期制御回路905は、活性化しているときに、同期式擬似SRAM900の外部クロックCLKに同期しない動作を制御する。
共通制御回路902は、外部クロックCLKの同期の有無に係らない動作を制御する。 以上のように、本実施の形態に係る同期式擬似SRAMによれば、tCSPの値に係らずに同期固定モードに設定することができるので、クロック周波数が低速でも、クロックに同期して動作することができる。
本実施の形態では、BCR[15]、BCR[16]のように隣接するビットを用いて、同期モード/非同期モードの設定をするので、回路接続を容易にすることができる。
なお、本実施の形態では、BCR[16]の値によって同期固定モードに設定することとしたが、これに限定するものではない。たとえば、BCRの他のビット、他のレジスタのビット、ボンディングオプション、または外部信号などによって、同期固定モードに設定するものとしてもよい。
また、本実施の形態は、同期式擬似SRAMに限定して適用されるものではなく、クロックに同期して動作する同期モードと、クロックに対して非同期に動作する非同期モードとを有する半導体記憶装置であればどのようなものにも適用することができる。
[第10の実施形態]
本実施の形態は、外部チップイネーブル信号CE#によって、入力バッファの活性/非活性を制御するともに、外部チップイネーブル信号CE#をクロックに同期せずに活性化したときの問題を回避する同期式擬似SRAMに関する。
(構成)
図67は、本実施の形態に係る同期式擬似SRAM1000の構成を示す。同図を参照して、この同期式擬似SRAM1000は、DRAMセルアレイ+周辺回路群1001と、制御回路1002と、CEバッファ1003と、CLKバッファ1004と、制御バッファ1005と、アドレスバッファ1006とを含む。
DRAMセルアレイ+周辺回路群1001のDRAMセルアレイは、ダイナミックランダムアクセスメモリ(DRAM)のセルで構成されるメモリアレイである。周辺回路群は、グローバル入出力線対GIOP(GIOおよび/GIO)と、各列に対応して設けられた列選択線と、列選択ゲートと、センスアンプと、プリアンプと、ライトドライバと、ロウデコーダ、コラムデコーダなどを含む。
アドレスバッファ1006は、外部アドレス信号ADD[21:0]を受けて、内部アドレス信号を生成する。
CEバッファ1003は、外部チップイネーブル信号CE#を受けて、内部チップイネーブル信号INTCEを生成する。内部チップイネーブル信号INTCEは、CLKバッファ1004、制御バッファ1005、およびアドレスバッファ1006に送られる。これらの入力バッファは、内部チップイネーブル信号INTCEがチップの非活性化を示す「L」のときには、動作を停止し、内部チップイネーブル信号INTCEがチップの活性化を示す「H」のときには、通常の動作を行なう。これらの入力バッファは、動作の停止中には、外部からの信号を受けても、保持することができず、内部信号を出力できない。
CLKバッファ1004は、外部クロックCLKを受けて、バッファクロックBUFFCLKとして保持し、内部クロックINTCLKを生成する。
制御バッファ1005は、外部チップイネーブル信号CE#を除く制御信号(アドレス取込み信号ADV#を含む)を受けて、内部制御信号を生成する。たとえば、制御バッファ1005は、外部アドレス取込み信号ADV#を受けたときには、内部アドレス取込み信号INTADVを生成する。
制御回路1002は、ADV0発生回路1010と、RAS発生回路1011とを含む。
ADV0発生回路1010は、内部チップイネーブル信号INTCE、内部クロックINTCLK、および反転内部アドレス取込み信号ZINTADVにより、アドレス取込みトリガ信号ADV0を生成する。
RAS発生回路1011は、アドレス取込トリガ信号ADV0により、ロウアドレスストローブ信号RASを生成する。
(従来のADV0発生回路)
図68は、従来のADV0発生回路1050の構成を示す。同図を参照して、反転内部アドレス取込み信号ZINTADVがクロックドインバータCIV1に入力される。クロックドインバータCIV1の出力と、内部クロックINTCLKとが反転論理積回路NAND1に入力され、反転論理積回路NAND1の出力がインバータIV1に入力される。インバータIV1の出力がアドレス取込みトリガ信号ADV0となる。
(従来の動作)
従来のADV0発生回路を用いた場合に、外部クロックCLKと同期せずに、非同期に外部チップイネーブル信号CE#を変化させたときに発生する問題について説明する。
図69は、従来のADV0発生回路1050を用いたときの各信号の変化のタイミングを表す図である。同図を参照して、外部クロックCLK、外部アドレス取込信号ADV#、および外部チップイネーブル信号CE#が図69に示すように与えられる。外部チップイネーブル信号CE#が「H」のときには、CLKバッファ1004および制御バッファ1005が停止中であり、外部チップイネーブル信号CE#のみがCEバッファ1003に取り込まれ、内部チップイネーブル信号INTCEが生成される。外部チップイネーブル信号CE#が「L」に活性化されることに応じて、反転内部チップイネーブル信号ZINTCEが「L」となる。
反転内部チップイネーブル信号ZINTCEが「L」になると、制御バッファ1005は、動作を再開し、外部アドレス取込み信号ADV#が制御バッファ1005に取り込まれ、内部アドレス取込み信号INTADVが生成される。この時点で、外部アドレス取込信号ADV#が「L」となっているので、反転内部アドレス取込み信号ZINTADVが「L」となる。
また、反転内部チップイネーブル信号ZINTCEが「L」になると、CLKバッファ1004は、動作を再開し、外部クロックCLKがCLKバッファ1004に取込まれ、CLKバッファ1004は、保持されているバッファクロックBUFFCLKの立ち上がりに応じて、一定のパルス幅の内部クロックINTCLKを生成する。ここで、反転内部チップイネーブル信号ZINTCEが「L」となる以前には、CLKバッファ1004は、外部クロックCLKを保持しないので、図69の(1)に示すCLKバッファ1004内のバッファクロックBUFFCLKは、外部クロックCLKのパルス幅を有しない。これにより、第1番目の内部クロックINTCLKのタイミングと第2番目のINTCLKのタイミングとの間隔が狭くなる。
ADV0発生回路1050内のクロックドインバータCIV1は、反転内部アドレス取込み信号ZINTADVを受けて、その出力NODEAは、図69の(2)に示されるように、内部クロックINTCLKの立ち上がりで「H」に立ち上がる。
ADV0発生回路1050内の反転論理積回路NAND1およびインバータIV11は、クロックドインバータCIV1の出力NODEAと内部クロックINTCLKとにより、アドレス取込みトリガ信号ADV0を生成する。アドレス取込みトリガ信号ADV0のパルスは、図69の(3)に示されるように、内部クロックINTCLKの先頭からのパルスとなる。
RAS発生回路1011は、アドレス取込みトリガ信号ADV0の先頭のパルスの立ち上がりに応じて、ロウアドレスストローブ信号RASを「H」に活性化する。その結果、本来ロウアドレスストローブ信号RASを活性したいタイミング、すなわち、外部チップイネーブル信号CE#が入力された時点以降の、次のクロックCLKの立ち上がり(これが、本来アクセスを開始するポイント)よりも、早いタイミングでロウアドレスストローブ信号RASが活性化され、その活性化により後続の処理が開始されてしまう問題が生じることがわかってきた。
(本実施の形態のADV0発生回路)
上述の問題を回避するために、本実施の形態のADV0発生回路の構成は、従来のものと相違する。
図70は、本実施の形態のADV0発生回路1010の構成を示す。このADV0発生回路は、従来のADV0発生回路1050に、遅延回路(Delay)DL1と、反転論理和回路NOR95と、インバータIV12とが追加されている。同図を参照して、遅延回路(Delay)DL11は、反転内部チップイネーブル信号ZINTCEを受ける。反転論理和回路NOR95は、遅延回路(Delay)DL11の出力と、反転内部アドレス取込み信号ZINTADVとを受ける。インバータIV12は、反転論理和回路NOR95の出力を受け、反転遅延内部アドレス取込み信号ZINTADVDを出力する。反転遅延内部アドレス取込み信号ZINTADVDがクロックドインバータCIV1に入力される。クロックドインバータCIV1の出力と、内部クロックINTCLKとが反転論理積回路NAND1に入力され、反転論理積回路NAND1の出力がインバータIV1に入力される。インバータIV1の出力がアドレス取込みトリガ信号ADV0となる。
(本実施の形態の動作)
図71は、本実施の形態のADV0発生回路1010を用いたときの各信号の変化のタイミングを表す図である。
外部クロックCLK、外部アドレス取込信号ADV#、外部チップイネーブル信号CE#、内部チップイネーブル信号INTCE、内部アドレス取込み信号INTADV、バッファクロックBUFFCLK、および内部クロックINTCLKの変化するタイミングは、図に示す従来のタイミングと同一である。
ADV0発生回路1010内の遅延回路(Delay)DL11、反転論理和回路NOR95、およびインバータIV1は、反転内部チップイネーブル信号ZINTCEおよび反転内部アドレス取込み信号ZINTADVを受けて、図71の(2)に示すように、反転遅延内部アドレス取込み信号ZINTADVDを出力する。
クロックドインバータCIV1は、反転遅延内部アドレス取込み信号ZINTADVDを受けて、その出力NODEAは、図71の(3)に示されるように、内部クロックINTCLKの立ち下がりで「H」に立ち上がる。
ADV0発生回路1050内の反転論理積回路NAND1およびインバータIV11は、クロックドインバータCIV1の出力NODEAと内部クロックINTCLKとにより、アドレス取込みトリガ信号ADV0を生成する。アドレス取込みトリガ信号ADV0のパルスは、図71の(4)に示されるように、内部クロックINTCLKの第2番目以降のパルスとなる。つまり、ADV0発生回路1050が生成するアドレス取込みトリガ信号ADV0の先頭のパルスは、外部アドレス取込み信号ADV#が活性化されている間に立ち上がる外部クロックパルスから生成される内部クロックパルスとなる。これを実現するために、遅延回路(Delay)DL11の遅延量が定められている。
RAS発生回路1011は、アドレス取込みトリガ信号ADV0の先頭のパルスの立ち上がりに応じて、ロウアドレスストローブ信号RASを「H」に活性化する。その結果、本来ロウアドレスストローブ信号RASを活性したいタイミング、すなわち、外部チップイネーブル信号CE#が入力された時点以降の、次のクロックCLKの立ち上がりでロウアドレスストローブ信号RASが活性化される。言い換えると、遅延回路(Delay)DL11の遅延量は、これを実現するための遅延量に設定されている。
以上のように、本実施の形態に係る同期式擬似SRAMによれば、チップが非活性のときに、入力バッファの動作を停止するので、無駄な電流の消費を抑えることができる。
また、反転内部チップイネーブル信号ZINTCEを遅延させるので、非同期に外部チップイネーブル信号CE#を変化させたときにも、誤動作が起こらない。
なお、本実施の形態では、外部チップイネーブル信号CE#によって入力バッファを停止させる場合において、外部チップイネーブル信号CE#をクロックに同期せずに活性化したときの問題点を回避する構成と方法について説明したが、これは、外部チップイネーブル信号CE#によって入力バッファを停止させるかどうかに係りなく、有効である。
なお、遅延回路DL11の遅延量は、外部クロックCLKの1サイクルの半分の半分(つまり、1/4)以下が望ましい。なぜなら、遅延量が多いと、他の動作への影響が生じるためである。
なお、本実施の形態では、外部チップイネーブル信号CE#をクロックに同期せずに活性化したときの問題点を回避する構成と方法を説明したが、外部チップイネーブル信号CE#をクロックに同期せずに非活性するときにも、次のような問題がある。すなわち、外部チップイネーブル信号CE#が非活性になったときに、メモリセルに書込みを行なっていた場合に、即座にプリチャージをすると、メモリセル内のデータが破壊されてしまうことがある。
図72は、外部チップイネーブル信号CE#をクロックに同期せずに非活性にしたときのときに、プリチャージするタイミングを遅らせたことを表す図である。同図に示すように、外部チップイネーブル信号が「H」に非活性になった時点移行のコラム選択信号CSLの立ち下りから所定時間(Delay)だけ経過したとき、すなわち、書込み中であれば正常に書込みが終了するまで待った後で、ワード線を非活性化する。このようにすることによって、メモリセル内のデータの破壊を防止することができる。
なお、本実施の形態は、同期式擬似SRAMに限定して適用されるものではなく、クロックに同期して動作する半導体記憶装置であればどのようなものにも適用することができる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。