眼鏡止水

FPGA、ネットワーク機器、料理、そしてメガネ女子。

2025-01-01から1年間の記事一覧

【RISC-V】ISAシミュレータSpikeの構成を調査する

概要 自作CPUの動作検証において、「正しい」モデルとの比較が有効です。 本記事では、RISC-VのISAシミュレータであるSpikeの構成を調査します。 これにより、将来的にVerilatorのテストベンチと統合する方法を模索します。 本編 (注) 本記事では、Spikeのco…

【CMake】Verilatorによるシミュレーションモデルの生成をCMake+Ninja+Clang+Ccache+moldで行う

概要 Verilatorは便利で高速なVerilog/SystemVerilogシミュレータですが、パラメタなどを変えた複数の実行ファイルを生成する場合はターゲットとソースの管理が煩雑になりえます。 本記事では、CMakeを用いて効率的にターゲットとソースを管理することを試み…

【openXC7】オープンソースのツールチェーンでKintex-7のFPGAボードを使ってみる

概要 先日、AliExpressでKintex-7 Base CというFPGAボードを購入しました。 My new gear... pic.twitter.com/V63Z9qo7Kj— Y.M.D オフライン (@YMD_Glasses) February 11, 2025 このボードに搭載されているFPGAはKintex-7 325Tであり、Vivadoで使用するには有…

【GTKWave】RISC-Vの命令の波形をPythonスクリプトでアセンブリ表示にしてみる

Verilogなどで実装したプロセッサのデバッグをしているとき、プログラムカウンタと各パイプラインステージで処理中の命令の波形をGTKWaveに表示することがしばしばあります。 しかしながら、命令のフォーマットを覚えてないと、今目の前でバグを引き起こして…