
8086チップの拡大写真。シリコンダイとワイヤ配線が見える
1978年に発表された革新的なIntel8086マイクロプロセッサは、今日でもデスクトップおよびサーバーコンピュータで使用されているx86プロセッサのファミリ全体を生み出しました。このチップはデジタル回路上に構築されていますが、アナログ回路も含まれています。これは、プロセッサの5V電源を負の電圧に変えてパフォーマンスを向上させるチャージポンプジェネレータです。私はクリスタルの写真に基づいて8086をリバースエンジニアリングしています。この投稿では、これらのチャージポンプジェネレーターの設計とその動作について説明します。
もちろん、厳密に言えば、チップ全体がアナログコンポーネントでできています。古いことわざにあるように、「デジタルコンピュータはアナログコンポーネントから作られています」。その作者はDECエンジニアのDonVonadaであり、彼の嫌悪感は1978年にComputerEngineering誌に掲載されました。
Vonadaのエンジニアリングアフォリズム
8086マイクロプロセッサの水晶の写真。左側はALUとレジスタです。右下-マイクロコード付きのROM。写真とのリンクは、より大きな写真を開きます。このリンクをたどってください-元の写真(10,000×10,000 px、24 MB-habrastorageには収まりません)。
上の写真は、顕微鏡下での小さな8086チップを示しています。チップの上部に金属層が見え、その下にシリコンが隠されています。外縁に沿って、クリスタルのコンタクトパッドとチップの40個の外部コンタクトを接続するはんだ付けワイヤーを見ることができます。しかし、よく見ると、クリスタルには42のサイトがあることがわかります。なぜ彼は2つ余分に必要なのですか?
集積回路は、トランジスタが適用されるシリコン基板上に構築されます。高速ICの場合、基板に負の「バイアス電圧」を印加すると便利です。このため、1970年代の多くのチップには5 Vが供給される外部接点がありますが、エンジニアが追加の電源を使用するのは不便でした。1970年代後半までに、チャージポンプジェネレーターの回路がチップ上に直接開発されました。このようなチップは便利な単一+
5V電源を使用し、すべてのエンジニアが満足しています。負のバイアスを追加すると、寄生容量が減少してチップが高速になり、トランジスタのしきい値電圧がより予測可能になり、電流リークが減少するといういくつかの利点があります。
初期のDRAMおよびマイクロプロセッサチップは、多くの場合、+ 5 V(Vcc)、+ 12 V(Vdd)、および-5 V(Vbb)の3つの電源電圧を必要としました。 1970年代後半、チップ技術の進歩により、単一の電圧を使用できるようになりました。たとえば、MK4116(1977年のMostekの16KビットDRAM)には3つの電圧が必要であり、改良されたMK4516(1981)は単一の+ 5Vで動作し、回路設計が簡素化されました。新しいチップの中には、下位互換性のためにVbbピンとVccピンが何にも接続されていないものがあるのはおかしいです。
Intelのメモリチップも同様の経路をたどりました。DRAM2116(16 KB、1977)は3つの電圧を使用しましたが、改良された2118(1979)は1つだけを使用しました。同様に、有名なIntel 8080マイクロプロセッサ(1974)は、誘導チャネルMOSFETを使用し、動作するために3つの電圧を必要としました。 Microprocessor Motorola 6800(1974)は、単一の電源電圧で動作する別のアプローチを採用しました。 6800は古いスタイルのトランジスタで構築されていましたが、電圧ダブラーを実装しているため、+ 12Vの外部電源は必要ありませんでした。
基板にバイアス電圧を印加するには、8086チップ上の2つの追加パッドが必要です。記事の冒頭の写真は、チップ上のシリコンクリスタルの位置を示しており、ジャンパー線が外部コンタクトを形成するコンタクトパッドに接続しています。写真は上下に2つの小さな灰色の正方形を示しています。それらのそれぞれは、「追加の」サイトの1つに接続されています。8086チップのチャージポンプは負の電圧を生成し、はんだ除去ワイヤーを通過してこれらの正方形に到達し、次に8086基板の下の金属プレートを通過します。
チャージブースターのしくみ
下の写真では、2つの8086プロセッサチャージポンプジェネレータが強調表示されています。一番上のものを検討します。下の方も同じように機能し、利用可能なスペースに収まるように配置が異なります。各ジェネレーターには、ドライバー回路、大きなコンデンサー、および基板に接続するワイヤー付きのパッドがあります。各ジェネレーターは、おそらく電気ノイズを最小限に抑えるために、8086の2つの接地パッドの1つに隣接して配置されています。
特大のバイアス電圧発生器を備えた8086チップの写真
チャージポンプがどのようにして正の電圧を負の電圧に変えるのか疑問に思われるかもしれません。「フライング」コンデンサを使用する秘訣、その図は下にあります。左側では、コンデンサが5 Vに充電されています。コンデンサを外し、プラス側をグランドに接続します。コンデンサにはまだ5Vの電荷があるため、コンデンサの下部から-5Vが供給されます。コンデンサを2つの状態間ですばやく切り替えることにより、充電ポンプは負の電圧を生成します。
次の図に示すように、8086チャージポンプは、MOSFETとダイオードを使用してコンデンサを状態間で切り替え、ジェネレータを使用してトランジスタを駆動します。リングジェネレータは、ループ(リング)で接続された3つのインバータで構成されています。インバーターの数が奇数であるため、システムが不安定で変動します。インバーターの数が偶数の場合、2つの状態のいずれかで安定します。この手法は、レジスタ8086で使用されます。1対のインバータがビットを格納します。
たとえば、最初のインバータが0を受信すると、1を出力し、2番目の出力は0になり、3番目の出力は1になります。これにより、最初のインバータが切り替わり、この切り替えがループで移動して発振します。振動の速度を遅くするために、2つのRC回路がリングに挿入されます..。コンデンサの充電と放電に時間がかかるため、発振が遅くなり、チャージポンプが動作する時間が与えられます。
チップ電流の発振を調べて、チャージポンプの周波数を測定してみました。 90 MHzで変動を測定しましたが、実際にノイズを測定できたのではないかと思います。
基板上に負のバイアス電圧を生成するIntel8086のチャージポンプジェネレータの回路
コンデンサからの出力は、トランジスタコンデンサドライバに送られます。最初のステップでトップトランジスタをオンにします。これにより、コンデンサは最初のダイオードを介してグランドに対して5Vまで充電されます。 2番目のステップでは、すべての魔法が起こります。下部のトランジスタがオンになり、コンデンサの上部をグランドに接続します。コンデンサはまだ5Vに充電されているので、底部は-5Vを供給しているはずです。これにより、必要な負の電圧が得られます。電流は、2番目のダイオードとはんだ付けワイヤを通って基板に流れます。オシレーターが再び切り替わると、上部のトランジスターがオンになり、サイクルが繰り返されます。チャージポンプは、チャージを出口から地面にポンプで送るため、このように呼ばれます。ダイオードは、チャージを正しい方向に移動させるという点でウォーターポンプアイソレーションバルブに似ています。
もちろん、私は仕事の計画を少し単純化しました。トランジスタの両端の電圧降下により、基板電圧は-5Vではなく-3Vになります。チップがより高い電圧降下を必要とする場合は、複数のチャージポンプジェネレータのカスケードを作成できます。私が発電機の方向について話すとき、私は電流の方向を意味します。電子をポンピングすることを想像する場合、負に帯電した電子が反対方向に基板にポンピングされると仮定します。
シリコンでの実装
下の写真は、チップ上のチャージポンプジェネレーターの実装を示しています。上の写真は、赤みがかったポリシリコンが下にある金属導体を示しています。以下はベージュのシリコンです。中央にはメインコンデンサがあり、左側の回路にH字型の導体が接続されています。コンデンサの一部は、上部の広い金属製の電力経路の下に隠れています。右側では、ジャンパー線がパッドに接続されています。パッドの下にテストパターンがあります。これは、次のレイヤーをチップに適用するために使用される各マスクの正方形です。
金属層チャージポンプ
金属層を除去すると、図がより見やすくなります。写真の右半分は大きなチャージポンプコンデンサーで占められています。もちろん、それは微視的ですが、チップ標準では巨大です-16ビットレジスタにほぼ匹敵します。コンデンサは、シリコンの上のポリシリコンで構成され、その間に絶縁酸化物が挿入されます。ポリシリコンとシリコンがコンデンサープレートを形成します。左側には、ジェネレータにRC遅延を与える小さなコンデンサと抵抗があります。それらの下には、ジェネレータ回路とトランジスタがあります。
ジェネレータは13個のトランジスタで構成されています。 7つのトランジスタが3つのインバータを形成します(1つのトランジスタには追加の出力電流用の追加のインバータがあります)。 6つのドライバートランジスタのうち、2つは出力を引き上げ、4つは引き下げています。電流要件が通常のデジタルロジックと異なるため、この回路は通常のインバータ回路とは奇妙に異なります。
8086チャージポンプの主要コンポーネント。金属層が除去され、ポリシリコン層とシリコン層が見えます。
チャージポンプの興味深い特徴の1つは、2つのダイオードがあり、それぞれに8つのトランジスタが一定の間隔で配置されていることです。下の図は、トランジスタの構造を示しています。トランジスタは、ソースとドレインの2つのセクション間で電流を流すことができるスイッチと考えることができます。トランジスタは、特殊なタイプのシリコン、ポリシリコンで作られたゲートによって制御されます。ゲート電圧が高いとソースとドレインの間に電流が流れ、ゲート電圧が低いと電流がブロックされます。これらの小さなトランジスタを組み合わせて、マイクロプロセッサやその他のデジタルチップのコンポーネントであるロジックゲートを形成できます。ただし、この場合、トランジスタがダイオードとして使用されます。
ICに実装されたトランジスタの構造
下の写真は、チャージポンプジェネレーターのトランジスターの上面図です。図のように、ポリシリコンは両側のドープされたシリコン領域の間にゲートを形成します。写真の下部にあるシリコン/ポリシリコン接合部を介してゲートとドレインを接続することにより、MOS構造からダイオードを作成できます。シリコンは、接点を介して金属層に結合することもできます。この写真では、金属層が除去されていますが、残りのかすかな円は貫通接点の位置を示しています。
チャージポンプジェネレータ回路のトランジスタ。ポリシリコンゲートは、トランジスタのソースとドレインを分離します。
次の図は、16個のトランジスタから2つのダイオードを組み立てる方法を示しています。チャージポンプジェネレータの比較的大きな電流をサポートするために、8つの並列トランジスタが各ダイオードで使用されます。隣接するトランジスタには共通のソースとドレインがあるため、非常に密に梱包されていることに注意してください。青い線は金属線がどこにあったかを示しています-これらはこの写真のために削除されました。黒丸は、金属とシリコンの接触があった場所です。
チャージポンプには2つのダイオードがあり、それぞれが8つのトランジスタでできています。ソース、ゲート、およびドレインは、文字S、G、およびDで識別されます。
その結果、上位8つのトランジスタの原点は金属線でアースに接続されています。それらのゲートとドレインは、トランジスタの下のポリペプチドによって接続されており、その結果、それらからダイオードが得られます。それらは金属線でコンデンサーに接続されています。下部の8つのトランジスタが2番目のダイオードを形成します。それらのゲートとドレインは、下部の金属ループによって接続されています。要素のレイアウトがどのように最適化されているかに注意してください。たとえば、ブリーチは貫通接点に触れないように曲げられています。
結論
8086チップのバイアス電圧発生器は、デジタル回路(インバーターで構成されたリング発生器)とアナログ充電ポンプの興味深い組み合わせです。 1970年代のコンピューターの歴史からは、長い間忘れられていたデバイスのように見えるかもしれませんが、実際には、現代のICにも存在しています。最新のチップでは、これははるかに複雑な回路であり、個別の電源がある領域でいくつかの調整可能なバイアス電圧を提供するように注意深く調整されています。ある意味では、1970年代に始まり、今日ではさらに人気が高まっているx86アーキテクチャに似ていますが、効率の絶え間ない改善の一環として、その複雑さは信じられないほど大きくなっています。
今日、バイアス電圧発生器は、既製の独自のアイデアとして販売されています-あなたは、このようなA発電機の回路を購入し、自分のチッププロジェクトに挿入することができます(リンク参照1、2、3、4、5、6)。IC設計ツールが必要な回路を生成できるIEEE1801電力規格もあります。8086に接続されているIntel8087
数学コプロセッサにも、独自のバイアス電圧ジェネレータがあります。それは同じ原理で動作しますが、奇妙なことに、5つのインバーターを備えた異なる回路を使用します。