k0b0's record.

Computer Engineering, Arts and Books

Verilog/SystemVerilog

SystemVerilogのalways_comb、always_ff、always_latch

SystemVerilogの3種類のalways文をメモ。 3種類のalways文を使い分けて記述することでコードの可読性が高くなったり、予期しない回路の生成を防ぐことが出来る。 always_comb 組合わせ回路記述する際に使うalways文。センシティビティリストには何も記述しな…

Modelsimのコマンド(vlog, vsim)スクリプト

Modelsimを使ってverilogソースをコンパイルしてシミュレーションするスクリプトを作成したのでメモしておく。 Modelsimのコマンドスクリプトサンプル スクリプトを実行するディレクトリ構成 sample/ |- sample.sv /*回路モジュール*/ |- sample_tb.sv /*テ…

intelFPGAのQuartus Prime Lite Edition(version 17.1)をUbuntu16.04(on Virtualbox)にインストールする

IntelFPGAのQuartus Prime Lite Edition(version 17.1)をUbuntuにインストールする システムの環境 ubuntu16.04 (on Virtualbox) 64bit Processor core : 1 Memory size : 2GB 1, 前準備 Quartus Primeに付随するModelSim-Altera (Starter) Editionを、Lin…

ModelSimをコマンドラインで実行する方法

MoselSimをコマンドラインで実行する方法をメモ。 1, vlib : 作業ディレクトリを作成 $ vlib dir 2, vmap : プロジェクト名と作業ディレクトリを関連づける $ vmap prj dir_path 3, vlog : ソースコードのコンパイル $ vlog test1.v test2.v -f file_list -w…

Verilog/System Verilogのgenerate文

for文を使って回路モジュールを任意個生成する方法があったよなぁと思い出しつつコーディングした。忘れないうちにメモ。下記の例ではgenerete文を使ってFFを4つ生成している。うまくgenerete文を使えば色々便利かも。 //Example of generating four FFs mod…

Icarus Verilog の引数オプション

Icarus Verilog(iverilog)の引数オプションをメモしておく。 書式 iverilog [-ESVv] [-Cpath] [-ccmdfile] [-g1|-g2|-g3.0] [-Dmacro[=defn]] [-pflag=value] [-Iincludedir] [-mmodule] [-Mfile] [-Nfile] [-ooutputfilename] [-stopmodule] [-ttype] [-Tmi…

Icarus Verilog の使い方(on MacOS)

インストール方法 以下のコマンドを実行してインストールする。 (注:Homebrew をインストールしていない場合は先にHomebrewをインストールする。) $ brew install icarus-verilog コンパイル 以下のコマンドよりVerilogHDLファイル(.v)をコンパイル $ ive…