世界を動かす技術を、日本語で。

CTスキャナーが386プロセッサのセラミックパッケージ内部の驚きを明らかにする

概要

  • Intel 386 は1985年に登場した初の 32ビットx86プロセッサ
  • 132ピンのセラミックパッケージ 内に、 6層の複雑な配線 を内蔵。
  • I/O回路用とロジック用2系統電源ネットワーク を搭載。
  • CTスキャン で見えない内部構造や 金属ワイヤ の配置が判明。
  • パッケージ設計が 性能・信頼性向上 に大きく寄与。

Intel 386プロセッサのパッケージ構造と設計

  • Intel 386x86アーキテクチャ 初の 32ビットCPU
  • セラミック製正方形パッケージ132本の金メッキピン を装備。
  • パッケージは マザーボードソケット に装着される構造。
  • Lumafieldの3D CTスキャン により、 セラミック内部の6層配線 が明らかに。
  • パッケージ側面には 電気メッキ用の極細ワイヤ も埋め込まれている。

パワー・グランドネットワークの分離

  • I/O回路CPUロジック 用に 独立した電源・グランド配線 を持つ設計。
  • I/Oピンのスイッチングノイズ がロジック回路に影響しないように分離。
  • デカップリングコンデンサ でI/O由来のスパイクを吸収し、安定動作を確保。
  • 20ピンが+5V(Vcc)21ピンがグランド(Vss) に接続。

パッケージ内部の階層的インターフェース

  • シリコンダイ から マザーボードピン まで、 約2500倍のスケールアップ
    • ダイ上回路: 1μm 単位
    • ダイ上配線: 6μm間隔
    • ボンドパッド: 0.01インチ(0.25mm)間隔
    • パッケージパッド: 0.02インチ(0.5mm)間隔
    • ピン配置: 0.1インチ(2.54mm)間隔
  • 2段の金パッド極細金ワイヤ(直径35μm) で接続。
  • 一部のパッドには 5本までのワイヤ で大電流対応。

セラミックパッケージの製造工程

  • グリーンシート(セラミック粉+バインダー) からスタート。
  • ビアホール作成後、タングステンペースト で配線形成。
  • 積層・圧着・高温焼結(1500~1600℃) で硬質セラミック化。
  • ピンの金メッキダイの実装・ワイヤボンディング を経て完成。
  • 金属キャップでダイを封止 し、検査・ラベル付与後に出荷。

シグナル層とパワー層の違い

  • シグナル層 は各ピンを シェルフパッド へ金属トレースで接続。
  • パワー層導電性プレーン で、ビアホールで他層と接続。
  • シェルフパッド からダイのボンドパッドへ ボンドワイヤ で接続。
  • パワー層はダイへの直接接続がなく、シグナル層経由で供給

電気メッキ用サイドコンタクト

  • ピンの金メッキ 時、各ピンを 負極として通電 する必要あり。
  • そのため、 パッケージ側面に極細ワイヤ で外部接続。
  • CTスキャンで ほぼ見えないサイドコンタクト の存在を確認。

No Connect (NC) ピンの役割

  • 8本のNCピン は通常未接続。
  • ダイ上には 対応するボンドパッド が存在し、テスト時に使用。
  • 一部NCピンは ボンドワイヤ追加で特別な機能やデバッグ用にも変更可能
  • 1本のNCピンは実際に外部と接続されており、未公開の出力信号と推測。

ピンとパッドのマッピング

  • 386パッケージは2次元グリッド配置 で、ピンとパッドの対応が複雑。
  • CTスキャン解析 により ピンとダイ上パッドの正確なマッピング を特定。
  • この情報により リバースエンジニアリングダイ解析 が容易化。

結論

  • 初期のIntelプロセッサ はパッケージの制約で性能が限定的だった。
  • 386ではパッケージ設計の重要性 を認識し、 高性能・低ノイズ化 を実現。
  • セラミック多層パッケージの採用が プロセッサの信頼性・拡張性向上 に大きく貢献。

Hackerたちの意見

みんなのCTスキャンに関する質問に答えるためにここにいるよ :-)

あなたのCPUの年間控除額はいくらですか?

このプロセスでCPUは壊れちゃったの?それともこの標本を再組立てしたの?

これはCTスキャンについてじゃなくて、チップ自体についての話だね。ボンドワイヤーが空中にぶら下がってるってことは、落としたらチップが壊れちゃう可能性があるってこと?ボンドワイヤーが動いてショートするかもしれないから。頑張ってくれてありがとう!

ほぼ接続されているピンが製造中に意図的に切断されたように見える?つまり、接続されていて、計算されたパルスの電力を使って切断された可能性があるのかな?

どのCTスキャナーが使われたの?こんなに小さいのに画像が驚くほど詳細だね。人間の解剖学の粗いスケールに慣れてるから、ちょっと驚きだよ。

光学顕微鏡スケールで最も小さな特徴が見える最後のノード/CPUは何?

本当に質問なんだけど:そのウェブサイト、ロシアでは使えないんだ。アクセスを制限したの?それとも俺のISPのせい?誰かが古いIntel CPUに関するニッチな情報の勉強を妨げようとしてるみたい。ありがとう!P.S. あなたの作品の大ファンです!

これにはどのくらいのkVp/mAsを使ってるの?医療画像から見られるアーティファクトをどうやって避けてるの?医療分野でCTの勉強中だから、気になるな。

チップの回路から見ると、このピンは出力のようだね。もし386チップを持ってる人がこのピンをオシロスコープに繋いだら、面白いものが見えるかも。386に独自の「Halt and Catch Fire」モードがあったら、びっくりだよね。

[遅延]

A0とA1はどこ?

386は32ビットプロセッサだから、アドレスは32ビットのワードを指定して、A0とA1のアドレスビットは使わないんだ。でも、もしバイトや16ビットワードを読みたいだけならどうするの?実は386は4つのバイトイネーブル出力(BE0#-BE3#)を提供していて、どのバイトが転送されているかを示すんだ。もちろん、そんなに単純じゃないけどね。データバスの下位16ビットが使われていない場合、上位16ビットのデータバスが下位16ビットに複製されて、16ビットバスがもっと効率的になるようになってる(なんかね)。

ちょっと懐かしい思い出だな。後のパッケージでの熱機械サイクル疲労の分析を、詳細なCADやFEA、実験テストを使ってやったんだ。結局、大したことじゃないってわかったけど、かなりの労力がかかったよ。でも、古いPCを毎日電源オンオフするのは、博物館でもおすすめしないな…

VLSIでのサバイバル/耐久テストがどう行われるか全く知らないんだけど、実験テストはどうやってやったの?例えば、Pentium 5時代のXeon(Jayhawk)の熱サンプルは作られたって知ってるけど、Intelが「おっと、これは長期的には熱すぎる」って気づくまでどうやって進んだのか、ずっと不思議に思ってた。

博物館用に、クーラーの代わりに、PCが動いていようがいまいがパッケージを一定の温度に保つ温度制御ユニットを選ぶのはどうかな?チップの表面を加熱するだけなら、フルPCを24/7稼働させるよりも安上がりかもしれないよ。

超クール!これが俺の初めてのPCのCPUだったんだ(家族の友人に教えてもらいながら自分で組み立てた)。小さな貼り付け式のヒートシンクと、その上にクリップで取り付ける小さなプラスチックファンだけで冷却されてたのを覚えてる。DRAMが8MB、250MBのスピニングディスクハードドライブ、5.25インチと3.5インチのフロッピーベイ、正しいユニットを見つけるためにタッパーの中のチップを探さなきゃいけなかった取り外し可能なBIOS、取り外し可能なチップを差し込む必要があった名前のないAGPビデオカード、そして大きな16インチのCRT。マウスを使うためにISAスロットに特別なシリアルカードをインストールしなきゃいけなかったと思う。

名前のないAGPビデオカード それってAGPじゃなくてVGAのことを言ってるの?AGPは386よりずっと後に出てきたもので、そのマザーボードのチップセットではサポートされてなかったはずだよ。

VGAカードにはたいていマウスポートがあったと思う。386の時にシリアルカードを追加した記憶はないけど、もしかしたらやってたかも。IBMのマシンは、あの変わったバスのせいで本当に変わり者だったし、私はIBMからは離れてたな。

1989年頃のコンピューターフェアに行ったな。父が386 DX 25MHzを買ってくれて、RAMが4MB、ハードドライブがなんと40MBだった。これが使ってたTandy 286 16MHzからの素晴らしいアップグレードだった。買った386は標準の20MHzや33MHzじゃなくて、25MHzはちょっとしたハイプだったと思う。33MHzは最高だったけど、もちろんそれはもっと高かった $$$$。コンピューターフェアは楽しかったな。

89年のはすごいね!90年代初頭に50MHzの8MBのGatewayを手に入れたのを覚えてるけど、あれは本当に素晴らしかった。MS PaintやMS Wordだけでも、妹と一緒に物語や絵を作って楽しんでた。そんで、MS DOSとQBasicを見つけて、今は土曜日の午後にハッカーニュースに投稿してるってわけ。

あの下のレベルの「Signals」CT画像(レイヤー2)は、「Intel Inside」ロゴのステッカーの素晴らしい背景になっただろうね。時代の雰囲気もバッチリだし。とにかく、これがケンの作品の好きなところなんだ。抽象的な質問に答えようとしている時に、美しい構造を偶然発見するところ。これをやってくれてありがとう!

386には「NC」(No Connect)とラベル付けされた8つのピンがあって、Cyrix 486DLCはそのうちの7つをハイジャックしてる :) A20M#(F13) - マザーボードがサポートしていれば、最初の64KBをキャッシュせずにL1キャッシュ全体をRAMに使える。FLUSH#(E13) - マザーボードがサポートしていれば、ハックを使わずにDMAアクセスごとにL1をフラッシュしなくて済む。ハック(BARBモード)は当時は賢いと思われてたけど、みんながゲーム中に音声をDMAで流し続けてキャッシュを無効にしてたからね。RPLSET(C6) RPLVAl(C7)- L1キャッシュのステータスデバッグ出力。SUSP#(A4) SUSPA#(B4)- サスペンドサポート、INTとNMIで起動。ノートパソコンには良いね。>驚くべきことに、No Connectのパッドの一つにはボンドワイヤーがちゃんと付いてるんだ。どういうわけかCyrixはこの特定のピン(B12)をKEN#入力(L1キャッシュを有効にする)用に選んだみたい :O >ダイ上の回路から見ると、このピンは出力のようだ。つまり、Intel CPUが実際に配線している唯一のNCピンで、しかも出力だ。Cyrixはキャッシュを有効にするために低くドライブされることを要求してる。

後のIntelプロセッサでは、接続数が指数関数的に増加した。ちょっとした指摘だけど、「二次的に」という方がここでは意味が通ると思う。二次元の話をしてるからね。

数字を見れば、ピンの数は時間とともに大体指数関数的に増えていて、年間約10%増加してるよ。レンツの法則も見てみて。