2017-11-01から1ヶ月間の記事一覧
UCB(University of California Berkeley)の実装したRISC-Vコアとしては代表的なものが2つあり、1つのリポジトリでブランチが切られている。 github.com Rocket-Chip : masterブランチ BOOM-v1 : boom2ブランチ BOOM-v1 : boom-v1ブランチ しかしどうもRocket…
RISC-V Workshopが開催されているが、このタイミングでプログラミング言語RustのRISC-V移植版が公開されているのを発見した。 やっぱり来ると思ったよ! abopen.com Rustのコンパイル環境はLLVMをベースにしているようだ。 ターゲットボードはHiFive1となっ…
RISC-Vの実装であるRocket-Chipには、標準的な5ステージパイプラインであるRocket-Core、さらにアウトオブオーダ実行が可能なBOOM(Berkeley Out-of-Order Machine)-V1, BOOM-V2などが存在する。 これらのCPUコアはいずれもハードウェア浮動小数点演算器を持…
「リーダブルコード」読書会。名著と呼ばれており、私も一度さっくりと読んだ。 ただし忘れていることもあるし、体系的に学びたいので読み直す。 例によってJupyter Notebookに書いてまとめをブログに張っていくことにする。 今回は最後の章「第15章「分・時…
「リーダブルコード」読書会。名著と呼ばれており、私も一度さっくりと読んだ。 ただし忘れていることもあるし、体系的に学びたいので読み直す。 例によってJupyter Notebookに書いてまとめをブログに張っていくことにする。 今回は「第13章 短いコードを書…
本当は、 NVDLAをVerilatorで動かしてみたかったんです。。 NVDLAがVivado Simulatorに対応になったところで、ついでにVerilatorでNVDLAを動かすことは出来るのだろうかと考え、移植を試みた。 結論から言うと、動作させることはできていない。 これはVerila…
諸事情で数日はネットワークをあまり使えないので、RISC-Vに関連する調査は中止。 あまりやることが無いので例によって一人読書会をしている。 今回は「リーダブルコード」。名著と呼ばれており、私も一度さっくりと読んだ。 ただし忘れていることもあるし、…
目次 NVIDIAのディープラーニングアクセラレータNVDLAをVivadoでシミュレーションする NVDLAの勉強 (NVDLA Primerを読んでまとめる: ハードウェア編) NVDLAの勉強 (NVDLA Primerを読んでまとめる: ソフトウェア編)> NVDLA 1.0 がVerilatorに対応している(が…
諸事情で数日はネットワークをあまり使えないので、RISC-Vに関連する調査は中止。 あまりやることが無いので例によって一人読書会をしている。 今回は「リーダブルコード」。名著と呼ばれており、私も一度さっくりと読んだ。 ただし忘れていることもあるし、…
関連記事 NVIDIAのディープラーニングアクセラレータNVDLAをVivadoでシミュレーションする NVDLAの勉強 (NVDLA Primerを読んでまとめる: ハードウェア編) NVDLAの勉強 (NVDLA Primerを読んでまとめる: ソフトウェア編)> NVDLA 1.0 がVerilatorに対応している…
諸事情で数日はネットワークをあまり使えないので、RISC-Vに関連する調査は中止。 あまりやることが無いので例によって一人読書会をしている。 今回は「リーダブルコード」。名著と呼ばれており、私も一度さっくりと読んだ。 ただし忘れていることもあるし、…
関連記事一覧 NVIDIAのディープラーニングアクセラレータNVDLAをVivadoでシミュレーションする NVDLAの勉強 (NVDLA Primerを読んでまとめる: ハードウェア編) NVDLAの勉強 (NVDLA Primerを読んでまとめる: ソフトウェア編)> NVDLA 1.0 がVerilatorに対応して…
諸事情で週末はネットワークをあまり使えないので、RISC-Vに関連する調査は中止。 あまりやることが無いので例によって一人読書会をしている。 今回は「リーダブルコード」。名著と呼ばれており、私も一度さっくりと読んだ。 ただし忘れていることもあるし、…
前回の続き。多少は面積比較できる程度に環境が構築できてきたので、いろんな構成でもってVivadoで合成して面積を比較してみた。 まず大前提の問題として、Vivadoの面積レポートはとても読みにくい。まあSynopsysのDesign Compilerのように、単純にゲート数…
諸事情で週末はネットワークをあまり使えないので、RISC-Vに関連する調査は中止。 あまりやることが無いので例によって一人読書会をしている。 今回は「リーダブルコード」。名著と呼ばれており、私も一度さっくりと読んだ。 ただし忘れていることもあるし、…
諸事情で週末はネットワークをあまり使えないので、RISC-Vに関連する調査は中止。 あまりやることが無いので例によって一人読書会をしている。 今回は「リーダブルコード」。名著と呼ばれており、私も一度さっくりと読んだ。 ただし忘れていることもあるし、…
前回のRocket Chipの面積比較に続いて、BOOMでも同様のことを実施した。 BOOMはVersion 1とVersion 2があり、それぞれでVerilogを生成してVivadoで合成してみる。 まだ集計できていないが、だいたいの面積の概要は以下のようになっている。BOOM v1の方が少し…
前回のRocket Chipの標準論理合成では、FPGA向けにVivadoで合成してもBlockRAMが正常に推論されず、Dcacheが面積のほとんどを消費してしまう構成になってしまっていた。 msyksphinz.hatenablog.com どうにかしてBlockRAMを使うように変更することはできない…
Hisa Ando氏の「GPUを支える技術」を、とりあえず読了した。最後の方はだいぶ適当に省略してしまったが、メインの部分はかなりちゃんと読み込んだと思う。 GPUの基礎を分かっていない私にとって、一から解説してくれる良い本だった。詳細までは触れることは…
HotChips29 で発表された、学生が開発したRISC-V SoC ”Celerity”について資料を読んだ。 news.mynavi.jp Celerityは学生の作ったRISC-Vのメニーコアチップで、4大学が共同して9か月で作成したチップとなっている。 9か月という短期間で作るための秘訣として…
Hisa Ando氏の著書「GPUを支える技術」を買っていたのだが、ずいぶんと積ん読にしているのだった。 なので、一応最後まで読んでいきたい。こういうのは、きちんと宣言しないと途中で辞めちゃうので宣言する。頑張って最後まで読んでいこう。 今回は第6章。PC…
Hisa Ando氏の著書「GPUを支える技術」を買っていたのだが、ずいぶんと積ん読にしているのだった。 なので、一応最後まで読んでいきたい。こういうのは、きちんと宣言しないと途中で辞めちゃうので宣言する。頑張って最後まで読んでいこう。 今回は第5章。NV…
Rocket Chipは構成によってどのようなコンポーネントが含まれているのかが変わっているのだが、それ以外にもリビジョンによっても結構構成が変わって、FPGAへのインプリメントに使用する面積が変わったりもする。 比較対象として、以下のリビジョンを使用し…
Hisa Ando氏の著書「GPUを支える技術」を買っていたのだが、ずいぶんと積ん読にしているのだった。 なので、一応最後まで読んでいきたい。こういうのは、きちんと宣言しないと途中で辞めちゃうので宣言する。頑張って最後まで読んでいこう。 今回は第4章後半…
Hisa Ando氏の著書「GPUを支える技術」を買っていたのだが、ずいぶんと積ん読にしているのだった。 なので、一応最後まで読んでいきたい。こういうのは、きちんと宣言しないと途中で辞めちゃうので宣言する。頑張って最後まで読んでいこう。 今回は第4章前半…
Hisa Ando氏の著書「GPUを支える技術」を買っていたのだが、ずいぶんと積ん読にしているのだった。 なので、一応最後まで読んでいきたい。こういうのは、きちんと宣言しないと途中で辞めちゃうので宣言する。頑張って最後まで読んでいこう。 今回は第3章。 I…
Rustのライブラリを使えばElfの解析だってできる。 バイナリファイルを読み込んで、HashMapにアドレスとデータの対を格納するプログラムを作成した。 各セクション毎にデータを読み込んで一つのHashMapにバイト単位でデータを書き込む。このモデルを作成すれ…
Hisa Ando氏の著書「GPUを支える技術」を買っていたのだが、ずいぶんと積ん読にしているのだった。 なので、一応最後まで読んでいきたい。こういうのは、きちんと宣言しないと途中で辞めちゃうので宣言する。頑張って最後まで読んでいこう。 今回は第2章。 G…
Hisa Ando氏の著書「GPUを支える技術」を買っていたのだが、ずいぶんと積ん読にしているのだった。 なので、一応最後まで読んでいきたい。こういうのは、きちんと宣言しないと途中で辞めちゃうので宣言する。頑張って最後まで読んでいこう。 一応、Jupyter N…
RustのライブラリであるGoblinを使って、バイナリファイルを解析のプログラムを作成している。Rustの構造はなかなか慣れないので、進めるのが大変だ。 Goblinを使った場合、Sectionを一つずつ解析して、バイナリの入っている部分を取り出していく必要がある…