制約エディタによるデザインルールの管理

概略

この記事では、プロジェクトで Constraints Editor と Constraint Manager のどちらが使用されているかを確認する方法を説明します。そのうえで、Constraints Editor を使って、ドキュメントベースで設計オブジェクトを中心に PCB 設計ルールを表示、作成、管理する方法を紹介します。ルールの整理方法や優先順位の扱い、Basic ルールと Advanced ルールの違いに加え、表示の切り替え、ルールの変換、スコープの再利用、ルール定義のインポートとエクスポートについても解説します。Altium Designer における制約の構成と管理方法をより深く理解したい方は、ぜひ読み進めてください。利用可能なツールをより確実に使いこなし、ルール管理のワークフローを効率化するために役立ちます。

- プロジェクトで Constraints Editor と Constraint Manager のどちらが使用されているかを確認する方法と、利用可能なルール管理ビューを切り替える方法。
- Constraints Editor で設計オブジェクト別のルールと Advanced ルールがどのように整理されるか、およびルールの優先順位と変換の仕組み。
- 設計ルールの作成、編集、検証、保存、インポート、エクスポート、再利用に役立つ実用的な機能。
AIでさらに深掘り:

Do I have the Constraints Editor or the Constraint Manager?

PCBプロジェクトの作成時に、Create ProjectダイアログでConstraint Managementオプションが有効になっていた場合、そのプロジェクトの設計制約の定義にはConstraint Managerが使用されます。この場合、PCBエディターではPCB Rule and Constraints Editorダイアログを使用できず、したがって、このページで説明するConstraints Editorも使用notできません。それ以外の場合は、設計制約を定義する従来の方法(デザインディレクティブおよびPCB Rule and Constraints Editorダイアログ/Constraints Editor)のみを使用できます。

現在のPCBプロジェクトで設計制約の定義にどの方法が使用されているかをすばやく確認するには、プロジェクトのPCBドキュメントを開き、Designメインメニューをクリックして、使用可能なコマンドを確認します。

  • Constraint Manager – このプロジェクトではConstraint Managerが使用されています。
  • Rules – このプロジェクトではPCB Rule and Constraints Editorダイアログが使用されています。このダイアログから、このページで説明するConstraints Editorに切り替えることができます。

Constraints Editorは、PCBレイアウトで使用する設計制約ルールを表示、作成、管理するための、もう1つの方法を提供するドキュメントベースのユーザーインターフェースです。このエディターは、優先度の低い順にNets、Diff Pairs、xSignals、Polygons、Components,、Advancedという、選択可能な6つのルールセクションで構成されています。この構成では、最初の5つのセクション(NetsからComponentsまで)は設計オブジェクト別のルールビューであり、Advancedビューセクションは、より単純な設計オブジェクト指向のルールでは表現できない、複雑なルール(通常はクエリを使用)に適用されます。

Constraints Editor – デザインルールを管理するためのもう1つの方法。
Constraints Editor – デザインルールを管理するためのもう1つの方法。

Constraints Editorにアクセスするには、PCB Rules and Constraints EditorダイアログのSwitch to Document Viewボタンをクリックします。

PCB Rules and Constraints EditorダイアログからConstraints Editorビューへの切り替え。
PCB Rules and Constraints EditorダイアログからConstraints Editorビューへの切り替え。

PCB Rules and Constraints Editorダイアログに戻るには、エディターのPropertiesパネルにあるSwitch to Dialog Viewボタンをクリックします。

Constraints EditorビューからPCB Rules and Constraints Editorダイアログに戻す。
Constraints EditorビューからPCB Rules and Constraints Editorダイアログに戻す。

または、メインメニューのTools » Switch to Dialog Viewコマンドを使用します。

Switch to Dialog Viewボタンとコマンドが使用できない場合は、Constraints EditorではなくConstraint Managerを使用していないか確認してください。– 詳細はこちら。

このエディターを使用する主な利点は次のとおりです。

  • ダイアログではなくドキュメントベースの表示インターフェースを使用するため、PCBエディターとその関連機能を引き続き操作できます。

  • ルールの適用範囲の指定が、クエリベースから適用対象のオブジェクトタイプの照合へと変わることで、制約ルールの作成が簡単になります。

  • ルールの優先度は、設計オブジェクトの自然な階層に基づいて自動的に設定されます。

  • 対話型のルール検証チェックにより、一般的な構文、割り当て、適用範囲のエラーを検出できます。

制約ルールの種類

Constraints Editorでは、適用範囲の照合に複雑なクエリ式を使用する既存のルールはAdvanced Rules(またはカスタムルール)と見なされます。一方、より単純なルールは、オブジェクトタイプに基づくBasic Rules、つまりチェック対象の設計オブジェクトの種類に基づくルールとして再表現されます。

Advanced形式(クエリベース)のほとんどのルールは、Basic Rulesの一覧にドラッグ&ドロップするか、Advancedルールの右クリックメニューからMove Custom Rule to Basicオプションを選択することで、より単純なBasicルールに変換できます(または、メインメニューのTools » Convert » Migrate Advanced Rules to Basicコマンドを使用します)。コマンドを実行すると、Migration of Advanced Rules to Basic ダイアログが表示され、移行可能なBasicルールの数が示された後、移行の確認を求められます。変換時には、Advancedルールのクエリベースの適用範囲が、Basicルールのオブジェクトタイプの条件として解釈されます。

クエリベースのAdvancedルールは、より単純なBasicルールに変換できます。
クエリベースのAdvancedルールは、より単純なBasicルールに変換できます。

ルールの優先順位

通常、ルールの優先順位はシステムによって自動的に処理されます。これはインターフェース内のルールビューボタンの配置に示されており、左から右へ優先度順に並び、Netsの優先度が最も低くなっています。

  • Advancedルール(またはカスタム作成ルール)は、Basicオブジェクトルールの優先順位よりも優先されます。Advancedビュー内で項目を上下にドラッグすると、手動で順序を変更できます。
  • 一方、Basicルールは、ドキュメントインターフェースのオブジェクトセクション(NetsからComponentsまで)で示される設計オブジェクトの種類に基づき、システムによって自動的に優先順位が設定されます。
  • 各(Basic)オブジェクトルールセクション内では、優先度はAll(最低)、オブジェクトクラス、オブジェクト(最高)の順になります。したがって、適用範囲がAllで、Basicルールに変換されたルールの優先度は最も低くなります。
  • Basicルールに明示的な優先度を設定するには、ルールを右クリックしてMove Basic Rule to Advancedオプションを選択します(または、メインメニューのTools » Convert » Migrate Basic Rules to Advancedコマンドを使用します)。コマンドを実行すると、Migration of Basic Rules to Advanced ダイアログが表示され、移行可能なBasicルールの数が示された後、移行の確認を求められます。Advancedビューで、そのルールの優先順位を手動で設定します。これは、適用範囲がAllのルール以外に適用されます。たとえば、Netsビューでは、適用範囲にNet ClassまたはNetが指定されたルールをAdvancedルールに変換(移動)できます。

新しいカスタム制約ルール

エディターのデフォルトのAdvancedモード(ボタンで表示および選択)で新しいルールを作成する手順は、PCB Rules and Constraints Editorダイアログでルールを作成する手順と似ています。右クリックのコンテキストメニューからAdd Custom Ruleを選択し(またはボタン、もしくはメインメニューのEdit » Add Constraintコマンドを使用)、必要に応じてクエリベースの照合範囲()を追加してから、列グリッドまたは下部のグラフィカル表示に制約パラメーターを入力します。

独自のカスタム制約ルールを作成
独自のカスタム制約ルールを作成

Advanced/カスタムタイプのルールを繰り返し作成する作業を簡略化するため、Constraints Editorでは、クエリベースのオブジェクト照合範囲をScopes Libraryダイアログに保存できます(Object Match列のをクリックして Export to Libraryを選択するか、Properties パネルのAdvanced constraints optionsモードにあるScopes Library領域のEdit Libraryボタンをクリックしてアクセスします)。ライブラリはPropertiesパネルに表示され、カスタム適用範囲をインポート、管理、エクスポートして、ほかのカスタム制約ルールで再利用できます。ルールでライブラリベースの適用範囲が使用されている場合は、そのルールのObject Match列の項目にアイコンが表示されます。

適用範囲ライブラリを使用して、カスタムルールの作成を簡略化。
適用範囲ライブラリを使用して、カスタムルールの作成を簡略化。

  • ライブラリベースのスコープをルールに適用した後は、Object Match(スコープ)フィールドのメニューを使用して、スコープエントリを削除する(Clear Scope)か、スコープをクエリベースの形式に戻す(Detach Scope)ことができます。
  • また、Scopes Library自体をカスタムスコープXMLファイルとしてエクスポートし、別のAltium Designer環境のScopes Libraryに取り込むこともできます。
  • ルールの優先順位を変更するには、一覧内の別の位置にルールをドラッグ&ドロップします。カスタムルールには最も高い優先順位が適用されます。基本(オブジェクト)ルールのエントリの優先順位は、固有の階層に基づいて自動的に決定されることに注意してください。
  • 現在選択されているルールを削除するには、右クリックして[Remove Rule]を選択するか、メインメニューから Edit » Remove Constraint を選択します。
  • 制約ドキュメントファイルをPCBプロジェクトに保存するには、File » Save to PCB (ショートカット:Ctrl+S)を選択します。
  • デザインルールは、Constraints Editorからエクスポートしたり、そこにインポートしたりできます。これにより、よく使用するルール定義を異なる設計間で読み込むことができます。PCBルールファイル(*.rul)を保存するには、File » Export To File コマンドを使用します。既存の*.rul PCBルールファイルを読み込むには、File » Import From File コマンドを使用します。どちらの場合も、Choose Design Rule Typeダイアログが開き、エクスポートまたはインポートするデザインルールを選択できます。

設計オブジェクトの制約モード

設計オブジェクトを中心とした、よりシンプルな方法で制約ルールを作成するには、ルールグリッド上部の適切なオブジェクトモードボタンを選択して、デフォルトのAdvancedモードから切り替えます。これらのモードは、概念的には、違反が生じうるデザインルールの作成よりも、設計オブジェクトの使用方法を制約(制限)することに重点を置いた、より統合的なルールインターフェースを提供します。設計オブジェクトボタンの配置順序は、オブジェクトの複雑さ(およびルールの優先順位)が増していく順序に対応しており、基本的なNets(およびクラス)から、統合されたComponents、そしてAdvancedモードへと続きます。

Advancedモード()では、以下の画像に示す基本的なVia制約ルールやWidth制約ルールのように、ルールは種類別にグループ化されます。ルールを追加したり、クエリ言語の要素を含めたりすることで、さらに具体的なルールを作成できます。

Constraints EditorのAdvancedモードでは、ルールは種類別にグループ化されます。
Constraints EditorのAdvancedモードでは、ルールは種類別にグループ化されます。

一方、オブジェクト指向ビュー(NetsからComponents)では、設計オブジェクト(例: Nets)またはクラス(例: Net Class)ごとにルールが整理されるため、ルールが設計にどのように適用されるかを直接把握できます。特定のオブジェクトタイプに適用されるルールの概要を確認するには、左側の列でオブジェクトまたはクラスを選択して関連するすべてのルールを表示するか、Allを選択してそのオブジェクトタイプに関連するすべてのルールを表示します。以下の例は、Nets()に関連するルールの概要を示しています。

Constraints Editorのオブジェクト指向ビューでは、ルールは設計オブジェクトごとにグループ化されます。
Constraints Editorのオブジェクト指向ビューでは、ルールは設計オブジェクトごとにグループ化されます。

設計オブジェクトを中心とした方法を使用すると、たとえば以下のようにNetsオブジェクトタイプを選択した場合、基本的なビアと配線幅のルールが1つの複合エントリに統合されます。また、グリッドレイアウトでは、(ネット)オブジェクトおよびクラスごとに制約を追加することもできます。

オブジェクト指向ビューには、選択したオブジェクトタイプの制約が表示されます。
オブジェクト指向ビューには、選択したオブジェクトタイプの制約が表示されます。

この例でさらに具体的な制約を追加するには、NetまたはNet Classを選択し、目的の制約ルールの種類に対応するグリッドセルに適切な値を入力するだけです。以下に示すように、Powerネット(クラスで定義)には大きなビアサイズが許可され、5V電源レールネットには、より大きな最大配線幅が割り当てられています。つまり、5Vネットの配線幅制約、その他すべてのネットの配線幅制約、Powerネットのビアサイズ制約、その他すべてのネットクラスのビアサイズ制約という4つのルールが、1つのシンプルなグリッドビューにまとめられています。

異なるオブジェクトやそのグループ(ネットやネットクラスなど)に、より具体的な制約を追加します。
異なるオブジェクトやそのグループ(ネットやネットクラスなど)に、より具体的な制約を追加します。

現在選択されている制約ルールのバリエーションを追加するには、ボタンを使用します。以下の例では、追加の5Vネットルールによって、Bottomレイヤーの推奨配線幅が設定されています。

選択した制約のバリエーションを追加できます。
選択した制約のバリエーションを追加できます。

グリッドの各エントリで使用できるルールの種類は、使用可能な列によって決まります。また、使用可能な列は、PropertiesパネルのRule Visibilityリストで有効にした項目によって指定されます。たとえば、Rule VisibilityリストでClearanceエントリを有効にすると、以下に示すように、NetsオブジェクトタイプにClearance列が追加されます。その後、ネットまたはクラスのスコープと適切な距離パラメーターを入力するだけで、該当するクリアランスルールを追加できます。

オブジェクト指向ビューに表示するルールを選択します。
オブジェクト指向ビューに表示するルールを選択します。

ルールの検証

PropertiesパネルのRules/Constraints Checks領域でボタンをクリックすると、有効なすべてのルールの妥当性を確認できます。この操作では、ルールの重複、スコープが同じで値が異なるルール、クラスメンバー(ネットなど)が重複するルール、スコープを解決できないルールといった、エラーの可能性があるルールが検出されます。各違反タイプのエントリを展開すると、違反しているルールが表示されます。そのルールを選択すると、該当するルールエントリが開きます。

Constraints Editorで現在定義されているルールの妥当性を確認します。
Constraints Editorで現在定義されているルールの妥当性を確認します。

ルールの検証は、メインメニューの Tools » Run Rules Validation Check コマンドから実行することもできます。

ルール違反

有効な設計制約ルールは、リアルタイムのオンラインデザインルールチェック、バッチ処理のデザインルールチェッカー、またはPCB Rules And Violationsパネルからの選択的な実行など、さまざまな方法で現在の基板設計に適用されます。これらの制約ルールへの違反(指定された適用範囲内で制限値を超えた場合)は、基板上のグラフィック、パネルの項目、レポート、およびConstraints Editorのアラートアイコンによって示されます。さらに、Constraints Editorはダイアログではなく設計ドキュメント形式のため、開いたまま違反を確認、分析、修正することもできます。

Constraints Editorには、違反しているルールに関するフィードバックが表示されます。
Constraints Editorには、違反しているルールに関するフィードバックが表示されます。

Propertiesパネル

Constraints Editorがアクティブなとき、PropertiesパネルにはDocument Optionsモード(エディターがAdvancedモードの場合はAdvanced constraints optionsモード)が表示されます。

以下の折りたたみセクションでは、使用可能なオプションとコントロールについて説明します。

ルールの適用状況の確認

Constraints Editorにはクロスプローブ機能があり、対応するPCBレイアウト内のネットと接続を視覚的に強調表示して、制約ルールの対象オブジェクトの範囲を示します。エディターのグリッド一覧にある任意のルールに対してクロスプローブを行うには、その項目を右クリックし、コンテキストメニューからCross Probeオプションを選択するか、詳細ルールのメニューからCross Probeを選択します。

PropertiesパネルでCross Probe View Settings(ZoomおよびSelectオプション)を設定し、PCBエディターのClear Filterオプションを使用してクロスプローブの強調表示をリセットします。

Constraints Editorから、ルールの適用範囲内にあるオブジェクトにクロスプローブします。
Constraints Editorから、ルールの適用範囲内にあるオブジェクトにクロスプローブします。

AI-LocalizedAI で翻訳
問題が見つかった場合、文字/画像を選択し、Ctrl + Enter キーを押してフィードバックをお送りください。
Nav
Contents
機能の提供状況

ご利用可能な機能は、お使いのAltiumソリューション(Altium Develop、Altium Agile Teams、Altium Agile Enterprise、または有効な契約期間中のAltium Designer)によって異なります。

実際にお使いのソフトウェアに文書化されている機能が表示されない場合は、詳細についてAltium Sales までお問い合わせください。

従来のドキュメント

Altium Designer のドキュメントは、バージョンごとに掲載されなくなりました。Altium Designer の旧バージョンのドキュメントは、Other Installers ページの Legacy Documentation の項目をご覧ください。

Contents