KITE-1 マイクロプロセッサのシミュレーション


シミュレーション例を以下に示します。

テストベクタ

以下のテストベクタにより、リセットをかけた後

add	#-2
halt
を実行します。"CLOCK"に 10,000 を与えていますが、これで1,000ns (1MHz) の動作をシミュレーションします。また、"I_A" 信号は、マルチプレクスされ ているALUとIRの表示を切り替えるための信号です。
# 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

このシミュレーション結果は以下のようになります。

cwaves_kite_top_sample.gif (34KB)

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