OpenCores
URL https://opencores.org/ocsvn/w11/w11/trunk

Subversion Repositories w11

[/] [w11/] [tags/] [w11a_V0.61/] [tools/] [tbench/] [test_w11a_dstm_word_flow.tcl] - Blame information for rev 40

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 25 wfjm
# $Id: test_w11a_dstm_word_flow.tcl 575 2014-07-27 20:55:41Z mueller $
2 19 wfjm
#
3 22 wfjm
# Copyright 2013-2014 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
4 19 wfjm
# License disclaimer see LICENSE_gpl_v2.txt in $RETROBASE directory
5
#
6
# Revision History:
7
# Date         Rev Version  Comment
8 25 wfjm
# 2014-07-27   575   1.0.2  drop tout value from asmwait, reply on asmwait_tout
9 22 wfjm
# 2014-03-01   552   1.0.1  check that unused regs stay 0
10 19 wfjm
# 2013-03-31   502   1.0    Initial version
11
#
12
# Test dstm flow with inc ... instructions for word access
13
#
14
 
15 22 wfjm
# ----------------------------------------------------------------------------
16 19 wfjm
rlc log "test_w11a_dstm_word_flow: test dstm flow for word with inc ..."
17
rlc log "  r0,(r0),(r0)+,@(r0)+,-(r0),@-(r0) (mode=0,1,2,3,4,5)"
18 22 wfjm
 
19
# code register pre/post conditions beyond defaults
20
#   r0   #010    -> #011
21
#   r1   #data1  -> #data1
22
#   r2   #data2  -> #data2+4
23
#   r3   #pdata3 -> #pdata3+4
24
#   r4   #data4e -> #data4e-4
25
#   r5   #pdat5e -> #pdat5e-4
26 19 wfjm
$cpu ldasm -lst lst -sym sym {
27
        . = 1000
28
start:  inc     r0
29
        inc     (r1)
30
        inc     (r2)+
31
        inc     (r2)+
32
        inc     @(r3)+
33
        inc     @(r3)+
34
        inc     -(r4)
35
        inc     -(r4)
36
        inc     @-(r5)
37
        inc     @-(r5)
38
        halt
39
stop:
40 22 wfjm
;
41 19 wfjm
data1:  .word   20
42
data2:  .word   30,31
43
data3:  .word   40,41
44
data4:  .word   50,51
45
data4e:
46
data5:  .word   60,61
47
data5e:
48
pdata3: .word   data3,data3+2
49
pdata5: .word   data5,data5+2
50
pdat5e:
51
}
52
 
53 20 wfjm
rw11::asmrun  $cpu sym [list r0 010 \
54
                             r1 $sym(data1) \
55
                             r2 $sym(data2) \
56
                             r3 $sym(pdata3) \
57
                             r4 $sym(data4e) \
58
                             r5 $sym(pdat5e) ]
59 25 wfjm
rw11::asmwait $cpu sym
60 20 wfjm
rw11::asmtreg $cpu [list r0 011 \
61
                         r1 $sym(data1) \
62
                         r2 [expr {$sym(data2)  + 4}] \
63
                         r3 [expr {$sym(pdata3) + 4}] \
64
                         r4 [expr {$sym(data4e) - 4}] \
65
                         r5 [expr {$sym(pdat5e) - 4}] ]
66
rw11::asmtmem $cpu $sym(data1) {021 031 032 041 042 051 052 061 062}
67 19 wfjm
 
68 22 wfjm
# ----------------------------------------------------------------------------
69
rlc log "  nn(r0),@nn(r0),var,@var,@#var (mode=6,7,67,77,37)"
70 19 wfjm
 
71 22 wfjm
# code register pre/post conditions beyond defaults
72
#   r0   #data0-020  -> ..same
73
#   r1   #pdata1-040 -> ..same
74 19 wfjm
$cpu ldasm -lst lst -sym sym {
75
        . = 1000
76
start:  inc     20(r0)
77
        inc     @40(r1)
78
        inc     data2
79
        inc     @pdata3
80
        inc     @#data4
81
        halt
82
stop:
83 22 wfjm
;
84 19 wfjm
data0:  .word   200
85
data1:  .word   210
86
data2:  .word   220
87
data3:  .word   230
88
data4:  .word   240
89
data4e:
90
pdata1: .word   data1
91
pdata3: .word   data3
92
}
93
 
94 20 wfjm
rw11::asmrun  $cpu sym [list r0 [expr {$sym(data0)-020}] \
95
                             r1 [expr {$sym(pdata1)-040}]  ]
96 25 wfjm
rw11::asmwait $cpu sym
97 22 wfjm
rw11::asmtreg $cpu [list r0 [expr {$sym(data0)-020}] \
98
                         r1 [expr {$sym(pdata1)-040}] \
99
                         r2 0 \
100
                         r3 0 \
101
                         r4 0 \
102
                         r5 0 ]
103 20 wfjm
rw11::asmtmem $cpu $sym(data0) {0201 0211 0221 0231 0241}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.