k0b0's record.

Computer Engineering, Arts and Books

FPGA

NIOS IIを使った回路構成を変更した後でEclipseで再コンパイルした際に生じるエラー

NIOSIIを使ったシステムでは回路構成を変更した後で、Eclipseで再コンパイルが必要となるのだが、 普通にコンパイルすると以下のエラーが出る。 エラーメッセージ Generate the BSP to update the Makefile, and then build again. To generate from Eclipse…

Nios II Software Build Tools for Eclipseが立ち上がらない。

Quartus Prime 18.1でNIOS II Software Build Tools for Eclipseが立ち上がらない。以下のサイトによると、この問題は解決に至ってないみたい。。。 sites.google.com Quartus Prime上からではなく、コマンドラインからなら起動できるようだ。 そのためには…

NiosIIがコンパイルできない。:Error: Can't generate netlist output files because the file ${FINE_NAME} is an OpenCore Plus time-limited file

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…

Error (16031): Current Internal Configuration mode does not support memory initialization or ROM. Select Internal Configuration mode with ERAM.

メモリの初期化をサポートできない。 Quartus Primeでメモリ(初期値あり)のコードをコンパイルしたら怒られた。 どうやら、初期値を設定する場合はメモリの内部構成モードを変更しないといけないみたい。 解決策 メニューバーの[Assignments] => [Device] …

宣言されていない信号線を幅1bitの信号線(wire)として暗黙的に解釈することを回避する

VerilogHDLの言語仕様ではwireとして宣言されていない信号線は暗黙的に1bitのwireとして解釈される。一応、Warningとしてコンパイラが教えてくれるのだが、これが原因で何時間もデバッグする羽目になる事もある。。。 そこで、"`default_nettype wire”宣言と…

Quartus PrimeでMIF(Memory Initialization File)を作成してみる。

MIF(Memory Initialization File)を作成してみる。 Quartus PrimeのIPcatalogから生成するメモリモジュールに初期値を設定するために、MIFを作成する。[File] -> [New]よりMemory Initialization Fileを選択する。 メモリのワード数とワード幅を設定する。 …

Verilog/SystemVerilogでincludeするヘッダファイルの競合を回避する。

複数のモジュール内で同じヘッダファイルをincludeしたSystemVerilog記述をQuartus Primeでコンパイルしたところ、競合が生じてエラーが出た。 ModelSimでの論理シミュレーション時は大丈夫だったのだが、Quartus Primeのコンパイラは厳しいようである。 と…

Quartus Prime のIP Catalogを使ってシングルポートRAM(同期書き込み、非同期読み出し)を生成してみる。@2019/06/14 追記

IP Catalogを使ってシングルポートRAM(同期書き込み、非同期読み出し)を生成してみる。 FPGA(MAX10)でそこそこの容量のメモリを使いたいのだが、レジスタで構成すると、LEをかなり消費する。というわけで、IP Catalogで用意されている、シングルポートRAM(同…

VerilogHDLでクロック分周器を記述してみる

クロック分周器 FPGAボードを使って、7セグメントLEDに結果を表示させたい時がある。 けれど、MHz〜GHzで動作されたんでは確認できない。 という事で、クロック分周器(50MHz -> 1Hz)を2つ記述してみる。 (どちらの記述も分周するのだけれど、出力される波…