差動ペア配線
親記事: 配線
差動信号システムは、信号が密接に結合された一対のキャリアを介して送信されるシステムで、そのうちの一方が信号を、もう一方が信号の等価ながら逆のイメージを運びます。差動信号は、信号源の論理参照グラウンドと負荷の論理参照グラウンドをうまく接続できない状況に対応するために開発されました。差動信号は、電子製品に存在する最も一般的な干渉アーティファクトである共通モード電気ノイズに対して本質的に免疫があります。差動信号のもう一つの大きな利点は、信号ペアから発生する電磁干渉(EMI)を最小限に抑えることです。
差動ペアPCB配線は、プリント基板上で差動(等しく反対の)信号を伝送できるバランスの取れた伝送システムを作成するために使用される設計技術です。通常、この差動配線は外部の差動伝送システム、例えばコネクターやケーブルに接続されます。
差動ペアケーブルのねじれペアにおける結合比が99%以上に達することがある一方で、差動ペア配線で達成される結合比は通常50%未満です。現在の専門家の意見では、PCB配線のタスクは特定の差動インピーダンスを達成しようとすることではなく、外部ケーブリングから目的のコンポーネントまで差動信号が良好な状態で到達することを保証するために必要な特性を維持することが目的です。
業界で著名な高速PCB設計の専門家であるLee Ritcheyによると、成功した差動信号伝送には、特定の差動インピーダンスに従う必要はありません。それには以下が必要です:
- 受信側の差動ケーブルインピーダンスの半分に各配線信号のインピーダンスを設定します。
- 2つの信号線がそれぞれ自身の特性インピーダンスで受信側で適切に終端されていること。
- 2本の線は、設計に使用されるロジックファミリーと回路の周波数の許容範囲内で等しい長さであるべきです。タイミングを保持することに焦点を当て、設計のスキューバジェットを満たすのに十分近い長さに合わせます。例えば、高速USBの場合、長さの不一致は150ミルを超えてはならず、DDR2クロックは25ミル以内に合わせる必要があります。
- 2つの信号を並べて配線する利点を活用して、一致した長さの良質な配線を実現します。必要に応じて、障害物を避けるために分離して配線しても構いません。
- 信号インピーダンスが維持される限り、レイヤー変更は許容されます。
回路図上での差動ペアの定義
差動ペアは、ペア内の各ネットにDifferential Pair directive(Place » Directives)を配置することで、回路図上で定義されます。ネットペアは、ネットラベルの接尾辞が_Nおよび_Pである必要があります。ペアネットのそれぞれに差動ペアディレクティブを配置すると、名前がDifferentialPair
で、値がTrue
のパラメータがネットに適用されます。
差動ペアの定義は、設計同期中にPCBに転送されます。
回路図上に指令を配置して差動ペアを定義します。
複数のペアを識別するためのブランケットディレクティブの使用
定義するペアの数が多い場合、ブランケットディレクティブを配置するという別のアプローチもあります。これにより、ブランケットの下にある複数のネットにディレクティブを適用できます(ソフトウェアは、ブランケットの境界内にあるネットラベルのホットスポットを持つネットを検出します)。その後、ブランケットは下の画像に示すように、単一の差動ペアディレクティブによってタグ付けされます。
この画像には、含まれているネットを差動ペアメンバーとして定義するよう指示するだけでなく(差動ペアディレクティブの存在により)、すべての含まれているネットをネットクラスRIO_Nets
のメンバーに、ペアを差動ペアクラスROCKET_IO_LINES
のメンバーにするよう指示し、さらに差動ペア配線ルールを作成するようにも指示していることが示されています。同じ差動ペアディレクティブ内にネットクラスが指定されているため、PCBエディタに設計を転送するとき、このルールはRIO_Nets
ネットクラスを対象としてスコープされます。
差動ペアをPCBエディタに転送する
スキーマティックでネットに差動ペアの指示を配置した場合、デフォルトのプロジェクトオプション設定により、PCB上に差動ペアメンバーが作成されます。PCBプロジェクトのオプションダイアログで、この設定を構成するために使用されるオプションは次のとおりです:
- コンパレータタブ - 追加の差動ペア(その後、異なる差動ペアが後続の更新をチェックし、デザインルールを作成/変更する場合はルールオプションもあります)
- ECO生成タブ - 差動ペアの追加(その後、差動ペアの変更が後続の更新をチェックし、デザインルールを作成/変更する場合はルールオプションもあります)
- クラス生成タブ - ネットクラスの生成(PCB差動ペア配線ルールの範囲を指定するために使用するネットクラスを作成している場合)
PCB上での差動ペアの表示と管理
差動ペアの定義は、PCBパネルをDifferential Pairs Editorに設定して表示および管理されます。下の画像は、差動ペアクラスROCKET_IO_LINES
に属するペアを示しています。ペアV_RX0
が強調表示されており、このペアのネットはV_RX0_N
とV_RX0_P
です。各メンバーネット名の隣に表示される-および+は、ペアの正または負のメンバーであるかを示すシステムフラグです。
Differential Pair Classes領域で右クリックして新しいクラスを作成します。
PCB上での差動ペアの定義
差動ペアは、回路図上だけでなく、PCBエディター内でも定義することができます。PCBエディターで差動ペアオブジェクトを作成するには、Differential Pairs EditorモードのPCBパネルのDifferential Pairs領域にあるAddボタンをクリックします。表示されるDifferential Pairダイアログで、プラス側とマイナス側の既存のネットを選択し、ペアに名前を付けてOKをクリックします。PCBエディターで定義されている場合、任意の2つのネットを差動ペアのメンバーとして選択できることに注意してください。
名前付きネットから迅速にペアを作成します。
差動ペアクラスの定義
設計ルールを対象とする必要がある差動ペアが1つ以上ある場合がよくあります。この状況では、差動ペアのクラスを定義し、それらを論理的なグループにクラスタリングすることができます。クラスはObject Class Explorerダイアログ(Design » Classes)で定群されます。
xSignalsを差動ペアと共に使用する
差動ペアにシリーズ部品が信号経路内にある場合、xSignalsを作成することが有益かもしれません。xSignalは、二つのノード間の設計者が定義した信号経路です。これらは同じネット内の二つのノードであることも、異なるネットの二つのノードであることもあります。xSignalを使用すると、シリーズ部品の両側にあるネットだけでなく、シリーズ部品を含むように信号経路を定義できます。xSignalsの経路長計算には、PCBパネルのxSignalsモードでxSignalが選択されたときに表示される細い線によって示されるように、シリーズ部品を通る経路の長さが含まれます。
適用可能な設計ルール
差動ペアをインタラクティブに配線するには、以下の2つの設計ルールを作成し、設定してください。PCB Rules and Constraints Editorダイアログ(Design » Rules)で行います。
-
差動ペア配線 - ペア内のネットの配線幅、ペア内のネット間の隔たり(ギャップ)、および全体の非結合長(ギャップが最大ギャップ設定より広い場合、ペアは非結合になる)を定義します。このルールの範囲を差動ペアである対象オブジェクトに設定します。例えば、
IsDifferentialPair
またはInDifferentialPairClass('All Differential Pairs')
です。なお、最大ギャップ設定は配線時に使用されますが、設計ルールチェック中には使用されません。設計ルールチェック中には、ペア内のネット間の距離が適用可能な電気的クリアランス設計ルールによってテストされます。
-
電気クリアランス - 任意のネット、同じネット、または異なるネット上の任意の2つのプリミティブオブジェクト(例:パッド間、トラック-パッド間)の間の最小クリアランスを定義します。このルールの範囲を、差動ペアのメンバーである対象オブジェクトに設定します。例:
InDifferentialPair
。
設計ルールの範囲を設定する
設計ルールの範囲は、ルールを適用したいオブジェクトのセットを定義します。差動ペアはオブジェクトであるため、以下の例のようなクエリを使用できます:
- InAnyDifferentialPair - 任意の差動ペア内のオブジェクトです。
-
InDifferentialPair('D_V_TX1') - 名前が
D_V_TX1
である差動ペアの両方のネットを対象とします。 -
InDifferentialPairClass('ROCKET_IO_LINES') -
ROCKET_IO_LINES
と呼ばれる差動ペアクラスに属する全てのペアの全てのネットを対象とします。 -
(IsDifferentialPair And (Name = 'D_V_TX1')) - 名前が
D_V_TX1
である差動ペアオブジェクトを対象とします。 -
(IsDifferentialPair And (Name Like 'D*')) - 名前が
D
で始まる全ての差動ペアオブジェクトを対象とします。
差動ペアルールウィザードを使用してルールを定義する
Differential Pairs EditorモードのPCBパネル内のNets領域の下にあるRule Wizardボタンをクリックすると、必要な設計ルールを設定するプロセスを案内する差動ペアルールウィザードが開きます。作成されるルールの範囲は、Rule Wizardボタンをクリックしたときに選択されたものに依存することに注意してください。1つのペアが選択されていた場合、ルールはそのペアのネットを対象としますが、差動ペアクラスが選択されていた場合、ルールはそのクラスのネットとすべてのペアを対象とします。
差動ペアの配線
メイン記事: インタラクティブ配線
差動ペアはペアとして配線されます - つまり、2つのネットを同時に配線します。差動ペアを配線するには、RouteメニューからInteractive Differential Pair Routingを選択します。ペアのネットの1つを選択するように求められます。どちらかをクリックして配線を開始します。下のビデオは、差動ペアが配線されている様子を示しています。
配線中には、以下の機能を実行できます:
- Shift+R を押して、競合解決配線モード(Walkaround、Push、Hug and Push、Stop at First Obstacle、Ignore Obstacles)を切り替えます
- Shift+Spacebar を押して、利用可能なコーナースタイル(45度コーナー、コーナー内の45度アーク、90度コーナー、コーナー内の90度アーク)を切り替えます
- レイヤーを切り替えてビアを挿入するには:数値キーパッドの * キーを押すか、Ctrl+Shift+ホイールスクロール のショートカット組み合わせを使用します
- 3 を押して、可能な差動ペア配線幅(ユーザー選択、ルール最小、ルール推奨、ルール最大)を切り替えます
- 6 を押して、可能な差動ペアギャップ(ルール最小、ルール推奨、ルール最大)を切り替えます
- 4 を押して、可能なビアサイズ(ユーザー選択、ルール最小、ルール推奨、ルール最大)を切り替えます
- 5 を押して、レイヤー変更時の可能なビアパターンを切り替えます
- Shift+F1 を押して、利用可能なコマンド内ショートカットを全て表示します
- コーナー内アークモードでは、"," キーを押して最大アーク半径を減らし、"." キーを押して最大アーク半径を増やします。カーソルを動かすことでアークサイズを対話的に変更できます。この設定は、配線時にステータスバーに表示される最大許容アーク半径を定義します。
配線の品質向上
PCBエディタには、既存の配線の品質を向上させるための強力なツールが含まれています。これらのツールはグロッシングとリトレーシングとして知られており、どちらもRouteメニューで利用可能です。
- Gloss - トレースのジオメトリを改善することに焦点を当て、コーナーの数を減らし、全体のルート長を短縮しようとします。グロスは既存のトレース幅と差動ペア間隔を保持します。
- Retrace - 全体のジオメトリが満足であると仮定し、代わりに配線が設計ルールを満たしているかを検証することに焦点を当てます。グロスが既存のトレース幅とペア間隔を保持するのに対し、リトレースはそれらを好ましいものに変更します。設計ルールが変更され、その変更を既存の配線に適用する必要がある場合に、リトレースは優れたツールです。
前のセクションのアニメーション、差動ペアの配線には、グロッシングの簡単なデモンストレーションが含まれています。
配線選択の戦略
選択は、既存の配線を扱うを含む、設計プロセスの全領域における核となる活動です。配線を光沢をかける前であろうと、いくつかの配線を削除したい場合であろうと、まずはルートを選択する必要があります。
内側を選択するか、接触しているものを選択するか
PCBエディタでは、選択は選択矩形内のオブジェクトであるか、選択矩形に接触しているオブジェクトであるかのどちらかです。これは、選択矩形を描くときにマウスを動かす方向によって制御されます:
内側を選択 - 左から右へ青い矩形をクリック&ドラッグして、選択矩形内に完全に収まるすべての表示されている、ロックされていないオブジェクトを選択します。 | |
接触を選択 - 右から左へ緑の矩形をクリック&ドラッグして、選択矩形に触れるすべての表示されている、ロックされていないオブジェクトを選択します。 |
選択範囲の拡張
接触している多数のオブジェクトを選択する必要がある場合は、一般的な状況です。例えば、配線されたネットのトラックセグメントや、配線されていないネットの接続線などです。平行に走るトラックセグメントのセットを接触しているものを選択する技術を使って比較的簡単に選択することができますが、ルート全体を対話的に選択するのは難しい場合があります。
これは、1つ以上のトラックセグメントを選択し、接触しているトラックセグメントを含めて選択範囲を拡張することで簡単に実現できます。これは、下のビデオで示されているように、Tabキーを使用して行います。
配線選択技術のデモンストレーション
差動ペア配線のインタラクティブな変更
メイン記事: 配線の変更
配線中には、既存の配線を変更する必要が生じる場合が多々あります。例えば、パッドの出口に満足できない場合、それらを再形成したいと思うかもしれません(下のビデオで示されています)。既存の配線をトラックセグメントをクリックしてドラッグするドラフティングタイプのアプローチで変更することはできますが、単純に再配線する方がしばしば簡単です。
これを行うには、Route » Interactive Differential Pair Routing コマンドを選択し、既存の配線上のどこかをクリックします。新しいパスを配線し、必要に応じて既存の配線に戻ってきます。これにより、古いパスと新しいパスでループが作成されます。右クリックまたはEscを押して配線を終了すると、冗長なセグメントが自動的に削除されます。これには、冗長なビアも含まれます。差動ペア配線は、シングルネット配線とは少し異なります。シングルネット配線は、最後のセグメントを中空(先読みセグメント)に設定できます。このセグメントはクリックしたときに配置されません。差動ペア配線には、先読みセグメントが含まれていないため、クリックすると表示されるすべてのセグメントが配置されます。冗長なセグメントがないようにカーソルを位置づけてください。
差動ペアを手動でトラックセグメントをドラッグして調整している場合、一方のペアメンバーをもう一方と一緒に押し出すか、それぞれを独立してドラッグすることができます。
詳細については、配線の変更を参照してください。
利用可能なクリアランスの表示
配線中に、なぜその隙間を通過できないのかと悩んだことはありますか?このイライラは、差動ペア配線を行う際にさらに高まることがあります。Altium Designerには、この問題を解決するための機能が含まれています。それは動的なクリアランス境界の表示と呼ばれます。有効にすると、既存のオブジェクト + 適用されるクリアランスルールによって定義された禁止クリアランスエリアが、下のビデオで示されるように、ローカル視聴円内でシェーディングされたポリゴンとして表示されます。機能をオン/オフに切り替えるには、Ctrl+Wを押します。
表示エリアは、現在のカーソル位置の周囲の領域に制限することも、画面全体にすることもできます。これは、Preferences ダイアログの PCB Editor - Interactive Routing ページにあるReduce Clearance Display Areaサブオプションで制御されます。
差動ペアの長さのマッチング
差動ペアは、本質的なノイズ耐性と、高品質なリターンパスを提供する課題を簡素化するという事実のため、高速設計でよく使用されます。しかし、片側信号と同様に、信号のタイミング要件を満たすためには、その長さを管理する必要があります。
差動ペアの配線中に、ペア内の2つのネットの長さはステータスバーに表示され、ヘッズアップディスプレイ(Shift+Hでオン/オフ切り替え)でも表示されます。ペアの配線を終了した時に、PCBパネルに表示される長さの値が更新されます。
マッチング長と長さの設計ルール
長さとマッチング長の設計ルールは、フライトタイムとスキューのタイミング要件が満たされるように定義することができます。これらのルールは、設計ルールチェック(DRC)中だけでなく、インタラクティブな長さ調整中にも使用されます。
マッチドレングス設計ルールは、ルールの範囲によって対象とされる最長のペアを検出し、そのペアの平均長値を基準として他の対象ペアと比較し、定義された許容誤差内での長さを要求します。この平均長値は、PCBパネルのDifferential Pairs Editorモードで表示されます。
ペア内およびペア間の設計ルール
ペア間、および各ペア内でマッチドレングス要件を持つことがあります。
これを管理するために、適切なマッチドレングス設計ルールを作成します:
- ペア間(Group Matched Lengthsオプションを選択することで達成)に適用されるマッチング長さの設計ルールを定義します。下の左側の画像に示されているように、必要なペアにルールを適用する範囲を指定します。
- ペア内で適用される別のマッチング長さの設計ルールを定義します(Within Differential Pair Lengthオプションを選択することで達成)。このルールは、各ペア内の2つのネットの長さが許容範囲内であることを保証します。このルールも、下の右側の画像に示されているように、必要なペアに適用する範囲で設定されます。このルールは、ペア間のルールよりも高い優先度を持つべきです。
差動ペアの長さ調整
メイン記事: 長さ調整
ペアの長さと、各ペア内のネットの長さは、2つのレングスチューニングコマンドを使用して調整されます。長さを調整するには:
-
差動ペアの長さは、RouteメニューのInteractive Diff Pair Length Tuningコマンドを使用して正確に調整できます。長さ調整中には、ショートカットを使用してアコーディオンスタイルとサイズを対話的に調整するか、Tabを押してDifferential Pair Length Tuningモードでプロパティパネルを開くことができます。パネルでは、目標長さが定義されます:
-
Target Lengthフィールドに値を手動で入力
-
ユーザーが選択した配線された差動ペアから
-
適用可能な長さとマッチング長さの設計ルールから。
-
- ペア内のネットを調整するには、RouteメニューのInteractive Length Tuningコマンドを使用します。ペア内の長いネットを調整しようとすると、Target Length Shorter than Old Lengthというメッセージが表示されます。
長さ調整アコーディオンの削除
差動ペアの長さ調整アコーディオンは、複数の短いトラックとアークセグメントから作成されます。これらは手動で選択して削除することができますが、通常はその上から再配線する方が効率的です。ループ除去機能が、冗長なトラック/アークセグメントを削除します。
参照
FEDEVEL AcademyのRobert Feranec氏(www.fedevel.com)に、このページの画像にiMX6 Rex開発ボードを使用させていただいたことに感謝します(http://www.imx6rex.com/)。 ```html
```