差動ペア配線
親記事: 配線
差動信号システムとは、信号が密接に結合された一対のキャリアを介して送信されるシステムで、一方のキャリアが信号を運び、もう一方が信号の等しいが反対のイメージを運ぶものです。差動信号は、信号源の論理基準グラウンドが負荷の論理基準グラウンドにうまく接続できない状況に対応するために開発されました。差動信号は、電子製品に存在する最も一般的な干渉アーティファクトである共通モード電気ノイズに対して本質的に免疫があります。差動信号のもう一つの大きな利点は、信号ペアから発生する電磁干渉(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に転送されます。
複数のペアを識別するためのブランケットディレクティブの使用
定義するペアの数が多い場合、ブランケットディレクティブを配置するという別のアプローチもあります。これにより、ブランケットの下にある複数のネットにディレクティブを適用することができます(ソフトウェアは、ブランケットの境界内にあるネットラベルのホットスポットを検出します)。その後、ブランケットは下の画像に示すように、単一の差動ペアディレクティブによってタグ付けされます。
この画像には、含まれているネットを差動ペアメンバーとして定義するよう指示するだけでなく(差動ペアディレクティブの存在によって)、すべての含まれているネットをネットクラスRocketIO
のメンバーにするよう指示し、ペアを差動ペアクラスROCKET_IO_LINES
のメンバーにし、さらに差動ペア配線ルールを作成するようにも指示していることが示されています。同じ差動ペアディレクティブにネットクラスが指定されているため、PCBエディタに設計を転送するとき、このルールはRocketIO
ネットクラスを対象としてスコープされます。
ブランケットを使用して、複数のネットを差動ペアメンバーとして設定し、これらのネットのネットクラスを作成し、差動ペア配線のpcdesignルールを適用することができます。
差動ペアをPCBエディタに転送する
スキーマティックでネットに差動ペアディレクティブを配置した場合、デフォルトのプロジェクトオプション設定により、PCB上に差動ペアメンバーが作成されます。PCBプロジェクトのオプションダイアログで使用される以下のオプションを設定することで、これを構成できます:
- コンパレータタブ - 追加の差動ペア(その後、異なる差動ペアが後続の更新をチェックし、デザインルールを作成/変更する場合はルールオプションもあります)
- ECO生成タブ - 差動ペアの追加(その後、差動ペアの変更が後続の更新をチェックし、デザインルールを作成/変更する場合はルールオプションもあります)
- クラス生成タブ - ネットクラスの生成(PCB差動ペア配線ルールの範囲を指定するために使用するネットクラスを作成している場合)
PCB上での差動ペアの表示と管理
差動ペアの定義は、PCBパネルでDifferential Pairs Editoに設定されているところで閲覧および管理されます。下の画像は、差動ペアクラス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を使用して高速信号パスを定義する
差動ペアにシリーズコンポーネントが信号経路上にある場合、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メニューからDifferential Pair Routingを選択します。ペアのネットの1つを選択するように求められます。どちらかをクリックして配線を開始します。下のビデオは、差動ペアが配線されている様子を示しています。
差動ペア配線中には、次の機能を実行できます:
- Shift+R を押して、競合解決配線モード(Walkaround、Push、Hug and Push、Stop at First Obstacle、Ignore Obstacles)を切り替えます
- Shift+Spacebar を押して、利用可能なコーナースタイル(45度コーナー、コーナー内の45度アーク、90度コーナー、コーナー内の90度アーク)を切り替えます
- 3 を押して、可能な差動ペア配線幅(ユーザー選択、ルール最小、ルール推奨、ルール最大)を切り替えます
- Shift+6 を押して、可能な差動ペアギャップ(ルール最小、ルール推奨、ルール最大)を切り替えます
-
レイヤーを切り替えてビアを挿入するには:* キー(テンキー)を押すか、Ctrl+Shift+Wheel Scroll のショートカット組み合わせを使用します。その後
- 4 を押して、可能なビアサイズ(ユーザー選択、ルール最小、ルール推奨、ルール最大)を切り替えます
- 5 を押して、レイヤー変更時の可能なビアパターンを切り替えます
- 6 を押して、可能なビアスタックを切り替えるか、8 を押して選択するリストを表示します(インタラクティブ配線中に配置されるビアを制御する方法について詳しくはこちら)
- Shift+F1 を押して、使用可能なコマンド内ショートカットをすべて表示します
- コーナー内アークモードでは、"," キーを押して最大アーク半径を減らし、"." キーを押して最大アーク半径を増やします。アークサイズはカーソルを動かすことでインタラクティブに変更できます。この設定は、配線時にステータスバーに表示される最大許容アーク半径を定義します。
配線品質の向上
メイン記事: ポストルートのグロッシングとリトレーシング
PCBエディタには、既存の配線の品質を向上させるための強力なツールが含まれています。これらのツールはグロッシングとリトレーシングとして知られており、どちらもRouteメニューで利用可能です。
- Gloss - トレースのジオメトリを改善することに焦点を当て、角の数を減らし、全体のルート長を短縮しようとします。グロスは既存のトレース幅と差動ペアのギャップを保持します。グロスは現在のRouting Gloss Effort設定を尊重し、PCB - Interactive Routingページの設定ダイアログで構成されます ( 画像を表示)。
- Retrace - 全体のジオメトリが満足であると仮定し、代わりに配線が設計ルールを満たしているかを検証することに焦点を当てます。グロスが既存のトレース幅とペアギャップを保持するのに対し、リトレースはそれらを好ましいものに変更します。差動ペア配線の設計ルールが変更され、その変更を既存の配線に適用する必要がある場合に使用するのに優れたツールです。
前のセクションのアニメーション、差動ペアの配線には、Routing Gloss EffortをStrong
に設定した簡単なデモンストレーションが含まれています。
配線を選択するための戦略
選択は、既存の配線を扱うを含む、設計プロセスのすべての領域での核となる活動です。グロスを行う前でも、いくつかの配線を削除したい場合でも、まず配線を選択する必要があります。
内部を選択するか、触れているものを選択する
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モードで表示されます。
ペア内およびペア間の設計ルール
ペア間、および各ペア内で一致した長さの要件がある可能性が高いです。
これを管理するには、適切な一致した長さの設計ルールを作成します:
- ペア間(ペアをまたがる)に適用される一致した長さの設計ルールを定義します(グループ一致した長さオプションを選択することで達成)。以下の画像に示すように、必要なペア(またはxSignals)にルールを適用する範囲を指定します。
- ペア内で適用される別のマッチドレングス設計ルールを定義します(Within Differential Pair Lengthオプションを選択することで達成)。このルールは、各ペア内の2つのネットの長さが許容範囲内であることを保証します。このルールは、下記に示すように、差動ペアを対象とするWhere the Object Matches設定を使用してスコープを設定する必要があります。このルールは、ペア間のルールよりも高い優先度を持つべきです。
差動ペアの長さ調整
メイン記事: 長さ調整
ペアの長さと、各ペア内のネットは、2つの長さ調整コマンドを使用して調整されます。長さを調整するには:
-
差動ペアの長さは、RouteメニューのInteractive Diff Pair Length Tuningコマンドを使用して正確に調整できます。長さ調整中には、ショートカットを使用してアコーディオンスタイルとサイズを対話的に調整するか、Tabを押してDifferential Pair Length Tuningモードでプロパティパネルを開くことができます。パネルでは、目標長さが定義されます:
-
適用可能な長さおよび/またはマッチング長さの設計ルールから
-
ユーザーが選択した配線された差動ペアから
-
手動でTarget Lengthフィールドに値を入力
-
- ペア内のネットを調整するには、RouteメニューのInteractive Length Tuningコマンドを使用します。ペア内でより長いネットを調整しようとすると、Target Length Shorter than Old Lengthというメッセージが表示されます。
長さ調整とアコーディオンの修正のデモンストレーション
このビデオでは、xSignalの長さに基づいて他のペアと比較してペアの長さを調整するために長さ調整アコーディオンを追加する様子を示しています。各ペアの短い方が、そのペアの長い方と比較して長さ調整されます。その後、ビデオではペアを対話的に移動および再形成する方法、調整アコーディオンを削除する方法、配置中にショートカットを使用して新しいアコーディオンを形成する方法を示しています。
参照
このページの画像でiMX6 Rex開発ボードを使用させていただいたFEDEVELアカデミーのRobert Feranecに感謝します。(www.fedevel.com) (http://www.imx6rex.com/) ```plaintext
```