2021-12-01から1ヶ月間の記事一覧
FPGA開発日記は2015年1月4日開始から、おおよそ7年が経過しました。 年末年始なので、2021年をいろいろと振り返っていこうと思う。 今年の最初には、以下のような目標を設定していました。あんまり見直したくねえなあ... 引き続きRISC-Vをベースとしたエコシ…
自作CPUの実装、ロードストア命令の物理アドレスが決まらないうえでのハザードのボトルネックを解決した。 そうこうしているうちにいつの間にかRET命令のRAS予測が怪しくなってきているので修正しておきたい。 RASの修正を行って、簡単なテストケースならば…
自作CPUの実装、ロードストア命令の物理アドレスが決まらないうえでのハザードのボトルネックを解決した。 そうこうしているうちにいつの間にかRET命令のRAS予測が怪しくなってきているので修正しておきたい。 RASの実装を確認するために、とりあえず以下の…
自作CPUの実装、ロードストア命令の物理アドレスが決まらないうえでのハザードが性能ボトルネックになっているのを見た。Dhrystoneの実行に当たりしばらくデバッグしていたのだが、いろいろ試行錯誤してようやくまともに動作するようになってきた気がする。 …
LLVMをベースにしたコードの難読化ツールとしてoLLVMというのがあるというのを知った。どういうものなのか少し見てみようと思う。 github.com 論文は以下で取得可能だ。 ieeexplore.ieee.org Obfuscator-LLVM: Software Protection for the Masses https://c…
LLVMをベースにしたコードの難読化ツールとしてoLLVMというのがあるというのを知った。どういうものなのか少し見てみようと思う。 github.com 論文は以下で取得可能だ。 ieeexplore.ieee.org Obfuscator-LLVM: Software Protection for the Masses https://c…
自作CPUの実装、ロードストア命令の物理アドレスが決まらないうえでのハザードのボトルネックを解決した。 そうこうしているうちにいつの間にかRET命令のRAS予測が怪しくなってきているので修正しておきたい。 フロントエンドのパイプラインステージをs0, s1…
自作CPUの実装、ロードストア命令の物理アドレスが決まらないうえでのハザードが性能ボトルネックになっているのを見た。 一応、簡単なベンチマークでこの問題が解決できることを見たので、次にDhrystoneを流してどれくらい実行速度が向上するのか見てみよう…
ちょっと訳あってChipyardのバージョンアップ試行した。これまではv1.3.0を使っていたのだがあまりにも古いのでv1.5.0に切り替えてみる。 github.com Chipyardの何が面倒くさいかって、GNUツールチェインもついているのでそれのビルドに時間がかかる。バイナ…
https://events.linuxfoundation.org/riscv-summit/ RISC-V Summitは去年は完全にオンラインで実施していたようだけど、今年はハイブリッドでの開催となっているようだ。 RISC-V Summitの発表資料の一部が公開されていた。全部を見るのは厳しいけど、興味の…
自作CPUの実装、ロードストア命令の物理アドレスが決まらないうえでのハザードが性能ボトルネックになっているのを見た。 一応、簡単なベンチマークでこの問題が解決できることを見たので、次にDhrystoneを流してどれくらい実行速度が向上するのか見てみよう…
自作CPUの実装、ロードストア命令の物理アドレスが決まらないうえでのハザードが性能ボトルネックになっているのを見た。 ずいぶんと時間が空いてしまったが実装のデバッグを行う。以下のようなプログラムを作成して検証する。 loop: div x3, x3, x4 sd x10,…
2021年11月に新拡張仕様がかなりの数Ratifiedされた。その情報自体については知っていたけれども、あまり詳細を調査していなかったので見てみることにする。 RISC-Vの拡張仕様は通常MISAレジスタによってA-Zに対応付けて表記されるが、拡張が増えすぎてしま…