以下、実施形態を図面を用いて説明する。図中、太線で示した信号線は、複数本で構成されている。また、太線が接続されているブロックの一部は、複数の回路で構成されている。信号が伝達される信号線には、信号名と同じ符号を使用する。信号が伝達される信号線には、信号名と同じ符号を使用する。末尾に”Z”の付いている信号は、正論理を示している。先頭に”/”の付く信号は、負論理を示している。
図1は、一実施形態における半導体メモリの例を示している。図中の二重の四角印は、外部端子を示している。外部端子は、例えば、半導体チップ上のパッド、あるいは半導体チップが収納されるパッケージのリードである。外部端子を介して供給される信号には、端子名と同じ符号を使用する。半導体メモリは、例えば、クロック同期式の擬似SRAM(以下、PSRAM)である。PSRAMは、DRAMのメモリセル(ダイナミックメモリセル)を有し、SRAMのインタフェースを有する。
PSRAMは、クロック入力バッファ10、コマンド入力バッファ12、リフレッシュ生成部14、コマンドデコーダ16、レイテンシ判定部18、レイテンシ出力バッファ20、モードレジスタ22、動作制御部24、バーストカウンタ26、アドレス入力バッファ28、バーストアドレスカウンタ30、アドレスラッチ32、データ入力バッファ34、データ出力バッファ36およびメモリコアCOREを有している。
クロック入力バッファ10は、クロック信号CLKを受け、内部クロック信号ICLKを出力する。内部クロック信号ICLKは、クロックに同期して動作する回路に供給される。コマンド入力バッファ12は、コマンド信号CMD(アドレスバリッド信号/ADV、チップイネーブル信号/CE、アウトプットイネーブル信号/OEおよびライトイネーブル信号/WE等)を内部クロック信号ICLKに同期して受け、受けたコマンド信号CMDをコマンドデコーダ16に出力する。リフレッシュ生成部14は、図示しない発振器を有しており、リフレッシュ要求信号RREQZ(リフレッシュ要求)を周期的に出力する。例えば、リフレッシュ要求信号RREQZの生成周期は、10マイクロ秒である。
コマンドデコーダ16は、コマンド入力バッファ12からのチップイネーブル信号CEZに応答して内部チップイネーブル信号ICEZを出力し、リフレッシュ要求信号RREQZに応答して内部リフレッシュ要求信号IREFZを出力する。コマンドデコーダ16は、アクセス要求(読み出しコマンドまたは書き込みコマンド)が供給されたときにロウ読み書き信号RRWZを活性化する。コマンドデコーダ16は、チップイネーブル信号/CEの低レベル期間に読み出しコマンドまたは書き込みコマンドが供給されたときにコラム読み書き信号CRWZを活性化する。
また、コマンドデコーダ16は、チップイネーブル信号CEZとリフレッシュ要求信号RREQZとの優先順を決めるためのアービタARBを有している。読み出しコマンド(読み出しアクセス要求)は、/ADV信号および/CE信号の活性化中に/OE信号の低レベルにより認識される。書き込みコマンド(書き込みアクセス要求)は、/ADV信号および/CE信号の活性化中に/WE信号の低レベルにより認識される。コマンドデコーダ16は、読み出しコマンドまたは書き込みコマンドをリフレッシュ要求信号RREQZより優先させるときに、読み出し信号RDZまたは書き込み信号WRZを出力し、/CE信号が非活性化された後にリフレッシュ信号REFZを出力する。コマンドデコーダ16は、リフレッシュ要求信号RREQZを読み出しコマンドまたは書き込みコマンドより優先させるときに、リフレッシュ信号REFZを出力し、リフレッシュ動作の完了に応答して読み出し信号RDZまたは書き込み信号WRZを出力する。さらに、コマンドデコーダ16は、コマンド信号CMDの組み合わせがモードレジスタ12を設定するためのモードレジスタ設定コマンドを示すときに、モードレジスタ設定信号MRSZを出力する。コマンドデコーダ16の詳細は、図2に示す。
レイテンシ判定部18は、判定回路JUDGおよびフリップフロップF/Fを有している。判定回路JUDGは、内部チップイネーブル信号ICEZの活性化時に内部リフレッシュ要求信号IREFZが活性化されているときに、フリップフロップF/Fをセットするためのセット信号を出力する。フリップフロップF/Fは、セット端子SETでセット信号を受けたときに拡張信号EXTZを活性化し、リセット端子RSTでリセット信号(CEZ信号の立ち上がりエッジ)を受けたときに拡張信号EXTZを非活性化する。レイテンシ出力バッファ20は、拡張信号EXTZの論理レベルを反転し、レイテンシ拡張信号/LEXTとして出力する。後述するように、低レベルのレイテンシ拡張信号/LEXTは、読み出しレイテンシRLまたは書き込みレイテンシWLが標準値より増えることを示す。高レベルのレイテンシ拡張信号/LEXTは、読み出しレイテンシRLまたは書き込みレイテンシWLが標準値であることを示す。読み出しレイテンシRLは、読み出しコマンドの供給から最初の読み出しデータDQが出力されるまでのクロックサイクル数である。書き込みレイテンシWLは、書き込みコマンドの供給から最初の書き込みデータDQが入力されるまでのクロックサイクル数である。
モードレジスタ22は、モードレジスタ設定信号MRSZに同期してロウアドレス信号RAD、コラムアドレス信号CADおよびデータ信号DQの少なくともいずれかが設定される複数のレジスタを有している。例えば、モードレジスタ22は、バースト長BLを示す信号を出力する。バースト長BLは、1回の読み出しコマンドに応答してデータ端子DQから出力されるデータ信号の出力回数、および1回の書き込みコマンドに応答してデータ端子DQで受けるデータ信号の入力回数である。
動作制御部24は、読み出し信号RDZ、書き込み信号WRZまたはリフレッシュ信号REFZに応答して、メモリコアCOREのアクセス動作(読み出し動作、書き込み動作またはリフレッシュ動作)を制御する制御信号CNTを出力する。制御信号CNTは、ビット線BL、/BLをプリチャージするためのタイミング信号、ワード線WL1を活性化するためのタイミング信号、センスアンプSAを活性化するためのタイミング信号等を含む。読み出しコマンドにより、ロウアドレス信号RADおよびコラムアドレス信号CADにより選択されるメモリセルMCからデータが読み出される。書き込みコマンドにより、ロウアドレス信号RADおよびコラムアドレス信号CADにより選択されるメモリセルMCにデータが書き込まれる。リフレッシュコマンドにより、リフレッシュアドレス信号により選択されるワード線WL1に接続されたメモリセルMCがリフレッシュされる。
動作制御部24は、バーストアドレスカウンタ30およびアドレスラッチ32を動作させるタイミング信号と、データ入力バッファ34を動作させるタイミング信号DIZと、データ出力バッファ36を動作させるタイミング信号DOZ等を出力する。アービタARBおよび動作制御部24は、チップイネーブル信号/CEの非活性化中にリフレッシュ要求信号RREQZに応答するリフレッシュ動作を実行し、チップイネーブル信号/CEの活性化とともに供給される最初のアクセス要求およびチップイネーブル信号/CEの活性化中に供給される後続のアクセス要求に応答してアクセス動作(読み出し動作または書き込み動作)を実行するとともに、チップイネーブル信号/CEの活性化がリフレッシュ要求信号RREQZと競合するときに、リフレッシュ動作後にアクセス動作を実行するコア制御部として動作する。
バーストカウンタ26は、アクセス要求(ロウ読み書き信号RRWZまたはコラム読み書き信号CRWZ)に応答してカウント動作し、カウンタ値が期待値に達したときに、バースト長BLに対応する数のパルスを有するバーストクロック信号BCLKを内部クロック信号ICLKに同期して出力する。期待値は、アクセス要求からバーストクロック信号BCLKのパルスが出力されるまでの時間(クロックサイクル数)であり、読み書き信号RRWZ、CRWZおよび拡張信号EXTZに応じて決まり、レイテンシ拡張信号/LEXTが活性化されたときに増加される。バーストカウンタ26の動作は、図3に示す。
アドレス入力バッファ28は、アクセスするメモリセルMCを選択するためにアドレス端子ADに供給されるロウアドレス信号RADとコラムアドレス信号CADとを互いに異なる端子で同時に受ける。ロウアドレス信号RADは、ワード線WL1を選択するために供給され、コラムアドレス信号CADは、ビット線対BL、/BLを選択するために供給される。バーストアドレスカウンタ30は、バースト読み出し動作またはバースト書き込み動作時に、アドレス端子ADで受けるコラムアドレスCAD(開始アドレス)に続くコラムアドレスを順次に生成する。生成されるコラムアドレスの数は、バースト長BLに応じて決まる。アドレスラッチ32は、アドレス端子ADで受けるコラムアドレスCADおよびバーストアドレスカウンタ30からのコラムアドレスを受け、受けたコラムアドレスを内部コラムアドレスICADとしてコラムデコーダCDECに出力する。
データ入力バッファ34は、タイミング信号DIZの活性化中に、データ端子DQ(例えば、16ビット)に供給される書き込みデータ信号を受信し、受信したデータ信号をデータバスDBに出力する。データ出力バッファ36は、メモリセルMCから読み出される読み出しデータをデータバスDBを介して受信し、受信した読み出しデータをタイミング信号DOZの活性化中にデータ端子DQに出力する。
メモリコアCOREは、例えば、一対のロウブロックRBLK、各ロウブロックRBLKに対応するロウデコーダRDEC、ロウブロックRBLKの間に配置されたセンスアンプ領域SAA、コラムデコーダCDEC、リードアンプRA、ライトアンプWAおよびデータレジスタDREGを有している。なお、ロウブロックRBLKの数は、4個、8個あるいは10個等でもよい。各ロウブロックRBLKは、マトリックス状に配置された複数のメモリセルMCと、図の横方向に並ぶメモリセルMCの列に接続されたワード線WL1と、図の縦方向に並ぶメモリセルMCの列に接続されたビット線BL1(または/BL1)とを有している。
センスアンプ領域SAAは、各ロウブロックRBLKに対応するプリチャージ回路PREおよび接続スイッチBTと、ロウブロックRBLKに共有されるセンスアンプSAおよびコラムスイッチCSWとを有している。接続スイッチBTは、各ロウブロックRBLKのビット線対BL、/BLをセンスアンプSAに選択的に接続するために設けられる。
コラムデコーダCDECは、データ端子DQのビット数に対応する数のビット線対BL、/BLを選択するために、コラムアドレス信号CADをデコードする。なお、データレジスタDREGが並列の読み出しデータを直列の読み出しデータに変換する機能を有している場合、コラムデコーダCDECは、データ端子DQのビット数の整数倍に対応する数のビット線対BL、/BLを選択する。リードアンプRAは、読み出し動作時に、コラムスイッチCSWを介して出力される相補の読み出しデータを増幅する。ライトアンプWAは、書き込み動作時に、データバスDBを介して供給される相補の書き込みデータを増幅し、ビット線対BL、/BLに供給する。
データレジスタDREGは、読み出し動作時に、リードアンプRAを介して供給される読み出しデータを、バーストクロック信号BCLKに同期してデータバスDBに出力する。データレジスタDREGは、書き込み動作時に、データバスDBを介して供給される書き込みデータを、バーストクロック信号BCLKに同期してライトアンプWAに出力する。バーストカウンタ26およびデータレジスタDREGは、アクセス要求およびレイテンシ拡張信号/LEXTに応じてバーストクロック信号BCLKを生成し、バーストクロック信号BCLKに同期して読み出しデータまたは書き込みデータをデータバスDBまたはライトアンプWAに転送するデータ制御部として動作する。なお、メモリコアCOREは、一般的なDRAMのメモリコアと同じ構成であるため、回路の詳細な説明は省略する。
図2は、図1に示したコマンドデコーダ16の例を示している。コマンドデコーダ16は、アービタARB、バッファ回路BUF、読み書き要求生成部RWREQおよび読み書き検出部RWDETを有している。
アービタARBは、リフレッシュ要求RREQZの立ち上がりエッジがチップイネーブル信号CEZの立ち上がりエッジより早いときに、リフレッシュ信号REFZを活性化する。このとき、アービタARBは、リフレッシュ信号REFZに応答するリフレッシュ動作の完了後に読み出し信号RDZまたは書き込み信号WRZを活性化する。読み出し信号RDZは、アウトプットイネーブル信号OEZに対応して生成される。書き込み信号WRZは、ライトイネーブル信号WEZに対応して生成される。
アービタARBは、チップイネーブル信号CEZの立ち上がりエッジがリフレッシュ要求RREQZの立ち上がりエッジより早いときに、読み出し信号RDZまたは書き込み信号WRZを活性化する。このとき、アービタARBは、チップイネーブル信号CEZ(/CE)の非活性化に応答してリフレッシュ信号REFZを活性化する。
バッファ回路BUFは、リフレッシュ要求RREQZを内部リフレッシュ要求信号IREFZとして出力し、チップイネーブル信号CEZを内部チップイネーブル信号ICEZとして出力する。読み書き要求生成部RWREQは、チップイネーブル信号CEZの活性化中に供給されるアウトプットイネーブル信号OEZまたはライトイネーブル信号WEZに応答して内部読み書き信号IRWZを活性化する。
読み書き検出部RWDETは、アウトプットイネーブル信号OEZまたはライトイネーブル信号WEZがチップイネーブル信号CEZの活性化とともに活性化されたときにロウ読み書き信号RRWZを活性化し、アウトプットイネーブル信号OEZまたはライトイネーブル信号WEZがチップイネーブル信号CEZの活性化中に活性化されたときにコラム読み書き信号CRWZを活性化する。ロウ読み書き信号RRWZは、ワード線WL1が活性化され、センスアンプSAが活性化されるまでのいわゆるロウ動作と、ビット線BL1、/BL1が選択されデータがメモリコアCOREに入出力されるいわゆるコラム動作が必要なときに活性化される。コラム読み書き信号CRWZは、ロウ動作が既に開始されており、コラム動作のみが必要なときに活性化される。
図3は、図1に示したバーストカウンタ26の動作を示している。バーストカウンタ26は、クロック信号CLKに同期して動作する図示しない論理回路により構成される。バーストカウンタ26は、拡張信号EXTZの論理レベルと、高レベルHのロウ読み書き信号RRWZまたは高レベルHのコラム読み書き信号CRWZによって、タイミングが互いに異なる4種類のバーストクロック信号BCLKを出力する。バーストクロック信号BCLKのパルス数は、バースト長BLの値(この例では”4”)と同じである。
具体的には、チップイネーブル信号/CEの活性化時に、リフレッシュ動作が実行され、かつロウ動作とコラム動作を伴うアクセス動作が実行されるとき(EXTZ信号が高レベルH、RRWZ信号が高レベルH)、バーストクロック信号BCLKは、アクセスコマンド(読み出しコマンドまたは書き込みコマンド)から8クロック後に出力が開始される。すなわち、バーストカウンタ26のカウンタ値が期待値である”8”に達したときにバーストクロック信号BCLKの出力が開始される。以降の説明では、ロウ動作とコラム動作を伴うアクセス動作を実行するためのアクセスコマンド(読み出しコマンドまたは書き込みコマンド)を、ロウアクセスコマンド(ロウ読み出しコマンドまたはロウ書き込みコマンド)とも称する。
アクセスコマンドが読み出しコマンドのとき、読み出しデータRD1−4は、バーストクロック信号BCLKに同期してメモリコアCOREからデータバスDBに出力され、データ端子DQから外部に出力される。PSRAMをアクセスするコントローラ(図4のPSCNT等)は、9番目のクロック信号CLKの立ち上がりエッジに同期して最初の読み出しデータRDを受ける。したがって、読み出しレイテンシRLは”9”である。
一方、アクセスコマンドが書き込みコマンドのとき、書き込みデータWD1−4は、8番目から11番目のクロック信号CLKの立ち上がりエッジに同期してコントローラからPSRAMのデータ端子DQに順次供給され、データバスDBに転送される。したがって、書き込みレイテンシWLは”8”である。データバスDB上の書き込みデータWD1−4は、バーストクロック信号BCLKに同期してメモリセルMCに書き込まれる。
チップイネーブル信号/CEの活性化中に、リフレッシュ動作が実行され、かつコラム動作のみを伴うアクセス動作が実行されるとき(EXTZ信号が高レベルH、CRWZ信号が高レベルH)、バーストクロック信号BCLKは、アクセスコマンドから5クロック後に出力が開始される。このとき、上述と同様に、読み出しレイテンシRLは”6”であり、書き込みレイテンシWLは”5”である。以降の説明では、コラム動作のみを伴うアクセス動作を実行するためのアクセスコマンド(読み出しコマンドまたは書き込みコマンド)を、コラムアクセスコマンド(コラム読み出しコマンドまたはコラム書き込みコマンド)とも称する。
このように、コラム読み出しコマンドに対応する読み出しレイテンシRLは、ロウ読み出しコマンドに対応する読み出しレイテンシRLに比べて小さい。同様に、コラム書き込みコマンドに対応する書き込みレイテンシWLは、ロウ書き込みコマンドに対応する書き込みレイテンシWLに比べて小さい。読み出しレイテンシRLまたは書き込みレイテンシWLを、ロウ動作を伴うか否かで変更することで、最小限のクロックサイクル数で読み出しデータをPSRAMから出力でき、あるいは、最小限のクロックサイクル数で書き込みデータをPSRAMに入力できる。これは、後述するリフレッシュ動作が挿入されないときも同様である。
リフレッシュ動作が実行されることなく、チップイネーブル信号/CEの活性化に応答してロウ動作とコラム動作を伴うアクセス動作が実行されるとき(EXTZ信号が低レベルL、RRWZ信号が高レベルH)、バーストクロック信号BCLKは、アクセスコマンドから4クロック後に出力が開始される。このとき、読み出しレイテンシRLは”5(標準値)”であり、書き込みレイテンシWLは”4(標準値)”である。
リフレッシュ動作が実行されることなく、チップイネーブル信号/CEの活性化に応答してコラム動作のみを伴うアクセス動作が実行されるとき(EXTZ信号が低レベルL、CRWZ信号が高レベルH)、バーストクロック信号BCLKは、アクセスコマンドから1クロック後に出力が開始される。このとき、読み出しレイテンシRLは”2(標準値)”であり、書き込みレイテンシWLは”1(標準値)”である。
図4は、図1に示したPSRAMが搭載されるシステムSYSを示している。システムSYSは、例えば、携帯電話等の携帯機器である。なお、後述する実施形態においても、図4と同じシステムが構成される。システムSYSは、リードフレーム等のパッケージ基板上に複数のチップが搭載されたシステムインパッケージSiPを有している。あるいは、システムSYSは、パッケージ基板上に複数のチップが積層されたマルチチップパッケージMCPを有している。あるいは、システムSYSは、シリコン基板上に複数のマクロが集積されたシステムオンチップ(SoC)を有している。さらに、システムSYSは、チップオンチップCoCあるいはパッケージオンパッケージ(PoP)の形態で構成されてもよい。
SiPは、図1に示したPSRAM、PSRAMをアクセスするメモリコントローラPSCNT、フラッシュメモリFLASH、フラッシュメモリFLASHをアクセスするメモリコントローラFCNT、およびシステム全体を制御するCPU(コントローラ)を有している。CPUおよびメモリコントローラPSCNT、MCNTは、システムバスSBUSにより互いに接続されている。SiPは、外部バスSCNTを介して上位のシステムに接続される。CPUは、PSRAMおよびFLASHをアクセスするために、コマンド信号CMD、アドレス信号ADおよび書き込みデータ信号DQを出力し、PSRAMおよびFLASHから読み出しデータ信号DQを受信する。
図5は、図4に示したメモリコントローラPSCNTの例を示している。メモリコントローラPSCNTは、レイテンシ判定部50、レイテンシ調整部52、コマンド発生部54、データ出力部56およびデータ入力部58を有している。レイテンシ判定部50は、PSRAMからのレイテンシ拡張信号/LEXTおよびコマンド発生部54からのコマンド情報に基づいて、読み出しレイテンシRL(システム読み出しレイテンシ)および書き込みレイテンシWL(システム書き込みレイテンシ)を出力する。
システム読み出しレイテンシは、レイテンシ拡張信号/LEXTの活性化中における読み出しアクセス要求の出力から読み出しデータを受けるまでの時間(クロックサイクル数)を示す。システム書き込みレイテンシは、レイテンシ拡張信号/LEXTの活性化中における書き込みアクセス要求の出力から書き込みデータを出力するまでの時間(クロックサイクル数)を示す。
コマンド発生部54からのコマンド情報は、ロウ動作を伴うアクセス要求か否かの情報と、アクセス要求が読み出し要求または書き込み要求のいずれであるかの情報とを含む。レイテンシRL、WLは、図3に示した値と同じである。すなわち、レイテンシ判定部50は、PSRAMのレイテンシRL、WLに関する情報を予め有している。
レイテンシ調整部52は、バースト長BLを示すバースト情報BINFおよびレイテンシ判定部50からのレイテンシRL、WLに基づいて、クロック信号CLKに同期してコマンド発生部54、データ出力部56およびデータ入力部58の動作を制御する制御信号を出力する。レイテンシ判定部50およびレイテンシ調整部52は、レイテンシ拡張信号/LEXTの活性化中のシステム読み出しレイテンシを、レイテンシ拡張信号/LEXTの非活性化中に比べて増加し、レイテンシ拡張信号/LEXTの活性化中のシステム書き込みレイテンシを、レイテンシ拡張信号/LEXTの非活性化中に比べて増加するレイテンシ制御部として動作する。
コマンド発生部54は、レイテンシ調整部52からの制御信号に応じて、バースト長BLおよび可変のレイテンシRL、WLに合わせてコマンド信号CMDを出力するとともに、データ出力部56およびデータ入力部58に制御信号を出力する。
データ出力部56は、レイテンシ調整部52およびコマンド発生部54から指示に基づいて、書き込みデータをデータ端子DQに出力する。データ入力部58は、レイテンシ調整部52およびコマンド発生部54から指示に基づいて、データ端子DQから読み出しデータを受ける。
図6は、図5に示したレイテンシ判定部50の動作を示している。レイテンシ判定部50は、図6の動作を実現するための論理回路で構成されてもよく、図6の動作を実現するためのソフトウエアで構成されてもよい。
まず、動作10において、レイテンシ判定部50は、コマンド発生部54からの情報に基づいて、読み出しコマンドRDまたは書き込みコマンドWRのいずれがPSRAMに供給されたかを判断する。読み出しコマンドRDが供給されたとき、処理は動作12に移行し、書き込みコマンドWRが供給されたとき、処理は動作32に移行する。
動作12では、レイテンシ判定部50は、PSRAMからの拡張信号/LEXTが低レベルLか否かを判定する。拡張信号/LEXTが低レベルLのときリフレッシュ動作が挿入されたと判断し、処理は動作14に移行する。拡張信号/LEXTが高レベルHのとき、リフレッシュ動作が挿入されないと判断し、処理は動作20に移行する。
動作14では、レイテンシ判定部50は、コマンド発生部54からの情報に基づいて、読み出し動作がロウ動作を伴うか否か(最初の読み出しコマンド1stRDか否か)を判定する。ロウ動作を伴うとき、処理は動作16に移行し、ロウ動作を伴わないとき、処理は動作18に移行する。動作16では、読み出しレイテンシRLは”9”に設定される。動作18では、読み出しレイテンシRLは”6”に設定される。
一方、動作20では、動作14と同様に、読み出し動作がロウ動作を伴うか否かが判定される。そして、動作22、24において、読み出しレイテンシRLが”5”、”2”にそれぞれ設定される。
書き込みコマンドWRが判定されたときも、上述と同様に、動作32において拡張信号/LEXTの論理レベルが判定され、動作34、40において、書き込み動作がロウ動作を伴うか否かが判定される。そして、動作36、38、42、44において、PSRAMの動作状況に応じて書き込みレイテンシWLが設定される。
図7は、図1に示したPSRAMの動作の例を示している。この例では、メモリコントローラPSCNTから読み出しコマンドRD1−RD5がPSRAMに順次に供給され、ページ読み出し動作が実行される。最初の読み出しコマンドRD1が供給される直前に、リフレッシュ要求信号RREQZ(IREFZ)が活性化される(図7(a))。バースト長BLは”1”に設定されている。
ページ読み出し動作は、1本のワード線WL1に接続されたメモリセルMCから読み出され、センスアンプSAにラッチされたデータのいずれかをコラムアドレスCADにより選択し読み出す動作である。ページ動作では、ワード線WL1を活性化し続けるために、チップイネーブル信号/CEを活性化し続ける必要がある。但し、リフレッシュ動作を定期的に実行するために、ワード線WL1の最大の活性化時間は、例えば、リフレッシュ要求信号RREQZの周期と同じ10マイクロ秒に設定されている。
読み出しコマンドRD1−RD5は、/ADV信号、/CE信号の活性化中に、/OE信号の低レベルにより認識される(/WE信号は高レベル)。チップイネーブル信号/CEの立ち下がりエッジとともに供給される読み出しコマンドRD1から次の読み出しコマンドRD2までの間隔は、ロウ動作を実行するために少なくとも4クロックサイクル空けなくてはならない。具体的には、読み出しコマンドRD1、RD2の間隔は、バースト長BLの値+3クロックサイクル以上必要である。2番目以降の読み出しコマンドRD(RD2、RD3等)は、バースト長BLの値と同じクロックサイクル数毎(この例では1クロック)に供給できる。
図2に示したコマンドデコーダ16は、読み出しコマンドRD1−RD5毎に内部読み書き信号IRWZを活性化する。メモリコントローラPSCNTは、読み出しコマンドRD1−RD5とともに、ロウアドレス信号RADおよびコラムアドレス信号CADをPSRAMに出力する。ロウアドレス信号RAD(R1)は、ページ動作を実行するための共通のロウアドレスを示す。コラムアドレス信号CAD(C1−C5)は、ページ動作を実行するための互いに異なるコラムアドレスを示す。
図2に示したコマンドデコーダ16は、チップイネーブル信号/CEの活性化に応答して内部チップイネーブル信号ICEZを活性化する(図7(b))。レイテンシ判定部50は、内部チップイネーブル信号ICEZより先にリフレッシュ要求信号IREFZが活性化されたため、拡張信号EXTZを活性化する(図7(c))。レイテンシ出力バッファ20は、拡張信号EXTZの活性化に応答してレイテンシ拡張信号/LEXTを活性化する(図7(d))。拡張信号EXTZおよびレイテンシ拡張信号/LEXTは、チップイネーブル信号/CEが非活性化され、ページ読み出し動作が完了するまで活性化され続ける。したがって、読み出しレイテンシRLは、図3に示したように、ロウ動作を伴うときに”9”であり、ロウ動作を伴わないときに”6”である。
コマンドデコーダ16のアービタARBは、リフレッシュ要求信号RREQZに応答してリフレッシュ信号REFZを活性化し、読み出しコマンドRD1を一時的に保持する。動作制御部24は、リフレッシュ信号REFZに応答してメモリコアCOREのリフレッシュ動作REFを開始する(図7(e))。アービタARBは、リフレッシュ動作REFの完了に応答して図示しない読み出し信号RDZを活性化する。動作制御部24は、読み出し信号RDZに応答してロウアドレス信号RADが示すワード線WL1を活性化し、センスアンプSAを活性化する。すなわち、メモリコアCOREのアクティブ動作ACTVが開始される(図7(f))。
図1に示したデータレジスタDREGは、図3に示したバーストクロックBCLKに同期して読み出しデータRD1−RD5を出力する。そして、読み出しデータRD1−RD5は、読み出しレイテンシRLに対応するクロック信号CLKに同期してデータ端子DQに出力される(図7(g))。
図8は、図1に示したPSRAMの動作の別の例を示している。この例では、図7と同じタイミングで、メモリコントローラPSCNTから読み出しコマンドRD1−RD5がPSRAMに順次に供給され、ページ読み出し動作が実行される。メモリコントローラPSCNTからPSRAMに供給される全ての信号のタイミングは、図7と同じである。バースト長BLは”1”に設定されている。
最初の読み出しコマンドRD1が供給されたとき、リフレッシュ要求は発生しておらず、リフレッシュ要求信号RREQZ(IREFZ)は非活性化されている(図8(a))。アービタARBは、読み出しコマンドRD1に応答して読み出し信号RDZを活性化する。動作制御部24は、読み出し信号RDZに応答してメモリコアCOREの読み出し動作を実行するために、ロウアドレス信号RADが示すワード線WL1を活性化し、センスアンプSAを活性化する。すなわち、メモリコアCOREのアクティブ動作ACTVが開始される(図8(b))。
図5に示したレイテンシ判定部50は、拡張信号EXTZを非活性化し続ける(図8(c))。レイテンシ出力バッファ20は、レイテンシ拡張信号/LEXTを非活性化し続ける(図8(d))。したがって、読み出しレイテンシRLは、図3に示したように、ロウ動作を伴うときに”5”であり、ロウ動作を伴わないときに”2”である。そして、読み出しデータRD1−RD5は、図3に示した読み出しレイテンシRLに対応するクロック信号CLKに同期してデータ端子DQに出力される(図8(e))。
図7および図8に示したように、この実施形態では、リフレッシュ動作REFが挿入されるか否かに拘わらず、2番目以降の各読み出しコマンドRD2−RD5の供給タイミングは全て同じである。これは、リフレッシュ動作REFが挿入されるときの最初の読み出しコマンドRD1のレイテンシRL(=9)と2番目の以降の読み出しコマンドRD2−RD5のレイテンシRL(=6)の差を、リフレッシュ動作REFが挿入されないときの最初の読み出しコマンドRD1のレイテンシRL(=5)と2番目の以降の読み出しコマンドRD2−RD5のレイテンシRL(=2)の差と同じ値(この例では”3”)に設定することで達成できる。なお、最初の読み出しコマンドRD1の後に書き込みコマンドWRが供給されるときも、リフレッシュ動作REFの挿入の有無によらず、レイテンシの差を等しく設定することで、コマンドの供給タイミングをリフレッシュ動作REFの挿入の有無によらず同じにできる。
この手法により、メモリコントローラPSCNTは、読み出しデータの受信タイミングのみをリフレッシュ動作が挿入されるか否かに応じて変更すればよい。メモリコントローラPSCNTは、2番目以降の読み出しコマンドRD2−RD5の出力タイミングを変える必要がない。したがって、メモリコントローラPSCNTの動作に余裕を持たせることができる。特に、図5に示したコマンド発生部54は、リフレッシュ動作が挿入されるか否かに拘わらず常に同じタイミングで動作できる。このため、コマンドの供給タイミングに余裕を持たせることができる。
図9は、図1に示したPSRAMの動作の別の例を示している。この例では、メモリコントローラPSCNTから書き込みコマンドと読み出しコマンドが混在して供給され、ページ動作が実行される。バースト長BLは”1”に設定されている。書き込みコマンドWRは、/ADV信号および/CE信号の活性化中に、/WE信号の低レベルにより認識される(/OE信号は高レベル)。
チップイネーブル信号/CEの立ち下がりエッジとともに供給される書き込みコマンドWR1から次の読み出しコマンドRD2までの間隔は、ロウ動作を実行するためになくとも3クロックサイクル空けなくてはならない。具体的には、書き込みコマンドWR1と読み出しコマンドRD2の間隔は、バースト長BLの値+2クロックサイクル以上必要である。図7より1クロック少ないのは、書き込みレイテンシWLが読み出しレイテンシRLより常に1クロックサイクル少ないためである。
レイテンシWL、RLの違いによる書き込みデータWDと読み出しデータRDの衝突を防止するため、2番目以降の読み出しコマンドRDと書き込みコマンドWRの間は、少なくとも1クロックサイクル空けなくてはならない。2番目以降の複数の読み出しコマンドRDはクロックサイクル毎に供給できる。2番目以降の複数の書き込みコマンドWRもクロックサイクル毎に供給できる。さらに、2番目以降の書き込みコマンドWRと読み出しコマンドRDは連続して供給できる。
この例では、最初の書き込みコマンドWR1が供給される直前に、リフレッシュ要求信号RREQZ(IREFZ)が活性化される(図9(a))。このため、図7と同様に、拡張信号EXTZが活性化され(図9(b))、レイテンシ拡張信号/LEXTが活性化される(図9(c))。したがって、書き込みレイテンシWLは、図3に示したように、ロウ動作を伴うときに”8”であり、ロウ動作を伴わないときに”5”である。読み出しレイテンシRLは、図7と同じである。
なお、リフレッシュ動作REFが挿入されないとき、書き込みデータWDのデータ端子DQへの供給タイミングおよび読み出しデータRDのデータ端子DQからの出力タイミングは変わる。すなわち、書き込みレイテンシWLおよび読み出しレイテンシRLは、すべて”4”だけ少なくなる。しかし、コマンドWR1、RD2、WR3、RD4、WR5の供給タイミングは、図9と同じにできる。これは、リフレッシュ動作REFが挿入されるときの最初の書き込みコマンドWR1のレイテンシWL(=8)と2番目の以降の読み出しコマンドRD2、RD4のレイテンシRL(=6)の差を、リフレッシュ動作REFが挿入されないときの最初の書き込みコマンドWR1のレイテンシWL(=4)と2番目の以降の読み出しコマンドRD2、RD4のレイテンシRL(=2)の差と同じ値(この例では”2”)に設定することで達成できる。また、リフレッシュ動作REFが挿入されるときの最初の書き込みコマンドWR1のレイテンシWL(=8)と2番目の以降の書き込みコマンドWR3、WR5のレイテンシWL(=5)の差を、リフレッシュ動作REFが挿入されないときの最初の書き込みコマンドWR1(=4)のレイテンシWLと2番目の以降の書き込みコマンドWR3、WR5のレイテンシRL(=1)の差と同じ値(この例では”3”)に設定することで達成できる。
この手法により、メモリコントローラPSCNTは、書き込みデータの出力タイミングおよび読み出しデータの受信タイミングのみをリフレッシュ動作が挿入されるか否かに応じて変更すればよい。メモリコントローラPSCNTは、2番目以降のコマンドRD2−RD5の出力タイミングを変える必要がない。したがって、上述したように、メモリコントローラPSCNTの動作に余裕を持たせることができ、コマンドの供給タイミングに余裕を持たせることができる。
図10は、図1に示したPSRAMの動作の別の例を示している。この例では、メモリコントローラPSCNTから読み出しコマンドと書き込みコマンドが混在して供給され、ページ動作が実行される。バースト長BLは”1”に設定されている。
上述したように、2番目以降の読み出しコマンドRDと書き込みコマンドWRの間は、少なくとも1クロックサイクル空けなくてはならない。このため、チップイネーブル信号/CEの立ち下がりエッジとともに供給される読み出しコマンドRD1から次の書き込みコマンドWR2までの間隔は、図7より1クロックサイクル多い5クロックサイクルを空けなくてはならない。具体的には、読み出しコマンドRD1と書き込みコマンドWR2の間隔は、バースト長BLの値+4クロックサイクル以上必要である。
最初の読み出しコマンドRD1が供給されたとき、リフレッシュ要求は発生しておらず、リフレッシュ要求信号RREQZ(IREFZ)は非活性化されている(図10(a))。このため、レイテンシ判定部50は、拡張信号EXTZを非活性化し続け(図10(b))、レイテンシ出力バッファ20は、レイテンシ拡張信号/LEXTを非活性化し続ける(図10(c))。したがって、書き込みレイテンシWLは、図3に示したように、ロウ動作を伴うときに”5”であり、ロウ動作を伴わないときに”1”である。読み出しレイテンシRLは、図8と同じである。
図11は、図1に示したPSRAMの動作の別の例を示している。この例では、メモリコントローラPSCNTから読み出しコマンドRD1−RD3が順次に供給され、ページ動作が実行される。バースト長BLは”4”に設定されている。
読み出しコマンドRD1、RD2の最小間隔は、上述したように、バースト長BLの値+3クロックサイクル(すなわち、7クロックサイクル)である。読み出しコマンドRD2、RD3の間隔は、バースト長BLの値と同じクロックサイクル数(この例では4クロックサイクル)である。
この例では、最初の読み出しコマンドRD1が供給される直前に、リフレッシュ要求信号RREQZ(IREFZ)が活性化される(図11(a))。このため、図7と同様に、拡張信号EXTZが活性化され(図11(b))、レイテンシ拡張信号/LEXTが活性化される(図11(c))。したがって、読み出しレイテンシRLは、図7と同様に、ロウ動作を伴うときに”9”であり、ロウ動作を伴わないときに”6”である。
以上、この実施形態では、レイテンシ拡張信号/LEXTを、チップイネーブル信号/CEの活性化中に同じレベルに保持することで、リフレッシュ動作REFが挿入されるか否かに拘わらず、ページ動作中にコラムアクセスコマンドに対応する読み出しレイテンシRLまたは書き込みレイテンシWLが変更されることを防止できる。
また、リフレッシュ動作REFの挿入の有無に拘わらず、コラムアクセスコマンドのPSRAMへの供給タイミングを等しくできるため、メモリコントローラPSCNTの動作に余裕を持たせることができ、コマンドの供給タイミングに余裕を持たせることができる。したがって、クロック信号CLKの周波数が高いときにも、読み出しコマンドRDおよび書き込みコマンドWRをPSRAMに確実に供給できる。換言すれば、誤ったタイミングでメモリコントローラPSCNTからPSRAMにコラムアクセスコマンドが供給されることを防止できる。この結果、PSRAMの誤動作を防止できる。
図12は、別の実施形態における半導体メモリの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この半導体メモリは、PSRAMである。PSRAMは、図1のレイテンシ判定部18の代わりにレイテンシ判定部18Aを有している。また、PSRAMは、新たにリセット制御部RSTCNTを有している。その他の構成は、図1と同じである。
レイテンシ判定部18AのフリップフロップF/Fは、リセット端子RSTで、チップイネーブル信号CEZまたは拡張リセット信号EXTRSTZの高レベルを受けたときにリセットされ、拡張信号EXTZを低レベルに変化する。リセット制御部RSTCNTは、コマンドデコーダCDECから供給されるコラム読み書き信号CRWZの間隔が、所定の期間(4クロックサイクルにバースト長BLが示すクロックサイクルを加えたクロックサイクル数)を超えたとき、拡張リセット信号EXTRSTZを活性化する。すなわち、リセット制御部RSTCNTは、チップイネーブル信号/CEが活性化された後に供給される後続のアクセス要求が所定の期間供給されないときに、拡張リセット信号を出力するレイテンシ制御部として動作する。
図13は、図12に示したPSRAMの動作の例を示している。この例では、メモリコントローラPSCNTから読み出しコマンドRD1−RD5がPSRAMに順次に供給され、ページ読み出し動作が実行される。最初の読み出しコマンドRD1が供給される直前に、リフレッシュ要求信号RREQZ(IREFZ)が活性化され(図13(a))、アクセス動作の前にリフレッシュ動作REFが実行される(図13(b))。バースト長BLは”1”に設定されている。
リセット制御部RSTCNTは、読み出しコマンドRD3に対応するコラム読み書き信号CRWZを受けた後、クロックサイクル数をカウントする(図13(c))。リセット制御部RSTCNTは、12番目のクロック信号CLKの立ち上がりエッジに同期して次の読み出しコマンドまたは書き込みコマンドが供給されないため、拡張リセット信号EXTRSTZを一時的に活性化する(図13(d))。これにより、拡張信号EXTZが非活性化され、レイテンシ拡張信号/LEXTが非活性化される(図13(e))。
レイテンシ拡張信号/LEXTの非活性化により、読み出しレイテンシRLは、”6”から”2”に短縮される(図13(f))。これにより、メモリコントローラPSCNTとPSRAMの間のデータ転送レートを向上でき、PSRAMのアクセス効率を向上できる。リフレッシュ動作REFが挿入されないときの動作は、図8と同様であり、最初の読み出しコマンドRD1の読み出しレイテンシRLは”5”であり、2番目以降の読み出しコマンドRD2−RD5の読み出しレイテンシRLは”2”である。
なお、13番目のクロック信号CLKに同期して読み出しコマンドRD4が供給されるとき、読み出しデータRD4は、15番目のクロック信号CLKに同期して出力される(図13(g))。このため、データ端子DQにデータが転送されない期間が1クロックサイクル生じる。しかし、13番目のクロック信号CLKに同期して書き込みコマンドWRが供給されたとき、14番目のクロック信号CLKに同期して書き込みデータがデータ端子DQに供給されるため(書き込みレイテンシWL=1)、1クロックサイクルを空ける必要がある。
リセット制御部RSTCNTは、リフレッシュ動作REFが挿入されないときにもクロックサイクル数をカウントし、リセット信号EXTRSTZを活性化する。しかし、リフレッシュ動作REFが挿入されないとき、フリップフロップF/Fは、拡張信号EXTZを非活性化しているため、誤動作等の問題は発生しない。
図14は、図12に示したPSRAMの動作の別の例を示している。この例では、メモリコントローラPSCNTから書き込みコマンドと読み出しコマンドが混在して供給され、ページ動作が実行される。バースト長BLは”1”に設定されている。この例においても、リフレッシュ動作REFが挿入される。
リセット制御部RSTCNTは、読み出しコマンドRD2に対応するコラム読み書き信号CRWZを受けた後、クロックサイクル数をカウントする(図14(a))。リセット制御部RSTCNTは、10番目のクロック信号CLKの立ち上がりエッジに同期して次の読み出しコマンドまたは書き込みコマンドが供給されないため、拡張リセット信号EXTRSTZを一時的に活性化する(図14(b))。これにより、図13と同様に、読み出しレイテンシRLおよび書き込みレイテンシWLが短縮される(図14(c))。なお、リフレッシュ動作REFが挿入されないときの動作は、図10と同様である。また、レイテンシが短縮された直後に書き込みコマンドWRが供給される場合、読み出しデータRD2と書き込みデータWR3は、データ端子DQに連続して転送される。
図15は、図12に示したPSRAMの動作の別の例を示している。この例では、メモリコントローラPSCNTから読み出しコマンドRD1−RD3が順次に供給され、ページ動作が実行される。バースト長BLは”4”に設定されている。この例においても、リフレッシュ動作REFが挿入される。
リセット制御部RSTCNTは、読み出しコマンドRD2に対応するコラム読み書き信号CRWZを受けた後、クロックサイクル数をカウントする(図15(a))。リセット制御部RSTCNTは、17番目のクロック信号CLKの立ち上がりエッジに同期して次の読み出しコマンドまたは書き込みコマンドが供給されないため、拡張リセット信号EXTRSTZを一時的に活性化する(図15(b))。すなわち、バースト長BLが”4”のとき、読み出しコマンドまたは書き込みコマンドが8クロックサイクル供給されないときに、レイテンシRLが短縮される。これにより、バースト長BLが異なるときにも誤動作することなく、図13と同様に、読み出しレイテンシRLが短縮される(図15(c))。
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。さらに、この実施形態では、3番目以降のアクセス要求が所定の期間供給されないときに、拡張レイテンシ信号/LEXTを非活性化し、レイテンシRL、WLを減らす。レイテンシRL、WLを減らすことで、メモリコントローラPSCNTとPSRAMの間のデータ転送レートを向上でき、PSRAMのアクセス効率を向上できる。
バースト長BLに応じてレイテンシ拡張信号/LEXTが非活性化されるまでのクロックサイクル数を変えることで、バースト長BLが変更されたときにもデータ信号DQが衝突することを防止でき、PSRAMの誤動作を防止できる。
図16は、別の実施形態における半導体メモリの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この半導体メモリは、PSRAMである。PSRAMは、リセット制御部RSTCNTが図12と相違している。その他の構成は、図12と同じである。
リセット制御部RSTCNTは、コラム読み書き信号CRWZの間隔が、バースト長BLの値と同じクロックサイクル数に”4”を加えたクロックサイクル数を超えたとき、拡張リセット信号EXTRSTZを活性化し、さらにロウ読み書き信号RRWZの間隔が、バースト長BLの値と同じクロックサイクル数に”7”を加えたクロックサイクル数を超えたとき、拡張リセット信号EXTRSTZを活性化する。すなわち、この実施形態では、チップイネーブル信号/CEとともに供給される最初のアクセスコマンドRD、WRから所定の期間、次のアクセスコマンドが供給されないときに拡張リセット信号EXTRSTZが活性化される。
図17は、図16に示したPSRAMの動作の例を示している。4番目のクロックサイクルまでは、図7と同じである。すなわち、アクセス動作の前にリフレッシュ動作REFが実行される(図17(a))。バースト長BLは”1”に設定されている。
リセット制御部RSTCNTは、読み出しコマンドRD1に対応するロウ読み書き信号RRWZを受けた後、クロックサイクル数をカウントする(図17(b))。リセット制御部RSTCNTは、10番目のクロック信号CLKの立ち上がりエッジに同期して次の読み出しコマンドまたは書き込みコマンドが供給されないため、拡張リセット信号EXTRSTZを一時的に活性化する(図17(c))。これにより、拡張信号EXTZが非活性化され、レイテンシ拡張信号/LEXTが非活性化される(図17(d))。
レイテンシ拡張信号/LEXTの非活性化により、読み出しレイテンシRLは、”9”から”2”に短縮される(図17(e))。なお、リフレッシュ動作REFが挿入されないときの動作は、図8と同様であり、最初の読み出しコマンドRD1の読み出しレイテンシRLは”5”であり、2番目以降の読み出しコマンドRD2−RD5の読み出しレイテンシRLは”2”である。
図18は、図16に示したPSRAMの動作の別の例を示している。この例では、メモリコントローラPSCNTから読み出しコマンドRD1−RD3が順次に供給され、ページ動作が実行される。バースト長BLは”4”に設定されている。この例においても、リフレッシュ動作REFが挿入される。
リセット制御部RSTCNTは、最初の読み出しコマンドRD1に対応するロウ読み書き信号RRWZを受けた後、クロックサイクル数をカウントする(図18(a))。リセット制御部RSTCNTは、13番目のクロック信号CLKの立ち上がりエッジに同期して次の読み出しコマンドまたは書き込みコマンドが供給されないため、拡張リセット信号EXTRSTZを一時的に活性化する(図18(b))。これにより、図13と同様に、読み出しレイテンシRLが短縮される(図18(c))。
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。さらに、この実施形態では、チップイネーブル信号/CEとともに供給される最初のアクセスコマンド(ロウアクセスコマンド)から次のアクセスコマンド(コラムアクセスコマンド)までのクロックサイクル数が多いときにも、メモリコントローラPSCNTとPSRAMの間のデータ転送レートを向上でき、PSRAMのアクセス効率を向上できる。具体的には、図17において、読み出しコマンドRD2−RD5の読み出しレイテンシRLが”6”になることを防止できる。
図19は、別の実施形態における半導体メモリの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この半導体メモリは、PSRAMである。PSRAMは、レイテンシ出力バッファ20Bが図12のレイテンシ出力バッファ20と相違している。PSRAMのその他の構成は、図12と同じである。
レイテンシ出力バッファ20Bは、拡張信号EXTZの活性化に同期して、負のパルスを有するレイテンシ拡張信号/LEXT(パルス信号)を生成するパルス生成器PGENを有している。これにより、レイテンシ拡張信号/LEXTは、拡張信号EXTZの立ち上がりエッジに同期して一時的に低レベルに変化する。
この実施形態では、レイテンシ拡張信号/LEXTの波形を除き、PSRAMの動作は、図13から図15と同じである。なお、図16に示したように、リセット制御部RSTCNTにコラム読み書き信号CRWZだけでなく、ロウ読み書き信号RRWZを供給してもよい。このとき、チップイネーブル信号/CEとともに供給される最初のアクセスコマンドから次のアクセスコマンドまでのクロックサイクル数が多いときにも、PSRAMのアクセス効率を向上できる。
図20は、図4に示したメモリコントローラPSCNTの例を示している。メモリコントローラPSCNTは、図5のレイテンシ判定部50の代わりに、レイテンシ判定部50Aを有している。
レイテンシ判定部50Aは、レイテンシ拡張信号/LEXTのロウパルスに同期して読み出しレイテンシRLおよび書き込みレイテンシWLの値を増やす。その後、コマンド発生部54から読み出しコマンドまたは書き込みコマンドが、バースト長BLを示すバースト情報BINFの値に4クロックを加えたクロックサイクルの間に出力されないとき、レイテンシ判定部50Aは、読み出しレイテンシRLおよび書き込みレイテンシWLの値を減らす。このように、レイテンシ判定部50Aは、レイテンシRL、WLを減らすために読み出しコマンドまたは書き込みコマンドが所定の期間発生しないことを検出するタイマTIMRとして動作する。
レイテンシ判定部50Aおよびレイテンシ調整部52は、レイテンシ拡張信号/LEXTのロウパルスを受けたときに、読み出しアクセス要求の出力から読み出しデータを受けるまでのシステム読み出しレイテンシRLを増加し、後続の読み出しアクセス要求を所定の期間出力しないときにシステム読み出しレイテンシRLを元に戻すレイテンシ制御部として動作する。あるいは、レイテンシ判定部50Aおよびレイテンシ調整部52は、レイテンシ拡張信号/LEXTのロウパルスを受けたときに、書き込みアクセス要求の出力から書き込みデータを出力するまでのシステム書き込みレイテンシWLを増加し、後続の書き込みアクセス要求を所定の期間出力しないときにシステム書き込みレイテンシWLを元に戻すレイテンシ制御部として動作する。
図21は、図20に示したレイテンシ判定部50Aの動作を示している。動作50において、レイテンシ判定部50Aは、PSRAMからのレイテンシ拡張信号/LEXTが低レベルLに変化したか否かを検出する。レイテンシ拡張信号/LEXTが低レベルLのとき、処理は動作52に移行する。レイテンシ拡張信号/LEXTが高レベルHのとき、処理は動作64に移行する。
動作52において、レイテンシ判定部50Aは、読み出しレイテンシRLおよび書き込みレイテンシWLの値を増加し、レイテンシ調整部52に通知する。レイテンシ調整部52は、増加したレイテンシRL、WLに基づいて、コマンド発生部54、データ出力部56およびデータ入力部58を制御する。動作54において、レイテンシ判定部50Aは、内蔵するカウンタのカウンタ値を”0”にリセットする。
動作56において、レイテンシ判定部50Aは、コマンド発生部54からのコマンド情報に基づいて、読み出しコマンドRDまたは書き込みコマンドWRがPSRAMに出力されるか否かを検出する。コマンドRDまたはWRが出力されるとき、動作58において、カウンタ値COUNTが”0”にリセットされる。コマンドRDまたはWRが出力されないとき、動作60において、カウンタ値COUNTがクロック信号CLKに同期して”1”だけ増加される。
次に、動作62において、レイテンシ判定部50Aは、カウンタ値COUNTがバースト情報BINFの値に4クロックサイクルを加えた値(切り換え値)に等しいか否かを判定する。カウンタ値COUNTが切り換え値に達していないとき、処理は動作56に移行する。このとき、レイテンシRL、WLは、増加したままである。カウンタ値COUNTが切り換え値に達しているとき、処理は動作64に移行する。すなわち、レイテンシ判定部50Aは、所定のクロックサイクルの間、コマンドRDまたはWRが発生していないと判断する。
動作64において、レイテンシ判定部50Aは、レイテンシRL、WLの値を減少し、レイテンシ調整部52に通知する。これ以降、レイテンシ調整部52は、減少したレイテンシRL、WLに基づいて、コマンド発生部54、データ出力部56およびデータ入力部58を制御する。
図22は、図19に示したPSRAMの動作の例を示している。PSRAMの動作は、レイテンシ拡張信号/LEXTの波形を除き、図13と同じである。すなわち、バースト長BLは”1”に設定されている。
図20に示したレイテンシ判定部50Aは、読み出しコマンドRDが出力された後、クロックサイクル毎に次のコマンドRDまたはWRが出力されるかを判定する。コマンドRDまたはWRが出力されないとき、カウンタ値COUNTを順次に増加する(図22(a))。コマンドRDまたはWRが出力されるとき、カウンタ値COUNTを”0”にリセットする(図22(b、c))。そして、カウンタ値COUNTが”5”になったとき、レイテンシRL、WLを減少する(図22(d))。
図23は、図19に示したPSRAMの動作の別の例を示している。PSRAMの動作は、レイテンシ拡張信号/LEXTの波形を除き、図13と同じである。すなわち、バースト長BLは”4”に設定されている。このため、レイテンシ判定部50Aは、カウンタ値COUNTが”8”になったときに、レイテンシRL、WLを減少する。
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。さらに、この実施形態では、メモリコントローラPSCNTは、チップイネーブル信号/CEをPSRAMに供給した次のクロックサイクルでのみレイテンシ拡張信号/LEXTのレベルをモニタすればよい。この後のレイテンシRL、WLを変える動作は、メモリコントローラPSCNT内で迅速に実施できる。
具体的には、メモリコントローラPSCNTのレイテンシ判定部50Aは、PSRAMに出力する読み出しコマンドRDまたは書き込みコマンドWRをモニタすることでレイテンシRL、WLを短縮できるか判断する。したがって、PSRAMからのレイテンシ拡張信号/LEXTに応じて動作する場合に比べて、迅速にレイテンシRL、WLを短縮できる。
例えば、図23の読み出しコマンドRD1、メモリコントローラPSCNTは、1番目のクロック信号CLKの立ち上がりエッジに同期して読み出しコマンドRD1の出力を決定し、1番目のクロック信号CLKの立ち下がりエッジに同期して読み出しコマンドRD1をPSRAMに出力する。このため、レイテンシ判定部50Aは、コマンドRD、WRが出力されるか否かを、図12および図16の実施形態に比べて1クロックサイクル早く判断できる。この結果、メモリコントローラPSCNTの動作マージンを大きくできる。換言すれば、クロック信号CLKの周波数が高いときにも、レイテンシRL、WLの切り換え動作を確実に実施できるため、PSRAMの誤動作を防止できる。
図24は、別の実施形態における半導体メモリの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この半導体メモリは、SDRAMタイプの入出力インタフェースを有するPSRAMである。PSRAMは、図1のクロックバッファ10、コマンドデコーダ16、バーストカウンタ26およびアドレス入力バッファ28の代わりに、クロックバッファ10C、コマンドデコーダ16C、バーストカウンタ26Cおよびアドレス入力バッファ28Cを有している。その他の構成は、図1と同じである。
クロック入力バッファ10Cは、チップイネーブル信号CE2が高レベルのときにクロック信号CLKを受け、内部クロック信号ICLKを出力し、チップイネーブル信号CE2が低レベルのときに内部クロック信号ICLKの出力を停止する。内部クロック信号ICLKの出力が停止されるとき、PSRAMは、内部回路の動作やリフレッシュ動作を停止し、通常動作モードからパワーダウンモード(低消費電力モード)に移行する。
コマンドコーダ16Cは、バーストカウンタ26Cにコラム読み書き信号CRWZのみを出力する。この実施形態では、読み出しコマンドRDまたは書き込みコマンドWRではなくアクティブコマンドACTが、チップイネーブル信号/CEとともにPSRAMに供給される。このため、ロウ読み書き信号RRWZは生成されない。バーストカウンタ26Cは、コラム読み書き信号CRWZを受けたときに、バースト長BLに対応する数のパルスを有するバーストクロック信号BCLKを内部クロック信号ICLKに同期して出力する。例えば、コマンドデコーダ16Cは、図2の読み書き検出部RWDETからロウ読み書き信号RRWZを出力する機能を削除して構成される。
アドレス入力バッファ28Cは、共通のアドレス端子ADに互いに異なるタイミングで供給されるロウアドレス信号RADとコラムアドレス信号CADを受ける。すなわち、この実施形態のPSRAMは、アドレスマルチプレクスタイプである。
図25は、図24に示したPSRAMの動作の例を示している。この例では、コマンドデコーダ16Cは、チップイネーブル信号/CEの立ち下がりエッジによりアクティブコマンドACTを検出する(図25(a))。このとき、ロウアドレス信号R1がアドレス端子ADに供給される(図25(b))。図7と同様にリフレッシュ動作REFが、チップイネーブル信号/CEの活性化直前に挿入されるため、レイテンシ拡張信号/LEXTが活性化される(図25(c))。PSRAMは、アクティブコマンドACTに応答して、ロウアドレス信号RADが示すワード線WL1を活性化し、センスアンプSAを活性化する。
次に、5番目のクロック信号CLKの立ち上がりエッジに同期して読み出しコマンドRD1およびコラムアドレス信号C1がPSRAMに供給される(図25(d))。アクティブコマンドACTに応答して読み出しデータまたは書き込みデータがデータ端子DQに転送されることがないため、読み出しコマンドRD1は、図7の読み出しコマンドRD2に比べて1クロックサイクル早く供給できる。読み出しコマンドRD1−RD4に伴う動作は、1クロックサイクル早いことを除き図7と同じである。
図26は、図24に示したPSRAMの動作の別の例を示している。この例では、図8の読み出しコマンドRD1の代わりにアクティブコマンドACTが供給される。リフレッシュ動作REFは挿入されない。図25と同様の理由により、読み出しコマンドRD1−RD4は、図8の読み出しコマンドRD2−RD5より1クロックサイクル早くPSRAMに供給され、読み出しデータは、1クロックサイクル早く出力される。その他の動作は、図8と同じである。
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。さらに、この実施形態では、SDRAMタイプの入出力インタフェースを有するPSRAMにおいても、PSRAMの誤動作を防止できる。
図27は、別の実施形態における半導体メモリの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この半導体メモリは、図24と同様に、SDRAMタイプの入出力インタフェースを有するPSRAMである。さらに、PSRAMは、アドレス信号とデータ信号を受けるアドレスデータ端子ADQを有している。
アドレス入力バッファ28Dは、アドレス端子ADおよびアドレスデータ端子ADQに供給されるアドレス信号をロウアドレス信号RADとして出力する。データ入力バッファ34Dは、データ端子DQおよびアドレスデータ端子ADQに供給される書き込みデータをデータバスDBに出力する。データ出力バッファ36Dは、メモリコアCOREからデータバスDBに供給される読み出しデータをデータ端子DQおよびアドレスデータ端子ADQに出力する。その他の構成は、図24と同じである。
図28は、図27に示したPSRAMの動作の例を示している。ロウアドレス信号RADがアドレスデータ端子ADQに供給され、読み出しデータRD1−RD4がデータ端子DQだけでなくアドレスデータ端子ADQに出力されることを除き、図25と同じである。
図29は、図27に示したPSRAMの動作の別の例を示している。ロウアドレス信号RADがアドレスデータ端子ADQに供給され、読み出しデータRD1−RD4がデータ端子DQだけでなくアドレスデータ端子ADQに出力されることを除き、図26と同じである。
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。さらに、この実施形態では、SDRAMタイプの入出力インタフェースを有し、アドレスデータ端子ADQを有するPSRAMにおいても、PSRAMの誤動作を防止できる。
図30は、別の実施形態における半導体メモリの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この半導体メモリはPSRAMである。PSRAMは、読み出しデータの出力タイミングを示すウエイト信号を出力するウエイト制御部38Eおよびウエイト端子/WAITを有している。また、PSRAMは、図1のバーストカウンタ26の代わりにバーストカウンタ26Eを有している。その他の構成は、図1と同じである。
バーストカウンタ26Eは、図1のバーストカウンタ26の機能に加えて、バーストイネーブル信号BSTENZを出力する機能を有している。ウエイト制御部38Eは、チップイネーブル信号CEZ、アウトプットイネーブル信号OEZ、ライトイネーブル信号WEZおよびバーストイネーブル信号BSTENZに応じて、ウエイト信号/WAITを高レベルまたは低レベルに設定し、あるいは高インピーダンス状態に設定する。
図31は、図30に示したPSRAMの動作の例を示している。バーストイネーブル信号BSTENZおよびウエイト信号/WAITの波形を除き、図7と同じである。ウエイト制御部38Eは、チップイネーブル信号/CEが非活性化されている間、ウエイト信号/WAITを高インピーダンス状態Hi−Zに設定する(図31(a、b))。ウエイト制御部38Eは、最初のコマンドが読み出しコマンドRD1のとき、ウエイト信号/WAITを低レベルに活性化する(図31(c))。バーストカウンタ26Eは、最初の読み出しコマンドRDに対応して出力するバーストクロック信号BCLKの1クロックサイクル前にバーストイネーブル信号BSTENZを活性化する(図31(d))。
ウエイト制御部38Eは、バーストイネーブル信号BSTENZの活性化に同期して、ウエイト信号/WAITを高レベルに非活性化する(図31(e))。すなわち、ウエイト信号/WAITは、最初の読み出しコマンドRDに応答して活性化され、最初の読み出し要求RDに対応する読み出しデータが出力される前に非活性化される。メモリコントローラPSCNTは、ウエイト信号/WAITの高レベルを10番目のクロック信号CLKの立ち上がりエッジに同期して検出し、次のクロック信号CLKに同期して最初の読み出しデータRD1がPSRAMから出力されることを検出する。バーストカウンタ26Eは、チップイネーブル信号/CEの非活性化に同期してバーストイネーブル信号BSTENZを非活性化する(図31(f))。
図32は、図30に示したPSRAMの動作の別の例を示している。バーストイネーブル信号BSTENZおよびウエイト信号/WAITの波形を除き、図9と同じである。
この例では、最初のコマンドが書き込みコマンドWRのため、ウエイト制御部38Eは、書き込みコマンドWR1に同期してウエイト信号/WAITを高レベルに非活性化する(図32(a))。バーストカウンタ26Eは、図31と同様に、最初の読み出しコマンドRDまたは書き込みコマンドWRに対応して出力するバーストクロック信号BCLKの1クロックサイクル前にバーストイネーブル信号BSTENZを活性化する(図32(b))。
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。さらに、この実施形態では、読み出しデータの出力タイミングを示すウエイト信号/WAITを出力する機能を有するPSRAMにおいても、PSRAMの誤動作を防止できる。
なお、図24および図27に示した実施形態では、擬似SRAMにSDRAMタイプの入出力インタフェースを採用する例について述べた。しかし、例えば、他の実施形態の擬似SRAMにSDRAMタイプの入出力インタフェースを採用してもよい。
図27に示した実施形態では、擬似SRAMにアドレスデータ端子ADQを設ける例について述べた。しかし、他の実施形態の擬似SRAMにアドレスデータ端子ADQを設けてもよい。
図30に示した実施形態では、擬似SRAMにウエイト端子/WAITを設ける例について述べた。しかし、他の実施形態の擬似SRAMにウエイト端子/WAITを設けてもよい。
図1から図32に示した実施形態に関して、さらに以下の付記を開示する。
(付記1)
複数のダイナミックメモリセルを有するメモリコアと、
前記メモリセルをリフレッシュするためのリフレッシュ要求を周期的に生成するリフレッシュ生成部と、
チップイネーブル信号の活性化とともに供給される最初のアクセス要求および前記チップイネーブル信号の活性化中に供給される後続のアクセス要求に応答してアクセス動作を実行するとともに、前記チップイネーブル信号の活性化が前記リフレッシュ要求と競合するときに、リフレッシュ動作後にアクセス動作を実行するコア制御部と、
前記チップイネーブル信号の活性化が前記リフレッシュ要求と競合するときに、レイテンシ拡張信号を活性化し、前記チップイネーブル信号の非活性化に応答して前記レイテンシ拡張信号を非活性化するレイテンシ判定部と、
前記レイテンシ拡張信号を外部に出力するレイテンシ出力バッファと、
前記レイテンシ拡張信号の活性化中における前記最初のアクセス要求または前記後続のアクセス要求から読み出しデータがデータ端子に転送されるまでの時間を示す読み出しレイテンシを、前記レイテンシ拡張信号の非活性化中の読み出しレイテンシに比べて増加するデータ制御部と
を備えていることを特徴とする半導体メモリ。
(付記2)
複数のダイナミックメモリセルを有するメモリコアと、
前記メモリセルをリフレッシュするためのリフレッシュ要求を周期的に生成するリフレッシュ生成部と、
チップイネーブル信号の活性化とともに供給される最初のアクセス要求および前記チップイネーブル信号の活性化中に供給される後続のアクセス要求に応答してアクセス動作を実行するとともに、前記チップイネーブル信号の活性化が前記リフレッシュ要求と競合するときに、リフレッシュ動作後にアクセス動作を実行するコア制御部と、
前記後続のアクセス要求が所定の期間供給されないときに、拡張リセット信号を出力するレイテンシ制御部と、
前記チップイネーブル信号の活性化が前記リフレッシュ要求と競合するときに、レイテンシ拡張信号を活性化し、前記拡張リセット信号に応答して前記レイテンシ拡張信号を非活性化するレイテンシ判定部と、
前記レイテンシ拡張信号を外部に出力するレイテンシ出力バッファと、
前記レイテンシ拡張信号の活性化中における前記最初のアクセス要求または前記後続のアクセス要求から読み出しデータがデータ端子に転送されるまでの時間を示す読み出しレイテンシを、前記レイテンシ拡張信号の非活性化中の読み出しレイテンシに比べて増加するデータ制御部と
を備えていることを特徴とする半導体メモリ。
(付記3)
請求項2記載の半導体メモリにおいて、
1つのアクセス要求に応答してデータが出力または入力される回数を示すバースト長を設定するモードレジスタを備え、
前記所定の期間は、所定数のクロックサイクルにバースト長が示すクロックサイクルを加えた期間であることを特徴とする半導体メモリ。
(付記4)
付記2記載の半導体メモリにおいて、
前記レイテンシ出力バッファは、前記レイテンシ拡張信号の活性化に同期するパルス信号を前記レイテンシ拡張信号として出力することを特徴とする半導体メモリ。
(付記5)
付記1ないし付記4のいずれか1項記載の半導体メモリにおいて、
前記データ制御部は、
前記アクセス要求に応答してカウント動作し、カウンタ値が期待値に達したときにバーストクロック信号を出力するとともに、前記レイテンシ拡張信号が活性化されたときに前記期待値が増加されるバーストカウンタと、
前記読み出しデータおよび前記書き込みデータの少なくともいずれかを、前記バーストクロック信号に同期して転送するデータレジスタと
を備えていることを特徴とする半導体メモリ。
(付記6)
付記1ないし付記4のいずれか1項記載の半導体メモリにおいて、
前記データ制御部は、前記レイテンシ拡張信号の活性化中における前記最初のアクセス要求または前記後続のアクセス要求から書き込みデータを前記データ端子で受けるまでの時間を示す書き込みレイテンシを、前記レイテンシ拡張信号の非活性化中の書き込みレイテンシに比べて増加することを特徴とする半導体メモリ。
(付記7)
付記1ないし付記4のいずれか1項記載の半導体メモリにおいて、
前記データ制御部は、前記レイテンシ拡張信号の活性化中における前記最初のアクセス要求に対応する読み出しレイテンシと前記後続のアクセス要求に対応する読み出しレイテンシとの差を、前記レイテンシ拡張信号の非活性化中における前記最初のアクセス要求に対応する読み出しレイテンシと前記後続のアクセス要求に対応する読み出しレイテンシとの差と等しく設定することを特徴とする半導体メモリ。
(付記8)
付記1ないし付記4のいずれか1項記載の半導体メモリにおいて、
前記データ制御部は、前記レイテンシ拡張信号の活性化中における前記最初のアクセス要求に対応する書き込みレイテンシと前記後続のアクセス要求に対応する書き込みレイテンシとの差を、前記レイテンシ拡張信号の非活性化中における前記最初のアクセス要求に対応する書き込みレイテンシと前記後続のアクセス要求に対応する書き込みレイテンシとの差と等しく設定することを特徴とする半導体メモリ。
(付記9)
付記1ないし付記8のいずれか1項記載の半導体メモリにおいて、
読み出しアクセス要求に応答して活性化され、前記読み出しアクセス要求に対応する読み出しデータが出力される前に非活性化されるウエイト信号を出力するウエイト制御部を備えていることを特徴とする半導体メモリ。
(付記10)
付記1または付記2記載の半導体メモリと、
前記半導体メモリのアクセスを制御するために前記アクセス要求を生成するメモリコントローラと
を備えたシステム。
(付記11)
付記10記載のシステムにおいて、
前記メモリコントローラは、
前記レイテンシ拡張信号の活性化中における前記アクセス要求の出力から読み出しデータを受けるまでの時間を示すシステム読み出しレイテンシを、前記レイテンシ拡張信号の非活性化中に比べて増加するレイテンシ制御部を備えていることを特徴とするシステム。
(付記12)
付記10または付記11記載のシステムにおいて、
前記半導体メモリの前記データ制御部は、前記レイテンシ拡張信号の活性化中における前記最初のアクセス要求または前記後続のアクセス要求から書き込みデータを前記データ端子で受けるまでの時間を示す書き込みレイテンシを、前記レイテンシ拡張信号の非活性化中の書き込みレイテンシに比べて増加し、
前記メモリコントローラの前記レイテンシ制御部は、前記レイテンシ拡張信号の活性化中における前記アクセス要求の出力から書き込みデータを出力するまでの時間を示すシステム書き込みレイテンシを、前記レイテンシ拡張信号の非活性化中に比べて増加することを特徴とするシステム。
(付記13)
付記4記載の半導体メモリと、
前記半導体メモリのアクセスを制御するために前記アクセス要求を生成するメモリコントローラと
を備えたシステム。
(付記14)
付記13記載のシステムにおいて、
前記メモリコントローラは、前記レイテンシ拡張信号を受けたときに、前記アクセス要求の出力から読み出しデータを受けるまでのシステム読み出しレイテンシを増加し、前記後続のアクセス要求を所定の期間出力しないときに前記システム読み出しレイテンシを元に戻すレイテンシ制御部を備えていることを特徴とするシステム。
以上、本発明について詳細に説明してきたが、上記の実施形態およびその変形例は発明の一例に過ぎず、本発明はこれに限定されるものではない。本発明を逸脱しない範囲で変形可能であることは明らかである。