量産リリース
Language
Parent article: Vault によるエレクトロニクス設計
リアルタイムで優れた(利益のある!)エレクトニクス製品を作成する楽しみとして、PCB デザインでのレイアウト、またはテストする専門的知識、物理的な FPGA デバイスで実行するエンベデッドデザインの操作等がありますが、現実的にそれを実感できるのはその半分です。デザインを市場へ出す準備を考慮すると、安く見積もったプロセスでリリースする必要があります。
管理されたリリースプロセスを行わないで、長い間、完全な製品を追跡することは多くの危険があります。特定のリリースで全ての必要なソースデザインファイルがスナップショットとして含まれていなかったとわかった時、以前のレビジョンの製品に戻ってリリースする必要があることを想像してください! それは問題ありません。そのリリース(信頼できるガーバーやその他の製造、実装情報)のためのフォルダから、生成された出力ファイルを得ることができます。しかし、それらの '信頼性のある' 出力は上書きされている、または変更されていることを想像してください。リリースプロセスがもっと強固であれば。
この答えとして Altium Designer には、Altium の幅広い設計データ管理システムの一部としてボードデザインリリース管理があります。そのボードデザインリリースプロセスは自動化され、手動によるリリースのような危険が無くボードデザインプロジェクトをリリースできます。特定のプロジェクトをリリースする時、ソースデザインのスナップショットは生成された出力と一緒に扱われアーカイブされます。リリースデータは特定の Item (ターゲットの Altium Vault 内にある実体で、その設計プロジェクトから作成し、会社が販売する明確な製品を表します)のレビジョンとして保存されます。これは、Blank Board(製造業者によって製造された)、または Assembled Board(部品表に従って指定したコンポーネントを実装した bare ボード)のどちらかになります。
結果として、最も優れたボードデザインリリース管理が可能です。設計プロジェクトをバージョンコントロール下の Design Repository で監視、バックアップ、管理するだけでなく、ターゲットの Altium Vault(強固、安全、確実)内で類似の方法でそのコンフィギュレーションもリリースできます。
鍵となる利点
- バージョンコントロールと統合。もし、プロジェクトがバージョンコントロール下の場合、システムは全てのファイルをリリースする前にチェックインして最新にする必要があります。これは、設計ドキュメントを失わないようにするため、"private copy" を技術者のハードドライブに置けないようにします。このルールは、リリースした製品を生成するために使用した設計ドキュメントを追跡する時間を節約できます。
- 強固な追跡。新しいレビジョンの Item が生成される時、リリースプロセス中、Altium Designer はバージョンコントロールのリポジトリアドレスやプロジェクトのレビジョンを記録し、この情報を vault に渡します。この方法は、将来的にどこでもバージョンコントロールから設計プロジェクトの全てのファイルのスナップショットを取り戻す(ソースの設計ドキュメントの最初のチェックインに戻って、最新のリリースされたレビジョンから追跡する)ことができることを意味します。
- 'One-shot リリース'。システムは、設計プロジェクトの設定を目的の Item のレビジョンへ一度、リリースできるだけです。実際に、成功したリリースは参照した Item Revision のリリースデータを渡す(保存する)結果になります。それからそのレビジョンを完了します。追加のデータはその同じレビジョンに生成、リリースできません。
- 自動化された繰り返しできる設計リリースプロセス。ワンタッチリリース – 手動プロセスでなく安全です。リリースデータの確認、出力生成、最後の引き渡しを介して、設計ファイルのスナップショットを得ることから、目的の vault の Item Revision への相互作用はありません。もし、プロセスの一部が失敗した場合、リリースは失敗します。
- 設計リリースプロセスの統合部分としてデザインを確認する機能。リリースプロセスは、デザインソース(独立したものを含む)の 'ロックされていない' スナップショットから働きます。そして、リリース前の確認は、リリースを開始する前に確実に実行されます。しかし、完全な設計データにするために、リリースプロセス 'フロー' へ確認のためのオプションを追加できます。標準の回路図の ERC チェックや PCB の DRC チェックがありますが、ソースプロジェクトと PCB が同期し、フットプリントが最新で一致していることを確認するためにソースライブラリに対してボード上のフットプリントを比較する機能もあります。もし、確認のチェックが成功しない場合、そのリリースは失敗します。
- 設計リリースプロセスから生成されたデータファイルは、Item ID や Item Revision ID と共にプリフィックスが付けられます。そして、どのレビジョンのどの Item データを構築するために使用するかに関して、あいまいになりません。
- vault から Amazon S3、FTP サーバ、Box.net、またはネットワークベースのフォルダのような共有された保存媒体へ直接、リリースデータを配布する機能を提供。これは、外部の人が vault にアクセスできないように安全な方法で vault データを共有できます。
PCB Project コンフィギュレーション
Related article: PCB Project Configurations
最善のもの(革新的なデザイン)を作成する設計チームがあります。一方、最終的な製品(物理的に具体化した、回路図)を構築するためのデータを扱うサプライチェーンがあります。しかし、設計データから作成する Item をどのように指定しますか? 形式的なコンフィギュレーション構造で、Design Repository のソース PCB プロジェクトから Altium Vault の特定の Item へマップするために、Altium Designer では PCB Project Configurations の概念を使用します。
コンフィギュレーションは実際の設計プロジェクトの一部で、設計分野から製造分野へリンクさせます。各コンフィギュレーションは、アイテムを構築するために製造の組織が必要とするデータを定義して、構築したい Item を表します。ボードデザインプロジェクトをリリースする時、そのプロジェクトのコンフィギュレーションをリリースしています。生成された 'リリースデータ' は、そのコンフィギュレーションの一部として指定した目的の Item のレビジョンに保存されます。
ボードデザインプロジェクトの各固有のコンフィギュレーションは、そのプロジェクトによって参照された Vault の固有の Item にマップします。コンフィギュレーションをリリースする度に、生成されたデータは目的の Item(Item Revision)の新しいレビジョンとして(内に)保存されます。そのため、コンフィギュレーションをリリースする前に、リリースデータを受け取るための新しい Item Revision を作成し、このレビジョンが Planned の状態であることを確認する必要があります。
ボードデザインプロジェクトは、本質的にパラメータです。しかし、これは何を意味し、どのようにコンフィギュレーションや、コンフィギュレーションから製造した Item に関連しますか? 言い換えると、デザインパラメータは何を作成しますか? それから生成できるデータやどのようにそれらのデータが '実行される' かに関してボードデザインプロジェクトを考慮する場合、その答えは明白です。データは 1 つ、または複数の Output Job ファイルを使用して生成されます。これらのファイルの出力ジェネレーターは順番に Variants を使用して実行できます。Output Job ファイルを実行(できるだけ異なるように)するために使用したバリアントを変更することで、デザインの相違や固有のコンフィギュレーションを作成できます。それから、本質的にバリアントや Output Job ファイルはデザインの変数 'パラメータ' (デザインパラメータを作成する実体)です。
実装の視点から、あるボードデザインプロジェクトは同じ製造した bare ボードを使用するがそのボードに実装するコンポーネントが異なる場合に、複数のバリアントを定義できます。その結果、実装した時、異なる製品となります。例えば、携帯インターネット機能がある通信用のボードのデザインを考えてください。そのデザインの 2 つの実装バリアントにより、2G ベースの通信が可能なコンポーネントを実装したボードと、3G が可能なボードを作成できます。これらは、PCBプロジェクト内で指定し、どのコンポーネントを実装するか、または実装しないか定義したデザインのバリアントです。このような場合、'実装ボードバリアント' として定義できます。また、製造の視点から、(同種の)'製造バリアント' として bare ボードのシルクの変更をコントロールするためのバリアントを使用できます。
ここで作成するポイントは、bare ボード、または実装ボードを作成するために各バリアントを使用すると言うことです。その PCB デザインの固有のコンフィギュレーションを作成する必要がある異なる固有の Item を製造へ渡します。それは、Output Job ファイルに定義した出力を生成するバリアントを選択することです。そのため、コンフィギュレーションを定義する時、Item にそのコンフィギュレーションをマップするだけでなく以下の点を実行します:
- コンフィギュレーションをリリースしている時、データを生成するために使用する Output Job ファイルを割り当てます。
- それらの出力を実行している時、(必要な場合)どのバリアントを使用するか指定します。
携帯インターネット通信デザインを考えた場合、3つのコンフィギュレーションを定義します。1 つは、両方の実装ボードに共通な製造 bare ボード Item をターゲットとし、その他の 2 つは 2G や 3G 実装ボード Item をターゲットにします。各実装ボードの BOM は、製造ボード Item を含みます。
実装プロセス(2G や 3G 実装ボードのために異なる)では、どの Item のどのレビジョンが実装プロセスを実行するために使用されたかを示すために PCB のラベルを含める必要があります。これは、実装時間で PCB に適用するラベルを表す設計プロジェクトのコンポーネントの内容により作成できます。これらは各バリアントになり 2 つあります。
bare ボードは、PCB を製造するために識別できます。これは製造プロセスを行うために使用したどの Item のどのレビジョンかに関連します。
また、コンフィギュレーションはそれに割り当てた Output Job ファイルの一部として確認ベースの出力レポートを定義する機能を通して、リリースプロセスを制限します。これらの確認(ERC、DRC、ソース回路図やPCBデザインドキュメントを同期するチェック、ソースライブラリに対してボード上のフットプリントを比較)により、信頼性のあるデータを製造チームへ送ることができます。
ボードデザイン リリースプロセス
Related article: PCB Release View
リリースプロセス自体は、Altium Designer の PCB Process Manager(PCB Release 画面のユーザインターフェース) を使用して実行されます。この画面は 2 つのモードで操作する 'ダッシュボード' を表します:
- Design Mode – Board-Level 設計プロセスをコントロール、管理します。ここで確認を実行し必要に応じて出力を生成できます。そして、どんな指示も意図したコンフィギュレーションのリリースを実行する前に優先すべきです。
- Release Mode – PCB プロジェクトコンフィギュレーションのリリースを開始します。これはリリースプロセスが実行される場所です。設計プロジェクトの指定したコンフィギュレーションを行い、参照された Item のレビジョンを物理的に作成するために必要なデータを得るためにそれを実行します。
リリースの開始は、Release Mode の PCB Release 画面で 1 つのボタンを押すことで実行される自動化された作業です。様々な段階からなるプロセスは、もし希望する場合、プロセスフローを順番に実行します。下図は全体のフローの段階を示します。また、以降にその詳細を説明します。
- Checkout Snapshot – 独立したものを含むデータのスナップショットは Design Repository からチェックアウトされます。
- Validate Design – 確認のための出力ジェネレーター(リリースするコンフィギュレーションへ割り当てた Output Job ファイルで定義した)が実行されます。これは、Differences Report(ソースや PCB 設計ドキュメントが正しく同期している場合、comparator を使用); Electrical Rules Check(ソース回路図の電気的/設計案を確認); Design Rules Check(指定したボードレベルデザインの制約に関して PCB ドキュメントを確認); Footprint Comparison Report(ソースライブラリに対して最新で一致しているか確認するために、ボード上のフットプリントを比較)の実行を含みます。
- Generate Outputs – Output Job ファイル内のその他の定義した出力が実行されます。これらは、目的の Item(売買できる実際の製品として存在するために作成される物理的な Item からの指示)のリリースを実行する出力です。
- Commit Release – 生成した出力と確認した設計ドキュメントのスナップショットを、指定した Vault に保存された目的の Item の新しいレビジョン(計画したレビジョン)へ作成します。
プロセスフローの全ての段階は正しく実行される必要があります。そうでないとリリースは失敗し、Vault 内の新しい Item Revision に渡すデータはありません。そのプロセスは自動で行われるため(完全な確認、検査)、手動で行うリリースプロセスに関連したエラーの危険はありません。サプライチェーンで使用するために設定されたデータは、設計した製品を製造するために必要となるものです。
コンフィギュレーション リリース管理の全体的な概念は、PCB デザインのコンフィギュレーションがリリースされた時を識別し、この時点に戻って正しいコンフィギュレーションを回復、修正、再リリースする機能を利用できることです。
VCS に基づいた Design Repository に保存された設計プロジェクトについて、リリースプロセス中、Altium Designer はバージョンコントロール リポジトリアドレスとプロジェクトのレビジョンを記録します。そして、この情報を目的の Altium Vault へ渡します。この方法は、今後、どんな時でもバージョンコントロールから設計プロジェクトの全てのファイルと同じスナップショットを取り戻せることを意味します。
リリースしたデータの配布
Related article: Publishing Destinations
ボードデザインプロジェクトから生成したリリースしたデータについて、Altium Vault にはリリースしたドキュメント(Item Revision のためにプロジェクトコンフィギュレーションへ割り当てた Output Job ファイルから Amazon S3、FTP、Box.net のような保存領域へ出力を生成した)を配布する機能があります。配布や共同に関して、これは全体の '製品チーム'(構想から市場へ出すまで製品を作成するプロセスにいる設計チーム、製造チーム、その他)のメンバーが世界で分散する場合に利点があります。
配布は Publishing Destination を定義することです。それから、必要な Item Revision のためのリリースしたデータをその場所にアップロードします。email アドレスを指定することで、データへのアクセスを誰かと共有できます。中国の製造工場から Stuttgart、Adelaide や San Diego の設計チーム、太平洋を渡る飛行中の Project Director まで、新しいリリースについて知る必要がある人達は、Item を構築するものと共にデータを確認、議論、利用するために共有(コントロール)された published フォルダへリンクして受信ボックスにメールを受け取るでしょう。