TECHNICAL NOTES
小さなマイコン基板のPCB設計 - CraftVia開発記録 #2
前回の記事では、マイコン開発キットに対して感じていた課題を起点に、CraftViaの構想を立ち上げ、最初のCoreとなるSTM32G031搭載ボードの仕様と初期回路図を作成するまでを紹介しました。
今回は、その回路図を実際に製造できる基板へ落とし込むため、Core-S G031 Rev0の外形、部品配置、層構成、配線を設計しました。
基板設計は、回路図上で正しく接続されている信号を、限られた面積の中で実際の銅箔パターンへ置き換える工程です。部品を収めるだけでなく、電源やGNDの流れ、信号の交差、デバッグ端子へのアクセス、Stationとの接続方法なども考える必要があります。
CraftViaの共通規格を維持しながら、最初の試作基板として現実的に製造・実装できる形を目指しました。
25.40 mm角のCore-S共通外形
Core-Sは、25.40 mm、ちょうど1インチ角の基板として設計しています。
基板のNorth、East、South、Westの各辺には8接点ずつ、合計32接点を配置しました。各接点は2.54 mmピッチで、試作段階では一般的なピンヘッダを取り付けられるスルーホール構造としています。
また、基板の向きと電源接続を明確にするため、North-West、North-East、South-Westの3隅にキー端子を設けました。
今回の割り当ては次のとおりです。
- North-West:GND
- North-East:GND
- South-West:+3V3
North側のデバッグ信号をGNDで挟むことで、Station側からSWDへ接続しやすくしています。South-Westの+3V3端子は、Coreへ電源を供給するための接点です。
この外周配置はG031専用ではなく、今後異なるMCUを搭載したCoreでも共有することを想定しています。MCUごとにピン配置は異なりますが、StationやCarrierから見た接続位置を統一することで、Coreを交換しながら同じ開発環境を利用できる構成を目指しています。ただし、通信やアナログ入出力などの信号の割り当てはMCUごとに異なるため、Coreを交換するときには用途側の配線も確認する必要があります。
部品配置で優先したこと
25.40 mm角の基板内には、STM32G031本体のほか、デカップリングコンデンサ、任意実装の外部発振器回路、電源回路、リセット回路、SWD関連回路を配置します。
すべての部品を収めるだけなら複数の配置が考えられますが、回路の性質によって優先すべき位置関係があります。
最初に配置したのはMCUとデカップリングコンデンサです。電源ピンとコンデンサの距離を短くし、電源経路が必要以上に長くならないようにしました。コンデンサのGNDは、近くのビアを通して内層のGND面へ接続します。
次に、任意実装の外部発振器とその周辺部品を、MCUのクロック入力端子付近へ配置しました。外部クロックの配線を短くまとめ、他の信号やビアが近くに密集しないようにしています。標準構成では外部発振器を実装せず、STM32G031の内部クロックを使用します。
SWDIO、SWCLK、NRSTなどの書き込み・デバッグ信号は、基板のNorth側にまとめました。初号機では2.54 mmピッチのスルーホールを使用し、単体でもピンヘッダから直接アクセスできるようにしています。
4層基板を選んだ理由
当初は2層基板も検討しましたが、最終的にRev0は4層基板としました。
今回の層構成は次のとおりです。
- L1:部品実装と主要配線
- L2:GND
- L3:VDD_COREと一部信号
- L4:信号配線
Core-Sでは、外周端子の位置が共通仕様として固定されています。一方、MCUのピン配置はデバイスごとに異なるため、MCUから各辺へ信号を引き出す途中で配線の交差が多くなります。
2層でも配線できる可能性はありますが、配線の蛇行やビアの増加に加え、GNDの連続性を保つことが難しくなります。今回はL2をGND面として確保し、L1とL4を主な信号配線に使用する構成にしました。
L3はVDD_COREの電源領域として使用しつつ、電源面を大きく分断しない範囲で一部の信号も通しています。
4層にすることで、配線の自由度だけでなく、MCU周辺から外周GND端子まで連続したGND面を持たせやすくなりました。
配線ルールを先に決める
部品配置を固めた後、実際の配線を始める前にPCBの設計ルールを設定しました。
配線幅やクリアランスを作業の途中で個別に決めると、同じ種類の信号でも幅がばらつき、後から修正する箇所が増えてしまいます。そこで、一般信号と電源系のルールを分け、配線時にネットごとの設定が適用されるようにしました。
今回設定した主なルールは次のとおりです。mmとmilの併記値は丸めた概数です。
| 項目 | 設定値 |
|---|---|
| 一般信号の標準配線幅 | 0.20 mm(8 mil) |
| 一般信号の最小配線幅 | 0.15 mm(6 mil) |
| 電源系の標準配線幅 | 0.41 mm(16 mil) |
| 電源系の最小配線幅 | 0.25 mm(10 mil) |
| 配線・パッド・ビア間の最小クリアランス | 0.15 mm(6 mil) |
| 銅箔領域とのクリアランス | 0.25 mm(10 mil) |
| ビア外径/穴径 | 0.60 mm/0.30 mm |
| めっきスルーホール(PTH)パッド外径/穴径 | 1.80 mm/1.00 mm |
| 自動配線の曲がり角 | 45度 |
基本的な銅箔領域とのクリアランスは0.25 mmとしました。一部の非接続スルーホールではクリアランス判定が残ったため、該当箇所には局所的な銅箔禁止領域を設け、約0.30 mmの逃げを確保しています。
GNDは主にL2のGND面へ接続し、VDD_COREはL3の銅箔領域を使用しますが、部品のパッドからビアまでの短い配線などには16 milの電源用配線幅を適用しています。
一般的なGPIO、SWD、クロック関連の信号には8 milを使用しました。
ビアは外径0.6 mm、穴径0.3 mmとしました。小型基板ではビアを小さくするほど配線の自由度が上がりますが、製造条件に対する余裕も必要です。今回は試作基板として一般的に製造しやすい寸法を選んでいます。
L2のGND用銅箔領域は、基板外形ぎりぎりまで広げず、基板端から約0.4 mm内側へ配置しました。L3のVDD_CORE領域は、信号配線や異なるネットのスルーホールとのクリアランスを確保しながら、必要な電源経路が途切れない形状に調整しています。
配線と設計確認
電源、クロック、SWD、NRSTなど、位置や経路が重要な箇所から手動で配線しました。配線幅やクリアランスに加え、デカップリングコンデンサや外部発振器周辺の経路ができるだけ短くなるように確認しています。
主要な配線が固まった後、外周端子へ向かう残りのGPIOの一部では自動配線を利用しました。Core-Sの共通端子配列とSTM32G031のピン順は一致しないため、手作業だけですべての交差を解消するより、自動配線で一度経路を作り、その結果を手直しする方法を選びました。
自動配線後は、ビアが近い範囲に集中し、GND面がパンチングボードのように細かく抜ける箇所がありました。
ビアの数だけで基板の良し悪しが決まるわけではありませんが、信号ビアのクリアランスが連続すると、内層のGND面に大きな切れ目や細い通路ができます。そのため、不要なレイヤー移動を見直してビアを削減し、ビアの位置を少しずつずらしながら、GND面が基板全体でつながるように調整しました。
調整後のビア数は32個となりました。不要なレイヤー移動を減らし、GND面のつながりを確認しました。
配線と銅箔領域を再構築した後、設計ルールチェック(DRC)によるクリアランスエラーと未接続を確認し、最終的にどちらも0件となりました。
3Dプレビューで実装状態を確認
配線完了後、冒頭に掲載した3Dプレビューを使って部品の配置と実装方向を確認しました。
2DのPCB画面では配線やパッドの位置を確認できますが、部品の高さやピンヘッダの向き、基板全体の見え方は把握しにくい部分があります。
基板上には、製品名として次の表記も加えました。
CraftVia
Core-S G031
v1 Rev0
さらに、基板のNorth方向を確認できる方位記号を配置しています。Core単体で扱う場合だけでなく、Stationへ装着するときにも向きを判断しやすくするためです。
参照した設計資料
STM32G031K8T6の回路・基板設計と、任意実装の外部発振器の選定では、次のメーカー公式資料を参照しています。
- STM32G031x4/x6/x8 データシート(DS12992) — LQFP32ピン配置、電源電圧、GPIOの電気的特性、代替機能、パッケージ寸法の確認に使用しています。STM32G031K8公式製品ページも参照できます。
- STM32G0x1 リファレンスマニュアル(RM0444) — クロック構成、HSI16、HSEバイパス、BOOT設定、オプションバイト、GPIOの代替機能の設定、リセット後の動作を確認するための資料です。
- AN5096:Getting started with STM32G0 MCUs hardware development — 電源、デカップリング、NRST、BOOT、クロック、SWD接続などの基本回路設計に使用しています。今回のハードウェア設計で特に重要な資料です。
- AN2606:Introduction to system memory boot mode on STM32 MCUs — 内蔵ブートローダー、System Memoryからの起動条件、BOOT0とオプションバイトの関係を確認するために使用しています。
- STM32G031x4/x6/x8 Errata Sheet(ES0487) — 対象シリコン固有の既知の制約を確認する資料です。実機評価やファームウェア開発時にも、STM32G0x1公式ドキュメント一覧で最新版を確認します。
- Abracon ASEDVNシリーズ データシート — 任意実装の8 MHz CMOS外部発振器について、電源電圧、端子配置、Enable動作、出力形式、消費電流、フットプリントの確認に使用しています。
現在地点と次の工程
Core-S G031 Rev0は、回路図から部品配置、4層構成、配線、3Dプレビューまで進み、基板製造データを出力できる段階になりました。
ただし、現時点ではまだ画面上の設計であり、実物の基板は完成していません。
基板の発注は、Coreを接続するStation初号機の設計が完了した後に行う予定です。CoreとStationをまとめて発注し、組み合わせた状態で評価できるようにします。
発注前には、設計ルールが発注先の製造条件に合っているかを確認し、出力したGerber・ドリルデータも見直す予定です。
基板到着後は、次の順で試作と確認を進めます。
- 部品の手実装
- +3V3とGND間の短絡確認
- 電流制限付き電源による初回通電
- SWDによる接続確認
- ファームウェアの書き込み
- クロック、リセット、外周GPIOの動作確認
- Stationと組み合わせた書き込み・デバッグ確認
実際に製造すると、画面上では気づかなかった実装性や機械寸法の問題が見つかる可能性があります。Rev0では、完成度を求めるだけでなく、次の改版に必要な情報を得ることも目的としています。
CoreとStationの初号機が意図どおり動作することを確認できた段階で、回路図、基板データ、関連資料をGitHubへ公開する予定です。
次回は、Station初号機の設計、または製造したCore-S G031 Rev0の実装と動作確認について紹介します。
CraftViaで得た回路・基板設計や試作・検証の知見は、AKSの技術開発・試作支援にも活かしていきます。