Altium Designerのベストプラクティス(パート2) - AltiumLive 2022

David Haboud
|  投稿日 February 3, 2022  |  更新日 July 11, 2022

このセッションでは、ネットクラスやルールを使って設計意図を伝えるために回路図を使用する際のベストプラクティスをご紹介します。また、部品、ルール、ネットに優先順位とクラスを使用して、複雑な設計ルールを構築する方法も学習していきます。

ハイライト:

  • 設計プロセスにおけるActiveBOM文書の活用
  • 設計要件を理解 

トランスクリプト:

デビッド・ハバウド:
始めましょう。皆さん、ようこそ。デビッド・ハバウドです。Altiumでプロダクト・マーケティング・エンジニアをしています。本日は、Altium Designerのベストプラクティスをご紹介します。このプレゼンテーションは、「ベストプラクティス」に関する講演の第2部です。ですから、新規ユーザーの方や、ルール作成や情報提供の基礎から学びたい方は、先に「ベストプラクティス パート1」をまずご覧になることをお勧めします。   

そこで今日はまず、PCBについて話す前に、回路図側からルールを定義することである「回路図ディレクティブ」について説明します。その後、PCBに話題を移した後は、複雑なルールの構築、ルールの複雑なスコープを作成するためのクエリ言語などの使用、優先順位付けがある場合の作業、違反に対する調和の構築、違反の対処方法などについてご説明します。   

そこからは、設計レビューについても少しお話します。さまざまなステークホルダーがいる場合に、プロセスを少しでもスムーズにするためにできることがあります。このセクションでは、Altium 365でプロジェクトの作業をしながら説明します。プロジェクトはワークスペースでホストされます。そこから、出力ファイルの生成におすすめのファイルを紹介していきます。そして、これらの出力ファイルを手に入れたら、Altium 365ワークスペースのウェブインターフェースでもう一度確認し、すべての情報を製造業者に直接提供する方法について説明していきます。

それでは始めましょう。設計プロセスを開始する際に最初にすべきことは、設計要件を深く理解することです。新しい設計に取り組む際、要件を明確にするときに直面するいくつかの課題があります。   

まず、一般的な要件を明確にしたら、それらがどのように相互作用するかを理解しなければなりません。例えば、エッジコネクタの場合、筐体の中にうまく収まるように、適切なクリアランスを確保する必要があります。また、ルールを明確にした後、違反が発生した場合、その違反を解決したり、必要に応じて免除したり、文書化したりすることは、非常に困難なことです。   

ここで、検証が重要になってきます。これは、製造プロセスに移る前に、確実に設計意図を伝え、正確に処理されるようにするために、ルールを検証することです。そこで、これらの要件を満たしていることを関係者に証明するための文書を作成します。   

そこで、設計要件について、3点ばかり重要なことをお伝えします。1つ目は同期です。設計はすべて2つの要素で構成されています。論理的な要件を明確にする回路図。コネクティビティはこの一例です。さまざまなネットクラスで差動ペアを定義します。このプレゼンテーションでは、ここに焦点を置きます。   

もう1つは、PCB。定義した要件やルールが、実際のアプリケーションに反映されることになります。これらは、先程述べたように、筐体の適切なクリアランスや、インピーダンスプロファイルの適切な幅などが定義されていることが非常に重要です。   

これらを明確にし、これらの要件が回路図かPCBか、どちらに影響を及ぼすかを把握したら、要件をルールにまとめるという次のステップに進みます。ここでは、部品のクリアランスなど、要求を分類する必要があります。その後、範囲を明確にします。範囲が適切に設定されていないルールを作成すると、意図したレベルの検証ができなくなるため、範囲設定は非常に重要です。そこで、同様に重要なのが優先順位付け。ルールには階層があります。これについても説明していきます。そして、設計要件を明確にする中で、次に取り組まなければならないのが、相反する範囲の削減です。   

そこで、まずは「同期」について説明します。先に述べたように、設計プロセスにはいくつかの側面があります。私たちは、設計プロセスのすべての領域に適用される要件、対応するルールを作成します。先程お話ししたように、ルールの中でも、今日は、回路図ディレクティブに焦点を当ててお話ししていきます。回路図の選択肢としては、「差動ペア」「No ERC」「パラメーターセットのディレクティブ」の3つが主なものとなります。   

「差動ペア」とは、説明するまでもないですが、回路図側から、互いに関連するべきネットを識別する方法です。ECOプロセスを経て、それをPCBに渡すためのルールを作ることができるかもしれません。そこで、差動ペアに合わせて長さを揃えます。   

「No ERC」を選択することにより、例えばフローティングピンのように、プロセスに関係しないエラーを隠します。例えばコネクターに対して、20×2のヘッダーがある場合、すべてのヘッダーピンがネットに接続されるわけではありません。これらのフローティングピンに「No ERC」を設定することで、問題を解消することができます。   

最後にパラメータセットですが、パラメータセットでは新しいネットクラスを作成することができます。例えば、SPIやI2Cのネットにさまざまな信号が含まれているとします。これらをまとめてパラメータセットを作成し、回路図側からPCBレイアウトに必要なネットクラスを定義することができます。   

ここまで、さまざまな方法でディレクティブを出すことができることを説明してきました。後ほどAltium Designerを使ってどのように指示を出すかを説明しますが、ここでは次の段階として、複雑なルールの構築について説明します。また、この5つのステップは、複雑なルールのみで使用されるものではありません。これは、すべてのルール作成の基本となります。まず最初するべきことは、先程述べたように、識別し、分類していくことです。新しいルールを作成する際には、すべてのルールがタイプごとに分類されます。   

では、まず最初に行うことは、この画像にあるように、作成するルールの種類を見つけることです。まず、クリアランスを定義する電気ルールを作成するとします。自分が取り組みたいルールの種類がわかったら、識別情報を作る必要があります。まず、できる限り説明的な名前を付けることから始めます。コメントもつけることをお勧めします。次に、適用範囲を明確にしていきます。この画像のように、ルールには最初のオブジェクトがあり、それはネットクラスSPIに対応している必要があります。そして2つ目のオブジェクトは、カスタムクエリです。これらをこれまで扱ったことがない方のために、これからこれについてもう少し説明します。   

これを少しずつ解析していきます。カスタムクエリから入った場合、ネットクラスSPIにあることがわかります。そして括弧があり、条件が回路図の電源の部品クラスやプロセッサのインターフェースの部品クラスにあれば、その2番目の項目に一致します。これらのクエリの構築方法の手順については、すぐに説明します。   

そこから範囲を定義したら、今度は値を定義していきます。これは非常にシンプルです。すべてのルールには、ユーザーがルールを適切に定義するためのグラフィカルなインターフェースがあります。そこから、先程述べたように優先順位を調整できます。範囲と優先順位はとても重要です。範囲を正しく定義していても、優先順位が間違っていると、ルールが正しく適用されません。   

なお、トップレベルでは、優先順位の扱い方として、ルールは優先順位の高いものから順に適用されます。あるオブジェクトがルールの適用範囲の1つを満たした時点で、そのオブジェクトの優先順位が下がることはありません。つまり、極めて一般的なルールを一番上に設定すると、その下にあるすべてのルールをブロックしてしまうことになります。ですから一般的には、最優先のルールを極めて具体的に設定し、下に行くほど一般的なものにしていくのが良いでしょう。   

次のステップは組織化です。ルールの範囲について少しお話ししていきます。範囲については、ここでは2つのものに焦点を当てます。まずはクラス。これには部品クラスとルールクラス、ネットクラスといったものがあります。これは、同じ種類の設計オブジェクトをクラスごとに分類することで、将来的に見つけやすくします。   

さらに、ルームについても説明していきます。ルームとは、回路図の情報をPCBに取り込む際に、最初のECOプロセスで生成されることが多いものです。これは、プロジェクトのオプションで構成されます。ルームを無効にしたり有効にしたりする方法がわからない場合は、それに関するドキュメントをお読みください。しかし、ルームがあると、非常に便利なことに、ルールに合わせてルームを調整し、「ネックダウンにはBGAで」というような細かいルールを作ることができます。キープアウトを指定したり、すべてを残すべきエリアを指定したりすることができます。   

ルームの素晴らしい点は、回路図を使って作成されると、すべての部品が自動的に結び付けられる点です。そのため、何かを再利用したい場合や、再利用ブロックを再利用したい場合、ルームは同じようなレイアウトを繰り返し再現するのに非常に便利です。   

先程、クエリ言語に焦点を当てると申しました。これには2つのオプションがあります。クエリビルダーとヘルパーです。ビルダーのほうは少しインタラクティブです。ドロップダウンメニューから条件の種類を選ぶように指示されます。そこから、追加の条件値が提供されます。   

先程、カスタムクエリの画像をお見せしました。こちらはそれをよりわかりやすくしたものです。これらのクエリは同じものであることがわかります。しかし、両者の構築方法は全く異なっています。そのため、最初は、クエリ言語の用語やクエリ言語の構文に基づいて物事を構成する方法を学び始めた場合は、ビルダーを使うのがいいでしょう。そして作業が進むにつれ、私はクエリをよく使用しています。それは私がコーディングに精通しているからかもしれません。私はこの種の環境で作業するのが好きです。このことは後ほど詳細に説明していきます。   

ルームに話を戻します。先に述べたように、ルールとは基本的にPCB上に定義したリジョンのことです。ルールと組み合わせ、リジョンとルールがあれば、実質的にはルームができあがります。さらに、ルームと別のルールを組み合わせることで、非常に特殊な配置、非常に特殊なルーティング、異なるタイプのルールを作成することができます。

基本的には、ルールの範囲を簡単に設定するために、異なる種類の設計オブジェクトをどのようにグループ化するかという話をします。ここまで、クラスとルームの話をしましたが、これがメイントピックになります。   

これは、BGAの画像です。ご覧の通り、トレースはルームに入るとすぐに、より小さな幅にネックダウンします。右の画像を見ると、このような効果を出すためにカスタムクエリが使用されていることがわかります。ここで注目したいのは右下隅の部分です。ルーム内とタッチルームがあります。これら2つのオプションの機能は異なります。そのため、クエリの中でどちらを使用するかを慎重に考える必要があります。ルーム内はルームの中に完全に含有されているもので、タッチルームはより一般的なものです。ですから、範囲を定義するのにルームを使用する場合は慎重になってください。   

さて、ここまでルールのまとめ方について説明してきましたが、ここでは、設計プロセスで重視することをお勧めする6種類のルールについて簡単におさらいしましょう。まずは、電気クリアランスがあります。これは、配線上のものと部品内のパッド上のものの両方を含みます。   

次に、幅、ビアスタイルがあります。その際、通常のホールビア、ブラインドビア、埋設ビアのいずれを扱うかを把握しておく必要があります。ビアにはさまざまな種類がありますが、それぞれの構造について学んでください。次に、部品クリアランスがあります。当然ですが、部品にクリアランスがなければ、別の問題が発生します。筐体の中に収まらないか、製造に回しても実際に製造が不可能な設計などの問題です。   

次に、ポリゴンのコネクトスタイルがあります。これは、ビアとの調整において非常に重要です。例えば、ポリゴンポアとグラウンドビアがどのように相互作用するかを定義することが重要で、使用するポリゴンコネクトスタイルによって、電流の通り方や放熱の仕方が異なってきます。   

最後に、半田の質量膨張があります。これについてはあまり詳しく説明する必要はないでしょう。こちらは設計におけるさまざまな物理的制約をもう少し詳しく説明するための画像です。これは、この筺体の反対側です。ここでは、高さに制約があります。換気口用のものもあります。設計全体でアライメントが適切かを確認する必要があります。   

まず、ルールと違反パネルについてお話しします。先に述べたように、これはPCBエディター内にあります。パネルでは、識別、ナビゲーション、修正の3つを行うことができます。まず、パネルはすべてのものを34のルールクラスに分類しています。これにより、必要に応じて個々のレベルまたはバッチレベルでDRCを実行できるようになります。これにより、クリアランスチェックや、クリアランス制約をすべて一度に実行することができます。また、個別でルールを実行することもできます。これにより、フルDRCを行う際に取り込まれるすべての情報を最小限に抑えることができます。   

設計を始める際に、回路図から情報を取り込むと無数のエラーが発生することがあります。そのため、エラーの種類を簡単に特定できるようにすることは非常に重要です。エラーを特定して原因にたどり着くことができると、違反からクロスプローブし、設計上で注目すべき箇所を明らかにすることができます。パネル上部には、表示される違反の種類により「ズーム」や「クリア」などを選択できるオプションが表示されます。   

もう1つ重要なことは、必要な違反もあるということです。ここでもう一度、エッジコネクタについてお話ししたいと思います。通常、異なる部品と基板の端や基板外形との間にはクリアランスがあります。これは、違反を適用しないユースケースとなります。非適用の違反はすべて記録されます。コメントを追加する必要があり、入力後すべての違反とすべての非適用の違反が掲載されたレポートを作成することができます。   

このような検証レポートの最大の利点は、設計要件が論理的および物理的なレベルで満たされていることを証明できることです。残りの問題は、非適用の違反に分類されるか、文書化されます。これにより、すべての問題に追跡可能性が確保されます。例えば、この先この設計に戻る必要があったり、再度修正を行う必要があったりした場合、これらの情報はすべて次回のために用意されています。そして何よりも、この情報を同僚、または管理者などの重要なステークホルダー、あるいは製造業者に送る必要がある場合などに、誰とでも共有することができるようになります。   

ここでは、ワークスペース・インターフェース内のデザイン、ウェブデザインビューについて簡単に触れます。ワークスペースにファイルやすべての設計データを保管できる主なメリットは、どのウェブブラウザからでもアクセスできる環境を構築できることです。これは、設計のレビューを円滑に進めるのに役立ちます。これは、すべてのルールの検証と連動しています。つまり、設計では、ECADレベルで定義した論理的な事柄のすべてが、現実的に製造可能であると確信できるところまで到達する必要があります。従って、中に入って色々と確認できるということが非常に重要となります。これについては、製造業者へのリリースの話をするときに詳しく説明します。   

このデモでは、DT01ボードを使用します。これは、昔、Altiumのハードウェアチームが作った古いJTAGコネクタです。こちらは実際に私たちが製造したものです。私も昔の良き思い出として棚に飾っています。この設計に関しては、本当に楽しんで取り組みました。多くの人になじみがあるものです。   

まずは、回路図ディレクティブを見てみましょう。回路図ディレクティブを使ったことがない場合は、通常のプレースメニュー「V for directives」を選択すると、そこに配置することができます。アクティブバーにいる場合、ホールドしたまま左クリックすると、いくつかのオプションが表示されます。   

ここでブランケットを使用します。ブランケットを使えば、このブランケットに含まれるすべてのものにディレクティブを適用できます。この2つのネットでやってみましょう。パラメーターを「Always Shift」に設定します。色々なアイテムを動かすためのスペースがあります。タブを押すと、配置中のアイテムのプロパティが表示されます。これと「電源ネット」と名付けます。   

そこから、さまざまなパラメーターを追加することができます。最初のパラメーターとして、ネットクラスを作成します。これに名前を付けます。他の人が参照しやすくなるように、できるだけ説明的な名前にすると良いでしょう。ここでは「1V8, 3V3 power」と名付けました。これで、この2つのネットが関連していることがわかりました。次に、ルールを追加することができます。この2つのネットは、特定の制約条件付きで、配線されるようにします。これを必要に応じて構成することができます。これは、あまり多くの人に知られていません。レイヤー構成の情報を読み込むことができます。レイヤー構成マネージャーで作成されたインピーダンスプロファイルを利用することができます。今日はそれを説明する時間はありませんが、インピーダンスプロファイルがあれば、この部分で役立ちます。しかし、今日はこれを使わずにいきます。これを10ミル、20ミル、15ミルに変更します。   

利用可能なレイヤー構成でこの情報が入力されていることが確認できます。これを設定します。これで配置を完了することができます。これで、このディレクティブは2つのネットに関連付けられました。ECOの過程でこの情報が伝達される方法を見ていきましょう。   

ここからは、この差分ペアを見ていきましょう。これはUSBのデータになります。回路図から差動ペアをを作成するには、特定の差動ペアディレクティブを使用します。では、もう一度このタブをクリックします。このアンダースコアのネガティブとポジティブが必要かどうかで、システムは差動ペアを識別します。差分ペアの機能を十分に活用するために、ネットの名前を適切に設定してください。   

さて、もう少し情報を追加するために、差分ペアのネットクラスを作成し、それを「USBデータ」と呼ぶことにします。この例では、これが唯一の差分ペアです。そのためクラスを作る必要はないのですが、ここでは機能をお見せしたいと思います。複数の差動ペアを定義し、それらをグループ化する必要がある場合は、クラスを作成します。オッケー。これで完了です。   

次に配置に進みます。もう一方を配置しようとすると、値が消えていることがわかります。ですから、既存の値をコピーしてそれを配置します。ご覧の通り、1つしかないのでここで問題が発生します。その上にカーソルを合わせると、ポジティブなネットがないと表示されます。ただクリックします。ここで、これらのディレクティブを配置する際に、この小さな赤い「X」が表示されていることをお伝えしておきます。これは、電気接続が行われていることを示すものです。それがきちんと接続されていないと、思い通りのコネクティビティを確保することができません。この4つの点で、接続を確認できます。いいですか?  

ここには2つのディレクティブがあります。この設計の随所で確認できますが、私は「No ERC」に設定しました。ある時点で特定の問題が発生し、それが実際の問題でなければ、一般的な「No ERC」に設定することで、違反表示を抑えることができます。オッケー。   

これで設定できました。ECOプロセスを実行する場合、ECOプロセスを実行する時にネットクラスを追加できます。差動ペア、新ルール、差動ペアクラスを追加します。変更内容を実行すると、すべてのDRCが動作しているのが確認できます。   

次に、PCBに取り掛かります。新しい情報をここで設定します。PCBパネルを開くと、差動ペアが確認できます。差動ペアクラスを作成したので、USBがあります。複数の種類の差動ペアがある場合、ここで関連付けられています。この差動ペアは自動的に「D」と名付けられていることに注意してください。これは、これらのデータラインのネットの名前だったからです。ここでも説明的な名前にすることが重要です。これは昔作った設計であり設定されていませんが、これについてお話しましょう。それがあることで「N」と「P」は自動的に名前からそれを抽出します。その後、差動ペアがネット名から名付けられます。   

また、あまり知られていませんが、実際にネットをクリックすると、物理的な名前とネット名の両方が表示されます。ネット名は回路図上の論理的な表記で、物理的な名前はPCB上の表記となります。オッケー。   

これで新しいルールが設定できました。PCBルールと違反パネルを見ていきましょう。ここではいくつかのオプションを設定できます。通常のMask Dimができます。Maskを使います。ルールと違反パネルの優れた点は、すべてのルールだけでなく、ルールクラスに基づいてDRCを実行できることです。ルールクラスでは、個々のルールを実行できます。必要に応じて、個々のDRCも実行できます。一方、設計ルールを使ってERCを実行する場合は、すべてを一度に実行することになります。ですから、できるだけ避けたほうが良いでしょう。   

ルールエディターに来たので、話を戻します。戻ります。ここにいくつかのクリアランスがあります。ここでトップレベルに進みます。ですから、先程申し上げたように、優先順位をしっかりと決めておく必要があります。最も一般的なものから、最も具体的なものへと設定していきます。間違えました。最も具体的なものから、最も一般的なものへと設定していきます。これは、設計オブジェクトがルール基準を満たした時点で、優先順位が下がらなくなるからです。つまり、BGAに差動ペアがある場合、BGAルールよりも差動ペアのクリアランスルールの方が優先されます。繰り返しになりますが、最も具体的なことから始めて、最も一般的なものへとルールを設定していきます。ご覧のように、この最後のは基本的に包括的なルールになっており、すべてのアイテムに適用されます。   

幅の新しいルールを作ったので、幅について説明します。ご覧の通り、ルールが設定された回路図で識別されます。クリックすると、カスタムクエリを実行したいネットクラスに関連付けられており、バックエンドでシステムが利用しているものを確認できます。ここにクエリヘルパーがあります。これを構築したいと考えているとします。まだ確信があるわけではない場合、クエリヘルパーで確認できます。何を確認できるか?部品クラスがあることが確認できます。オッケー。ネットクラスがあります。ネットクラスの名前がここで簡単に確認できます。ここで範囲を簡単に設定するために、ここであるものを簡単に作成することができます。   

他の方法もあります。ネットクラスにはネット「1V8」と「3V3」が含まれるように定義したので、ネットクラスの代わりにビルダーを使うことで、最初の条件がネット「1V8」に属するようにすることもできます。2つ目の条件は、もう一度ネットに属するようにします。そして、この値を見ると、設計にあるすべてのネットを把握していることがわかります。ですから、これとか、これとか言うことができます。また、たくさんのネットがある場合、見失いがちになります。ですから、これで少し見やすくなりました。この状態にすることも、ネットクラスにまとめることもできます。   

グループ化する必要があることがわかっているなら、回路図でネットクラスを簡単に作ることができます。重要なのは、回路図から配置されたすべてのディレクティブは、PCB設計やPCBレイアウトのルールを作るための出発点に過ぎないということです。1つの環境でルールを管理しようとすることが大切です。そのため、ルールに変更を加えてそれを回路図に反映させようとすると、物事がわかりにくくなり正しく機能しなくなってしまいます。このケースでは、先程と同様、1V3、1V8、3V3があります。   

先程お話しした通り、優先順位付けについては、幅とBGAに制約があります。BGAの制約があり、すでに配置されているため、ルームについてお話したいと思います。   

ルームは、回路図やカスタムメイドでアイテムをグループ化するのに役立ちます。このケースでは、BGAエリアを作りました。選択された部品からルームが作成されています。   

そこで注意したいのが、タッチルームとルーム内の違いです。ここにタッチルームがあるとしましょう。そしてここにはさまざまなオプションがあります。ルームに触れるすべてのものが、ルーム内よりも適用範囲が広くなります。再びクエリを行ってみましょう。対象範囲が異なることがわかります。   

ここで、ネックダウンを行います。この幅をこのように関連付けさせたいと思います。ここに電源ネットがあります。PCBでは1V8、3V3、Powerに今から名前を変えていきます。オッケー。これをBGAに優先させます。これを適用します。   

さて、ここでは、この差動ペアのルールに問題があることを知らせてくれています。新しい差動ペアを作成し、差動ペアクラス「USBデータ」に移動しました。同じ8、6、8で設定できたようです。オッケー。   

差動ペアの適用範囲が、USBデータクラスの適用範囲と同じになるようにしました。この状況では、このクラスには差動ペアが1つしか含まれていません。つまり、この特定の状況では、差動ペアに適用範囲を設定する場合と、そのクラスのみに適用範囲を設定することと同じです。もちろん、クラスを使う場合、一般的に、最適化しながらクラスからアイテムを出し入れすることになります。そのため、これらの変更はできるだけ具体的に行うことをお勧めします。オッケー。   

変更を加えたので、再度DRCを実行します。トップレベルでは、ルールクラス、実行可能な個々のルール、そして違反があります。ここには、110個の違反があることがわかります。かなり多いですね。最初のいくつかには制約があります。説明を簡単にするために、ルールクラス、具体的には、ルール制約に関連することを見てみましょう。ここで最大の問題は、すべてのネットがこれらの電源ネットに属しているということが確認できます。ここで優先順位を変更したいとします。ここでも設計ルールを変更します。戻ってきた場合にも優先順位を変えます。今、これが優先順位1とします。優先順位です。この優先順位を上げていきます。   

そこで、異なる優先順位を確認してから、ここに来ると優先順位の選択肢があります。気が変わったとしましょう。BGAを最優先することにしたとします。これを再び適用すると、実行されます。制約違反のある制約が86個あります。これを実行し、優先順位を変えると、違反も変わることがわかります。   

オッケー。ここに戻りましょう。ルールと違反パネルの利点は、これらを選択すると、ルールが適用できる範囲を確認できるところです。設計上で右クリックすると、単項または二項ルールを適用できるオプションもあります。これらの違いは基本的に、どのように範囲が定義されているかということです。ここでは、1つしかありません。一方、このオプションでは二項となっていますね?2つの異なるオプションがあります。これを閉じます。   

オッケー。ここに来ると、「3V3」ネットがあることを確認しました。作業をより簡単にするために、プロパティから、選択フィルターを変更します。Shift Cで消去します。オッケー。現在、部品とルームを選択することができます。追跡してみます。クリックして、タブを押し、ネット全体を選択します。ここでは、グロス・リトレース機能で、リトレースを行うと同時に、設定した新しいルールを自動的に適用することができます。その電源ネットのルールで、ここのトレースを一定の大きさにします。   

そして、違反があった場合はいつでもShift Vで、クリアランス制約の問題があることを確認することができます。これについてもう少し見ることができます。ルールの大半を確認したら...。そう言えば、エッジコネクタの話をよくしていたので、これについても説明したいと思います。基板外形クリアランスについてお話しします。ご覧の通り、端にはいくつかのアイテムがあります。これらはすべてエッジコネクタです。これらはLEDです。ここには2つのエッジコネクタがあります。これらすべてを選択します。選択した違反を適用しないようにできます。ワークスペースにサインインしているので、作成者である私の名前が表示されます。自分の名前や違反した時間、違反を非適用にしたときなどが関連付けられています。非適用の理由は…。すべて左によっているとタイプしにくいですね。マイクが必要です。基板の端でなければなりません。   

オッケー。こうすると、非適用にしたすべての違反を含む、まったく新しいセクションができあがります。パネルのここをクリックしてレポートを選択すると、いつでも、関連付けられたすべての異なるルールのレポートが表示されます。ここでも同じことができます。非適用にしたこれらすべての違反のプロパティを確認し、ハイライトして、すべてを飛ばすことができます。   

以上が、回路図ディレクティブを使ってルールを作成し、ネットクラスごとにグループ化するための基本です。次に、情報提供の定義についてもう少し詳しく説明します。情報提供する際には、これらの情報をすべて正しく作成し、すべての主要なステークホルダーがそれらにアクセスできるようにします。   

製造業者にどのような情報を提供すべきかを判断する際には、必ず最初に製造業者に相談することが肝心です。製造業者ごとに、またプロジェクトによっても、企業内の誰がプロジェクトを担当するかによっても、必要な情報は異なります。そのため、情報を提供する前に、まず相手が何を必要としているかを聞くようにしましょう。   

先程述べたように、これはベストプラクティスのプレゼンテーションパート2です。そのため、個々のファイルの構成については、ここではあまり詳しく説明しません。実際、情報提供に関する専用のウェビナーを用意していますので、さまざまな情報提供について詳しく知りたい方は、そちらをご覧ください。しかし今は、いくつかの推奨事項のみをお伝えします。   

非常にシンプルなルールとして、私は常にActiveBOMドキュメントを使って作業しています。ActiveBOMドキュメントの目標は、より動的なドキュメントにすることです。部品表(BOM)は一般的に、関係者に提出する最終版文書と考えられてきましたが、ActiveBOMでは、設計プロセス全体で、調達にも取り組むことができます。サプライチェーンの問題を簡単に特定できる場合、ワークスペースやConcord Pro、Nexarがホストする管理コンポーネントで作業をしている場合、レビジョン履歴をActiveBOMドキュメントに加えることができます。そのため、設計中に変更があっても、設計や部品の定義を簡単に更新することができます。   

それから、Draftsmanドキュメントは、製造図や実装図を伝える新しい方法となります。ですから、これら2つのドキュメントについてもっと詳しく知ることをお勧めします。簡単には説明しますが、ActiveBOMドキュメントやDraftsmanで必要な作業すべてについて説明する時間は、このプレゼンテーションにはありません。先程もお伝えしましたが、これらのトピックについて説明しているウェビナーをたくさん出しているので、そちらをご覧ください。それでは、これらについて少し説明します。   

プロジェクトに携わり、OutJobが設定されていない場合、システムはデフォルトのOutJobテンプレートを含めるように促します。そこで、今日は、例を見ながらこれらについて簡単にご説明します。デフォルトで作成されるOutJobは、「実装図」「ドキュメンテーション」「製造図」の3種類です。   

OutJobsを定義したら、次はそれをRelease Managerで関連付けます。リリースしたいデータの種類に合わせて、OutJobを含むようにRelease Managerを構成する必要があります。   

これは、簡単な一例です。バリアントのないアセンブリデータを含めるためのOutJobがあります。詳細をクリックすると、作成されたすべての関連ドキュメントが表示されます。何かがうまくいかなければ、ここで確認できます。完成したドキュメントもそれを開いて、見直すことができます。これらのドキュメントをすべて作成した後に、再確認することは常に重要です。後ほど、情報を提供するための出力ファイルやリリースを見るためのさまざまな方法について説明します。   

ここでRelease Managerが関与してきます。このクラスにいる方は、以前にこれを扱ったことがあるかもしれません。ない場合は、繰り返しになりますが、このトピックに関するウェビナーをご覧ください。特に「Release Manager」について詳細に取り上げているものがお勧めです。ここでは簡単に説明します。先程申し上げた通り、データパッケージにはさまざまな種類があります。左側の赤で強調表示されている部分をご覧ください。製造図や実装図のソースデータやカスタムデータがあります。この下部で見られるように、カスタムデータパッケージを作成することができます。データパッケージは、リリースの異なるレビジョンや設計の各バージョンに関連付けることができます。   

左下にはオプションボタンがあります。これにより、リリースオプションを構成して、作成したOutJobsを適切なタイプのデータパッケージに関連付けることができます。   

ここでは、製造出力実装図を含めた製造図、下にはカスタムデータ、カスタムドキュメントをすばやく確認できます。この例では、私が作業をしているこの設計用の自分だけのカスタムOutJobファイルを作成しました。それが完了すれば、あとは情報を提供するための準備をして公開することができます。   

すべてのドキュメント、関係者に提供すべき情報(OutJob)を作成したら、それをどうすべきかということが多くの人の課題になります。製造業者に公開するにも、コンテンツをリモートで共有する場合には、かなり大きな問題となるからです。また、ライセンシングや外部の人によるファイルの閲覧という点にも問題が生じることがよくあります。誰もが同じファイルでレビジョンしたり、同じソフトウェアで操作できるようにしたりするためには、すべてを調整する必要があり、かなり難しい問題となる場合があります。   

そこで、情報提供について検討するため、このプロセスをちょっとした図にしてみました。特に大きな問題となるのがライセンシングです。すべての人がAltium Designerを使用しているとします。マネージャーなど、ただ単にレビューのためだけに使用する人がいる場合、チーム間で密接に共有・監視されているライセンス数に限りがあれば、それが問題になるかもしれません。   

Altium 365で作業する最大の利点は、ワークスペース上のすべての共有コンテンツにリモートでアクセスできる点です。また、Webブラウザーを使っている間はライセンスが不要になるほか、ライセンスがなくてもどのブラウザーからでもリモートで閲覧できます。これなら、Altium Designerのライセンスを使う必要がありません。元々ソフトウェアがインストールされておらず、第三者の情報を使用しなければならなかった人たちとも、設計ファイルを共有することができます。もちろん、外部アプリケーションを使用する場合は、問題が発生する可能性があります。さらに、自分のワークスペースにホストされ、共有されている設計ファイルには、直接コメントすることができます。   

ここでは、Release Managerを使ってファイルを公開する方法について説明しました。後悔が行われると、ワークスペースで作業している場合はもちろんのこと、そのリリースパッケージはそのプロジェクトに関連付けられます。ワークスペースを使用している場合は、「ガーバー比較」などの新しいタイプの機能を使用することができ、ガーバーを2つの異なるリリースで比較し、その違いを確認することができます。もちろん、自分のワークスペースでデータをホストしていない場合でもこれはできますが、その場合は手作業が増えます。そしてもちろん、このインターフェースにはAltium 365プラットフォームが採用されています。そのため、特定のガーバー比較を行う際は、Altium Designerに統合されているCamtasiaに戻る必要があります。  

多くの方がCamtasiaを使ったことがあると思います…。すみません、Camtasiaではなく、Camtasticです。Camtasiaは私の録音ソフトでした。Camtasticです。すみません。何しろ、このユースケースに特化して合理化された一定のユーザーインターフェースを導入することは、常に素晴らしいことです。   

この「ガーバー比較」機能を是非、チェックしてみてください。これについてあまり詳しく説明する時間がありません。では、次の話に移ります。   

データパッケージを定義したら、データパッケージをリリースしたことになります。これで、Altium 365プラットフォームやNexarエコシステムを通じて、製造業者と共有できるリリースパッケージができました。この点については、さまざまな企業や製造業者との調整を進めています。当社は数年前にPCB:NGを買収しました。現在、MacroFabと連携して次のエコシステムについて共に検討中です。   

すべてのデータパッケージが揃ったら、簡単なメールでどんな情報を製造業者に送信するかが選択できます。製造業者はWebブラウザーを通してそのすべてにアクセスし、作業を簡単に続けることができます。   

このプロセスは、3年前よりもずっとスムーズになったと感じています。以前は、リリースパッケージをすべて入手して、zipで圧縮していました。そして、zipファイルに適切な名前をつけて、何か変更があれば、すべてをやり直す必要がありました。このような機能はすべてAltium 365プラットフォームに組み込んであるため、そんな心配はもうありません。   

では、もう一度このツールを見てみましょう。最後に質問を受け付けます。最初にActiveBOMを見てみましょう。イチオシの最大の変更点は、設計をよりアクティブかつダイナミックに表現できる新しいドキュメントタイプが追加されたことです。これらは設計データに直接リンクされています。そのため、何かを更新する必要がある場合、すべての情報がつながっているので何度もコンテンツを再出力する必要がありません。   

このActiveBOMドキュメントでは、設定方法についてはあまり詳しく説明しませんが、いくつか強調しておきたいことがあります。ここでは、多くの部品のレビジョン状況を確認できます。つまり、私の部品は現在管理された状態にあり、ワークスペースに接続されたことになります。新しいレビジョンが作成されるたびに、右クリックして最新版に更新することができます。これで、すべてが更新されました。さらにお伝えしたいのは、特定の部品の代替品を追加したい場合も、右クリックで簡単にこの作業を行うことができるという点です。ドキュメントにはこのように表示されます。小さな括弧があります。これをクリックすると詳細や情報を確認することができます。   

この例では、製造ライフサイクルから、元々使用していた部品が製造中止となったことがわかります。設計図には、この部品の使用が望まれる旨が記載されています。また、代替品についての記載もあります。これらは代替品です。そして、それぞれの部品選択肢のセクションに、私が設定した希望の部品も記載されています。必要に応じてランク付けもできます。各部品には製造ライフサイクルのステータスがあり、Altium 365 ワークスペースを利用している場合、その情報はIHS市場データセットと関連付けられています。現在私たちは、この情報の伝達をより堅牢にできるように取り組んでいます。現時点では、このデータセットを通じて、ユーザーに自動的に提供されるパラメーターがたくさんあります。   

オッケー。ここに代替品があります。適切にランクを付けることができます。ランク内で、製造業者の品番ごとに整理されています。そして、製造業者の品番の中に、個々のサプライヤーの品番が表示されています。これら業者の在庫情報もあります。料金の内訳もあります。部品に関する情報が必要な場合には、Altiumの部品プロバイダー情報や部品の選好ランキングなどがすべて確認できます。データ管理セクションでは、部品プロバイダーのセクションがあり、信頼できるサプライヤーがすべて表示されています。カスタムコネクションを作成することもできますが、今日はその話はしません。  

もう1つの強力なツールは、このようにさまざまな問題に対するステータスアイコンがあることです。ここでは、製造業者の品番にランクが付けられていません。また、サプライヤーも表示されていません。プロパティを見ると、さまざまな部品表があります。重複した値やデジグネータなどの情報がある場合、記載されていないサプライヤーをすべて選択することができます。異なるアイテムを作成することもできます。繰り返しますが、ここではあまり詳しくは説明しません。ActiveBOMについては専用のウェビナーがありますので、詳細については、そちらをご覧ください。  

 一方で、もう1つお勧めしたいのは、Draftsmanドキュメントです。これらすべてのドキュメントや両方のドキュメントの優れている点は、設計データと直接連携していることです。つまり、設計に変更を加えると、クリックするだけで変更内容をインポートできます。BOMドキュメントでも同じことが言えます。   

更新します。実は、これらのソリューションでは、部品の選択肢を編集することもできます。ワークスペースを使用している場合は、部品レベルで部品の選択肢を定義することができます。そのため、誰かが部品を追加すると、その特定の部品と、作成時に定義された関連品番が自動的に入力されます。また、必要に応じてカスタマイズすることができます。   

オペレーションもできます。部品を変更することもできます。このケースでは、2つの部品があります。代替品を使うことにするとします。2.2マイクロファラッドを使います。希望する場合は、この部品を変更することができます。例えば、設計を公開するので何も変えたくないとします。そのためキャンセルします。   

しかし、重要なのは、ActiveBOMドキュメントが設計プロセスで使用できる生きたドキュメントであるという点です。従来、部品表は、プロセスの最後に作成される単なる部品リストとして使用されてきましたが、これとは対照的です。もっとずっとインタラクティブです。より多くのコントロールがきき、より多くの情報を伝えることができます。   

オッケー。話を戻します。さまざまな種類のドキュメントがあります。もう1つの素晴らしい利点は、どのドキュメントからでもテンプレートを作成できる点です。これも、このプレゼンテーションでは深く触れませんが、このドキュメントタイプに対するすべてのプロパティが表示されます。必要に応じて変更することも可能です。パラメーターやページオプションもあります。ここでお見せしているのは、いくつかのドキュメントの例です。

オッケー。では、OutJobに話を移します。設計が完了し、リリースする際には、プロジェクト名を右クリックするだけで、Project Releaserに移動できます。ここでは、最初に見る予定のOutJobをプロジェクトの外に移動させました。ドキュメント、OutJobsがない場合、デフォルトを追加すれば、自動的に2つのドキュメントを追加してくれます。1つは製造図で、もう1つは実装図です。これでここが空いたので、別のドキュメントを戻すことができます。   

オッケー。この構成を行う前に、これらのドキュメントの違いについて説明します。これは、PDFで作成したものです。PDFにコピーしました。まずは、これらは従来のファイルです。実装図と部品表があります。これに切り替えましょう。オッケー。   

まず最初にここにあるのは、これらの図面を作成するための従来の方法です。非常に静的ですね。設計の全体像は見えません。長い間、この方法で設計が行われてきました。同じような出力ファイルの生成でも…これらすべてのドキュメントは関連付けられており、これらはすべてDraftsmanドキュメントです。この2つのドキュメントでは、見やすさや読みやすさが異なることがかなり明白です。そして、実際、すべてのパラメーター情報がここにあるということが、本当に重要なのです。   

ここにはレイヤースタックの画像や備考まであります。そして、部品の内容は非常に似ていますが、ActiveBOMの利点は、リリースが完了したときにおわかりいただけるでしょう。   

では、Release Managerに戻ります。新しいOutJobsを作成したばかりで、ここには何も指定されていません。問題があるため、クリックすると選択肢が開きます。代わりに、いつでもここのオプションを選択することもできます。ここにはソースデータがあります。それをそのOutJobに関連付けます。これについては先程説明しました。これで、製造図と実装図ができました。リリース先も表示されます。この例では、リリース先はワークスペースとAltiumプロダクトマーケティング部にします。   

また、各プロジェクトを区別するために、リリースパッケージ同様、命名規則を設けています。さらに、バリアンスがある場合は、その情報をここに結びつけることができます。設定を行うと、それに関する情報を少し入手することができます。いいでしょうか?これらがつながりました。   

ここには「Detail(詳細)」セクションがあります。必要に応じて設定できますが、これに関してもここでは詳しく取り上げません。詳細は製造図に関する詳細なウェビナーをご覧ください。では、準備とリリースについて説明します。コンテナが出力され、PDFが作成されたので、リリースされたはずです。オッケー。この例では、戻ってみます。問題がないようにDT01を削除します。これも閉じましょう。   

オッケー。製造図や実装図、オプションに戻ります。もう1つの方を移動したようです。ここに戻りましょう。実装図をうっかり削除してしまったみたいです。スピードアップのため、この2つだけを残してオプションに戻ることにします。オッケー。それでは、準備とリリースです。ドキュメントは私のワークスペースにあるので、すべてのドキュメントはバージョンコントロールにコミットされ、これらのリリース用のアイテムが作成されます。ソースデータと製造図が手元にあります。アイテムを作成します。変更内容を確定するかを確認されます。これらの変更に対するコメントを入力します。一般的に、プロジェクト履歴のタイムラインからアクセスできるようにしたいので、内容の説明となるコメントを残しておくと良いでしょう。   

オッケー。では、これらすべてのドキュメントの作成処理が実行されます。少々お待ちください。すべてのドキュメントが生成されたところで、6つの手順であることに気づくでしょう。ワークスペースで作業しているため、すべての情報はワークスペースのプロジェクトプロファイルに追加されます。つまり、Webブラウザーからアクセス可能になるという意味です。アクセス権を付与された人は誰でも、元の設計図にアクセスすることも、設計図にコメントを加えることも、これらすべての出力ファイルを見ることもできるようになります。

オッケー。ポリゴンのレポート。オッケー。ここでは失敗したようです。問題ありません。すべてに関してもう少し詳しく見ましょう。何があったのか…。ルールに関するレポートもあります。先程作業をしたことをお伝えしました。幅の制約もありますし、非適用の違反もあります。   

それでは、すでにリリースされたパッケージに話を移しましょう。このプロセスのすばらしいところは、データを積極的に結びつけ、すべてが正しく生成される点です。しかし、ここで以前にリリースしたものに戻りましょう。   

オッケー。Webインターフェースを開きました。設計全体、構造関連ファイルが表示されています。これは現在アルファ版です。少しだけご紹介します。ここでも、すべてが最新の設計データと連動しているため、作業終了時に設計図がようやく見られるのではなく、設計プロセス全体を通してすべてのドキュメントを確認できるため、誰にとっても非常に便利なツールです。ActiveBOMドキュメントと同様です。これらすべての情報がこの部品表から抽出されています。ライブラリの健全性も重要ですが、これはまた別のトピックとなります。念のためお伝えしておきますが、部品の定義はすべてここで簡単に見ることができます。部品の場所についての詳細な情報を確認できます。PCBや回路図でデータを確認し、そのデータをすべて読み込むことができます。   

さらに、希望する場合、直接ここにコメントを追加することもできます。この設計のどこにでもコメントは残せます。測定ツールもあります。色々と検索することもできます。さて、R16について、この動きが見れたのではないでしょうか。   

これは本当にパワフルです。これらすべてをダウンロードすることもできます。データを共有するのもコメントを残すのも、ここからとても簡単にできます。先ほど申し上げたように、このデータセットにアクセスできる人は誰でも、Webブラウザーを使えば、ライセンスを使う必要はありません。ですので設計を確認する人の数を増やすことができます。また、最新の設計データで必ず作業することになるため、お互いに違うバージョンで作業しながら話を進めてしまうというリスクを最小限に抑えることができます。   

レイヤー情報も確認できます。ビューレベルで確認できるすべては、Webブラウザーで見られるようになりました。供給エリアもあります。これは部品表に似ていますが、少し観点が違います。   

プロジェクト履歴については先程触れました。コミットコメントはできるだけ説明的になるように書くと良いのはこのためです。ここにリリースされたものがあります。リリースされたものがあればいつでも確認することができます。回路図、ガーバー、部品表を比較することができます。必要に応じてスナップショットをダウンロードできます。そしてファイルを確認できます。   

そこで、「View(表示)」をクリックすると、この特定のリリースが表示されます。このリリースには、他にもいろいろあります。これはまた後日改めて。とにかく、これらを製造業者に送ることができます。どのファイルを送るかを選択することもできます。ファイルを追加し、必要に応じて構成し、パッケージ名を説明的なものにし、製造業者のメールアドレスを入力します。そして製造業者にすべての出力ファイルを自動的に送信することができます。繰り返しになりますが、古いバージョンのドキュメントで作業するリスクを最小限に抑え、すべてのデータを連動させることができます。これにより、すべての可視性が向上し、コミュニケーションが促進されます。   

本日お伝えしたかったことは以上です。質問があれば、お伺いします。

筆者について

筆者について

David Haboudは、Altiumのプロダクト マーケティング エンジニアです。南カリフォルニア大学で、コンピューター アーキテクチャとハードウェア/ソフトウェア設計に重点を置き、電気工学を学びました。Davidは、航空宇宙産業で組み込みソフトウェア技術者としてキャリアをスタートさせました。以来、ハードウェア技術者とソフトウェア技術者間でコミュニケーションをもっと簡単にできるように努力してきました。組み込みソフトウェア技術者時代は、補助電源ユニット向けのファームウェア開発やデータ収集に取り組んでいました。余暇には、カリフォルニア州サンディエゴで、即興劇やスタンドアップ コメディ イベントを主催し、自身も舞台に立っています。

最新の記事

ホームに戻る