親ページ: 設計アイデアを回路図としてキャプチャする
設計指示は、設計キャプチャ中に回路図上に配置されるオブジェクトであり、他のソフトウェア部分に指示を伝達する方法を指定するために使用されます。様々な設計指示があり、以下の二つの方法で使用されます:
以下のセクションでは、これらの領域と関連する指示について詳しく見ていきます。
コンパイル関連の指示
デザインは時間とともに進化し、段階的に捉えられます。各段階が確定すると、その段階を他のデザインとは独立してチェックしたくなることがよくあります。キャプチャプロセスの途中で個々の回路図ドキュメント(またはプロジェクト全体)をコンパイルすると、まだキャプチャされていない回路や、まだ不完全な回路フラグメント間のインターフェース配線が原因で、多くのエラーメッセージが表示されることがよくあります。このようなメッセージは実際の情報を覆い隠すだけのノイズであり、実際の価値はありません。これらのコンパイルエラーを最も迅速かつ簡単に抑制する方法は、No ERCまたはコンパイルマスクディレクティブを配置することです。
No ERCディレクティブ
オブジェクトページ: No ERC
No ERCディレクティブは、回路のノードに配置され、回路図プロジェクトがコンパイルされたときに検出されるすべての電気ルールチェック警告および/またはエラー違反条件を抑制します。意図的に警告を生成することがわかっている回路の特定の点(たとえば、接続されていないピンなど)でエラーチェックを制限しながら、回路の残りの部分の包括的なチェックを引き続き実行するには、No ERCディレクティブを使用します。
No ERCディレクティブは、さまざまなスタイルをサポートしており、任意の色で表示できます。この機能を使用して、回路のこの点に対する設計意図を反映させます。

その回路のポイントでの機能を最もよく反映するNo ERCスタイルを選択してください。
No ERCディレクティブには2つの動作モードがあります:
-
Suppress All Violations - このモードでは、可能な警告やエラー条件をすべて抑制します。このモードでは、一般的にジェネリックNo ERCディレクティブと呼ばれます。
-
Suppress Specific Violations - このモードでは、選択された警告やエラー条件のみを抑制します。他の警告やエラーは検出され、報告されます。このモードでは、一般的に特定のNo ERCディレクティブと呼ばれます。
Messagesパネルで抑制されたエラーを表示するには、Project Options – Error ReportingダイアログのError ReportingタブでReport Suppressed Errors in Messages Panelオプションを有効にします。この機能は、設計の最終段階で、重大なエラーが誤って抑制されていないことを確認するために使用できます。
配置
No ERCディレクティブは、いくつかの方法で回路図ドキュメントに配置することができます:
編集
配置中、およびNo ERCオブジェクトがカーソル上でまだ浮いている間に、以下の編集アクションを実行できます:
-
No ERC Propertiesパネルから。この編集方法は、関連するPropertiesパネルモードを使用してオブジェクトのプロパティを変更します。

PropertiesパネルのNo ERCモード
配置中、Tabキーを押すことでプロパティパネルのNo ERCモードにアクセスできます。
配置後、プロパティパネルのNo ERCモードにアクセスする方法は以下の通りです:
配置モードに入る前に、PreferencesダイアログのSchematic – Defaultsページからプロパティにアクセスできます。これにより、オブジェクトのデフォルトプロパティを変更でき、後続のオブジェクトを配置する際に適用されます。
-
No ERC ダイアログから。この編集方法は、No ERC ダイアログを使用して、特定の No ERC オブジェクトの違反タイプと接続エラーを変更します。

No ERCダイアログで表示されるViolation Typesモード(最初の画像)とConnection Matrixモード(2番目の画像)
ダイアログは、No ERCモードのPropertiesパネル内のSpecific Violations領域でSuppressed Violationsをクリックすることでアクセスできます。
特定の No ERC ディレクティブは、複数のエラー/警告を生成する回路をサポートするために、複数の違反を対象とするように設定できます。
-
SCH ListおよびSCH Filterパネルから。 リストパネルを使用すると、1つ以上のドキュメントからの設計オブジェクトを表形式で表示し、オブジェクト属性の迅速な検査と変更を可能にします。適切なフィルタリングを使用して(適用可能なFilterパネルまたはFind Similar Objectsダイアログを使用)アクティブなフィルターの範囲に該当するオブジェクトのみを表示することで、より正確かつ効率的に複数の設計オブジェクトを対象として編集できます。
無効化
No ERCディレクティブを削除する代わりに、コンパイラに非アクティブ(無効)として設定することができます。この状態は、編集の方法のいずれかを通じて利用可能なディレクティブのActiveプロパティを切り替えることで変更できます。非アクティブなNo ERCディレクティブは、設計スペースで灰色で表示されます。

No ERCディレクティブの使用を一時的に取り除く必要がある場合は、それを削除するのではなく、非アクティブにしてください。
コンパイルマスクディレクティブ
オブジェクトページ: コンパイルマスク
ERCディレクティブは、設計内の違反するピン、ポート、シートエントリ、またはネットの少数を抑制するのには適しています。しかし、場合によっては、コンポーネントを含む設計の全セクションを削除したいことがあるかもしれません。コンパイルマスクディレクティブ(Place » Directives » Compile Maskコマンド)を使用するか、Active Bar上のディレクティブドロップダウンでコンパイルマスクボタン(
)をクリックして、コンパイラから設計の該当エリアを効果的に隠し、まだ完了していない回路でコンパイルエラーが発生することが分かっている場合に手動でエラーチェックを防ぐことができます。これは、アクティブドキュメントやプロジェクトをコンパイルして設計の他の特定エリアの整合性をチェックしたいが、未完成の設計部分に関連するコンパイラ生成メッセージの「ノイズ」を望まない場合に非常に便利です。
その名前が示すように、このディレクティブは、定義されたマスクの境界内に完全に収まるオブジェクトをコンパイラが無視するよう指示します。メモや矩形オブジェクトを配置するのと同じようにマスクを配置してください。 次の画像の例示的な回路図では、LCD1デバイスへの配線がまだ完了していません。この回路図だけをコンパイルする(Project » Validate PCB Project)と、不完全な回路によって引き起こされる多数の違反メッセージが表示されます(下記参照)。画像にカーソルを合わせると、不完全な回路図の周りにコンパイルマスクディレクティブを配置した効果が見られます。これらの違反はコンパイラによって無視され、回路図上の他の回路 – 完全に配線されている部分 – はチェックされます。本当にマスクされたオブジェクト – マスクの境界矩形内に完全に収まるもの – は、グレーアウトして表示されることに注意してください。

画像にマウスを乗せると、未完成の回路によるコンパイラ違反を隠すためにコンパイルマスクディレクティブを使用する効果が表示されます。
コンパイルマスクは、展開された(フルフレーム)モードまたは折りたたまれた(小さな三角形)モードで表示できます。これらのモードは、それぞれマスクが有効および無効になっていることに対応しています。配置されたコンパイルマスクの左上隅をクリックすることで表示モードを切り替えることができます。
コンパイルマスクはX軸またはY軸に沿って回転または反転させることができますが、これは設計回路内の向きには影響しません。
シミュレーション可能な設計への適用
コンパイルマスクディレクティブによってカバーされた設計のすべての要素は、設計コンパイラには見えないため、設計から省略されます。この機能は、設計フローの一部としてシミュレーションが含まれる場合に大いに役立ちます。
回路シミュレーションを実行する際には、電圧および電流源が必要な要素ですが、完成したPCB上には存在しません。回路の構造に少し計画を立てることで、通常、シミュレーション専用のコンポーネントを設計の一部にグループ化することが可能です。その部分は、コンパイルマスクディレクティブによって簡単にカバーできます。
回路がシミュレーションに使用される場合、シミュレーション専用のコンポーネントを表示するためにコンパイルマスクディレクティブが無効にされます。回路が検証され、設計に含める準備ができたら、コンパイルマスクディレクティブを再度有効にして、シミュレーション専用のコンポーネントが設計から除外されるようにします。将来、設計を再度変更する必要がある場合は、コンパイルマスクディレクティブを無効にする(シミュレーション専用のコンポーネントを再度表示する)ことで、承認前に迅速に別のシミュレーションパスを実行できます。

初めに、Compile Maskディレクティブは無効になっており、回路がシミュレーションの準備ができています。画像にカーソルを合わせると、Compile Maskディレクティブが有効になり、設計からシミュレーションソースが隠されます。
PCB関連のディレクティブ
オブジェクトページ: パラメータセット
Altium Designerは統合設計環境として、ボードのレイアウトを行う前にPCBの要件を定義する機能を提供します。これは、回路図シートに配置されたオブジェクトにパラメータを追加して指定することで達成されます。
特定の回路図設計オブジェクト(コンポーネント、シートシンボル、ポートなど)に関しては、そのオブジェクトのプロパティの一部として関連するパラメータを追加することが含まれます。ネットオブジェクト(ワイヤーやバスなど)の場合、パラメータをワイヤーやバスのプロパティとして直接追加することはできません。代わりに、情報を保持するために必要なパラメータは、専用の設計指示を使用して指定されます。
以下の情報は、指示を使用して指定され、設計同期中に適切なPCBベースの定義に転送されます:
回路図内に設計指示を含めることで、設計エンジニアは明確な設計制約を指定でき、回路図が設計のマスターレコードであることを保証します。設計の変更は回路図側でのみ行われ、PCBに反映されます。これは、特に複数の人が設計に取り組んでいる場合、特に彼らが地理的に離れている場合に特に重要になります。メールの連鎖や電話を通じて互いにコミュニケーションを取ろうとするのではなく、設計をキャプチャする人は、特定の制約が実際にレイアウトフェーズで使用されることを確実にすることができます。
この機能の中心にはパラメータセット指示があります。
これらは基本的にユーザー定義のパラメータセットオブジェクトであり、回路図設計内のネットオブジェクトに関連付けることができます。ワイヤー、バス、またはシグナルハーネスにPCBレイアウト指示を配置して、関連するネットに対して一つ以上の設計制約を定義します。回路図からPCBが作成されると、PCBレイアウト指示の情報が使用されて関連するPCB設計ルールを作成します。PCBレイアウト指示によって指定された情報は、指示が接続されているネット(またはネットのセット)にのみ適用されます。

パラメータセットディレクティブ。
これは、Parameter Setディレクティブがアタッチされているネットを対象とする任意の数のパラメーターのためのコンテナとして機能します。パラメーターがないデフォルトのParameter Setディレクティブは配置されることができます(Place » Directives » Parameter Set)、その後、関連するパラメーターが追加されます。以下のセクションでは、これらのパラメーターベースのディレクティブを使用する方法について詳しく見ていきます。ユーザー定義(Parameter Set)および事前定義(Differential Pair)のパラメーターセットディレクティブが利用可能です。空のパラメーターセットと事前定義されたパラメーターセットの唯一の違いは、事前定義されたパラメーターセットにはパラメーターが含まれていることです、以下で説明されるように。
Parameter Setディレクティブの配置
このタイプのディレクティブを配置するには、メインメニューからPlace » Directives » Parameter Setコマンドを選択するか、設計スペース内で右クリックすることで行います。デフォルトのパラメータセットディレクティブを配置すると、既存のパラメータはありません。パラメータセットは、設計仕様を回路図設計内のネットタイプオブジェクトに関連付けることを可能にする設計ディレクティブです。例えば、2つのネットを差動ペアのメンバーとして宣言するためにパラメータセットを使用します。ソフトウェアがどの設計ディレクティブを配置しているかを判断するのは、パラメータセット内の特定の名前のパラメータの存在です。
ユーザー定義のパラメータディレクティブに加えて、ルールベースのパラメータディレクティブは、関連するプロパティパネルモードからアクセス可能なデザインルールタイプダイアログを選択から定義されます。アクセスには以下が含まれます:
-
パラメータセットを配置する前にTabキーを押すか、既に配置されているパラメータセットディレクティブをダブルクリックして、プロパティパネルのパラメータセットモードを表示します。
-
次に、PropertiesパネルのParameter SetモードのParametersセクションにあるAddボタンをクリックし、ドロップダウンからRuleを選択して、Choose Design Rule Typeダイアログからルールを選択します。

ルールの値を編集中。
Choose Design Rule Typeダイアログを使用して、ディレクティブにルールパラメータとして追加したいルールを選択します。ルールタイプをダブルクリックすると、そのルールに対する制約を定義できる関連するEdit PCB Rule (From Schematic)ダイアログにアクセスできます。

選択したルールの制約を指定する。
Parameters領域への入力は、選択されたルールタイプと指定された制約になります。次の画像は、Parameter Setディレクティブの定義された幅制約ルールパラメータを示しています。設計スペース内でルールを表示するには、Rules領域内の可視性(
)アイコンをクリックします。

特定のネットに定義された複数のルール制約、パラメータセットディレクティブのおかげです。
設計が同期プロセスを通じてPCBに転送されると、ディレクティブ内に含まれる情報に基づいて、関連する設計ルールが作成されます。そのルールの出典を区別するために、生成された各ルールの名前にはSchematicという言葉が使われます。

PCB側で生成された設計ルール。
同じパラメータセットディレクティブに複数のパラメータを追加できることを覚えておいてください。これにより、回路図がすっきりとします。
差動ペア指令の配置
差動ペア指令を使用すると、回路図上に差動ペアオブジェクトを定義できます。ペア内の2つのネットは、それぞれが共通のネットラベルで識別され、接尾辞が_Nおよび_Pである必要があり、指令が各ネットに添付されるか(または、下に示すように、指令が添付されたブランケットによってペアがカバーされる必要があります)。例えば、下の画像には8つの差動ペアがあり、左上のペアにはV_RX0_NとV_RX0_Pのネットラベルがあります。
このタイプの指令を配置するには、メインメニューからPlace » Directives » Differential Pairコマンドを選択します。このタイプの指令のペア(正のネット用の1つ、負のネット用の1つ)は、PCBに転送されると単一の差動ペアオブジェクトを生成します。
同じパラメータセットオブジェクトに複数のパラメータを追加できます。下の画像では、差動ペア指令がブランケットの端に触れるように配置され、Net Class NameパラメータとRuleパラメータが追加されて編集されました。設計がPCBと同期されると、これらの追加要素が作成されます:
-
8つのPCB差動ペア
-
ブランケットの下にある16の名前付きネットを含む
ROCKET_IO_LINESというPCBネットクラス
-
InNetClass('ROCKET_IO_LINES')の範囲を持つ差動ペアルーティング設計ルール

ブランケットを使用することで、1つの差動ペア指令だけが必要です。これにより、差動ペアの定義だけでなく、ネットクラスと差動ペアルーティングルールも指定されます。
これらのネットはそのネットクラスのメンバーになり、そのネットクラスは差動ペアルーティングルールの範囲として使用されます。
設計がPCBに転送され、同期プロセスを通じて、指令のペアリングごとに単一の差動ペアオブジェクトが作成されます。PCB側で生成された差動ペアオブジェクトの名前は、回路図上のネットペアのルート名になります。例えば、回路図上のD_NとD_Pに追加された指令は、PCB上でDという名前の差動ペアオブジェクトを生成します。結果として得られる各差動ペアオブジェクトは、デフォルトの差動ペアクラス:<All Differential Pairs>に追加されます。PCB側でのみ差動ペアオブジェクトの名前を変更できます。
生成された差動ペアオブジェクトは、PCBパネルをDifferential Pairs Editorモードで設定して、迅速に確認できます。

PCBパネルを使用して差動ペアエディタを表示します。
ブランケットオブジェクトの周囲に差動ペア指令を添付することで、そのブランケットの範囲内の差動ネットに基づいて差動ペアオブジェクトを迅速に作成できます。
ネットクラス指令の配置
ネットクラス指令を使用すると、回路図上にユーザー定義のネットクラスを作成できます。ネットクラス指令は、メインメニューからPlace » Directives » Parameter Setコマンドを選択し、コマンドページのヒント#2で指定されているように、パラメータセットをネットクラス指令として定義することで配置できます。回路図からPCBが作成されると、ネットクラス指令の情報を使用して、対応するネットクラスがPCB上で作成されます。ネットをネットクラスのメンバーにするには、関連するワイヤ、バス、またはシグナルハーネスにネットクラス指令を添付し、指令のClassNameパラメータを希望するクラスの名前に設定します。Project Optionsダイアログのクラス生成タブのGenerate Net Classesオプション(ユーザー定義クラス用)を有効にする必要があります。
ネットにネットクラス指令が定義されている場合、そのパラメータセットオブジェクトによって作成されたPCB設計ルールも、設計がPCBエディタに転送されると、ネットクラスのルール範囲を持ちます。配置されたパラメータセット指令からネットクラス指令を作成するには、必要なPCBネットクラスに設定する必要があるクラスを追加します。
PCBエディタ内からネットクラスを作成できますが、ネットの論理的な機能やグルーピングは通常、回路図ではるかに明確であるため、そこからプロセスを推進する方が理にかなっています。
設計がPCBに転送されると、同期プロセスを通じて、指令に含まれる情報に基づいて関連するネットクラスが作成されます。
ネットクラスディレクティブをBlanketオブジェクトに添付して、そのブランケットによってカバーされる個々のネットがメンバーであるネットクラスを作成します。PCBレイアウトディレクティブもそのブランケットに添付されている場合、PCBレイアウトディレクティブのルールパラメーターは、個々のネットではなく、そのネットクラスを対象とします。PCBドキュメントに変更をインポートすると、これにより、スコープがネットクラスを対象とするように設定された、パラメーターごとに1つのデザインルールが作成されます。
ブランケットディレクティブの配置
オブジェクトページ: Blanket
パラメーターセットディレクティブは、それらが添付されている特定のネットのみを対象とすることができますが、ブランケットディレクティブと組み合わせることで、そのスコープをブランケット内のすべてのネットに拡大することができます。
このタイプのディレクティブを配置するには、メインメニューからPlace » Directives » Blanketコマンドを選択します。ブランケットを配置する際には、単純な長方形または多角形の形状を定義できます。後者は、シート上の必要なネットオブジェクトのカバレッジをより正確に制御することができます。
ブランケットは関心のあるネットを識別します - ブランケットの端に パラメータセットディレクティブ を配置して、それらのネットに設計要件を適用します。ブランケットディレクティブの下のネットに周辺ディレクティブを適用するには、そのネットに関連するオブジェクト - ピン、ポート、ネットラベル、パワーポート、ワイヤー/バス/ハーネスセグメント(両端を含む) - がブランケットの範囲内にある必要があります。ネット識別子(例えばネットラベル)の場合、ホットスポットがブランケット内にある必要があることに注意してください。メンバーネットがPCBパラメータセットに期待通りに移行しない場合は、ブランケットの領域を適宜調整してみてください。

ブランケットディレクティブを使用して、ブランケット内のネットにパラメータセットディレクティブを適用する例。
ブランケットディレクティブの使用例には以下が含まれます:
-
ブランケットオブジェクトにパラメータセットディレクティブを添付して、そのブランケットによってカバーされる各個別ネットにルールパラメータを適用します。
-
ブランケットオブジェクトにパラメータセットディレクティブを添付して、そのブランケットにカバーされる個別ネットがメンバーであるパラメータセットを作成します。
-
ブランケットオブジェクトにディファレンシャルペアディレクティブを添付して、そのブランケットの範囲内のディファレンシャルネットに基づいてディファレンシャルペアオブジェクトを作成します。
ブランケットオブジェクトに
パラメータセットディレクティブを添付すると、そのブランケットによってカバーされる各個別のネットにルールパラメータが適用されます。そのブランケットにパラメータセットディレクティブも添付され、パラメータセットにネットクラスパラメータがある場合、パラメータセットディレクティブのルールパラメータは各個別のネットではなく、そのネットクラスを対象とします。PCBドキュメントに変更をインポートすると、対象のネットクラスを設定したスコープを持つ、単一の設計ルール(パラメータごとに1つ)が作成されます。
また、パラメータセットディレクティブの周囲をコピーして、別のブランケットディレクティブや個々のワイヤー、バス、ハーネスに添付することもできます。その結果、同じパラメータセットディレクティブに関連するすべての追加ネットが、生成されたPCBネットクラスに追加されます。
間接的(パラメータベースの)ディレクティブ
パラメータセット指令は、パラメータを含むことができない回路図の設計オブジェクトを対象とする場合に必要ですが、パラメータを含むことができるオブジェクトに対しては、関連する回路図オブジェクトにそれらをパラメータとして追加(および定義)することによって、間接的に設計指令を適用することができます。本質的に、それらはパラメータベースの指令です。
パラメータベースの指令が使用される例としては、特定のコンポーネントの高さを制限することや、設計内のすべてのオブジェクトを対象とするクリアランス制約を追加することが含まれます。制約を定義する必要があるパラメータは、ルールとしてオブジェクトに追加されます。
PCBと同期すると、回路図内のオブジェクトに追加されたパラメータベースの指令は、PCB設計ルールになります。対応するPCB設計ルールの範囲は、最初にパラメータが割り当てられたオブジェクトの性質によって決定されます。以下の表は、サポートされている回路図パラメータからPCBルール範囲へのオプションをまとめたものです。
各ケースにおいて、ルールベースのパラメータを追加する方法は同じです。該当するタブやダイアログから、以下の操作を行います:
-
パラメータをルールとして追加する。
-
使用するルールタイプを選択する。
-
選択したルールタイプの制約を設定する。
回路図上のオブジェクトに設計ルールパラメータを追加する際、各ルールパラメータには一意のIDが与えられます。同じIDがPCB上で作成される対応する設計ルールにも与えられます。この一意のIDにより、回路図またはPCB側でルールの制約を編集し、同期時に変更を反映させることができます。
コンポーネントクラスの指定
同様に、回路図上でコンポーネントクラスを定義することができます。対象のコンポーネントにClassNameパラメータを追加し、その値に希望するクラス名を設定します。設計がPCBに転送されると、定義されたコンポーネントクラスが作成されます。
スキーマで定義されたコンポーネントクラスをPCBに伝播させるには、プロジェクトオプションダイアログで以下の設定を行う必要があります:
上記にリストされたClass Generationタブオプションは、以下の画像に表示されています。画像にカーソルを合わせるとComparatorタブオプション設定が表示されます。

コンポーネントクラスをPCBに伝播させるには、Class GenerationタブでGenerate Component Classesオプションを有効にします。画像にカーソルを合わせるとComparatorタブが表示され、そこでExtra Component Classesモード設定をFind Differencesに設定する必要があります。
定義されたクラスは、該当するコンポーネントのPropertiesパネルのプロパティ領域のPropertiesでロックすることができます。
ディレクティブの印刷制御
デフォルトでは、すべての設計ディレクティブが回路図シートの印刷に含まれます。しかし、これは変更することができます:

必要に応じてディレクティブの印刷を制御します。No ERCディレクティブの場合、特定のシンボルスタイルを印刷することを選択し、他は除外することができます。