(57)【要約】【課題】メモリセルアレイの面積の増加を伴うことなく、メモリセル電流が有効に低減するように反転データを適切に記憶することが可能な半導体記憶装置を提供すること。【解決手段】時間的に連続した信号のサンプリングデータが予め選択的に反転されて記憶されたメモリセルアレイ（１１００）と、所定のアドレスシーケンスにおける連続した複数のサイクルにわたって前記メモリセルアレイから読み出された複数のデータに基づき該複数のデータの何れかを反転して出力するデータ反転処理部（１３００）とを備える。このデータ反転処理部（１３００）は、メモリセルアレイ（１１００）から複数のサイクルにわたって読み出された複数のデータの連続性を判定し、連続性がない場合には、例えば現在のサイクルでメモリセルアレイから読み出されたデータを反転して出力する。【選択図】図１
2007200485.tif 000002
【特許請求の範囲】
【請求項１】
時間的に連続した信号のサンプリングデータが予め選択的に反転されて記憶され、該データが所定のアドレスシーケンスに従って順次的に読み出されるメモリセルアレイと、
前記所定のアドレスシーケンスにおける連続した複数のサイクルにわたって前記メモリセルアレイから読み出された複数のデータの連続性を判定し、該判定の結果に基づき前記複数のデータの何れかを反転して出力する反転手段と
を備えた半導体記憶装置。
【請求項２】
前記反転手段は、
現在のサイクルの前のサイクルで前記メモリセルアレイから読み出された第１データを保持するレジスタと、
前記レジスタに保持された第１データと前記現在のサイクルで前記メモリセルアレイから新たに読み出された第２データとを比較し、これら第１データと第２データとの差分が所定値を超えているか否かを判定する判定回路と、
前記判定回路による判定結果が肯定的である場合、前記外部に出力すべきデータとして前記第１データまたは第２データの何れかを反転させる反転回路と、
前記判定回路による判定後に前記レジスタの内容を前記第２データに更新する更新回路と
を備えたことを特徴とする請求項１記載の半導体記憶装置。
【請求項３】
前記反転手段は、
現在のサイクルに対して２サイクル前のサイクルで前記メモリセルアレイから読み出された第１データを保持する第１レジスタと、
現在のサイクルに対して１サイクル前のサイクルで前記メモリセルアレイから読み出された第２データを保持する第２レジスタと、
前記第１レジスタに保持された第１データと前記第２レジスタに保持された第２データと前記現在のサイクルで前記メモリセルアレイから新たに読み出された第３データとを比較し、前記第２データの値が前記第１データの値と第３データの値との間にあるか否かを判定する判定回路と、
前記判定回路による判定結果が否定的である場合、前記外部に出力すべきデータとして前記第２データを反転させる反転回路と、
前記判定回路による判定後に前記第１レジスタの内容を前記第２データに更新すると共に前記第２レジスタの内容を前記第３データに更新する更新回路と
を備えたことを特徴とする請求項１記載の半導体記憶装置。
【請求項４】
前記所定値は、前記時間的に連続した信号のサンプリングレートあたりの最大変化量に相当する値であることを特徴とする請求項２記載の半導体記憶装置。
【請求項５】
前記現在のサイクルが前記所定のアドレスシーケンスの先頭サイクルである場合、前記反転手段は、前記メモリセルアレイから読み出されたデータを反転させないことを特徴とする請求項１ないし４の何れか１項記載の半導体記憶装置。
【請求項６】
前記サンプリングデータは、その反転データとの値の差分が、前記時間的に連続した信号のサンプリングレートあたりの最小変化量に相当する値よりも小さい場合、反転されずに前記メモリセルアレイに記憶されたことを特徴とする請求項１ないし５の何れか１項記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体記憶装置に関し、特に不揮発性メモリにおける消費電流を低減するための回路技術に関する。
【背景技術】
【０００２】
従来、不揮発性メモリとして、Ｍａｓｋ ＲＯＭ(Read Only Memory)、ＥＥＰＲＯＭ(Electrically Erasable and Programmable Read Only Memory)、フラッシュメモリ等が知られている。これらの不揮発性メモリは、メモリセルを流れる電流の有無に対応づけてデータを記憶する点で記憶原理が共通している。
【０００３】
図１０を参照して、Ｍａｓｋ ＲＯＭの一種を例にデータの記憶原理を説明する。同図において、メモリセルＭＣ０及びＭＣ１は、メモリセルアレイ中の同一行に属するメモリセルであって、各メモリセルを構成するＭＯＳトランジスタのソースがグランドＧＮＤに共通接続されると共に、ゲートがワード線ＷＬに共通接続されている。この例では、ワード線ＷＬがハイレベルに駆動され、メモリセルＭＣ０，ＭＣ１が選択された状態を表している。
【０００４】
また、一方のメモリセルＭＣ０を構成するＭＯＳトランジスタのドレインはビット線ＢＬ０に接続されており、他方のメモリセルＭＣ１を構成するＭＯＳトランジスタのドレインはビット線ＢＬ１に接続されていない。各トランジスタのドレインをビット線に接続するか否かは、記憶データの内容に対応しており、製造工程において例えばコンタクトを形成するか否かによって実現される。
【０００５】
ここで、ドレインがビット線ＢＬ０に接続されたメモリセルＭＣ０は、ビット線ＢＬ０とグランド線ＧＮＤとの間の電流パスを形成する。この場合、図示しないセンスアンプによってメモリセルＭＣ０を介して流れる電流が検出され、この検出結果に対応したデータ「０」が外部に出力される。
【０００６】
これに対し、メモリセルＭＣ１のドレインはビット線ＢＬ１に接続されていないため、メモリセルＭＣ１が選択されても、ビット線ＢＬ１とグランド線ＧＮＤとの間に電流パスが形成されない。この場合、図示しないセンスアンプによってメモリセルＭＣ１を流れる電流は検出されず、この検出結果に対応したデータ「１」が外部に出力される。
【０００７】
このように、不揮発性メモリでは、データの内容がメモリセルを流れる電流の有無に対応づけられているため、上述の例ではデータ「０」を記憶するメモリセルの数が多い程、全体としてメモリセル電流が増加し、消費電流を増加させる要因となる。
このような不都合を解決する従来技術として、本来のデータの反転データを記憶させることによって、上記記憶原理に基づいて発生するメモリセル電流を低減する技術が知られている（特許文献１参照）。
【０００８】
図１１を参照して、上記従来技術の要旨を説明する。
同図において、４つのサブアレイ３１１０，３１１１，３１１２，３１１３は、メモリセルアレイを構成し、各サブアレイには４ビット構成のデータＤ[3:0]の各ビットが記憶されている。また、この従来技術では、上記４つのサブアレイに加え、これらサブアレイのそれぞれと同容量のフラグ用のサブアレイ３１１４を更に備え、これにより４ビットのデータに対して１ビットのフラグが対応づけられた構成となっている。
【０００９】
ここで、「０」のビットを多く含む４ビットデータについては、その反転データの各ビットをデータ用のサブアレイ３１１０，３１１１，３１１２，３１１３に記憶しておくと共に、この反転データに対してフラグ「１」をフラグ用のサブアレイ３１１４に記憶しておく。このフラグ「１」は、上記データ用のサブアレイに記憶されたデータが反転データであることを示す。
【００１０】
また、「１」のビットを多く含む４ビットデータについては、反転せずにそのまま上記データ用のサブアレイ３１１０，３１１１，３１１２，３１１３に記憶しておき、この４ビットデータに対してフラグ「０」をフラグ用のサブアレイ３１１４に記憶しておく。このフラグ「０」は、上記データ用のサブアレイに記憶された４ビットのデータが反転データではないことを示す。
【００１１】
データ読出回路３３００がメモリセルアレイから４ビットデータを読み出す際、その４ビットデータに対応するフラグをフラグ読出回路３４００がフラグ用のサブアレイ３１１４から読み出し、これをデータ読出回路３３００が参照する。ここで、フラグが「１」であれば、データ読出回路３３００は、メモリセルアレイから読み出された４ビットデータを反転させてＤ[3:0]として出力し、フラグが「０」であれば、反転させずに出力する。
以上のように、上記従来技術では、読み出し時にフラグを参照することにより反転データを識別して本来のデータに戻している。
【特許文献１】特開平７−３３４９９１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上述の従来技術によれば、メモリセルアレイから読み出したデータが反転データであるか否かを識別するためのフラグをデータに対応づけて記憶する必要がある。この例では、１つのデータに対して１ビットのフラグを必要とするので、全データに対しては、データ用の個々のサブアレイと同容量のフラグ用のサブアレイを必要とし、データ用のサブアレイのほかに、フラグ用のサブアレイを余分に備える必要がある。従って、メモリセルアレイの面積が増加するという問題があった。
【００１３】
また、フラグ用のサブアレイの容量を抑制する手法として、１本のワード線に接続される１行分の複数のメモリセルに対して１ビットのフラグを設け、この複数のメモリセルに記憶されたデータを単位として反転データか否かを判定する手法が考えられる。しかし、この手法によれば、１行分のメモリセルに記憶される「０」と「１」の分布に応じて適切に反転データを設定することができず、従ってメモリセル電流を有効に低減させることが困難である。
【００１４】
本発明は、上記事情に鑑みてなされたものであり、メモリセルアレイの面積の増加を伴うことなく、メモリセル電流が有効に低減するように反転データを適切に記憶し、読出し時に反転データを的確に識別することが可能な半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明に係る半導体記憶装置は、時間的に連続した信号のサンプリングデータが予め選択的に反転されて記憶され、該データが所定のアドレスシーケンスに従って順次的に読み出されるメモリセルアレイ（図１のメモリセルアレイ１１００に相当する構成要素）と、前記所定のアドレスシーケンスにおける連続した複数のサイクルにわたって前記メモリセルアレイから読み出された複数のデータの連続性を判定し、該判定の結果に基づき前記複数のデータの何れかを反転して出力する反転手段（図２のデータ反転処理部１３００，図７のデータ反転処理部２３００に相当する構成要素）とを備える。
【００１６】
この構成によれば、所定のアドレスシーケンスの複数のサイクルにわたってメモリセルアレイから順次的に読み出される複数のデータの連続性から反転データを識別する。即ち、サンプリング対象の信号が時間的に連続していれば、そのサンプリングデータも該信号の変化量に応じた連続性を有する。このサンプリングデータを意図的に反転させたデータは、元のサンプリングデータとの連続性が損なわれる。本発明は、この原理に着目してメモリセルアレイに記憶された反転データを識別する。
【００１７】
即ち、メモリセルアレイに記憶されたデータが時間的に連続した信号のサンプリングデータであり、連続した複数のサイクルにわたってメモリセルアレイから順次読み出される複数のデータの値が連続性を有していれば、これらのデータの中に反転データが含まれていないことになる。この場合、メモリセルアレイから読み出されたデータを反転せずに出力する。これに対し、上記複数のデータ間に連続性がなければ、これらのデータの中に反転データが含まれていることになる。この場合、反転データを反転して出力する。このようにデータの連続性を判定することにより、フラグを使用することなく、反転データを識別して反転する。従って、この構成によれば、メモリセルアレイの面積の増加を伴うことなく、メモリセル電流が有効に低減するように反転データを適切にメモリセルアレイに記憶し、読出しの際に反転データを的確に識別して元のデータに戻すことが可能になる。
【００１８】
上記半導体記憶装置において、例えば、前記反転手段は、現在のサイクルの前のサイクルで前記メモリセルアレイから読み出された第１データを保持するレジスタ（図２の１３２０）と、前記レジスタに保持された第１データと前記現在のサイクルで前記メモリセルアレイから新たに読み出された第２データとを比較し、これら第１データと第２データとの差分が所定値を超えているか否かを判定する判定回路（図２の１３３０）と、前記判定回路による判定結果が肯定的である場合、前記外部に出力すべきデータとして前記第１データまたは第２データの何れかを反転させる反転回路（図２の１３４０）と、前記判定回路による判定後に前記レジスタの内容を前記第２データに更新する更新回路とを備える。
【００１９】
上記半導体記憶装置において、例えば、前記反転手段は、現在のサイクルに対して２サイクル前のサイクルで前記メモリセルアレイから読み出された第１データを保持する第１レジスタ（図７の２３３０）と、現在のサイクルに対して１サイクル前のサイクルで前記メモリセルアレイから読み出された第２データを保持する第２レジスタ（図７の２３２０）と、前記第１レジスタに保持された第１データと前記第２レジスタに保持された第２データと前記現在のサイクルで前記メモリセルアレイから新たに読み出された第３データとを比較し、前記第２データの値が前記第１データの値と第３データの値との間にあるか否かを判定する判定回路（図７の２３４０）と、前記判定回路による判定結果が否定的である場合、前記外部に出力すべきデータとして前記第２データを反転させる反転回路（図７の２３５０）と、前記判定回路による判定後に前記第１レジスタの内容を前記第２データに更新すると共に前記第２レジスタの内容を前記第３データに更新する更新回路とを備える。
【００２０】
上記半導体記憶装置において、例えば、前記所定値は、前記時間的に連続した信号のサンプリングレートあたりの最大変化量に相当する値であることを特徴とする。
上記半導体記憶装置において、例えば、前記現在のサイクルが前記所定のアドレスシーケンスの先頭サイクルである場合、前記反転手段は、前記メモリセルアレイから読み出されたデータを反転させないことを特徴とする。
上記半導体記憶装置において、例えば、前記サンプリングデータは、その反転データとの値の差分が、前記時間的に連続した信号のサンプリングレートあたりの最小変化量に相当する値よりも小さい場合、反転されずに前記メモリセルアレイに記憶されたことを特徴とする。
【発明の効果】
【００２１】
本発明によれば、フラグビットを要することなく、記憶データが反転データか否かを識別することが可能になる。
従って、メモリセルアレイの面積の増加を伴うことなく、メモリセル電流が有効に低減するように反転データを適切に記憶して読み出すことが可能になる。
【００２２】
また、本発明によれば、レジスタに保持された第１データと現在のサイクルで読み出された第２データとを比較し、これら第１データと第２データとの差分が所定値を超えているか否かを判定するようにしたので、連続した複数のサイクルにわたってメモリセルアレイから読み出された複数のデータの連続性を判定することが可能になる。
【００２３】
さらに、本発明によれば、２サイクル前の第１データと１サイクル前の第２データと現在のサイクルの第３データとを比較し、第２データの値が第１データの値と第３データの値との間にあるか否かを判定するようにしたので、上記のような所定値を導入することなく、連続した３つのサイクルにわたって読み出された複数のデータのみに基づき、データの連続性を判定することが可能になる。
【発明を実施するための最良の形態】
【００２４】
以下、図面を参照しながら、本発明の各実施形態を詳細に説明する。
[第１実施形態]
図１に、本発明の第１実施形態に係る半導体記憶装置の構成を概略的に示す。この半導体記憶装置は、４ビット(Bit0〜Bit3)構成のデータ（以下、「４ビットデータ」と称す）を記憶したＲＯＭであり、この４ビットデータの各ビットに対応するサブアレイ１１１０，１１１１，１１１２，１１１３からなるメモリセルアレイ１１００と、センスアンプ群を含むデータ読出回路１２００と、本発明の特徴部に係るデータ反転処理部１３００とを備えて構成される。
【００２５】
また、特に図示しないが、外部から供給されるアドレスに基づく所定のアドレスシーケンスに従ってメモリセルアレイ１１００中の該当メモリセルを順次選択するためのロウデコーダ及びカラムデコーダを含むアドレス回路系を更に備え、このアドレス回路系と上記データ読出回路１２００とにより、メモリセルアレイ１１００に記憶されたデータが順次的に読み出されるようになっている。
【００２６】
図２に、データ反転処理部１３００の詳細構成を示す。
このデータ反転処理部１３００は、バッファ１３１０と、レジスタ１３２０と、連続性判定回路１３３０と、データ反転回路１３４０とから構成され、バッファ１３１０及びレジスタ１３２０には、上記メモリセルアレイ１１００から読み出された４ビットデータＤ[3:0]が入力される。
【００２７】
バッファ１３１０の出力データＮ[3:0]とレジスタ１３２０の出力データＰ[3:0]は、連続性判定回路１３３０に入力される。この連続性判定回路１３３０の判定結果ＣＯＵＴと上記バッファ１３１０の出力データＮ[3:0]はデータ反転回路１３４０に供給され、このデータ反転回路１３４０の出力データＱ[3:0]はデータ反転処理部１３００の出力データとなっている。
特に、図示しないが、レジスタ１３２０の内容を更新するための更新回路を更に備えており、後述するように、連続性判定回路１３３０による判定後の適切なタイミングでレジスタ１３２０の内容を更新する。
【００２８】
次に、図３ないし図５を参照して、メモリセルアレイ１１００に予め記憶されたデータについて説明する。
上記メモリセルアレイ１１００に記憶されたデータは、図３に例示するような時間的に連続した信号波形Ａを有する信号（例えば音声信号）を所定のサンプリングレートでサンプリングして得られたデータ（以下、「サンプリングデータ」と称す）であって、前述の図１０に例示したメモリセル電流を抑制するように反転データを含んでいる。
【００２９】
図４に、図３において符号Ｒで示す領域を拡大した信号波形Ａ（上段）と、そのサンプリングデータ（下段）とを示す。
図４に示す例では、信号波形Ａの振幅「１５」に対してサンプリングデータ「１１１１」が得られ、振幅「１４」に対してサンプリングデータ「１１１０」が得られ、以下、振幅「１３」ないし振幅「０」に対して各サンプリングデータが得られている。図４のサンプリングデータの左端に示す「重み」は、２進表記のサンプリングデータを１０進表記に変換する際の各ビットの重み係数を表し、重み「１」のビットがサンプリングデータのＬＳＢに対応し、重み「８」のビットがそのＭＳＢに対応している。
【００３０】
信号波形Ａをサンプリングする際のサンプリングレートは、信号波形Ａの変化量に対して充分に短い周期でサンプリングが行われるように適切に設定される。
このようにして得られたサンプリングデータは、そのままメモリセルアレイ１１００に記憶されるのではなく、以下に説明するように、前述のメモリセル電流を有効に低減させるために、予め選択的に反転されてメモリセルアレイ１１００に記憶される。
【００３１】
図４及び図５を参照して、メモリセルアレイ１１００に記憶されるサンプリングデータの反転方法について説明する。
前述した図１０に示す記憶原理によれば、データ中に「０」を多く含むほど、メモリセル電流が増加する。図４に示す例では、「０」を多く含むサンプリングデータは、振幅「８」のサンプリングデータ「１０００」、振幅「４」のサンプリングデータ「０１００」、振幅「２」のサンプリングデータ「００１０」、振幅「１」のサンプリングデータ「０００１」、振幅「０」のサンプリングデータ「００００」の５個のデータである。これらのサンプリングデータを選択的に反転させて記憶すれば、全体として「０」の個数が減少するため、メモリセル電流を低減させることができる。
【００３２】
図５に、上記サンプリングデータを選択的に反転して得られるデータの一例を示す。図５の上段に示す信号波形Ａは上記図４に示すものと同一であり、図５の下段には図４の下段に示すサンプリングデータを選択的に反転させたものが示されている。図５に示す例では、図４に示す振幅「４」、「２」、「１」、「０」に対応するサンプリングデータが反転され、図５に点Ｐ１，Ｐ２，Ｐ３，Ｐ４で示されるように、振幅「１１」、「１３」、「１４」、「１５」に対応するデータに変換されている。
【００３３】
具体的には、この例では次のように変換されている。
「０１００」（振幅４）→「１０１１」（振幅１１）
「００１０」（振幅２）→「１１０１」（振幅１３）
「０００１」（振幅１）→「１１１０」（振幅１４）
「００００」（振幅０）→「１１１１」（振幅１５）
【００３４】
このように「０」を多く含む所定のサンプリングデータを選択的に反転させると、その反転データの値は、図５の上段に示すように、信号波形Ａの本来の振幅値から大幅に移動し、他のサイクルのサンプリングデータとの連続性がなくなる。そこで、本実施形態では、この点に着目し、読み出しの際にデータの連続性を判定することにより、反転データを識別して反転することにより、本来のデータに戻す。
【００３５】
なお、一般に、サンプリングデータは離散値であるから、各サンプリングデータの値は厳密には連続していない。しかし、本実施形態では、２つの連続したサイクル間のサンプリングデータの変化量が元の信号波形Ａのサンプリングレートあたりの最大変化量に相当する値を超えていなければ、これら２つのサンプリングデータは連続性を有していると定義する。換言すると、サンプリングデータの変化量が、元の信号波形Ａの上記最大変化量を超えていなければ、サンプリングデータの変化は、時間的に連続した元の信号の変化に基づくものであって、記憶データを反転させたことによるものではないとみなす。
【００３６】
本実施形態では、上記連続性の判定は、２つの連続したサイクルにわたってメモリセルアレイ１１００から読み出された２つのデータの差分が所定値を超えているか否かを判定することにより行われる。この所定値は、上記信号波形Ａの最大変化量に相当する値に設定される。即ち、現在のサイクルで読み出されたデータの値が前のサイクルで読み出されたデータの値から波形信号Ａの最大変化量を超えて変化した場合、これら２つのデータの間の変化は信号波形Ａの変化に基づくものではないと考え、この場合、これら２つのデータの間には連続性がないと判定し、現在のサイクルで読み出されたデータを反転データとして識別する。
【００３７】
なお、図５の例では、「０」のビットを多く含む振幅「８」のサンプリングデータ「１０００」については反転の対象とせず、このサンプリングデータはそのままメモリセルアレイに記憶されている。その理由は、振幅「８」に対応するサンプリングデータ「１０００」の反転データは「０１１１」（振幅７）となり、この反転データが表す振幅値（＝７）が元のサンプリングデータが表す振幅値（＝８）に極めて近接した値となり、上記所定値による連続性の判定が困難になるためである。
【００３８】
また、この例では、「０」のビットを多く含む振幅「８」のサンプリングデータ「１０００」は、その反転データ「０１１１」との値の差分が、サンプリングされる上記サンプリングレートあたりの信号の最小変化量に相当する。このように、サンプリングデータとその反転データとの値の差分が上記最小変化量に相当する値以下となる場合にも、そのサンプリングデータを反転させずにメモリセルアレイ１１００に記憶させる。その理由は、このようなサンプリングデータについては、そもそも、元のデータと反転データとの間の差分が、信号波形Ａの変化によるものであるのか、データを反転したことによるものであるのかを区別できないからである。
以上の考え方に基づき、メモリセルアレイ１１００には、メモリセル電流を有効に低減させるように、サンプリングデータが予め選択的に反転されて記憶されている。
【００３９】
次に、図６に示すタイミングチャートを参照して、本実施形態に係る半導体記憶装置の読出し動作を説明する。
図１において、所定のアドレスシーケンスに従って時刻ｔ０で先頭サイクルＳ０のアドレスが外部から供給されると、このアドレスに該当する上記メモリセルアレイ１１００中のメモリセルが選択される。データ読出回路１２００は、先頭サイクルＳ０で選択されたメモリセルの記憶データＤＡＴＡ（０）をデータＤ[3:0]として読み出してデータ反転処理部１３００に供給する。
【００４０】
図２において、データ反転処理部１３００内のバッファ１３１０は、上記データＤ[3:0]として供給されたデータＤＡＴＡ（０）をデータＮ[3:0]として出力する。また、レジスタ１３２０は、データＤ[3:0]として供給された上記データＤＡＴＡ（０）を保持してデータＰ[3:0]として出力する。この先頭サイクルＳ０では、例外的に、連続性判定回路１３３０はデータの連続性に関する判定を行わない。そして、データ反転回路１３４０は、バッファ１３１０からデータＮ[3:0]として入力するＤＡＴＡ（０）を反転させず、このデータＤＡＴＡ（０）を、外部に出力すべきデータＱ[3:0]としてそのまま出力する。
【００４１】
続いて、時刻ｔ１で次のサイクルＳ１のアドレスが外部から供給されると、データ反転処理部１３００内のバッファ１３１０は、上記データＤ[3:0]としてメモリセルアレイ１１００から新たに読み出されたデータＤＡＴＡ（１）をデータＮ[3:0]として出力すると共に、レジスタ１３２０は、前のサイクルＳ０のデータＤＡＴＡ（０）を継続して保持する。
【００４２】
続いて、連続性判定回路１３３０は、時刻ｔ２で、レジスタ１３２０に保持された前のサイクルＳ０のデータＤＡＴＡ（０）と現在のサイクルＳ１でメモリセルアレイ１１００から新たに読み出されたＤＡＴＡ（１）とを比較し、これらデータＤＡＴＡ（０）の値とデータＤＡＴＡ（１）の値との差分が前記所定値（信号波形Ａのサンプリングレートあたりの最大変化量に相当する値）を超えているか否かを判定し、その判定結果ＣＯＵＴを出力する。
【００４３】
続いて、データ反転回路１３４０は、連続性判定回路１３３０による判定結果ＣＯＵＴが否定的（Ｎ）である場合、即ち、データＤＡＴＡ（０）の値とデータＤＡＴＡ（１）の値との差分が前記所定値を超えておらず、データＤＡＴＡ（０）とデータＤＡＴＡ（１）との間にデータの連続性が認められる場合、バッファ１３１０からデータＮ[3:0]として入力するデータＤＡＴＡ（１）を反転させず、このデータＤＡＴＡ（１）と同値のデータＤＡＴＡ’（１）をデータＱ[3:0]として出力する。
【００４４】
逆に、連続性判定回路１３３０による判定結果ＣＯＵＴが肯定的（Ｙ）である場合、即ち、データＤＡＴＡ（０）の値とデータＤＡＴＡ（１）の値との差分が前記所定値を超えており、データＤＡＴＡ（０）とデータＤＡＴＡ（１）との間に連続性が認められない場合、データ反転回路１３３０は、バッファ１３１０からデータＮ[3:0]として入力するデータＤＡＴＡ（１）を反転させ、データＤＡＴＡ（１）の反転データと同値のデータＤＡＴＡ’（１）をデータＱ[3:0]として出力する。
【００４５】
続いて、連続性判定回路１３３０による上記判定後、時刻ｔ３で図示しない更新回路によりレジスタ１３２０の内容を現在のサイクルＳ１のデータＤＡＴＡ（１）に更新する。ここで、前のサイクルＳ０のデータＤＡＴＡ（０）と現在のサイクルＳ１のデータＤＡＴＡ（１）との間に連続性が認められない場合、即ち、現在のサイクルＳ１のデータＤＡＴＡ（１）が反転データであると判定された場合、更新回路は、このデータＤＡＴＡ（１）を反転させて元のデータに戻し、この元のデータでレジスタ１３２０の内容を更新する。
【００４６】
このように反転データを元のデータに戻してレジスタ１３２０に保持させる理由は、レジスタ１３２０に反転データを保持させると、この反転データに対して次のサイクルのデータの連続性が判定されることになり、図４に示す信号波形Ａのサンプリングデータに対する連続性を判定することにならないからである。
【００４７】
次のサイクルＳ２以後は、上述のサイクルＳ１と同様に動作する。即ち、現在のサイクルに対して１サイクル前のデータをレジスタ１３２０に保持させ、データ反転処理部１３００は、所定のアドレスシーケンスにおける現在とその前の連続した２つのサイクルＳｎ，Ｓｎ−１（ｎは１以上の自然数）にわたってメモリセルアレイ１１００から読み出された２つのデータＤＡＴＡ（ｎ）及びＤＡＴＡ（ｎ−１）に基づきデータの連続性を判定し、この判定結果に基づいて、現在のサイクルＳｎのデータＤＡＴＡ（ｎ）を適応的に反転させて出力する。
以上で、第１実施形態を説明した。
【００４８】
[第２実施形態]
以下、図７ないし図９を参照して、本発明の第２実施形態を説明する。
本実施形態に係る半導体記憶装置は、上述の図１に示す第１実施形態のデータ反転処理部１３００に代えて、図７に示すデータ反転処理部２３００を備え、連続した３つのサイクルの読み出しデータに基づきデータの連続性に関する判定を行う。その他の構成は上述の第１実施形態と同様であり、必要に応じて図１を援用する。
【００４９】
図７に示すように、データ反転処理部２３００は、バッファ２３１０と、レジスタ２３２０，２３３０と、連続性判定回路２３４０と、データ反転回路２３５０とを備えて構成される。バッファ２３１０及びレジスタ２３２０，２３３０には、上記メモリセルアレイ１１００から読み出された４ビットデータＤ[3:0]が供給される。
【００５０】
バッファ２３１０の出力データＮ[3:0]とレジスタ２３２０の出力データＰ０[3:0]とレジスタ２３３０の出力データＰ１[3:0]は連続性判定回路２３４０に入力される。この連続性判定回路２３４０の判定結果ＣＯＵＴと上記レジスタ２３２０の出力データＰ０[3:0]はデータ反転回路２３５０に入力される。
特に、図示しないが、レジスタ２３２０，２３３０の内容を更新するための更新回路を更に備え、後述するように、適切なタイミングでこれらレジスタの内容を更新する。
【００５１】
ここで、図８を参照して、本実施形態におけるデータ連続性の判定原理を説明する。
前述の第１実施形態で述べたように、サンプリングデータは離散値であるから、各サンプリングデータの値は厳密には連続していない。しかし、図８に例示するように、点Ｐ１１，Ｐ１２，Ｐ１３で示される３つの連続したサンプリングサイクルにおけるサンプリングデータの値が信号波形Ａ上に位置していれば、中間の点Ｐ１２で示されるデータの値は、点Ｐ１１で示されるデータと点Ｐ１３で示されるデータとの間の値をとる。この場合、点Ｐ１１で示されるデータの値と点Ｐ１３で示されるデータの値との間に極値が存在しないと考えることができ、簡易的に、これらのデータが連続性を有すると考えることができる。そこで、本実施形態では、このような３つのデータ間の関係からデータの連続性を判定する。
【００５２】
このような３つのデータ間の関係からデータの連続性を判定する手法の例としては、隣り合う２つのデータ値の差分の極性から判定する手法がある。例えば、点Ｐ１１のデータの値から点Ｐ１２のデータの値を減算した差分の極性と、点Ｐ１２のデータの値から点Ｐ１３のデータの値を減算した差分の極性とが一致すれば、点Ｐ１１と点Ｐ１３との間には極値が存在せず、点Ｐ１２の値は点Ｐ１１と点Ｐ１３との間に存在することになる。逆に上記極性が不一致であれは、点Ｐ１２は点Ｐ１１と点Ｐ１３との間に存在しないことになる。
【００５３】
なお、上述の判定手法によれば、例えば、図８に示す点Ｐ１２が信号波形Ａの頂点に位置する場合、信号波形Ａが連続しているにもかかわらず、サンプリングデータが連続してないと判定される不都合がある。この場合、３つの点Ｐ１１，Ｐ１２，Ｐ１３の各データの値は極めて接近した値となり、これらの差分は小さくなる。そこで、上記不都合を回避するために、データ間の差分が所定値より小さい場合には、これらのデータは連続性を有すると判定するようにすればよい。
【００５４】
次に、図９のタイミングチャートを参照して、本実施形態に係る半導体記憶装置の動作を説明する。
援用する図１において、所定のアドレスシーケンスに従って、時刻ｔ１０で先頭サイクルＳ１０のアドレスが外部から供給されると、上記メモリセルアレイ１１００からデータＤ[3:0]としてデータＤＡＴＡ（０）が読み出されてデータ反転処理部２３００に供給される。
【００５５】
図７において、データ反転処理部２３００内のバッファ２３１０は、上記データＤ[3:0]としてメモリセルアレイ１１００から供給されたデータＤＡＴＡ（０）をデータＮ[3:0]として出力する。また、レジスタ２３２０，２３３０は、データＤ[3:0]として供給された上記データＤＡＴＡ（０）を保持してデータＰ０[3:0]，Ｐ１[3:0]として出力する。この先頭サイクルＳ０と後述する次のサイクルＳ１１では、例外的に、連続性判定回路２３４０はデータの連続性に関する判定を行わず、データ反転回路２３５０は、レジスタ２３２０からデータＰ０[3:0]として入力するＤＡＴＡ（０）をデータＱ[3:0]としてそのまま出力する。
【００５６】
続いて、時刻ｔ１１で次のサイクルＳ１１のアドレスが外部から供給されると、バッファ２３１０は、メモリセルアレイ１１００から新たに読み出されてデータＤ[3:0]として供給されるデータＤＡＴＡ（１）をデータＮ[3:0]として出力し、レジスタ２３２０は、上記データＤＡＴＡ（１）を保持してデータＰ０[3:0]として出力する。このとき、レジスタ２３３０は、前のサイクルＳ１０のデータＤＡＴＡ（０）の保持を継続する。このサイクルＳ１１でも先頭サイクルＳ１０と同様に、連続性判定回路２３４０はデータの連続性に関する判定を行わず、データ反転回路２３５０は、レジスタ２３２０からデータＰ０[3:0]として入力する前のサイクルＳ１０のデータＤＡＴＡ（０）をデータＱ[3:0]として維持する。
【００５７】
続いて、時刻ｔ１２で次のサイクルＳ１２のアドレスが外部から供給されると、バッファ２３１０は、現在のサイクルＳ１２でデータＤ[3:0]としてメモリセルアレイ１１００から新たに読み出されたデータＤＡＴＡ（３）をデータＮ[3:0]として出力する。これに対し、レジスタ２３２０は、１サイクル前のサイクルＳ１１のデータＤＡＴＡ（１）を継続して保持し、レジスタ２３３０は、２サイクル前のサイクルＳ１０のデータＤＡＴＡ（０）を継続して保持する。
【００５８】
続いて、連続性判定回路２３４０は、現在のサイクルＳ１２の時刻ｔ１３で、レジスタ２３２０に保持されたサイクルＳ１１のデータＤＡＴＡ（１）と、レジスタ２３３０に保持されたサイクルＳ１０のＤＡＴＡ（０）と、現在のサイクルＳ１２のサイクルのＤＡＴＡ（２）とを比較し、データＤＡＴＡ（１）の値がデータＤＡＴＡ（０）とデータＤＡＴＡ（２）との間の値であるか否かを判定し、その判定結果ＣＯＵＴを出力する。
【００５９】
続いて、データ反転回路２３５０は、連続性判定回路２３４０による判定結果ＣＯＵＴが肯定的（Ｙ）である場合、即ち、前々サイクルＳ１０のデータＤＡＴＡ（０）の値と現在のサイクルＳ１２のデータＤＡＴＡ（２）の値との間に前のサイクルＳ１１のデータＤＡＴＡ（１）の値がある場合、これらのデータ間に連続性があると判定し、レジスタ２３２０からデータＰ０[3:0]として出力された前のサイクルＳ１１のデータＤＡＴＡ（１）と同値のデータＤＡＴＡ’（１）をデータＱ[3:0]として出力する。
【００６０】
逆に、連続性判定回路２３４０による判定結果ＣＯＵＴが否定的（Ｎ）である場合、即ち、各データ間に連続性が認められない場合、データ反転回路２３５０は、レジスタ２３２０からデータＰ０[3:0]として出力された前のサイクルＳ１１のデータＤＡＴＡ（１）を反転させたデータＤＡＴＡ’（１）をデータＱ[3:0]として出力する。
【００６１】
そして、連続性判定回路２３４０による判定後、時刻ｔ１４で図示しない更新回路は各レジスタの内容を更新する。具体的には、レジスタ２３２０にそれまで保持されていたデータＤＡＴＡ（１）をレジスタ２３３０に転送させると共に、それまでバッファ２３１０に供給されていたデータＤＡＴＡ（２）をレジスタ２３２０に転送させる。ここで、上述の第１実施形態と同様に、データ間に連続性が認められないと判定された場合、即ちメモリセルアレイから読み出したデータに反転データが存在する場合、その後のサイクルにおける判定に備えて、反転データを元のデータに戻してレジスタ２３２０，２３３０の内容を更新する。
【００６２】
次のサイクルＳ１３以後は、上述のサイクルＳ１２と同様に動作し、データ反転処理部２３００は、所定のアドレスシーケンスにおける連続した３つのサイクルＳｎ，Ｓｎ−１，Ｓｎ−２（ｎ；自然数）にわたってメモリセルアレイ１１００から読み出された３つのデータＤＡＴＡ（ｎ），ＤＡＴＡ（ｎ−１），ＤＡＴＡ（ｎ−２）に基づき、このうちのサイクルＳ１１のデータＤＡＴＡ（ｎ）を適応的に反転させて出力する。
以上で、第２実施形態を説明した。
【００６３】
以上、本発明の実施形態を説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の変形が可能である。
例えば、上述の実施形態では、サンプリングデータの値とその反転データの値との差分がサンプリング対象の信号波形Ａの最小変化量に相当する値以下となる場合には、そのサンプリングデータを反転させずにメモリセルアレイ１１００に記憶させるものとしたが、これを反転させて記憶させてもよい。この場合、データの連続性に関する判定を正しく行うことはできなくなるが、サンプリングデータが例えば音声データである場合、仮に読み出しの際に誤判定によりデータが反転されなかったとしても、これによる出力データの誤差は最小となるため、この誤差による音声の違いを人間の聴覚で聞き分けることは困難であり、このような用途では実質的な弊害は少ない。
【００６４】
また、上述の第１実施形態では、現在のサイクルのデータを適応的に反転して出力するものとして規定したが、これに限定されることなく、前サイクルのデータを反転するものとしてもよい。上述の第２実施形態では、前のサイクルのデータを適応的に反転して出力するものとして規定したが、これに限定されることなく、現在または前々サイクルのデータを反転するものとしてもよい。即ち、本発明によれば、データの連続性を判定する際に使用する複数のデータのうち、何れのデータを出力データとして規定することも可能である。
【００６５】
また、上述の実施形態では、電流パスを形成するメモリセルの記憶データを「０」に対応づけて説明したが、これに限定されることなく、このメモリセルの記憶データを「１」に対応づけてもよい。消費電流が少なくなるように反転データを構成して記憶させればよい。この場合においても、本発明によれば、上述の実施形態と同様に、データの連続性を適切に判定することができる。
【００６６】
さらに、上述の実施形態では、メモリセルアレイに記憶されるデータの例として、音声信号の信号波形Ａをサンプリングしたデータを説明したが、これに限定されることなく、画像信号などの他の信号であってもよく、読み出した時に連続した信号であれば、どのような信号をサンプリングしたデータであってもよい。
【００６７】
さらにまた、データの連続性の判定手法は、上述の実施形態に限定されず、元のデータ（反転前のデータ）の値と、その反転データの値との違いに基づくものであれば、どのような判定手法を採用してもよい。
【図面の簡単な説明】
【００６８】
【図１】本発明の第１実施形態に係る半導体記憶装置の構成を概略的に示すブロック図である。
【図２】本発明の第１実施形態に係る半導体記憶装置を構成するデータ反転処理部の詳細を示すブロック図である。
【図３】本発明の第１実施形態に係るサンプリングデータの元信号の波形の一例を示す波形図である。
【図４】本発明の第１実施形態に係るサンプリングデータを説明するための説明図である。
【図５】本発明の第１実施形態に係るサンプリングデータの反転方法を説明するための説明図である。
【図６】本発明の第１実施形態に係る半導体記憶装置の動作を説明するためのタイミングチャートである。
【図７】本発明の第２実施形態に係る半導体記憶装置の構成を概略的に示すブロック図である。
【図８】本発明の第２実施形態に係るデータの連続性に関する判定方法を説明するための波形図である。
【図９】本発明の第２実施形態に係る半導体記憶装置の動作を説明するためのタイミングチャートである。
【図１０】半導体記憶装置の一種である不揮発性メモリの記憶原理を説明するための説明図である。
【図１１】従来技術に係る半導体記憶装置を説明するためのブロック図である。
【符号の説明】
【００６９】
１１００；メモリセルアレイ、１２００；データ読出回路、１３００；データ反転処理部、１３１０；バッファ、１３２０；レジスタ、１３３０；連続性判定回路、１３４０；データ反転回路、２３００；データ反転処理部、２３１０；バッファ、２３２０，２３３０；レジスタ、２３４０；連続性判定回路、２３５０；データ反転回路。
【図１】
2007200485.tif 000003
【図２】
2007200485.tif 000004
【図３】
2007200485.tif 000005
【図４】
2007200485.tif 000006
【図５】
2007200485.tif 000007
【図６】
2007200485.tif 000008
【図７】
2007200485.tif 000009
【図８】
2007200485.tif 000010
【図９】
2007200485.tif 000011
【図１０】
2007200485.tif 000012
【図１１】
2007200485.tif 000013