FPGA開発日記

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

2022-01-01から1ヶ月間の記事一覧

DATE2022のプログラムまとめ (3)

DATE2022 www.date-conference.com 22.4 Formal Methods in Design and Verification of Software and Hardware Systems BMC+FUZZ : EFFICIENT AND EFFECTIVE TEST GENERATION DOLMEN: FPGA SWARM FOR SAFETY AND LIVENESS VERIFICATION ADDING DUAL VARIABL…

DATE2022プログラムまとめ (2)

DATE 2022 www.date-conference.com 13.3 Advances in permanent storage efficiency and NN-in-memory ROBUST BINARY NEURAL NETWORK AGAINST NOISY ANALOG COMPUTATION MU-RMW: MINIMIZING UNNECESSARY RMW OPERATIONS IN THE EMBEDDED FLASH WITH SMR DIS…

DATE2022のプログラムまとめ (1)

DATE 2022 www.date-conference.com 1.1 Scalable quantum stacks: current status and future prospects FULL-STACK QUANTUM COMPUTING SYSTEMS IN THE NISQ ERA: ALGORITHM-DRIVEN AND HARDWARE-AWARE COMPILATION TECHNIQUES TWEEDLEDUM: A COMPILER COMP…

論文を書くための本をいろいろ購入

はじめてでも、ふたたびでも、これならできる! レポート・論文のまとめ方作者:新田 誠吾すばる舎Amazon できる研究者の論文生産術 どうすれば「たくさん」書けるのか (KS科学一般書)作者:ポール.J・シルヴィア講談社サイエンティフィクAmazon いろいろ頑張る…

コンピュータアーキテクチャ系国際学会サーベイ (4. WOSETその2)

なんとなく最近のコンピュータアーキテクチャ系の研究傾向が知りたいので、学会のサーベイをしてみることにした。 ICCADの併設されているWOSET、オープンソースのEDAツール系のワークショップで、面白そうな話がたくさんある。 WOSETのAbstractを読みながら…

コンピュータアーキテクチャ系国際学会サーベイ (4. WOSET)

なんとなく最近のコンピュータアーキテクチャ系の研究傾向が知りたいので、学会のサーベイをしてみることにした。 ICCADの併設されているWOSET、オープンソースのEDAツール系のワークショップで、面白そうな話がたくさんある。 WOSET: Workshop on open sour…

コンピュータアーキテクチャ系国際学会サーベイ (3. ICCAD その2)

なんとなく最近のコンピュータアーキテクチャ系の研究傾向が知りたいので、学会のサーベイをしてみることにした。 ICCADの続き。 7A. In-memory computing circuits and architectures 7B. Techniques towards fully automated analog IC designs 7C. Specia…

RISC-Vにおける割り込み処理挿入の方法確認

RISC-Vにおける割り込みの挿入方法を、テストパタンを動かしながら確認している。 以下のテストパタンで、MIP(Machine Interrupt Pending)とMIE(Machine Interrupt Enable)を制御して割り込みを挿入するテストが行われている。 動作確認には、ChipyardのRock…

コンピュータアーキテクチャ系国際学会サーベイ (2. ICCAD)

なんとなく最近のコンピュータアーキテクチャ系の研究傾向が知りたいので、学会のサーベイをしてみることにした。 次はICCAD。EDAとか半導体設計ツール、半導体設計環境系の話が多いかな。2021年のセッションで興味のありそうなものを引き出してみる。 ICCAD…

コンピュータアーキテクチャ系国際学会サーベイ (1. ISCA 続き)

なんとなく最近のコンピュータアーキテクチャ系の研究傾向が知りたいので、学会のサーベイをしてみることにした。 まずはISCA (International Symposium of Computer Architecture) から。2021年のプログラムから、Abstractを引き抜いて何となく傾向をつかん…

自作RISC-V CPUコア実装(テストパタンデバッグ)

自作CPUのデバッグをチマチマ進めている。 TLBの問題についてはとりあえず置いておいて、テストパタンを動かしながら問題点を洗い出している。 とりあえず環境等の問題を洗い出して、基本的なケースは動くようなところまで直していった。 巨大なコンフィグレ…

SFENCE.VMAの実行に関する検討

SFENCE.VMAの実装に関してちょっと詰まったのでメモ。 これまでSFENCE.VMAは単なるCSR命令として、In-orderに実行するようにしていたのだが、実際にはストア命令の操作が完了するまで待たなければならない。 3509 : 1325 : PC=[00000000ffc0245c] (M,46,01) …

コンピュータアーキテクチャ系国際学会サーベイ (1. ISCA)

なんとなく最近のコンピュータアーキテクチャ系の研究傾向が知りたいので、学会のサーベイをしてみることにした。 まずはISCA (International Symposium of Computer Architecture) から。2021年のプログラムから、Abstractを引き抜いて何となく傾向をつかん…

Rocket-ChipのAtomic命令動作観察 (1. ChipyardによるRTLシミュレーション)

とりあえずChipyardで以下のようにしてテストベンチを動かせば良かろう。vcdの出力はrv32ua-v-amoadd_d.vcdに行われる。 ./simulator-chipyard-RocketConfig-debug +verbose -v rv32ua-v-amoadd_d.vcd ${RISCV}/riscv64-unknown-elf/share/riscv-tests/isa/r…

「プログラミングコンテスト攻略のためのアルゴリズムとデータ構造」を買った

勉強のために「プログラミングコンテスト攻略のためのアルゴリズムとデータ構造」を買った。 あんまりプログラミング系、特に競プロは経験値が少ないので勉強してみることにした。少しずつ勉強していきます。 プログラミングコンテスト攻略のためのアルゴリ…

Chipyardで32-bit版BOOMを生成するための調査 (4. RV32向けのF拡張限定BOOMのテスト実行)

前回RV32のF拡張限定のVerilogファイルを生成したので、これのテストを実行する方法を調査する。 msyksphinz.hatenablog.com Chipyardのドキュメントによると、以下のようにすることでriscv-testsとriscv-benchmarksを実行することができる。 make CONFIG=Me…

RISC-Vベクトル拡張におけるロードストア命令のグロい仕様

RISC-Vベクトル拡張命令は非常に複雑なことで有名だが、命令を読み込んでISSの実装、RTLの実装をしているなかで非常に仕様として分かりにくい、複雑な命令があるのでメモしておく。 github.com ロードストア命令には、大きく分けて4つのアドレッシングモード…

自作RISC-V CPUコア実装(テストパタンデバッグ)

自作CPUのデバッグをチマチマ進めている。 TLBの問題についてはとりあえず置いておいて、テストパタンを動かしながら問題点を洗い出している。 とりあえず環境等の問題を洗い出して、基本的なケースは動くようなところまで直していった。 RV32のテストケース…

「並行プログラミング入門」を買った

買ってみたものの、全然時間が無くて読んでいない。ちゃんと読まなければ... 並行プログラミング入門 ―Rust、C、アセンブリによる実装からのアプローチ作者:高野 祐輝オライリージャパンAmazon

自作RISC-V CPUコア実装(テストパタンデバッグ)

自作CPUのデバッグをチマチマ進めている。 現在、1つのVerilogファイルから10個程度のコンフィグレーションを生成するようにしてリグレッションを走らせている。 TLBの挙動がおかしくなってしまったので、いろいろ見ているのだが、どうもVerilatorの問題を踏…

「ディープラーニングを支える技術」を買った

自分はあまりディープラーニングに対する素養は無いのだけれども、いろいろとまとまっている資料はとても便利だし、なにせPreferredの偉い人が書いている本ということで買ってみることにした。 ディープラーニングに詳しくない自分がある程度理解するために…

Chipyardで32-bit版BOOMを生成するための調査 (3. RV32向けにF拡張限定BOOMを生成)

ちょっと気になったのだけれども、現在BOOMは32ビットモードでのFPUをサポートしていないらしい(アサーションが組まれている)。 じゃあ無理やりそれを外して動作する様にしたらどうなるか、ということでやってみる。つまり、以下のアサーションをコメントア…

アルゴ式の問題を地道に解いている

私は競技プログラミングが全くの苦手分野で、あまりまじめに取り組んだことがないのだけれども、いろんな事情があってアルゴリズムの復習をしなくてはならず、簡単に勉強できそうなアルゴ式を勉強してみることにした。 algo-method.com 特に苦手な動的計画法…

Chipyardで32-bit版BOOMを生成するための調査 (2. コンフィグレーション調査)

メモ:Chipyard tag 1.5.0はMediumBoomConfigの生成に失敗する。master`ブランチを使った方が良い。 commit 02adf86b8261ca4b5baf35b3257e15cdbabd7f87 (HEAD, origin/master, origin/HEAD) Author: Abraham Gonzalez <abe.j.gonza@gmail.com> Date: Thu Dec 2 09:25:51 2021 -0800 </abe.j.gonza@gmail.com>…

Chipyardで32-bit版BOOMを生成するための調査 (1. コンフィグレーション調査)

32ビット版の乗除算器のVerilogだけ欲しくて、Chipyardで構成されるChiselの乗除算器のVerilogだけを持ってこようとしている。 通常、BOOMのコンフィグレーションを構成するためには、以下のようにしてVerilogファイルを生成する。 make CONFIG=MediumBoomCo…

WavedromをCLIで動かすためのパッケージインストール

WaveDromが便利すぎるのだが、CLIのインタフェースが無くて少し困っていた。 調べてみるとCLIを構築するためリポジトリがあるので、それを使う必要がある。 github.com 自分はフロントエンドについて全く詳しくないので、Node.jsのアップデートの方法が分か…

あけましておめでとうございます 2022

あけましておめでとうございます。今年も、FPGA開発日記をよろしくお願いします。 去年は、自分のなかではかなりハードウェア開発寄りに活動を寄せていった一年だった。 もちろんソフトウェアもいろいろ見ていたけど、自作CPUとか、ハードウェア開発とか、Sy…