シミュレーション例を以下に示します。
テストベクタ
以下のテストベクタにより、リセットをかけた後
add #-2 halt
# clock
CLOCK 10000
I_A 5000
# input
RESET
ACK
CLKM
INSTM
EXEC
io_DATA[15:0]
# testvector
# RESET ACK CLKM INSTM EXEC io_DATA[15:0]
0 1 0 1 1 1 16'hZZZZ # 0ns
15000 0 0 1 1 1 16'hZZZZ # 1500
10000 1 0 1 1 1 16'hZZZZ # 2500
10000 1 0 1 1 1 16'h0FF0 # 3500
10000 1 0 1 1 1 16'h0FF0 # 4500
10000 1 0 1 1 1 16'hZZZZ # 5500
10000 1 0 1 1 1 16'h81FE # 6500 add #-2
10000 1 0 1 1 1 16'h81FE # 7500
10000 1 0 1 1 1 16'hZZZZ # 8500
10000 1 0 1 1 1 16'hZZZZ # 9500
10000 1 0 1 1 1 16'hZZZZ #10500
10000 1 0 1 1 1 16'hZZZZ #11500
10000 1 0 1 1 1 16'hF800 #12500 halt
10000 1 0 1 1 1 16'hF800 #13500
10000 1 0 1 1 1 16'hZZZZ #14500
10000 1 0 1 1 1 16'hZZZZ #15500
10000 1 0 1 1 1 16'hZZZZ #16500
1,075,040 時間に "ACC" の内容が "FFFE" となり、"0+FFFE=FFFE" を実行し たことを意味しています。また、1,500,000時間に"halt"信号が"L"になってい ることから、"halt" 命令が実行されたことが分かります。
シミュレーションに関する補足説明
全ての信号波形を観測できるようにする方法
今までシミュレーションを行う際には、シミュレーションをかける回路の入出 力端子のみについてシミュレーションを行ってきました。しかし、回路が大き くなると、下の階層の信号についても波形を確認したくなると思います。 その際はシミュレーションをする前に以下の設定を行って下さい。
"VerilogーXL Integration Control" ウィンドウの "Setup -> Record Signals..." を選択します。"Record Signals Options" ウィンドウが開きま すが、そのときデフォルトでは "Top Level Primary I/O" が選択されていま す。これを、"All Signals" に変更した後 "OK" を押します。 これにより、回路の全ての階層の信号について波形を観測することができるよ うになります。
My mail address is
kuga@cms.kyutech.ac.jp .
Last modified on