PCB設計ルールの定義、範囲設定、および管理

Altium Training

Altium Essentials: PCB Design Rules Creation

This content is part of the official Altium Professional Training Program. For full courses, materials and certification, visit Altium Training.

概略

この記事では、Altium Designerが基盤となるルールシステムを通じてPCB設計要件をどのように扱うかを解説し、設計全体でルールを定義し、適用範囲と優先順位を設定して管理する仕組みを紹介します。クエリを使用してルールの対象オブジェクトを指定する方法、同じ種類の複数のルールを共存させる仕組み、優先順位によってルール間の競合を解決する方法など、基本的な内容を説明します。また、制約を定義するための2つの方法である「PCBルールと制約エディター」ダイアログと「制約マネージャー」を比較し、どちらも同じ中核的なルールシステムに基づいていることを明らかにします。さらに、「PCBルールと制約エディター」ダイアログでのルールの整理、表示、編集について実践的に紹介し、プロジェクト内で設計要件がどのように管理されるかを理解できるようにします。PCB設計ルールを確実に管理するための基礎を、この記事で身につけましょう。

- 適用範囲、クエリ、ルールの種類、優先順位の処理など、Altium DesignerがPCB設計ルールを適用する仕組みを理解します。
- 「PCBルールと制約エディター」ダイアログと「制約マネージャー」による制約管理の違いを学びます。
- 「PCBルールと制約エディター」ダイアログのレイアウトと主な機能を把握し、ルールをより効率的に探して管理できるようにします。
AIでさらに深掘り:

Altium Designerでは、洗練されたtarget these objects and apply those requirementsアプローチを使用して設計要件を適用します。このアプローチでは、ルール(制約)という概念を用いて設計要件を定義します。 これらは総称して設計ルールまたは設計制約と呼ばれ、PCBエディターが従うinstruction setを構成します。設計制約は、配線幅、クリアランス、電源プレーンへの接続スタイル、配線ビアのスタイルなど、設計のあらゆる側面を網羅します。

これらの設計要件の多くは、オンラインのDesign Rule Checker(DRC)によってリアルタイムで監視できます。また、いつでもバッチチェックを実行して、DRCレポートを生成することもできます。 

PCBルールシステムの基礎

ソフトウェアのPCBエディターに組み込まれたルールシステムには、他のPCB編集環境で採用されている多くの設計ルールシステムとは異なる、次のような基本的な特徴があります。

  • Rules are separate from the objects – ルールはオブジェクトの属性として追加されるのではなく、そのオブジェクトを対象とするようにscopedされます。これにより、複数のオブジェクトにルールを適用でき、ルールの変更、複製、別のオブジェクトへの適用も簡単に行えます。

  • Rules are targeted (scoped) by writing a query – 固定された定義済みのルール適用範囲を使用するのではなく、柔軟なクエリシステムを使用して、ルールを適用するオブジェクトを定義します。これにより、各設計ルールの適用対象をきめ細かく制御できます。

  • Rules for any design situation – 同じ種類のルールを複数定義し、それぞれを異なるオブジェクト群に適用できるため、基板の制約を自由に定義できます。たとえば、異なるレイヤー上のネットを異なる幅で配線するために、複数の配線幅ルールを定義できます。 

  • Each rule has a priority – どの設計オブジェクトにも同じ種類のルールを複数適用できるため、一般的な状況と、より具体的な状況の両方に対応できます。ルールが競合する可能性がある場合は、ルールの優先順位に基づいて、適用するルールが決定されます。

  • There are two types of rules – 単項ルール(オブジェクトに求められる動作を定義するルール)と二項ルール(2つのオブジェクト間の相互作用を定義するルール)があります。

設計ルール(制約)には合計65種類があり、10のカテゴリに分類されています。設計ルールの用途はそれぞれ異なります。配線ビアスタイルのように、配置時と設計ルールチェック時の両方でオブジェクトのプロパティを定義するものもあれば、オートルーターへの指示にのみ使用されるもの(配線レイヤー)もあります。各ルールの説明には、そのルールがいつ適用されるかを詳しく説明するRule Applicationセクションが含まれています。

設計制約の定義にはどのアプローチを使用すればよいですか?

グラフィカルな設計スペースでオブジェクトを配置または編集するたびに、PCBエディターはルールシステムを参照して、そのオブジェクトに適用される制約を確認します。たとえば、必要な幅や隣接するオブジェクトとの間に確保すべき距離などです。基本的に、これらの要件はオブジェクトの属性ではなく、設計ルール(制約)として定義されます。

Altium Designerでは、設計制約を定義するために2つのアプローチを使用できます。PCB Rule and Constraints Editor ダイアログで個々の設計ルールを直接操作する方法と、オブジェクト中心のConstraint Managerで制約を設定する方法です。

  • PCB Rule and Constraints Editor アプローチの利点は、ルールを中心に考えられることです。まず要件に着目し、次にその要件をどのオブジェクトに適用するかを検討します。設計ルールはPCBエディターで定義する必要があり、回路図作成時の定義は限定的にしかサポートされない点に注意してください。PCB Rule and Constraints Editor アプローチのもう1つの利点は、再利用可能なルールセットをサポートしていることです。ルールセットは、作成、複製、有効化または無効化、名前の変更、削除、インポート、エクスポートが可能で、特定のインターフェース、製造要件、独自の設計制約に対応するルールを管理しやすくなります。ルールセットについては、このページの後半で説明します。

  • Constraint Managerアプローチには、2つの利点があります。まず、スプレッドシート形式のエディターで、オブジェクトを中心に考えられます。つまり、「このネット群に、これらの要件を適用する」という方法です。次に、設計制約はPCBファイルの外部に保存されるため、Constraint Managerでは回路図の作成を開始した時点から設計要件を定義できます。 

  • 設計要件の定義に使用するアプローチ(Constraint ManagerまたはPCB Rule and Constraints Editor –)は、プロジェクトの新規作成時に、Create ProjectダイアログでConstraint Manager を使用するオプションを選択するかどうかによって決まります。詳細は、Constraint Managerを使用した設計要件の定義を参照してください。

  • 既存のルールベースのプロジェクトをConstraint Managerに切り替えたい場合は、設計ルールからConstraint Managerへの移行 を参照してください(この移行は元に戻せません)。

設計ルールを使用するようにプロジェクトが設定されている場合、設計要件はPCB Rules and Constraints Editorで追加および管理します。

Constraint Managerを使用するようにプロジェクトが設定されている場合、設計要件は独立したConstraint Managerエディターで追加および管理します。

Constraint Managerで定義した設計要件は、最終的に設計ルールに変換されます。ここでは、Constraint ManagerのAll Rulesページに表示されています。

 

このページでは、基盤となるPCBエディターのルールシステムと、設計ルールの定義、適用範囲の設定、管理の方法について説明します。Constraint Managerを使用して設計要件を定義および管理する予定であっても、基盤となるルールシステムの仕組みを理解しておくことは重要です。Constraint Managerで設定した制約は、最終的には設計ルールに変換されてから、基盤となるPCBエディターのルールシステムによって解釈されるためです。

PCBルールおよび制約エディター

PCB Rules and Constraints Editorダイアログには、メインメニューからDesign » Rules コマンドを選択してアクセスします。このダイアログは、以下のスライドで説明する2つの主要なセクションで構成されています。

Left side – ルールセット。

Right side – すべてのルールセットで現在定義されている全設計ルールの一覧。

Left side – 選択したルールセット内のルールカテゴリ。

Right side – 選択したセットで現在定義されている全設計ルールの一覧。

Left side – そのカテゴリ内のルールの種類。

Right side – 選択したカテゴリで現在定義されている全設計ルールの一覧。

Left side – その種類で定義されているルール。

Right side – 選択したルールの種類で現在定義されている全設計ルールの一覧。

Left side – 選択した設計ルール。

Right side – 単純な適用範囲を使用する場合の、選択した設計ルールの設定。

Left side – 選択した設計ルール。

Right side – 適用範囲がより複雑で、カスタムクエリを記述する必要がある場合の、選択した設計ルールの設定。

 

PCBルールおよび制約エディター

Tree on left of the dialog Windowsのエクスプローラーと同様に、左側のツリーには、ルールがタイプとカテゴリにどのように分類されているかが階層表示されます。ダブルクリックすると、ツリー構造の下位階層を展開できます。上のスライドで説明したように、ツリー内のアイコンをクリックすると、その階層の内容が表示されます。

Right side of the dialog – list of rules

(スライド1~4)

ダイアログ右側のルール一覧には、次の列が表示されます。

  • Name – ユーザーが設定できるルール名。

  • Priority – ルールの現在の優先順位。

  • Enabled – ルールが現在有効か無効かを示します(クリックすると切り替わります)。無効なルールは、サマリー一覧でグレー表示されます。

  • Type – ルールのタイプ。

  • Category – ルールが属するカテゴリ。

  • Rule Set – デザインルールが属するルールセット。この列は、ユーザーが作成したルールセット(つまり、Default Rule Set以外のルールセット)がある場合にのみ表示されます。ルールセットの詳細については、ルールをルールセットにグループ化するのセクションを参照してください。

  • Scope – ルールの適用範囲(適用対象のオブジェクト)。

  • Attributes – ルールに定義されている制約属性。

Right side of the dialog – selected rule

(スライド5、6)

左側のツリーで特定のルールを選択するか、サマリー一覧でそのルールの項目をダブルクリックすると、ダイアログの右側にそのルールの設定が表示され、次のオプションを利用できます。

  • Name – ルールの現在の名前。必要に応じて変更します。

  • Comment – ルールに追加する任意のコメント。

  • Unique ID – ルールの一意の識別子。各ルール自体がデザインオブジェクトであり、実体のあるデータです。IDを使用することで、一意性が保証されます。Unique IDが特に重要になるのは、回路図側で作成されたルールです。回路図上のオブジェクトにデザインルールパラメーターを追加すると、各ルールパラメーターに一意のIDが付与されます。PCBで作成される対応するデザインルールにも、同じIDが付与されます。このUnique IDにより、回路図側とPCB側のどちらでもルールの制約を編集でき、同期時にその変更を反映できます。

  • Test Queries – クリックすると、Test Queries Resultダイアログが開き、定義したルールの特殊化を考慮したうえで、そのルールが適用されるオブジェクトの数が表示されます。これにより、クエリに該当するオブジェクトがあるかどうかを確認するとともに、フィルターとルールの適用対象となるオブジェクト群が意図どおりかどうかを確認できます。

  • Where the Object Matches – このセクションでは、ルールの適用対象となるオブジェクトを定義します。これはrule scopeと呼ばれます。詳細については、ルールの適用範囲の設定を参照してください。

  • Constraints – ダイアログのこの領域には、編集中のルールに適用される制約が表示されます。各種コントロールを使用して、必要に応じて制約を設定します。ソフトウェア内で制約領域にカーソルを置いてF1を押すと、そのルールタイプのページにアクセスできます。ルールの制約をより深く理解するには、各PCBデザインルールのタイプの詳細を参照してください。

Search ダイアログ左上のSearchフィールドでは、ユーザー定義のルールのNameフィールドとCommentフィールド、および個々のルール設定画面に表示されるテキストを検索できます。複数の単語を入力した場合は、OR検索が実行されます。
Switch to Document View このボタンをクリックすると、ドキュメント形式でのルール表示に切り替わります。これは非推奨の機能であり、現在は開発が行われていません。
Rule Wizard ルールウィザードを使用すると、手順に沿って新しいデザインルールを作成できます。既存のルールに未保存の変更がある場合、このボタンは使用できません。詳細については、ルールウィザードを参照してください。
Priority 複数のWidthルールなど、同じタイプのルールが複数定義されている場合、各ルールには優先順位が割り当てられます。newルールを追加すると、最も高い優先順位が自動的に割り当てられます。既存のルールをduplicatedすると、複製元のルールのすぐ下の優先順位が割り当てられます。優先順位が使用されるのは、ルールの適用範囲で指定されたオブジェクトに複数のルールが適用される場合のみです。詳細については、ルールの優先順位の設定を参照してください。
Create Default Rules PCBエディターでデザインルールチェックを実行するには、いくつかのルールが存在している必要があります。各ルールの定義には、そのタイプのデフォルトルールが必要かどうかが示されています。このボタンを使用すると、誤って削除した必須ルールを復元できます。デフォルトルールが変更されている場合、このボタンをクリックしても、そのルールがリセットされたり置き換えられたりすることはありません。
Units displayed in the dialog Ctrl+Qショートカットキーを押すと、ダイアログの単位をヤード・ポンド法とメートル法の間で切り替えられます。ただし、基板の現在の単位設定は変更されません。

新しいルールの作成

PCB Rules and Constraints Editorダイアログで新しいデザインルールを追加するには、左側のツリーで目的のルールセットに移動し、目的のルールタイプを選択します。次に、ルールのサマリー一覧の下にあるボタンをクリックするか、目的のルールタイプを右クリックしてコンテキストメニューからAdd Ruleを選択します。

新しいルールがフォルダーツリーに追加され、そのルールタイプのサマリー一覧にも表示されます。ルール名は太字で表示され、新規作成された未適用のルールであることを示します。

新しいPCBデザインルールの作成例。
新しいPCBデザインルールの作成例。

新しいルールの作成

Default rules 新しいPCBドキュメントを作成すると、デザインルールチェックシステムが正しく機能するために必要なデフォルトルールがいくつか含まれています。デフォルトルールを削除すると、PCB Rules and Constraints Editorを閉じたときに自動的に再作成されます。使用しないデザインルールがある場合は、削除せずに無効にするのが適切な管理方法です。
Default units

デフォルトルールの値は内部的にmil単位で定義されており、設計に適さない値になっている場合があります。独自のデフォルトルールと値を使用するには、次の方法があります。

  • プロジェクトテンプレートを作成して使用する、または

  • 必要なルールを設定した適切な空の基板ファイルを作成し、その基板をコピーして新しいプロジェクトで使用する、または

  • テンプレートとして使用するルール一式をPCBルールファイル(*.RUL)にエクスポートし、そのルールを現在の基板設計にインポートします。詳しくは、デザインルールのエクスポートとインポートをご覧ください。

Disabling a default rule ルールを無効にするには、PCB Rules and Constraints Editorダイアログの右側にあるサマリーリストのいずれかで、そのルールに対応するEnabledオプションをオフにします。無効になったルールはグレー表示されます。詳しくは、デザインルールの無効化をご覧ください。
Name of the new rule 新しいルールを追加すると、最初はそのルールの種類に基づいたデフォルト名が付けられます。たとえば、新しいクリアランスルールを追加すると、デフォルト名は Clearanceになります。このデフォルト名を変更せずに同じ種類のルールをさらに追加すると、同じルール名に連番のサフィックスが付けられます(例: Clearance_1、 Clearance_2など)。ルールを管理しやすくするには、適用対象のオブジェクトに基づいて名前を付けるとよいでしょう。たとえば、Clearance-DiffPairsのようにします。
Priority of the new rule 特定のルール種類に対して新しいルールを作成すると、優先度1(最高優先度)が自動的に割り当てられます。同じ種類のルールがほかにも存在する場合、それらの優先度はそれぞれ1段階下がります。この場合、個々のスコープや制約を直接変更していなくても、それらのルールは変更されたものと見なされます。そのため、同じ種類の既存ルールはすべて変更済みの状態(太字とアスタリスク)で表示されます。詳しくは、ルールの優先度をご覧ください。
To edit the rule settings ルールのスコープと制約の属性にアクセスするには、フォルダーツリーペインでルールの項目をクリックするか、サマリーリストでその項目をダブルクリックします。ダイアログのメイン編集領域が切り替わり、そのルールのスコープと制約の属性を定義するためのコントロールが表示されます()。
Use the Rule Wizard

Design » Rule Wizardコマンドを使用するか、PCB Rules and Constraints Editorダイアログの下部にあるRule Wizardボタンをクリックして、ウィザードを起動します。

各ページで次の操作を行います()。

  1. 必要なルールの種類を選択し、わかりやすい名前(必要に応じてコメントも)を付けます。

  2. ルールのスコープを定義します。ウィザードに組み込まれたクエリビルダーを使用して、スコープをさらに詳細に設定できます。詳しくは、デザインルールのスコープ設定をご覧ください。

  3. ルールの優先度を設定します。詳しくは、優先度の設定をご覧ください。

既存ルールへの変更がまだ適用されていない場合、 Rule Wizard ボタンは使用できません。

Wizardの最後のページでLaunch main design rules dialogオプションが有効になっている場合、FinishボタンをクリックするとPCB Rules and Constraints Editorダイアログが開き、新しく作成したルールの制約を編集できます。

Duplicate an Existing Rule

既存のルールを複製するには、次のいずれかの操作を行います()。

  • 左側のツリーでルールを右クリックし、コンテキストメニューからDuplicate Ruleを選択します。

  • 左側のツリーで該当するルールの種類に移動し、右側のサマリーリストで複製するルールを選択して、リストの下にあるボタンをクリックします。

複製したルールには、元のルールと同じ名前に、区別するためのサフィックス(例: _1)を付けた名前が設定されます。定義(スコープ、制約など)は元のルールと同じです。優先度は、元のルールの1つ下に設定されます。たとえば、元のルールの優先度が1の場合、複製したルールの優先度は 2になります。

Creating a rule from the PCB Filter panel

クエリの記述に習熟するには、設計スペース内のオブジェクトを対象として指定するために用意されたPCB Filterパネルを活用するのがおすすめです。パネルで必要なクエリを作成したら、Create Ruleボタン()をクリックし、ルールの追加先となるセットを選び、ルールの種類を選択して、PCB Rules and Constraint Editorで新しいルールをAddします。最後に、ルールに名前を付け、優先度を設定します。

Is the rule ready?
  • ルールを識別できるよう、わかりやすい名前を付けます。

  • ドロップダウンからスコープ設定オプションを選択するか、クエリ(バイナリルールの場合は複数のクエリ)を入力して、ルールのスコープを定義します。

  • ルールの制約を設定します。

  • ルールの優先度を設定します。

デザインルールのスコープ設定

デザインルールは、設計内の特定のオブジェクトを対象とします。PCBルールシステムが、あるルールをどのオブジェクトに適用するかを判断するには、そのルールのスコープ、つまりthe extent of its applicationを把握する必要があります。

Scoping、つまりルールの対象の指定は、PCB Rules and Constraints Editorダイアログで行います。

デザインルールのスコープを設定して、適用対象となる設計オブジェクトを定義します。このルールは、ボトムレイヤー上にあるVBATネットのすべてのオブジェクトを対象としています。
デザインルールのスコープを設定して、適用対象となる設計オブジェクトを定義します。このルールは、ボトムレイヤー上にあるVBATネットのすべてのオブジェクトを対象としています。

ルールのスコープ設定

Targeting the rule Scoping、つまりルールの対象の指定とは、そのルールを適用するオブジェクトの集合を定義する作業のことです。これは、 Where The Object Matchesの設定によって行います。新しいデザインルールのデフォルトのスコープは Allで、基板上のall objectsに適用されます。ドロップダウンを使用すると、シンプルなルールのスコープをすばやく設定できます。選択する項目に応じて追加のドロップダウンが表示され、必要なオブジェクトを正確に指定できます()。シンプルなスコープ設定オプションを使用した場合も、クエリは作成されます。ドロップダウンで Custom Queryに切り替えると、各オプションの背後にあるクエリを確認できます。
Using a custom query

カスタムクエリを入力するには、最初のWhere The Object MatchesドロップダウンをCustom Queryに設定します。ダイアログはドロップダウンによる選択表示から切り替わり、現在のドロップダウン設定に基づいて、ルールエンジンがこのルールに使用しているクエリを表示します。

Writing the query

クエリは、基本的には、対象とする設計オブジェクトの集合を定義するソフトウェアへの指示です。クエリはクエリキーワードを使用して記述します。次に例を示します()。

InNet('VBAT') And OnLayer('Bottom Layer')

このクエリを配線幅ルールのスコープとして使用すると、VBATネットを配線しているときにボトムレイヤーに切り替えると、配線幅はそのルールのConstraintsで指定された幅に自動的に変更されます。また、デザインルールチェックを実行すると、ボトムレイヤー上のVBATネットの配線はすべて指定の幅である必要があり、そうでなければ違反として検出されます。

詳しくは、クエリの記述をご覧ください。

Unary or Binary rule

単項ルールは、ルールスコープの対象オブジェクトtoに適用され、二項ルールは、ルールスコープの対象オブジェクトbetweenに適用されます。

ルールが単項か二項かに応じて、それぞれ1つまたは2つのスコープを定義する必要があります。 単項のデザインルールでは、1つのルールスコープを定義するためのコントロールが表示されます。 Where The Object Matches 領域のオプションを使用してクエリ式を作成すると、その右側の領域に式が表示されます。二項のデザインルールでは、両方のルールスコープを定義するために、 Where The First Object Matches と Where The Second Object Matches のコントロールが表示されます。それぞれのドロップダウンを使用して、クエリ式を作成します。 スコープを1つ定義する場合も2つ定義する場合も、コントロールは同じです。

Changing the name of the object that a rule applies to

PCB部品のデジグネーターまたはポリゴン名を変更すると、カスタムクエリを使用するデザインルール内の参照が自動的に更新されます。デザインルール内でPCB部品のデジグネーターを参照するクエリは、デジグネーターの再アノテーション、ECOによる更新、または基板上での手動編集()に伴って変更されます。

  • 部品のデジグネーター変更時にルールクエリを更新する機能は、Advanced Settingsダイアログで PCB.Rules.UpdateQueryOnComponentDesignatorChangeオプションを有効にすると使用できます。

  • ポリゴン名の変更時にルールクエリを更新する機能は、Advanced Settingsダイアログで PCB.Rules.UpdateQueryOnPolygonNameChangeオプションを有効にすると使用できます。

The impact of a Query syntax error クエリに構文エラーがある場合、そのルールは無効と見なされ、PCB Rules and Constraints Editorダイアログの左側のルールツリーと、そのルールが表示されるすべてのサマリービュー(ルールカテゴリまたはルールタイプ)で赤く強調表示されます。また、ダイアログを閉じようとすると警告メッセージが表示されます。構文エラーのあるルールスコープは、オンラインDRCおよびバッチDRCの解析処理を大幅に遅くする場合があります。構文が正しくないルールスコープは、必ず修正してください。詳しくは、デザインルールの管理を参照してください。

カスタムクエリの作成

Custom Queryオプションを使用すると、より複雑で、より具体的な独自のクエリを作成できます。右側のクエリ領域に、ルールスコープ用のクエリを直接入力できます。また、論理クエリ式の作成を支援する機能として、Query BuilderとQuery Helperの2つが用意されています(概要は以下を参照)。これらは、クエリの構文や使用可能なキーワードがわからない場合に役立ちます。

Custom Queryオプションを使用して、より複雑なクエリ式を作成します。
Custom Queryオプションを使用して、より複雑なクエリ式を作成します。

カスタムクエリの作成

Writing a query クエリ言語に慣れている場合は、クエリ領域にクエリ式を直接入力できます。 また、使い慣れたエディターからクエリ式をこの領域に直接貼り付けたり、クエリ式を外部エディターにコピーしたり、二項ルールの2つ目のスコープに貼り付けたりすることもできます。これは、2つのスコープが複雑で、わずかな違いしかない場合に特に便利です。
The PCB Filter panel

クエリの作成スキルを身につけるには、設計スペース内のオブジェクトを対象として指定するためのPCB Filterパネルを使用するのが効果的です。チェックボックスで対象のオブジェクトとレイヤーを指定すると、選択内容に応じてクエリが作成されます。このクエリを必要に応じて編集することで、不要なオブジェクトをすべて除外し、目的のオブジェクトだけを抽出できます。このパネルからは、Query Helper、Query Builder、過去のクエリの履歴、および現在のお気に入りにもアクセスできます。また、現在のFilter panelクエリを使用して、新しいデザインルールのスコープを設定することもできます。

Query Builder

Query Builderは、状況に応じた条件タイプと値を使用し、関連する「構成要素」だけを組み合わせてクエリを作成できるガイド付きの機能です。Query Builder ボタンをクリックするとBuilding Query from Boardダイアログが開き、条件文を連結して()、設計ドキュメント内の特定のオブジェクトを対象とするクエリを作成できます。 

各条件は、Condition Type とCondition Valueで構成されます。それぞれのドロップダウンフィールドには、現在のルールタイプのスコープ作成に適した項目と、選択した条件タイプに対応する値が表示されます。 条件を定義すると、作成中のクエリのプレビューがダイアログの右側に表示されます。条件をANDやORで組み合わせたり、括弧やインデントを使用して優先順位を設定したりすることで、対象オブジェクトを絞り込めます。クエリ式を必要に応じて定義し、OKをクリックすると、PCB Rules and Constraints Editorダイアログのクエリ領域に式が読み込まれます。

詳しくは、Query Builderを参照してください。

Query Helper

キーワードや演算子の構文をすべて指定して高度なクエリを作成するには、Query Helper ボタンをクリックしてQuery Helperダイアログ()を開きます。このダイアログには、主に次の3つの領域があります。

  1. Query – クエリ式を作成する領域です。この領域に直接入力できます。入力内容に応じて、使用可能なキーワードやオブジェクトの候補リストが表示され、入力を支援します。

  2. Operators – 式の作成に使用する各種の算術演算子と論理演算子が用意されています。ボタンをクリックすると、上のQuery領域にあるクエリ式の現在のカーソル位置に、その演算子が追加されます。

  3. Categories, Keywords and Objects – クエリ式の作成に使用できるPCB関数、PCBオブジェクトリスト、システム関数にアクセスできます。これら3つの分類のサブカテゴリをクリックすると、対応するキーワードやオブジェクトの一覧が右側の領域に表示されます。クエリ文字列で使用するキーワードまたはオブジェクトを見つけてダブルクリックすると、上のQuery領域にあるクエリ式の現在のカーソル位置に、その項目が挿入されます。 Maskフィールドを使用すると、目的のキーワードをすばやく見つけられます。たとえば、*polyと入力すると、カテゴリを切り替えても、文字列polyを含むキーワードだけが表示されます。

Query Helperダイアログを使用してクエリを作成しているときに、一覧内のキーワードをクリックしてF1を押すと、クエリ言語リファレンス内の、そのキーワードのドキュメントにアクセスできます。

詳しくは、Query Helperを参照してください。

Query history PCB Filterパネルで記述して適用したすべてのクエリは、Expression ManagerダイアログのHistoryタブに記録されます。これらはいつでも再利用でき、お気に入りとして保存することもできます ()。
Favorite queries クエリ履歴内のどのクエリもお気に入りとして保存できます。頻繁に使用するクエリを保存して再利用するのに最適な方法です ()。
Query Expression Operator Precedence

括弧は最も優先順位が高いため、クエリが正しく解釈されない可能性が少しでもある場合は、括弧を使用することをお勧めします。括弧を使用すると、曖昧さがなくなるだけでなく、クエリも読みやすくなります。 

優先順位(高い順)は、Pascal系の言語で使用されるものと似ています。曖昧な場合は、左から右へ処理することで解決されます。括弧は内側から外側へ評価され、同じ優先順位の場合は左から右へ評価されます。

Create a query from a search

表示中のオブジェクトに似たオブジェクトを(回路図エディターやPCBエディターで)検索するには、そのオブジェクトを右クリックし、コンテキストメニューからFind Similar Objectsを選択すると便利です。Find Similar Objects処理では、Find Similar Objectsダイアログの設定に従い、対象オブジェクトの属性を基準として、同様の特性を持つ他のすべてのオブジェクトを検索します。内部では、それらのオブジェクトを検索するためのクエリが作成されます。ダイアログでCreate Expressionオプションが有効になっている場合、そのクエリはPCB Filterパネルに読み込まれ、お気に入りとして保存したり、デザインルールで使用したりできます ()。 

詳細については、Find Similar Objectsツールを参照してください。

詳細については、クエリ言語の使用を参照してください。

ルールの優先順位

ルールの定義と管理を簡素化するには、まず広範な要件をカバーする一般的なルールを定義し、特定の状況に対応する個別のルールでそれらを上書きします。同じ種類の複数のルールが1つのオブジェクトを対象とする場合、競合が発生します。すべての競合は、優先順位の設定によって解決されます。システムは優先順位の高い順にルールを確認し、スコープ式がチェック対象のオブジェクトに一致する最初のルールを選択します。

この処理を管理するには、同じ種類の複数のルールが1つのオブジェクトを対象とする場合にどのルールを使用するかを示すため、ルールに優先順位を設定する必要があります。 

このhighest priority rule wins方式には例外が1つあります。複数のMatched Lengthsデザインルールをオブジェクトに適用でき、その場合はすべてのルールがそれらのオブジェクトに適用されます。

Edit Rule Prioritiesダイアログでルールの優先順位を変更します。
Edit Rule Prioritiesダイアログでルールの優先順位を変更します。

ルールの優先順位の設定

Priority of rules 優先順位の数値が小さいほど、優先順位は高くなります。優先順位は、同じルール種別内でのみ(すべてのルールセットを通じて)適用されます。たとえば、差動ペア配線の優先順位を確認する際に、配線幅の優先順位は考慮されません。all rule sets内のすべての配線幅ルールに優先順位が付けられることに注意してください。詳細については、ルールセットを参照してください。
Approach to prioritizing 通常、ルールのスコープが広いほど(たとえばAll)、優先順位を低くする必要があります。そのうえで、同じ種類で優先順位の高い別のルールを追加することにより、特定のネット(またはネットクラス)に対してこのルールを上書きできます。優先順位の数値をユーザーが直接指定することはできません。代わりに、PCB Rules and Constraint EditorのPrioritiesボタンをクリックし(上図参照)、Edit Rule Prioritiesダイアログで選択したルールの優先順位を上げ下げして設定します。 
What happens when you click the Priorities button 優先順位は、上図のようにEdit Rule Prioritiesダイアログで管理します。このダイアログには、現在のルール種別のすべてのルールが自動的に読み込まれます。左側のツリーでルールカテゴリーまたはルールセットを選択した状態でPrioritiesボタンをクリックすると、その下にある次のルール種別が自動的に選択されます。
Priority of a new rule 既存のルールが1つ以上含まれているルール種別に新しいルールを追加すると、優先順位は1に設定されます(新しいルールに最も高い優先順位が与えられます)。特定のルールを複製すると、コピーには元のルールの1つ下の優先順位が与えられます。
Checking the priorities PCB Rules and Constraint Editorの左側のツリーで特定のルール種別を選択すると、その種類のルールは常に優先順位順で表示されます ()。ダイアログの右側で特定のルール種別が一覧表示されている場合は、Priority列の見出しをクリックすると、その列を基準にリストを並べ替えることができます ()。
Examining the priority in the design space デザインルールシステムは、ルールに関連するタスクの実行時に、適用可能なルールの中で最も優先順位の高いものを自動的に選択します。たとえば、オブジェクトを右クリックしてコンテキストメニューからApplicable Binary Ruleを選択すると、ダイアログには適用可能なルールの中で最も優先順位の高いものが表示されます ()。

ルールの管理

ルールはPCB Rules and Constraint Editorで管理します。右クリックのコンテキストメニューを使用するか、ダイアログのフィールドを直接編集します。

無効なデザインルールをシステムが検出した例。この場合は、スコープを定義するクエリ式に誤りがあります。無効なデザインルールをシステムが検出した例。この場合は、スコープを定義するクエリ式に誤りがあります。

デザインルールの管理

Modifying an existing rule

最終的に実用的なルール一式を整えるには、多くの場合、いくつかの重要な調整が必要です。通常は、対象の設計オブジェクトがルールによって確実に捕捉されるよう、スコープを調整します。PCB Rules and Constraints Editorダイアログで既存のルールを編集するには、左側のツリーでルール名を1回クリックするか、右側のグリッドビューでルールをダブルクリックし、必要に応じてスコープと制約を変更します。

既存のルール定義への変更は、フォルダーツリーペインと該当するサマリーリストの両方で強調表示されます。これらの項目は、ルール名が太字になり、名前の右側にアスタリスクが表示されることで区別されます ( )。アスタリスクは、新しく作成されたルール(アスタリスクなしの太字で表示)ではなく、既存のルールが変更されたことを示します。

特定のルールタイプで新しいルールを作成すると、そのルールには自動的に優先順位1が割り当てられます。同じタイプのルールがほかにも存在する場合、それらの優先順位はそれぞれ 1つずつ下がります 。この場合、スコープや制約を直接変更していなくても、これらのルールは変更されたものと見なされます。そのため、そのタイプの既存ルールはすべて、変更済みの状態(太字とアスタリスク)で表示されます。

Flagging Invalid Rules

スコープを定義するクエリ式に問題がある場合や、制約に許可されていない値が設定されている場合など、システムがルールを無効と判断すると、そのルールには無効であることを示すフラグが付けられます。このようなルールは、上図のように、PCB Rules and Constraints Editorダイアログの左側のルールツリーと、そのルールが表示されるすべてのサマリービュー(ルールカテゴリまたはルールタイプ)で赤く強調表示されます。また、左側のルールツリーでは、そのルールのタイプ名とカテゴリ名も赤く表示されます。そのため、無効なルールを含むツリーの領域を折りたたんでいても、階層の上位レベルでその存在を確認できます。ダイアログを閉じようとした場合にも、警告メッセージが表示されます()。

ルールスコープに構文エラーがあると、オンラインDRCとバッチDRCの解析が大幅に遅くなることがあります。構文が正しくないルールスコープは必ず修正してください。

Disabling Rules

このソフトウェアのPCBエディターはルール駆動型の環境であるため、基板に適切な制約を適用するために、多数の包括的なルールを設定することも珍しくありません。対象の基板には適用されない場合や、デザインルールチェッカーの負荷を軽減するために一時的に無効にする必要がある場合など、何らかの理由で一部のルールを無効にしたいことがあります。無効化は、将来再び必要になったときに備えて、こうしたルールを保持しておくのに適した方法です()。

ルールを無効にするには、PCB Rules and Constraints Editorダイアログの右側にある該当するサマリーリストで、そのルールに対応するEnabledオプションを切り替えます。無効化されたルールはグレー表示になります。

PCB Rules And Violationsパネルから直接ルールを無効化または有効化することもできます。ルールに対応するEnabledオプションを切り替えてください。この変更は、PCB Rules and Constraints Editorダイアログ内の、そのルールのEnabledオプションに反映されます。

Deleting a Rule

PCB Rules and Constraints Editorダイアログ内で1つのデザインルールを削除するには、次の操作を行います。

  • 特定のデザインルールが不要になっても、将来再び使用する可能性がある場合は、削除せずに無効化できます。PCB Rules and Constraints Editorダイアログの右側にある該当するサマリーリストで、そのルールに対応するEnabledオプションを切り替えます。

  • 左側のツリーで対象の既存ルールに移動し、右クリックしてコンテキストメニューからDelete Ruleを選択します。または、左側のツリーで該当するルールタイプに移動し、右側のサマリーリストで削除するルールを選択して、リストの下にあるボタンをクリックします。ルール名は太字と取り消し線で表示され、削除がまだ「適用」されていないことを示します()。

  • サマリーリストビューから、複数のルールを一度に削除できます。削除するルールを選択し(標準のShift+ClickおよびCtrl+Clickショートカットを使用できます)、リストの下にあるボタンをクリックします。

  • デザインルールチェックシステムが動作するには、特定のルールが存在している必要があります。これらのルールのいずれかを削除し、そのタイプのルールが1つもなくなると、自動的に再作成されます。詳しくは、デフォルトのデザインルールを参照してください。

ルールのエクスポートとインポート

デザインルールは、PCB Rules and Constraints Editorダイアログからエクスポートしたり、このダイアログにインポートしたりできます。これにより、よく使うルール定義を保存し、別の設計に読み込むことができます。

PCB Rules and Constraints Editorでは、ルールのエクスポートとインポートが可能です。PCB Rules and Constraints Editorでは、ルールのエクスポートとインポートが可能です。

Export rule(s)

ダイアログの左側にあるツリー内の任意の場所を右クリックし、Export Rulesを選択します。Select Design Rulesダイアログが開き、エクスポートするデザインルールを選択できます()。続いて開くExport Rules to Fileダイアログで、*.rulファイルの名前と保存先を指定できます。エクスポートしたルールはPCBルールファイル(*.rul)に保存されます。

Import rule(s)

ダイアログの左側にあるツリー内の任意の場所を右クリックし、Import Rulesを選択します。開いたImport Fileダイアログで、インポートする*.rulファイルを参照して選択します。Select Design Rulesダイアログが開き、インポートするデザインルールを選択できます()。

この機能はオープンベータ版であり、Advanced SettingsダイアログでPCB.Rules.RuleSetsオプションを有効にすると使用できます。

インポート時には、Import toドロップダウンを使用して、ルールのインポート先となるルールセットを選択することもできます。

  • 特定のルールセット(Default Rule Setまたは任意のユーザー定義ルールセット)を選択すると、選択したルールがそのルールセットにインポートされます。

  • ドロップダウンでAll Rulesの項目を選択すると、ファイル内のルールセット情報に従って、選択したルールが各ルールセットにインポートされます。つまり、ファイル内のDefault Rule SetのルールはPCBドキュメント内のDefault Rule Setにインポートされ、ファイル内のユーザー定義ルールセットのルールはPCBドキュメント内の対応するルールセットにインポートされます。ファイル内のユーザー定義ルールセットがPCBドキュメントに存在しない場合は、自動的に作成されます。

  • 次を選択します: New Rule Setドロップダウンの項目を選択して、新しいルールセットを作成します。表示される New Rule Set Name フィールドに新しいルールセットの名前を入力します。ルールはその新しいルールセットにインポートされます。

この機能はオープンベータ版で、Advanced Settings ダイアログの PCB.Rules.RuleSets オプションを有効にすると使用できます。

既存のルールセットと同じ名前のルールセットを1つ以上(*.rul ファイルから)インポートする場合、Select Design Rules ダイアログ()で をクリックすると、Rule Set Already Exists ダイアログが開きます。セット内のインポート対象ルールに対して、次の操作を選択できます。

  • Add to existing rules – 選択したすべてのルールをインポートします。競合する場合(同じ名前のルールがすでに設計内に存在する場合)、ファイル内のルールは名前に _<n> という接尾辞を付けてインポートされます。

  • Add and replace matching rules – 選択したすべてのルールをインポートします。競合する場合、既存の設計ルールがファイル内のルールに置き換えられます。

  • Replace all – ルールセット内の既存のルールをすべて削除し、選択したすべてのルールをインポートします。

PCB に既存のルールセットが複数ある場合、表示される Some Rule Sets Already Exist ダイアログ()で、ルールセットごとに上記のオプションのいずれかを選択できます。

設計ルールレポート

現在定義されている設計ルールのレポートは、PCB Rules and Constraints Editor ダイアログから生成できます。フォルダーツリーで選択した項目に応じて、すべてのルールカテゴリ、特定のルールカテゴリ、または特定のルールタイプを対象としたレポートを作成できます。

右クリックし、コンテキストメニューから Report を選択すると、レポートが生成されます。該当するレポートが読み込まれた状態で Report Preview ダイアログが開きます。このダイアログの各種ページ操作やズームコントロールを使用してレポートを確認し、印刷したりファイルにエクスポートしたりできます。

PCB ルールレポートを生成します。
PCB ルールレポートを生成します。

ルールをルールセットにグループ化する

この機能はオープンベータ版で、Advanced Settings ダイアログの PCB.Rules.RuleSets オプションを有効にすると使用できます。

ルールセットを使用すると、たとえば特定のインターフェースやメーカー向けの設計ルールを効率的にグループ化し、再利用できます。次の操作をすばやく行えます。

DDR4 インターフェースに関連する設計ルールをグループ化した、ユーザー定義の DDR4 ルールセットの例。
DDR4 インターフェースに関連する設計ルールをグループ化した、ユーザー定義の DDR4 ルールセットの例。

ルールセットの操作

Default Rule Set

PCB ドキュメントには Default Rule Set が含まれています。これは名前の変更、無効化、削除ができません。PCB Rules and Constraints Editor ダイアログの左側のツリーでは、Default Rule Set は アイコンで識別され、ユーザー定義のルールセットには アイコンが表示されます。

Create a new Rule Set

新しいルールセットを作成するには、PCB Rules and Constraints Editorダイアログの左側のツリー下部にある+ Add Rule Setコントロールをクリックするか、ツリー最上部のAll Rulesエントリを右クリックし、コンテキストメニューからAdd Rule Setコマンドを選択します()。開いたAdd Rule Set dialogのNew Rule Set Nameフィールドに、新しいルールセットの一意の名前を入力し、 ボタンをクリックします。新しいルールセットのエントリ(およびそのルールカテゴリとルールタイプの階層構造)がツリーに表示されます。 ルールセット名は太字で表示され、新規作成されてまだ「適用」されていないことを示します。

Rename a Rule Set

ユーザー定義のルールセットの名前を変更するには、PCB Rules and Constraints Editorダイアログの左側のツリーでそのエントリを右クリックし、コンテキストメニューからRenameを選択します。開いたRenameダイアログのNew Nameフィールドにルールセットの新しい名前を入力し、 ボタンをクリックします()。 

名前を変更したルールセットは、フォルダツリーペインでルールセット名が太字になり、名前の右側にアスタリスクが表示されます。このアスタリスクは、新規作成されたルールセット(アスタリスクなしの太字で表示)ではなく、既存のルールセットが変更されたことを示します。

Duplicate an existing Rule Set

既存のルールセットと同一のコピーを作成するには、既存のルールセットを右クリックし、Duplicate Rule Setを選択します()。 開いたDuplicate ダイアログのNew Rule Set Nameフィールドに複製するルールセットの名前を入力し、 ボタンをクリックします。 複製されたルールセットのエントリ(およびそのルールカテゴリとルールタイプの階層構造)がツリーに表示されます。 ルールセット名と各デザインルールの名前は太字で表示され、新規作成されてまだ「適用」されていないことを示します。

複製されたルールセットには、元のルールセットと同じデザインルールが含まれます。複製されたルールセット内の各デザインルール には、元のルールと同じ名前に、区別するための接尾辞(例: _1)を付けた名前が設定されます。その定義(スコープ、制約など)は元のルールと同一です。優先順位については、複製されたルールセット内のデザインルールには、元のルールのすぐ下の優先順位が割り当てられます。たとえば、元のルールセット内のルールの優先順位が 1の場合、複製されたルールセット内のルールには優先順位 2が割り当てられます。

Move rules between Rule Sets

既存のルールをルールセット間で移動するには、次の操作を行います。

  • 左側のツリーで目的の既存ルールに移動して右クリックし、コンテキストメニューの Move toサブメニューから、移動先のルールセットのエントリを選択します。

  • 左側のツリーで該当するルールタイプに移動し、右側のサマリーリストで移動するルールを選択します。次に、リストの下にある  ボタンをクリックし、表示されるメニューから移動先のルールセットを選択します。または、サマリーリストでルールを右クリックし、コンテキストメニューのMove toサブメニューから目的のルールセットを選択します()。

    サマリーリスト表示では、1回の操作で複数のルールを移動できます。移動するルールを選択し(標準のShift+ClickおよびCtrl+Clickショートカットが使用可能)、リストの下にある  ボタンのメニューを使用します。

Disable a Rule Set

特定のユーザー定義ルールセット内のデザインルールをDRCの対象から除外するには、そのエントリを右クリックし、コンテキストメニューから Disable Rule Setを選択します。無効にしたルールセットのエントリはツリー内でグレー表示され、その右側にDisabledというテキストが表示されます。無効にしたルールセットのルールカテゴリ、ルールタイプ、および個々のデザインルールのすべてのエントリもツリー内でグレー表示されます。また、 PCB Rules and Constraints Editor ダイアログの右側にある該当するサマリーリストでも、デザインルールのエントリがグレー表示されます()。 無効にしたルールセットを再び有効にするには、 そのエントリを右クリックし、コンテキストメニューから Enable Rule Setを選択します。

無効なルールセット内のデザインルールは、個別に有効にしていてもDRCの対象にはならないことに注意してください。

Delete a Rule Set

ユーザー定義のルールセットを、そのデザインルールとともに削除するには、左側のツリーで目的のルールセットを右クリックし、コンテキストメニューからDelete Rule Setを選択します。 ルールセット名と各デザインルールの名前は、取り消し線付きの太字で表示され、削除がまだ「適用」されていないことを示します()。PCB Rules and Constraint EditorのApplyボタンをクリックして変更を適用します。

  • ユーザー定義のルールセットが不要になっても、将来再び使用する可能性がある場合は、削除する代わりに無効化できます。

  • ルールセットが削除対象として強調表示されている場合、左側のツリーでそのルールセットを右クリックし、コンテキストメニューからUndo Deletion を選択すると、ルールセットとそのルールの削除を取り消すことができます。

Priority across Rule Sets 各タイプのデザインルールには、すべてのルールセットに共通する優先順位があります。つまり、PCBドキュメント内のオブジェクトが複数のルールの対象となる場合、所属するルールセットに関係なく、最も優先順位の高いルールが適用されます。ルールの優先順位の管理については、上記の ルールの優先順位付けセクションを参照してください。なお、必要に応じて、バッチDRC中に特定のルールセットのデザインルールを強制的にチェックできます。詳細については、 DRCの設定と実行ページを参照してください。

回路図でのルールの定義

Constraint Managerではなくデザインルールを使用するプロジェクトでは、ルールをパラメーターとして追加することで、回路図にルールを追加できます。コンポーネントなど、パラメーターを持つ回路図オブジェクトには、ルールをパラメーターとして追加します。それ以外の場合は、Parameter Setオブジェクトを使用して追加する必要があります。

コンポーネントなど、パラメーターを持つ回路図オブジェクトには、ルールをパラメーターとして追加します。

パラメーターを持たないオブジェクトの場合は、Parameter Setオブジェクトにルールを追加します。

 

回路図でのルールの定義

Schematic objects that include parameters コンポーネントなど、パラメーターを持つ回路図オブジェクトには、上のスライドショーの1枚目に示すように、ルールをパラメーターとして追加します。
Schematic objects that do not include parameters パラメーターを持たないオブジェクトの場合は、 上のスライドショーの2枚目に示すように、Parameter Setオブジェクトにルールを追加します。これには、ワイヤー、バス、ハーネス、ネットラベルなどのオブジェクトが該当します。詳細については、PCB関連の回路図設計ディレクティブを参照してください。
Scope of the PCB rule

作成されるPCBルールの適用範囲は、そのルールが関連付けられているオブジェクトの識別情報に基づいて設定されます。 

  • たとえば、USBA2_DPとして識別されるワイヤーに回路図のParameter Setを接続すると、PCBルールの適用範囲はInNet('USBA2_DP')になります。

  • ソフトウェアがオブジェクトクラスを識別できる場合は、代わりにそのクラスが使用されます。たとえば、ネットData7が回路図バスData[0..7]の一部である場合、PCBルールの適用範囲はInNetClass('Data')iになります。

  • 回路図からクラスを自動作成するオプションがない場合は、回路図内の各オブジェクトに適切なClassパラメーターを追加します。 上のスライドショーの2枚目のスライドに、この例を示しています。回路図の各電源ネットにParameter Setオブジェクトが接続されており、その中にパラメーターNet Class Name = Powerが含まれています。ソフトウェアはPowerという名前のPCBネットクラスを作成し、続いて適用範囲がInNetClass('Power')iの配線幅制約ルールを作成します。

  • コンポーネントなど、ドロップダウンのオプションからClassパラメーターを追加できない回路図オブジェクトの場合は、代わりにParameterを追加し、パラメーター名をClassName、パラメーター値を必要なクラス名iに設定します。  

  • 回路図でルールを定義する際に、複数のオブジェクト(複数のネットなど)を簡単に対象にできるようにするには、ネット識別子を覆うようにBlanketオブジェクトを配置し、そこに1つのParameter Setオブジェクトを接続します()。詳しくは、Blanketディレクティブをご覧ください。

回路図でデザインルールを定義するために、Differential PairディレクティブとBlanketを組み合わせて使用する例もご覧ください。

ルールの適用状況の確認

基板設計によっては、非常に単純なものから非常に複雑なものまで、さまざまな適用範囲を持つデザインルールが含まれます。定義したルールが、意図したオブジェクトを実際に対象としているか確認することをお勧めします。ルールの定義段階で注意を払うことで、適用範囲の設定ミスによる違反の原因究明に、無駄な時間や労力を費やさずに済みます。

ルールの適用範囲を確認する方法は、大きく分けて2つあります。デザインオブジェクトを選択して現在適用されているルールを調べる方法と、ソフトウェア内の各所でルールを選び、その適用範囲に含まれるオブジェクトを確認する方法です。

オブジェクトの観点から確認する

現在の設計に配置されている任意のオブジェクトについて、そのオブジェクトに適用されるデザインルールの情報をすばやく確認できます。オブジェクト上にカーソルを置いて右クリックし、Applicable Unary RulesまたはApplicable Binary Rulesを選択します。

選択したオブジェクトに適用される、定義済みのすべてのデザインルールが、Applicable Unary RulesまたはApplicable Binary Rulesダイアログに一覧表示されます。

単一のデザインオブジェクトに適用されるすべてのデザインルール。これらは単項ルールです。

2つのデザインオブジェクト間に適用されるすべてのデザインルール。これらは二項ルールです。

 

このオブジェクトに適用されるルールは?

Applicable Unary Rule このコマンドを選択すると、右クリックしたときにカーソルの下にあったオブジェクトが対象となり、Applicable Unary Rulesダイアログにto this object適用されるすべてのデザインルールが表示されます。コマンドを選択する前に、カーソルを配置してください。
Applicable Binary Rule このコマンドを選択すると、ステータスバーにChoose first objectという指示が表示され、それを実行すると、続いてChoose second objectと表示されます。Applicable Binary Rulesダイアログには、クリックしたbetween the two objects適用されるすべてのデザインルールが表示されます。
Understanding the dialog

ダイアログに一覧表示される各ルールの横には、チェックマーク()または×印()が付きます。チェックマークは、適用可能な同じ種類のルールの中で最も優先度が高いルールを示し、これが現在適用されているルールです。同じ種類で優先度の低いルールには×印が付きます。これは、適用可能ではあるものの、最優先のルールではないため現在は適用されていないことを示します。

  • そのオブジェクトに適用可能でも、現在無効になっているルールにも×印が付き、取り消し線付きで表示されます。

  • 選択した2つのオブジェクトに適用される二項ルールがない場合、 Applicable RulesダイアログのBinary バージョンは開きません。

クリックしたオブジェクトの種類が選択フィルターの設定によって現在選択できない場合、 Applicable Rulesダイアログは開きません。

ルールの観点から確認する

PCBエディターには、ルールの観点から、そのルールが対象とするオブジェクトを調べる方法が2つあります。PCB Rules and Violationsパネルを使用する方法と、PCB Rules and Constraint Editorダイアログから確認する方法です。

PCB Rules And Violationsパネルでの確認

PCB Rules And Violationsパネルには、設計に対して現在定義されているすべてのルールが一覧表示されます。パネル上部のナビゲーションオプションを設定してからクリックすると、現在定義されている各デザインルールの対象オブジェクトを確認できます。

PCB Rules And Violationsパネルを使用して、選択したルールがどのオブジェクトに適用されるかを確認する例。
PCB Rules And Violationsパネルを使用して、選択したルールがどのオブジェクトに適用されるかを確認する例。

PCB Rules and Violationsパネルでの操作

Rule Classes section 1回クリックすると、選択したクラスのルールのみが表示されます。[All Rules]をクリックすると表示がリセットされ、Rulesセクションに現在のすべてのデザインルールが一覧表示されます。
Rules section

このセクションには、この基板に定義されているルールについて、[All Rules]、または現在選択されているRule Classのルールが一覧表示されます。

  • ルールを1回クリックすると、そのルールが適用されるすべてのオブジェクトが選択されます。

  • ルールをダブルクリックすると、Edit PCB Ruleダイアログが開き、そのルールの設定を編集できます()。

  • ルールを右クリックするとコンテキストメニューが表示され、そのルールのClear Violations、DRC、またはルールのPropertiesの設定を行えます()。 

Violations section

DRCの実行後、現在選択されているルールクラスまたはルールに違反がある場合、パネルの3番目のセクションに一覧表示されます。

  • ルールを1回クリックすると、違反しているオブジェクトが表示されます。

  • ダブルクリックするとViolation Detailsダイアログが開き、違反したルールと違反しているプリミティブが一覧表示されます。違反ルールのセクションには、PCB Rules and Constraint Editorダイアログ内の該当するデザインルールに直接移動できるリンクが含まれています。

詳しくは、デザイン違反の調査と解決をご覧ください。

Controlling the response

パネル上部のコントロールを使用して、リスト内のルールをクリックしたときの表示動作を設定します。

  • ドロップダウンを使用して、選択したルールの対象となるオブジェクトをマスク表示または淡色表示に設定します。

  • Magnifyをクリックして、ズームレベルを設定します(Zoomオプションが有効な場合に適用されます)。

  • Clear Existingは、現在の設定やクリック操作に応答する前に、以前の動作をクリアします。

PCB Rules And Violationsパネルを使用してルールが適用されるオブジェクトを調べる方法は、ルールの適用範囲を定義するクエリを作成する際に特に便利です。 パネルからルールを直接編集できるため、 目的のオブジェクトが適用範囲に含まれるまでクエリを微調整できます。

PCB Rules and Constraints Editorダイアログでの確認

PCB Rules and Constraints Editorダイアログにはクエリのテスト機能があり、特定のルールがどのオブジェクトに適用されるかをすばやく確認できます。テストするルールのダイアログ右上にあるボタンをクリックします。 Test Queries Resultダイアログが表示されます。

Test Queries機能を使用して、ルールの適用範囲を定義する式に該当するオブジェクトをすばやく確認できます。 
Test Queries機能を使用して、ルールの適用範囲を定義する式に該当するオブジェクトをすばやく確認できます。 

Test Queries Resultダイアログ

Expression result 式の適用範囲に含まれるオブジェクトの数。
Objects applicable to rule 式と現在のルールの種類に基づく、適用対象オブジェクトの数。
Expression and rule priority 
(単項ルールの場合のみ)
現在のルールの式、種類、 優先順位に基づくオブジェクトの数 (優先順位がより高いルールがある場合、そのルールの適用範囲に含まれるオブジェクトは、この値には計上されません)。
Rules with highest priorities(単項ルールの場合のみ) 優先順位がより高いルールがある場合は、その一覧と、各ルールに適用されるオブジェクトの数 (各ルールのExpression and rule priorityの値)がダイアログに表示されます。
Working in the dialog

ダイアログ右側のリンクをクリックすると、それぞれのケースで適用対象となるオブジェクトを、設計スペース内で直接フィルタリングできます。

Maskドロップダウンを使用して、 PCBドキュメント内で対象オブジェクトをどのように強調表示するかに応じて、 Normal、 Mask, 、または Dim を選択します。 

Zoom にチェックが入っている場合は、PCBドキュメント内で対象コンポーネントが拡大表示されます。

 

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