M.2 ハッカー向け
前回は、ボードに M.2 ソケットを取り付けたい場合に知りたいことをすべて説明しました。 今日はM.2カードを作ってみましょう! 世の中には特別なカードを挿入することを要求する M.2 ソケットが無数にありますが、おそらく、それに適合するものがあなたの作品になるでしょう。
ラップトップやその他の x86 メインボードには、多くの場合 M.2 スロットが付属しています。 空いている B キー スロットはありますか? ラップトップ内に安全に持ち運べる実験用プラットフォームとして、RP2040 と多数のセンサーを B キー PCB に配置できます。 より高度な FPGA 実験をしてみませんか? これは、ラップトップ内に収まる小型の FPGA ボードで、同じラップトップ上で PCIe を使用できるようにします。セットアップ全体の設置面積は非常に小さくなります。 ラップトップをホームサーバーとして再利用しているため、追加の PCIe リンクを探していますか? 繰り返しますが、WiFi スロットがそれを提供します。 SteamDeck から PCIe を取り出したいですか? M キー 2230 カードを作成することが唯一の希望のようです。
よりシンプルであまりアクティブでないデバイス用のスペースも十分にあります。 予備の M キー スロット (おそらく A または E キー スロット) しかありませんか? WiFi アダプターを追加の SSD に交換してストレージを追加することも、あるいはその逆に、2 番目の WiFi カードを 2 番目の SSD スロットに挿入して、すべてのワードドライブのニーズに対応することもできます。 メインボード上で未使用の SATA ポートの痕跡を見つけましたか? 私と同じことをして、電源レールからもう 1 つの SSD ソケットを分割するデュアルポート M.2 カードを作成し、その追加の SATA ポートを配線して SATA M.2 SSD を挿入できます。チップセットが M キー SSD スロットの 4 つの SATA ポート全体を提供できることをご存知ですか? あなたも私の友人と同じように、これらの SATA ポートを破壊するカードを構築できます。
x86 以外でも、かなりの数の ARM SBC が同じ問題を抱えています。それらには、特定のキー、たとえば B を持つ M.2 ソケットがあり、購入したばかりの M.2 エクステンダーには適合しません。アダプターを自分で作ることもできます。 基準を超えたらどうでしょうか? もちろん、前に述べた SparkFun MicroMod エコシステムもあります。 他の無数のデバイス、またはおそらく独自の MicroMod センサーで動作する MicroMod CPU ボードを開発したいですか? それはまさに M.2 カードです。 また、M.2 を使用して独自のエコシステムを作成する必要がある場合でも、誰もあなたを止めません。
もちろん、まったく異なる種類の付加価値を備えたカードをデザインすることもできます。 たとえば、高級な電解コンデンサを搭載した高価な「オーディオグレード」SSD を設計することで、オーディオマニアから現金を搾り取ることができます。金メッキの価値が過小評価されることは望ましくないでしょう? そして、あなたが拡張スロットに M.2 ソケットを使用している SBC メーカーである場合、購入者が SBC をルーターとして使用したいと言ったら、4 つのイーサネット ソケットを備えたまったく奇抜で巨大なカードを設計することを誰も止めることはできません。それ。
M.2 カードのサイズは標準化されています。3042 は幅 30 mm、高さ 42 mm、2260 は幅 22 mm、高さ 60 mm です。 便利なのは、これらが PCB の正確な寸法になるということです。 ネジのノッチは mPCIe カードとは対照的に中央にあり、通常は 1 本の M.2 ネジです。 ネジがアース接続の役割を果たしていると言っている人を見かけますが、そう見えてもそうではありません。追加のアース パスは良い傾向にありますが、レセプタクル自体のアース ピンで十分です。 実際、ノッチ領域で銅を露出させる必要はなく、単に PCB の切り抜きにすることもできます。
既存のデバイス用にカードを設計する場合、長さは 42 mm または 80 mm になります。 30 mm は SteamDeck やその他の設置面積の小さいデバイス以外ではまれで、60 mm は非常に目立たないものです。 22 mm は、WWAN スロットを除くすべての幅です。通常、WWAN スロットは 30 mm のカード幅を念頭に置いて設計されています。 すべてのコンポーネントをカードの片面に配置する必要はありませんが、もちろん、そうすることで組み立てが簡単になります。 ただし、一部のデバイスではフラット マウント ソケットまたはミッドマウント ソケットが使用されており、底部に背の高いコンポーネントがあると、予期せぬ問題が発生する可能性があることに注意してください。
M.2 には 0.8 mm の PCB が必要です。 ENIG を持っている必要はありませんが、ENIG をお勧めします。 私の理解では、HASL で行われたはんだコーティングは酸化が早くなり、カードソケットとの接触が悪くなる可能性があると考えていますが、とはいえ、私は HASL を試したことはありませんでした。 ただし、HASL は短期使用のプロトタイプには十分に機能すると確信しています。 パッド上の金が厚い場合でも、カードのエッジが面取りされている場合でも、ゴールド フィンガーの処理は必須であると思われるかもしれません。私の経験ではどちらも必要ありませんが、金が厚いとプラグ/アンプラグのサイクルが長くなり、エッジが面取りされているとカードが壊れてしまいます。少し挿入しやすくなりました。 私は個人的に、常にベベルなしの通常の ENIG を使用しており、素晴らしい経験をしました。
もちろん、KiCad のカード エッジ フットプリントが必要になります。 私は個人的に、KiCad M.2 カード エッジ フットプリント ジェネレーター プラグインを使用しています。これは、最初は GitHub の @STOP-Pi によって作成され、私によってリファクタリングされました。 ただし、作成者がある時点で GitHub アカウントを削除したため、プラグインは KiCad6 にロードされなくなり、生成されたフットプリントはすべて KiCad5 で行われました。 さらに悪いことに、私が変更を加えてから削除するまでの間に、彼らはプラグイン コードさえ更新していました。そして、削除前に私が彼らの KiCad 6 互換性コミットを見逃していた可能性もあります。 そうですね、プルリクエストは大歓迎です! それまでの間、ここにはすでに使用できる、事前に生成された A、B、E、M、A+E、および B+M カード エッジがあります。また、[timonsku] は簡単に使用できる Eagle ライブラリも作成しました。 KiCad に変換します。
特に PCIe を使用したい場合、4 層 PCB が必要かどうか疑問に思われるかもしれません。4 層では 90 オームのインピーダンス整合が実際に実現可能ですが、2 層ではグランドまでの距離が 0.8 mm なので非現実的です。 これが私の経験です。私はしばらく小型の PCIe アダプターを作成してきましたが、それらは 2 層で非常にうまく機能しました。これは、私の特定のプロトタイピング ワークフローの要件です。 通常、M.2 カードは、使用する PCIe リンク全体の長さに比例して非常に短い距離を占め、偏差によって PCIe リンクの動作が妨げられることはほとんどありません。距離が長いため、使用するまで問題が発生する可能性があります。ケーブル配線をアップグレードします。 トレーニング中にエラー率が高くなったり、リンクが下位世代にダウングレードされても驚かないでしょうが、PCIe が機能することは間違いありません。
2 つのレイヤーにこだわる必要がありますか? できる限りのインピーダンスマッチングを行い、差動ペアを敬意を持って扱えば、プロトタイプは正常に動作します。結局のところ、PCIe は濡れた弦でも動作すると言われており、私たちは次々とその確認を目撃してきました。 私のデフペアは通常 0.35 mm / 0.15 mm で、安価な 2 層プロセスの境界内にあり、インピーダンスは約 130 オームになります。これは不完全ですが、何もしないよりはマシです。 PCIe や SATA などの場合、M.2 は通常、すべての高速ディフペアをカードの上面に保持します。これだけでも、ペアの下にある中断のないグランド層などの面で多くの助けになります。 ワークフローと予算で 4 つのレイヤーが許容できる場合は、ぜひ使用してください。
ゴールド フィンガーが入る領域にグランド フィル プレーンのキープアウト プレーンを追加します。そうしないと、カードを挿入するときにホスト側の重要なピンの束がショートしてしまう可能性があります。 この規格では、指の下の内部レイヤーにキープアウト プレーンを設けることも推奨されているため、4 レイヤー以上の場合はその点に留意してください。
ステンシルするときは、はんだペーストが M.2 カードのフィンガーに付着しないように注意してください。付着した場合は、リフローする前に十分に洗浄してください。後ではんだを除去するのは非常に困難だからです。 0.8 mm PCB は薄いため、熱風処理する場合は、ストレスを与えない方法で固定してください。私は、万力に挟んでブラストすると、自作の M.2 カードが曲がってしまったことがあります。おそらく、そのキャリブレーションから少し外れていたホットエアガン。
電力に関しては、1 ~ 2 アンペアで 3.3 V しか得られません。 これは祝福でもあり呪いでもあります。十分な電力があり、ほとんどのチップは 3.3 V で問題ないため、通常は追加のレギュレーションは必要ありませんが、5 V にはまだいくつかの有効な用途があります。5 V を必要とするメーカーM.2 カードでは、呪われた解決策に頼る傾向があります。これは、M.2 から 2.5 インチ HDD ソケットを作成する Dell アダプターの話です。これは、GND ピンの 1 つを独自のカード検出ピンとして再定義し、5 V を送信します。そのピンが GND 接続されていない場合は、予約済みのピンのグループに接続されます。
既存のデバイス用にカードを設計し、特定のインターフェイスを期待していますか? それが実際にそこにあることを確認してください。先ほど述べたように、A、E、M ソケットには PCIe、A、E、B ソケットには USB 2.0 が期待できますが、それ以外は必須ではありません。 ここでインターネットが役に立たない場合は、ソケットからのトレースを探すこともできますが、信号がソケットの下のビアを通過している可能性があるため、常に確実であるとは限りません。 そうは言っても、トレースやディフペア直列コンデンサを見つけることができれば、それは良い兆候になります。あるいは、USB2 または PREST / PEWAKE / CLKREQ などのシングルエンド信号の IC 内部ダイオード テストにマルチメータを使用するのが適切かもしれません。 結局のところ、通常は SATA と PCIe が利用可能であるにもかかわらず、相当数のラップトップの B キー スロットには USB 3.0 (ThinkPad T460s) のみ、あるいは USB 2.0 (ThinkPad T470S) しかありません。
これで「M.2 For Hackers」シリーズは終了です。 M.2 については、初めて見ると異質に見える部分もあるかもしれませんが、何が起こっているのか、そしてどのようにアクションに参加できるのかを明確にできれば幸いです。 M.2 エコシステムがすぐになくなることはありません。必要に応じて、それを自分の意志に合わせて変更する方法を知っていれば役立ちます。