(57)【要約】  遷移中に値を変更するドライバの累積的な数を減らすことによって、同時スイッチングノイズの影響と共に、累積的な電流変化を低減することができる。また、累積的な電流変化を低減することによって、チップのグランド面及び／又は電源面における電圧変動を低減することもでき、それにより、電圧ディップ又はスパイクに起因して論理機能が不適切になる可能性を最小限に抑えることができる。一実施態様では、本方法は、第１のワードの第１の組のビットの第１の状態の値を読み出すこと、及び第１の組のビットの各ビットの第２の状態の予測値を得ることを含む。第１のスイッチングノイズの累積的な影響を、第１の組のビットの第２の状態の予測値を変更することによって低減することができる場合には、第２の状態の予測値とは異なる少なくとも１つの値を有する別の組の値を求めて、第１のスイッチングノイズの累積的な影響が低減される。【特許請求の範囲】
【請求項１】
同時スイッチングノイズを低減する方法であって、
第１のワードの第１の組のビットの第１の状態の値を読み出し、
前記第１の組のビットの各ビットの第２の状態の予測値を取得し、
前記第１の状態から前記第２の状態への前記第１の組のビットの各ビットの遷移の第１のスイッチングノイズの累積的な影響を決定し、
前記第１のスイッチングノイズの累積的な影響が、前記第１の組のビットの前記第２の状態の前記予測値を変更することによって低減可能である場合、前記第２の状態の前記予測値とは異なる少なくとも１つの値を有する別の組の値を決定して、前記第１のスイッチングノイズの累積的な影響を低減し、前記別の組の値を前記第２の状態として前記第１の組のビットに書き込み、前記第１のワードの少なくとも１つのビットにおいて第１の指示子を設定する、
ことを含む方法。
【請求項２】
第２のワードの第２の組のビットの第１の状態の値を読み出し、
前記第２の組のビットの各ビットの第２の状態の予測値を取得し、
前記第１の状態から前記第２の状態への前記第２の組のビットの各ビットの遷移の第２のスイッチングノイズの累積的な影響を決定し、
前記第２のスイッチングノイズの累積的な影響が、前記第２の組のビットの前記第２の状態の前記予測値を変更することによって低減可能である場合、前記第２の状態の前記予測値とは異なる少なくとも１つの値を有する別の組の値を決定して、前記第２のスイッチングノイズの累積的な影響を低減し、前記別の組の値を前記第２の状態として前記第２の組のビットに書き込み、前記第２のワードの少なくとも１つのビットにおいて第２の指示子を設定する、
ことをさらに含む、請求項１に記載の方法。
【請求項３】
前記第１の指示子が設定され、前記第２の指示子は設定されない、請求項２に記載の方法。
【請求項４】
前記別の組の値の決定は、前記第１の組のビットの反転した１組のビットの形で別の組の値を与える、請求項１に記載の方法。
【請求項５】
前記第１のスイッチングノイズの累積的な影響を低減可能か否かは、前記第１の組のビットの前記第１の状態の前記ビットのそれぞれの値の半分よりも多くの値が、前記第１の組のビットの前記第２の状態の対応するビットのそれぞれの予測値と異なるか否かによって判定される、請求項１に記載の方法。
【請求項６】
前記別の組の値の決定は、前記第１の組のビットの反転した１組のビットの形で別の組の値を与える、請求項５に記載の方法。
【請求項７】
前記別の組の値の書き込みは、チップ上に近接して配置されるピンを通して実行され、該ピンはそれぞれ、前記第１の組のビットの１ビットに対応する、請求項１に記載の方法。
【請求項８】
前記別の組の値の書き込みは、フィールドプログラマブルゲートアレイダイ上の回路を通して実行される、請求項１に記載の方法。
【請求項９】
前記別の組の値の書き込みは、特定用途向け集積回路ダイ上の回路を通して実行される、請求項１に記載の方法。
【請求項１０】
前記第１のワードの前記第１の組のビットの前記第１の状態の値の読み出しは、スタティックランダムアクセスメモリを読み出すことを含む、請求項１に記載の方法。
【請求項１１】
前記第１のワードの前記第１の組のビットの前記第１の状態の値の読み出しは、３６ビットデバイスから８ビットを読み出すことを含む、請求項１に記載の方法。
【請求項１２】
前記第１のワードの前記第１の組のビットの前記第１の状態の値の読み出しは、自動試験装置に対応するデータを読み出すことを含む、請求項１に記載の方法。
【請求項１３】
前記第１のワードの少なくとも１つのビットにおいて前記第１の指示子を読み出し、
前記第１の指示子が設定される場合、前記第１の組のビットから前記別の組の値を読み出し、該別の組の値から、前記第１の組のビットの前記第２の状態の前記予測値を求めることをさらに含む、請求項１に記載の方法。
【請求項１４】
前記第１の組のビットの前記第２の状態の前記予測値を前記第２の状態として該第１の組のビットに書き込むことをさらに含む、請求項１３に記載の方法。
【請求項１５】
前記第１の指示子が設定されない場合、前記第１の組のビットの前記値を変更しないでおくことをさらに含む、請求項１３に記載の方法。
【請求項１６】
過渡的なノイズを低減するためのバスプロトコルであって、
第１のワードの第１の組のビットの第１の状態の値を読み出し、
前記第１の組のビットの各ビットの第２の状態の予測値を取得し、
前記第１の状態から前記第２の状態への前記第１の組のビットの各ビットの遷移の第１のスイッチングノイズの累積的な影響を決定し、
前記第１のスイッチングノイズの累積的な影響が、前記第１の組のビットの前記第２の状態の前記予測値を変更することによって低減可能である場合、前記第２の状態の前記予測値とは異なる少なくとも１つの値を有する別の組の値を決定して、前記第１のスイッチングノイズの累積的な影響を低減し、前記別の組の値を前記第２の状態として前記第１の組のビットに書き込み、前記第１のワードの少なくとも１つのビットにおいて指示子を設定し、
前記第１のワードの少なくとも１つのビットにおいて前記指示子を読み出し、
前記指示子が設定される場合、前記第１の組のビットから前記別の組の値を読み出し、該別の組の値から、前記第１の組のビットの前記第２の状態の前記予測値を決定し、
前記指示子が設定されない場合、前記第１の組のビットの前記値を前記第１の組のビットの前記第２の状態として読み出す、
ことを含むバスプロトコル。
【請求項１７】
デジタル回路システム内の過渡的なノイズを低減するためのコンピュータ可読媒体であって、
第１のワードの第１の組のビットの第１の状態の値を読み出し、
前記第１の組のビットの各ビットの第２の状態の予測値を取得し、
前記第１の状態から前記第２の状態への前記第１の組のビットの各ビットの遷移の第１のスイッチングノイズの累積的な影響を決定し、
前記第１のスイッチングノイズの累積的な影響が、前記第１の組のビットの前記第２の状態の前記予測値を変更することによって低減可能である場合、前記第２の状態の前記予測値とは異なる少なくとも１つの値を有する別の組の値を決定して、前記第１のスイッチングノイズの累積的な影響を低減し、前記別の組の値を前記第２の状態として前記第１の組のビットに書き込み、前記第１のワードの少なくとも１つのビットにおいて指示子を設定し、
前記第１のワードの少なくとも１つのビットにおいて前記指示子を読み出し、
前記指示子が設定される場合、前記第１の組のビットから前記別の組の値を読み出し、該別の組の値から、前記第１の組のビットの前記第２の状態の前記予測値を決定し、
前記指示子が設定されない場合、前記第１の組のビットの前記値を該第１の組のビットの前記第２の状態として読み出す、
ことを含む方法を実行するためのコードを有する、コンピュータ可読媒体。
【請求項１８】
遷移エネルギーを低減する方法であって、
少なくとも複数の２値遷移を表すスコアを決定し、各２値遷移は第１の状態から対応する第２の状態への遷移であり、
前記スコアが、前記複数の２値遷移の前記第１の状態の半分よりも多くの状態が前記対応する第２の状態とは異なることを示す場合、前記第２の状態の値を反転すると共に指示子を設定し、
前記第２の状態を、前記複数の２値遷移に対応する複数のビットに書き込み、
前記指示子が設定される場合、該指示子を、前記複数の２値遷移に対応する前記複数のビットに関連付けられるビットに書き込む、
ことを含む方法。
【請求項１９】
前記複数の２値遷移の各遷移の前記第２の状態を読み出し、
前記複数の２値遷移に対応する前記指示子を読み出し、
前記指示子が、前記第２の状態の前記値が以前に反転されたことを示す場合、該第２の状態の該値を反転させる、
ことをさらに備える、請求項１８に記載の方法。
【請求項２０】
デジタル回路システム内の過渡的なノイズを低減するためのデバイスであって、
少なくとも複数の２値遷移を表すスコアを決定する手段であって、各２値遷移は第１の状態から対応する第２の状態への遷移である、手段と、
前記スコアが、前記複数の２値遷移の前記第１の状態の半分よりも多くの状態が前記対応する第２の状態とは異なることを示す場合、該第２の状態の値を反転させる手段と、
前記スコアが、前記複数の２値遷移の前記第１の状態の半分よりも多くの状態が前記対応する第２の状態とは異なることを示す場合、指示子を設定する手段と、
を備えるデバイス。
【請求項２１】
前記複数の２値遷移の各遷移の前記第２の状態を読み出す手段と、
前記複数の２値遷移に対応する前記指示子を読み出す手段と、
前記指示子が、前記第２の状態の前記値が以前に反転されたことを示す場合、前記第２の状態の前記値を反転させる手段と、
をさらに備える、請求項２０に記載のデバイス。
【請求項２２】
同時スイッチングノイズを低減する方法であって、
第１のワードの第１の組のビットの第１の状態の値を読み出し、
前記第１の組のビットの各ビットの第２の状態の第１の予測値を取得し、
前記第２の状態の前記第１の予測値とは異なる少なくとも１つの値を有する第１の別の組の値を決定して、第１のスイッチングノイズの累積的な影響を低減し、
前記第１の別の組の値を前記第２の状態として前記第１の組のビットに書き込む、
ことを含む方法。
【請求項２３】
前記第１の別の組の値を決定する前に、前記第１の組のビットの各ビットの第３の状態の第２の予測値を取得し、
前記第１の別の組の値を書き込む前に、前記第３の状態の前記第２の予測値とは異なる少なくとも１つの値を有する第２の別の組の値を決定して、第２のスイッチングノイズの累積的な影響を低減する、
ことをさらに含む、請求項２２に記載の方法。
【請求項２４】
前記第１の別の組の値の決定、及び前記第２の別の組の値の決定は、前記第１のスイッチングノイズの累積的な影響、及び前記第２のスイッチングノイズの累積的な影響の両方の低減を伴う、請求項２３に記載の方法。
【請求項２５】
前記第１の組のビットから前記第１の別の組の値を読み出し、
前記第１の別の組の値から、前記第１の組のビットの各ビットの第２の状態の前記予測値を決定する、
ことをさらに含む、請求項２２に記載の方法。
【請求項２６】
デジタル回路システム内の過渡的なノイズを低減するためのコンピュータ可読媒体であって、
第１のワードの第１の組のビットの第１の状態の値を読み出し、
前記第１の組のビットの各ビットの第２の状態の第１の予測値を取得し、
前記第２の状態の前記第１の予測値とは異なる少なくとも１つの値を有する第１の別の組の値を決定して、第１のスイッチングノイズの累積的な影響を低減させ、
前記第１の別の組の値を前記第２の状態として前記第１の組のビットに書き込み、
前記第１の組のビットから前記第１の別の組の値を読み出し、
前記第１の別の組の値から、前記第１の組のビットの各ビットの第２の状態の前記予測値を決定する、
ことを含む方法を実行するためのコードを有する、コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
同時スイッチングノイズ（ＳＳＮ）は、電子システム内に存在することがある１つのノイズ形態である。ＳＳＮは、短い時間窓の中でかなり多くの数のドライバが同じ方向にスイッチングすることによって引き起こされる。そのようなかなり多くの数のスイッチングの影響は、チップへの電圧源のディップ（瞬時電圧低下）又はスパイクを含むことがあり、能動及び非能動両方のドライバを通してノイズとして伝搬することがある。
【０００２】
極端な場合には、ＳＳＮは、電子システムが適切に機能するのを妨げることがある。たとえば、チップ内の電源面及び／又はグランド面の電圧レベルに変動があると、論理回路が正確に機能するのが妨げられることがある。ゲートアレイから出力される論理１が、インバータにおける許容最低限の論理１よりも低い場合には、出力された論理１が、インバータによって正確に解釈されないことがある。同様に、インバータにおける許容最大限の論理０よりも高い論理０がゲートアレイから出力される結果として、不適切な、又は不定の結果が生じることがある。
【０００３】
従来では、ＳＳＮに対処しようとする試みは、ドライバ／ピンを物理的に散在させること、差動シグナリング、ドライバのグループ間でタイミングをずらすこと（スキューイング：skewing）、及び／又は回路に抵抗を追加することを伴っていた。しかしながら、これらの試みは、性能、コスト、設計マージンにとって不利になることがあり、且つ／又はパッケージングの観点から複雑になることがある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、同時にスイッチングするドライバの正味の遷移エネルギーを低減させることによって、同時スイッチングノイズ（ＳＳＮ）に対処することに関する。本発明の種々の実施の形態は、第１の状態から第２の状態への遷移中に値を変更する、近接して配置されるドライバの数を低減するための符号化プロトコルを含む方法を提供する。遷移中に変化する値の累積数を減らすことによって、同時スイッチングノイズの影響と共に、累積的な電流変化を小さくことができる。また、累積的な電流変化を小さくすることによって、チップのグランド面及び／又は電源面における電圧変動を小さくすることもでき、それにより、電圧ディップ又は電圧スパイクに起因して論理機能が不適切になる可能性を最小限に抑えることができる。
【課題を解決するための手段】
【０００５】
本発明の一実施の形態によると、同時スイッチングノイズを低減するための方法が提供される。本方法は、第１のワードの第１の組のビットの第１の状態の値を読み出すこと、及び第１の組のビットの各ビットの第２の状態の予測値（予定された値：projected value)を得ることを含む。第１の状態から第２の状態への第１の組のビットの各ビットの遷移の第１のスイッチングノイズの累積的な影響が求められ、第１のスイッチングノイズの累積的な影響を、第１の組のビットの第２の状態の予測値を変更することによって低減することができる場合には、第２の状態の予測値とは異なる少なくとも１つの値を有する別の組の値を求めて、第１のスイッチングノイズの累積的な影響を低減する。別の組の値を第２の状態として第１の組のビットに書き込み、第１のワードの少なくとも１つのビットにおいて第１の指示子(指示符号）を設定する。
【０００６】
本発明の別の実施の形態によると、過渡的なノイズを低減するためのバスプロトコルが提供される。この方法は、第１のワードの第１の組のビットの第１の状態の値を読み出すこと、及び第１の組のビットの各ビットの第２の状態の予測値を得ることを含む。第１の状態から第２の状態への第１の組のビットの各ビットの遷移の第１のスイッチングノイズの累積的な影響が求められる。第１のスイッチングノイズの累積的な影響を、第１の組のビットの第２の状態の予測値を変更することによって低減することができる場合には、第２の状態の予測値とは異なる少なくとも１つの値を有する別の組の値を求めて、第１のスイッチングノイズの累積的な影響を低減する。別の組の値を第２の状態として第１の組のビットに書き込み、第１のワードの少なくとも１つのビットにおいて指示子を設定する。また、本方法によると、バスプロトコルは、第１のワードの少なくとも１つのビットにおいて指示子を読み出すことを含む。指示子が設定される場合には、第１の組のビットから別の組の値を読み出し、且つ別の組の値から、第１の組のビットの第２の状態の予測値を求める。代替的に、指示子が設定されない場合には、第１の組のビットの値を第１の組のビットの第２の状態として読み出す。別の実施の形態によると、デジタル回路システム内の過渡的なノイズを低減するためのコンピュータ可読媒体が提供される。コンピュータ可読媒体は、上述した方法を実行するためのコードを有する。
【０００７】
本発明の別の実施の形態は、遷移エネルギーを低減するための方法を提供する。本方法によると、少なくとも複数のバイナリ（２値）遷移を表すスコアが求められる。各２値遷移は第１の状態から対応する第２の状態への遷移である。スコアが、複数の２値遷移の第１の状態の半分よりも多くの状態が対応する第２の状態とは異なることを示す場合に、第２の状態の値を反転すると共に指示子を設定する。第２の状態を、複数の２値遷移に対応する複数のビットに書き込む。指示子が設定される場合には、指示子を、複数の２値遷移に対応する複数のビットに関連付けられるビットに書き込む。
【０００８】
本発明のさらなる実施の形態は、デジタル回路システム内の過渡的なノイズを低減するためのデバイスを提供する。当該デバイスは、少なくとも複数の２値遷移を表すスコアを求めるための手段であって、各２値遷移は第１の状態から対応する第２の状態への遷移である、少なくとも複数の２値遷移を表すスコアを求めるための手段と、スコアが、複数の２値遷移の第１の状態の半分よりも多くの状態が対応する第２の状態とは異なることを示す場合に、第２の状態の値を反転するための手段とを含む。手段はまた、スコアが、複数の２値遷移の第１の状態の半分よりも多くの状態が対応する第２の状態とは異なることを示す場合に、指示子を設定するために提供される。
【０００９】
本発明の別の実施の形態は、同時スイッチングノイズを低減するための方法を提供する。本方法は、第１のワードの第１の組のビットの第１の状態の値を読み出すこと、及び第１の組のビットの各ビットの第２の状態の第１の予測値を得ることを含む。第１の別の組の値を求め、第１の別の組の値は、第２の状態の第１の予測値とは異なる少なくとも１つの値を有し、第１のスイッチングノイズの累積的な影響を低減する。本方法はまた、第１の別の組の値を第２の状態として第１の組のビットに書き込むことを含む。本方法はまた、オプションで、第１の組のビットから第１の別の組の値を読み出すこと、及び第１の別の組の値から第１の組のビットの各ビットの第２の状態の予測値を求めることを含み得る。別の実施の形態によると、デジタル回路システム内の過渡的なノイズを低減するためのコンピュータ可読媒体が、上述した方法を実行するためのコードによって提供される。
【００１０】
本発明は、本明細書の説明及び添付の図面から明らかになるであろう。なお、種々の図面全体を通して、類似の参照符号は同じ構成部分を指示する。
【発明を実施するための最良の形態】
【００１１】
本発明の種々の実施形態は、第１の状態から第２の状態への遷移中に値を変更する、近接して配置されるドライバの数を減らすことによって、同時スイッチングノイズに対処する。遷移中に値が変化する累積数を減らすことによって、同時スイッチングノイズの影響と共に、累積的な電流変化を小さくことができる。また、累積的な電流変化を小さくすることによって、チップのグランド面及び／又は電源面における電圧変動を小さくすることもでき、それにより、電圧ディップ又は電圧スパイクに起因して論理機能が不適切になる可能性を最小限に抑えることができる。
【００１２】
１つの例示的な実施形態では、本発明は、スタティックランダムアクセスメモリ（ＳＲＡＭ）１００及びフィールドプログラマブルゲートアレイ（ＦＰＧＡ）２００と共に用いられる。図１は、複数のＳＲＡＭ１００と、ただ１つのＦＰＧＡ２００とを用いる１つの例示的な実施態様を示す。その例示的な実施形態では、各ＳＲＡＭ１００は３６ビットデバイスである。後でさらに詳細に説明するように、８ビットワード毎に、１つの追加ビットが１つの指示（符号）ビットとして用いられる。その例示的な実施形態は、本発明の一実施形態の一例として提供されるが、本発明が多種多様な電子システム及び回路と共に用いられ得ることは明らかであろう。限定はしないが、例を挙げると、ＲＡＭ及び／又は特定用途向け集積回路（ＡＳＩＣ）ダイが用いられ得る。
【００１３】
図２を参照すると、本発明の例示的な実施形態が、ワードが評価される場合のスイッチングノイズの累積的な影響を、ビットが書き込まれる前に、そのワード内のビットを符号化することによって低減することができるか否かを判定するために、スコアリング過程と共に用いるための方法３００を示す。この方法３００は、ＳＲＡＭ１００に実際に書き込まれた先行するワード、この例では８ビットと、ＳＲＡＭ１００の対応するワードビット、この例では８ビットに書き込まれることが見込まれる予定（予測）値とを比較する（３１０）。その例示的な実施形態では、比較（３１０）は、後述するスコアリング過程によって実行され得る。
【００１４】
さらに図２を参照すると、比較（３１０）によって、書き込まれることになるビットを変更する、たとえば、ビット毎の論理値変化の累積数を減らすことによって、スイッチングノイズの累積的な影響を低減することができるものと判定される場合には、予測値が符号化され（３２０）、その後、予測値がＳＲＡＭ１００に書き込まれ（３３０）、指示ビットが設定される（３４０）。比較（３１０）によって、書き込まれることになるビットを変更することによって、スイッチングノイズの累積的な影響を低減することができないものと判定される場合には、予測値が変更されないままＳＲＡＭ１００に書き込まれ（３５０）、指示ビットは設定されない。同様に、ＳＲＡＭ１００が読み出されるとき、各ワードの指示ビットを読み出し、対応する８ビットワードが復号化される必要があるか否かが判定される。方法３００は、各ＳＲＡＭ１００のワード毎に実行される。オプションでは、複数の指示ビットを用いてもよく、各１つ又は複数の指示ビットと共に、任意の数のワードビットを用いてもよい。
【００１５】
遷移中の論理値の変化によって引き起こされる過渡エネルギーを最小限に抑えるために、比較（３１０）は、たとえば、通信システム理論、統計演算又は他の数学的な演算等の多種多様な技法によって実行され得る。その例示的な実施形態では、スコアリング過程が用いられることがある。表１を参照すると、書き込まれる先行するビット値（そのビットが以前に符号化されたか否かとは無関係）と予測ビット値との間の論理遷移のタイプ毎にスコアが確立される。そのスコアは、各論理遷移タイプによって引き起こされる過渡電圧の影響の表現を与えることによって、その値が予測値に先に書き込まれたなら生じていた、ビット遷移の各遷移のスイッチングノイズの影響を近似することを意図している。表１に示されるように、過渡電圧の影響の方向も、そのスコアによって表され、０から１への遷移は＋１スコアを有し、一方、１から０への遷移は−１スコアを有する。
【００１６】
【表１】
2009502000.tif 000002
【００１７】
８ビットワードの例では、起こり得る最も極端な値は＋８及び−８であり、これは、全てのビットが一方又は他方に遷移することを表す。スコア０は、正味（ネット）遷移がないことを表しており、その場合に、０から１への遷移が１から０への遷移によって相殺される。その例示的な実施形態では、ビットのスコアの合計が＞＋３又は＜−３である場合には、指示ビットが書き込まれることになり、そのワードの場合に、符号化された遷移及び符号化されたビットがＳＲＡＭ１００に書き込まれることを指示するであろう。スコアの合計が＜＋４及び＞−４である場合には、指示ビットは書き込まれないことになり、そのワードの場合にＳＲＡＭ１００に書き込まれるビットは符号化されない。
【００１８】
例示的な実施形態におけるスコアリング過程の目的は、１つの方向に多数のビットが変化するときに、遷移ビットを変化しないようにし（static）、また変化しないビットを遷移させることによって、遷移エネルギーを減らすことである。一実施態様では、指示ビットを用いて、符号化を無効にし、符号化されていないビットが書き込まれるように、符号化過程を自動化することができる。
【００１９】
この例示的な実施形態では、単に、指示ビットを１にして符号化されたワードビットを指示することができるか、又は０にして符号化されていないワードビットを指示することができる。別法では、指示ビットを用いて、符号化中の遷移エネルギーを最小限に抑えることもできる。たとえば、表２は、符号化される遷移の場合に指示ビットの遷移を避けるために、指示ビットをどのように用いることができるかを示す。
【００２０】
【表２】
2009502000.tif 000003
【００２１】
その例示的な実施形態によれば、ワードビット、そしてオプションでは指示ビットは、ピンアウト内、及びＦＰＧＡダイ上で互いに近接して配置されるように、大きく局所化することができる。そのような構成では、近接した間隔を用いることによって、互いに近接して配置されるビットのそれぞれの物理的な影響を累積的に相殺する実効性を高めることができるので、本発明は、さらに大きな利点を提供することができる。したがって、累積的なスコアリング過程は、相殺する物理的な影響を、より厳密に表すことができる。
【００２２】
本発明の別の例示的な実施形態では、スイッチングノイズの累積的な影響を低減するために各遷移が符号化されるときに、スコアリング過程を用いることなく、符号化が必要とされるか否かが判定される。この実施形態では、一例として図３に示されるように、方法４００が、第１のワードの第１の組のビットの第１の状態の値を読み出すこと（４１０）、及び第１の組のビットの各ビットの第２の状態の第１の予測値を得ること（４２０）を含む。第１の別の組の値を決定して（４３０）、第１の別の組の値は、第１のスイッチングノイズの累積的な影響を低減するために、第２の状態の第１の予測値とは異なる少なくとも１つの値を有する。本方法はさらに、第１の別の組の値を、第２の状態として、第１の組のビットに書き込むこと（４４０）を含む。オプションでは、本方法は、第１の組のビットから第１の別の組の値を読み出すこと（４５０）、及び第１の別の組の値から、第１の組のビットの各ビットの第２の状態の予測値を求めること（４６０）を含む。この実施形態は、本明細書において説明される他の実施形態の態様、態様又は代替形態と組み合わせて用いられ得る。
【００２３】
本発明の種々の実施形態は、次の状態だけではなく、それよりも先の状態を考えることも含み得る。たとえば、第２の状態として、ビットに書き込まれることになる所望の値を求める（決定する）とき、任意の符号化過程が、状態変化に対応するありとあらゆる遷移のスイッチングノイズの累積的な影響を低減する際に、第２の状態よりも先の１つ又は複数の将来の状態に対応する予測値も考慮することができる。
【００２４】
本発明の種々の実施形態は、多種多様な用途において用いることができる。それらの例には、限定はしないが、格納された媒体データ、リアルタイムデータ、又はそれらの組み合わせが含まれる。連続的にアドレス指定されるメモリを含む事例に限定されるのではなく、メモリをアドレス指定する際に非連続的な変化を伴う本発明の種々の実施形態の用途が、多種多様なメモリ管理技法から恩恵を受け得る。一例として、それらの技法は、メモリ位置に現時点で存在している値を、そのメモリ位置の１つ又は複数の予測値と関連付けるのに役に立つことがあり、その場所に現時点で存在している値を知り、予測値と比較することによって、遷移のさらに良好な表現を与えることができる。このような状況が生じることがある例は、メモリをアドレス指定する際に非連続的な変化を必要とするリアルタイムコマンドも受信しながら、格納された媒体を使用することを含む。
【００２５】
本発明の種々の実施形態と共に用いるためのメモリ管理技法の例は、限定はしないが、内部ルックアップテーブルを使用することを含む。この例では、ルックアップテーブルを用いて、複数のワードから成るセグメントの第１のワードに対応するメモリ位置と共に、そのセグメントの第１のワードが格納される。ルックアップテーブルに格納されるワードは、符号化されることも、符号化されないこともある。そのセグメントの第１のワードに対応するメモリ位置には、たとえば１０１０１０１０のような当たり障りのないワードがある。そのセグメント内の残りのワードのメモリ位置は、そのセグメントの残りの部分の、符号化された形式又は符号化されていない形式のワードを含む。それゆえ、当たり障りのないワードが、同じ当たり障りのないワード（又は、１０１０１０１０値によってスイッチングノイズの累積的な影響が低減される可能性がある別のワード）を含むビットに書き込まれるので、その場所に書き込まれる任意の新たなセグメントは、スイッチングノイズの累積的な影響を最小限に抑え、一方、そのセグメントのワードの残りの予測値はわかっているので、オプションでは、任意の符号化を用いて、第１のワード後のワードに対するスイッチングノイズの累積的な影響を最小限に抑えることができる。
【００２６】
本発明の実施形態は、バス上の導線の間のＳＳＮを最小限に抑えるために、適切な符号化及び対応する復号化技法を用いることによって、本発明の実施形態は、バスプロトコル標準規格として用いられることができる。本発明を使用する例には、限定はしないが、ＦＰＧＡ及びＡＳＩＣが含まれ得る。本発明の実施形態は、自動試験装置と共に用いることもできる。本発明の種々の実施形態が、多種多様な電子デバイス、特に論理スイッチング回路を用いる電子デバイスにおいて実施することができること、及び種々の方法が、ハードウエア、又はソフトウエア、又はそれらの組み合わせにおいて実装することができることは理解されたい。
【００２７】
本明細書において例示される実施形態、実施態様及び例は、例示することを意図しており、限定することは意図していない。本発明は一例として説明されており、本発明の精神から逸脱することなく、当業者は例示的な実施形態の変更形態及び変形形態を思いつくであろう。上記の実施形態の特徴及び特性は組み合わせて用いることができる。好ましい実施形態は単なる例示であり、決して限定するものと見なされるべきではない。本発明の範囲は、これまでの説明ではなく、特許請求の範囲に照らして判定されるべきであり、特許請求の範囲に入る全ての変形形態及び均等物が、本発明に含まれることが意図されている。
【図面の簡単な説明】
【００２８】
【図１】本発明の例示的な実施形態が用いられ得る環境の概略図である。
【図２】本発明の１つの例示的な実施形態による方法の流れ図である。
【図３】本発明の別の例示的な実施形態による方法の流れ図である。
【図１】
2009502000.tif 000004
【図２】
2009502000.tif 000005
【図３】
2009502000.tif 000006