マイクロアセンブラは、ファームウェアと呼ばれるマイクロプログラムを作成して、コンピュータの低レベルの操作を制御するコンピュータ プログラムです。これは、アセンブラがプロセッサの高レベルのコードを作成するのとほぼ同じです。違いは、マイクロプログラムは通常、プロセッサの製造元によってのみ開発され、コンピュータ ハードウェアと密接に連携することです。マイクロプログラム化されたコンピュータでは、マイクロプログラムは、通常のプログラム (アプリケーション プログラムとオペレーティング システムの両方を含む) が記述される命令セットの操作を実装します。マイクロプログラムを使用すると、製造元は、ハードウェアを変更することなく、ハードウェア設計エラーを回避するなど、特定の間違いを修正できます。マイクロアセンブラで生成されたマイクロプログラムを使用するもう 1 つの方法は、同じハードウェアで異なる命令セットを実行できるようにすることです。アセンブルされたマイクロプログラムは、制御ストアにロードされ、CPUの制御ユニットのロジックの一部になります。
一部のマイクロアセンブラはより汎用化されており、単一のコンピュータ アーキテクチャを対象としていません。たとえば、マクロ アセンブラのような機能を使用することで、Digital Equipment Corporation はMICRO2マイクロアセンブラを非常に幅広いコンピュータ アーキテクチャと実装に 使用しました。
特定のコンピュータ実装が書き込み可能な制御ストアをサポートしている場合、カスタマイズされたマイクロコードを書き込む手段として、マイクロアセンブラが顧客に提供されるのが一般的です。
マイクロコードのアセンブリ プロセスでは、配布前にエミュレーション ツールを使用してマイクロプログラムを検証すると便利です。現在、マイクロコーディングは復活を遂げています。これは、すでに製造または販売されている処理装置のファームウェアを修正して最適化し、特定のオペレーティング システムに適合させたり、ハードウェアのバグを修正したりできるためです。ただし、今日の CPU で一般的に使用できるマイクロアセンブラでは、マイクロコードを操作できません。プロセッサのマイクロコードに関する知識は通常、独自の情報と見なされるため、変更方法に関する情報を入手するのは困難です。
外部リンク
- 「Mikrocodesimulator MikroSim 2010」。0/1-SimWare 。2010年10月3日閲覧。
- 「マイクロプログラミングの簡潔な歴史」 M. Smotherman。2010 年。2010 年 10 月 3 日閲覧。
- 「コンピュータ構造: 原理と例、パート 2、コンピュータ空間の領域、セクション 1、マイクロプログラム ベースのプロセッサ、ページ 151 以降」。McGraw-Hill コンピュータ サイエンス シリーズ。2010年 10 月 3 日閲覧。
- 「Intel(R) 64 および IA-32 アーキテクチャ ソフトウェア デベロッパーズ マニュアル、第 3A 巻: システム プログラミング ガイド、パート 1、第 8.11 章:「マイクロコード更新機能」」(PDF)。Intel Corporation。2009 年 12 月。2010 年 10 月 3 日に取得。
