?? dspuva16c.do
字號:
echo
echo
echo ##########################################
echo " Simulation Script 'DSPuva16c' using ModelSimXE 5.3d #"
echo " v010411 Ok Santiago de Pablo (sanpab@eis.uva.es) #"
echo ##########################################
echo
-- Test of CALL (GOTO), RET and JP.
restart -force
delete wave -r *
radix hexadecimal
add wave CLK;
add wave nRESET;
add wave State;
add wave CODEaddr;
add wave CODEdata;
add wave IR;
add wave DataBus;
add wave -unsigned RegAddr;
add wave RegWE;
--add wave -unsigned PORTaddr;
--add wave IOwrite;
--add wave PORTout;
--add wave IOread;
--add wave PORTin;
add wave ZFF;
add wave SFF;
add wave VFF;
add wave PCflag;
echo
-- Global signals
force CLK 1 0ns, 0 50ns -repeat 100ns
force nRESET 0 0ns, 1 15ns
-- Initialize
force PORTin 16#0000 0ns
force CODEdata 16#FFFF 0ns
run 100ns
----------------------------------
-- Program Memory --
----------------------------------
-- 0x00: 0xAE00 r14 = K --
-- 0x01: 0x53A2 K = 0x53A2 --
-- 0x02: 0x3FD1 call (r13) 0xF1 --
-- 0xF1: 0x020D ret (r13) --
-- 0x03: 0xF0EE r14 xor r14 --
-- 0x04: 0x0000 jp (eq), 0x20 --
-- 0x20: 0x0000 nop --
----------------------------------
-------------------------------------
-- "r14 = 0x53A2" at 0x00 and 0x01 --
-------------------------------------
force CODEdata 16#AE00 15ns
force CODEdata 16#53A2 215ns
run 400ns
-------------------------------
-- "CALL (r13) 0xF1" at 0x02 --
-------------------------------
force CODEdata 16#3FD1 15ns
force CODEdata 16#FFFF 215ns
run 50ns
echo "$now ns: DataBus is 0x[examine -hex DataBus] vs 0x53a200."
echo "$now ns: RegAddr is [examine -u RegAddr] vs 14."
echo "$now ns: RegWE is '[examine RegWE]' vs '1'."
run 300ns
echo "$now ns: DataBus is 0x[examine -hex DataBus] vs 0x000003."
echo "$now ns: RegAddr is [examine -u RegAddr] vs 13."
echo "$now ns: RegWE is '[examine RegWE]' vs '1'."
run 50ns
-------------------------
-- "RET (r13)" at 0xF1 --
-------------------------
force CODEdata 16#020D 15ns
force CODEdata 16#FFFF 215ns
run 50ns
echo "$now ns: CODEaddr is 0x[examine -hex CODEaddr] vs 0xf1 (model A)."
echo "$now ns: CODEaddr is 0x[examine -hex CODEaddr] vs 0x1e2 (model B)."
echo "$now ns: CODEaddr is 0x[examine -hex CODEaddr] vs 0x3c4 (model C)."
echo "$now ns: CODEaddr is 0x[examine -hex CODEaddr] vs 0x788 (model D)."
echo "$now ns: CODEaddr is 0x[examine -hex CODEaddr] vs 0xf10 (model E)."
run 200ns
echo "$now ns: RegAddr is [examine -u RegAddr] vs 13."
run 150ns
---------------------------
-- "r14 xor r14" at 0x03 --
---------------------------
force CODEdata 16#F0EE 15ns
force CODEdata 16#FFFF 215ns
run 50ns
echo "$now ns: CODEaddr is 0x[examine -hex CODEaddr] vs 0x03."
run 350ns
----------------------------
-- "jp (eq) 0x20" at 0x04 --
----------------------------
force CODEdata 16#201B 15ns
force CODEdata 16#FFFF 215ns
run 50ns
echo "$now ns: DataBus is 0x[examine -hex DataBus] vs 0x000000."
echo "$now ns: RegAddr is [examine -u RegAddr] vs 0."
echo "$now ns: RegWE is '[examine RegWE]' vs '1'."
run 300ns
echo "$now ns: PCflag is '[examine PCflag]' vs '1'."
run 50ns
-----------------
-- Ending NOPs --
-----------------
force CODEdata 16#0000 15ns
run 50ns
echo "$now ns: CODEaddr is 0x[examine -hex CODEaddr] vs 0x20."
run 350ns
echo
echo All lines above, except model's, must match.
-- End of file --
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -