LLVA:低レベル仮想命令セットアーキテクチャ
要約
プロセッサに固有のソフトウェア変換レイヤーを介して実装された仮想命令セットアーキテクチャ(V-ISA)は、プロセッサ設計者に大きな柔軟性を提供できます。しかしながら、Crusoe や DAISY などの最近の例では、既存のハードウェア命令セットを仮想 ISA として使用しており、これにより変換と最適化が複雑になります。実際、プロセッサの仮想 ISA の具体的な設計に関する研究はほとんどありませんでした。この論文では、新しい仮想 ISA(LLVA)と、任意のハードウェアに実装するための変換戦略を提案します。命令セットは型付けされており、静的単一代入形式の無限仮想レジスタセットを使用し、明示的な制御フローおよびデータフロー情報を提供しますが、従来のハードウェアに密接に一致する低レベル操作を使用しています。それには、柔軟な例外モデルおよび自己変更コードに対するわずかな制約を含む、ネイティブコードのより柔軟な最適化を可能にする新メカニズムが含まれています。OS とは完全に無関係でありながら、オフライン変換とネイティブコードとプロファイル情報の透過的なオフラインキャッシングを実現する変換戦略を提案します。また、インストール時、ランタイム、および実行間でのオフラインで直接レプリゼンテーションに対する最適化をサポートします。実験により、仮想 ISA はコンパクトで、通常のハードウェア命令セットに密接に一致し、非常に高速なコード生成を可能にする一方、洗練されたプログラム分析と最適化を可能にする十分な高レベル情報を持っていることを示します。
公開済
「LLVA: 低レベル仮想命令セットアーキテクチャ」、Vikram Adve、Chris Lattner、Michael Brukman、Anand Shukla、Brian Gaeke。
第 36 回年次 ACM/IEEE 国際マイクロアーキテクチャに関するシンポジウム(MICRO 36)、カルフォルニア州サンディエゴ、2003 年 12 月の議事録。
ダウンロード
BibTeX エントリ
@InProceedings{ALBSG:MICRO36,
author = {Vikram Adve and Chris Lattner and Michael Brukman and Anand Shukla and Brian Gaeke},
title = "{LLVA: A Low-level Virtual Instruction Set Architecture}",
booktitle = "{Proceedings of the 36th annual ACM/IEEE international symposium on Microarchitecture (MICRO-36)}",
address = {San Diego, California},
month = {Dec},
year = {2003}
}