FPGA
NIOSIIを使ったシステムでは回路構成を変更した後で、Eclipseで再コンパイルが必要となるのだが、 普通にコンパイルすると以下のエラーが出る。 エラーメッセージ Generate the BSP to update the Makefile, and then build again. To generate from Eclipse…
Quartus Prime 18.1でNIOS II Software Build Tools for Eclipseが立ち上がらない。以下のサイトによると、この問題は解決に至ってないみたい。。。 sites.google.com Quartus Prime上からではなく、コマンドラインからなら起動できるようだ。 そのためには…
Error: Can't generate netlist output files because the file ${FINE_NAME} is an OpenCore Plus time-limited file Quartus PrimeでNiosIIのソースコードをコンパイルしたら、こんなエラーが出た。 解決方法 [Assignments] -> [Settings] -> [EDA Tool Se…
メモリの初期化をサポートできない。 Quartus Primeでメモリ(初期値あり)のコードをコンパイルしたら怒られた。 どうやら、初期値を設定する場合はメモリの内部構成モードを変更しないといけないみたい。 解決策 メニューバーの[Assignments] => [Device] …
VerilogHDLの言語仕様ではwireとして宣言されていない信号線は暗黙的に1bitのwireとして解釈される。一応、Warningとしてコンパイラが教えてくれるのだが、これが原因で何時間もデバッグする羽目になる事もある。。。 そこで、"`default_nettype wire”宣言と…
MIF(Memory Initialization File)を作成してみる。 Quartus PrimeのIPcatalogから生成するメモリモジュールに初期値を設定するために、MIFを作成する。[File] -> [New]よりMemory Initialization Fileを選択する。 メモリのワード数とワード幅を設定する。 …
複数のモジュール内で同じヘッダファイルをincludeしたSystemVerilog記述をQuartus Primeでコンパイルしたところ、競合が生じてエラーが出た。 ModelSimでの論理シミュレーション時は大丈夫だったのだが、Quartus Primeのコンパイラは厳しいようである。 と…
IP Catalogを使ってシングルポートRAM(同期書き込み、非同期読み出し)を生成してみる。 FPGA(MAX10)でそこそこの容量のメモリを使いたいのだが、レジスタで構成すると、LEをかなり消費する。というわけで、IP Catalogで用意されている、シングルポートRAM(同…
クロック分周器 FPGAボードを使って、7セグメントLEDに結果を表示させたい時がある。 けれど、MHz〜GHzで動作されたんでは確認できない。 という事で、クロック分周器(50MHz -> 1Hz)を2つ記述してみる。 (どちらの記述も分周するのだけれど、出力される波…