命令セットシミュレータ (めいれい-、英: Instruction set simulator, ISS)とは、コンピュータ(プロセッサ)のシミュレータ(エミュレータ)のモデルのひとつで、命令セットレベルのシミュレーションを行うものである。ISS は通例高級言語でプログラムされており、シミュレートするアーキテクチャの命令を読み込み、プロセッサのレジスタを表現する内部変数の状態を維持して命令レベルでの模倣を行う。
| この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。(2023年2月) |
命令のシミュレーション とは、以下のいずれかを目的として導入される方法論である。
- 互換性のために、異なるハードウェアやコンピューターの機械語をシミュレートする。通常システムシミュレータは命令セットシミュレータを内包している。
- デバッグ目的のために、機械語命令を(単なるデータとして扱って)同じハードウェア上でたとえばメモリ保護機能 (意図的あるいは偶発的なバッファオーバーランからシステムを保護する)と共に実行し、その振る舞いを監視する。
- プロセッサコアを関連するシミュレーションで、プロセッサ自身が検証の対象でない場合のシミュレーション性能を向上させる。例:Verilog のシミュレーションを"PLI" を用いて検証する。