富士通研、ARMコアCPUの動作を忠実に高精度で再現できるシミュレーション技術を開発 | RBB TODAY

富士通研、ARMコアCPUの動作を忠実に高精度で再現できるシミュレーション技術を開発

エンタープライズ モバイルBIZ

携帯電話を例とした開発背景
  • 携帯電話を例とした開発背景
  • 一般的なJITコンパイル処理の流れ
  • 今回の実時間動作シミュレーション込みのJITコンパイル処理の流れ
  • 開発した技術の特徴
 富士通研究所は13日、携帯電話や電子機器のCPUなどで広く使われている「ARMコア」を利用したシステムを対象に、シミュレーション実行時にハードウェア上での動作を実時間精度で忠実に再現できる、世界最高速のシミュレーション技術を開発したことを発表した。

 「ARMコア」は、携帯電話や電子機器のCPUとして世の中のさまざまな機器やシステムで利用されている。一方で、ARMコアを用いたシステムの開発は近年、飛躍的に複雑になっており、より高速でハードウェアに忠実な、精度の高いシミュレーション技術が求められていた。ARMコアの高速シミュレーションには、JAVAなどで使われる「JITコンパイル方式」と呼ばれるシミュレーション技術を使うのが一般的だが、JITコンパイル方式は時間情報を忠実に再現するには不向きとされていた。

 今回富士通研では、JITコンパイル方式をベースに、サイクル動作シミュレーションを低負荷で行う新技術を開発。実時間計算を「予測に基づく静的な時間解析」「静的解析に基づく単純な時間加算」「予測ミス時の動的な時間補正」とに分離し、それぞれをJITコンパイルの翻訳プロセスと実行プロセスに適切に割り振ることにより、高速化を実現した。これにより、標準PC上の環境でOSを含むARMマルチコアシステムのサイクル動作シミュレーションを、従来比100倍高速となる100MHz以上で行うことを可能とした。ハードウェア上での実時間動作との誤差は約±5%と高精度でもあるという。

 なおARMコアは、マルチコア化が急速に進んでいるため、サイクル動作シミュレーション技術もマルチコアに対応。今回のサイクル精度のJITコンパイル技術は各コアでそれぞれ別々に実時間計算を行うことができるため、各コアの負荷が均等になるような負荷分散が可能とのこと。
《冨岡晶》

関連ニュース

特集

page top