(57)【特許請求の範囲】
【請求項１】
複数の揮発性半導体記憶素子によってそれぞれ構成された複数の第１メモリアレイと、
前記各第１メモリアレイとは独立して動作可能に設けられており、複数の不揮発性半導体記憶素子によって構成された少なくとも１つのブロックを有する第２のメモリアレイと、
外部接続装置から、前記各第１メモリアレイおよび前記第２メモリアレイに対してアクセスする場合の制御信号と、アクセスされるいずれかのメモリアレイのアドレスとがそれぞれ入力されるとともに、前記外部接続装置と前記各第１メモリアレイおよび前記第２メモリアレイとの間でのデータ転送を直接行なうために使用される複数の入出力端子と、
前記第１メモリアレイのいずれか１つと前記第２メモリアレイとの間でデータ転送を実行するデータ転送手段と、
前記外部接続装置から前記入出力端子を介して入力されるコマンドを認識して、前記データ転送手段を制御するコマンド認識手段とを具備し、
前記各第１メモリアレイと、前記第２メモリアレイとが、同一チップ上に設けられており、
前記外部接続装置との間でデータ転送を行なうために前記入出力端子に入力される制御信号およびアドレスによって、前記複数の第１メモリアレイおよび前記第２メモリアレイのうちの１つのメモリアレイの所定領域を選択して前記外部接続装置との間でデータ転送を行なう構成であり、
前記データ転送手段は、該データ転送手段によるデータ転送を実行するための所定のコマンドの入力が前記コマンド認識手段によって認識されるとともに、該データ転送手段によるデータ転送を実行するために前記入出力端子に制御信号およびアドレスが入力されると、該制御信号およびアドレスによって、データ転送を行う前記第２メモリアレイの所定領域の選択と、前記複数の第１メモリアレイのうちの１つの第１メモリアレイの所定領域の選択とを行なって、選択された前記各所定領域の間でデータ転送を実行することを特徴とする半導体記憶装置。
【請求項２】
請求項１に記載された半導体記憶装置において、前記第１メモリアレイのそれぞれが、前記揮発性半導体記憶素子に代えて、前記第２メモリアレイよりも高速での書き込み動作が可能な不揮発性半導体記憶素子によって構成されていることを特徴とする半導体記憶装置。
【請求項３】
前記第１メモリアレイのそれぞれは、該第１メモリアレイ以外の他の第１メモリアレイと前記第２メモリアレイとの間の前記データ転送手段によるデータ転送中に、前記外部接続装置による前記入出力端子を介してのアクセスが可能である請求項１または２に記載の半導体記憶装置。
【請求項４】
前記第１メモリアレイのそれぞれは、前記データ転送手段による前記第２メモリアレイとのデータ転送中は、前記外部接続装置による前記入出力端子を介してのアクセスが禁止される請求項１または２に記載の半導体記憶装置。
【請求項５】
前記第１メモリアレイのそれぞれは、前記データ転送手段による前記第２メモリとのデータ転送中に、前記外部接続装置による前記入出力端子を介してのアクセスがあると、前記データ転送手段による前記第２メモリアレイとのデータ転送を中断して該外部接続装置によるアクセスが優先される、請求項１または２に記載の半導体記憶装置。
【請求項６】
前記外部接続装置による前記第１メモリアレイのアクセスが終了すると、前記データ転送手段による前記第１メモリアレイと前記第２メモリアレイとの間のデータ転送を再開する請求項５に記載の半導体記憶装置。
【請求項７】
前記第２メモリアレイは、それぞれがデータの一括消去が可能な複数のブロックを備え、前記外部接続装置のコマンドに基づく前記ブロックの一括消去が前記データ転送手段によって実施されている間に、該ブロック以外の他のブロックまたは前記第１メモリアレイのいずれか１つへの前記外部接続装置によるアクセスが可能になっている請求項１または２に記載の半導体記憶装置。
【請求項８】
前記コマンド認識手段が、前記外部接続装置から前記第１メモリアレイのいずれか１つを使用して前記第２メモリアレイにデータ転送を行なうためのコマンドの入力を認識するとともに、前記入出力端子から、前記第２メモリアレイを選択するための制御信号と、前記第２メモリアレイのアドレスとが入力されると、前記外部接続装置から前記第１メモリアレイに転送されるデータが、該第１メモリアレイに書き込まれた後に、前記データ転送手段によって前記第２メモリアレイの前記アドレスに転送される、請求項１または２に記載の半導体記憶装置。
【請求項９】
前記データ転送手段は、前記第１メモリアレイのいずれか１つと前記第２メモリアレイとの間のデータ転送をアドレス単位で実行する、請求項１または２に記載の半導体記憶装置。
【請求項１０】
前記データ転送手段は、前記第１メモリアレイのいずれか１つと前記第２メモリアレイとの間のデータ転送を、複数のアドレスを有する任意の領域単位で実行する、請求項１または２に記載の半導体記憶装置。
【請求項１１】
前記データ転送手段は、前記第１メモリアレイのいずれか１つと前記第２メモリアレイとの間のデータ転送を、該第１メモリアレイにおける全てのデータ単位で実行する、請求項１または２に記載の半導体記憶装置。
【請求項１２】
前記データ転送手段は、前記第１メモリアレイのいずれか１つと前記第２メモリアレイとにおける転送先のアドレスのデータと転送元のアドレスのデータとを比較して、転送先のアドレスのデータと転送元のアドレスのデータとが一致する場合にデータを転送せず、データが異なる場合にデータを転送する請求項１または２に記載の半導体記憶装置。
【請求項１３】
前記第１メモリアレイの少なくとも１つのサイズが、前記第２メモリアレイにおいてデータが一括消去される前記ブロックのサイズに等しいか、または該ブロックのサイズの倍数あるいは整数分の１のサイズに構成されている請求項１または２に記載の半導体記憶装置。
【請求項１４】
前記第２メモリアレイにおける前記ブロックのデータが、前記データ転送手段によって、前記第１メモリアレイのいずれか１つに対して一括して転送される請求項１３に記載の半導体記憶装置。
【請求項１５】
前記第１メモリアレイのそれぞれに対する１つのメモリ空間と前記第２メモリアレイに対するメモリ空間とが独立しており、前記入出力端子から入力されるアドレスと、前記入出力端子の同一の端子から入力される制御信号との組み合わせに基づいて、前記第１メモリアレイのいずれか１つのアドレスと前記第２メモリアレイのアドレスのいずれにアクセスするかが決定される請求項１または２に記載の半導体記憶装置。
【請求項１６】
前記第１メモリアレイのそれぞれに対する１つのメモリ空間と前記第２メモリアレイに対するメモリ空間とが同一になっており、前記入出力端子から入力されるアドレスと、前記入出力端子の２つの異なる端子からそれぞれ入力される制御信号との組み合わせに基づいて、前記第１メモリアレイのアドレスと前記第２メモリアレイのアドレスのいずれにアクセスするかが決定される請求項１または２に記載の半導体記憶装置。
【請求項１７】
前記第１メモリアレイに対するメモリ空間のアドレスと前記第２メモリアレイに対するメモリ空間のアドレスのいずれにアクセスするかの決定が、前記異なる２つの端子の１つから入力される制御信号に基づく場合と、前記異なる２つの端子のそれぞれから入力される制御信号に基づく場合とに切り換え可能になっている請求項１６に記載の半導体記憶装置。
【請求項１８】
前記第１メモリアレイの少なくとも１つは、全てのデータを特定の値にリセットできる請求項１または２に記載の半導体記憶装置。
【請求項１９】
前記第１メモリアレイは、前記第２メモリアレイにおいてデータ消去完了後のセルに等しい値にリセットできる請求項１８に記載の半導体記憶装置。
【請求項２０】
前記第１メモリアレイのデータを前記第２メモリアレイに転送する際に、その第１メモリアレイが、データを転送された後にリセットできる請求項１８に記載の半導体記憶装置。
【請求項２１】
前記第１メモリアレイの少なくとも１つは、データの書き換え不可能な状態にすることができる請求項１または２に記載の半導体記憶装置。
【請求項２２】
前記データ転送手段は、電源投入時、または、消費電流を削減して初期状態とするパワーダウンから通常の使用状態への復帰時に、前記第２メモリアレイ内の任意の領域のデータを、前記第１メモリアレイのいずれか１つの任意の領域に転送する請求項１または２に記載の半導体記憶装置。
【請求項２３】
前記第１メモリアレイは、前記第２メモリアレイからデータが転送されると、データの書き換えを不可能な状態にすることができる請求項２２に記載の半導体記憶装置。
【請求項２４】
前記第１メモリアレイのいずれか１つまたは前記第２メモリアレイに対する前記外部接続装置のアクセスが、クロック信号に同期して行われる請求項１または２に記載の半導体記憶装置。
【請求項２５】
前記第１メモリアレイのいずれか１つと前記第２メモリアレイとの間でのデータの転送状況が前記外部接続装置に出力される請求項１または２に記載の半導体記憶装置。
【請求項２６】
前記入出力端子と、前記第１メモリアレイのそれぞれと前記第２メモリアレイとの間のデータ転送に使用される入出力データバスが、あらかじめ決められたバス幅を有しており、該入出力データバスを、前記第１メモリアレイのそれぞれと前記第２メモリアレイに対してそれぞれ個別にデータ転送する状態と、前記第１メモリアレイのそれぞれと前記第２メモリアレイの両方に対してデータ転送する場合とに切り換え可能になっている請求項１または２に記載の半導体記憶装置。
【請求項２７】
前記入出力データバスの前記切り換えが、前記外部接続装置から前記入出力端子のいずれかに入力される制御信号、または、前記外部接続装置から入力されるあらかじめ定められたコマンドによって切り換えられる請求項２６に記載の半導体記憶装置。
【請求項２８】
前記第１メモリアレイのそれぞれと前記第２メモリアレイとの間でのデータ転送に使用される転送用データバスのバス幅が、前記入出力端子と、前記第１メモリアレイおよび前記第２メモリアレイとの間のデータ転送に使用される入出力データバスのバス幅よりも大きくなっている請求項１または２に記載の半導体記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体記憶装置に関する。
【０００２】
【従来の技術】
不揮発性メモリは、電源を切っても、メモリセルに記憶されたデータが消えないという特徴を有しており、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｍｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性メモリのように、電源を切ると記憶されているデータが保持されないメモリとは異なっている。不揮発性メモリとしては、現在、携帯電話等において多用されているフラッシュメモリ（ＥＥＰＲＯＭ）、ＩＣカード等において使用されているＦＲＡＭ（強誘電体メモリ）、さらに開発が活発化してきているＭＲＡＭ（磁気メモリ）等がある。
【０００３】
図１は、不揮発性半導体記憶装置に使用されるフラッシュメモリセルの構成を示す模式図である。このフラッシュメモリセル１は、コントロールゲート２と、フローティングゲート３と、ソース４およびドレイン５とを有しており、フローティングゲート３に注入される電子量により、「１」および「０」のいずれかのデータが記憶される。このようなフラッシュメモリセル１が、ｍ×ｎ個のマトリックス状に配置されて構成された複数のブロックが、相互に接続されることによって、不揮発性半導体記憶装置としてのフラッシュメモリアレイが構成されている。
【０００４】
図２は、フラッシュメモリセルにおける一対のブロックの構成を示す。各ブロックは、所定方向に配列されたｎ個のフラッシュメモリセル１の各コントロールゲート２が、ｍ本のワード線ＷＬ１〜ＷＬｍにそれぞれ接続されており、ｍ個のフラッシュメモリセル１の各ドレイン５が、ｎ本のビット線ＢＬ１〜ＢＬ２に、それぞれ接続されている。ＢＬＫ１およびＢＬＫ２の各ブロックにおいて、全てのフラッシュメモリセル１は、共通の１本のソースＳに接続されている。
【０００５】
このように、フラッシュメモリアレイを構成するブロックは、各フラッシュメモリセルのソースＳが共通になっているという構造上の特徴を有しているために、フラッシュメモリセル１に記憶されたデータは、ブロック単位毎に一括して消去され、１つのフラッシュメモリセル１ごと、すなわち、１ビットごとにデータを消去することはできない。
【０００６】
次に、フラッシュメモリセル１によって構成されたフラッシュメモリアレイによるデータの読み出し、書き込み、消去、それぞれの機能動作について簡単に説明する。フラッシュメモリセル１に記憶されたデータを読み出す場合には、制御信号、アドレス信号等からなる読み出し信号が、フラッシュメモリアレイに接続された外部接続装置である中央演算処理装置（ＣＰＵ）等から与えられると、コントロールゲート２に、例えば５Ｖの高電圧が印加され、ドレイン５に、例えば１Ｖの低電圧、ソース４に、例えば０Ｖの低電圧が印加される。この時に、ソース４−ドレイン５間に流れる電流の大小をセンスアンプによって比較し、データの「１」及び「０」の判定を行う。そして、フラッシュメモリセル１から読み出されたデータを外部へ出力することにより、データの読み出し動作が完了する。
【０００７】
フラッシュメモリアレイによるデータの書き込み動作は次のように行われる。フラッシュメモリアレイに対して、外部接続装置であるＣＰＵ等から制御信号及びアドレス信号と、データとが与えられると、コントロールゲート２に例えば１２Ｖの高電圧、ドレイン５に例えば７Ｖの高電圧、ソース４に例えば０Ｖの低電圧が印加される。これにより、ドレイン５の接合部近傍にて発生したホットエレクトロンが、コントロールゲート２に印加された高電圧によって、フローティングゲート３に注入される。その後、書き込み状態をオフにして、ベリファイ動作を行う。データが書き込まれたフラッシュメモリセル１が、ベリファイ動作成功の場合には、書き込み完了となる。ベリファイ動作失敗の場合には、再び書き込みを行ってベリファイ動作を行う。このベリファイ動作が失敗の場合には、所定の回数にわたってデータの書き込みおよびベリファイ動作を実施し、ベリファイ動作成功でない場合には、ＣＰＵ等へ書き込みエラーのステータスを出力する。
【０００８】
最後に、フラッシュメモリアレイにおけるデータの消去動作について説明する。データの消去は、ブロック単位で行われる。制御信号、ブロックアドレス、および消去コマンドがフラッシュメモリに対してＣＰＵ等から与えられると、コントロールゲート２に例えば−１０Ｖの低電圧が印加され、ドレイン５がフローティングされ、さらに、ソース４には例えば６Ｖの高電圧が印加される。このような電圧印加状態とすることにより、フローティングゲート３−ソース４間に高電界が発生し、トンネル現象を利用してフローティングゲート２内の電子をソースに引き抜くことができ、データが消去される。
【０００９】
その後、データ消去状態をオフにして、データの書き込み時と同様にベリファイ動作を行う。データ消去信号が与えられたブロックのすべてのフラッシュメモリセル１がベリファイ動作成功の場合には、データの消去は完了する。ベリファイ失敗の場合には、再びデータの消去動作を行って、ベリファイ動作を行う。このデータ消去動作およびベリファイ動作を所定の回数にわたって実施し、ベリファイ動作失敗の場合は、ＣＰＵ等に対して、イレースエラーのステータスを出力する。
【００１０】
一般に、フラッシュメモリアレイは、データの読み出し動作と、ベリファイ動作を含めたデータの書き込み動作と、ベリファイ動作を含めたデータの消去動作のそれぞれの動作速度は、データの読み出し動作、ベリファイ動作を含めたデータの書き込み動作、ベリファイ動作を含めたデータの消去動作の順に遅くなっており、データの読み出し動作には約１００ｎｓ程度、ベリファイ動作を含めたデータの書き込み動作には約３０μｓ程度、ベリファイ動作を含めたデータの消去動作には約５００ｍｓの時間をそれぞれ必要とする。このように、フラッシュメモリアレイは、データの読み出しに対して、データの書き込みおよび消去は、けた違いに長時間を必要とする。
【００１１】
これに対して、ＤＲＡＭ、ＳＲＡＭ等に代表される揮発性半導体記憶装置は、電源を切ると、記憶しているデータが失われるという欠点を有しているが、データの書き込み動作に必要な時間は、データの読み出し時間とほぼ等しいという特徴があり、例えばＳＲＡＭでは、約１００ｎｓ程度の時間でデータの読み出し動作および書き込み動作がそれぞれ終了する。このように、ＳＲＡＭは、フラッシュメモリアレイのデータの書き込み時間および消去時間に比べて、格段に短い時間でデータの書き換えが可能である。
【００１２】
ＳＲＡＭの代表的なメモリセルを図３に示す。ＳＲＡＭメモリセル６は、一対のスイッチ用トランジスタ７と、一対のインバータ８とを組合せて構成されている。このようなＳＲＡＭメモリセル６の読み出し動作について説明する。ＳＲＡＭメモリセル６の読み出し動作は、アドレスによって選択されたワード線ＷＬにパルスを印加して、いずれかのスイッチ用トランジスタ７をオンさせる。この時に、ＢＩＴ端子およびＢＩＴ＃端子の電圧の大小をセンスアンプによって比較し、データの「１」及び「０」の判定を行う。そして、メモリセルからの読み出しデータを外部のＣＰＵ等へ出力することにより、データの読み出し動作が完了する。
【００１３】
ＳＲＡＭメモリセル６へデータを書き込む際には、データの読み出し動作と同様、アドレスによって選択されたワード線ＷＬにパルスを印加して、いずれかのスイッチ用トランジスタ７をオンさせる。このとき、ＢＩＴ端子およびＢＩＴ＃端子の一方に高電圧、他方に低電圧を印加することにより、ノードＮ１およびＮ２にそれぞれ電圧を与え、その組み合わせにより２進のデータ書き込みを行う。
【００１４】
外部接続装置である中央演算処理装置（ＣＰＵ）がデータを処理する場合、データの書き込み動作に時間がかかるフラッシュメモリは、データ書き込み時にＣＰＵの待機時間が長くなり、多数のデータを書き込む場合には、データの書き込みに必要な時間の間、ＣＰＵは、他の処理をすることができなくなる。
【００１５】
このために、一旦、データをページバッファと呼ばれる書き込み時間の短いＳＲＡＭ等の揮発性半導体記憶装置内に書き込み、一括してフラッシュメモリへ転送するような機能を有する半導体記憶装置を実現することにより、見け上、データの書き込み時間を短縮する方法が提案されている。このような半導体記憶装置では、ＣＰＵは、フラッシュメモリに対してデータの書き込み動作を実施する必要がなく、その結果、ＣＰＵは、他の処理を実施することができる時間的余裕が生じる。
【００１６】
特開平１１−８５６０９号公報には、ページバッファ技術において、データをフラッシュメモリへ転送する際のオーバーヘッドを減少させて、データ転送速度の低下を抑制できる半導体記憶装置が開示されており、また、特開平１０−２８３７６８号公報には、同様に、ページバッファ技術において、データのライトアクセスに対して高速化できる半導体記憶装置が開示されている。
【００１７】
【発明が解決しようとする課題】
このように、外部接続装置であるＣＰＵがデータを処理する場合、データの書き込み動作に時間を要するフラッシュメモリでは、データの書き込みに際してＣＰＵの待機時間が長くなり、多数のデータをフラッシュメモリに書き込む場合、書き込みに必要な長時間にわたって、ＣＰＵは他の処理を実施することができない。従来のページバッファを用いたデータの書き込み動作では、ページバッファにデータを一旦格納し、ページバッファからフラッシュメモリへ一括してデータを転送している。このような方法により、フラッシュメモリへのデータ書き込み時におけるＣＰＵの待機時間を不要とし、見掛け上、フラッシュメモリへのデータ書き込み時間の短縮を図っている。
【００１８】
しかし、ページバッファからフラッシュメモリアレイに対してデータの転送中には、次のデータをページバッファへ書き込むこと、および、ページバッファからデータを読み出すことはできない。従って、ページバッファは、一時的にデータを保存するためのワーク等として使用することができない。
【００１９】
このような問題を解決するために、外付けのＳＲＡＭを設けて、外付けＳＲＡＭによって、データを一時的に保存することが行われている。しかしながら、この場合には、高速での書き込みを行う必要があるデータ量が増大すると、データを一時的に保存するための外付けＳＲＡＭの必要容量が大きくなるという問題が発生している。
【００２０】
また、フラッシュメモリに対してデータ書き換え動作を行う場合、データ消去動作と書き込み動作とを同時に行うことができないために、データを書き込むブロックを消去した後に、データが消去されたブロックに対して、順次、データを書き込む必要があり、時間がかかるおそれがある。
【００２１】
さらに、前述したページバッファを有するデバイスであっても、フラッシュメモリに格納されているデータをページバッファに転送する機能を有していない。
【００２２】
本発明は、このような問題を解決するものであり、その目的は、ＣＰＵ等の外部接続装置において、データを書き込む際の待機時間を不要とし、しかも、外付けＳＲＡＭを必要とせず、チップ面積を小さくすることができる半導体記憶装置を提供することにある。
【００２３】
【課題を解決するための手段】
本発明の半導体記憶装置は、複数の揮発性半導体記憶素子によってそれぞれ構成されており、外部接続装置に対して入出力ピンによって、データの読み出しおよび書き込みが可能になった複数の第１メモリアレイと、各第１メモリアレイとは独立して動作可能に設けられており、不揮発性半導体記憶素子によって構成された少なくとも１つのブロックを有する第２のメモリアレイと、前記各第１メモリアレイと前記第２メモリアレイとの間にて相互にデータを転送するデータ転送手段と、を具備することを特徴とする。
【００２４】
前記各第１メモリアレイ、前記第２メモリアレイ、および前記データ転送手段は同一チップ上に設けられている。
【００２５】
また、本発明の半導体記憶装置は、前記第１メモリアレイが、揮発性半導体記憶素子に代えて高速動作可能な不揮発性半導体記憶素子によって構成されていることを特徴とする。
【００２６】
前記各第１メモリアレイは、それぞれ、前記第２メモリアレイとデータ転送中に、外部接続装置によって、データの読み出しおよび書き換えができる。
【００２７】
前記第２メモリアレイは、前記いずれかの第１メモリアレイとデータ転送中に、外部接続装置によって、データの読み出し、書き込み、消去ができる。
【００２８】
前記第１メモリアレイに対するアクセスが、前記第２メモリアレイに対するアクセスに用いるコマンドによって実施される。
【００２９】
前記データ転送手段は、前記各第１メモリアレイにおける任意のアドレスのデータを前記第２メモリアレイの任意のアドレスに転送するとともに、前記第２メモリアレイにおける任意のアドレスのデータを前記第１メモリアレイの任意のアドレスに転送する。
【００３０】
前記データ転送手段は、前記各第１メモリアレイにおける任意の領域のデータを前記第２メモリアレイの任意の領域に転送することができるとともに、前記第２メモリアレイの任意の領域のデータをいずれかの第１メモリアレイの任意の領域に転送することができる。
【００３１】
前記データ転送手段は、前記各第１メモリアレイにおける全てのデータを、前記第２メモリアレイの任意の領域にそれぞれ転送することができるとともに、前記各第１メモリアレイの全ての領域に書き込まれるデータ量に相当するデータを、各第１メモリアレイにそれぞれ転送することができる。
【００３２】
前記データ転送手段は、第１メモリアレイおよび第２メモリアレイにおける転送先のアドレスのデータと転送元のアドレスのデータとを比較して、転送先のアドレスのデータと転送元のアドレスのデータとが一致する場合にデータを転送せず、データが異なる場合にデータを転送する。
【００３３】
前記データ転送手段によって第２メモリアレイとの間でデータ転送されている第１メモリアレイ以外の第１のメモリアレイが、外部接続装置によってアクセス可能である。
【００３４】
前記データ転送手段によって第２メモリアレイとの間でデータ転送されている第１メモリアレイは、外部接続装置からのアクセスが禁止される。
【００３５】
前記データ転送手段によって第２メモリアレイとの間でデータ転送されている第１メモリアレイは、外部接続装置からのアクセスによって、第２メモリアレイとの間のデータ転送を一時中断して、外部接続装置によってアクセスされ、外部接続装置によるアクセスが終了した後に、第２メモリアレイとの間でのデータ転送が再開される。
【００３６】
外部接続装置により、前記第２メモリアレイのいずれかのブロックのデータが消去されている間、または、第２メモリアレイへの書き込みを実行している間は、前記第１メモリアレイは、外部接続装置からのアクセスが可能である。
【００３７】
少なくとも１つの第１メモリアレイのサイズが、第２メモリアレイにおいてデータが一括消去されるブロック単位に等しいサイズ、または倍数あるいは整数分の１のサイズに構成されている。
【００３８】
入力されたアドレスに対応するメモリ空間が、第１メモリアレイおよび第２メモリアレイにおいてそれぞれ独立しており、第１メモリアレイおよび第２メモリアレイに対するメモリ空間に対するアクセスが、同一の制御端子によって行われる。
【００３９】
入力されたアドレスに対応するメモリ空間が第１メモリアレイおよび第２メモリアレイにおいて同一の空間に存在しており、第１メモリアレイのメモリ空間に対するアクセスと第２メモリアレイのメモリ空間に対するアクセスとが異なる制御端子によって行われる。
【００４０】
第１メモリアレイのメモリ空間に対するアクセスと、第２メモリアレイのメモリ空間に対するアクセスとが、１本の制御端子による場合と、２本以上の制御端子による場合とに切り換えられる。
【００４１】
前記第２メモリアレイは、データの書き換え動作および読み出し動作をそれぞれ独立して実行可能な複数のバンクを有しており、各バンクと各第１メモリアレイとが、前記データ転送手段によって、相互にデータ転送可能である。
【００４２】
前記第２メモリアレイにおけるバンクと、いずれかの第１メモリアレイとの間で相互にデータ転送中に、外部接続装置によって、各第１メモリアレイからのデータの読み出し、各第１メモリアレイのへのデータの書き込み、および第２メモリアレイにおけるデータ転送に使用されていないバンクからのデータの読み出しができる。
【００４３】
前記第２メモリアレイにおけるいずれかのバンク内のデータを消去している間、または、外部接続装置により、第２メモリアレイのいずれかのバンクに対して書き込みを実行している間に、外部接続装置によって、各第１メモリアレイからのデータの読み出し、各第１メモリアレイへのデータの書き込みが可能であり、また第２メモリアレイにおけるデータの消去または書き込みを実行していないバンクからのデータの読み出しが可能である。
【００４４】
前記第１メモリアレイの少なくとも１つは、全てのデータを特定の値にリセットできる。
【００４５】
前記第１メモリアレイは、第２メモリアレイにおいてデータ消去完了後のセルに等しい値にリセットできる。
【００４６】
前記第１メモリアレイのデータを第２メモリアレイに転送する際に、その第１メモリアレイが、データを転送された後にリセットできる。
【００４７】
前記第１メモリアレイの少なくとも１つは、データの書き換えが不可能にできる。
【００４８】
前記データ転送手段は、電源投入時、または、消費電流を削減して初期状態とするパワーダウンから通常の使用状態への復帰時に、前記第２メモリアレイ内の任意の領域のデータを、いずれかの第１メモリアレイの任意の領域に転送する。
【００４９】
前記第１メモリアレイは、第２メモリアレイからデータが転送されると、データの書き換えが不可能にできる。
【００５０】
前記第１メモリアレイまたは第２メモリアレイに対する外部接続装置のアクセスが、クロック信号に同期して行われる。
【００５１】
前記いずれかの第１メモリアレイと第２メモリアレイとの間でのデータの転送状況が外部接続装置に出力される。
データの入出力に使用される、あらかじめ決められたバス幅をもつ入出力データバスを、第１メモリアレイまたは第２メモリアレイが各々個別に使用する場合、あるいは、第１メモリアレイおよび第２メモリアレイが使用する場合に切り換えられる。
【００５２】
前記第１メモリアレイまたは第２メモリアレイが使用できる入出力データバスの前記切り換えが、外部接続装置に接続された制御端子、または、あらかじめ定められたコマンドによって切り換えられる。
【００５３】
前記各第１メモリアレイと第２メモリアレイとの間でのデータ転送に使用されるデータバスのバス幅が、入出力データバスのバス幅よりも大きくなっている。
【００５４】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。図４は、本発明の半導体記憶装置の実施の形態の一例を示す概略構成図である。
【００５５】
図４に示す本発明の半導体記憶装置は、それぞれが独立して、データの読み出しおよび書き込み動作が可能な揮発性半導体記憶素子のＳＲＡＭアレイによって構成されたＳＲＡＭ０およびＳＲＡＭ１と、不揮発性半導体記憶素子からなるフラッシュメモリによって構成されたフラッシュメモリアレイ１１と、このフラッシュメモリアレイ１１と各ＳＲＡＭ０およびＳＲＡＭ１との間でデータを転送させるライトステートマシンＷＳＭと、外部接続装置である外部ＣＰＵ（中央演算処理装置）からのコマンドを認識するコマンド認識部１２とを有している。ＳＲＡＭ０およびＳＲＡＭ１とフラッシュメモリアレイ１１とは同一のチップ上に設けられている。
【００５６】
ライトステートマシンＷＳＭは、フラッシュメモリアレイ１１と各ＳＲＡＭ０およびＳＲＡＭ１との間でのデータ転送に際して、ＳＲＡＭ０およびＳＲＡＭ１からのデータの読み出し、ＳＲＡＭ１およびＳＲＡＭ０へのデータ書き込み、フラッシュメモリアレイ１１からのデータの読み出し、フラッシュメモリアレイ１１へのデータの書き込み、および、外部接続装置であるＣＰＵの動作命令を受けたデータの書き込み動作、消去動作等を制御する。コマンド認識部１２は、各ＳＲＡＭ０およびＳＲＡＭ１がデータ転送状況を示すフラグＦ１およびＦ２を出力するためのコマンド等、外部ＣＰＵからのコマンドを認識する。
【００５７】
外部ＣＰＵと半導体記憶装置との間のデータ伝送等は、Ｉ／Ｏ（入出力）ピンに接続された入出力用データバス１６によって行われ、また、各ＳＲＡＭ０およびＳＲＡＭ１とライトステートマシンＷＳＭとの間のデータ伝送、ライトステートマシンＷＳＭとフラッシュメモリアレイ１１との間のデータ伝送、コマンド入力の伝送等は、内部転送用データバス１７によって行われる。
【００５８】
ＳＲＡＭ０およびＳＲＡＭ１は、それぞれが独立して、データの読み出しおよび書き込み動作が可能であり、外部ＣＰＵによってアクセスする場合には、ＣＥ＃ピンから入力されるチップイネーブルＣＥ＃と、そのときに入力されるアドレスとの組合せ論理によって、また、データ転送の場合には内部制御回路によって、データの書き込みおよび読み出しが実施される。
【００５９】
本実施形態の半導体記憶装置では、独立して動作する一対のＳＲＡＭ０およびＳＲＡＭ１が設けられているが、３つ以上のＳＲＡＭアレイを設ける構成としてもよく、この場合には、各ＳＲＡＭアレイに対して、よりフレキシブルにデータを格納することができる。また、本実施形態では、不揮発性半導体記憶素子のメモリアレイ１１としてフラッシュメモリ（ＥＥＰＲＯＭ）を使用する構成について説明しているが、ＥＰＲＯＭなど他の不揮発性半導体記憶素子によって構成されたメモリアレイを使用してもよい。さらに、本実施形態では、揮発性半導体記憶素子からなるメモリアレイとしてＳＲＡＭアレイを使用しているが、ＤＲＡＭなど他の揮発性半導体記憶素子からなるメモリアレイを使用してもよい。
【００６０】
本実施の形態の半導体記憶装置では、図５に示すように、メモリマップにおいて、ＳＲＡＭ０およびＳＲＡＭ１とフラッシュメモリアレイ１１とが別のメモリ空間に存在しており、外部ＣＰＵからのＳＲＡＭ０およびＳＲＡＭ１とフラッシュメモリアレイ１１のアクセスは、共通の制御端子である１本のＣＥ＃ピンに入力されるチップイネーブルＣＥ＃と、アドレスピンから入力されるアドレスとの組み合わせ論理によって行われる。
【００６１】
例えば、外部ＣＰＵによってＳＲＡＭ０およびＳＲＡＭ１のデータを読み出す場合には、図５に示すように、ＳＲＡＭ０およびＳＲＡＭ１のアドレス「２０００００」〜「２０ＦＦＦＦ」をアドレスピンから入力して、ＣＥ＃ピンおよびＯＥ＃ピンを操作することにより、ＳＲＡＭ０およびＳＲＡＭ１のアドレスにアクセスする。
【００６２】
このように、入力されるアドレスにより、自動的にアクセス対象のメモリアレイを選択することができるために、１本のＣＥ＃ピンによって、外部ＣＰＵからＳＲＡＭ０およびＳＲＡＭ１と、フラッシュメモリアレイ１１とにそれぞれアクセスすることができる。
【００６３】
このような構成の半導体記憶装置の動作について、以下に説明する。まず、外部ＣＰＵから入力されるデータをＳＲＡＭアレイに保存する場合について、つまり、図６に示すように、ＳＲＡＭ０にデータを書き込む例を説明する。図７は、その場合のＳＲＡＭ０へのデータを書き込むコマンドの一例を示すタイミングチャートである。
【００６４】
図７に示すように、入出力ピンであるＩ／Ｏピンおよび入出力用データバス１６を通して入力される書き込みデータ「Ｗｒｉｔｅ  Ｄａｔａ」およびアドレス「ＳＲＡＭ０アドレス」が書き込み動作として外部ＣＰＵから発行されると、チップイネーブルＣＥ＃およびライトイネーブルＷＥ＃のローレベルによって、書き込みデータ「Ｗｒｉｔｅ  Ｄａｔａ」が、「ＳＲＡＭ０アドレス」として指定されたＳＲＡＭ０のアドレスに書き込まれる。いくつかのデータを連続して書き込む場合には、この書き込み動作を順次繰り返し実行することによって実現される。
【００６５】
Ｉ／Ｏピンに接続された入出力用データバス１６としては、通常、バス幅が１６ビットもしくは８ビットのものが使用されているために、この場合のデータの書き込み動作は、１００ｎｓ程度の書き込みサイクルタイムの間に、１６ビットもしくは８ビットのデータを、ＳＲＡＭ０に書き込むことができる。
【００６６】
このように、先頭のデータ書き込みの設定アドレスが、ＳＲＡＭアレイであるＳＲＡＭ０になっているため、ＳＲＡＭ０の設定アドレスに対するデータの書き込み動作であることを判別することができる。
【００６７】
また、図７に示すような書き込み方法に代えて、図８に示すように、フラッシュメモリアレイ１１へのデータの転送を前提としてＳＲＡＭアレイにデータを書き込むようにしてもよい。この場合には、まず、ＳＲＡＭアレイを使用したコマンドをフラッシュメモリアレイのアドレスとともに発行し、次のコマンドサイクルにおいて、転送するデータの数をフラッシュメモリアレイ１１のアドレスと共に発行する。その後、チップイネーブルＣＥ＃およびライトイネーブルＷＥ＃の書き込み動作によって、順次、フラッシュメモリアレイ１１に転送される際の転送先のアドレスとともに、書き込みデータをＳＲＡＭアレイに書き込む。
【００６８】
この場合、最初のコマンドにおいて、データの書き込みの設定アドレスが、フラッシュメモリアレイ１１のアドレスになっているため、コマンド認識部１２は、フラッシュメモリ１１のアドレスへデータを転送するコマンドであることを判別する。図８に示すデータの書き込み方法では、２番目のコマンドサイクルで宣言したデータ数分のフラッシュメモリアレイ１１のアドレスとデータの組が、３番目のコマンドサイクル以降、繰り返し入力されることにより、連続してＳＲＡＭ０にデータを書き込むことができる。
【００６９】
ＳＲＡＭアレイへのデータ書き込みは、１００ｎｓ程度であり、フラッシュメモリアレイへのデータ書き込みに比べて短時間で完了するため、半導体記憶装置に対してデータ書き込みの動作を実行している外部ＣＰＵは、ＳＲＡＭアレイへのデータ書き込みが終了した時点で、他の処理を実施することができる。
【００７０】
前述したように、フラッシュメモリアレイ１１に対して直接データを書き込む場合、フラッシュメモリアレイ１１へのデータの書き込みの実行命令を発行した後、次のフラッシュメモリアレイ１１へのデータの書き込みを開始するまで、外部ＣＰＵには、フラッシュメモリアレイ１１への書き込み時間が長いことによって待機時間が生じ、その待機時間によって、外部ＣＰＵのオペレーション動作が制限される。このように、フラッシュメモリアレイ１１へのデータの書き込み時間が長くなると、外部ＣＰＵは、フラッシュメモリアレイ１１へのデータの書き込み動作にのみ専念しなければならず、他の処理を実行できない。
【００７１】
しかしながら、本実施形態の半導体記憶装置では、短時間でデータが書きこまれるＳＲＡＭアレイに対してデータを書き込んだ後に、フラッシュメモリアレイ１１にデータを転送するために、ＳＲＡＭアレイに対して短時間でデータを書き込むことができる。その結果、外部ＣＰＵは、ＳＲＡＭアレイに対するデータの書き込みが終了した時点で、他の処理を実行することができる。
【００７２】
次に、ＳＲＡＭアレイに保存されているデータを外部ＣＰＵによって読み出す場合に関して、図９に示すように、ＳＲＡＭ０からのデータの読み出し例について説明する。図１０は、その場合のコマンドの一例を示すタイミングチャートである。
【００７３】
読み出されるデータは、入出力データ用バス１６および入出力ピンであるＩ／Ｏピンを通して、外部ＣＰＵに出力される。ＳＲＡＭ０に保存されているデータを読み出す場合には、データを読み出すＳＲＡＭ０のアドレスを設定し、チップイネーブルＣＥ＃および出力イネーブルＯＥ＃が、それぞれローレベル「Ｌ」になることによって、その設定されたアドレスのデータ「Ｒｅａｄ  Ｄａｔａ」が読み出される。いくつかのデータをＳＲＡＭ０から連続して読み出す場合には、この読み出し動作を、順次、繰り返し実行することによって実現される。
【００７４】
次に、ＳＲＡＭアレイからフラッシュメモリアレイ１１へデータを転送する場合を、図１１に示すＳＲＡＭ０からフラッシュメモリアレイ１１へのデータ転送例について説明する。図１２は、その場合のＳＲＡＭ０内の任意のデータを、フラッシュメモリアレイ１１へ転送するコマンド入力の一例を示すタイミングチャートである。
【００７５】
前述したような方法によって、ＳＲＡＭ０へのデータ書き込みが完了した後に、ユーザーが、図１２に示すようなデータ転送コマンドを発行すると、半導体記憶装置内に設けられたライトステートマシンＷＳＭにより、コマンドにて指定されたＳＲＡＭ０の任意のアドレスからフラッシュメモリアレイ１１の任意のアドレスに対してデータの転送が開始される。
【００７６】
図１２に示すコマンドシーケンスにおいて、転送ＳＦコマンドは、ＳＲＭアレイからフラッシュメモリアレイへデータ転送するにあたり、その準備をライトステートマシンＷＳＭに行わせるコマンドであり、転送確認コマンドは、コマンド入力シーケンスにおいて、入力されたデータが正しく、転送を開始してもよいかどうかを確認するコマンドである。さらに、フラッシュ転送先スタートアドレスは、データ転送が行われるフラッシュメモリアレイ１１の最初のアドレス、ＳＲＡＭ０転送元スタートアドレスおよびＳＲＡＭ０転送元エンドアドレスは、それぞれ、転送元となるＳＲＡＭアレイの転送開始アドレスおよび転送終了アドレスを表す。
【００７７】
図１２に示すコマンドシーケンスを発行した後、まず、ライトステートマシンＷＳＭは、転送元のＳＲＡＭ０に転送の実行を表すためのフラグＦ０を立てる。これにより、ＳＲＡＭ０からフラッシュメモリアレイ１１にデータの転送処理中であることを判別することが可能になる。
【００７８】
その後、ライトステートマシンＷＳＭは、コマンドにより入力されたＳＲＡＭ０の転送を開始する転送元スタートアドレスを設定し、このアドレスに書き込まれているデータを読み出す。次に、読み出されたデータを、転送先となるフラッシュメモリアレイ１１の転送先スタートアドレスに、通常の書き込み動作と同様の方法によって書き込む。このようなライトステートマシンＷＳＭによる動作を、転送すべきデータ数に対して、順次繰り返すことにより、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータ転送が実現される。
【００７９】
このデータ転送動作は、本発明の半導体記憶装置内に設けられたライトステートマシンＷＳＭによって自動的に実行され、ＳＲＡＭ０のデータが、フラッシュメモリアレイ１１の任意のアドレスに連続して書き込まれる。このように、半導体記憶装置内のライトステートマシンＷＳＭによって、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータ転送動作を行うことにより、外部ＣＰＵには、フラッシュメモリアレイ１１に対するデータの書き込み処理を実行する必要がなく、ＳＲＡＭ０からフラッシュメモリアレイ１１にデータを転送している間に、他のオペレーションを実行することができる。
【００８０】
なお、図１３に、ＳＲＡＭ０内の全データを、フラッシュメモリアレイ１１へ一括して転送するコマンド入力の一例を示す。この場合は、まず、転送ＳＦコマンドと共にフラッシュ転送先スタートアドレスが設定され、次のコマンドサイクルでは、転送確認コマンドとともにＳＲＡＭ０転送元アドレスが設定される。
【００８１】
このようなコマンドシーケンスが発行された後に、まず、ライトステートマシンＷＳＭは、転送元のＳＲＡＭ０に転送の実行を表すためのフラグＦ０を立てる。その後、ライトステートマシンＷＳＭは、コマンドにより入力されたＳＲＡＭ０のデータ転送を開始するスタートアドレスを設定し、このアドレスに書かれているデータを読み出す。次に、読み出されたデータを、転送先となるフラッシュメモリアレイ１１の転送先スタートアドレスに、通常の書き込み動作と同様の方法によって書き込む。このライトステートマシンＷＳＭによる動作を、転送すべきデータ数に対して順次繰り返すことにより、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータ転送が実現される。
【００８２】
なお、図１２および１３に示すタイミングチャートでは、コマンドサイクルを、それぞれ３サイクルおよび２サイクルとしたが、コマンドサイクルの長さは、任意に設定することができる。
【００８３】
逆に、フラッシュメモリアレイ１１からＳＲＡＭアレイへデータ転送する場合を、図１４に示すフラッシュメモリアレイ１１からＳＲＡＭ０へのデータ転送例について説明する。図１５は、フラッシュメモリアレイ１１内の任意のデータをＳＲＡＭ０へ転送する場合のコマンド入力の一例を示すタイミングチャートを示している。
【００８４】
図１５に示す転送ＦＳコマンドは、フラッシュメモリアレイ１１からＳＲＡＭアレイへデータ転送するにあたり、その準備をライトステートマシンＷＳＭに行わせるコマンドであり、転送確認コマンドは、ここまでのコマンド入力シーケンスにおいて、入力されたデータが正しく、転送を開始してもよいかどうかを確認するコマンドである。さらに、ＳＲＡＭ０転送先スタートアドレスは、データ転送が行われるＳＲＡＭ０の最初のアドレス、フラッシュ転送元スタートアドレスおよびフラッシュ転送元エンドアドレスは、それぞれ、転送元となるフラッシュメモリアレイ１１の転送開始アドレスおよび転送終了アドレスを表す。
【００８５】
ライトステートマシンＷＳＭは、フラッシュメモリアレイ１１の転送開始アドレスから、順次、転送終了アドレスまで、そのアドレス内に属しているデータを、ＳＲＡＭ転送先スタートアドレスを先頭に、順次転送する。
【００８６】
図１５に示すデータ転送コマンドが発行された後に、本発明の半導体記憶装置内に存在するライトステートマシンＷＳＭにより、フラッシュメモリアレイ１１の任意のアドレスからＳＲＡＭ０の任意のアドレスに対してデータの転送が開始される。
【００８７】
まず、ライトステートマシンＷＳＭは、転送先のＳＲＡＭ０にデータ転送の実行を表すフラグＦ０を立てる。これにより、ＳＲＡＭ０に対してデータが転送中であることを判断することができる。
【００８８】
その後、ライトステートマシンＷＳＭは、コマンドにより入力されたフラッシュメモリアレイ１１の転送を開始する転送元スタートアドレスを設定し、このアドレスに書かれているデータを読み出す。次に、読み出されたデータを転送先となるＳＲＡＭ０に、通常の書き込み動作と同様の手段によって書き込みを実行する。これら一連の動作を転送すべきデータ分に対して順次繰り返すことにより、フラッシュメモリアレイ１１からＳＲＡＭ０へのデータ転送が実現される。
【００８９】
図１６に、フラッシュメモリアレイ１１からＳＲＡＭ０へデータを一括して転送するコマンド入力の一例を示す。図１６に示すようなデータ転送コマンドを発行した後に、まず、ライトステートマシンＷＳＭは、転送先のＳＲＡＭ０にデータ転送の実行を表すためのフラグＦ０を立てる。その後、ライトステートマシンＷＳＭは、コマンドにより入力されたフラッシュメモリアレイ１１の転送を開始するスタートアドレスを設定し、このアドレスに書かれているデータを読み出す。次に、読み出されたデータを、転送先となるＳＲＡＭ０の転送先スタートアドレスに、通常の書き込み動作と同様の方法によって書き込む。この、ライトステートマシンＷＳＭの動作を、転送すべきデータ数に対して順次繰り返すことにより、フラッシュメモリアレイ１１からＳＲＡＭ０へのデータ転送が実現される。
【００９０】
なお、図１５および図１６に示すタイムチャートでは、コマンドサイクルをそれぞれ３サイクルおよび２サイクルとしたが、コマンドサイクルは任意に設定することができる。
【００９１】
次に、ＳＲＡＭアレイからフラッシュメモリアレイ１１へのデータ転送動作中に実行可能な動作について説明する。
【００９２】
図１７は、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータ転送時において、外部からＳＲＡＭ１へのデータ書き込む場合のデータの流れを示している。また、図１８に、この動作を行うためのタイミングチャートを示す。
【００９３】
まず、図７に示すタイミングチャートと同様にして、ＳＲＡＭ０のアドレスに対して、データが順次書き込まれると、図１３に示すタイミングチャートと同様にして、転送ＳＦコマンドと共に、転送先であるフラッシュメモリアレイ１１の最初のデータのアドレスであるフラッシュ転送先スタートアドレスを設定する。そして、次のコマンドサイクルにおいて、転送確認コマンドと共に、転送元のＳＲＡＭ０における転送されるデータの最初のアドレスである転送元スタートアドレスを設定する。このコマンドシーケンスにより、ライトステートマシンＷＳＭによりＳＲＡＭ０からフラッシュメモリアレイ１１に順次データが転送される。
【００９４】
このときに、外部ＣＰＵは、図７に示すタイミングチャートと同様にして、ＳＲＡＭ１のアドレスに対して、データを順次書き込む。この間も、半導体記憶装置内に設けられたライトステートマシンＷＳＭにより、ＳＲＡＭ０からフラッシュメモリアレイ１１に対してデータ転送は、順次、実行されている。
【００９５】
なお、図１２に示すように、ＳＲＡＭ０からフラッシュメモリアレイ１１に対して、任意の容量のデータを転送する場合も、同様に、そのデータ転送の間に、外部ＣＰＵからＳＲＡＭ１に対してアクセス可能である。
【００９６】
本発明の半導体記憶装置では、完全に独立して動作可能なＳＲＡＭ０およびＳＲＡＭ１を有しているため、このように、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータ転送動作中であっても、外部ＣＰＵは、他のＳＲＡＭ１に対してアクセスすることができ、そのＳＲＡＭ１へのデータの書き込み、および、ＳＲＡＭ１からのデータの読み出しが可能である。
【００９７】
本発明の半導体記憶装置では、ライトステートマシンＷＳＭによってデータを転送する際に、転送先のデータと転送元のデータとを比較して、同一のデータの場合には、データの転送を実施しないようにすることもできる。この場合のデータの流れを図１９に示す。
【００９８】
例えば、フラッシュメモリアレイ１１のデータをＳＲＡＭ０へ転送する場合について説明する。ライトステートマシンＷＳＭは、データ転送コマンドが発送されると、転送元であるフラッシュメモリアレイ１１からデータを読み出すとともに、転送先であるＳＲＡＭ０のデータも読み出す。そして、両データを比較し、両データが同一の場合には、フラッシュメモリアレイ１１から読み出されたデータをＳＲＡＭ０には転送しない。これに対して、両データが異なる場合には、フラッシュメモリアレイ１１から読み出されたデータを、ＳＲＡＭ０に転送して、ＳＲＡＭ０に書き込む。このような動作を、転送されるデータ毎に実施する。
【００９９】
このように、データ転送先のデータが転送元のデータと一致する場合には、データ転送が実施されないために、データ転送に要する時間を短縮することができる。
【０１００】
また、ＳＲＡＭ０アレイからフラッシュメモリアレイ１１へデータを転送中、あるいは、フラッシュメモリアレイ１１からＳＲＡＭ０にデータを転送中に、転送に使用されるＳＲＡＭアレイのデータ転送状況を、ステータスレジスタ、ポーリング等によって、外部ＣＰＵに対して出力することもできる。例えば、図１９に示すように、ＳＲＡＭ０からフラッシュメモリアレイ１１にデータを転送している場合に、ＳＲＡＭ０のデータが転送されていることを示すフラグＦ０が読み出されて外部ＣＰＵに出力される。
【０１０１】
フラグＦ０の読み出しは、例えば、予め設定されたコマンドを発行して、ステータスレジスタ読み出しモードとすることにより、ＳＲＡＭ０およびＳＲＡＭ１におけるデータ転送を示すフラグ情報が、入出力ピンに接続される。そして、ＣＥ＃ピン、ＯＥ＃ピン等を操作することによって、フラグ情報が外部ＣＰＵに読み出される。ＳＲＡＭ０およびＳＲＡＭ１のいずれを出力対象とするかは、アドレスピンによるアドレスによって設定される。
【０１０２】
また、ＳＲＡＭアレイからフラッシュメモリアレイ１１にデータが転送している間に、そのＳＲＡＭアレイに対して外部ＣＰＵによって、データの書き込みあるいは読出しのためのアクセスがあった場合には、そのアクセスを禁止するようにしてもよい。図２０は、ライトステートマシンＷＳＭによって、ＳＲＡＭ０のデータをフラッシュメモリアレイ１１に転送している間に、外部ＣＰＵからＳＲＡＭ０に対してデータの読み出しまたは書き込みを行うアクセス信号が入力されたとき、このアクセス信号をディスイネーブルにして、そのアクセスを禁止する場合のデータの流れを示している。
【０１０３】
この場合、ライトステートマシンＷＳＭは、ＳＲＡＭ０のデータをフラッシュメモリアレイ１１に転送していることを示すフラグＦ０をセットしており、外部ＣＰＵからＳＲＡＭ０に対してデータの読み出しまたは書き込みを行うアクセス信号が入力されると、フラグＦ０のセット信号と外部ＣＰＵからのアクセス信号との組合せ論理によって、外部ＣＰＵからＳＲＡＭ０へのアクセスをハード的に禁止する。これにより、ライトステートマシンＷＳＭは、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータの転送を、中断することなく実施する。
【０１０４】
なお、この場合、外部ＣＰＵからＳＲＡＭ０へのアクセスをハード的に禁止する構成に代えて、コマンドまたは外部制御端子によって、外部ＣＰＵからＳＲＡＭ０へのアクセスを禁止するようにしてもよい。
【０１０５】
また、これとは反対に、ＳＲＡＭアレイからフラッシュメモリアレイ１１にデータを転送している間に、そのＳＲＡＭアレイに対して外部ＣＰＵによって、データの書き込みあるいは読出しのためのアクセスがあった場合には、そのアクセスを優先させるようにしてもよい。図２１は、ライトステートマシンＷＳＭによって、ＳＲＡＭ０のデータをフラッシュメモリアレイ１１に転送している間に、外部ＣＰＵからＳＲＡＭ０に対してデータの読み出しまたは書き込みを行うアクセス信号が入力された場合に、外部ＣＰＵのアクセスを優先させる際のデータの流れを示している。
【０１０６】
この場合、ライトステートマシンＷＳＭは、ＳＲＡＭ０のデータをフラッシュメモリアレイ１１に転送していることを示すフラグＦ０をセットしており、外部ＣＰＵからＳＲＡＭ０に対してデータの読み出しまたは書き込みを行うアクセス信号が入力されると、フラグＦ０のセット信号と外部ＣＰＵからのアクセス信号との組合せ論理によって、ライトステートマシンＷＳＭに対して、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータの転送を中断させる割りこみ信号が与えられる。これにより、ライトステートマシンＷＳＭは、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータの転送を一時中断し、外部ＣＰＵからＳＲＡＭ０へのアクセスを許可する。
【０１０７】
その後、外部ＣＰＵがＳＲＡＭ０へアクセスして、ＳＲＡＭ０に対するデータの書き込みあるいは読み出しを実行し、外部ＣＰＵによるアクセスが終了すると、前記割りこみ信号は、ディスイネーブルになる。これにより、ライトステートマシンＷＳＭは、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータの転送を再開する。
【０１０８】
ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータの書き込みは、前述したように、ライトステートマシンＷＳＭにより自動的に実行される。従って、一方のＳＲＡＭアレイからフラッシュメモリアレイへデータ転送中であっても、外部ＣＰＵは、他方のＳＲＡＭアレイ（上述の場合にはＳＲＡＭ１）にデータを書き込むことができるために、外部ＣＰＵの動作を制限することがなく、外部ＣＰＵの処理能力が向上する。
【０１０９】
なお、この場合、ＳＲＡＭ０からフラッシュメモリアレイ１１へのデータの転送の一時的な中断を、ハード的に禁止する構成に代えて、コマンドまたは外部制御端子によって、データの転送を一時中断するようにしてもよい。
【０１１０】
本発明の半導体記憶装置では、さらに、フラッシュメモリアレイ１１における１つのブロックのデータを一括して消去するブロックイレース動作中に、Ｉ／Ｏピンを用いて、外部ＣＰＵからＳＲＡＭアレイへのデータの書き込み、および、ＳＲＡＭアレイに書き込まれたデータの読み出しをするようにしてもよい。図２２は、フラッシュメモリアレイ１１におけるブロックイレース動作中に、Ｉ／Ｏピンを用いて、外部ＣＰＵからＳＲＡＭ１に対するデータの書き込み動作またはＳＲＡＭ１のデータを読み出し動作を実行する場合のデータの流れを示している。また、図２３は、この場合のコマンドの一例を示すタイミングチャートである。
【０１１１】
この場合、フラッシュメモリアレイ１１のブロックのイレースコマンドが発行されると、イレースの対象となるフラッシュメモリアレイ１１のブロックのアドレスが、ライトステートマシンＷＳＭに記憶され、ライトステートマシンＷＳＭによって、フラッシュメモリアレイ１１のブロックイレースが開始される。
【０１１２】
そして、このように、ライトステートマシンＷＳＭによってフラッシュメモリアレイ１１のブロックのデータが消去される間に、前述したように、アドレスピン、Ｉ／Ｏピンを用いて、ＳＲＡＭ１に対して、外部ＣＰＵによるデータの読み出しおよび書き込み動作が実行される。従って、ライトステートマシンＷＳＭによるブロックの消去とＳＲＡＭアレイに対するアクセス動作とを同時に実行することができる。
【０１１３】
なお、本発明の半導体記憶装置において、ＳＲＡＭ０、ＳＲＡＭ１のいずれかの容量サイズが、フラッシュメモリアレイ１１における一括消去が可能な１つのブロックと同サイズ、あるいは、ＳＲＡＭ０およびＳＲＡＭ１のそれぞれがフラッシュメモリアレイの倍数サイズ、または、整数分の１のサイズとしてもよい。この場合には、フラッシュメモリアレイ１１における１つのブロックに書き込まれたデータの一部を書き換えることが容易になる。
【０１１４】
ＳＲＡＭ０の容量サイズが、フラッシュメモリアレイ１１における１つのブロックのサイズと同サイズの場合についてのデータの流れを図２４に示す。フラッシュメモリアレイ１１における１つのブロックに書き込まれたデータの一部を書き換える場合には、まず、そのブロックのデータの全てを、ライトステートマシンＷＳＭによって、一旦、ＳＲＡＭ０に転送し、データの一時保存を行う。その後、フラッシュメモリアレイ１１におけるデータの書き換えを行うブロックのデータを消去する。このデータ消去中に、ＳＲＡＭ０に一時保存したデータに対して、データの書き換えを行う。フラッシュメモリアレイ１１のデータ消去が終了すると、その後に、ＳＲＡＭ０に一時保存されたデータの全てを、ライトステートマシンＷＳＭによって、データ消去されたフラッシュメモリアレイ１１のブロックに転送する。
【０１１５】
このように、ＳＲＡＭ０の容量サイズが、フラッシュメモリアレイ１１における１つのブロックのサイズと同サイズであれば、データをフラッシュメモリ１１からＳＲＡＭ０に転送する場合の転送先アドレスの設定、および、データをＳＲＡＭ０からフラッシュメモリ１１に転送する場合の転送先アドレスの設定が容易にできる。
【０１１６】
また、ＳＲＡＭ０およびＳＲＡＭ１のそれぞれの容量サイズが、フラッシュメモリアレイにおけるブロックの容量サイズの半分のサイズになっている場合には、各ＳＲＡＭ０およびＳＲＡＭ１に、フラッシュメモリアレイ１１のブロックのデータの半分ずつが、それぞれ一括して転送され、転送後、フラッシュメモリアレイ１１におけるデータを書き換えるブロックを消去する。このデータ消去中に、ＳＲＡＭ０およびＳＲＡＭ１のデータを書き換え、フラッシュメモリアレイ１１におけるデータの消去が終了した後に、ＳＲＡＭ０およびＳＲＡＭ１のデータが、ライトステートマシンＷＳＭによって、それぞれ、一括して、フラッシュメモリアレイ１１における１つのブロックに転送される。
【０１１７】
この場合も、データをフラッシュメモリ１１からＳＲＡＭ０に転送する場合の転送先アドレスの設定、および、データをＳＲＡＭ０からフラッシュメモリ１１に転送する場合の転送先アドレスの設定が容易にできる。
【０１１８】
本発明の半導体記憶装置としては、図２５（ａ）に示すように、ＳＲＡＭアレイであるＳＲＡＭ０およびＳＲＡＭ１とフラッシュメモリアレイとが同一のメモリ空間に存在して、ＳＲＡＭ０およびＳＲＡＭ１の制御とフラッシュメモリアレイの制御とを、別々の制御信号によって制御するようにしてもよい。この場合には、図２５（ｂ）に示すように、半導体記憶装置には、フラッシュメモリアレイを制御するＣＥ０＃ピンと、ＳＲＡＭ０およびＳＲＡＭ１を制御するＣＥ１＃ピンとがそれぞれ設けられ、外部ＣＰＵからＳＲＡＭ０およびＳＲＡＭ１とフラッシュメモリアレイとのアクセスを、ＣＥ０＃ピンおよびＣＥ１＃ピンを切り換えることによって行われる。
【０１１９】
例えば、ＳＲＡＭ０およびＳＲＡＭ１と、フラッシュメモリアレイとにおいて、同一のアドレス「００００００」が設定されても、例えば、ＯＥ＃ピンの操作とともに、ＣＥ０＃ピンからのチップイネーブルにより、フラッシュメモリアレイ１１のアドレス「００００００」からデータが読み出される。
【０１２０】
このように、ＳＲＡＭアレイとフラッシュメモリアレイ１１とが、ＣＥ０＃ピンおよびＣＥ１＃ピンによって、それぞれ独立して動作可能であるために、ＳＲＡＭに導入されているデータ保持モード等の機能を使用することが可能である。また、携帯電話等において使用されているＳＲＡＭとフラッシュメモリのスタックドパッケージ品とは、端子操作が互換性を有しているために、容易に置き換えることができる。
【０１２１】
図２６は、１本のＣＥ０＃ピンのみを使用する場合と、ＣＥ０＃ピンおよびＣＥ１＃ピンの２本を使用する場合とに切り換えるチップイネーブル切り換えスイッチ２１が設けられた半導体記憶装置を示している。この場合には、１本のＣＥ０＃ピンからのイネーブルとアドレスとによって、ＳＲＡＭ０およびＳＲＡＭ１とフラッシュメモリアレイ１１とにそれぞれアクセスする状態と、ＣＥ０＃ピンからのイネーブルとアドレスとによりフラッシュメモリへアクセスし、かつ、ＣＥ１＃ピンからのイネーブルとアドレスとによりＳＲＡＭ０およびＳＲＡＭ１へのアクセスする状態とにそれぞれ切り換えられる。このような切り換え動作によって、外部ＣＰＵを含むシステムに対するマッチングが容易になる。
【０１２２】
なお、チップイネーブル切り換えスイッチ２１は、予め設けられた制御端子によって切り換える構成に限らず、あらかじめ設定されたコマンドによって切り換えられるようにしてもよい。
【０１２３】
図２７は、本発明の半導体記憶装置の他の例を示す構成図である。この半導体記憶装置では、フラッシュメモリアレイ１１が、データの書き込み、データの消去および読み出しを独立して実行可能な２つのバンクＢａｎｋ０およびＢａｎｋ１を有している。なお、フラッシュメモリアレイ１１のバンクは、２つ以上設けるようにしてもよい。
【０１２４】
このように、複数のバンクを有するフラッシュメモリ１１は、特開平１０−１４４０８６号公報に開示されているように、一方のバンクに対するデータの書き込み動作または消去動作と並行して、他方のバンクのデータの読み出し動作が実行可能であるため、前述したように、ＳＲＡＭアレイとフラッシュメモリ１１との間でのデータ転送動作中に可能な動作に加えて、データ転送元、データ転送先になっていないバンクから外部へデータを読み出すことが可能である。図２８は、ＳＲＡＭ１からフラッシュメモリアレイ１１の一方のバンクＢａｎｋ０に対してデータ転送を実行中に、他方のバンクＢａｎｋ１のデータを外部に読み出す場合のデータの流れを示している。
【０１２５】
また、このように、複数のバンクを有するフラッシュメモリ１１では、一方のバンクにおけるブロックイレース動作中に、Ｉ／Ｏピンを用いて、外部からＳＲＡＭアレイへのアクセスとともに、他方のバンクにおけるデータを外部に読み出すこともできる。図２９は、この場合のデータの流れを示している。
【０１２６】
この場合、フラッシュメモリアレイ１１にブロックイレースコマンドが発行されると、ブロックイレースの対象となるフラッシュメモリアレイ１１の一方のバンクＢａｎｋ１におけるブロックアドレスが、ライトステートマシンＷＳＭに記憶され、ライトステートマシンＷＳＭによって、フラッシュメモリアレイ１１におけるバンクＢａｎｋ１のブロックイレースが開始される。
【０１２７】
このように、ライトステートマシンＷＳＭによる、フラッシュメモリアレイ１１の一方のバンクＢａｎｋ１のブロックイレース中に、前述したように、アドレスピン、Ｉ／Ｏピンを用いて、ＳＲＡＭ１に対して、外部ＣＰＵによるデータの読み出しおよび書き込み動作が実行され、さらには、ブロックイレースの対象になっていない他方のＢａｎｋ０に書き込まれたデータを、同様に、アドレスピン、Ｉ／Ｏピンを用いて、外部ＣＰＵによって読み出すことができる。
【０１２８】
このように、ライトステートマシンＷＳＭによる一方のバンクＢａｎｋ１のブロックイレース動作とＳＲＡＭアレイに対するアクセス動作と、他方のバンクＢａｎｋ０のデータの読出し動作とを同時に実行することができる。
【０１２９】
図３０は、本発明の半導体記憶装置のさらに他の例を示す構成図である。この半導体記憶装置は、ＳＲＡＭアレイであるＳＲＡＭ０およびＳＲＡＭ１を構成するＳＲＡＭが、それぞれ、所定の値にリセットできるように構成されており、半導体記憶装置のリセットピンＲＥＳＥＴに対するリセットイネーブル信号によって、ＳＲＡＭアレイであるＳＲＡＭ０およびＳＲＡＭ１がそれぞれ一括してリセットされる。
【０１３０】
図３１は、この半導体記憶装置のＳＲＡＭ０およびＳＲＡＭ１に使用されるＳＲＡＭメモリセルの構成図である。このＳＲＡＭメモリセル６ａは、図３に示すＳＲＡＭメモリセル６において、一方のスイッチトランジスタ７と一対のインバータ８との接続点に、さらに、リセット用トランジスタ９が接続されており、そのリセット用トランジスタ９のコントロールゲートが、リセットイネーブルＲＥＳＥＴが入力されるリセットイネーブルノードになっている。そして、リセットイネーブルノードがハイレベル「Ｈ」になることにより、ＳＲＡＭメモリセル６ａは、リセットされる。
【０１３１】
ＳＲＡＭ０およびＳＲＡＭ１に使用される全てのＳＲＡＭメモリセル６ａのリセット端子は、図３０に示すように、一括して半導体記憶装置のＲＥＳＥＴピンに接続されている。ＲＥＳＥＴピンは、通常、ローレベル「Ｌ」にセットされており、ハイレベルのリセットイネーブル信号によって、ＳＲＡＭ０およびＳＲＡＭ１は、一括して、所定の状態にリセットすることができる。リセットされたＳＲＡＭ０およびＳＲＡＭ１は、ＲＥＳＥＴピンがローレベル「Ｌ」になることによりリセット解除状態になる。
【０１３２】
このような構成の半導体記憶装置では、リセットイネーブルノードをハイレベル「Ｈ」とし、ＳＲＡＭ０およびＳＲＡＭ１内のそれぞれの内容を全て所定の状態に一括して設定することができる。従って、ＳＲＡＭ０およびＳＲＡＭ１内のデータを一括してリセットすることができる。
【０１３３】
なお、ＲＥＳＥＴピンによって、ＳＲＡＭ０およびＳＲＡＭ１を一括してリセットする構成に限らず、予め設定されたリセットコマンドを発行することにより、ライトステートマシンＷＳＭによって、ＳＲＡＭ０およびＳＲＡＭ１を一括してリセットする構成としてもよい。
【０１３４】
また、予め設定されたリセットコマンドが発行されると、ＳＲＡＭ０およびＳＲＡＭ１のＳＲＡＭメモリセル６ａに対して、順次、特定のデータ内容を書き込んでリセットするようにしてもよい。この場合には、ＳＲＡＭ０およびＳＲＡＭ１における任意の領域のＳＲＡＭメモリセル６ａのデータをリセットすることができる。
【０１３５】
このようなリセット機能を有する半導体記憶装置では、フラッシュメモリアレイ１１に書き込まれたデータが誤って上書きされることを防止することができる。フラッシュメモリアレイ１１は、アドレスに書き込まれたデータに対して上書きすることは可能であるが、一旦データが書き込まれると、データの消去は、ブロック単位となる。このために、フラッシュメモリアレイ１１のセルにおけるデータが誤って書き換えられると、その誤りを訂正することは容易でない。
【０１３６】
このようなリセット機能を有する半導体記憶装置では、図３２に示すように、ＳＲＡＭ０からフラッシュメモリアレイ１１にデータを転送した後に、ＳＲＡＭ０におけるデータ転送領域をリセットするようにしてもよい。この場合には、その後のデータ転送コマンド発行時に、誤って、すでにデータが転送された状態になっているＳＲＡＭ０の領域がデータ転送領域として設定されても、フラッシュメモリアレイ１１にデータが転送されることによって、フラッシュメモリアレイ１１のデータが上書きされて書き換えられるおそれがない。
【０１３７】
図３３は、本発明の半導体記憶装置のさらに他の例を示す構成図である。この半導体記憶装置には、ＳＲＡＭアレイであるＳＲＡＭ０およびＳＲＡＭ１のデータ書き換え不可能（プロテクト）動作を可能にするために、ＲＡＭＰＲＯＴＥＣＴピンが設けられている。ＲＡＭＰＲＯＴＥＣＴピンは、ＳＲＡＭ０およびＳＲＡＭ１内のデータを書き換え不可能にする場合にはハイレベル「Ｈ」とされる。これにより、ＳＲＡＭ０およびＳＲＡＭ１内に設けられたデータ書き込みコントロール回路が休止状態とされ、データの書き換えが不可能な状態とされる。また、ＳＲＡＭ０およびＳＲＡＭ１には、データの書き換えが不可能なプロテクト状態の場合に、セット状態とされるロック用フラグＲＦ１およびＲＦ２が、それぞれ設けられており、外部ＣＰＵは、ロック用フラグＲＦ１およびＲＦ２によって、ＳＲＡＭ０およびＳＲＡＭ１が、データの書き換えが不可能なプロテクト状態になっていることを判別することができる。
【０１３８】
ＳＲＡＭ０およびＳＲＡＭ１内に設けられたデータ書き込みコントロール回路を休止状態とするロックビットは、ＳＲＡＭ０およびＳＲＡＭ１それぞれに設けられているために、ＳＲＡＭ０およびＳＲＡＭ１毎に、データの書き換えが不可能な状態とすることができる。
【０１３９】
図３４は、本発明の半導体記憶装置のさらに他の例を示す構成図である。この半導体記憶装置は、ＲＰ＃をローレベルにして半導体記憶装置の消費電力を低減し、制御回路の状態を初期化、休眠状態にさせるパワーダウン機能を有している。この半導体記憶装置は、電源電圧を与えていない状態から規定の電源電圧を印加した電源投入時、あるいは、パワーダウン状態からＲＰ＃をハイレベルにして半導体記憶装置が動作可能になった復帰時に、フラッシュメモリ１１内の予め決められた領域のデータをＳＲＡＭ０またはＳＲＡＭ１に自動的に転送するようになっている。このような機能を発揮するために、半導体記憶装置には、電源電圧の投入を検出する電圧検出回路１４と、パワーダウン動作を行わせるＲＰ＃ピンと、フラッシュメモリアレイ１１からＳＲＡＭ０およびＳＲＡＭ１へのデータ転送情報が格納されたデータ転送情報回路１５とが設けられている。
【０１４０】
データ転送情報回路１５には、電源投入時、または、パワーダウンから通常の使用状態への復帰時に、フラッシュメモリアレイ１１から、ＳＲＡＭアレイであるＳＲＡＭ０へ転送されるデータに関するフレッシュメモリアレイ１１の転送元スタートアドレスおよび転送元エンドアドレスと、ＳＲＡＭ０に転送されるデータの先頭アドレスである転送先アドレスとが設定されている。
【０１４１】
このような半導体記憶装置は、電源電圧を検出する電圧検出回路１４により電源投入されたこと、あるいは、ＲＰ＃の操作によりパワーダウンから復帰したことが検出されると、ライトステートマシンＷＳＭは、データ転送情報回路１５から、フラッシュメモリアレイ１１の転送元スタートアドレスおよび転送元エンドアドレスと、ＳＲＡＭ０の転送先アドレスとを読み出して、読み出されたアドレスに基づいて、フラッシュメモリアレイ１１からＳＲＡＭ０へ順次データを転送する。これにより、フラッシュメモリアレイ１１内に格納されているデータを、ＳＲＡＭ０に格納することができる。
【０１４２】
従って、電源投入時、パワーダウン状態から通常の使用状態への復帰時において、フラッシュメモリアレイ１１内に格納された所定のデータが、ＳＲＡＭ０にダウンロードされるために、半導体記憶装置が初期化された時点で、そのデータを使用されることができる。このような構成は、特に、フラッシュメモリアレイ１１内に格納された所定のプログラムを、必ず、ＳＲＡＭアレイにダウンロードして使用する場合に好適である。
【０１４３】
なお、このような構成の半導体記憶装置において、ＳＲＡＭアレイにデータが転送されると、転送されたデータの書き換えを不可能にすることもできる。この場合には、図３５に示すように、ＳＲＡＭ０およびＳＲＡＭ１に、データの書き換えを不可能とするロック用フラグＲＦ１およびＲＦ２がそれぞれ設けられる。その他の構成は、図３２に示す半導体記憶装置と同様である。
【０１４４】
このような構成の半導体記憶装置では、フラッシュメモリアレイ１１からＳＲＡＭ０にデータが転送されると、ライトステートマシンＷＳＭは、データが転送されたＳＲＡＭ０を書き換え不可能な状態として、ロック用フラグＲＦ０をセットする。これにより、ＳＲＡＭ０内に転送されたデータは、書き換え不可能な状態になる。従って、フラッシュメモリアレイ１１内に格納された所定のプログラムを、必ず、ＳＲＡＭアレイにダウンロードして使用する場合に、ダウンロードされたプログラムが書き換えられるおそれがない。
【０１４５】
なお、本発明の半導体記憶装置では、図３６に示すように、ＣＬＫピンによってクロック信号ＣＬＫが入力されるようにして、クロック信号ＣＬＫに同期してＩ／Ｏピンからデータを入出力するシンクロナスインターフェースを設けるようにしてもよい。このような構成によって、通常のデータの読み出しおよび書き込みに比べて、シンクロナス動作により高速にてデータの読み出しおよび書き込みができる。
【０１４６】
本発明の半導体記憶装置においては、図３７（ａ）に示すように、１６ビット幅の入出力データバス１６を用いて、１４ビットバスをフラッシュメモリアレイ１１のデータ読み出し用とし、２ビットバスをＳＲＡＭ０およびＳＲＡＭ１のデータ読み出し用とするとともに、図３７（ｂ）に示すように、デコーダ回路により、フラッシュメモリアレイ１１用として１４ビット、ＳＲＡＭ０およびＳＲＡＭ１として２ビットが割り当てられた１６ビットのメモリマップの構成としてもよい。このような構成により、データの読み出し時に、フラッシュメモリアレイ１１に格納されている１４ビットのデータと、ＳＲＡＭ０およびＳＲＡＭ１に格納されている２ビットのデータとを１回の読み出し動作によって外部ＣＰＵによって読み出すことができる。
【０１４７】
また、データの書き込みに際しては、例えば、ＳＲＡＭ０およびＳＲＡＭ１と、フラッシュメモリアレイ１１とに対する書き込みコマンドを共通にすることによって、ＳＲＡＭ０およびＳＲＡＭ１と、フラッシュメモリアレイ１１とに対して同時にデータを書き込むことができる。
【０１４８】
このように、ＳＲＡＭ０およびＳＲＡＭ１と、フラッシュメモリアレイ１１とに対するデータの読み出しおよび書き込みをそれぞれ同時にできるために、外部ＣＰＵと容易にマッチングさせることができる。
【０１４９】
なお、１６ビットのメモリマップは、図３７（ｃ）に示すように、上位２ビットをＳＲＡＭ０およびＳＲＡＭ１用、下位１４ビットをフラッシュメモリアレイ用としてもよい。
【０１５０】
また、図３８に示すように、入出力データバス１６が、１６ビット幅になっており、さらに、ＳＲＡＭ０およびＳＲＡＭ１にそれぞれ接続された各内部転送用データバス１７に、バス幅切替えスイッチ１８ａおよび１８ｂをそれぞれ設けるとともに、フラッシュメモリアレイ１１に接続された内部転送用データバス１７にも、バス幅切替えスイッチ１８ｃを設けるようにしてもよい。各バス幅切替えスイッチ１８ａ〜１８ｃは、それぞれ、予め設定された入力端子、あるいは、予め設定されたコマンドによって切り換えられるようになっている。
【０１５１】
このような構成の半導体記憶装置では、ＳＲＡＭ０およびＳＲＡＭ１と、フラッシュメモリアレイ１１とに対するデータの読み出しおよび書き込みを、それぞれ同時にすることができ、外部ＣＰＵと容易にマッチングさせることができる。
【０１５２】
さらには、入出力データバス１６のバス幅に対して内部転送用データバス１７のバス幅を大きくするようにしてもよい。例えば、図３９（ａ）に示す半導体記憶装置では、入出力データバス１６のバス幅は１６ビット、内部転送用データバス１７のバス幅は３２ビットになっている。このような構成では、図３９（ｂ）に示すように、ＳＲＡＭアレイに書き込まれた１６ビットのデータ４組を、フラッシュメモリアレイ１１へ転送する場合には、内部転送用データバス１７のバス幅が３２ビットになっていることにより、フラッシュメモリアレイ１１に対して、３２ビットのデータの書き込みを２回繰り返せばよい。
【０１５３】
これに対して、図３９（ｃ）に示すように、内部転送用データバス１７のバス幅が１６ビットになっている場合には、ＳＲＡＭアレイに書き込まれた１６ビットのデータ４組をフラッシュメモリアレイ１１へ転送するに際して、フラッシュメモリアレイ１１に対して、１６ビットのデータの書き込みを、４回繰り返す必要がある。
【０１５４】
このように、内部転送用データバス１７のバス幅が、入出力データバス１６のバス幅よりも大きくなっていることにより、ライトステートマシンＷＳＭによるＳＲＡＭアレイからのデータの読み出し、ＷＳＭによるフラッシュメモリアレイ１１へのデータの書き込みを高速で行うことができる。
【０１５５】
本発明の半導体記憶装置は、このように、従来、必要であった外付けＳＲＡＭを設ける必要がなく、また、ＳＲＡＭの必要容量を低減することができる。すでに述べたように、ＳＲＡＭとフラッシュメモリでは、データの読み出し時間は、共に１００ｎｓ程度と、ほぼ等しくなっているが、データの書き込み時間は、フラッシュメモリでは、ＳＲＡＭに比べて、けた違いに遅い。本発明の半導体記憶装置では、フラッシュメモリへのデータの書き込み時間を見かけ上速くすることができる。また、従来、ＳＲＡＭに保存していたデータを、フラッシュメモリに保存することによって、ＳＲＡＭの必要容量を削減することができ、しかも、全体のチップ面積を低減することができる。
【０１５６】
すなわち、フラッシュメモリは、１ビットのデータを、１つのトランジスタによって記憶しているのに対して、ＳＲＡＭでは、１ビットのデータを、６つのトランジスタによって記憶しているために、ＳＲＡＭに代えてフラッシュメモリにデータを記憶させることにより、全体のチップ面積を低減することができる。
【０１５７】
しかも、本発明の半導体記憶装置では、いずれかのＳＲＡＭアレイからフラッシュへのデータ転送中に、外部ＣＰＵから他のＳＲＡＭアレイへの書きこみが可能であるため、保存すべきデータを、１つのＳＲＡＭアレイに対して高速で書き込みつつ、他のＳＲＡＭアレイからフラッシュメモリへのデータ転送を実行でき、見かけ上、フラッシュメモリへのデータの書きこみを速くすることができる。
【０１５８】
なお、本発明の半導体記憶装置では、一対のＳＲＡＭ０およびＳＲＡＭ１に代えて、高速での書き換えが可能な一対のＦＲＡＭアレイを使用するようにしてもよい。この場合も、図４０に示すように、ＦＲＡＭアレイであるＦＲＡＭ０およびＦＲＡＭ１と、ライトステートマシンＷＳＭとの間でデータの転送が可能である。なお、ＦＲＡＭアレイは、２つ以上設けるようにしてもよい。
【０１５９】
このような構成の半導体記憶装置は、ＦＲＡＭアレイは、ＳＲＡＭアレイと同様に高速での書き換えが可能であるにもかかわらず、ＦＲＡＭアレイを構成するＦＲＡＭセルは、ＳＲＡＭアレイを構成するＳＲＡＭセルよりもセル面積が小さいために、全体のチップ面積を小さくすることができる。
【０１６０】
【発明の効果】
以上のように、本発明の半導体記憶装置は、データを、一旦、書き込み時間の短いＳＲＡＭ等の揮発性半導体記憶素子、あるいは高速動作可能な不揮発性半導体記憶素子によって構成された第１メモリアレイに記憶し、一括してフラッシュメモリ等の不揮発性半導体記憶素子によって構成された第２メモリアレイへ転送するようになっているために、不揮発性半導体記憶素子によって構成された第２メモリアレイへのデータ転送中において、外部ＣＰＵ等の外部接続装置は、待機時間が不要になり、外部接続装置は他の処理を実施することが可能になる。
【０１６１】
さらに、複数組の第１メモリアレイが設けられて、一方の第１メモリアレイが、第２メモリアレイに対してデータ転送している間に他の第１メモリアレイに対してデータの書き込みが可能になっているために、より多数のデータを短時間で書き込むことができる。また、第２メモリアレイのデータを消去する場合にも、同時に、第１メモリアレイに対してデータの書き込みを行うことができる。一方の第１メモリアレイがデータを転送している間は、他方の第１メモリアレイは、データを外部に読み出すこともできるために、ワーク用として使用することができる。
【０１６２】
さらに、外部接続装置からのデータは、第１メモリアレイに一旦書き込まれた後に、第２メモリアレイに転送されて、第２メモリアレイに記憶されるために、一時的なデータ保持に使用される外付けＳＲＡＭを設ける必要がない。その結果、全体のチップ面積を減少させることができる。
【図面の簡単な説明】
【図１】不揮発性半導体記憶素子であるフラッシュメモリのメモリセルの構造を示す回路図である。
【図２】ＮＯＲ型フラッシュメモリにおけるブロック構造、特に、Ｘデコーダとワード線との関係を示す回路図である。
【図３】揮発性半導体記憶素子であるＳＲＡＭのメモリセルの構造を示す回路図である。
【図４】本発明の半導体記憶装置の実施の形態の一例を示す概略構成図である。
【図５】その半導体記憶装置におけるアドレスマップの一例を示す構成図である。
【図６】その半導体記憶装置においてＳＲＡＭアレイに対するデータの書き込み時におけるデータの流れを示す概略図である。
【図７】そのデータ書き込み時におけるコマンドの一例を示すタイミングチャートである。
【図８】そのデータ書き込み時におけるコマンドの他の例を示すタイミングチャートである。
【図９】本発明の半導体記憶装置において、ＳＲＡＭアレイからフラッシュメモリアレイへデータ転送するときのデータの流れを示す概略図である。
【図１０】そのデータ転送時におけるコマンドの一例を示すタイミングチャートである。
【図１１】本発明の半導体記憶装置において、ＳＲＡＭアレイからフラッシュメモリアレイへデータ転送時におけるデータの流れを示す概略図である。
【図１２】本発明の半導体記憶装置において、ＳＲＡＭアレイからフラッシュメモリアレイへＳＲＡＭアレイ内のデータを一括データ転送する場合のコマンドの一例を示すタイミングチャートである。
【図１３】本発明の半導体記憶装置において、ＳＲＡＭアレイからフラッシュメモリアレイへＳＲＡＭアレイ内のデータを、任意のデータ数だけ転送する場合のコマンド入力の一例を示すタイミングチャートである。
【図１４】本発明の半導体記憶装置において、ＳＲＡＭアレイからフラッシュメモリアレイへのデータ時のデータの流れを示す概略図である。
【図１５】その場合のコマンドの一例を示すタイミングチャートである。
【図１６】その場合のコマンドの他の例を示すタイミングチャートである。
【図１７】本発明の半導体記憶装置において、ＳＲＡＭアレイからフラッシュメモリアレイへデータ転送中に、もう一方のＳＲＡＭアレイに対してデータ書き込みを行う場合のデータの流れを示す概略図である。
【図１８】その場合のコマンドの一例を示すタイミングチャートである。
【図１９】本発明の半導体記憶装置において、ＳＲＡＭアレイとフラッシュメモリアレイとの間でのデータ転送に際してデータが一致する場合のデータの流れを示す概略図である。
【図２０】本発明の半導体記憶装置において、ＳＲＡＭアレイからフラッシュメモリアレイへのデータ転送中に、そのＳＲＡＭアレイに対してデータ書き込みを禁止する場合のデータの流れを示す概略図である。
【図２１】本発明の半導体記憶装置において、ＳＲＡＭアレイからフラッシュメモリアレイへデータ転送中に、そのＳＲＡＭアレイがデータ転送中であることの情報を出力する場合のデータの流れを示す概略図である。
【図２２】本発明の半導体記憶装置において、フラッシュメモリアレイのデータ消去中に、ＳＲＡＭアレイに対してデータを書き込みおよび読み出しする場合のデータの流れを示す概略図である。
【図２３】その場合のコマンドの一例を示すタイミングチャートである。
【図２４】本発明の半導体記憶装置において、一方のＳＲＡＭアレイのサイズとフラッシュメモリアレイのブロックのサイズとが等しい場合におけるデータ転送時のデータの流れを示す概略図である。
【図２５】（ａ）は、本発明の半導体記憶装置におけるアドレスマップの他の例を示す構成図、（ｂ）は、そのアドレスマップを有する半導体記憶装置の概略構成図である。
【図２６】本発明の半導体記憶装置において、ＣＥ０＃とＣＥ１＃とを切り換える構成を示す概略図である。
【図２７】本発明の半導体記憶装置において、フラッシュメモリアレイに複数のバンクが設けられた構成を示す概略図である。
【図２８】その半導体記憶装置にいて、フラッシュメモリアレイの各バンクに対するデータの流れを示す概略図である。
【図２９】その半導体記憶装置にいて、フラッシュメモリアレイの一方のバンクのイレース制御時におけるデータの流れを示す概略図である。
【図３０】本発明の半導体記憶装置において、ＳＲＡＭアレイがリセット可能になった構成におけるデータの流れの一例を示す概略図である。
【図３１】その半導体記憶装置のＳＲＡＭアレイに使用されるＳＲＡＭの構成を示す回路図である。
【図３２】本発明の半導体記憶装置において、ＳＲＡＭアレイがリセット可能になった構成におけるデータの流れの他の例を示す概略図である。
【図３３】本発明の半導体記憶装置において、ＳＲＡＭアレイの書き換え不可能機能を有する構成におけるデータの流れの一例を示す概略図である。
【図３４】本発明の半導体記憶装置において、ＳＲＡＭアレイの書き換え不可能機能を有する構成におけるデータの流れの他の例を示す概略図である。
【図３５】本発明の半導体記憶装置において、ＳＲＡＭアレイのデータが転送された後に初期化する際のデータの流れの一例を示す概略図である。
【図３６】本発明の半導体記憶装置において、クロック信号が入力される構成を示す概略図である。
【図３７】（ａ）は、本発明の半導体記憶装置において、入出力データバスの構成の一例を示す概略図、（ｂ）および（ｃ）は、それぞれ、その入出力データバスについての説明図である。
【図３８】本発明の半導体記憶装置において、入出力データバスのバス幅が切り換え可能になった構成の一例を示す概略図である。
【図３９】（ａ）は、本発明の半導体記憶装置において、入出力データバスの構成の他の例を示す概略図、（ｂ）および（ｃ）は、それぞれ、その入出力データバスについての説明図である。
【図４０】本発明の半導体記憶装置において、ＦＲＡＭアレイを使用した構成を示す概略図である。
【符号の説明】
１    フラッシュメモリセル
２    コントロールゲート２
３    フローティングゲート
４    ソース
５    ドレイン
６、６ａ    ＳＲＡＭメモリセル
７    スイッチ用トランジスタ
８    インバータ
９    リセット用トランジスタ
１１  フラッシュメモリアレイ
１２  コマンド認識部
１４  電圧検出回路
１５  データ転送情報回路
１６  入出力データバス
１７  内部データ転送用バス
【図１】
0003871184.tif 000002
【図２】
0003871184.tif 000003
【図３】
0003871184.tif 000004
【図４】
0003871184.tif 000005
【図５】
0003871184.tif 000006
【図６】
0003871184.tif 000007
【図７】
0003871184.tif 000008
【図８】
0003871184.tif 000009
【図９】
0003871184.tif 000010
【図１０】
0003871184.tif 000011
【図１１】
0003871184.tif 000012
【図１２】
0003871184.tif 000013
【図１３】
0003871184.tif 000014
【図１４】
0003871184.tif 000015
【図１５】
0003871184.tif 000016
【図１６】
0003871184.tif 000017
【図１７】
0003871184.tif 000018
【図１８】
0003871184.tif 000019
【図１９】
0003871184.tif 000020
【図２０】
0003871184.tif 000021
【図２１】
0003871184.tif 000022
【図２２】
0003871184.tif 000023
【図２３】
0003871184.tif 000024
【図２４】
0003871184.tif 000025
【図２５】
0003871184.tif 000026
【図２６】
0003871184.tif 000027
【図２７】
0003871184.tif 000028
【図２８】
0003871184.tif 000029
【図２９】
0003871184.tif 000030
【図３０】
0003871184.tif 000031
【図３１】
0003871184.tif 000032
【図３２】
0003871184.tif 000033
【図３３】
0003871184.tif 000034
【図３４】
0003871184.tif 000035
【図３５】
0003871184.tif 000036
【図３６】
0003871184.tif 000037
【図３７】
0003871184.tif 000038
【図３８】
0003871184.tif 000039
【図３９】
0003871184.tif 000040
【図４０】
0003871184.tif 000041