FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

富岳のプロセッサA64FXのマイクロアーキテクチャマニュアルを読む(4. 命令ディスパッチ)

スーパコンピュータ富岳のプロセッサA64FXに関するマイクロアーキテクチャが公開されている。こういう情報はあまり出てくることが無いので、とてもありがたい。

github.com

せっかくなのでまとめていく。最初は勉強のためにPowerPointにまとめていたのだが、資料を切り貼りしながらブログに乗せていくことにした。


  • リザベーションステーション
    • デコードされた命令はリザベーションステーション(RS)にディスパッチされる。
    • uOPのディスパッチはアウトオブオーダで行われる。
f:id:msyksphinz:20200328112400p:plain
  • 命令ディスパッチの制約
    • 命令のディスパッチでは、RSから発行できる命令の種類に制限がある。
f:id:msyksphinz:20200328112452p:plain
  • 命令依存関係の検出
    • A64FXではデコードステージでオペランドの依存関係を検出する。依存関係を検出すると、それらの命令はDependence Groupとして取り扱われる。
f:id:msyksphinz:20200328112812p:plain
  • 命令のディスパッチ条件
    • どの実行ユニットへ発行されるかは、以下の条件で決定される。
f:id:msyksphinz:20200328112910p:plain
f:id:msyksphinz:20200328113019p:plain