(57)【特許請求の範囲】
【請求項１】
バスの複数の信号ラインを符号化する方法であって、
第１の検出器で第１のインジケータを受信するステップであって、前記第１のインジケータが、前記複数の信号ラインの信号ライン状態遷移の第１の時変数に応じて時間で変化するステップと、
第２の検出器で第２のインジケータを受信するステップであって、前記第２のインジケータが、第１の状態に駆動される前記複数の信号ラインの第２の時変数に応じて時間で変化するステップと、
前記第１の検出器によって、前記第１のインジケータをフィルタリングして、第１の検出された信号インジケータを生成するステップと、
前記第２の検出器によって、前記第２のインジケータをフィルタリングして、第２の検出された信号インジケータを生成するステップと、
前記第１の検出された信号インジケータおよび前記第２の検出された信号インジケータに基づいて、前記バスの第１の符号化を選択するステップと
を含む方法。
【請求項２】
前記第１の検出された信号インジケータが、前記第１のインジケータの第１の周波数特性に基づいている請求項１に記載の方法。
【請求項３】
前記第１の検出された信号インジケータと前記第２の検出された信号インジケータに基づいて、前記バスに対する第２の符号化を選択するステップを更に含み、前記第１の符号化がデータバス反転符号化であり、前記第２の符号化が非反転符号化である請求項１に記載の方法。
【請求項４】
前記第１の検出された信号インジケータは、前記第１のインジケータと第１の周波数スペクトル特性との間の第１の相互関係に対応し、前記第２の検出された信号インジケータは、前記第２のインジケータと第２の周波数スペクトル特性との間の第２の相互関係に対応し、前記第１の符号化は、重み付けされた第１の相互関係と重み付けされた第２の相互関係を含む和に基づいて選択される請求項１に記載の方法。
【請求項５】
集積回路であって、
バス上の複数の信号ラインでの伝送のための内部スイッチングと関連付けられた第１の特性を感知する第１の検出器であって、前記伝送のための第１の特性と前記内部スイッチングと関連付けられた第１のインジケータを生成する第１の検出器と、
前記複数の信号ラインでの前記伝送と関連付けられた第２の特性を感知する第２の検出器であって、前記第２の特性および前記伝送と関連付けられた第２のインジケータを生成する第２の検出器と、
前記第１のインジケータと前記第２のインジケータを受信する符号化コントローラであって、前記第１のインジケータと前記第２のインジケータに基づいて、前記複数の信号ラインに対する少なくとも第１の符号化と第２の符号化から、選択された符号化を選択する符号化コントローラと、
前記符号化コントローラに応答して、前記複数の信号ラインの選択された符号化を設定するバス符号器と
を備える集積回路。
【請求項６】
前記第１の特性が、複数の信号ラインでの前記伝送のための前記内部スイッチングに対して電力を供給する電力配電回路網の共振周波数と関連付けられる請求項５に記載の集積回路。
【請求項７】
前記第２の特性が、前記複数の信号ラインの外部信号状態を有効にする電力を供給する電力配電回路網の共振周波数と関連付けられる請求項５に記載の集積回路。
【請求項８】
前記第１の検出器が、複数の信号ラインでの前記伝送のための前記内部スイッチングに対して電力を供給する電力配電回路網の共振周波数を通過させるフィルタを備える請求項５に記載の集積回路。
【請求項９】
前記第２の検出器が、前記複数の信号ラインの外部信号状態を有効にする電力を供給する電力配電回路網の共振周波数を通過させるフィルタを備える請求項５に記載の集積回路。
【請求項１０】
前記符号化コントローラは、予め決定された期間内に発生するよう決定される前記複数の信号ラインでの信号遷移数のインジケータに基づいて、選択された符号化を更に選択する請求項６に記載の集積回路。
【請求項１１】
前記複数の信号ラインでの信号遷移数が、前記複数の信号ライン上で発生すると予測される信号遷移を含む請求項５に記載の集積回路。
【請求項１２】
前記第１の検出器は、受信された伝送に関する情報を含むことで、前記第１の特性が感知されるように構成される請求項５に記載の集積回路。
【請求項１３】
前記第２の検出器は、受信された伝送に関する情報を含むことで、前記第２の特性が感知されるように構成される請求項５に記載の集積回路。
【請求項１４】
システムであって、
プレドライバ電力配電回路網の共振周波数を有するプレドライバ電源と、
信号ラインの電力配電回路網の共振周波数を有する信号ライン電源と、
前記プレドライバ電源を使用する複数の信号ラインプレドライバと、
複数の信号ライン上の信号レベルを設定する複数の信号ラインドライバであって、前記複数の信号ラインプレドライバによって制御され、前記信号ライン電源を使用する複数の信号ラインドライバと、
前記プレドライバ電力配電回路網の共振周波数と関連付けられた第１の周波数特性を検出する第１の検出手段と、
前記信号ラインドライバの電力配電回路網の共振周波数と関連付けられた第２の周波数特性を検出する第２の検出手段と、
前記第１の検出手段によって生成される第１の信号と前記第２の検出手段によって生成される第２の信号に基づいて、前記複数の信号ライン用に少なくとも第１の符号化を選択するための、前記第１の検出手段と前記第２の検出手段とに結合された符号化選択手段と、
前記複数の信号ラインプレドライバを制御して前記複数の信号ラインの前記第１の符号化を設定する、前記複数の信号ラインプレドライバに結合された符号化手段と
を備えるシステム。
【請求項１５】
前記第１の符号化がデータバス反転であり、前記符号化選択手段で選択される第２の符号化が非反転符号化である請求項１４に記載のシステム。
【請求項１６】
前記第１の周波数特性が、前記プレドライバ電力配電回路網の共振周波数での閾値信号電力を含む請求項１４に記載のシステム。
【請求項１７】
前記第２の周波数特性が、前記信号ラインドライバの電力配電回路網の共振周波数での閾値信号電力を含む請求項１４に記載のシステム。
【請求項１８】
前記第１の検出手段によって生成される前記第１の信号と、前記第２の検出手段で生成される前記第２の信号との相対的な振幅に基づいて、前記第１の符号化が選択される請求項１４に記載のシステム。
【請求項１９】
システムであって、
プレドライバ電力配電回路網の共振周波数を有するプレドライバ電源と、
信号ラインの電力配電回路網の共振周波数を有する信号ライン電源と、
前記プレドライバ電源を使用する複数の信号ラインプレドライバと、
複数の信号ライン上で信号レベルを設定する複数の信号ラインドライバであって、前記複数の信号ラインプレドライバによって制御され前記信号ライン電源を使用する複数の信号ラインドライバと、
前記プレドライバ電力配電回路網の共振周波数と関連付けられた第１の特性と、前記信号ラインドライバの電力配電回路網の共振周波数と関連付けられた第２の特性とに応答する検出器と、
前記検出器に応答する符号器であって、前記複数の信号ラインプレドライバを制御して前記複数の信号ラインの第１の符号化を設定する、前記複数の信号ラインプレドライバに結合された符号器と
を備えるシステム。
【請求項２０】
前記第１の符号化がデータバス反転であり、前記符号化選択手段によって選択される第２の符号化が非反転符号化である請求項１９に記載のシステム。
【請求項２１】
前記第１の特性が、前記プレドライバ電力配電回路網の共振周波数に対応する閾値信号電力を含む請求項１９に記載のシステム。
【請求項２２】
前記第１の符号化が、前記プレドライバ電力配電回路網の共振周波数に応じた第１の信号電力と、前記プレドライバ電力配電回路網の共振周波数に応じた第２の信号電力との相対的な振幅に基づいて選択される請求項１９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、２００９年６月１８日出願の「周波数応答バス符号化（FREQUENCY RESPONSIVE BUS CODING）」と題された国際出願第ＰＣＴ／ＵＳ２００９／００３６９７号の利益を主張し、一部継続出願となっており、その国際出願の内容は本願の一部を構成するものとしてここに援用する。その国際出願は、２００８年６月２０日出願の「周波数応答バス符号化（FREQUENCY RESPONSIVE BUS CODING）」と題された米国仮特許出願第６１／１３２，５８５号の利益を主張するものであり、その仮出願の内容は本願の一部を構成するものとしてここに援用する。
【背景技術】
【０００２】
背景技術
演算システム、通信装置、家庭用電化製品、および他のプロセッサベースシステムまたはデジタルシステムは、益々複雑化する数多くのアプリケーションをホストするよう駆動されている。このようなシステムの構成要素の間で必要とされる情報や信号の転送は、データ転送に関わるデバイスに対する要求を増大させる。実際には、バス伝送の駆動および／または受信に必要とされる電力供給ネットワーク（「ＰＤＮ」）の構成および特性は、データシステムのパフォーマンス全体に影響を及ぼす場合がある。例えば、電力供給ネットワークのインピーダンスはしばしば、強共振等の周波数応答の問題によって特徴づけられる。一部のシステムでは、強共振はシステムの特性に応じて約１００〜３００ＭＨｚの周波数範囲で発生する可能性がある。このような周波数応答の問題は、システムの供給電圧の品質を低下させ、電圧およびタイミングのマージンに影響を及ぼし、他にもデータ依存遅延を引き起こし、増幅器の減衰をもたらし、サンプラーにおけるビットエラーを引き起こす恐れがある。他にも問題を引き起こす可能性のあるバス周波数関連の課題がある。例えば、配線された電子装置であっても、互いに干渉し合うためまたは他のデバイスによって干渉されるために、望ましくない無線周波数特性を示す場合があることは周知である。
【０００３】
図面の簡単な説明
本技術は、これに限定されるものではないが、添付の図面の図における例示によって示される。図面中の同様の参照番号は類似の要素を示している。
【図面の簡単な説明】
【０００４】
【図１Ａ】周波数ベースのバス符号化技術を実装するのに適したデータシステムの一実施形態の例示的要素を示すブロック図である。
【図１Ｂ】周波数ベースのバス符号化を実装するのに適したデータシステムの一実施形態の例示的要素を示すブロック図である。
【図２Ａ】周波数ベースの符号化における例示的なデータバス逆転符号化の一実施形態を示す略図である。
【図２Ｂ】周波数ベースの符号化における例示的なデータバス逆転符号化の一実施形態を示す略図である。
【図２Ｃ】周波数ベースの符号化における第２の例示的なデータバス逆転符号化の一実施形態を示す略図である。
【図２Ｄ】周波数ベースの符号化の例示的な一実施形態を示す略図である。
【図３Ａ】検出器で実装可能な例示的なフィルタの周波数応答を示すグラフである。
【図３Ｂ】検出器で実装可能な例示的なフィルタの逆転周波数応答を示すグラフである。
【図４Ａ】例示的な検出器のフィルタ周波数応答を逆転したものをグラフ化している。
【図４Ｂ】例示的な検出器のフィルタ周波数応答を逆転したものをグラフ化している。
【図４Ｃ】例示的な検出器のフィルタ周波数応答を逆転したものをグラフ化している。
【図５Ａ】周波数ベースの検出器および符号器の要素を示すブロック図である。
【図５Ｂ】図５Ａの検出器の一実施形態における符号化セットまたは決定素子の要素を示すブロック図である。
【図６Ａ】図５Ａに類似した検出器および符号器の多重周波数応答の一実施形態における要素を示すブロック図である。
【図６Ｂ】図６Ａの検出器の一実施形態における符号化セットまたは決定素子の要素を示すブロック図である。
【図６Ｃ】多重共振ピークを有するＰＤＮにおける周波数スペクトルを示す。
【図７Ａ】データシステムおよび周波数ベースの検出器および符号器を示すブロック図である。
【図７Ｂ】図７Ａに示す検出器および符号器の符号化セットまたは決定素子の要素を示すブロック図である。
【図８Ａ】周波数ベースのバス符号化技術（２つのトランシーバのそれぞれが検出器を備える）の双方向バスの一実施形態を示すブロック図である。
【図８Ｂ】図８Ａの構成要素に基づく双方向メソクロノスメモリシステムの一実施形態を示すブロック図である。
【図８Ｃ】図８Ａおよび図８Ｂの構成要素に基づくクロックフォワーディングの一実施形態を示すブロック図である。
【図８Ｄ】図８Ａ、８Ｂ、および８Ｃの構成要素に基づくシリアライザとデシリアライザを伴う並列コーデックの一実施形態を示すブロック図である。
【図９】図８Ａ、８Ｂ、８Ｃ、および８Ｄの双方向バスの一実施形態での実装に適し得る例示的な検出器のブロックである。
【図１０】別の例示的な検出器（即ち、フィルタを備える検出器）のブロック図である。
【図１１】図１１Ａおよび１１Ｂでグラフ化したシミュレーションにおいて技術を比較するのに使用された擬似共振を示す例示的なバスインピーダンス関数のグラフである。
【図１２Ａ】符号化技術および非符号化技術を有するバスのシミュレーションを比較するバススペクトル分析を示す。
【図１２Ｂ】符号化技術および非符号化技術を有するバスのシミュレーションを比較するバススペクトル分析を示す。
【図１３】様々な動作モードのパラメータを格納するのに使用されるレジスタを示す。例えば、符号化を調整して種々の環境で周波数関連の目的を達成するポータブルデバイスで使用可能である。
【図１４】バスの信号ラインの符号化を選択する方法を示すフローチャートである。
【図１５】バスの信号ラインを符号化する方法を示すフローチャートである。
【発明を実施するための形態】
【０００５】
詳細な説明
一実施形態では、各バスサイクルで所定の状態に駆動されるバスのライン数が、周波数応答フィルタに入力される。この入力は、バス駆動型電力配電回路網における消費電力の時変表現である。バスの状態の切り替えが行われるバスのライン数も周波数応答フィルタに入力される。この入力はバスドライバのプレドライバに電力を供給する電力配電回路網における消費電力の時変表現である。これらのフィルタの周波数応答は、例えば、バス電力配電回路網および／またはプレドライバ電力配電回路網の共振周波数にそれぞれ応答するピークを有する。
【０００６】
電力配電回路網における時変消費電力が、電力配電回路網（または他の望ましくない状況）の共振周波数に応答する強い周波数成分を有する場合、対応するフィルタの出力は閾値より高くなる。これに応答して、システムはバス上での符号化を変更してこの共振を中断させることができる。電力配電回路網の共振応答の励振を中断させることにより、電力配電回路網におけるピーク電圧、電流、および／または位相の偏差が減少する。このような偏差を減少させることにより、バス上の符号間干渉、ノイズ、およびジッタが緩和され、並びに他の回路のパフォーマンスが改善される。更に、電力配電回路網における特定の周波数または共振でのノイズを低減することで、他の近接する電子装置との干渉またはそれらの電子装置から受ける干渉を減らすことができる。
【０００７】
本技術の一実施形態に係る周波数ベースのバス符号化システム等、データシステム１０２を図１Ａに示す。データシステム１０２の構成要素は、バスの周波数成分を監視して１つまたは複数の周波数を検出することにより、バスでのデータ伝送を制御する。このように検出される周波数は、システムパフォーマンスを低下させる可能性がある、またはそれを示唆する周波数となり得る。検出された周波数は、１つまたは複数の構成要素によって能動的に伝送される信号とすることが可能で、必要ならば、受動的に伝送される信号を含んでもよい（例えば、バスアイドル時間、ハイインピーダンス状態、リターン、またはバスで伝送される他の通信情報を示す）。特定の周波数、複数の周波数、または周波数範囲を検出したとき、データシステム１０２は、特定の周波数関連の目標を達成するためにバス上にデータを伝送するのに使用される符号化手法を変更する。例えば、一実施形態では、周波数ベースのバス符号化システムは、バス１０６上のデータと関連付けされた共振周波数状態を検出することができる。第２の実施形態では、周波数ベースのバス符号化システムは、（例えば、他の近くにある電子装置との干渉またはこれらのデバイスから受ける干渉を回避するため、または他の周波数関連の目標を達成するために）特定の周波数を回避することができる。これに応じて、周波数ベースのバス符号化システムは、少なくとも１つのデータバスの一部のラインまたは全てのラインを選択的に符号化することができる。更に別の実施形態では、周波数関連の目標が動的になり得る。例えば、周波数関連の目標を環境に応じて選択的に「オン」または「オフ」にしたり能動的に変更したりすることができる（例えば、「機内モード」を実装するために）。必要に応じてモード選択は自動とされる。
【０００８】
図１Ａは、共振関連の課題に対処するために使用できる実施形態を示す。例えば、シングルエンデッド信号に対して構成されたシステムでは、多くのチャネルの遷移データと関連付けられた集合誘導電流が、システムの共振を励振し、システム全体のパフォーマンスを低下させる恐れがある。このような同時スイッチングノイズは、ほとんど同時に切り替わる１つまたは複数のバスの多くの出力ドライバに起因する。これにより、システムの供給電圧の品質を低下させる広帯域エネルギーが発生する恐れがある。電源ノイズが、異なる量で入力信号ノードおよび参照ノードに結合すると、その差分によって電源から入力信号へとノイズのネット転送が生じる。このネットノイズは、システムの電圧およびタイミングマージンを低下させる。更に、ノイズが大きいと、影響を受けたＰＤＮからの回路動作が正常な動作領域から外れる場合がある。例えば、データ依存遅延、増幅器の利得低下、および／またはサンプラーでのビットエラーを引き起こす場合がある。
【０００９】
これらの課題を軽減するために、図１Ａの実施形態に示すように、周波数ベースのバス符号化システムの代表的な構成要素は、トランスミッタ１０４、バス１０６、レシーバ１１０、符号器１０８、復号器１１２、および少なくとも１つの周波数検出器１１４を含むことができる。図１Ａはまた、簡略化された等価回路モデルＣＬを示す。モデルＣＬは、バス１０６と関連付けられた例示的な電力供給ネットワークを示す。図示したモデルは、電源のインダクタンスとグランドリターンパスを含んでいる。また、コンデンサと有限直列インダクタンスの減結合も含む。簡単のために、抵抗は省略している。
【００１０】
図１Ａに示すように、データシステム１０２は検出器１１４を備える。検出器１１４は周波数検出器としてよい。検出器１１４を実装することで、バス１０６のチャネルおよび／または信号ラインと関連付けられたエネルギー関連の特性を検出または予測することができる。検出器１１４は、符号器１０８および／または復号器１１２の符号化方式の状態の設定を制御する符号化制御信号（ＥＮＣ）を生成する。検出器１１４を実装することにより、バス１０６で伝送されるデータの符号化を制御するスペクトルベースの決定または周波数ベースの決定を行うことができる。検出器１１４の周波数応答に応じて、特定の伝送条件下でバス１０６のエネルギー特性を減少または回避するように決定を実施することができる。これらの条件では、特定の周波数付近でのスペクトルの平滑化または整形を考慮することができる。
【００１１】
バス１０６のラインの一部または全ての集合電流に応じて符号化を制御するよう検出器１１４を実装することができる。符号化または符号化の変更により、スペクトル成分のエネルギーが選択された周波数またはその近辺で小さくなるように、電流が変更され得る。当該選択された周波数は、システムの電力供給ネットワークの望ましくない状況またはノイズが多い状況と関連付けられ得る周波数であり、例えば共振周波数等がある。いくつかの実施形態では、データの符号化を使用して、２つ以上の周波数帯域でスペクトルエネルギーを減少させる場合もある。但し、そのような周波数ベースのバス符号化を実装して、ピークエネルギーまたはノイズ特性を抑制しない符号化の決定を下すこともできる。
【００１２】
検出器１１４は、バス１０６のデータラインの一部または全てと関連付けられた伝送対象のデータ信号（例えば、ＤＱＴ０、ＤＱＴ１〜ＤＱＴｎ）のデータにおける２つ以上の単位間隔（連続した単位間隔等）を評価することができる。オプションとして、評価はまた、バス符号化を示すライン（例えば、ＥＮＣ）、マスキング信号ライン、制御信号またはアドレス指定信号の制御ライン等のバスの他のまたは全ての信号ラインを含めることができる。評価では、バス１０６またはＰＤＮの潜在的な集合エネルギーまたは電流によって周波数の潜在的な好ましくない状況または不利益なエネルギー状況を予測し、好ましくない状況またはエネルギーの状況を回避または緩和するための符号化決定を行うことができる。したがって、このような周波数ベースの予測符号化決定を利用することにより、システムパフォーマンス全体に悪影響を及ぼすまたはこれを低下させる可能性のある問題を回避することができる。そのような問題としては、バス出力を切り替えることにより誘導される電力供給ネットワークの共振、電力供給ネットワークの周波数の共振におけるピークスイッチングノイズ、および特定の周波数感度を有する他の回路（位相ロックループ（ＰＬＬ）、遅延ロックループ（ＤＬＬ）、フィルタ、クロックバッファ等）へのノイズ注入等が考えられる。
【００１３】
電力供給ネットワークおよび／またはリターンパスのインピーダンスに基づいて特定の共振周波数を決定することにより、およびその周波数またはその近辺で応答するよう検出器１１４を構成することによって、電力供給ネットワークのあまり好ましくない動作状況を回避するよう符号化手法を制御することができる。検出器１１４は、アナログ（例えば、連続時間）フィルタおよび／またはデジタルフィルタ等の、特定の周波数応答を持つ１つまたは複数のフィルタと一緒に実装することができる。検出器１１４は、特定の周波数応答に基づいて符号器１０８および／または復号器１１２を設定するための符号化制御信号を生成することができる。この周波数応答は、電力供給ネットワークの好ましくない動作状況を引き起こす周波数特性に対応し得る。
【００１４】
一部の実施形態では、フィルタは、システム構成および好ましい周波数応答に応じて、１つまたは複数の帯域消去フィルタおよび／または１つまたは複数の帯域通過フィルタとして実装することができる。オプションとして、高域通過フィルタおよび／または低域通過フィルタの実装も可能である。一部の実施形態は、有限インパルス応答（ＦＩＲ）フィルタおよび／または無限インパルス応答（ＩＩＲ）フィルタを使用することも可能である。更に、一部の実装では、スイッチドキャパシタフィルタ、または混合モードフィルタリングシステムを使用することができる。混合モードフィルタリングシステムでは、予測された集合電流をアナログ信号に変換し、周波数ベースの決定において電流ミキシング回路を使用することができる。この情報は、変換してデジタル符号化制御信号に戻すことができる。そのような検出器では変換においてデルタシグマ変調等の技法を実装することもできる。
【００１５】
データシステム１０２はまた、少なくとも１つのトランスミッタ１０４を備えてもよい。トランスミッタ１０４は、通常、バス１０６のラインまたは信号パスにデータを伝送する。トランスミッタは、複数の信号ドライバを含むことができる（図１Ａには図示せず）。各信号ドライバは、バス１０６のパスまたはチャネル（例えば、ライン）でデータ信号を伝送できる。該当するドライバがそれぞれ、データ信号の共通のデータ間隔（または単位間隔）内にデータを伝送することができるように、データの伝送は、通常、１つまたは複数の伝送クロック信号で規制されるであろう。バス１０６の各信号パスは、シングルエンデッド信号パスまたは信号ラインとすることができる。図１Ａには図示されていないが、データシステム１０２は、バス１０６でのデータ伝送のために他の要素を採用してもよい。例えば、伝送イコライザ、レシーバイコライザ、およびクロック生成回路要素等が挙げられる。クロック生成回路要素は、例えば、発振子、位相ロックループ、遅延ロックループ、位相ミキサ等を含むことができる。
【００１６】
トランスミッタ１０４は、通常、符号器１０８を含むであろう。符号器１０８は、伝送されるデータ（例えば、ＤＱＴ０、ＤＱＴ１〜ＤＱＴｎ）を選択的に修正または符号化するように構成される。これにより、トランスミッタ１０４は、符号化されたデータ信号（例えば、ＤＱＣ０、ＤＱＣ１〜ＤＱＣｎ）を伝送することができる。伝送対象のデータをバス１０６上の符号化データ信号に符号化すると、一部の実施形態では、ＰＤＮに対する要求が減らされ、バス１０６またはＰＤＮでのデータの伝送のエネルギー特性が改良される。したがって、バス上でデータを伝送するのに必要な電流、電圧、または電力等のいずれかまたは全てを低減するよう符号化を実施することができる。例えば、一部の状況では、符号化されたデータ信号の伝送は、伝送対象のデータ信号を符号化なしで伝送する場合に比べて、ノイズを抑え電力を少なくすることができる。
【００１７】
符号器１０８の回路は、トグル、フラグ、または極性ビット反転手法等のデータバス反転符号化手法を実装するためにデータバス反転回路内のインバータと一緒に実装してもよい。そのような実施形態において、伝送対象のデータ信号（例えば、ＤＱＴ０、ＤＱＴ１〜ＤＱＴｎ）のデータは、符号化されたデータ信号（例えば、ＤＱＣ０、ＤＱＣ１〜ＤＱＣｎ）としてバス１０６のチャネルに載せる前に選択的に反転させることができる。これは反転プロセスで達成可能である。このような反転プロセスでは、各データビットおよび各データビットの反転バージョンを、符号化制御信号によって制御される１つまたは複数のマルチプレクサ（ＭＵＸ）に適用することができる。
【００１８】
符号化制御信号は、データ信号の反転バージョンからまたはデータ信号の非反転バージョンから選択するようマルチプレクサを制御する。例えば、バイナリシステムにおいて、バス上の論理「０」と関連付けられ得るロー信号の伝送は、論理「１」と関連付けられ得るハイ信号の伝送よりもより多くのエネルギーを必要とする場合がある。そのような場合は、ハイ信号状態ではなくロー信号状態として伝送されるデータビット数を減らすことによりバスのエネルギーを抑えることが可能である。そのような場合のデータバス反転を実装する符号器は、バスのラインの全てについて共通の単位間隔のデータビットを変更して、データビットの反転により論理ローの数を減らすことができる。反転されたデータビットは、符号化されたデータ信号として伝送される。データシステム１０２の符号器１０８の他の実施形態では、単純なデータバス反転手法よりも高度な符号化手法によって伝送対象のデータを符号化する回路を採用してもよい。
【００１９】
通常、検出器１１４からの符号化制御信号（図１ＡではＥＮＣとして図示）は、符号器１０８を制御する。この制御信号は、符号器１０８によって実施される符号化を設定する。特定の単位間隔での符号化制御信号の状態は、対応するデータ間隔または単位間隔内のバスのデータ信号を符号化すべきかどうか、或いはどのように符号化するかを示す。例えば、制御信号をハイに設定して、現在の単位間隔で伝送対象のデータについて符号器１０８によって反転を行う必要があることを示すことができる。同様に、制御信号をローに設定して、現在の単位間隔で伝送対象のデータについて符号器１０８によって反転を行う必要がないことを示すことができる。これは、アクティブハイの符号化として理解することができる。もう一つの方法として、符号化制御信号またはバス反転制御信号は、制御信号がロー信号である場合に反転を示す。これは、アクティブローの符号化として理解することができる。制御信号は、トランスミッタ１０４のドライバまたは複数のドライバ（図１Ａに図示せず）によってバス１０６上を伝送することもできる。バス１０６の所与の単位間隔での制御信号の信号レベルは、バス上を同じ単位間隔において伝送されるデータの符号化状態を表す。この伝送は、例えば、共通の伝送クロックを使用して制御信号およびデータ信号を伝送することにより達成され得る。したがって、符号化制御信号を利用して、バス１０６上にあるレシーバの要素を制御することもできる。
【００２０】
データシステム１０２はまた、レシーバ１１０を備えてよい。レシーバ１１０は、バス１０６のラインから信号を受信する。例えば、レシーバ１１０は、複数のスライサ（図１Ａに図示せず）を備えることで、バス１０６上の信号の連続した各単位間隔のアナログ値をサンプリングし、サンプリングされた値を閾値と比較することによりデジタル値を生成することができる。このように生成されたデジタル値（例えば、ＤＱＲＣ０、ＤＱＲＣ１〜ＤＱＲＣｎとして示される受信した符号化済みデータ信号）は、通常、伝送した符号化済みデータ信号（例えば、ＤＱＴＣ０、ＤＱＴＣ１〜ＤＱＴＣｎ）のデータと同じになるであろう。同様に、１つまたは複数のスライサは、レシーバ１１０によって受信される符号化制御信号（例えば、ＥＮＣ）を生成することができる。
【００２１】
更に、レシーバ１１０は、通常、復号器１１２を備えることになる。受信した符号化済みデータ信号（例えば、ＤＱＲＣ０、ＤＱＲＣ１〜ＤＱＲＣｎ）を選択的に変更または復号して受信したデータ信号（例えば、ＤＱＲ０、ＤＱＲ１〜ＤＱＲｎ）を生成するよう、復号器１１２は構成される。通常、転送対象のデータ信号（例えば、ＤＱＴ０、ＤＱＴ１〜ＤＱＴｎ）のデータは、受信したデータ信号（例えば、ＤＱＲ０、ＤＱＲ１〜ＤＱＲｎ）と同じになるであろう。したがって、復号器１１２は符号器１０８を補完する。例えば、符号器１０８が転送対象のデータ信号のデータの反転を実施する場合、復号器１１２は、受信した符号化済みデータ信号のデータの反転を実施することになる。同様に、データシステム１０２で他の符号化手法が実装されている場合に、伝送した符号化済みデータを復号するよう他の復号器を実装することもできる。通常、レシーバ１１０によって受信される符号化制御信号（ＥＮＣ）は、単位間隔ごとの復号器１１２による復号化を、適宜、制御するよう実装され得る。
【００２２】
図１Ｂは、周波数ベースのバス符号化を実装するのに適したデータシステムの実施形態の例示的な要素を示すブロック図である。図１Ｂに示す周波数ベースの符号化システム１８０は、２つの検出器（１５４および１５５）の出力に基づいて符号化を選択することができる。２つの検出器１５４および１５５が存在するため、周波数ベースの符号化システム１８０は、検出器１５４および１５５からの複数の入力に基づいて、複数の符号化手法を使用することができる。例えば、前述したように、周波数ベースの符号化システム１８０では、特定の論理レベルに駆動される信号ラインの周波数成分を最小限に抑えるために符号化を行うことができる（例えば、駆動される「ゼロ」の数の周波数成分を最小限に抑える）。これは「ＤＣ」データバス反転または「ＤＢＩ＿ＤＣ」と称することができる。周波数ベースの符号化システム１８０では、スイッチング信号ラインの遷移数の周波数成分を最小限に抑えるために符号化を行うことができる（例えば、「０」から「１」への切り替えおよび「１」からの「０」への切り替えの周波数成分を最小限に抑える）。これは「ＤＢＩ＿ＡＣ」と称することができる。検出器１５４および１５５の複数の出力を組み合わせることで、ＤＢＩ＿ＡＣまたはＤＢＩ＿ＤＣが存在する場合に、どの符号化を選択するかを選ぶことができる。更に、検出器１５４および１５５の出力に基づいてより複雑な符号化システムを選択することができる。
【００２３】
図１Ｂにおいて、周波数ベースの符号化システム１８０は、供給電圧用のドライバ電力配電回路網（ＤＰＤＮ）１５０、供給電圧用のプレドライバ電力配電回路網（ＰＰＤＮ）１５２、検出器１５４、検出器１５５、符号器１５６、プレドライバ１６０、ドライバ１６１、バス１６２、受信デバイス１７０を備える。通常、プレドライバ供給電圧の場合は、他の内部回路と共有されるが、ドライバ１６１とは共有されない。同様に、ドライバ供給電圧の場合も、通常は、出力ドライバ専用となる。但し、一部の状況では、このような電源回路網は、内部回路、プレドライバ１６０、および／またはドライバ１６１と共有され得る。
【００２４】
ＤＰＤＮ  １５０を接続することで、ドライバ１６１に電源が提供される。ドライバ１６１はそれぞれ、バス１６２の導体（またはライン）を駆動する。したがって、ドライバ１６１により出力される信号は、バス１６２によって受信デバイス１７０に伝達される。ＰＰＤＮ  １５２を接続することで、プレドライバ１６０に電源が提供される。プレドライバ１６０はそれぞれ、ドライバ１６１の少なくとも１つを駆動する。したがって、プレドライバ１６０によって出力される信号は、ドライバ１６１によって増幅および／または中継され、バス１６２によって受信デバイス１７０に伝達される。
【００２５】
プレドライバ１６０への入力は、第１の検出器１５４に結合される。プレドライバ１６０への入力は、第２の検出器１５５に結合される。検出器１５４の出力は、符号器１５６に結合される。検出器１５５の出力は、符号器１５６に結合される。符号器１５６はまた、受信デバイス１７０へ送信するように意図された入力信号を受信する。
【００２６】
一実施形態では、検出器１５４は、検出器１１４に関連して前述した機能と同じまたはそれに類似した機能を実行することができる。検出器１５４は、バス１６２のチャネルまたは信号ラインと関連付けられたエネルギー関連の特性を検出または推測するよう、実装され得る。検出器１５４が生成する出力は、符号器１５６に結合される。この出力は、符号器１５６の符号手段および／または受信デバイス１７０によって行われる復号化の設定または状態を決定するのに役に立つ。スペクトルベースの決定または周波数ベースの決定を行ってバス１６２における伝送対象のデータの符号化を特定できるよう、検出器１５４を実装することができる。
【００２７】
バス１６２上を伝送されるデータの周波数特性を検出するよう、検出器１５４の周波数応答を設定できる。この検出では、伝送されるデータの周波数特性が特定の周波数の近辺で平滑化または整形されるように、バス１６２の特定の伝送条件下で変化する、符号器１５６による符号化を考慮することができる。例えば、バス１６２のラインの一部または全ての集合電流に応じて、符号器１５６による符号化を制御するように、検出器１５４を実装することができる。この制御では、１つまたは複数の共振周波数等、選択された周波数でまたはその近辺でスペクトル成分のエネルギーが低くなるように、当該電流を変更することができる。これらの共振は、ＤＰＤＮ  １５０等の、システムの電力供給ネットワークの好ましくない（即ち増大した）ノイズ状況と関連付けることができる。またピークエネルギーまたはノイズ特性を減じない符号化決定を行うように検出器１５４が実装され得ることも理解されたい。
【００２８】
検出器１５４は伝送対象の入力信号の２つ以上の単位間隔を評価することができる。この評価においては、バスの符号化を示すライン、マスキング信号ライン、アドレスライン、および／または制御ライン等、バスの他の信号ラインまたは全ての信号ラインを含むことができる。この評価では、他のバスおよび／または集積回路からの信号ラインを含んでもよい。既存の好ましくない周波数共振状況を検出することも、潜在的な好ましくない周波数共振状況を予測することもできる。検出器１５４によるこの検出に応答して、符号器１５６は符号化の変更を行うことができる。この符号化の変更は、バス１６２および／または電力配電回路網１５０での好ましくないまたは不利益な共振を回避または減じるように設計してもよい。
【００２９】
例では、ＤＰＤＮ  １５０の特定の共振周波数を決定することができる。その周波数でまたはその近辺で応答するよう検出器１５４を構成することができる。言い換えると、検出器１５４は、共振周波数と関連付けられた周波数特性に従って時間で変化する出力を生成する。検出器１５４がその周波数に応答すると、符号器１５６によって符号化手法が選択され、ＤＰＤＮ  １５０のあまり好ましくない動作状況を回避できるようになる。検出器１５４は、１つまたは複数のフィルタと一緒に実装することができる。検出器１５４は、１つまたは複数のフィルタの出力に基づいて、符号器１５６によって使用される符号化を設定するために出力を生成することができる。検出器１５５は、前述したフィルタと技法を使用して実装することができる。
【００３０】
プレドライバ１６０の切り替えおよび／またはバス１６２のチャネルまたは信号ラインの切り替えと関連付けられた周波数関連の特性を検出または予測するよう、検出器１５５を実装することができる。検出器１５５が生成する出力は、符号器１５６に結合される。この出力により、符号器１５６の符号化手法の状態の設定の制御、および／または受信デバイス１７０により行われる復号化の制御を容易に行うことができる。検出器１５４のように、スペクトルベースの決定または周波数ベースの決定を行うことで、バス１６２で伝送されるデータの符号化を容易に制御できるように検出器１５５を実装することができる。
【００３１】
検出器１５５は、バス１６２で伝送される論理レベルの切り替えの周波数特性を検出するよう設定され得る。このような検出により、符号器１５６は、特定の伝送状況下で符号化を変更することができる。これらの符号化の切り替えは、バス１６２（またはプレドライバ１６０）と関連付けられたスイッチング電流が特定の周波数の近辺で平滑化または整形されるように、選択することができる。例えば、バス１６２のラインの一部または全ておよび／またはプレドライバ１６０の集合スイッチング電流に応じて符号器１５６による符号化を容易に制御できるよう、検出器１５５を実装することができる。この制御では、１つまたは複数の共振周波数等、選択された周波数で、またはその近辺でスイッチング電流が小さくなるよう変更され得る。このような共振は、ＰＰＤＮ  １５２等、システムの電力配電回路網の好ましくない（または増大した）ノイズ状態と関連付けることができる。またスイッチングノイズ特性を減じない符号化決定を行うように検出器１５５が実装され得ることも理解されたい。
【００３２】
検出器１５４と同様に、検出器１５５は、伝送対象の入力信号の２つ以上の単位間隔を評価することができる。この評価においては、バスの符号化を示すライン、マスキング信号ライン、アドレスライン、および／または制御ライン等、バスの他の信号ラインまたは全ての信号ラインを含むことができる。この評価では、他のバスおよび／または他の集積回路からの信号ラインを含むことができる。評価では、既存の好ましくない周波数共振状況を検出することも、潜在的な好ましくない周波数共振状況を予測することもできる。検出器１５５によるこの検出に応答して、符号器１５６は符号化の変更を行うことができる。プレドライバ電力配電回路網１５２での好ましくないまたは不利益な共振を回避または抑制するよう、この変更を設計することができる。符号化の変更によって回避される問題としては、プレドライバ論理切り替えに起因するプレドライバ電力供給ネットワーク１５２における共振ノイズ、およびＰＬＬ、ＤＬＬ、フィルタ、クロックバッファ等、特定の周波数感度を持つ他の回路へのノイズ注入等が挙げられる。
【００３３】
ＰＰＤＮ  １５２の特定の共振周波数を決定することができる。検出器１５４と同様に、検出器１５５は、その周波数またはその近辺で応答するよう設計または構成することができる。検出器１５５がその周波数に応答すると（即ち、検出器１５５がプレドライバ電力配電回路網１５２における共振周波数とスイッチング電流との関係を認識する）、ＰＰＤＮ  １５２におけるあまり好ましくない動作状況を回避するために符号器１５６によって符号化手法が選択される（または変更される）。前述したフィルタおよび技法を使用して検出器１５５を実装することができる。
【００３４】
一実施形態では、周波数ベースの決定に代わり、信号ラインの遷移数および特定の状態に駆動される信号ラインの数に従って、データバス反転を適用することができる。例えば、デフォルトでは、ＤＢＩ＿ＡＣ符号化を適用することができる。これにより高周波数ノイズの低減が可能である（例えば、検出器１５５は、信号ラインの遷移数に基づいてＤＢＩを適用するよう符号器１５６を制御することができる）。しかし、特定の論理状態に駆動すべきビット数が閾値を超える場合は、ＤＢＩ＿ＡＣを適用することができる（またはＤＢＩ＿ＤＣに優先する）。言い換えると、符号化された信号ライン上のビット数が特定の数を超える場合（例えば、８ビットが６）ＤＢＩ＿ＤＣが適用され（ＤＢＩ＿ＡＣではなく）、符号化を決定する（例えば、検出器１５４により選択される符号化は、送信されるビット数の閾値を超えて、特定の状態となるので、検出器１５５は、検出器１５４による符号化に「優先」し得る）。
【００３５】
周波数ベースのバス符号化技術を実装するデータシステム２０２の実施形態を図２Ａに示す。本実施形態は前述した例のいずれとも一緒に使用することができる（例えば、他の近くのデバイスとのＲＦ干渉を回避すること、システム電力供給ネットワークの共振周波数と一致するバス切り替え励振周波数を回避する等、他の判定基準を実装すること）。このために、図示した実施形態では、検出器２１４でバス２０６のデータについて電力関連の尺度を求める。このような電力関連の尺度は、ハミング重みとなり得る。電力関連の尺度は、伝送されたビットの加重和と個々の符号の電力を掛け算したものとして求めることができる。加算されたビットは、伝送されたデータと任意の反転制御ビットとを含み、バス２０６で伝送される他の制御ビットまたはアドレス指定ビットを含むことさえもできる。
【００３６】
図２Ａの実施形態では、トランスミッタ２０４は、データバス反転符号化手法を実装した符号器２０８を備える。図２Ａに示すレシーバ２１０は、図１Ａおよび図１Ｂの実施形態と関連して導入されたレシーバに類似し得る。
【００３７】
検出器２１４は、加算器２１６、フィルタ２１８、および符号化制御セット要素（比較器２２０等）を備える。フィルタ２１８は帯域通過フィルタとして示されているが、低域通過フィルタとして実装可能である。加算器２１６は、バス２０６の集合電流を予測するために、各単位間隔で伝送されるデータのビット（例えば、ＤＱＴ１〜ＤＱＴｎ）を表す信号を合計し、加算器の出力をフィルタ２１８に入力する。
【００３８】
フィルタ２１８の転送機能は、帯域通過フィルタの形態をとり、中心周波数はシステムおよび／または周波数帯域の共振周波数か、その近辺にある。例えば、帯域通過フィルタの中心は、電力配電回路網のピーク共振または位相ロックループのピーク利得の近くに置くことも、１つまたは複数の他の特定の周波数または周波数帯域に対して置くこともできる。図２Ａの例では、帯域通過フィルタの出力は、フィルタによって示される好ましくない周波数範囲でのバス電流を示す信号である。フィルタ２１８の出力は、比較器２２０に加えられる。フィルタ２１８の出力と比較器２２０に供給される閾値との比較により、符号化制御信号が生成される。この信号は、符号器２０８による反転を所望の符号化手法に従って制御する。例えば、帯域通過フィルタの出力により、符号器２０８は、バス２０６の各ラインの論理状態を反転することができる（即ち、データバス時反転（ＤＢＩ））。比較器２２０の入力で使用される閾値信号は、例えば、着信する符号化されていないビットの合計に基づく重み尺度をもたらすように、動的に変化し得る。予測電流の検出周波数に応じた集合電流の「重み」のそのような変化により、バス２０６のスペクトル成分は、検出器２１４を備えていないシステムと比較されると、様々な方法で整形され得る。
【００３９】
図２Ｂは、周波数ベースの符号化の例示的なデータバス反転符号化の実施形態を示す図である。図２Ｂでは、データシステム２５０は、検出器２１５、検出器２６５、比較器２２１、加算器２７０、トランスミッタ２８４、およびバス２０６を備える。検出器２１５は、加算器２１６とフィルタ２１８を備える。検出器２６５は、加算器２６６とフィルタ２６８を備える。トランスミッタ２８４は、符号器２８８と、プレドライバ２５６と、ドライバ２５８を備える。
【００４０】
図２Ｂに示す実施形態は、前述した例のいずれでも使用できる（例えば、他の近隣のデバイスとのＲＦ干渉の回避、ＰＬＬ等の高感度回路との干渉の低減、システム電力供給ネットワークの共振周波数と一致するバス切り替え励振周波数の回避等、他の判定基準の実装）。このために、図示した実施形態では、検出器２１５でバス２０６のデータに対する電力関連の尺度を求める。この電力関連の尺度は、前述した方法で決定することができる。
【００４１】
図示した実施形態（検出器２６５内）はまた、スイッチング電力関係尺度を決定する。スイッチング電力関係の尺度は、単位時間間隔から単位時間間隔へ切り替わるビットの数に対応し得る。カウントされるスイッチングビットの数は、任意の反転制御ビットおよび／またはプレドライバ２５６によって制御される他の制御ビットまたはアドレス指定ビットを含み得る。
【００４２】
図２Ｂでは、トランスミッタ２８４は、データバス反転符号化手法を実装する符号器２８８を備える。符号器２８８の出力は、プレドライバ２５６への入力である。プレドライバ２５６の出力は、ドライバ２５８への入力である。ドライバ２５８への出力は、バス２０６に結合される。図２Ｂに図示していないレシーバは、バス２０６からの受信入力となり、図１Ａおよび１Ｂに示す実施形態に関連して導入されるレシーバに類似している。
【００４３】
検出器２１５は、加算器２１６とフィルタ２１８を備える。フィルタ２１８は帯域通過フィルタとして説明されているが、高域通過フィルタ、低域通過フィルタ、または他の所望のタイプのフィルタ（例えば、帯域通過、多重バンド帯域通過等）として実装してよい。加算器２１６は、各単位間隔で伝送するデータのビット（例えば、ＤＱＴ１〜ＤＱＴｎ）を表す信号を合計することによって、および加算器２１６の出力をフィルタ２１８に入力することによって、バス２０６の集合電流および／またはドライバ２５８で使用されるＰＤＮを予測する。
【００４４】
フィルタ２１８の伝達関数は、中心周波数がシステムの共振周波数および／または周波数帯域に位置するまたはその近くに位置する、帯域通過フィルタの形式とすることができる。例えば、帯域通過フィルタの中心は、電力配電回路網のピーク共振または位相ロックループのピーク利得の近くに置くことも、１つまたは複数の他の特定の周波数または周波数帯域に対して置くこともできる。図２Ｂの例では、帯域通過フィルタの出力は、フィルタによって示される好ましくない周波数範囲でのバス信号を示す信号である。フィルタ２１８の出力は加算器２７０に加えられる。
【００４５】
検出器２６５は、加算器２６６およびフィルタ２６８を備えている。フィルタ２６８はまた、前述したフィルタの様々なタイプを使用してフィルタ２６８を実装することができる。加算器２６６は、各単位間隔間で変化したビットを示す信号を特定して加算することで、および加算器２６６の出力をフィルタ２６８に入力することで、プレドライバ２５６の集合スイッチング電流および／またはプレドライバ２５６によって使用されるＰＤＮを予測する。
【００４６】
フィルタ２６８の伝達関数は、中心周波数がシステムの共振周波数、ＰＤＮ、および／または周波数帯域に位置するまたはその近くに位置する、帯域通過フィルタの形式とすることができる。例えば、帯域通過フィルタの中心は、プレドライバ２５６を提供する電力配電回路網のピーク共振、または位相ロックループのピーク利得の近くに置くことも、１つまたは複数の他の特定の周波数または周波数帯域に対して置くこともできる。図２Ｂの例では、帯域通過フィルタの出力は、フィルタによって示される好ましくない周波数範囲でのバススイッチングノイズを示す信号である。フィルタ２６８の出力は、加算器２７０に加えられる。
【００４７】
フィルタ２１８の出力とフィルタ２６８の出力は、加算器２７０によって合計される。フィルタ２１８と２６８の出力は、合計する前に加算器２７０によって重み付けされ得る。加算器２７０の出力と閾値との比較器２２１による比較により、所望の符号化手法に従って符号器２８８を制御する符号化制御信号が生成される。例えば、加算器２７０の出力により、符号器２８８は、バス２０６の各ラインの論理状態を反転させてデータバス反転（またはＤＢＩ）を実装することができる。比較器２２１の入力で使用される閾値信号は、例えば、着信する非符号化ビットのプロパティ（例えば、スイッチングビット数、着信ビットの重み等）に基づいて、重み尺度をもたらすために動的に変化させることができる。このような変化を使用すれば、バス２０６のスペクトル成分は、検出器２１５および２６５がなくてもシステムと比較される際に異なる方法で形成することができる。
【００４８】
図２Ｃは、周波数ベースの符号化の第２の例示的なデータバス反転符号化を示す図である。図２Ｃでは、データシステム２５１は、検出器２１５、検出器２７５、比較器２２１、加算器２７１、トランスミッタ２８４、およびバス２０６を備える。検出器２１５は、加算器２１６およびフィルタ２１８を備える。検出器２７５は、加算器２６６およびフィルタ２６８を備える。トランスミッタ２８４は、符号器２８８、プレドライバ２５６、およびドライバ２５８を備える。
【００４９】
図２Ｃに示すデータシステム２５１は、図２Ａに示すデータシステム２５０とほぼ同じであり、検出器２６５が検出器２７５で置き換えられていること、加算器２７０が加算器２７１で置き換えられていることが異なる。検出器２７５は検出器２６５とほぼ同じであるが、加算器２７１に入る予備出力を備えている点が異なる。したがって、加算器２７１の入力は３つである。検出器２７５の追加出力は、加算器２６６の出力である。
【００５０】
フィルタ２１８の出力、フィルタ２６８の出力、および加算器２６６の出力は加算器２７１によって加算される。フィルタ２１８およびフィルタ２６８の出力、および／または加算器２６６の出力は、重み付けしてから、加算器２７１による加算を行うことができる。加算器２７１の出力と閾値とが比較器２２１によって比較されると、所望の符号化手法に従って符号器２８８を制御する符号化制御信号が生成される。例えば、加算器２７１の出力により、符号器２８８は、バス２０６の各ラインの論理状態を反転させることができる。比較器２２１の入力で使用される閾値信号は、例えば、着信する非符号化ビットのプロパティ（例えば、スイッチングビット数、着信ビットの重み等）に基づいて、重み尺度をもたらすために動的に変化させることができる。このような変化を使用すれば、バスのスペクトル成分は、検出器２１５および２７５がなくてもシステムと比較される際に異なる方法で形成することができる。図２Ｃから分かるように、加算器２７１への３つの入力により、バス重み、フィルタリングされたバス重み、およびフィルタリングされた変化ビットの数に基づいて、符号化を決定することができる。これは、消費電力と、低または中の同時スイッチング出力（ＳＳＯ）ノイズと、高周波数ＳＳＯノイズと、クロストークノイズとの間のバランスを実装するのに使用することができる。
【００５１】
図２Ｄは、周波数ベースの符号化の例示的な実施形態を示す図である。図２Ｄでは、データシステム２５２は、検出器２１５と、検出器２６５と、比較器２３１と、比較器２３２と、トランスミッタ２８５と、バス２０６を備える。検出器２１５は、加算器２１６およびフィルタ２１８を備える。検出器２６５は、加算器２６６とフィルタ２６８を備える。トランスミッタ２８５は、符号器２８９と、プレドライバ２５６と、ドライバ２５８とを備える。
【００５２】
図２Ｄに示す実施形態は、前述した例のいずれとも一緒に使用することができる。図示した実施形態では、バス２０６のデータに関する電力関連の尺度を検出器２１５で決定する。この電力関連の尺度は、前述したいずれの方法でも求めることが可能である。
【００５３】
図示した実施形態はまた、スイッチング電力関連の尺度を検出器２６５で特定する。スイッチング電力関連の尺度は、単位時間間隔から単位時間間隔に切り換えるビット数に対応し得る。カウントされるスイッチングビット数は、任意の反転制御ビットおよび／またはプレドライバ２５６で制御される他の制御ビットまたはアドレス指定ビットを含み得る。
【００５４】
図２Ｄでは、トランスミッタ２８５は、複数の符号化モードを実装する符号器２８９を備える。例では、これらの符号化モードは、非反転、データバス反転、および予め決定されたパターンに対するデータのＸＯＲを含み得る。したがって、この例では３つの符号化手法が存在する。使用する符号化手法は、比較器２３１および２３２の出力に基づいて選択される。例えば、比較器２３１および２３２の両方の出力がローの場合は、非反転を使用することができる。比較器２３１および２３２の出力が異なる場合は、予め決定されたパターンに対してデータをＸＯＲとすることができる。両方の比較器の出力がハイの場合、データバス反転を使用することができる。他の組み合わせとしては、追加の比較器および閾値、並びに更なる符号化手法を使用することができる。
【００５５】
符号器２８９の出力は、プレドライバ２５６の入力である。プレドライバ２５６の出力は、ドライバ２５８への入力である。ドライバ２５８の出力は、バス２０６に結合される。レシーバ（図２Ｄに図示せず）は、バス２０６からの受信入力とすることができ、図１Ａおよび図１Ｂに示す実施形態と関連して導入されたレシーバと類似し得る。
【００５６】
検出器２１５は、加算器２１６とフィルタ２１８を備える。図２Ｄの例では、帯域通過フィルタの出力は、フィルタによって示される好ましくない周波数範囲でのバス信号を示す信号である。フィルタ２１８の出力は、比較器２３１に加えられる。
【００５７】
検出器２６５は、加算器２６６とフィルタ２６８を備える。図２Ｄの例では、帯域通過フィルタの出力は、フィルタで示される好ましくない周波数範囲でのバススイッチングノイズを示す信号である。フィルタ２６８の出力は、比較器２３２に加えられる。
【００５８】
フィルタ２１８の出力は、比較器２３１によって第１の閾値と比較される。フィルタ２６８の出力は、比較器２３２によって第２の閾値と比較される。比較器２３１および２３２の出力は符号化制御信号を生成し、これにより、複数の所望の符号化手法のいずれかに従い、符号器２８９によって符号化が制御される。例えば、比較器２３１の出力により、符号器２８９は、バス２０６の各ラインの論理状態を反転することができる。比較器２３２の出力は、この反転を無効にすることができ、これによりバス２０６の各ラインの論理状態は通常の出力となる。別の例では、比較器２３１の出力により、符号器２８９は、第１の符号器手法を適用できるようになり、比較器２３２の出力により、符号器２８９は、第２の符号器手法を適用できるようになる。別の例では、比較器２３１および２３２の出力は４つの状態をとる可能性があるので、比較器２３１および２３２の出力に従って、符号器２８９は、４つの符号化手法のいずれかを適用することができる。
【００５９】
比較器２３１および２３２の入力で使用される閾値信号を動的に変化させることで、例えば、着信する非符号化ビットのプロパティ（例えば、スイッチングビットの数、着信ビットの重み等）に基づいて重み尺度をもたらすことができる。そのような変化を利用すれば、比較器２３１および２３２によって複数の閾値が提供されなくてもシステムとの比較を行う場合に、バスのスペクトル成分を様々な方法で整形することができる。
【００６０】
図２Ｂ、図２Ｃ、および図２Ｄには、２つの検出器が示されているので、周波数ベースの符号化システム２５０〜２５２では、これらの検出器からの複数の入力に基づいて複数の符号化手法を使用することができる。この場合は、プレドライバ電力スイッチングノイズおよび主ドライバ電力スイッチングノイズを低減するように、符号化を適用することができる。プレドライバ電力スイッチングノイズはジッタを引き起こす主成分となる可能性があり、主ドライバ電力スイッチングノイズは固有の問題を引き起こすので、プレドライバ電力スイッチングノイズとドライバ電力スイッチングノイズの両方に基づいて符号化を変更できるようにすれば、これらの問題の中の１つだけに単独で対処するのでなく広範なスイッチングノイズ問題に対処することができる。
【００６１】
符号化システム２５０〜２５２では、バス２０６上に８本のデータラインが示されている。但し、このような符号化システム２５０〜２５２はいずれも、より少ないデータラインで、またはデータラインを追加して実装可能である。更に、符号化制御信号用に制御ラインが１つしか示されていない場合、符号化システム２５０〜２５２およびバス２０６はまた、追加のまたは他の制御信号またはアドレス指定信号を実装してもよい。
【００６２】
前述の検出器の実施形態では、無限インパルス応答フィルタ（「ＩＩＲ」）を使用できる。このようなフィルタは、回路のアナログ要素またはデジタル要素として実装され得る。バス出力重みの履歴のスケール値を蓄積することで（例えば、バスラインの電流またはスイッチング重みの複数の単位間隔の加算に基づいて）、周波数ベースのバス符号化または反転の決定を行うことができる。前述した検出器の実施形態のフィードバックループで実装され得る例示的な３タップフィルタ構造（２つの係数と遅延出力履歴）の周波数応答を示す。図３Ａのグラフは、帯域通過フィルタの周波数応答を示す。図３Ｂのグラフは、図３Ｂの周波数応答の反転を示す。これらのグラフは、５Ｇｂｐｓのデータレートに基づいたシステムを示す（Ｆｓ＝５ＧＨｚでサンプリングされるフィルタの出力）。例示的なＩＩＲ帯域通過フィルタは、伝達関数によって以下のように説明できる。
【数１】
0005606527.tif 000002
【００６３】
「ａ」および「ｂ」の係数値を適切な値に設定することにより、フィルタの中心周波数が所望の周波数に調整され得る。例えば、このフィルタの中心周波数をシフトする方法として考えられる１つの方法は、フィルタ係数「ａ」を調整することである。中心周波数を正確に配置するための解は、方程式「ａ＝２＊ｃｏｓ（Ｆｒ／Ｆｓ）」で求めることができる。ここで、Ｆｒはシステムの共振周波数であり、Ｆｓはフィルタのサンプリング周波数である。「ａ」および「ｂ」は、正にも負にもなり得ることを理解されたい。一般に、「ａ」および「ｂ」（または、他のフィルタ伝達関数でこれらに相当するもの）の値（および符号）は、所望のフィルタ応答とフィルタを実装するのに使用される要素によって決定される。
【００６４】
Ｆｓの小さな変化に対しても「ａ」の感度が与えられる場合、Ｆｓの値よりかなり低い周波数にフィルタのノッチを正確に配置すると、「ａ」の値を正確に設定することが難しくなる場合がある。この感度を低下させるには、サブサンプリングまたはデシマルアプローチを使用することも可能である。フィルタ係数および／またはフィルタのサンプリングレートを修正することにより、バスにおける好ましくないエネルギー特性を回避するようにバスに対する周波数応答が選択される検出器のフィルタを構築することができる。図４Ａ、４Ｂ、および４Ｃはそれぞれ、フィルタ伝達関数の係数「ａ」について様々な値を取る例示的なフィルタの周波数応答の反転をグラフ化したものである。各曲線はそれぞれ、Ｆｓ、Ｆｓ／２、およびＦｓ／４でのサンプリングレートで、０〜１．７５の範囲において０．２５ずつプロットした係数「ａ」の値に基づくものである。
【００６５】
サブサンプリングアプローチを使用すれば、フィルタ係数（例えば、係数「ａ」）に対するノッチ周波数の感度を低下させることで、ノッチを低周波数に容易に配置することが可能になる。１／２  Ｘサブサンプリングアプローチの場合は、デジタルおよび／またはアナログ実装における隣接重み値（時間）の平均をとり、このストリームに基づいて符号化制御（ＥＮＣ）を設定することができる。サブレートサンプリングと追加タップの使用は、デジタル実装において適切なアプローチである。但し、アナログ／デジタル組み合わせ実装の場合はまた、アナログ回路を使用してフィルタの中心周波数の配置を微調整するオプションも備えている。中心周波数のチューニングを行う更なるオプションとして考えられるのは、オンチップバイパスコンデンサに対する何らかの制御を追加的に行うことである。
【００６６】
システムの検出器は、いくつかの可能な周波数応答の少なくとも１つについてチューニング可能なプログラマブルフィルタを備えてもよい。そのようなシステムでは、デジタルフィルタ実装等で粗係数調整を行うことができる。システムのバスが、プログラマブル可能なオンチップバイパスコンデンサを使用して実装される場合、システムパフォーマンス中にオンチップバイパスコンデンサを調整することにより、ＰＤＮの共振周波数を調整することができる。ＰＤＮに対するそのような変更と組み合わせて、係る実施形態では、検出器の所望の周波数応答が引き続き、オンチップバイパスコンデンサおよびＰＤＮの共振周波数に加えた調整に対する所望の周波数応答を引き続き有するように、検出器を調整することもできる。前述したように、フィルタはマルチモード様式でも実装可能であり、デバイスの動作時に予めプログラムされたモードが選択的または動的に設定される。
【００６７】
図５Ａは、周波数ベースの検出器５１４および符号器５５０を備えるシステム５００のブロック図である。検出器５１４は、１つまたは複数の遅延要素５３１、５３２（図５Ａではそれぞれ「Ｄ１」と「Ｄ２」としても示す）と、１つまたは複数の増幅要素５４０、５４１（図５Ａではそれぞれ「ａ」と「ｂ」としても示す）と、フィルタ（即ち、検出器の「フィルタ部分」）を構成する１つまたは複数の加算器５２１、５２２、５２３、５６０と、符号器セット要素５６２とを備える。
【００６８】
符号器５５０は、着信する非符号化データ（図５Ａでは「ＤＱ非符号化」として表示）を修正するよう構成された反転／パス要素として実装することができ、これにより、バス上に実際に伝送された重みを表す集合バス重み信号（図５Ａでは「ＳＤＱ」として表示）が生成される。例えば、非符号化データは、インバータ５５１で反転すること、および遅延要素５５２へ加えて非反転とすることもできる。これにより、符号化された（反転された）データ信号および符号化されていない（反転されていない）データ信号に対して同様のタイミングを維持することができる。マルチプレクサ５５３は、符号化セット要素５６２からマルチプレクサ５５３に加えられる符号化制御信号に基づいて、適切な信号（符号化されたまたは符号化されていない）を通過させる。いくつかの実施形態では、反転／パス要素とシステムの符号器または復号器の構成要素は同様の機能を提供するので、反転／パス要素は、システムの符号器または復号器の構成要素とすることもそれらを共有することもできる。
【００６９】
加算器５２２は、バスのデータ信号と符号化制御信号を加算し、バスの集合電流を示す和を生成する（図５Ａの実施形態では、符号化制御信号はバス通信の一部として伝送される「ＤＢＩ」または「ＤＢＩ＿ＤＣ」信号である）。このように、フィルタ遅延要素５３１および５３２は、正確な集合バス重み情報を取得し、これによってバス伝達関数の履歴は正確なものとなる。
【００７０】
図５Ａでは、加算器５２１は符号化セット要素５６２によって行われる符号化論理決定で使用するデータ信号を加算する。加算器５２１の出力はＳＤＱＰである。符号化セット要素５６２は、ＤＢＩ制御信号または符号化制御（ＥＮＣ）信号を生成する。着信する集合重み信号ＳＤＱＰと、検出器５１４のフィルタ部分の遅延要素５３１および５３２で維持される履歴集合バス重み情報に基づいて、周波数ベースのバス符号化制御決定が行われる。図５Ｂに関してここで詳細を説明したように、符号化セット要素５６２は、符号化決定を容易にするよう構成された１つまたは複数の比較器を含み得る。
【００７１】
加算器５２２の出力信号は、加算器５２３への入力である。これにより、新しい集合バス重み信号がフィルタの出力信号に追加される（「ａ＊Ｄ１＋ｂ＊Ｄ２」として表示）。加算器５２３の出力は、第１の遅延要素５３１（Ｄ１）に加えられる。第１の遅延要素は、通常、少なくとも１つの単位間隔の入力値を保持するよう、レジスタまたは他のデータストア若しくはラッチ要素を含み得る。第１の遅延要素５３１の出力は、第２の遅延要素および第１の増幅要素５４０に加えられる。第２の遅延要素は、通常、少なくとも１つの単位間隔の入力値を保持するようレジスタまたは他のデータストア若しくはラッチ要素を含み得る。第１の増幅要素５４０は、前述したフィルタ伝達関数のいずれかの係数「ａ」等、フィルタの係数に対応する利得を適用する。
【００７２】
第２の遅延要素５３２の出力（Ｄ２）は、第２のアプリケーション要素５４１に加えられる。第２の増幅要素５４１は、前述したフィルタ伝達関数のいずれかの係数「ｂ」等、フィルタの係数に対応する利得を適用する。アプリケーション要素５４０および５４１のそれぞれの出力信号は、加算器５６０に加えられる。加算器５６０は、符号化セット要素５６２に入力されるフィルタ出力信号（図５では「ａ＊Ｄ１＋ｂ＊Ｄ２」として示す）を生成する。この実施形態では、２つの遅延要素（５３１および５３２）と２つの増幅要素（５４０および５４１）が説明されているが、所望のフィルタ伝達関数に応じて検出器５１４のフィルタ部分にそのような追加のまたはいくつかの要素を実装することもできる。検出器５１４で実装されたフィルタ伝達関数は、検出器５１４のフィルタの指定の周波数応答に基づいている。
【００７３】
符号化セット要素５６２の一例は、図５Ｂに示されている。符号化セット要素５６２は、比較器５６４、比較器５６６、および論理ゲート５６８を備えている。前述したように、集合バス重み信号ＳＤＱＰは、符号化セット要素５６２の第１の比較器５６４に加えられる。比較器は、符号化が必要かどうかを評価するために信号と閾値（「閾値Ａ」として表示される）を比較するよう構成することができる。例えば、ＤＢＩ＿ＤＣ符号化手法の場合、信号の重みが所望の重みを超えた場合（例えば、バスの潜在的な集合電流の５０％を示す閾値）、閾値の比較は反転を示し得る。同様に、フィルタ部検出器５１４の出力信号（図５Ａおよび図５Ｂでは、「ａ＊Ｄ１＋ｂ＊Ｄ２」として表示される）は、第２の比較器に適用され、閾値（「閾値Ｂ」として表示される）との比較も行われる。閾値Ｂは閾値Ａと同じ値とすることも異なる値とすることもでき、フィルタの増幅要素に帰因する利得に応じて異なる。図５Ｂの例示的な符号器設定要素５６２にはアナログ比較器が示されているが、これは、デジタル振幅比較器等のデジタル構成要素を使用して実装してもよい。
【００７４】
比較器５６４および５６６の出力を１つまたは複数の論理ゲート５６８（図５ＢにはＸＮＯＲゲートとして表示）に加え、比較器５６４および５６６の出力に応じて符号化制御信号を設定することができる。例えば、フィルタの出力に応じて、次の転送に符号化が必要な場合、論理ゲート５６８の出力をハイに設定できる。符号化が必要ない場合、論理ゲート５６８の出力をローに設定できる。
【００７５】
図６Ａは、検出器および符号器の多重周波数応答実施形態の要素を示すブロック図である。データシステム６０１は、検出器６１５と符号器５５０を備える。この実施形態は、図５Ａの実施形態に類似している。但し、この検出器６１５は、図５Ａに示されていない追加のフィルタ部と修正された符号器設定要素６６３を備えている。図６Ｂに修正された符号器設定要素６６３の例を示し、これについて後で説明する。図６Ａの下部には追加のフィルタ部が示されており、このフィルタ部は増幅要素６４２、増幅要素６４３、加算器６２４、加算器６６１、遅延要素６３３、および遅延要素６３４を備えている。追加フィルタ部により検出器６１５は、追加の周波数を検出できる。例えば、そのような検出器は、多重共振周波数を有する電力供給回路に対応し得るので、符号化を実装して多重共振周波数を回避することができる。例えば、データシステム６０１のフィルタ部分は、図６Ｃに示す周波数ピークによって表現される周波数を検出するよう設定され得る。図６Ｃのグラフは、単一の共振周波数より多くを有する、電力供給ネットワークの例示的な周波数応答を示す。図６Ａの実施形態では２つのフィルタ部を実装しているが、検出器の所望の周波数応答に応じて追加のフィルタ部を追加することができる。
【００７６】
図６Ｂに符号化セット要素６６３の一例を示す。符号化セット要素６６３は、比較器６７４、比較器６７５、比較器６７６、および論理ブロック６７８を備える。集合バス重み信号ＳＤＱＰは、符号化セット要素６７０内の第１の比較器６７４に加えられる。比較器６７４は、信号を閾値（「閾値ＡＡ」として表示）と比較して符号化が必要かどうかを評価するよう構成することができる。例えば、ＤＢＩ＿ＤＣ符号化手法の場合、信号の重量が所望の重みを超えた場合（例えば、バスの潜在的な集合電流の５０％を示す閾値）、閾値比較は反転を示し得る。検出器６１５の第１のフィルタの出力信号（図６Ａおよび図６Ｂで「ａ＊Ｄ１＋ｂ＊Ｄ２」として表示）は、比較器６７６に加えられる。この出力信号はまた、閾値（「閾値ＢＡ」として表示）と比較される。閾値ＢＡは、閾値ＡＡと同じ値にも異なる値にもなることができ、フィルタの増幅要素に帰因する利得によって異なる。検出器６１５の第２のフィルタの出力信号（図６Ａおよび図６Ｂでは、「ａ２＊Ｄ１＋ｂ２＊Ｄ２」として表示）は、比較器６７５に加えられる。この出力信号は、閾値（「閾値ＣＡ」として表示）と比較される。閾値ＣＡは閾値ＡＡおよび／または閾値ＢＡと同じ値にも異なる値にもなることができ、フィルタの増幅器要素に帰因する利得によって異なる。図６Ａの例示的な符号化セット要素６６３にアナログ比較器が示されているが、それは、デジタル振幅比較器等のデジタル構成要素を使用して実装してもよい。
【００７７】
比較器６７４、６７５、および６７６の出力を論理ブロック６７８に加えると、１つまたは複数の符号化制御信号が、比較器６７４、６７５、および６７６の出力の関数として設定される。例えば、フィルタの出力によるが、次の転送において符号化が必要とされる場合は、論理ブロック６７８の１つまたは複数の出力がハイに設定され得る。符号化が必要ない場合は、論理ブロック６７８の出力はローに設定され得る。
【００７８】
図７Ａはデータシステム並びに周波数応答検出器および符号器を示すブロック図である。データシステム７００は、検出器７１４、検出器７１５、および符号化選択要素７５０を備える。検出器７１４は、１つまたは複数の遅延要素５３１、５３２（図７Ａではそれぞれ「Ｄ１」および「Ｄ２」と表示）と、１つまたは複数の増幅要素５４０、５４１（図７Ａではそれぞれ「ａ」および「ｂ」として表示）と、１つまたは複数の加算器５２１、５２２、５２３、５６０と、符号化セット要素５６４とを備える。検出器７１４のフィルタ部分は、通常、増幅要素５４０と、増幅要素５４１と、遅延要素５３１と、遅延要素５３２と、加算器５６０と、加算器５２３とを備えるものとして表示され得る。したがって、この実施形態では、フィルタ部のこれらの要素が前述したフィルタリング機能を提供する。同様に、加算器５２１および５２２は、バスおよび符号化制御信号のデータ信号を加算して、バスの集合電流を示す和を生成する。
【００７９】
符号化選択要素７５０は、通常、着信する非符号化データ（図７では「ＤＱ  非符号化」と表示）を修正して、バス上で実際に伝送された重みを表す集合バス重み信号（図７Ａでは「ＳＤＱ」とラベル付け）を生成できるように構成される。例えば、符号器７５１はバス反転を適用することができる。符号器７５２は、非反転を提供する遅延要素となり得る。符号器７５３は、予め決定されたマスクビットのセット、マスクビットのシーケンス、または最後の伝送ビットセットに対してＸＯＲを適用することができる。マルチプレクサ７５４は、符号化セット要素７６４からマルチプレクサ７５４に適用された符号化制御信号に基づいて適切な信号（インバートされた、ＸＯＲされた、或いは符号化もされていない）を通過させる。一部の実施形態では、符号化選択要素７５０は、システムの符号器または復号器の構成要素を共有する。これは符号器または復号器が類似した機能を備えるためである。
【００８０】
検出器７１４は、デジタル比較器７７１と加算器７２７を備える。デジタル比較器７７１は、単位間隔と単位間隔との間で状態を変化させるビット数を求める。加算器７２７は、トグルビットのこの数を加算して、符号化セット要素７６４への入力として使用する。加算器７２７の出力は、着信する集合スイッチング重み信号ＴＤＱＰに応答する。
【００８１】
検出器７１５は、デジタル比較器７７０と加算器７２５とを備える。デジタル比較器７７０は、単位間隔の間で変更された状態を有するビット数を決定する。加算器７２５は、検出器７１５のフィルタ機能への入力として使用する、トグルビットのこの数を加算する。加算器７２５の出力は、着信集合スイッチング重み信号ＴＤＱに対応する。したがって、ＴＤＱは加算器７２６に入力される。履歴集合スイッチング重み情報は、検出器７１５のフィルタ部分の遅延要素７３５および７３６で維持される。検出器７１５の出力により、スイッチング周波数ベースのバス符号化制御決定を行うことができる。図７Ｂに関して本明細書内で詳細に説明したように、符号化セット要素７６４は、符号化決定を行うよう構成された１つまたは複数の比較器を備え得る。
【００８２】
加算器７２５の出力信号は、第２の加算器７２６への入力である。これは、新しい集合スイッチング重み信号をフィルタの出力信号に追加する（図７では、「ａ３＊Ｄ１＋ｂ３＊Ｄ２」として示す）。加算器７２６の出力は、第１の遅延要素７３５（Ｄ１）に加えられる。第１の遅延要素は、通常、レジスタまたは他のデータストアまたはラッチ要素を備え、少なくとも１つの単位間隔の入力値を保持する。第１の遅延要素７３５の出力は、第２の遅延要素および第１の増幅要素７４４に加えられる。第２の遅延要素もまた、通常、レジスタまたは他のデータストアまたはラッチ要素を備え、少なくとも１つの単位間隔の入力値を保持する。第１の増幅要素は、前述したフィルタ転送機能のいずれかの係数「ａ」等、フィルタの係数に対応する利得を適用する。
【００８３】
第２の遅延要素７３６（Ｄ２として表示されるように）の出力は、第２の増幅要素７４５に加えられる。第２の増幅要素は、前述したフィルタ転送機能のいずれかの係数「ｂ」等、フィルタの係数に対応する利得を適用する。増幅器要素のそれぞれの出力信号は、加算器７６１に加えられる。加算器７６１は、フィルタ出力信号を生成する（図７Ａでは「ａ３＊Ｄ１＋ｂ３＊Ｄ２」と示されている）。この信号は、符号化セット要素７６４への入力である。この実施形態では、２つの遅延要素および２つの増幅要素が示されているが、検出器７１５のフィルタの設計された周波数応答に基づいて検出器７１５に実装された所望のフィルタ伝達関数またはフィルタ伝達関数に応じて、そのような要素の追加分又をいくつかをフィルタ部分に実装することも可能である。
【００８４】
図７Ａの符号化セット要素７６４の一例を図７Ｂに示す。集合バス重み信号ＳＤＱは、符号化セット要素７８０内の比較器７８４に加えられる。比較器７８４は、信号と閾値（「閾値ＡＢ」として示すように）を比較して特定の符号化が必要かどうかを評価するよう構成され得る。例えば、信号の重みが所望の重みを超えた場合（例えば、バスの潜在的な集合電流の５０％を示す閾値）、ＤＢＩ＿ＤＣ符号化手法の場合、閾値比較は反転を示し得る。
【００８５】
集合スイッチング重み信号ＴＤＱＰは、符号化セット要素７８０内の比較器７８５に加えられる。比較器７８５は、信号と閾値（「閾値ＤＢ」）を比較して、特定の符号化が必要かどうかを評価するよう構成され得る。例えば、ＤＢＩ＿ＡＣ符号化手法の場合、信号のスイッチング重みが所望の重みを超えた場合（例えば、バスラインの５０％以上が状態を切り替えたことを示す）に、閾値比較は反転を示し得る。
【００８６】
検出器７１４のフィルタ部分の出力信号（図７Ａおよび７Ｂで「ａ＊Ｄ１＋ｂ＊Ｄ２」として表示される）は、比較器７８６に加えられる。比較器７８６は、この信号を閾値（「閾値ＢＢ」）と比較する。閾値ＢＢは、閾値ＡＢおよび／または閾値ＤＢと同じ値にも異なる値にもなることができ、フィルタの増幅器要素に帰因する利得によって異なる。
【００８７】
検出器７１５のフィルタ部分の出力信号（図７Ａおよび７Ｂでは「ａ３＊Ｄ１＋ｂ３＊Ｄ２」として表示される）は、比較器７８２に加えられる。比較器７８２は、この信号を閾値（「閾値ＣＢ」として表示される）と比較する。閾値ＣＢは、閾値ＡＢ、および／または閾値ＢＢ、および／またはＤＢと同じ値にすることも異なる値にすることも可能であり、フィルタの増幅要素に帰因する利得に応じて異なり得る。比較器７８２のこの比較は、前述したフィルタ伝達関数の分母内のフィルタ多項式（例えば、１−ａ３＊Ｄ１＋ｂ３＊Ｄ２）の減算を本質的に実行する。アナログ比較器は図７Ｂの例示的な符号化セット要素７６４に示されているが、これは、デジタル振幅比較器等のデジタル構成要素を使用して実装してもよい。
【００８８】
比較器７８２、７８４、７８５、および７８６の出力は、比較器の出力の関数として符号化制御信号を設定するように論理ブロック７８８に適用され得る。論理ブロック７８８は、Ｐ出力信号を使用して表示される。例えば、フィルタの出力にもよるが、次の転送に符号化が必要な場合、論理ブロック７８８は、適用される符号化のタイプに応じてその出力の１つまたは複数をハイに設定することができる。符号化が必要でない場合、論理ゲートはその出力の全てをローに設定することができる。
【００８９】
集合スイッチング重みは、バスに伝送されるデータ信号のトグルデータビット数を少なくとも加算することにより１つまたは複数の加算器で予測される。これにより、集合スイッチング重み信号ＴＤＱＰが生成される。通常、加算オペレーションは、システムのデータクロックの所与の単位間隔におけるバスのトグル信号の全てまたは一部の加算処理をベースとすることができる。前述したように、一部のシステムでは、共通のシステムクロックの単位間隔のデータは、独立した伝送クロックを利用するバスのチャネルへ伝送することができる。ここで、伝送クロックは、互いに必ずしも正確に一致していない。そのようなシステムでは、バスの集合スイッチング重みの決定は、前述したように、様々な位相の伝送クロックを有するバスに入る特定のデータの遅延を補償することができる。したがって、検出器７１５のフィルタは、バスの異なるライン間の信号スキューの場合では、プレドライバＰＤＮのスイッチング電流またはエネルギーステータスを正確に予測することができる。
【００９０】
図８Ａは、双方向バスの現在の技術の周波数ベースのバス符号化を実施する、データシステム実施形態を示す。この実施形態では、検出器７１４はチャネルの両側に存在し得る。更に、トランシーバ（「ＴＸ−ＲＸ  Ａ」または「ＴＸ−ＲＸ  Ｂ」として表示）は、チャネルの両側に実装され得る。この実施形態では、各検出器８１４のフィルタの履歴では、検出器８１４が受信モードで動作している場合でも、前の伝送からの１つまたは複数の単位間隔のデータから、バス８０６内の集合電流またはプレドライバまたは他の内部回路のスイッチング電流を評価し得る。同様に、各検出器８１４のフィルタの履歴は、検出器８１４が伝送モードで動作している場合でも、前の受信からの１つまたは複数の単位間隔のデータを基に、バス内の集合電流、またはプレドライバ若しくは他の内部回路内のスイッチング電流、または他の内部回路を評価し得る。言い換えると、バス８０６における電流の履歴、またはプレドライバまたは他の内部回路におけるスイッチング電流の履歴は、各検出器８１４内に、バス８０６からのデータの複数の単位間隔の少なくとも時間間隔の間、維持され得る。
【００９１】
複数の単位間隔は、チャネルの両側からのドライバ（またはプレドライバまたは他の内部回路）によって駆動される電流を表す。一方のチャネルから他方のチャネルへの伝送（例えば、図８Ａでは、ＡからＢの方向への矢印で示されている）は、他方のチャネルから元々のチャネルへの伝送（例えば、図８Ａでは、ＢからＡの方向への矢印で示されている）へ連続的に変化する。これらのトランシーバは、半二重双方向モードで動作するよう構成することも、全二重双方向モードで動作するよう構成することも可能である。いずれの場合も、検出器８１４のフィルタには、集合バス電流データ、プレドライバまたは他の内部回路内のスイッチング電流が、受信および伝送オペレーションから供給されるので、代表的なフィルタは受信および送信オペレーションの両方からのバス８０６の履歴に基づいて動作し得る。
【００９２】
図８Ａのデータシステムの実施形態でも、各トランシーバが同様の要素で構成される。更に、各トランシーバは、前述した実施形態のように動作するレシーバまたはトランスミッタ要素も含み得る。したがって、トランシーバＴＸ−ＲＸ  Ｂは、ドライバ８７４のブロックを含むトランスミッタ構成要素を備える。ドライバ８７４のブロックは、バス８０６上で制御情報および／またはデータを駆動する。符号器８０８は、検出器８１４の制御のもとでデータバス反転または他の符号化手法によって伝送情報を符号化する。検出器８１４は、集合バス信号ＳＤＱおよび集合スイッチング重みＴＤＱに基づいて周波数ベースの決定を行う。したがって、伝送されるデータは、加算器８１７で加算され、集合バス重み信号ＳＤＱを決定する。同様に、伝送される変更データビットは、加算器８１９で加算され、集合スイッチング重み信号ＴＤＲを決定する。この実施形態では、加算器８１７による和および加算器８１９による和はマルチプレクサ８７０に適用され、トランシーバモード信号（図８ＡのＴｘ／Ｒｘによって示される）によって示されるトランシーバＴＸ−ＲＸ  Ｂのモードに依存して検出器８１４を向上させる。トランシーバＴＸ−ＲＸ  Ｂがデータをバス８０６に伝送していることをトランシーバモード信号が示している場合、マルチプレクサ８７０は、加算器８１７からのＳＤＱ、および加算器８１９からのＴＤＱが検出器８１４に入力されるのを許可し、この結果として、伝送モード中に伝送されるデータが検出器８１４により評価される。
【００９３】
トランシーバＴＸ−ＲＸ  Ｂはまた、レシーバ要素を備える。したがって、トランシーバは、スライサーブロック８７２または類似のサンプリング要素を備え、バス８０６のチャネルからの信号を感知する。トランシーバはまた、復号器８１２を備え、符号化された形式で、バスから受信されたデータを復号する。復号器８１２は、バス８０６から受信した符号化制御（ＥＮＣ）信号の制御に基づいて、データを復号化する。復号器８１２によって復号化されたバスからの受信信号は、加算器８１６で加算され、集合バス重み信号を生成する。同様に、バスから変更された受信信号で、復号器８１２によって復号化された受信信号は、加算器８１８で加算され、集合スイッチング重み信号を生成する。トランシーバＴＸ−ＲＸ  Ｂがバス８０６からのデータを受信していることを、トランシーバモード信号が示す場合、マルチプレクサ８７０は、加算器８１６からのＳＤＱ、および加算器８１８からのＴＤＱが検出器８１４へ入力することを許可し、結果として、検出器は受信モード中に受信したデータを評価することができる。
【００９４】
オプションとして、集合バス重み信号および／または集合スイッチング重み信号が、ちょうど説明したように、受信データまたは伝送データに基づいて検出器８１４に供給される間、検出器８１４はアイドルモードに対しても構成され得る。アイドルモードでは、トランシーバはデータの送信または受信は行わない。この期間、バスの信号は、何らかのアイドル値を持ち得る。追加の加算器構成要素（図示せず）は、アイドルモードのＳＤＱおよび／またはＴＤＱ信号を検出器に提供するように実装され得る。その様な実施形態では、アイドルモード中に検出器８１４に入るＳＤＱはバス８０６のアイドル値を加算することによってバスの集合電流を表すことができる。アイドルモード中に検出器８１４に入るＴＤＱは、バス８０６のアイドル値の変化を加算することにより、バス８０６、プレドライバ、または他の内部回路の集合スイッチング電流を表すことができる。この様に、検出器のフィルタの履歴はバス８０６の履歴をより正確に表すことができる。
【００９５】
例えば、アイドル期間中、バス８０６のトランシーバは、「ダミー」データまたは「デッド」データを伝送し得る。コントローラ等のあるデバイス上のトランシーバから、メモリまたはＤＲＡＭ等の別のデバイス上のトランシーバへ伝送する際、マスク信号を使用して、これを処理することが可能である。メモリまたはＤＲＡＭからコントローラへ伝送する際、コントローラはどの期間がアイドル状態になっているかを決定するので、このダミーデータまたはデッドデータは簡単に無視することができる。或いは、コントローラの場合は、ＤＲＡＭまたは受信要素がどのデータを無視すべきかを把握できるように、コマンドバスおよびアドレスバス上にコマンドを発行することが可能である。アイドル期間データがフィルタに入るのを許可し、結果として生じた信号をバス８０６上に伝送可能にすることによって、非常に大きなスイッチングノイズを誘導可能にするオペレーションでのステップ変化を容易に回避することができる。
【００９６】
また、長いアイドル期間中、伝送されるアイドルデータの特定の期間数をフィルタリングし、次いで、システムの周波数応答を認識するようにトランスミッタを低電力ＩＤＬＥモードにゆっくりと設定することにより、バス８０６の集合シグナリング電流をゆっくりと低減するよう、コントローラを必要に応じて構成することができる。本質的に、ポストアンブルは、周波数対応の符号化手法に基づいたこの目的で実装することもできる。
【００９７】
オプションとして、アイドル期間の最後でバス８０６における指定された動作状態へ徐々に上昇させ、初期状態過渡現象を緩和するよう、コントローラを構成することもできる。本質的に、周波数対応の符号化手法に基づいてこれを達成するようプリアンブルを実装することも可能である。
【００９８】
図８Ｂ、８Ｃ、および８Ｄは、図８Ａの実施形態で実装される構成要素に基づいて、種々のシステムを示す。図８Ｂでは、構成要素はメソクロノスメモリシステムとして実装される。図示したように、システムはＰＬＬやＤＬＬ等のタイミング構成要素を備える。バス８０６のコントローラ側のＰＬＬは、バスのコントローラ側で構成要素の動作を同期化する。バス８０６のメモリ側のＤＬＬは、バスのメモリ側で構成要素の動作を同期化する。ＤＬＬおよびＰＬＬの動作と関連付けられた特性周波数（ループ帯域や他の周波数）はまた、システムの検出器８１４の周波数応答になるよう設計することもできる。したがって、システムの符号化制御では、これらのタイミング構成要素の特性周波数の近くでこれらのタイミング構成要素と関連付けられたノイズを回避することができる。同様に、図８Ｃに示すクロックフォワーディングメモリシステムの検出器８１４は、タイミング構成要素と関連付けられた周波数依存ノイズをフィルタリングするよう構成することもできる。
【００９９】
図８Ｄの実施形態は、パラレルコーデックを提供する。システムは、バス８０６でのデータの伝送でシリアライザおよびデシリアライザを採用する。例えば、１６ビットが並列に処理されるように、コントローラまたはメモリで、単位間隔あたり１６ビットのデータスループット（即ち、１６ビット幅の処理）を有するシステムの場合、そのシステムは、メモリとコントローラとの間のバス８０６上でデータをシリアルに伝送することができる。このようなシリアル伝送の例では、４ビット幅のデータバス８０６を利用して、１６ビットデータを、しかし、バス上の４つの単位間隔にわたって伝送することができる（この例では、コントローラの単位間隔は、バスの単位間隔の４倍である）。そのようなシステムの場合、１６ビットのデータが検出器８１４で処理される。
【０１００】
シリアル化後にバスで伝送されるデータの場合は、バス８０６で伝送されるビットのシリアル化手法に基づいて符号化制御を許可する方法で、１つまたは複数の検出器８１４で処理される。したがって、例では、検出器８１４内の１６ビットの場合は、一度に４ビットが加算され、各４ビットグループがバス８０６上を伝送される順番およびタイミングで検出器８１４によって処理される。これらのグループの場合はまた、ビットの変更について検査され、検出器８１４によって処理される。これは、システム内の追加の構成要素によって達成され得る。
【０１０１】
例えば、シリアル化／加算／変動加算要素８７７を実装することができる。それらの要素の場合は、バス８０６の伝送手法に従って動作するシリアル化／加算／変動加算要素内のシリアライザによるデータのシリアル化に基づいて、加算器８１６、８１７、８１８、８１９、およびマルチプレクサ８７０（各単位間隔でのビットは少ない）の機能を実行する。このような場合、検出器８１４はバスのクロックレートで動作することができる。他の構成要素を利用して、１つまたは複数の検出器８１４へのデータ入力を、それがバス８０６上を伝送されるシリアル化された方法で、実装することができる。
【０１０２】
図９は、図８Ａ、８Ｂ、８Ｃ、および８Ｄの実施形態のトランシーバで使用するのに適した例示的な検出器９１４を示す。但し、この実施形態では、検出器９１４は、バス（例えば、ＳＤＱ）の集合電流の和と、集合スイッチング信号（例えば、ＴＤＱ）の和とを得るための構成要素を備える。検出器９１４は、図７Ａで示した検出器の動作と比較可能な動作を有する要素を備える。但し、この実施形態では、検出器がトランシーバのモードに応じて適切な符号化制御信号を選択的に利用することができるように、マルチプレクサ９７０が追加される。このために、マルチプレクサ９７０は、図８Ａ、８Ｂ、８Ｃ、および８Ｄの場合と同様に、送信または受信モード信号（図９ではＲＸ／ＴＸで示す）によって制御される。マルチプレクサ９７０の出力により、符号化されていない着信データ信号は、反転／パス要素９５０内で、トランシーバＡまたはトランシーバＢがバス上でデータを送信したかどうかに応じて変更することができる。したがって、検出器を備えたトランシーバが伝送モードにある場合、マルチプレクサ９７０は、これらの検出器９１４の符号化セット要素から符号化制御信号を利用する。但し、トランシーバが受信モードにある場合、マルチプレクサ９７０は、バスから受信されると共にバスの反対側にある別の検出器（図９には図示せず）からの符号化セット要素から生成された符号化制御信号（「ＥＮＣ＿ｉｎ」として表示）を利用する。したがって、反転／パス要素９５０の出力により、集合バス重み信号は、フィルタの履歴に適用される前にバスの集合重みを反映することが可能になる。同様に、反転／パス要素９５０の出力により、集合スイッチング重み信号は、フィルタの履歴に適用される前に集合スイッチング重みを反映することが可能になる。更に、集合重みおよび集合スイッチング重みは、トランシーバの伝送または受信モードに応じて、伝送されるデータまたは受信されるデータを反映する。
【０１０３】
更に、この実施形態では、マルチプレクサ９７２は、トランシーバのモードに応じて、符号化されていない受信データ信号（ＤＱＲとして表示）または符号化されていない伝送データ信号ＤＱＴのいずれかを、反転／パス要素９５０に加えるよう実装することも可能である。これにより、伝送または受信モード信号ＲＸ／ＴＸは、マルチプレクサ９７２を制御する。したがって、符号化されていない受信データ信号ＤＲＱは、トランシーバが受信モードの場合に、検出器のフィルタ部分の履歴に適用することができる。同様に、符号化されていない伝送データ信号ＤＱＴは、トランシーバが伝送モードの場合に、検出器のフィルタ部分の履歴に適用することができる。或いは、トランシーバが全二重動作に構成されている場合、マルチプレクサ９７２は必要でない。むしろ、符号化されていない受信データ信号ＤＱＲおよび符号化されていない伝送信号ＤＱＴは両方とも、各符号化制御信号に基づいて符号化される。これらの符号化データ信号の場合は、加算され、検出器のフィルタ部分の履歴に適用される。このイベントでは、伝送または受信モード信号ＲＸ／ＴＸは必要とならないであろう。
【０１０４】
図１０は、アナログフィルタを使用する例示的な検出器を示す。この検出器のアナログフィルタは、前述した符号化制御を設定するための周波数応答を生成するよう、集合的に構成される。したがって、フィルタは、前述した例示的な伝達関数に従って実装され得る。検出器は、デジタル／アナログ変換器１０９０（ＤＡＣ）と符号化セット要素１０２０とを備える。この実施形態では、ＤＡＣはＤＡＣに加えられた信号を効果的に加算し、それらを、バスの集合電流を表すアナログ出力信号（電圧または電流）に変換する。ＤＡＣの出力は、次にオプションとしてフィルタ１０１８へ加えられる。この実施形態では、フィルタは低域通過フィルタまたは低域通過リップルフィルタとなり得る。このフィルタは、例えば、抵抗容量フィルタとなり得る。そのような実施形態では、低域通過フィルタは、システムの任意の高周波スイッチングからリップルを除去するのに十分低いカットオフ周波数を持つことができる。これは、アクティブアナログブロックが、次いで、フィルタリングされた和信号を処理する場合に有用となり得る。例えば、Ｆｓ／２のカットオフ周波数は、妥当である。ここで、Ｆｓはシステムのデジタルデータのデータレートである。これは設計時間で設定され得る。但し、カットオフ周波数は、通常、システムが回避するようになっている周波数帯域との干渉を避けるために十分に高く設定する必要がある。
【０１０５】
別の実施形態では、フィルタ１０１８は高域通過フィルタとなり得る。そのような実施形態では、高域通過フィルタのカットオフ周波数は、システムの高周波スイッチングからスイッチング周波数を捕捉するのに十分な高さの値となり得る。したがって、フィルタ１０１８の出力の場合は、バス上での信号のトグリングを示す。
【０１０６】
フィルタ１０１８の出力は、別のフィルタまたはフィルタ１０１９に加えられる。このフィルタセットは、所望の周波数帯域のエネルギーを除去し、好ましくない周波数帯域のエネルギーを通過させるように設計されている。フィルタセットが好ましくない帯域内のエネルギーを感知／および検出し、その検出結果に応じて符号化を決定させるように、このエネルギーの除去によりフィルタの出力が調節される。このフィルタは、受動フィルタおよび／または能動フィルタとすることができる。能動フィルタは、増幅器（例えば、Ｖｇ、ＩｇＧｍ等）を使用した連続時間フィルタとすることが可能である。能動フィルタの場合は、スイッチドキャパシタをベースにしたもの、例えば、ローＱ双二次フィルタ、ハイＱ双二次フィルタとすることもできる。前述したように、フィルタは、プログラム可能な帯域幅／周波数応答、クオリティファクタ（「Ｑ」）等を使用して実装することも可能であり、この結果、ダイターミネイションでの動的変化またはシステムメインボード上のバイパスコンデンサの障害等に起因するＰＤＮの変化に応じて、フィルタを動的に設定することが可能である。
【０１０７】
フィルタ１０１９の出力は、前の実施形態の反転設定要素に類似した反転設定要素１０２０に加えられる。この要素は、シュミットトリガ等の比較器を備える。シュミットトリガ比較器１０９６は、フィルタ１０１９の出力と、電圧基準等の閾値とを比較する。この動作は、前に説明した図５Ｂの比較器５６６の機能と比較可能である。比較器１０９６は、履歴を適用して、ノイズへの感度を抑えることが可能である（そうしないと、グリッチが発生する）。例えば、フィルタ１０１９の出力の強度が閾値を超えると、比較器１０９６はＴＲＵＥレベル（例えば、「１」またはハイ）を生成する。或いは、比較器１０９６は、ＦＡＬＳＥレベル（例えば、「ゼロ」またはロー）を生成する。別の比較器１０９４は、集合電流信号ＳＤＱを、図５Ｂの比較器５６４のような閾値と比較する。
【０１０８】
加算器１０９７内で比較器の出力が追加される。サンプラー１０９２に和が加えられる。サンプラー１０９２は、符号化制御信号出力がバスにのせるデータの各単位間隔で応答するように、システムのデータレートクロックの周波数および位相を有し得るクロック信号と関連付けられた時間で、比較器出力の和をサンプリングする。
【０１０９】
シミュレーションの場合、電力供給ネットワークのモデルは、図１１に示すインピーダンス曲線に当てはめられている。このモデルの要素は、４バイト幅のドライバとコマンドおよびアドレスドライバではなく、ドライバの単一のバイト幅のみによって励振されているという事実を考慮して、５ｘのファクタによってスケールされている。このモデルは、Ｑ＝１．５および２００ＭＨｚの共振周波数を利用している。
【０１１０】
他の従来の技術と比較された本周波数ベースのバス符号化技術のデジタルフィルタ実施形態のシミュレーションされたパフォーマンスが、図１２Ａおよび１２Ｂのグラフに示されている。本技術（図１２Ａおよび１２Ｂでは「フィルタ」として示す）のシミュレーションされたパフォーマンスは、バス符号化（即ち、非符号化）（図１２Ａおよび１２Ｂでは「ノーマル」として示す）を実装しないデータシステムのシミュレーションされたパフォーマンスと比較されている。本技術のシミュレーションされたパフォーマンスは、従来の低重み符号化技術（図１２Ａおよび１２Ｂでは「ＤＢＩ＿ＤＣ」として表示）を利用するシミュレーションされたデータシステムとも比較されている。Matlabシミュレータが使用されている。Matlabシミュレーションの結果では、本周波数ベースのバス符号化技術の実施形態は、従来のバス反転符号化技術が提供し得るパフォーマンスの２倍を超えるパフォーマンスを提供することができることを示している。
【０１１１】
図１２Ａに示すように、「ノーマル」動作バスおよび「ＤＢＩ＿ＤＣ」動作バスのパフォーマンスは、Ｆｓ＝５ＧＨｚフィルタを有する３タップＩＩＲフィルタを使用した本発明の例示的なデータシステムと比較されている。第２の比較として、Ｆｓ＝２．５ＧＨｚフィルタを有する４タップＩＩＲフィルタを使用した、本発明の例示的なデータシステムに対する「ノーマル」動作バスおよび「ＤＢＩ＿ＤＣ」動作バスの比較が行われている。図１２Ｂの図面にこの比較器を示す。バス電流スペクトルと、各システムの誘導された電力供給ネットワーク電圧スペクトルが比較されている。各システムのオペレーションは、長さが１６３８３ビットであった５Ｇｂｐｓの８ビット幅ＰＲＢＳデータバスパターンに基づいていた。バスのシミュレーション電流の集合重みはまた、シミュレーション対象の検出器によって特定される符号化制御ビットの重みを含んでいる。
【０１１２】
図１２Ａおよび１２Ｂで示すシミュレーション中には、ピークツーピーク誘導電圧が観測され、比較メトリックとして使用されている。更に、各ケースの平均消費電力が記録されている。別の関係するメトリックは、種々の符号化方法における符号化遅延である。ＤＢＩ＿ＤＣ符号化システムでは、符号化のために少なくとも１つのフルレートサイクルを必要としている。本発明の周波数ベースの符号化システムは類似の遅延を備えている。電流の重みの累積された履歴と比較する電流状態の重みを評価してデータの符号化に関する決定を行うからである。以下の表Ｉでは、シミュレートされたシステムについていくつかのパフォーマンスメトリックを比較している。
【表１】
0005606527.tif 000003
【０１１３】
図１２Ａ、１２Ｂ、および表Ｉのグラフに示すように、本発明の例示的な実施形態の一アプリケーションの潜在的な利点は、電力供給ネットワークの共振周波数と関連付けされた周波数またはその近辺での誘導電圧の削減である。
【０１１４】
図１３は前述した原理を使用したマルチモード実装の例を示す。特に、デバイス１３０１（想像線で示される）は、様々な環境状況に合わせて符号化を変更するように設計され得る。非限定的な一例を提供するには、デバイス１３０１は、内部動作の周波数が複数モードの一つに調整される携帯機器（携帯電話、ゲーム機器、またはその他の携帯機器）となり得る。デバイス１３０１は、ＣＰＵまたは他のコントローラ１３０３と、予めプログラムされたモードの数を格納するメモリ１３０５と、ランタイムオペレーション中にモードの１つがメモリ１３０５からの動的にロードされるモードレジスタ１３０７と、を備える。
【０１１５】
携帯機器の例を適用すると、オペレーションの１つのモードは周波数符号化を全く適用しないことを含み（この場合、モードの周波数特性（モード１）はヌルセットになり得る）、オペレーションの第２のモードは「機内モード」（航空機のアビオニクスまたは他の機器と干渉する可能性のある周波数を最小限に抑えるように内部バス動作が制御される）を実装する。そのようなモードはユーザによって選択されることも、検出された環境に応じ、デバイスによって自動的に駆動されることも可能である。メモリ１３０５内のモード番号「１」からモード番号「Ｎ」までによって示されているモードの任意の番号をほとんど提供することができる。各モードが選択されると、対応するモード番号、対応する周波数パラメータ、および符号化手法が、デバイスを能動的に制御する際に使用するためにモードレジスタ１３０７にロードされる。したがって、モードレジスタは２つの出力を持つように描かれている。第１は検出器への出力（前述した実施形態と関連して説明される）であり、第２は符号器への出力（前述した実施形態と関連して説明される）である。メモリ１３０５に格納されたモードごとにプログラムされたパラメータの一部として描かれた、周波数パラメータ情報は、検出器によって検出される１つまたは複数の周波数、または周波数帯域を示す。一方、対応する符号化情報は、関連付けられたパラメータの決定に応じて所望の符号化手法を実装するよう符号器によって使用され得る。他の手法および制御ポイントもまた採用され得る。
【０１１６】
図１３の右下に示したユーザ選択ボックス１３０９およびセンサボックス１３１１の存在から分かるように、ＣＰＵまたはコントローラ１３０３は、ユーザ選択に応答して、またはセンサによって検出される外部スティミュラスに応答してモードを変更するよう駆動され得る（例えば、デバイス位置または他の検出されたパラメータに基づいて）。メモリ１３０５およびモードレジスタ１３０７は、ＣＰＵによってまたはコントローラ１３０３によって独立して制御される個別の単位とすることも、単一の関数として制御することもでき、例えば、メモリからどのモードを取得するかおよびデバイス操作に適用するかをモードレジスタ１３０７に厳密に示すモード制御信号１３１３の使用を介して行われる。
【０１１７】
図１４は、バスの信号ラインの符号化を選択する方法を示すフローチャートである。図１４に示すステップは、システムおよび／または回路の１つまたは複数の要素によって実行され得る。
【０１１８】
信号ライン遷移の数に従って時間で変化する第１のインジケータが受信される（１４０２）。例えば、フィルタ２６８は、遷移している信号ラインの数の和を示す加算器２６６の出力を受信し得る。バス上の各単位間隔で伝送されるデータは変更し得るので、遷移している（または遷移する）信号ラインの数の和は時間で変化する。
【０１１９】
第１の状態に駆動される信号ラインの数に従って時間で変化する第２のインジケータが受信される（１４０４）。例えば、フィルタ２１８は、伝送される信号の和を示す加算器２１６の出力を受信し得る。各単位間隔でバス上を伝送されるデータは変更され得るので、伝送される信号の和は時間で変化する。
【０１２０】
第１のインジケータは、第１の検出された信号インジケータを生成するためにフィルタリングされる（１４０６）。例えば、フィルタ２６８は加算器２６６の出力をフィルタリングすることができる。フィルタ２６８の通過帯域に従って加算器２６６の出力で信号の量を検出する出力をもたらす。
【０１２１】
第２のインジケータは、第２の検出された信号インジケータを生成するようにフィルタリングされる（１４０８）。例えば、フィルタ２１８は、加算器２１６の出力をフィルタリングし得る。これにより、フィルタ２１８の通過帯域に対応する加算器２１６の出力で信号の量を検出する出力をもたらす。
【０１２２】
バス符号化は、第１の検出信号インジケータおよび第２の検出信号インジケータ（１４１０）に基づいて選択される。例えば、フィルタ２６８および２１８の出力は加算され得る。この合計は、閾値と比較され、ＤＢＩ符号化を適用するかどうかを決定する。別の例では、フィルタ２６８および２１８の出力はそれぞれ、個別に一対の閾値と比較され得る。このような２つの比較の出力は、適用する符号化（例えば、ＤＢＩ＿ＡＣまたはＤＢＩ＿ＤＣ）を決定するために使用され得る。
【０１２３】
図１５は、バスの信号ラインの符号化を選択する方法を示すフローチャートである。図１５に示したステップは、前述したシステムおよび／または回路の１つまたは複数の要素によって実行され得る。
【０１２４】
データバスの反転は、信号ライン遷移（１５０２）の数に従って適用される。言い換えると、ＤＢＩ＿ＡＣ符号化が適用される。これは、高周波数ノイズを低減する。例えば、検出器１５５は、符号器１５６を制御することで、信号ライン遷移の数に基づいてＤＢＩを適用することができる。
【０１２５】
符号化された信号ラインのバス重み（例えば、「１」の数）が決定される（１５０４）。例えば、検出器１５４は、バスで伝送される１または０の数を求めることができる。１または０の数はブロック１５０２で適用される符号化に基づくべきである。
【０１２６】
バスの重みが閾値を超えた場合、バスの重みに従ってデータバスの反転が適用される（１５０６）。言い換えると、符号化された信号ライン上のビット数が特定の数値（例えば、８ビットが６）を超えると、符号化を求めるためにＤＢＩ＿ＤＣが適用される。例えば、検出器１５４により選択された符号化が、送信されるビット数の閾値を超えると、特定の状態になるので、検出器１５５は検出器１５４による符号化を「無効」にし得る。
【０１２７】
一般に、本明細書内で説明するデータシステムの回路または要素のそれぞれは、１つまたは複数の集積チップ上で、または１つまたは複数の集積回路上で実現され得る。データシステムは、デジタルプロセッシングデバイス、コンピュータ、コンピュータ周辺機器、グラフィック処理デバイス等の集積回路の一部となり得る。例えば、データシステムおよび／または検出器は、複数の集積回路を使用して実装され得る。この場合、バスは、異なる集積回路間の通信を実装する。このような個別の集積回路は、システムの個別の構成要素またはモジュールの一部ともなり得る。このシステムでは、構成要素またはモジュール間のバスを使用して構成要素間でのデータの転送が行われる。しかしながら、データシステムは、単一の集積チップ上に実装すると共に、集積チップの機能回路ブロック間でのデータ転送に使用することもできる。例えば、回路は、デジタルコンピュータに一般的に採用される中央処理ユニットまたはＣＰＵの一部として実装することも、ＣＰＵと他の回路チップ間の媒介として実装することもできる。したがって、本明細書内で説明されるデータシステムの回路は、ＣＰＵ等のプロセッサとキャッシュメモリとの間の通信パスに組み込むことができる。したがって、受信されるデータ信号は、当該回路構成要素間で、伝送されるベースバンドデータ信号となり得る。
【０１２８】
バス技術は、ポイントツーポイント接続の要素として実装することもできる。更なる例として、バス技術は更に、高パフォーマンスシリアルリンク（例えば、バックプレーンリンク、ＰＣＩ  Ｇｅｎ３ライン、ＳＡＴＡ  Ｇｅｎ３／４等）に実装することもできる。バス技術は更に、特定のタイプのバス接続（例えば、同じ信号が同じ導体に接続された複数のデバイスへ送信される配置）で使用することもできる。データシステムは、パラレルバス等のパラレルリンクに対してまたはパラレル通信を実行する他の任意のデバイスに対して実装することも可能である。この技術は、ＤＤＲ、ＧＤＤＲ、ＲＤＲＡＭ技術で、および並列シングルエンドインターフェイスで使用できる。他の実施形態では、回路は、メモリコントローラおよび／またはメモリモジュール（例えば、ダイナミックランダムアクセスメモリおよびフラッシュメモリ）等、データ入力または出力デバイスコントローラ等の要素となり得る。
【０１２９】
例えば、メモリコントローラの実施形態では、メモリコントローラは、書き込み動作時にデータをメモリに送信し、読み取り動作時にメモリからデータを受信するデバイスとして一般に機能する。データシステム１０２または１８０のバスは、メモリとメモリコントローラのいずれかまたは両方から送られた信号を伝送するために実装され、本明細書で説明したデータシステムの残りの要素を備えるこのようなデバイスのいずれかまたは両方を実現可能である。
【０１３０】
一般に、本明細書で説明した技術で実装された回路の各々は、金属酸化膜半導体（ＭＯＳ）技術をベースにしたトレース、コンデンサ、抵抗、トランジスタ等の電気素子を使用して構築され得るが、バイポーラ技術等の他の技術または信号制御の電流の流れが実現され得る他の任意の技術を使用して実装することもできる。
【０１３１】
更に、データシステム１０２またはデータシステム１８０のこれらの回路は、集積回路を製造する自動化システムを使用して構築され得る。例えば、本明細書で説明した要素およびシステムは、１つまたは複数の集積回路としてまたは集積回路の部分として設計され、集積回路の要素またはブロックの製造を制御する回路フォーミング装置を使用してそれを行うための設計制御命令に基づいて行われる。磁気テープや光ディスクや磁気ディスク等のコンピュータで読み取り可能な媒体に格納されるデータの形式となり得る。設計制御命令は、通常、データ構造、他の情報、集積回路の要素として物理的に作成可能な回路または回路要素を記述する方法を符号化する。そのような符号化には任意の適切なフォーマットを使用できるが、そのようなデータ構造は、Caltech Intermediate Format（ＣＩＦ）、Calma GDS II Stream Format（ＧＤＳＩＩ）、またはElectronic Design Interchange Format（ＥＤＩＦ）で一般に書き込まれる。集積回路設計の当業者は、詳しく前述したタイプの回路図および対応する記述を基に係るデータ構造を開発し、コンピュータで読み取り可能な媒体上のデータ構造を符号化することができる。集積回路の当業者は、係る符号化されたデータを使用して本明細書で説明した１つまたは複数の回路を備える集積回路を製造することができる。
【０１３２】
一実施形態では、デバイスは、バスの複数の信号ライン上で信号を伝送する符号化手法を設定する符号器と、バス上の信号の周波数を表す情報を受け入れる検出器とを備え、検出器は周波数に応答する。検出器の出力は、周波数の関数として符号化手法を選択的に適用するように符号器を制御する。検出器は、フィルタを備え得る。検出器は、通信システム電力供給ネットワークの共振周波数に応答して、符号器の設定を変更するように構成され得る。検出器は、符号器の設定を変更して、電力供給ネットワークへの不利益な周波数をフィルタリングするように構成され得る。符号器回路は、バス反転回路を備え得る。検出器は、加算器、ＤＡコンバータ、低域通過フィルタ、および比較器を備え得る。検出器は、バスから受信した信号を表す情報を受け入れるように、およびバスで伝送される信号を表す情報を受け入れるように構成され得る。信号を表す情報は、信号のハミング重みおよび信号のハミング重みの周波数に応答するように構成された検出器となり得る。検出器は、バスの周波数を検出するよう構成され得る（バスのアイドル時間中を含む）。
【０１３３】
検出器は、加算器と、フィルタと、比較器を備える。このフィルタは、バスの電力供給ネットワークの共振周波数で帯域通過特性を使用して設定される帯域通過フィルタとなり得る。
【０１３４】
デバイスの第２の実施形態では、デバイスはメモリコントローラを更に含み、メモリコントローラは、複数の信号ライン上での読み取り動作および書き込み動作を制御するよう構成され、複数の信号ラインは、アドレスバス、制御バス、データバスの少なくとも１つを含み、ここで複数の信号ラインは少なくとも４ビット幅である。デバイスの第３の実施形態では、デバイスは、シリアライザを更に含み、検出器による処理においてパラレルデータはシリアル化される。
【０１３５】
一実施形態では、データバスを制御する方法は、バスの複数の信号ラインの信号からのデータをフィルタリングして、符号化制御信号を生成すること（フィルタリングは、少なくとも予め決定された周波数に応答する）と、フィルタリングに応答するバスの符号化手法を制御することとを含む。本方法は更に、符号化手法に従って、複数のバスの信号ライン上で信号を伝送することを含む。バスは、シングルエンデッドパラレルバスを含み得る。符号化手法は、バス反転符号化を含み得る。信号は、バスから受信される情報を表すこと、およびバスで伝送される情報を表すことが可能である。信号は、ハミング重みを含むことができ、制御はハミング重みの周波数に応答する。予め決定された周波数は、バス上での信号のクロッキングに必要とされる位相ロックループ回路または遅延ロックループ回路の共振周波数となり得る。
【０１３６】
方法の第２の実施形態では、本方法は、バスの制御される符号化手法を使用して、メモリコントローラ内で書き込み動作のデータを符号化することを更に含む。方法の第３の実施形態では、バスでの伝送のため、およびフィルタリングのためにパラレルデータをシリアル化することを更に含む。
【０１３７】
一実施形態では、バス符号化用の集積回路は、バスの複数の信号ラインでの伝送と関連付けられたバス特性を検出し、バス特性に応じて制御信号を生成する検出器と、バスの複数の信号ラインのデータ符号化を設定するために検出器と結合されたバス符号器とを備える。バス符号器は制御信号によって設定される。
【０１３８】
集積回路の第２の実施形態では、検出器はフィルタを備える。検出器は、バスから受信したデータを表す情報を受信し、バスで伝送されるデータを表す情報を受信するよう構成され得る。バス特性は複数のハミング重みであり、複数のハミング重みの周波数に応答するよう構成された検出器となり得る。集積回路は更にシリアライザを含み得る。ここで、パラレルデータは、検出器での処理のためにシリアル化される。
【０１３９】
集積回路の第３の実施形態では、集積回路の第２の実施形態のフィルタは、帯域通過フィルタを備え得る。集積回路の第４の実施形態では、集積回路の第３の実施形態のバス符号器は、データバス反転回路を備える。検出器は、電力供給ネットワークの共振周波数またはその近辺でバスの周波数に応答して符号器の設定を変更するよう、構成され得る。この検出器は更に加算器および比較器を含み得る。
【０１４０】
集積回路の第３の実施形態では、集積回路の第２の実施形態は更に、メモリコントローラを備える。メモリコントローラは、複数の信号ラインで読み取り動作および書き込み動作を制御するよう構成される。
【０１４１】
一実施形態では、コンピュータで読み取り可能な情報を有する情報搬送媒体が、データバス符号器を備える集積回路のブロックを記述し、集積回路は検出器回路を備え、この検出回路はバスの複数の信号ラインの入力信号値と結合され、バスの複数の信号ライン上の信号の周波数に選択的に応答する。集積回路はまた、検出回路に結合された符号器回路を備え、符号器回路は、検出器回路の制御下でバスの信号ラインの符号化を設定する。情報は更に、スペクトル整形フィルタ回路を含む検出回路を定義し得る。情報は更に、データバス反転回路を備えるようバス符号器回路を定義し得る。検出回路は、バスから受信したデータを示す情報を受け入れるように、およびバスで伝送されるデータを受け入れるように構成され得る。連続的な信号値は、ハミング重みおよびハミング重みの周波数に応答するよう構成された検出回路となり得る。
【０１４２】
媒体の第２の実施形態では、情報は更にメモリコントローラを定義する。ここで、メモリコントローラは、複数の信号ラインで読み取り動作および書き込み動作を制御するよう構成される。媒体の第３の実施形態では、情報は更にシリアライザ回路を定義する。ここで、パラレルデータは、検出回路での処理のためにシリアル化される。
【０１４３】
媒体の第４の実施形態では、情報は更に、フィルタ回路を備える検出回路を定義する。第４の実施形態の情報は更に、加算器および比較器を備える検出回路を定義する。
【０１４４】
一実施形態では、システムはシグナリングバスの信号周波数を検出するための検出手段と、検出手段の検出出力に応答する制御信号を生成する手段と、生成のための手段と結合された符号化手段とを含み、符号化手段は、生成のための手段の制御信号に応答してシグナリングバスの複数のラインで伝送するためのデータを選択的に符号化するものである。検出手段、生成のための手段、および符号化手段は、メモリ構成要素またはメモリコントローラ構成要素の少なくとも一部分を備え得る。検出手段、生成のための手段、および符号化手段は、ダイナミックランダムアクセスメモリの構成要素の少なくとも一部分を含み得る。検出器の手段は、複数のラインから受信したデータを表す情報を受け入れるように、また、複数のラインで伝送されるデータを表す情報を受け入れるように構成され得る。
【０１４５】
システムは更に、様々な集積チップのトランスミッタとレシーバとの間でデータをシグナリングするためのバス手段を備え得る。或いは、システムは、様々な集積チップのトランスミッタとレシーバとの間でデータをシグナリングするためのバス手段を備える。或いは、システムは更に、検出手段での処理のためにパラレルデータ信号をシリアル化するためのシリアル化手段を備える。
【０１４６】
一実施形態では、バスの符号化を行うための方法は、送信元によってバスを介して伝送される信号へ符号化手法を適用すること、少なくともいくつかのバス信号の周波数を監視すること、バス信号内の少なくとも１つの周波数を減衰するために符号化を制御することを含む。バスは、少なくとも４つのパラレル信号ラインを有するパラレルバスとすることができ、符号化手法は、バス内の各パラレルラインを選択的に反転可能である。符号化手法は、バス反転を備え得る。モニタリングは、パラレルバスのラインの出力のビット単位の加算、およびバスを介して伝送される連続した信号からの加算の変化の周波数のモニタリングを含む。少なくとも１つの周波数は、バス上の信号のタイミングと関連付けられる遅延ロックループ回路または位相ロックループ回路の共振周波数によって励振される周波数を含む。符号化手法は、機械により読み取り可能な媒体に格納されたプログラム可能なパラメータによって定義され得る。
【０１４７】
方法の第２の実施形態では、モニタリングは更に、インバウンド信号およびアウトバウンド信号のモニタリングと、インバウンド信号およびアウトバウンド信号ごとのビットラインの加算と、インバウンド信号およびアウトバウンド信号からの連続的な加算により表現される変更の周波数のモニタリングと、を含む。方法の第３の実施形態では、モニタリングは更に、複数のバスからの信号のモニタリング、複数のバスのそれぞれにおける、少なくとも各伝送信号のビットラインの加算と、バスに関係なく連続的な信号によって表わされる変更の周波数のモニタリングと、を含む。ここで、制御は、複数のバスの少なくとも１つで、少なくともアウトバウンド信号で符号化を制御することを含む。本方法の第４の実施形態では、本方法は更に、バスルーティングと関連付けられた少なくとも１つの周波数特性を決定する。ここで、制御は、バスの集合電流の周波数と、少なくとも１つの予め決定された周波数特性とを比較することと、少なくとも１つの周波数特性に応答して符号化の周波数を応答可能なように調整すること、とを含む。第４の実施形態の少なくとも１つの周波数特性は、共振周波数を含むことができ、調整は共振周波数に応答する符号化を制御することを含む。第５の実施形態では、本方法は更に、バスを符号化して、複数の予めプログラムされた符号化モードの１つを実装することを含み、ここで、各符号化モードは関連付けされた符号化手法を備え、符号化の制御はモード制御信号の受信と、モード制御信号によって示されるモードと関連付けられた符号化手法の適用を含む。
【０１４８】
前述説明および添付の図面では、本発明を完全に理解できるように特定の術語および図面記号が説明されている。いくつかの例では、術語と記号は、本発明を実施するのに必要な特定の詳細を暗示し得る。例えば、本明細書では「第１の」および「第２の」という用語を使用したが、特に指定がない限り、言語的には特定の順番または個数を表すことを意図するものではなく、本技術の要素を説明するために便宜上使用したものである。
【０１４９】
更に、本明細書内の技術については特定の実施形態を参照しながら説明したが、これらの実施形態は単に技術の原理および応用を示したものである。例示した実施形態には多くの変更を加えることが可能で、本発明の精神および範囲から逸脱することなく、他の配置を考案できることも理解されたい。例えば、本発明の検出器は、１つまたは複数の多重データバスで伝送されるデータの符号化を制御するために多重データバスの周波数情報を監視し得る。
【図１Ａ】
0005606527.tif 000004
【図１Ｂ】
0005606527.tif 000005
【図２Ａ】
0005606527.tif 000006
【図２Ｂ】
0005606527.tif 000007
【図２Ｃ】
0005606527.tif 000008
【図２Ｄ】
0005606527.tif 000009
【図３Ａ】
0005606527.tif 000010
【図３Ｂ】
0005606527.tif 000011
【図４Ａ】
0005606527.tif 000012
【図４Ｂ】
0005606527.tif 000013
【図４Ｃ】
0005606527.tif 000014
【図５Ａ】
0005606527.tif 000015
【図５Ｂ】
0005606527.tif 000016
【図６Ａ】
0005606527.tif 000017
【図６Ｂ】
0005606527.tif 000018
【図６Ｃ】
0005606527.tif 000019
【図７Ａ】
0005606527.tif 000020
【図７Ｂ】
0005606527.tif 000021
【図８Ａ】
0005606527.tif 000022
【図８Ｂ】
0005606527.tif 000023
【図８Ｃ】
0005606527.tif 000024
【図８Ｄ】
0005606527.tif 000025
【図９】
0005606527.tif 000026
【図１０】
0005606527.tif 000027
【図１１】
0005606527.tif 000028
【図１２Ａ】
0005606527.tif 000029
【図１２Ｂ】
0005606527.tif 000030
【図１３】
0005606527.tif 000031
【図１４】
0005606527.tif 000032
【図１５】
0005606527.tif 000033