RISC-V の 4 段パイプライン特権命令付きプロセッサを書いた話

公開日:
RISC-V の 4 段パイプライン特権命令付きプロセッサを書いた話

RISC-V の4段パイプライン (フォワーディング、分岐予測も実装) 特権命令付きプロセッサを書いた時のお話しです。何から始めればいいかわからないという人も詳しく知りたいという人もぜひ読んでみてください!>> 続きを読む

RISC-V の CSR 転送命令と特権命令の機構と実装

公開日:
RISC-V の CSR 転送命令と特権命令の機構と実装

RISC-V で例外や割り込みを処理するためには CSR 転送命令や特権命令を実装する必要があります。この辺りは OS とも非常に深い関わりがあり、これらの命令がないと自作プロセッサで OS を動かすことはできません。これらを実装するために、初めどこから手をつけていいかわからなかったので、できるだけ丁寧に直感的に理解できるように解説してみたいと思います。>> 続きを読む

Vivado を使った Verilog のシミュレーションとデバッグの方法

公開日:
Vivado を使った Verilog のシミュレーションとデバッグの方法

Verilog を書いていざコンパイル…!と思っても意外とやり方が分からなかったりデバッグの方法がわからなくて困ることが多いと思います。そこで、筆者の経験を踏まえて、簡単にコンパイル・シミュレーション・デバッグを行う方法をまとめていきたいと思います。>> 続きを読む

初めての System Verilog

公開日:
初めての System Verilog で気をつけるべきこと

System Verilog はハードウェアを記述するための言語ですが、ハードウェアを記述するのはソフトウェアを記述するのと異なる部分も多く、初めて書く人は大きく戸惑うのではないかと思います。筆者もその1人だったので、その経験を踏まえて System Verilog の書き方を雑多に解説していこうと思います。System Verilogでハードウェアを記述できるようになると FPGA 上に実際に実装して動かしたりできるようになるので、頑張ってください!>> 続きを読む