Intel 80386マイクロコードの解析に成功

原題: 80386 Microcode Disassembled

なぜ重要か

歴史的なx86プロセッサの内部動作解明により、現代CPU設計の基礎技術への理解が深まる

リバースエンジニアリング研究者らが、Intel 80386プロセッサの94720ビットに及ぶマイクロコードの解読に成功した。画像処理とニューラルネットワークを駆使してチップ画像からバイナリデータを抽出し、215の命令エントリポイントを持つマイクロコード構造を解明した。

研究者Andrew Jennerが、Intel 80386プロセッサのマイクロコードの完全解析に成功したことを発表した。この研究は、Ken Shirriffが提供した高解像度チップ画像から始まった。80386のマイクロコードは94720ビットと8086の10752ビットと比べて約9倍の規模を持つ。

解析作業では、GloriousCowとSmartest Blobらが画像処理技術、ニューラルネットワーク、人間による補助自動化を組み合わせてチップ画像からバイナリデータを抽出した。その後、マイクロオペレーション(μ-ops)の配列とビットフィールドの構造を特定する作業が続いた。

80386は8086と比較してサイクルあたりの処理性能が大幅に向上しており、これは多くのトランジスタを投入してハードウェアアクセラレーションを実現したためである。研究チームは乗算・除算ユニット、バレルシフタ、保護テストユニットなどのハードウェアアクセラレータとマイクロコード間のインターフェースを解明した。

解析の結果、80386のマイクロコードには215の命令エントリポイントが存在することが判明した。これは8086の60エントリポイントから大幅に増加しており、新命令の追加とオペランドの種類(レジスタまたはメモリ)による処理の違いが要因となっている。

出典

reenigne.org — 元記事を読む →