(57)【要約】【課題】  セルデータを確実に初期化できるメモリセルを提供する。【解決手段】  メモリセル１００は、第１のインバータ回路１０１、及び第２のインバータ回路１０２の入力と出力とが相互に接続されたデータラッチ回路、ゲートをワード線１０３に接続し、データの読み出し書き込みを制御するトランスファゲート１０４，１０６、及びインバータ回路１０１，１０２のいずれか一方の出力側と接地電位との間に配置され、リセット信号により導通制御される初期値設定用のＮＭＯＳトランジスタ１１０を備え、初期値データとして“０”が設定される。メモリセル１００により構成された初期値設定型のＳＲＡＭ回路は、プログラムメモリ兼データメモリとして使用できる。また、電源電圧印加直後に初期値設定用プログラムの実行を介することなく、確実に初期値設定が行え、信頼性が高いメモリセルとなる。【選択図】  図２
2005085399.tif 000002
【特許請求の範囲】
【請求項１】
第１のインバータの入力と第２のインバータの出力とを接続するとともに、前記第１のインバータの出力と前記第２のインバータの入力とを接続して構成するデータラッチ回路と、
ソースあるいはドレインのいずれか一方を前記第１のインバータの出力側に接続するとともに、他方を第１のビット線に接続し、かつゲートをワード線に接続することにより、データの読み出し書き込みを制御する第１のトランスファゲートと、
ソースあるいはドレインのいずれか一方を前記第２のインバータの出力側に接続するとともに、他方を第２のビット線に接続し、かつゲートを前記ワード線に接続することにより、データの読み出し書き込みを制御する第２のトランスファゲートと、
前記第１あるいは第２のインバータのいずれか一方の出力側と接地電位との間に配置され、リセット信号により導通制御される初期値設定用のスイッチ素子と、
を備えたことを特徴とするメモリセル。
【請求項２】
前記データラッチ回路、前記第１、第２のトランスファゲート、及び前記スイッチ素子のそれぞれをＭＯＳトランジスタ回路によって構成したことを特徴とする請求項１記載のメモリセル。
【請求項３】
請求項１記載のメモリセルを、複数のワード線と複数の第１、第２のビット線との交点にそれぞれ行列状に配置したメモリセルアレイと、
前記第１、第２のビット線を制御してデータの読み出し書き込みを行う読み出し書き込み回路と、
を備え、
前記スイッチ素子にリセット信号を供給して、それぞれ導通することにより、前記メモリセルのデータラッチ回路から固定データを読み出すようにしたことを特徴とする半導体メモリ装置。
【請求項４】
プログラムメモリ及びデータメモリにアクセス可能な中央処理装置と、
前記プログラムメモリとして機能する読み出し専用のメモリ装置と、
前記データメモリとして機能する請求項３記載の半導体メモリ装置を一部に含む、読み出し書き込み可能な半導体メモリ装置と、
を備え、
前記中央処理装置のプログラムの一部が前記半導体メモリ装置の固定データとして格納され、前記半導体メモリ装置をプログラムメモリ兼データメモリとして動的に切り替えて使用することを特徴とする半導体メモリ装置を備えたマイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、固定データを設定できるメモリセル、半導体メモリ装置、及び半導体メモリ装置を備えたマイクロコンピュータに関する。
【背景技術】
【０００２】
従来のランダムアクセスメモリ（ＲＡＭ）、特にスタティックＲＡＭ（ＳＲＡＭ）では、電源投入時点において、メモリセルのデータ記憶内容は“１”か“０”かのいずれかには決まるものの、それがどのような値になるかはユーザの任意ではないという意味で不定となる。
【０００３】
そこで、ＳＲＡＭの使用に際して記憶データの初期設定を行う場合には、全てのＳＲＡＭセルに対して、例えば初期化プログラムにより所定のデータを書き込むという作業が必要であった。このため、従来のＳＲＡＭ内蔵のシングルチップマイクロコンピュータでは、ＳＲＡＭに記憶させるのはデータやアドレスに限られ、プログラムなどの固定データをＳＲＡＭに格納することはないなど、ＳＲＡＭの用途が大きく制限されていた。
【０００４】
表１は、一般的なマイコンシステムのメモリマップである。チップセレクト信号ＣＳ０は、アドレス空間００００Ｈ〜１ｆｆｆＨ番地が割り当てられたプログラムＲＯＭに格納したモニタプログラム領域を指定し、チップセレクト信号ＣＳ２は、アドレス空間２０００Ｈ〜３ｆｆｆＨ番地が割り当てられたユーザＲＡＭに格納したユーザプログラム領域を指定し、チップセレクト信号ＣＳ６は、アドレス空間６０００Ｈ〜６０ｆｆＨ番地が割り当てられたＩ／Ｏのレジスタ・データ領域と、アドレス空間６１００Ｈ〜６１０５Ｈ番地が割り当てられたＩ／Ｏ領域を指定し、チップセレクト信号ＣＳ８は、アドレス空間８０００Ｈ〜ｆｆｆｆＨ番地が割り当てられたデータＲＡＭに格納したユーザデータ領域を指定する。
【０００５】
【表１】
2005085399.tif 000003
【０００６】
マイクロコンピュータでメモリの使用状態を示すメモリマップは、従来の技術では、マイクロコンピュータの動作中に変更されることはない。そのため、以下のような問題が従来から指摘されていた。
【０００７】
すなわち、初期化プログラムのように、システム全体を初期化する時にしか動作しないプログラムや、出荷時にしか動作せず、実動作時には使用されないテストプログラムなどのプログラムデータも、読み出し専用のメモリ装置（ＲＯＭ）上に格納され、それらは一定のアドレス空間を占有している。しかし、これらのプログラムは実動作時には不要であり、プログラムメモリ及びデータメモリに対してアクセス可能な中央処理装置（ＣＰＵ）にとっては、無駄なアドレス空間を構成している。
【０００８】
以下に説明する特許文献１には、自己診断用の起動プログラムをＲＡＭに初期設定させることにより、ＲＯＭ容量の最大サイズまでメインプログラムを格納し得るマイクロコンピュータの発明が開示されている。
【０００９】
このマイクロコンピュータは、電源電圧印加直後の初期設定を初期値設定用プログラムの実行を介することなく自動的に行うことが可能なＲＡＭセルを有するＲＡＭと、このＲＡＭと同一半導体基板上に形成され、このＲＡＭの読み出し書き込み制御を行う中央演算処理装置とを具備するものである。
【００１０】
そして、このマイクロコンピュータにおいては、内蔵するＳＲＡＭの製造に際して、少なくとも起動プログラム領域に対応する各ＳＲＡＭセルにおける２個のインバータの電源投入直後における記憶データが“１”あるいは“０”となるように、それらの動作特性を異ならせて製造することにより、起動プログラム領域に対応する各ＳＲＡＭセルの電源投入直後における記憶データを所望通りに、自動的に初期設定できる。
【特許文献１】特開平６−６０６６８号公報（段落番号〔０００９〕、〔００２２〕、及び第３図）
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上述した特許文献１では、各ＳＲＡＭセルを構成する２個のインバータの動作特性を異ならせて、それらの立ち上がり時間の差によってデータを初期化しようとするものであるため、初期値設定の確実性、信頼性に乏しいという問題があった。
【００１２】
また、同一アドレス空間にＲＯＭ、ＲＡＭをマッピングして、それらをアドレスデコーダで切り替えることで、アドレス空間の無駄を省くことも考えられているが、この方式では、ＳＲＡＭ、ＲＯＭ領域を構成する各チップが余分に必要となるため、物理的にもチップ実装面積が大きくなるという問題があった。
【００１３】
この発明の目的は、セルデータを確実に初期化できるメモリセルを提供することにある。
また、この発明の別の目的は、プログラムメモリ兼データメモリとして動的に切り替えて使用できる半導体メモリ装置を提供することである。
【００１４】
さらに、この発明の別の目的は、ＲＯＭなどのチップ実装面積やアドレス空間の無駄を省いたマイクロコンピュータを提供することである。
【課題を解決するための手段】
【００１５】
この発明のメモリセルは、第１のインバータの入力と第２のインバータの出力とを接続するとともに、前記第１のインバータの出力と前記第２のインバータの入力とを接続して構成するデータラッチ回路と、ソースあるいはドレインのいずれか一方を前記第１のインバータの出力側に接続するとともに、他方を第１のビット線に接続し、かつゲートをワード線に接続することにより、データの読み出し書き込みを制御する第１のトランスファゲートと、ソースあるいはドレインのいずれか一方を前記第２のインバータの出力側に接続するとともに、他方を第２のビット線に接続し、かつゲートを前記ワード線に接続することにより、データの読み出し書き込みを制御する第２のトランスファゲートと、前記第１あるいは第２のインバータのいずれか一方の出力側と接地電位との間に配置され、リセット信号により導通制御される初期値設定用のスイッチ素子と、を備える。
【００１６】
また、この発明の半導体メモリ装置は、前述のメモリセルを、複数のワード線と複数の第１、第２のビット線との交点にそれぞれ行列状に配置したメモリセルアレイと、前記第１、第２のビット線を制御してデータの読み出し書き込みを行う読み出し書き込み回路と、を備え、前記スイッチ素子にリセット信号を供給して、それぞれ導通することにより、前記メモリセルのデータラッチ回路から固定データを読み出すようにした。
【００１７】
さらに、この発明のマイクロコンピュータは、プログラムメモリ及びデータメモリにアクセス可能な中央処理装置と、前記プログラムメモリとして機能する読み出し専用のメモリ装置と、前記データメモリとして機能する前述の半導体メモリ装置を一部に含む、読み出し書き込み可能な半導体メモリ装置と、を備え、前記中央処理装置のプログラムの一部が前記半導体メモリ装置の固定データとして格納され、前記半導体メモリ装置をプログラムメモリ兼データメモリとして動的に切り替えて使用する。
【発明の効果】
【００１８】
この発明の効果として、電源電圧印加直後に初期値設定用プログラムの実行を介することなく、確実に初期値設定が行え、信頼性が高いメモリセルが提供できる。
また、初期値設定用のスイッチ素子をオンオフするだけで、一部のメモリセルをプログラムメモリ兼データメモリとして動的に切り替えて使用できる半導体メモリ装置が提供できる。
【００１９】
さらに、半導体メモリ装置をプログラムメモリ兼データメモリとして動的に切り替えて使用することにより、ＲＯＭなどのチップ実装面積やアドレス空間の無駄を省いたマイクロコンピュータを提供できる。
【発明を実施するための最良の形態】
【００２０】
ＳＲＡＭなどのメモリセルを構成する回路技術、及びＳＲＡＭを用いたマイコンシステムの回路技術として適用できる。
【実施例１】
【００２１】
実施例１では、電源投入時の初期値として初期化プログラムやテストプログラムのデータを持つＳＲＡＭをプログラムメモリ兼データメモリとして使用可能なメモリセルについて説明する。
【００２２】
図１は、初期値設定型のＳＲＡＭ回路を示す図であり、図２は、図１の単位メモリセルの構成を示す回路図である。
以下では、とくに断わらないかぎり信号レベルＬを“０”、信号レベルＨを“１”として説明する。
【００２３】
図２において、１単位のメモリセル１００は、記憶データを保持する第１のインバータ回路１０１、及び第２のインバータ回路１０２の入力と出力とが相互に接続されたデータラッチ回路から構成されている。また、第１のインバータ回路１０１の入力と、第２のインバータ回路１０２の出力との接続点は、ワード線１０３に与えられるアドレス信号で導通制御されるトランスファゲート１０４を介して正転側のビット線１０５に接続され、第１のインバータ回路１０１の出力と、第２のインバータ回路１０２の入力との接続点は、同じくワード線１０３に与えられるアドレス信号で導通制御されるトランスファゲート１０６を介して反転側のビット線１０７に接続されている。
【００２４】
このようなメモリセル１００は行列状に配置され、例えば図１に示すように８行、４列のメモリセルアレイを構成する。このメモリセルアレイのメモリセル１００には、３ビットのアドレス信号ａｄ［２：０］が供給されるアドレスデコーダ１０８が接続され、それぞれアドレス信号ａｄ［２：０］により特定された書き込みサイクルにおいて、そのアドレス（０００〜１１１）に対応したメモリセル１００に、読み出し書き込み回路１０９から正転側のビット線１０５ならびに反転側のビット線１０７を介して記憶データとしてｄａｔａ３〜ｄａｔａ０が書き込まれる。
【００２５】
読み出し書き込み回路１０９にはタイミング制御信号が供給されており、読み出しサイクルでは、それぞれのメモリセル１００に記憶された記憶データが、ワード線１０３からのアドレス信号で導通制御されるトランスファゲートを介してビット線１０５，１０７に読み出され、読み出し書き込み回路１０９から出力データｄａｔ［３］〜ｄａｔ［０］の４ビット信号として出力される。
【００２６】
図２には、メモリセル１００のうち、例えばアドレス（０００）のビット０のように、正転側のビット線１０５側に初期値設定用のスイッチ素子として、ＮＭＯＳトランジスタ１１０のソースが接続されているものを示している。このＮＭＯＳトランジスタ１１０のゲートはリセット端子１１１と接続され、ドレインは接地されている。
【００２７】
図２のメモリセル１００は、初期値設定時にリセット端子１１１にＨ信号が供給されることにより、このメモリセル１００の初期値データとなるセルデータを確実に“０”に設定できる。ここでは、データラッチ回路の右側のビット線１０５（ｄａｔａｘ）が正極性、左側のビット線１０７（ｄａｔａｘ＿）が負極性であって、メモリセル１００の右側に初期値設定用のＮＭＯＳトランジスタ１１０がある場合は初期値データが“０”となるが、例えばアドレス（００１）のビット０のように、初期値設定用のＮＭＯＳトランジスタが左側にある場合には、初期値データは“１”に設定される。なお、これらの初期値設定用のスイッチ素子としてＰＭＯＳトランジスタを使った場合には、設定されるデータの極性は逆になる。
【実施例２】
【００２８】
初期化プログラムやテストプログラムなどのモニタプログラムが実行されるときには、図１の初期値設定型のＳＲＡＭ（以下では、初期値付きＳＲＡＭともいう。）はプログラムメモリとして動作し、それ以外の実動作プログラムが実行されるときは、データメモリとして動作する。これにより、半導体メモリ装置のアドレス空間を節約することができ、物理的なメモリを増やさないで、実動作時に使用できるＳＲＡＭのメモリ容量を増やすことが可能となる。
【００２９】
以下に、図１に示す具体的な回路構成について説明する。
アドレスが（０００）の時は、ビット３〜ビット０のメモリセルでは初期値設定用のＮＭＯＳトランジスタ１１０は全て右側に接続されている。よって、すべてのビット３〜０の初期値は０である。アドレスが（００１）の場合は、ビット０のみ初期値設定用のＮＭＯＳトランジスタ１１０が左側に接続されている。よって、ビット０のみ初期値は“１”であり、その他は“０”である。図１のＳＲＡＭ回路では、同様にして、３桁の各アドレス（２進数）における４ビットの初期値データ（２進数）との対応は、以下の表２のようになる。
【００３０】
【表２】
2005085399.tif 000004
【００３１】
初期値設定用のＮＭＯＳトランジスタ１１０は、いずれもゲートが共通にリセット端子１１１と接続されていて、この初期値付きＳＲＡＭにリセットがかかると初期値設定用のトランジスタがオンして、所定の初期値が設定されることになる。しかし、リセット信号が解除されれば初期値設定用トランジスタはオフとなるから、一般のＳＲＡＭと同様に動作することができる。したがって、図１に示す初期値付きＳＲＡＭのような半導体メモリ装置では、確実にプログラムメモリ兼データメモリとして動的に切り替えて使用できる。
【００３２】
初期値付きＳＲＡＭをリセットするには、リセット信号をリセット端子１１１に入力する以外にも、例えば１６ビットのアドレスの上位８ビットがオールゼロとなったときリセットする方法、または初期値付きＳＲＡＭにチップセレクト端子を２つ設けて、一方の端子には、プログラム領域からの固定データの出力指令を入力するなどの方法で実現することが可能である。
【実施例３】
【００３３】
図３は、初期値付きＳＲＡＭを用いたマイクロコンピュータの回路構成を示すブロック図であって、図４には図３のマイクロコンピュータのメモリマップ図を示す。また、図５には、従来の技術を用いて図４と同様のメモリ機能を実現するために必要なメモリマップを示す。
【００３４】
図３のマイクロコンピュータは、初期値付きＳＲＡＭ３１、ＳＲＡＭ３２、ＲＯＭ３３、ＣＰＵ３４、及びアドレスデコーダ３５から構成され、初期値付きＳＲＡＭ３１、ＳＲＡＭ３２、ＲＯＭ３３は、アドレスバス３６、データバス３７、及び読み出し信号（ＯＥ；Ｏｕｔ  Ｅｎａｂｌｅ）、書き込み信号（ＷＥ；Ｗｒｉｔｅ  Ｅｎａｂｌｅ）などのタイミング信号線は共通である。アドレスデコーダ３５は、それぞれ初期値付きＳＲＡＭ３１、ＳＲＡＭ３２、ＲＯＭ３３に対してチップセレクト信号ＣＳ０，ＣＳ１，ＣＳ２を出力している。
【００３５】
なお、初期値付きＳＲＡＭ３１の回路構成のみを変更すれば、相互にセンスアンプ、デコーダ、及び制御回路の共用が可能であって、図３のアドレスデコーダ３５も不要にすることが可能である。
【００３６】
図４に示すように、初期化プログラムやテストプログラムなどは初期値付きＳＲＡＭ３１のアドレス００００Ｈ〜００７ｆＨに格納しておき、それ以外の実動作プログラムはＲＯＭ３３の００８０Ｈ〜０ｆｆｆＨのアドレスに格納してある。電源投入直後にリセット信号がオンすると、初期値付きＳＲＡＭ３１に初期化プログラムやテストプログラムがロードされ、ＣＰＵ３４では必要に応じてこれらが実行される。この時、初期値付きＳＲＡＭ３１はプログラムメモリとして動作する。
【００３７】
その後、初期化プログラムやテストプログラムが終了した場合、あるいは最初から動作する必要がない場合には、分岐命令で００８０Ｈ〜０ｆｆｆＨのアドレス（ＲＯＭ領域）にジャンプして実動作プログラムが実行される。この段階では、ＣＰＵ３４はアドレス００００Ｈ〜００７ｆＨにアクセスする必要がないから、初期値付きＳＲＡＭ３１を汎用のＳＲＡＭとして動作させることが可能になる。したがって、図３、図４の例ではアドレス１０００Ｈ〜１０７ｆＨにアクセスすることにより、ＣＰＵ３４は初期値付きＳＲＡＭ３１をデータメモリ領域のＳＲＡＭ３２と同様に使用できる。
【００３８】
これに対して、初期値付きＳＲＡＭ３１を用いないで、初期化プログラムやテストプログラムを一般的なＳＲＡＭだけを用いて実現しようとした場合には、図５に示すようにＲＯＭ３３にアドレス００００Ｈから０ｆｆｆＨまでのアドレス空間を構成し、アドレス１０００Ｈから１０ｆｆＨまでをＳＲＡＭ３２で構成しなければならない。
【００３９】
すなわち、図４に示すようなメモリマップ上でアドレス空間を構成する場合と、図５の場合とを比較すると、前者ではＲＯＭのアドレスが０ｆ８０Ｈ、ＳＲＡＭのアドレスが００ｆｆＨで済むところ、図５に示す従来技術の場合には、ＲＯＭが０ｆｆｆＨ、ＳＲＡＭが００ｆｆＨだけ必要になる。したがって、この発明のマイクロコンピュータでは、使用するＳＲＡＭのメモリ容量が少なくなって、チップ実装面積の点でも有利である。
【図面の簡単な説明】
【００４０】
【図１】初期値設定型のＳＲＡＭ回路を示す図である。
【図２】図１の単位メモリセルの構成を示す回路図である。
【図３】初期値付きＳＲＡＭを用いたマイクロコンピュータの回路構成を示すブロック図である。
【図４】図３のマイクロコンピュータのメモリマップ図である。
【図５】従来の技術を用いて図４と同様のメモリ機能を実現するために必要なメモリマップ図である。
【符号の説明】
【００４１】
１００  メモリセル
１０１，１０２  インバータ回路
１０３  ワード線
１０４，１０６  トランスファゲート
１０５，１０７  ビット線
１０８  アドレスデコーダ
１０９  読み出し書き込み回路
１１０  ＮＭＯＳトランジスタ
１１１  リセット端子
【図１】
2005085399.tif 000005
【図２】
2005085399.tif 000006
【図３】
2005085399.tif 000007
【図４】
2005085399.tif 000008
【図５】
2005085399.tif 000009