2019-08-01から1ヶ月間の記事一覧
RISC-Vのビルド環境を作りなおす必要が出てきたので、せっかくだから最新のriscv-toolsのリポジトリの環境を使って作りなおすことにした。 今回はその際に幾つか躓いた部分があったのでそれについてまとめておく。 crosstool-ngを使ったRISC-Vのコンパイラの…
Twitterでつぶやいてた以下のスレッドに書いてたやつをまとめてみた話。 ある数字Nが表せる状態数のビット幅を取得するとき→log2Ceil(N)その数字Nを表現するために必要なビット数を取得するとき→log2Ceil(N+1)を使えってソースに書いてあった!(ランダム試…
Rocket Chipの解析の話の5回目。 今日はソースコードの解析の傍らで行っていたLazyModuleの使い方を探っていた結果についてを少し。 LazyModule LazyModuleを使った最小??のモジュール
Rocket Chipの解析の話の4回目。 今回は"make"に渡す引数の一つDefaultConfigの中身でああるConfigやParametersについて。 この辺の話はすでにmsyksphinzさんのFPGA開発日記で解説してくれているけど、解析の関係上で扱っておくべきだと思うのでざっと見てい…
今作り直してるオレオレRISC-V(dirv)の対向に接続するメモリモデルがバグってるので、バグ再現パターンを起こしてシミュレーションを行っていた。その際に出くわした「いや、当たり前でしょ」な話をメモ書き程度に残しておく。ScalaTest使ってる人は多分タイ…
もうそこそこ経ってはいるがChiselの3.2-SNAPSHOTがgithubのリリースに上がっている。今回はそれを使うにあたって遭遇したエラーについて。 Chsiel-3.2のSNAPSHOTが公開された ImplicitModuleが、、、消えた?? おまけ ~ 他のプロジェクトでもアップデート…
ある意味前々回の続きのネタ。前々回の記事ではシミュレーション実行時にログにサイクル数を出す方法を探したが、今回は波形上で確認するための細工を行ってみる。 ”前々回の記事”は以下。 Chiselの波形上に経過サイクルを表示 WDT(Watchdog Timer) WDTが勝…