FPGA開発日記

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

自作CPUにベクトル命令を追加する実装検討 (31. ベクトルレジスタ読み込みの遅延挿入)

msyksphinz.hatenablog.com

前回の続きで、ベクトルレジスタの1サイクル遅延に備えて、1ステージベクトル読み出しのためのステージを挿入した。 また、レジスタ読み出しを行った後に、ストアバッファのインタフェースがストールすることに備えて、ストールした後にSkid Bufferに格納するようにする。 ストールが解放されると、Skid Bufferからストア・データを読み出すようにする。

また、ベクトルSTQの問題も一つ修正した。これは、ベクトル・ストアがCommitによりストアのReady状態になった時、それを判定する論理が抜けており、ベクトル・レジスタを読み出すモードに移らずにずっとコミット状態を保持し続け、データの書き込みが発生しないという問題のようだった。

これらを修正して、一応すべてのマイクロ・ベンチマークがPASSできるようになった。