Quantcast
Channel: ウィリアムのいたずらの、まちあるき、たべあるき
Viewing all articles
Browse latest Browse all 7270

今日FPGAで学んだこと(6)ModelSim

$
0
0
前回までは、verilogでFPGAをいろいろ操作していましたが、
今日は、検証のおはなしです。
検証ツールModelSimの使い方です


■ModelSimに行く前に・・・

◎(今日の話と関係ないけど)
 ピンのインポート
・Assignment→ImportAssignment
  エクスポートしたCSVファイルを指定
  読み込んだら、確認のため
 Assignment→PinPlanner
 
・バスになっているものは、
 PinPlannerの左上のGroupでいっぺんに
 電圧とか、指定できる

◎階層設計(テストベンチは、これを使う)

  下位モジュール=部品
  部品をつなげていくかんじ

  インスタンシエーション

【書式】

IC uIC1(
.IN1(A),.OUT1(C)
);

【説明】

IC 下位モジュール(部品)
uIC1 インスタンス名
.IN1 .信号→下位モジュール
(A) 上位モジュール

※1対1に対応するなら

IC uIC1(
A,C
);

と、下位モジュールが省略できる

・トップモジュールはプロジェクト名になる



■Model Simでシミュレーション

◎テストベンチモジュールを作る
  論理合成+テストベンチ独特
  入力信号と出力信号をテストベンチと接続

【書式】
`timescale 1ps/1ps
module ABC_tb;

// Inputs
reg A;
reg B;
reg CLK50;

// Outputs
wire C;

// Instantiate the Unit Under Test (UUT)
ABC uut (
.A(A),
.B(B),
.C(C)
);

initial begin
$monitor("#%t:A=%b,B=%b,C=%b",$time,A,B,C);
$timeformat(-12,0 ,"ps",3);
CLK50 = 0;
end

always #10 begin //generated basic clock
CLK50

Viewing all articles
Browse latest Browse all 7270

Trending Articles