Altium Designer でのマルチシート&階層的設計
親ページ:スキーマについての詳細
回路図が元々紙に描かれていた時代には、大きな製図台に収まるほどの大きな一枚の紙に描かれ、専用の大判コピー機で複製されていました。時代は変わり、現在では回路図はデスクトップPC上で作成され、サーバーに保存され、小型のレーザープリンタで印刷されます。
この変化により、たとえシンプルな設計であっても、複数の回路図シートに表示されると、より簡単に理解できるようになります。設計が特に複雑でなくても、複数のシートにわたって整理することには利点があります。
たとえば、設計にはさまざまなモジュラー要素が含まれている場合があります。これらのモジュールを個別のドキュメントとして維持することで、複数の設計者が同時にプロジェクトに取り組むことができます。設計を論理的なモジュールに分割することは、設計の可読性を大幅に向上させます。これは、製品の寿命の後期に回路図を読み解く必要がある人にとって重要な考慮事項です。また、設計が少ないコンポーネントごとに複数のシートに構成されている場合、レーザープリンターなどの小型印刷を使用できるという利点もあります。
複数のシートに設計を広げる予定がある場合、決定すべきことが2つあります:
- シートの構造的関係、および
- それらのシート上の回路間で電気的接続を行うために採用される方法。
選択は、各プロジェクトのサイズやタイプ、および個人の好みによって異なります。
この記事では、シート間の構造的関係、その仕組み、およびマルチシート設計を作成するためのツールや技術に焦点を当てています。接続がどのように作成されるかについて詳しく知りたい場合は、接続の作成記事を参照してください。
フラットデザインか階層デザインか
前述の通り、設計者としては、回路図のシートがどのように整理され、それらのシート間の接続がどのように確立されるかを決定する必要があります。これらは別々の決定ではありません。なぜなら、構造を選択すると同時に、それらのシート間の接続がどのように作成されるかも選択する必要があるからです。
マルチシート設計の構造には2つのアプローチがあります:「フラット」または「階層的」です。
子シートを親シートに接続する技術は、フラット設計でも階層的設計でも同じです - それがフラット設計か階層的設計かを決定するのは、接続性がどのように作成されるかです。
フラット設計
フラットデザインは、大きな回路図のシートがいくつかの小さなシートに切り分けられたかのように考えることができます。フラットデザインでは、すべてのシートが同じレベルに存在します。フラットデザインにおける接続性は、あるシートから別のシートへ直接作成されます。このタイプの接続性は水平接続と呼ばれます。
フラットデザインでは、トップシートの使用はオプションです。もし含まれている場合、それにはデザイン内の各シートのシートシンボルがありますが、配線を含むことはできません。フラットデザインには任意の数のシートが存在することができます。
最初の画像 - フラットデザインにはトップシートがありません;二番目の画像 - 同じデザインにトップシートがあります。トップシートには配線がなく、デザイン内のシートを示しているだけです。
上の画像の両方はフラットデザインを示していますが、左側のバージョンにはトップシートがなく、右側のバージョンにはトップシートがあります。2つまたは3つの回路図シートしかない小さな設計の場合、トップシートが価値を加えないと判断するかもしれません。シートの数が多くなると、トップシートはシート上に配置された論理ブロック(シートシンボル)の方法から回路設計の機能性を理解するのに役立ちます。設計内のすべてのシートは、階層がないため、Projectsパネルで同じレベルに表示されます。
階層型デザイン
階層型デザインとは、シートシンボルを使用してシート間に親子関係を作成し、かつ、接続がシートシンボル内のシートエントリを通じて行われるもので、一つのシートのポートから別のシートのポートへ直接行われるわけではありません。
フラットデザインと同様に、子シートはシートシンボル内でそのファイル名を定義することによって識別されます。階層型デザインでは、その子シートはさらにシートシンボルを含むことができ、これが下位レベルのシートを参照し、階層内に別のレベルを作成します。下の画像は階層型デザインを示しており、階層には3つのレベルがあります。
階層設計では、子シート上の信号はポートを介してシートを離れ、親シート上の対応するシートエントリに向かって上方に接続します。親シートには、子信号を別のシートシンボル内のシートエントリまで運ぶ配線が含まれており、その後、下の画像に示すように、2番目の子シート上の対応するポートに向かって下降します。
マルチシート設計の作成
プロジェクトに2枚目の回路図シートを追加すると、マルチシート設計が作成されます。トップシートなしでフラットな設計を作成する予定の場合は、プロジェクトに回路図シートを追加し続け、ネット識別子の範囲が正しく設定されていることを確認します。
シートシンボルを使用して下位レベルのシートを参照したい場合は、シートシンボルを配置して手動で編集し、下位レベルのシートを正しく参照するようにするか、以下に説明するように、さまざまな組み込みコマンドを使用できます。
子シートの参照
シートシンボルのFilenameプロパティが下位レベルのシートを参照します。このフィールドには、そのファイルの場所へのパスではなく、回路図ファイル名のみを含めるべきです(この場所のデータは実際にはプロジェクトファイルに格納されています)。
このFilenameプロパティは、このシートシンボルを子回路図シートにリンクします。
子回路図が親回路図と同じフォルダに保存されている必要はありません。親の保存フォルダより下のフォルダに保存されている場合は相対ファイル参照が使用され、他の場所に保存されている場合は絶対ファイル参照が使用されます - このようなプロジェクトでファイルを移動する際は注意してください。または、プロジェクトパッケージャを使用してファイルをZIP圧縮し、ファイルパスを解決してください。
階層の作成
このソフトウェアには、マルチドキュメントの階層構造を迅速かつ効率的に構節するためのコマンドがいくつか含まれています。使用するコマンドは、個人の設計方法論に依存します - これは大まかにトップダウンまたはボトムアップとして分類されます。これらのコマンドは、シートエントリの追加、新しい回路図シートの作成、ポートの配置など、プロセスに必要な要素をすべて処理するため、階層を手動で作成するよりも効率的です。
このコマンドを使用して、トップダウン方式で階層を構築します:
-
Design » Create Sheet From Sheet Symbol - このコマンドを使用して、指定されたシート記号の下に新しい回路図シートを作成します。ポートは、シート シンボルで見つかったシート エントリと一致するように子シートに追加されます。シートシンボルにすべてのシートエントリがまだ含まれていない場合でも心配しないでください、時間の経過とともにさらに追加された場合は、以下で説明するように、シートエントリとポートを再同期できます。
このコマンドを使用して、下から上への階層を構節します:
-
Design » Create Sheet Symbol From Sheet or HDL - 指定された回路図シート(またはVHDLまたはVerilogファイル)からシンボルを作成するためにこのコマンドを使用します。このコマンドを使用するには、まず新しいシートシンボルを保持するシートに切り替え、次にコマンドを起動します。シートシンボルには、見つかった各ポートに一致するシートエントリが含まれます。ポートやシートエントリが後で追加または削除された場合、下記の議論で説明されているように、再同期することができます。
このコマンドを使用して、設計内の回路配置を再編成します:
-
Edit » Refactor » Move Selected Sub-circuit to Different Sheet - このコマンドを使用して、選択したコンポーネントと配線をプロジェクト内の別のシートに移動します。移動先のChoose Destination Documentダイアログが開き、プロジェクト内の既存の回路図から任意のものを選択できます。このコマンドについては、以下で詳しく説明します。
設計の再構成
設計のプロセスはしばしば非構造的で有機的であり、デザイナーは同時に設計の複数の部分に対してアイデアを練っているかもしれず、アイデアが進化するにつれてセクションを捉えていきます。それは、始めは整然と配置された回路図が、混雑して整理されていないものになる可能性があることを意味します。回路図デザインを再編成するためにカット、コピー&ペーストを使用することができますが、これが常に最良のアプローチとは限りません。なぜなら、各コンポーネントが配置されると、それには一意の識別子が割り当てられ、この識別子はコンポーネントがカット/コピー&ペーストされるたびに自動的にリセットされるからです。このUID管理は、設計内で使用される各UIDのインスタンスが1つだけであることを保証するために行われます。なぜなら、それは回路図コンポーネントをPCBコンポーネントにリンクする鍵となるフィールドだからです。カット/コピー&ペーストのアプローチは、設計がPCBエディタに転送されていない場合は問題ありませんが、転送されている場合は、リファクタリングツールを使用する方が良いです。
サブサーキットを別のシートに移動する
回路の一部を一枚のシートから別のシートに移動する最も簡単な方法は、それを選択してから、Edit » Refactor » Move Selected Sub-circuit to Different Sheet コマンドを実行することです(選択時に右クリックメニューからも利用可能です)。Choose Destination Document ダイアログが開き、目的のシートを選択してOKをクリックすると、そのシートが表示され、サブ回路がカーソル上に浮かんで配置の準備ができます。
プロジェクト内の異なるシートに回路の選択されたセクションを簡単に移動することができる、右クリックのMove Selected Subcircuit to Different Sheetコマンド。
ポートとシートエントリの同期
設計の再構築の一環としてコンポーネントや配線を移動した場合、各ポートが対応するシートエントリーと一致するように、子シートをシートシンボルに再同期する必要があるかもしれません。これは、Synchronize Sheet Entries and Portsコマンドを使用して行われます。このコマンドは以下で利用可能です:
-
Design » Synchronize Sheet Entries and Ports menu - このコマンドを選択すると、設計内のすべてのシートシンボルを分析し、ダイアログにはOnly Show unmatched sheet symbolsオプションに従って、設計内の各シートシンボルに対してタブが含まれます。
-
Right click » Sheet Symbol Actions » Synchronize Sheet Entries and Ports - カーソル下のシートシンボルのみを分析するこのコマンドを選択します。
これらのコマンドのどちらを使用しても、Synchronize Ports to Sheet Entriesダイアログが開きます。このダイログでは、既に一致しているポート/シートエントリがダイアログの右側にリストされ、一致していないポートとシートエントリが左側の2列にリストされます。
Synchronize Ports to Sheet Entriesダイアログは、シートエントリーが子シート上のポートと一致するようにするために使用されます。
2つのタブがあることに注意してください。これは、この設計にシートエントリー/ポートの不一致があるシートシンボルが2つあることを意味します。
ダイアログの左側に表示される不一致に焦点を当てると、最初の列のシートエントリーを選択し、次に第二列の正しいポートを選択し、それらを同期させるために正しいボタンをクリックして(ダイアログの右側のリストに移動する)一方を更新します。ボタンの機能は以下の通りです:
- - 選択したポートにシートエントリのプロパティを適用します。
- - 選択したシートエントリにポートのプロパティを適用します。
左側の列で複数のシートエントリが選択されている場合、ソフトウェアは各シートエントリを第二列の隣接するポートと同期します。隣接するポート(またはシートエントリ)がない場合は、新しいものが作成されます。
ツールがシートエントリーやポートを追加する場合、作業が完了した時点で、それらを回路図シート上で正しく配置する必要があります。 マルチチャネル設計 電子設計において、回路の繰り返しセクションが含まれることは珍しくありません。それはステレオアンプであるかもしれませんし、64チャネルのミキシングデスクであるかもしれません。このタイプの設計は、マルチチャネル設計として知られる機能セットによって、Altium Designerで完全にサポートされています。
ビデオマルチプレクサーの2つのデコーダーチャネル。マルチチャネル設計構造を使用すると、デコーダーチャネルは一度だけキャプチャされます。
マルチチャネル設計では、繰り返される回路を一度キャプチャし、その後、ソフトウェアに必要な回数を繰り返すよう指示します。設計がコンパイルされると、メモリ内で展開され、すべてのコンポーネントと接続性がユーザー定義のチャネル命名スキームに従って必要な回数繰り返されます。
キャプチャした論理設計は実際にはフラット化されず、ソースは常にマルチチャネルの回路図として残ります。それをPCBレイアウトに転送すると、物理的なコンポーネントとネットは自動的に必要な回数だけステップアウトされます。回路図とPCBの間で作業するために利用可能な標準のクロスプロービングおよびクロスセレクティングツールに完全にアクセスできます。また、PCBエディタには、1つのチャネルの配置とルーティングを他のすべてのチャネルに複製するツールがあり、1つのチャネル全体を簡単に移動および再配置する機能があります。
統合データモデル
マルチチャネル設計を理解するには、設計データの管理方法を理解することが役立ちます。ソフトウェアの基本要素は、統一データモデル(UDM)です。プロジェクトがコンパイルされると、設計プロセスの中心に位置する単一の、統合されたモデルが作成されます。そのモデル内のデータは、ソフトウェア内のさまざまなエディターやサービスを使用してアクセスおよび操作することができます。様々な設計領域ごとに別々のデータストアを使用するのではなく、UDMは、コンポーネントとその接続性を含む、設計のすべての側面からのすべての情報を収容するように構造化されています。
統一データモデルは、すべてのエディターに設計データを利用可能にし、マルチチャネル設計のような高度な機能を提供するのに役立ちます。
UDMを階層設計システムと組み合わせることで、マルチチャネル設計機能を提供します。「チャネル」とは、シートシンボル内の回路のことで、このシートシンボルの下には単一のシートがあるか、またはプロジェクト構造の全体の枝分かれを含むことができ、他のサブシートも含まれます。チャネル内にチャネルを作成することもでき、2レベルのマルチチャネル設計では、上位のチャネルをバンクと呼び、下位のチャネルをチャネルと呼びます。
この完全な、PCB準備完了の記述がメモリ内に存在するため、コンポーネントの指定子やネットなど、繰り返されるオブジェクトを扱う体系的な方法がある限り、回路のセクションを繰り返すことが可能です。体系的な命名は、プロジェクトのオプションダイアログのマルチチャネルタブで定義されており、以下で説明します。
マルチチャネル設計の作成
設計がマルチチャネルである場合、回路のセクションが繰り返されます。これは、シートシンボルレベルで行われます。具体的には以下の方法です:
- 同じ子回路図を参照する複数のシートシンボルを配置するか、または
- 参照される子回路図を必要な回数だけ繰り返すように単一のシートシンボルを設定する
最初の画像 - 4つのシートシンボルがすべて同じ子シート(PortIO.SchDoc)を参照しています。二番目の画像 - InputChannel.SchDocが8回、OutputChannel.SchDocが2回、Repeatキーワードによって繰り返されています。
これら2つのマルチチャネル設計を作成するアプローチは、上の画像で示されています。左の画像では、同じ子シート(PortIO.SchDoc
)を参照する4つのシートシンボルがあります。右の画像では、InputChannel.SchDoc
が8回、OutputChannel.SchDoc
が2回繰り返されており、シートシンボルのDesignatorフィールドにRepeatキーワードが存在しています。
プロジェクトがコンパイルされると、繰り返されるコンポーネントの指定子とネット名は、標準的な命名スキームを適用することによって解決されます。例えば、一つの命名スキームは、繰り返されるコンポーネントとネット識別子(ネットラベルおよびポート)にチャネルインデックスを追加することです。これは、下の画像のハイライトで示されています。
プロジェクトがコンパイルされると、回路図の下部に表示されるタブに注目してください。Editorタブには、あなたがキャプチャした論理設計が含まれています。他のタブ(COUT1およびCOUT2)はプロジェクトがコンパイルされると表示され、PCBエディターに転送される物理設計が含まれています。物理チャネルごとにタブが表示されます。
Repeatキーワード
述べたように、チャネルは同じ子シートを参照する複数のシートシンボルを配置するか、シートシンボルの指定子フィールドにRepeat
キーワードを含めることによって繰り返されます。
Repeat文はチャネル指定子とチャネル数を定義します。シートシンボルが重ねられたシンボルのセットとして描かれていることに注目してください。これは繰り返されるチャネルを示しています。
各チャネルはチャネル指定子によって識別されます。これはシートシンボルのDesignatorから来ます。デザインが複数のシートシンボルを配置することによってチャネル化される場合、チャネル指定子は各シートシンボルに定義されたDesignatorの値です。デザインがRepeatキーワードの使用によってチャネル化される場合、チャネル指定子はRepeat
キーワードによって定義されたChannelIdentifier+ChannelIndex
です。
Repeatキーワードが使用される場合のDesignatorフィールドの構文は、以下の通りです:
Repeat(<ChannelIdentifier>,<ChannelIndex_1>,<LastChannelIndex_n>)
インデックス範囲は1から始めなければならず、0(ゼロ)から始めることはサポートされていません。Repeatキーワードが使用されると、シートシンボルは積み重ねられたシートシンボルのセットとして描画されます。
マルチチャネル命名
一度キャプチャしてから繰り返すことができるというコンセプト - マルチチャネル設計 - は、ソフトウェアの統合データモデル(UDM)を基に構築されています。繰り返されるコンポーネントは、システマティックな命名スキームを使用して名付けられ、以下に示すようにOptions for ProjectダイアログのMulti-Channelタブで設定されます。
このダイアログには、ルームの命名を制御するための上部セクションと、それらのルーム内のコンポーネントの命名を制御するための下部セクションが含まれています。ルームレベルでは、2つのフラットな命名スタイルと3つの階層的な命名スタイルがあり、通常、設計にチャネル内のチャネルがある場合にのみ、階層的な命名スタイルを選択する必要があります。それ以外の場合は、フラットなルーム命名スタイルの方が短くて理解しやすいです。
コンポーネントの命名には、$Component$ChannelAlpha
または $Component_$ChannelIndex
オプションを使用すると、最も短く、最も解釈しやすいコンポーネント指定が得られます。また、利用可能なキーワードを使用して、独自の指定子命名スキームを構築することも可能です。
ルームの役割
ルームは、ボード上のエリアを定義するために使用されるPCB設計オブジェクトで、次の2つの方法で使用できます:
-
Contain objects - ルームは任意の多角形の形状オブジェクトのように配置されますが、実際には配置設計ルールとして作成されます。ルームの定義の一部は、そのルーム内に含まれる必要があるオブジェクト(通常はコンポーネント)を指定することです。そのルームが移動すると、ルーム内のすべてのコンポーネントも移動します。
-
To scope other design rules - 自身がルールであると同時に、ルームは他の設計ルールの範囲を指定するためにも使用できます。例えば、ある配線幅の設計ルールがネットのクラスのための配線幅を定義し、次に優先度の高い設計ルールがルームの範囲で異なる幅をそのクラスのネットに適用するよう指定することができます。
ルームはマルチチャネル設計に非常に適しています。回路図エディタからPCBエディタに設計が転送される際に、Options for ProjectダイアログのClass Generationタブのオプションに基づいて自動的に作成され、各シートシンボルに対して一つのルームが作成されます。そのチャネルのコンポーネントをクラスタリングするだけでなく、そのルーム内のコンポーネントの命名にルームを使用することができます。ルームとそのボード設計プロセスにおける役割については、この記事のマルチチャネルPCB設計セクションでさらに詳しく説明されています。
マルチチャネル設計における接続性
マルチチャネル設計の場合、Net Identifier ScopeをAutomatic
、Hierarchical
、またはStrict Hierarchical
に設定します。マルチチャネル設計は、ソフトウェアが設計をコンパイルする際にチャネルをメモリ内でインスタンス化するために、この構造モデルを使用するため、階層的でなければなりません。
繰り返されるチャネルに接続するネットには、ソフトウェアがサポートする必要がある2種類の異なる接続要件があります。ネットは以下のいずれかになります:
- すべてのチャネルに共通、または
- 各チャネルでユニーク。
これに対するサポートレベルは、チャネルを定義するために使用された方法(複数のシートシンボル、またはRepeatキーワードを介して)によって異なります。設計で複数のシートシンボル(各チャネルごとに個別のシートシンボル)が使用されている場合、ネットの接続性は、設計者によって配置された配線によって明示的に定義されます。
この設計ではRepeatキーワードを使用して複数のチャネルを作成しています。
設計でRepeatキーワードを使用する場合、以下の接続規則が適用されます。
全チャネルへのネットの渡し方 | あるネットを全てのチャネルで利用可能にするには、シートエントリに接続するだけです。上の画像で示されているように、Monitor ネットがInputChannel.SchDoc シートシンボルに接続されています。ネットEffects 、MB1 、MB2 も全てのチャネルで利用可能になります。バス内のネットも同様に扱われ、バスがシートエントリに接続されると、そのバスの各要素が全てのチャネルで利用可能になります。 |
特定のチャネルへのネットの渡し方 | バスから単一のネットを各チャネルに割り当てるには、シートエントリでRepeatキーワードを使用します。上の画像でのHeadphone バスが示すように、シートエントリにはRepeat(Headphone) という名前があります。この場合、ネットHeadphone1 はチャネルCIN1 に、Headphone2 はチャネルCIN2 に接続され、以降同様です。Repeatキーワードを使用してチャネルを作成した場合、個別のネットをただ一つのチャネルにのみ渡すことはできません。これが必要な場合は、各チャネルごとに個別のシートシンボルを配置する必要があります。 |
ネットの名前の付け方
最終的に、各ネットはPCB上で一つの名前しか持つことができません(1つのPCBネットに2つの名前を付けることはできません)、そして各ネット名はPCB上で一度だけ使用されるべきです(同じ名前を持つ異なるPCBネットを持つべきではありません)。プロジェクトがコンパイルされると、複数の名前を持つネットは自動的に単一の名前に解決されます - マルチチャネル設計でネーミングオプションを設定して、ネットがあなたにとって意味のある方法でラベル付けされるようにすることが重要です。ネット命名オプションは、Options for Project ダイアログのOptionsタブのNetlist Optionsセクションにあります。
マルチチャネル設計でこれらのオプションを設定する良いアプローチは、Higher Level Names Take Priorityオプションを有効にし、チャネル化された子シートに接続するすべてのネットにネットラベルを配置することです。
例として、以下の画像をご覧ください。両方のシートシンボルがPCB_Decoder.SchDoc
シートを指しているため、この回路には2つのチャネルがあり、U_PCB_DecoderAとU_PCB_DecoderBとして識別されます。
シートシンボルにはTDI
と呼ばれるシートエントリが含まれています。これはJTAG境界スキャンチェーン内のTest Data Inラインです。TDO
(テストデータアウト)はDecoderAから次のデバイスのTDIに接続され、そのデバイスはDecoderBチャネル内にあります。
2つのデコーダチャネルは、同じ回路図、PCB_Decoder.SchDocを参照する2つのシートシンボルを配置することで作成されます。
プロジェクトがコンパイルされると、回路図ビューの下部にU_PCB_DecoderAおよびU_PCB_DecoderBのチャネルタブが表示されます。これらのタブは、PCBエディターに渡される物理設計を示します。以下の画像では、キャプチャされたデコーダ回路の回路図が左下のEditorタブに表示され、その回路図の2つの物理チャネル、U_PCB_DecoderAおよびU_PCB_DecoderBが続きます。
元のキャプチャされた回路図では、ネットは設計者によってTDI
とラベル付けされています(最初の画像)。ソフトウェアがより高いレベルのネット名であるTDO_CONTROLLER
をDecoderAタブに適用したことに注目してください(2番目の画像)。これは、この設計で優先されるように設定されている高レベルのネット名です。DecoderBには高レベルの名前が定義されていないため、元のネット名TDI
はこのチャネルでTDI_2
と識別されています(3番目の画像)。これは、Options for ProjectダイアログのMulti-Channelタブで定義されている命名規則に従っています(Component Namingスキームは、各チャネル内のコンポーネントとネットの両方を識別するために使用されます)。
コンパイルされた名前の表示
マルチチャネル設計でのネットの追跡と分析は、繰り返されるネットを識別するために名前を変更する必要があるため、混乱することがありますが、それでもユニークである必要があります。これを支援するために、コンパイルされたオブジェクト名の表示を制御するためのいくつかのオプションがあります。これには、コンポーネントの指定子、ネットラベル、ポートが含まれます。また、シートとドキュメント番号に関するオプションもあり、これらは印刷タイプの出力を生成する準備ができたときに重要になります。
コンパイルされたオブジェクト名の表示は、PreferencesダイアログのSchematic - Compilerページで設定され、以下の画像に示されています。
コンパイルされたオブジェクト名の表示を設定します。コンポーネント指定子には上付き文字が便利です。
通常、設計者とネットラベルが表示されるようにしたいでしょう。問題を診断している場合は、ポートが便利です。上付き文字オプションが有効になっている場合、現在のドキュメントビューには、非表示ビューからのオブジェクト識別子が上付き文字として含まれます。これらをご自身の好みに合わせて設定してください。
マルチチャネル設計のチャネル2(CIN2)のビューです。オリジナルの論理回路図の指定子とネット名が上付き文字として表示されていることに注目してください。
複数のネット名エラーの解決
回路図エディタのエラーチェックオプションは、デフォルトで複数の名前を持つネットのすべてのインスタンスにフラグを立てるようになっています。これは、たとえばネットがシートシンボルに入るときに名前を意図的に変更する場合などに発生する可能性があります。下の画像は、このような例をいくつか示しており、左右の出力がトップシートのバスに束ねられていますが、シートエントリ内ではLeft
とRight
と呼ばれています。
バスは、2つの出力チャネルを1つのシートシンボルで表現できるようにするために使用されています。Repeatキーワードを使用します。左右のチャネルに別々のワイヤーを使用した場合、設計者は左右の出力チャネル用に別々のシートシンボル(どちらも同じ子回路図シートを指す)を配置し、各出力をそれぞれの出力シートシンボルに配線する必要がありました。
複数のネット識別子をどのように扱うかソフトウェアに指示する必要があります。これを行うには、以下のいずれかを行う必要があります:
-
Options for ProjectダイアログのError Reportingタブで、Nets with multiple namesエラーチェックをNo Reportに設定します。これは推奨されるオプションではありません。なぜなら、設計全体でこのエラー条件のチェックがすべてブロックされるからです。代わりに、以下のことができます。
-
特定のNo ERCマーカーを影響を受けるネットに配置します。これは、Messagesパネルでエラー/警告を右クリックし、Place Specific No ERC Marker for this violationコマンドを選択することで最も簡単に行えます。これを行うと、NoERCオブジェクト配置モードになり、事前に設定された特定のNoERCマーカーがカーソルに添付され、エラーのあるネットに配置する準備が整います。配置後、ダブルクリックしてスタイルと色を設定します。
オレンジで囲まれた小さな三角形に注目してください。これは、MB1およびMB2ネット上の重複ネット名エラーを無効にするために配置された特定のNo ERCマーカーです。
マルチチャネルPCB設計
回路図エディタからPCBエディタに設計を転送するとき、プロジェクトオプションでルーム作成が有効になっている場合、各シートのコンポーネントはPCB配置ルームにクラスタ化されます。
マルチチャネル設計でルームを使用する大きな利点は、PCBエディタが一つのルーム(チャネル)から他のルーム(チャネル)への配置と配線の複製をサポートしていることです。ルームは単一のオブジェクトとして移動することもでき、PCB上でのチャネルの配置プロセスを簡素化します。
コンポーネントがどのようにリンクされているか
各回路図のコンポーネントは、一意の識別子(UID)を通じてそのPCBコンポーネントにリンクされます。UIDは、回路図のコンポーネントがシート上に配置されたときに割り当てられ、その後、設計がPCBエディタに転送されるときにPCBコンポーネントに割り当てられます。この方式は、シンプルな設計には適していますが、同じ回路図のコンポーネントが各物理チャネルで繰り返されるマルチチャネル設計をサポートするには不十分です(つまり、PCBコンポーネントは同じUIDを持つことになります)。
これに対応するために、PCBコンポーネントのUIDは、親のシートシンボルのUIDと回路図のコンポーネントのUIDを組み合わせて作成されます。マルチチャネル設計がどのように作成されたかによって、PCB UIDの構文はわずかに変わります。
同じ回路図シートを参照する複数のシートシンボルを配置することによって作成されたマルチチャネル設計の場合、各シートシンボルは一意のIDを提供できるので、PCB UIDの形式は以下の通りです:
\SheetSymbolUID\SchComponentUID
Repeatキーワードを使用して作成されたマルチチャネル設計では、1つのシートシンボルUIDのみが利用可能であるため、PCB UIDにはChannelIndexも含まれ、以下の形式になります: \ChannelIndex+SheetSymbolUID\SchComponentUID
PCB上に指定子を表示する
マルチチャネル設計では、指定子文字列の位置を決めるのが難しい場合があります。それらは非常に長くなることがあります。短い名前を結果とする命名オプションを選択することに加えて、別のオプションとしては、元の論理的なコンポーネント指定をそのまま表示することです。例えば、C30_CIN1
はC30
として表示されます。これには、ボード上に別のチャネルを示すための何らかの注記が追加される必要があります。例えば、コンポーネントオーバーレイ上に各チャネルを囲むボックスを描画するなどです。
PCB上で論理的な指定子と物理的な指定子の表示を選択できます。Board Optionsダイアログ(Design » Board Options)で設定できます。マルチチャネル設計のコンポーネントに対して論理的な指定子を表示することを選択した場合、これらはPCB上および出力されるすべてのもの(プリントやガーバーファイルなど)に表示されます。ただし、ユニークな物理的な指定子は、部品表を生成する際に常に使用されます。
パラメトリック・マルチチャネル階層設計
設計のセクションを再利用する際の課題、例えば現在のプロジェクトのシートシンボルを会社の好みの電源スキーマにリンクする場合、コンポーネントの値が次の設計から次へと常に固定されていないことです。
パラメトリック階層設計はこれを解決します - これにより、コンポーネントの値の仕様を回路図シートから、そのシートを参照するシートシンボルに移動することができます。この機能はマルチチャネル設計にも完璧に対応しており、各チャネルで異なるコンポーネントの値を持つことができます。ただし、各チャネルには独自のシートシンボルが必要であることに注意してください。なぜなら、コンポーネントの値はそこに格納されるからです。
例えば、グラフィックイコライザーは同じ回路を何度も繰り返し使用することができ、各チャネル間の唯一の違いはコンポーネントの値です。したがって、コンデンサは異なるチャネルで0.12µF、0.056µF、0.033µFの値を取るかもしれません。これを実装することは簡単で、各チャネルを参照するシートシンボルでこれらの値を指定することにより、コンポーネントの値が異なるだけの多くの類似した回路図を持つ必要がなくなります。
パラメトリックコンポーネントは、シートシンボルの上でその値をパラメータとして宣言し、そのパラメータを対象コンポーネントで参照することによって定義されます。下の画像は、左側にグラフィックイコライザーのトップシートと、隣に1KHzシートシンボルのパラメータが表示されています。この画像には、下位レベルのキャプチャされた回路図と、コンパイルされた1KHzチャンネルも表示されています。
それぞれのシートシンボルパラメータは、下位レベルのシート上の回路図コンポーネントのパラメータの値としても定義されています。下の画像に示されているように。プロジェクトがコンパイルされると、各シートシンボルパラメータの値は関連する回路図コンポーネントに渡され、そこでコンポーネントのコメントフィールドにマッピングされます。
パラメトリック階層は、コンポーネントの値に限定されるわけではありません。回路図シート上の任意のコンポーネントパラメーターやテキストラベルをパラメトリックに参照することができます。階層上で何枚も上のシンボルからのパラメーターを参照することも可能です。システムは一致するパラメーターを見つけるまで階層を検索します。