(57)【要約】【課題】  データの切り替えによるノイズの発生量が多くなり、このようなノイズによる動作マージンの低減が問題となる。【解決手段】  メモリデバイス３１００への書込みデータが特定のパターンを含む場合にその特定のパターンを、反転するビットの数がより少ない省ノイズデータに変換し（３０３４）、その変換内容を示すコード（３０３２）とともに、その変換されたデータをメモリデバイス３１００に出力する。メモリデバイス３１００からのデータの読出し時、データの変換内容を示すコードとともに、当該データを読み出し、そのコードが、データが変換されていることを表している場合に特定のパターンを選択し、コードがデータが変換されていることを表していない場合に、入力したデータを読出しデータとして選択する（３０２２）。【選択図】  図１
2008102705.tif 000002
【特許請求の範囲】
【請求項１】
メモリデバイスへのアクセスを制御するメモリアクセス制御回路であって、
前記メモリデバイスへの書込みデータが特定のパターンを含むか否かを判別する判別手段と、
前記判別手段により判別された前記特定のパターンを、反転するビットの数がより少ない省ノイズデータに変換する変換手段と、
前記変換手段による変換内容を示すコードとともに、前記変換手段により変換されたデータを前記メモリデバイスに出力する書込みデータ出力手段と、
を有することを特徴とするアクセス制御回路。
【請求項２】
メモリデバイスへのアクセスを制御するメモリアクセス制御回路であって、
前記メモリデバイスからのデータの読出し時、前記データの変換内容を示すコードとともに、当該データを読み出すデータ入力手段と、
前記コードに基づいて当該データを特定のパターンに変換する変換手段と、
前記コードが前記データが変換されていることを表しているか否かに応じて、前記データ入力手段で入力した前記データ、或は前記変換手段により変換された前記特定のパターンを読み出しデータとして選択する選択手段と、
を有することを特徴とするアクセス制御回路。
【請求項３】
前記メモリデバイスは、
前記コードに基づいて、入力したデータを前記特定のパターンに変換する変換手段と、
前記コードが前記入力したデータが変換されていることを表しているか否かに応じて、前記入力したデータ、或は前記変換手段により変換された前記特定のパターンを選択してメモリに書き込む手段と、
を有することを特徴とする請求項１に記載のアクセス制御回路。
【請求項４】
前記メモリデバイスは、
メモリから読み出したデータが特定のパターンを含むか否かを判別する判別手段と、
前記判別手段により判別された前記特定のパターンを、反転するビットの数がより少ない省ノイズデータに変換する変換手段と、
前記変換手段による変換内容を示すコードとともに、前記変換手段により変換されたデータを前記メモリアクセス制御回路に出力する手段と、
を有することを特徴とする請求項２に記載のアクセス制御回路。
【請求項５】
メモリデバイスへのアクセスを制御するメモリアクセス制御方法であって、
前記メモリデバイスへの書込みデータが特定のパターンを含む場合に、前記特定のパターンを、反転するビットの数がより少ない省ノイズデータに変換する変換工程と、
前記変換工程による変換内容を示すコードとともに、前記変換工程で変換されたデータを前記メモリデバイスに出力する書込みデータ出力工程と、
前記メモリデバイスからのデータの読出し時、前記データの変換内容を示すコードとともに、当該データを読み出すデータ入力工程と、
前記コードが前記データが変換されていることを表している場合に前記特定のパターンを選択し、前記コードが前記データが変換されていることを表していない場合に、前記データ入力工程で入力した前記データを読出しデータとして選択する選択工程と、
を有することを特徴とするアクセス制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリデバイスにアクセスするメモリアクセス制御回路及びその方法に関するものである。
【背景技術】
【０００２】
半導体プロセスの向上により、ＬＳＩの集積度、動作周波数が飛躍的に高くなり、このＬＳＩを使用した機器の処理能力も飛躍的に向上している。動作周波数が高くなることによりＬＳＩの電磁放射も大きくなり、電磁妨害ＥＭＩ（Electro Magnetic Interference）の対策が困難になってきている。特にＬＳＩの動作周波数が高くなると動作用のクロック信号の周波数を高くなり、そのクロック信号に含まれる高周波での高調波成分が大きくなり、高調波成分の放射量が増大する。
【０００３】
このような電磁妨害対策として、スペクトラム拡散クロックジェネレータＳＳＣＧ（Spread Spectrum Clock Generator）が使用されている。このＳＳＣＧは、ＬＳＩのクロック周波数をわずかに変動させて発振させる（周波数変調）ことによって、電磁妨害のピークを低く抑える働きをする（特許文献１）。
【０００４】
また、ＬＳＩの動作周波数が高くなるのに伴い、その信号の品質、所謂、シグナル・インテグリティーを如何に確保するかが重要になっている。ＬＳＩチップ上のトランジスタがスイッチングすると、電源ライン及びグラウンド配線に高周波電流が流れる。この結果、電源ライン及びグラウンド配線に雑音が発生する。いわゆる電源バウンス、グラウンド・バウンスである（特許文献２）。このノイズはスイッチングするトランジスタの数に比例して大きくなる。ＬＳＩチップに集積された大量のトランジスタが同時にスイッチングすることによって生じる大きな電源バウンス、グラウンド・バウンスを同時スイッチグノイズ（ＳＳＯ（Simultaneous Switching Output noise）ノイズ）と呼んでいる。
【０００５】
このようにＬＳＩの動作周波数が高くなり、また集積度が向上することによりノイズ量が増加している。その一方、ＬＳＩの駆動電源電圧の低下と動作周波数が高くなることによりノイズマージンが減少しており、ノイズ対策が重要課題となってきている。
【特許文献１】特開２００６−２３８３１５号公報
【特許文献２】特開平０８−５５４８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
図６は、従来のメモリへのライトアクセス時におけるノイズの発生を説明するタイミングチャートである。尚図において、ＣＬＫはクロック、Ａはアドレス、ＤＱＳはデータストローブ、ＤＱはデータ信号、ＤＱＭはデータマスク信号、Noiseは、データのスイッチングによるノイズを表している。
【０００７】
いま時刻ｔ０で、書込みアドレス「Ａ０」及びライトコマンド「ＷＲ」を発行する。次に時刻ｔ２〜ｔ１０で、書込みデータ（ＦＦ，００、ＦＦ，００，０１，０２，０３，０４）をメモリに送信する。最初の時刻ｔ２では、データＤＱがハイインピーダンス状態から「１」に切り替わるため、このタイミングでのNoiseは小さい。しかし、時刻ｔ３〜ｔ５では、データＤＱが「０」から「１」、或は「１」から「０」に切り替わるため、発生するノイズ量が大きくなっている。また時刻ｔ６〜ｔ９では、反転するビットの数は１或は最大３であるため、時刻ｔ３〜ｔ５の場合に比べてノイズ量が小さくなっている。また時刻ｔ１０では、「０」又は「１」からハイインピーダンス状態に戻るため、ここでも時刻ｔ３〜ｔ９の場合に比べてノイズ量が小さくなっている。このような事態は、メモリからデータを読み出す場合にも発生する。特に図６の例では、データが８ビットの場合を示しているが、例えば６４ビットのバス幅を使用した場合には、このようなデータの切り替えによるノイズの発生量が多くなり、このようなノイズによる動作マージンの低減が問題となる。
【０００８】
本発明の目的は、上記従来技術の問題点を解決することにある。
【０００９】
本願発明の特徴は、メモリへのデータの書き込み、或はメモリからのデータの読み出し時におけるデータのスイッチングに伴うノイズの発生を少なく抑えることにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するために本発明の一態様に係るメモリアクセス制御回路は以下のような構成を備える。即ち、
メモリデバイスへのアクセスを制御するメモリアクセス制御回路であって、
前記メモリデバイスへの書込みデータが特定のパターンを含むか否かを判別する判別手段と、
前記判別手段により判別された前記特定のパターンを、反転するビットの数がより少ない省ノイズデータに変換する変換手段と、
前記変換手段による変換内容を示すコードとともに、前記変換手段により変換されたデータを前記メモリデバイスに出力する書込みデータ出力手段と、
を有することを特徴とする。
【００１１】
上記目的を達成するために本発明の一態様に係るメモリアクセス制御回路は以下のような構成を備える。即ち、
メモリデバイスへのアクセスを制御するメモリアクセス制御回路であって、
前記メモリデバイスからのデータの読出し時、前記データの変換内容を示すコードとともに、当該データを読み出すデータ入力手段と、
前記コードに基づいて当該データを特定のパターンに変換する変換手段と、
前記コードが前記データが変換されていることを表しているか否かに応じて、前記データ入力手段で入力した前記データ、或は前記変換手段により変換された前記特定のパターンを読み出しデータとして選択する選択手段と、
を有することを特徴とする。
【００１２】
上記目的を達成するために本発明の一態様に係るメモリアクセス制御方法は以下のような工程を備える。即ち、
メモリデバイスへのアクセスを制御するメモリアクセス制御方法であって、
前記メモリデバイスへの書込みデータが特定のパターンを含む場合に、前記特定のパターンを、反転するビットの数がより少ない省ノイズデータに変換する変換工程と、
前記変換工程による変換内容を示すコードとともに、前記変換工程で変換されたデータを前記メモリデバイスに出力する書込みデータ出力工程と、
前記メモリデバイスからのデータの読出し時、前記データの変換内容を示すコードとともに、当該データを読み出すデータ入力工程と、
前記コードが前記データが変換されていることを表している場合に前記特定のパターンを選択し、前記コードが前記データが変換されていることを表していない場合に、前記データ入力工程で入力した前記データを読出しデータとして選択する選択工程と、
を有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、メモリコントローラとメモリデバイス間のデータの切り替え回数を削減でき、メモリデバイスへのデータの書き込み、読み出し時のデータ切り替えに伴うＥＭＩノイズ、ＳＳＯノイズを低減できる。また、データの切り替え回数を低減させることにより、メモリへのリードライト時の消費電力の低減が可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１５】
図１は、本発明の実施の形態に係るメモリシステムの構成を示すブロック図である。
【００１６】
図において、３０００はメモリコントローラ、３１００はメモリセル３１１１を有するメモリデバイス（メモリ素子）である。
【００１７】
バスインターフェース３０１０は、メモリコントローラ３０００内のバスと、システムバスとを接続している。リードデータ受信回路３０２０は、メモリデバイス３１００から読み出したデータをバスインターフェース３０１０へ出力する。リードデータバッファ３０２１は、メモリデバイス３１００から読み出され、処理されたデータを一時的に保持してバスインターフェース３０１０へ出力する。データ選択部３０２２は、本実施の形態の特徴的な部分で、後述するようにメモリデバイス３１００から読み出されたデータを処理している。デコーダ３０２３は、メモリデバイス３１００のエンコーダ３１３２から出力されたエンコードされたデータをデコードする。
【００１８】
次にライトデータ生成回路３０３０は、バスインターフェース３０１０から受取った書込みデータを一旦ライトデータバッファ３０３３に記憶し、その後、後述する処理を行ってメモリデバイス３１００に出力する。データ判定部３０３１は、メモリデバイス３１００に書き込まれるデータのパターンを解析し、その書き込むデータがノイズを発生し易いパターンかどうかを判定している。エンコーダ３０３２は、データ判定部３０３１による判定結果をエンコードしてメモリデバイス３１００に出力する。データ変換制御部３０３４は、データ判定部３０３１によりメモリデバイス３１００に書き込むデータがノイズを発生し易いデータであると判定した場合に、ノイズを発生しにくいデータに変換している。コマンド生成回路３０４０は、メモリデバイス３１００に対する読出し、書込みコマンドを生成してメモリデバイス３１００に出力する。
【００１９】
次にメモリデバイス３１００の構成を説明する。このメモリデバイス３１００は、上述したメモリコントローラ３０００が有しているデコーダ３０２３、データ選択部３０２２と同じ機能を有するデコーダ３１２３、データ選択部３１２２を有している。更に、メモリコントローラ３０００が有しているデータ判定部３０３１、エンコーダ３０３２、データ変換制御部３０３４と同じ機能を有するデータ判定部３１３１、エンコーダ３１３２、データ変換制御部３１３４を有している。
【００２０】
図２は、本実施の形態に係るデータ判定部３０３１，３１３１の構成を説明するブロック図である。
【００２１】
このデータ判定部３０３１は、データ比較部２１１〜２１４、パターン保持部２２０、ヒットフラグ生成部２３０を有している。
【００２２】
ライトデータバッファ３０３３に記憶された書込みデータは、２０１〜２０４で示すように、バースト０〜バースト３の各８ビットデータに分割される。こうしてバースト０〜バースト３はデータ比較部２１１〜２１４で、パターン保持部２２０に保持された各データパターンと比較される。
【００２３】
データ比較部２１１〜２１４では、バースト０〜バースト３と各パターンとを比較し、あるパターンに一致するデータの場合には、対応するヒット信号が「１」にセットされる。比較結果はエンコーダ３０３２に送信されてエンコードされる。またヒットフラグ生成部２３０は、これらヒット信号の論理和を取って、ヒットフラグとしてデータ変換制御部３０３４（３１３４）に出力する。データ変換制御部３０３４は、このヒットフラグが「１」の場合には書込みデータを予め決められたデータに変換し、それ以外の場合には、書込みデータをそのまま、メモリデバイス３１００への書込みデータの一部として出力する。
【００２４】
図３は、このデータ比較部による比較と、そのエンコード例を説明する図である。
【００２５】
本例ではバースト長が４、データビットが８ビットの場合で説明する。書込みデータは、データ比較部２１１〜２１４によりパターン０〜パターンｎと比較される。いま書込みデータが（ＦＦ，００，ＦＦ，００）の場合は、その書込みデータは，図３の例ではパターン１と一致する。この場合、データ判定部３０３１（３１３１）では、ヒット１とヒットフラグが共に「１」となる。これらヒット１とヒットフラグを入力したエンコーダ３０３２は、データ「００１０」を、そのエンコード結果として出力する。
【００２６】
名、このときデータ変換制御部３０３４は、ヒットフラグが「１」であるため、データを全て「０」にした省ノイズデータとして、メモリデバイス３１００に送信する。
【００２７】
また他の例として、書込みデータが（００，０１，０２，０３）の場合は、パターン保持部２２０から出力されるパターンのいずれとも一致しない。この場合は、データ判定部３０３１は、ヒットフラグを「０」、ヒット出力の全てを「０」にして出力する。この場合エンコーダ３０３２は、「００００」をエンコード結果として出力する。このときデータ変換制御部３０３４は、入力した書込みデータをそのままメモリデバイス３１００に出力する。
【００２８】
図４は、本実施の形態に係るデータ選択部３０２２（３１２２）の構成を示すブロック図である。
【００２９】
３０１〜３０４は、リードデータバッファ３０２１で保持されているバーストデータを示す。パターン選択部３１０は、デコーダ３０２３からの選択信号４００に従って、予め決められたパターン或は受信したデータを選択して出力する。パターン保持部３２０は、予め特定のデータパターンを保持しており、ここでは前述のパターン保持部２２０と同じデータパターンを記憶している。
【００３０】
次にメモリデバイス３１００の構成について説明する。
【００３１】
メモリデバイス３１００では、デコーダ３１２３がメモリコントローラ３０００でエンコードされて出力されたエンコード出力を受け取り、それをデコードしている。このデコード結果に基づいてデータ選択部３１２２に出力する選択信号４００が生成される。データ選択部３１２２は、メモリコントローラ３０００から受け取った書込みデータと、パターン保持部に予め保持されているパターンデータのいずれかを選択信号４００に従って選択してメモリセル３１１１に出力する。メモリデバイス３１００はメモリセル３１１１にこの出力を保持する。
【００３２】
具体的には、デコーダ３１２３がエンコード出力として、例えば前述のコード「００１０」を受取ると、これはパターン１と一致したためにデータ「０」に変換されていることが分かる。従って、この場合には、選択信号４００によりパターン保持部３２０に記憶しているパターン１を選択してメモリセル３１１１に書き込むように指示する。
【００３３】
一方、デコーダ３１２３がエンコード出力として、例えば前述のコード「００００」を受取ると、これはいずれのパターンとも一致しないため書込みデータが変換されずに、そのままデータ選択部３１２２に入力されていることが分かる。従って、この場合には、選択信号４００により書込みデータ（メモリライトデータ）を選択してメモリセル３１１１に書き込むように指示する。
【００３４】
またメモリデバイス３１００からのデータの読み出しは、上記書き込みの逆で行われる。即ち、メモリデバイス３１００のメモリセル３１１１から読み出された読出しデータは、データ判定部３１３１で、書き込み時にメモリコントローラ３０００で行われたと同様に、いずれかのパターンと一致するか否かが判定される。そして、各パターンに対するヒット信号０〜ｎと、ヒットフラグが出力される。ヒット信号はエンコーダ３１３２によりエンコードされてメモリコントローラ３０００に出力される。メモリセル３１１１から読み出されたデータは、データ判定部３１３１の判定出力に従って、メモリセル３１１１から読み出されたデータが実際のデータであるか、或は「０」に変換されたデータであるかが判別される。その結果が、エンコード出力してエンコーダ３１３２からデコーダ３０２３に送られる。
【００３５】
メモリコントローラ３０００は、メモリデバイス３１００のデータ変換制御部３０３４から出力されたデータを、データ選択部３０２２により受信する。またメモリデバイス３１００のエンコーダ３１３２から出力されたエンコード結果は、メモリコントローラ３０００のデコーダ３０２３が受信する。こうしてデコーダ３０２３は、メモリデバイス３１００からのエンコード結果に基づいて選択信号４００を出力する。データ選択部３０２２は、このデコーダ３０２３から出力される選択信号４００に基づいて、メモリデバイス３１００から受け取った読出しデータと、パターン保持部３２０に予め保持されているパターンデータのいずれかを出力する。
【００３６】
このように本実施の形態では、メモリコントローラ３０００とメモリデバイス３１００との間で、ノイズを発生し易いデータをノイズが発生しにくいデータに変換してやり取りする。このようにすることにより、データのスイッチングを少なくして、ノイズの発生を抑えることができる。
【００３７】
図５は、本実施の形態係るデータの書込みを、図６の従来例と比較して説明するタイミング図である。この例ではアドレス「Ａ０」にデータ（００，００，００，００）が書き込まれ、アドレス「Ａ１」にデータ（０１，０２，０３，０４）が書き込まれている。
【００３８】
５００で示す部分では、書込みデータ（ＦＦ，００，ＦＦ，００）がパターン１と一致したためにデータ（００，００，００，００）に変換されている。そして、この場合のエンコード結果は、図３より「００１０」となっている（５０１）。
【００３９】
これにより図６の従来例で発生していた、時刻ｔ３〜ｔ５におけるノイズが「０」となっていることが分かる。
【００４０】
尚、本実施の形態におけるパターン保持部２２０，３２０に記憶されるパターンデータ（特定のパターン）は、上述した例に限定されるものでない。即ち、前後のデータ同士の間で、反転するビット数が所定量以上に多いパターンであれば、どのようなパターンであっても良い。これは、前後のデータ同士の間で、反転するビット数が所定量以上に多いパターンは、そのデータ間でスイッチングするビット数が多くなり、その結果、流れる電流が増大してノイズを発生させる可能性が高くなるためである。
【００４１】
また上記実施の形態では、省ノイズデータを、全て「０」のデータとしたが、これはノイズの発生を少なくするデータであれば、これに限定されるものではない。
【図面の簡単な説明】
【００４２】
【図１】本発明の実施の形態に係るメモリシステムの構成を示すブロック図である。
【図２】本実施の形態に係るデータ判定部の構成を説明するブロック図である。
【図３】本実施の形態に係るデータ比較部による比較と、そのエンコード例を説明する図である。
【図４】本実施の形態に係るデータ選択部の構成を示すブロック図である。
【図５】実施の形態係るデータの書込みを従来例と比較して説明するタイミング図である。
【図６】従来のメモリへのライトアクセス時におけるノイズの発生を説明するタイミングチャートである。
【図１】
2008102705.tif 000003
【図２】
2008102705.tif 000004
【図３】
2008102705.tif 000005
【図４】
2008102705.tif 000006
【図５】
2008102705.tif 000007
【図６】
2008102705.tif 000008