Swapping Pins, Pairs and Parts in a Design in Altium NEXUS
Altium NEXUSのインタラクティブ配線やBGAエスケープ配線機能と連携して動作するのが、ピン、ディファレンシャルペア、およびパートスワッピングシステムです。この機能は従来のピンスワッピングシステムのすべての利点を提供しつつ、Altium NEXUSが設計内のネット割り当てを深く理解していることを活かしています。ピンスワップ操作中、Altium NEXUSは選択されたピンに割り当てられているネットを解析し、そのピンおよび接続されている銅箔上のネットを動的に再割り当てします。
このレベルの機能により、部分的に配線されたネットや、複雑なBGAデバイスからの事前配線済みの多層エスケープもスワップ可能です。ディファレンシャルペアも、FPGA上のディファレンシャルピンペアに関する知識を活用してスワップできます。
PCBレベルでは、このシステムは強力な自動最適化機能を備えており、この情報を利用して配線のしやすさを向上させるためにネットを動的に再割り当てします。例えば、複数の層でエスケープ配線された複数のデバイスに対して再接続を実行できます。これらは、エスケープルート層の一致、最短マンハッタン距離、各層でのクロスオーバーの最小数に基づいて割り当てられます。
部分的な配線済みネットのスワッピング機能と自動最適化機能の追加により、階層的かつ反復的な配線戦略を採用できます。まずデバイスのエスケープ配線を行い、次に特定エリアの端まで配線し、最終的にこれらのセクションを接続します。いつでも自動スワッパーを再実行して、部分的に配線されたネットから得られる最新情報に基づき再最適化できます。
スワッピングには3つのカテゴリがあります:
- ピンスワッピング
- ディファレンシャルペアスワッピング
- サブパートスワッピング。
スワップグループの設定
各スワッピングカテゴリごとに、
-
PCBドキュメントでコンポーネントを右クリックし、
Component Actions » Configure Pin/Part Swapping を選択。 -
回路図ドキュメントでコンポーネントを右クリックし、
Part Actions » Configure Pin Swapping を選択。 -
回路図ドキュメントで、
Configure Component ボタンをConfigure Swapping Information In Componentsダイアログの下部でクリック (Tools » Configure Pin Swapping )。 -
PCBドキュメントで、
Configure Component ボタンをConfigure Swapping Information In Componentsダイアログの下部でクリック (Tools » Pin/Part Swapping » Configure )。 -
Configure Swapping Information In Components ダイアログ内の任意のコンポーネントをダブルクリック。
ピングループ
コンポーネント内のピンは、同じ
デュアル5入力正論理NORゲートコンポーネントを含む回路図。いずれのサブパートの入力ピンも論理的に等価であり、ピンスワッピングに理想的な状況です。
上図の回路図を考えてみましょう。この図にはSNJ54S260コンポーネントの2つの5入力NORゲートが含まれています。NORゲートの特性上、INA0~INA4の各ネットは相互にスワップ可能です。同様にINB0~INB4の各ネットもスワップ可能ですが、INAxネットとINBxネットはスワップできません。
NORゲートのスワッピング制約は
パートグループとシーケンスID
コンポーネントが複数の機能的に等価なサブパートで構成されていることはよくあります。パートスワッピングを使うと、こうした等価なサブパート間でネットをスワップできます。再び上図のコンポーネントを例に考えます。両方のNORゲートは同一の機能を持ち、(INA0, INA1, INA2, INA3, INA4, OUTA)のネットは(INB0, INB1, INB2, INB3, INB4, OUTB)のネットとスワップ可能です。
コンポーネントのパートスワッピングは、
デュアル5入力NORゲートコンポーネントのピンスワッピング設定ダイアログでのパートスワップグループの設定例。
パートスワッピングは、2つのサブパート間ですべてのネットをスワップすることに基づいているため、サブパートとして設計されたコンポーネントでのみ利用可能です。
ペアグループ
ディファレンシャルペアのスワッピングは、ディファレンシャルペアの
-
Show Pairs From Directives - システムは、回路図上に配置されたディファレンシャルペアディレクティブを使用して、テーブル内のディファレンシャルペアを自動生成します。 -
Show Pairs From FPGA - システムは、コンポーネントに利用可能なFPGA情報から得られるディファレンシャルペアデータを使用してピンをペアにします。このモードはコンポーネントがFPGAの場合に利用可能です。 -
Show All Pins - システムはすべてのコンポーネントピンを表示します。
ピンスワッピング設定ダイアログでのペアスワップグループの設定例。
回路図上でのスワップ方法の制御
PCBエディタでは、ピン、ペア、パートのスワップは、コンポーネントパッドおよび対応する銅箔上のネットを交換することで行われます。これらの変更を回路図にマージする際、ピンスワップの処理方法には2つあり、コンポーネントシンボル上のピンを入れ替える方法と、ピンに接続されたワイヤ上のネットラベルを入れ替える方法があります。それぞれに利点と欠点があります。
ピンを入れ替える方法は常に回路図上で機能しますが、この場合、そのコンポーネントシンボルのインスタンスがライブラリで定義されたものと異なるものになる可能性があります。この場合、シンボルはライブラリから更新できなくなり、同じコンポーネントの他のインスタンスも異なるピン配置になることがあります。したがって、この方法は抵抗アレイなどの単純なコンポーネントに最適です。
回路図上でネットラベルを入れ替えてスワップを実行する場合、接続がネットラベルによって確立されており、かつピン同士が直接配線されていない場合にのみ可能です。この方法の利点は、コンポーネントシンボル自体が変更されず、後からライブラリから更新できる点です。特にFPGAのような複雑なコンポーネントでは、シンボル上でピンを物理的に移動させるとI/Oバンクに基づくシンボル表示が正しくなくなる可能性があるため、この方法が最適です。
スワップの実行方法は、Project Options - Optionsダイアログの
これらのプロジェクトオプションは、回路図ドキュメントでのピンスワップの更新方法を制御します。
PCB上でのピン、ペア、パートスワップの有効化
ピン、ペア、パートスワップをコンポーネント内で設定するために必要な
PCBコンポーネントのスワップオプションは、設計空間で選択した際にそのコンポーネントのプロパティを表示するPropertiesパネルで設定できます。オプションはGeneral タブの

ピン、ペア、パートスワップの実行
インタラクティブなピン、ペア、パートスワップ
インタラクティブスワップでは、PCBエディタ上でピン、差動ペア、またはサブパートを1つずつスワップできます。インタラクティブスワップコマンドは
- 最初のステップは、スワップ元となるハイライトされたピンのいずれかを選択します。ペアまたはパートスワップの場合、ピンが属する差動ペアまたはサブパートがその後スワップされます。
- 2番目のステップは、スワップ先となるピンを選択します。ペアまたはパートスワップの場合、このピンは差動ペアまたはサブパートを代表します。
デュアル5入力NORゲートコンポーネントのサブパートスワップをインタラクティブに行う手順は、下の2つの画像で示されています。スワップ可能な2つのサブパートがあり、それぞれの5つのピンが選択可能です(上図参照)。ピン8が選択され、サブパートU2Bに対応します。システムは次に、スワップ可能なサブパートU2Aのピンをハイライトします。
1枚目の画像、ステップ1 - スワップするピンを選択、利用可能なピンがハイライトされます。2枚目の画像、ステップ2 - 対象ピンを選択します。
自動ピン/ネット最適化ツール
自動ピン/ネット最適化ツールは2段階のツールです。PCBエディタメニューから
自動ピン/ネット最適化ツールは、まずクロスオーバーや接続長を最小化しようとする高速な単一パスの最適化を実行しますが、場合によっては逆に増加することもあります。完了後、反復最適化を実行するかどうかが尋ねられます。反復最適化では、クロスオーバー数や接続長を減らすために複数回のパスを行います。
変更内容を回路図に反映させる
PCBから回路図への変更のプッシュ
ピン、ペア、パートスワップは、他の設計変更と同様に、メニューから
- ピン名の変更 - この変更はシンボル上のピンを移動します。実際にはシンボル上でピンが移動するわけではありませんが、2つのピンが移動または入れ替わったことが視覚的に分かります。
- 異なるネットへのピン移動 - この変更は、接続されたワイヤのネットラベルを入れ替えます。
- サブパートIDの変更 - この変更は、パートスワップが実行された際にサブパートのインデックスを変更します。
1枚目の画像は、ピンの入れ替えによって回路図上でスワップが解決された例です。2枚目の画像は、ネットラベルの移動によってスワップが解決された例です。
回路図でスワップされたピンやパートが表示されない場合は、
FPGA設計で新しいピン/パートスワップシステムを活用する
インテリジェントなピン、ペア、パートスワップの明らかな利点に加え、部分的に配線されたサブネットのスワップが可能になったことで、大容量FPGAの設計に最適な新しい次元のスワップが実現しました。動的なネット再割り当てにより、段階的にピン/ネット割り当てを洗練させていくマルチステージ設計プロセスが可能です。
初期I/O割り当て
この段階では、FPGAや他のデバイスのピンに対して、回路図レベルで最も簡単な方法でネット割り当てを設定します。通常は、FPGAのピンに数値バス順でネットラベルを追加するだけです。回路図エディタのSmart Paste機能は、この作業に最適です。
初期接続最適化
設計をPCBレイアウトに転送すると、回路図レベルでのランダムな割り当てのため、多くの接続クロスオーバーが発生します。Automatic Net/Pin Optimizerコマンドを実行すると、クロスオーバー数を大幅に削減できます。この時点では理想的な結果でなくても構いません。主にPCBレベルで接続を視覚的に管理しやすくするためのものです。
エスケープ配線
PCB上の大きなデバイスに対してファンアウトやエスケープ配線を実行できます(コンポーネントを右クリックして選択的にファンアウト/エスケープ配線を実行)。この操作により、以前最適化された割り当てが悪化する場合もありますが、この段階では問題ありません。
エスケープ後の接続最適化
自動最適化ツールを再度実行します。今回は、ファンアウト/エスケープ配線の事前配線部分を活用します。
手動配線
エスケープルートの端を「ターゲット」として扱い、そこに向かって配線できるようになりました。実際の接続ラインは無視して構いません。なぜなら、同じネット上にあるものではなく、PCB上で最も近い(空間的およびレイヤー的に)エスケープされたI/Oルートに向かって、ネットの他端から配線できるためです。接続は一直線にはなりません。その代わり、FPGAのI/Oピンからのエスケープ配線と、PCBの他の部分からの配線との間に小さな隙間がいくつか生じます。下の画像はその簡単な例を示しています。
最終最適化
自動最適化ツールを再度実行すると、配線済みのサブネットが最も近いエスケープ済みI/Oピンに割り当てられます。これにより、非常に短い接続だけが残り、完了させることができます。自動最適化ツールには、このケースで良好な結果を得るための特別なルーチンが用意されています。これらは、インタラクティブまたは自動で配線することが可能です。
手動ピンスワップ
インタラクティブスワッパーを使用して、必要なピンスワップの変更を行ってください。
回路図への変更の反映
これらのピン割り当てを回路図に反映させる準備ができたら、回路図シンボルでのピン変更を無効にしておくことをお勧めします。これは、FPGAがしばしばマルチパート部品として提示され、各ピンバンクが個別の回路図パートとなっているためです。ピンをあるパートから別のパートに移動すると、バンクシンボルに本来そのバンクに属さないピンが含まれることになり、論理的に不正確になります。このような場合、ネットラベルを変更してピンスワップを行うのが正しい方法です。
必要に応じて繰り返し実行
このプロセスは、必要な回数だけ、また設計プロセスの任意のタイミングで実行できます。




