雑多な趣味の記録帳

tom01h.exblog.jp

zero-riscy の Matrix Mult 命令をパイプライン処理したい2

zeroriscy の Matrix Mult 命令をパイプライン化しています。
この命令はコンパイラ対応していないので、正直いって検証がずぶずぶになってしまいます。
でも、思いつく限りはストール制御を入れておきたいと思います。変更点は
  1. 命令デコーダのマルチサイクル命令判定部分から mmult命令を削除
  2. mmult ユニットをパイプライン化
  3. WB ステージで待たされているレジスタアドレスの数を増やす
  4. mmult 命令が完了したけど EX ステージに負けてレジスタ書き込みできないときにストール
  5. mmult 命令実行中はロードストア命令を発行しない
4と5が思いついたストール条件です。他にもありそうなら教えてください。
github 更新しました。


[PR]
トラックバックURL : https://tom01h.exblog.jp/tb/29843692
トラックバックする(会員専用) [ヘルプ]
※このブログはトラックバック承認制を適用しています。 ブログの持ち主が承認するまでトラックバックは表示されません。
by tom01h | 2018-06-11 00:31 | PCとか | Trackback | Comments(0)