Pi.MX8オープンソースコンピュートモジュールプロジェクトの第2回へようこそ!この記事シリーズでは、NXPのi.MX8Mプラスプロセッサを基にしたシステムオンモジュールの設計とテストについて詳しく説明します。
前回の更新では、このプロジェクトの背景と、モジュールに必要な機能、そしてそれらを実装するために使用したいコンポーネントについて議論しました。
今回は、回路図の構造とPCBレイアウトを始める方法に焦点を当てます。
まず、回路図がどのように構成されているかを見てみましょう。回路図の取り扱いには、一般的にフラットデザインと階層デザインの2つのアプローチがあります。
フラットな回路図は、いくつかのシートに分割された大きな単一ページの回路図として最もよく表されます。例えば、オフシートコネクタを使用してシート間の接続を確立できます。
階層的な回路図では、設計を機能ブロックに分割し、それらをシートシンボルとして表現することができます。これらはさらに相互接続されたり、ネストされたりすることもあります。このアプローチは、大規模な設計においてよく使用され、大きな回路図を独立して設計および閲覧できるブロックに効果的に分割することができます。これらの機能ブロック間の接続は、シートシンボル上に表されるポートを使用して確立されます。電源オブジェクト(VCC、GNDなど)を除き、スキーマティックシートをリンクするためにはポートのみが使用されます。
Pi.MX8の回路図は、この階層的トポロジーを使用しています:
設計はいくつかの機能ブロックに分割され、すべてが一つのトップレベルシートで表されます。ここで、別々のシート間のすべての接続が確立されます。この設計は、一つの階層レベルのみを使用します。
iMX8 SoCはいくつかの部分に分割され、複数のシートに配置されます。トップレベルシートでは、ページの中央に大きなシンボルがSoCを表しています。ページの左右両側にある二つの大きなシートシンボルは、Pi.MX8モジュールの二つのボード間コネクタを表しています。その他のすべての機能ブロックは、それぞれ独自のシートシンボルで表されます。
各ページは同じ設計哲学に従います。回路図のページを離れるインターフェースは、インターフェースの電圧レベルを表すために色分けされています。電力分配ネットワークの一部であるネットは、太い線幅で描かれます。
特定の設定設定、命名規則、または一般的な備考のための注釈を統合することは、デバッグと立ち上げプロセスを加速し、PCBルーティングプロセスのためのリマインダーとして機能することができます。
注釈と色分けを含む回路図ページ
Altium Designerの回路図にExcelスプレッドシートから、またはデータシートから取ったスクリーンショットから注釈を追加することは、Ctrl+C、Ctrl+Vと同じくらい簡単です:
回路図自体は現在も変更の対象であり、したがってまだ開発中です。さらなるアップデートで回路図についてさらに詳しく掘り下げます。
回路図は次の数週間でいくつかの小さな変更を経験しますが、すでにPCBレイアウトの計画を進めることができます。
レイアウト計画フェーズでは、レイヤースタックを定義し、基板のルーティング戦略を計画したいと考えています。レイヤースタックとルーティングアプローチを定義する最初のステップとして、基板上に重要なコンポーネントを配置することができます。これにより、スペース要件とルーティング密度を見積もることができ、どちらもレイヤースタックとルーティング戦略を定義する上で重要な要素です。この文脈での重要なコンポーネントとは、以下の例のように、コンポーネントの配置に大きな影響を与える部品のことです:
PCB上で事前に位置が定義されている部品、例えばコネクタ、指示用LED、SMDスタンドオフ;
多くのネットをルーティングする必要がある部品、例えばSoCs、メモリデバイス、MCU;
多くの基板スペースを占める部品、例えば大きなインダクタ、スイッチ、ヒートシンク。
Pi.MX8モジュールにコンポーネントを配置する前に、まずいくつかの境界条件を定義したいと考えています。モジュールの文脈では、これらはモジュールのフォームファクターによって指示される機械的特徴と寸法です。
使用するMCADツールのリストに応じて、MCAD CoDesignerを使用してこの情報をPCBレイアウトエディタに渡すことができます。この場合、Spaceclaim Engineerを使用して作成されたDXFファイルをインポートします。このDXFの輪郭は、「Reference」と呼ばれる新しい機械層にインポートされ配置されます:
PCBの機械的寸法とコネクタの位置
輪郭が配置されたら、PCBエディタのスナップオプションを使用して、正しい位置に取り付け穴を追加できます。ボード間コネクタは、モジュールのボトムレイヤーに同じ方法で配置できます:
取り付け穴とコネクタのPCB上での位置決め
トップレイヤーでは、左上の取り付け穴の下に外部アンテナ用のU.FLコネクタが配置されます。コネクタの下には、WiFiとBluetoothの操作用のチップアンテナが配置されます。このオンボードアンテナの位置は変更されるべきではありません。多くの既存のベースボードがアンテナの位置の下に銅のキープアウト領域を使用しているからです。
アンテナは、チップアンテナ自体だけでなく、一部の銅ジオメトリとマッチングコンポーネントを配置する必要がある参照点も含むライブラリコンポーネントです。この情報はアンテナのデータシートで見つけることができます。この情報をライブラリコンポーネントに埋め込むことで、事前に定義されたジオメトリが偶然変更されることがないようにします。
アンテナの位置の定義
この段階で、ルーティングやコンポーネントの配置が可能なボードスペースを定義する際に、PCBの端に沿ってガードリングを追加することも意味があります。ガードリングは、PCBの端に沿って全ての層で走る銅トラックで、定期的にVIAを使用してグラウンドに接続されます。ボードの端に沿って配置されたガードリングは、内部層から環境への放射エミッションを防ぎます。ガードリングは、表面の汚染を通じて流れるリーク電流を、高感度な高インピーダンスノードを持つエリアから遠ざける必要がある精密アナログ電子機器など、PCB上の他の構成で使用されることもあります。このような特徴が必要な場合、これらもレイアウト計画フェーズ中に考慮されるべきです。
この初期設計段階で基板の端にガードリングを配置することが重要なのは、後からこの機能を追加するのが難しくないように思えるかもしれませんが、ガードリングはかなりのスペースを取る可能性があるからです。通常、銅の形状は加工された基板の端から最小0.2mm~0.3mmの距離を保つ必要があります。例えばガードリングのトレース幅が0.6mm、ガードリングと残りの銅トレースとの距離にさらに0.1mmを加えると、基板は各方向に突然2mm小さくなります。特にコネクタが基板の端に近く配置されている場合や、基板上のコンポーネント密度が非常に高い場合、これはルーティング中に大きな違いを生むことがあります。
ガードリング付きPCB
コンポーネント配置において考慮すべき別の制限は、特定のコンポーネントが機械的ストレスに対して敏感である可能性があるという事実です。エンクロージャ内でのPCBの取り付け状況に応じて、基板の特定の領域は顕著な機械的ストレスを経験することがあります。このようなシナリオの典型的な例は、外部の取り付け圧力をPCBに適用する取り付け穴やヒートシンクです。
それはPi.MX8モジュールにも心に留めておくべきことです。このモジュールは、4つの取り付け穴を使用してアルミニウム製の筐体内に取り付けられます。この構成では、回路基板と筐体が互いに剛接続されています。アルミニウムはFR4と異なる熱膨張係数を持っているため、システムが加熱されるとすぐに基板が歪み始めます。この効果の大きさは、関与する具体的な材料特性と組み立てによって見られる温度差に依存します。
アルミニウム製の筐体内に取り付けられたモジュールの熱膨張をシミュレートすることができます。変位ベクトルの勾配を計算することで、特に取り付け穴の近くで基板が動きを経験することがわかります:
熱膨張による機械的ストレス
PCBが高振動環境で使用される場合、取り付け穴の近くで高いストレスが発生するという同じ原理が適用されます。
しかし、なぜこれがPi.MX8モジュールにとって重要なのでしょうか?モジュール上には外部の機械的ストレスに敏感なコンポーネントがあります。これらのコンポーネントは大型のセラミックキャパシタです。これらのキャパシタは機械的ストレスを受けると簡単に亀裂が入ることがあります。しばしば、キャパシタは短絡を起こして全システムの壊滅的な故障を引き起こします。このため、大型のセラミックキャパシタは取り付け穴やVカットされたボードの端に近づけて配置してはいけません。後者はパネル分離時にも高い機械的ストレスを経験します。キャパシタが大きいほど、PCB内の機械的負荷に対して敏感になります。
私たちにとって、これはソフト終端を使用しない0603より大きなセラミックキャパシタを取り付け穴から少なくとも3.5mm離して配置することを意味します。この数値はボードの取り付け状況によって異なり、Pi.MX8ボードのシミュレーションから導き出されました。
これを念頭に置いて、Pi.MX8ボード上の主要コンポーネントの予備配置は以下の通りです:
主要コンポーネントの予備配置
このコンポーネント配置の背景とそれがレイヤースタック選択に与える影響については、次のアップデートで取り上げられる予定です。Pi.MX8モジュールの進捗にご注目ください!