1 補足資料 1: テストベンチの書き方 テストベンチの各部の意味は以下の通りである. • レジスタ宣言部: テストしたい回路の入力ポートをレジスタとして宣言する. • ワイヤ宣言部: テストしたい回路の出力ポートをワイヤとして宣言する. • 回路呼出部: テストしたい回路をモジュール呼出する. • initial begin 部: 信号の初期値および変化を記述する. 順序回路の場合はさらにクロック生成部が追加される. テストしたい回路の入出力ポートを追加,削除,名前変更した際は,レジスタ宣言部, ワイヤ宣言部,回路呼出部のポート名を適切に変更する必要がある.さらに initial begin 部の初期値設定にも気をつける. テストしたい回路を保存する前にテストベンチを自動生成すると,誤った入出力ポート の情報を元にテストベンチが生成される.テストベンチを作成する前に必ずテストしたい 回路を保存すること. 2 ¶ ³ //t.v ‘timescale 1ns / 1ps module t_v; // Inputs reg a; reg b; reg ci; // Outputs wire s; wire co; // Instantiate the Unit Under Test (UUT) FA uut ( .a(a), .b(b), .ci(ci), .s(s), .co(co) ); initial begin // Initialize Inputs a = 0; b = 0; ci = 0; // Wait 100 ns for global reset to finish #100; // Add stimulus here #100 a=1’b1; #100 b=1’b1; #100 ci=1’b1; #100 a=1’b0; #100 b=1’b0; end endmodule µ ´
© Copyright 2024 ExpyDoc