FPGA開発日記

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

富岳のプロセッサA64FXのマイクロアーキテクチャマニュアルを読む(5. 命令実行)

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

github.com

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


  • 命令発行では、各命令はRS内でソースオペランドがすべて揃うのを待っている。
f:id:msyksphinz:20200328113613p:plain
  • 命令実行パイプラインの概要
f:id:msyksphinz:20200328113637p:plain
  • ブロックキング制御。いくつかの命令ではパイプライン全体を占有してしまうので、そのための制御。
f:id:msyksphinz:20200328113732p:plain
f:id:msyksphinz:20200328113818p:plain
  • 特殊な制御命令について。SVE命令のレジスタマージポリシなど。Floating Pointと整数レジスタの転送のための同期処理など。
f:id:msyksphinz:20200328113944p:plain
  • 浮動小数点命令の特殊動作。特殊なモードで実行することができるが、その代わりサイクル数は伸びる。
f:id:msyksphinz:20200328114340p:plain