シミュレーション例を以下に示します。
テストベクタ
以下のテストベクタにより、リセットをかけた後
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