1 |
5 |
leonous |
#! /usr/bin/vvp
|
2 |
|
|
:vpi_time_precision - 12;
|
3 |
|
|
:vpi_module "system";
|
4 |
|
|
:vpi_module "v2005_math";
|
5 |
|
|
:vpi_module "va_math";
|
6 |
|
|
S_0x1c43f20 .scope module, "alu_tb" "alu_tb" 2 52;
|
7 |
|
|
.timescale -9 -12;
|
8 |
|
|
P_0x1cbf258 .param/l "DWIDTH" 2 55, +C4<01000>;
|
9 |
|
|
P_0x1cbf280 .param/l "OPWIDTH" 2 56, +C4<0100>;
|
10 |
|
|
v0x1ccb3d0_0 .var "A", 7 0;
|
11 |
|
|
v0x1ccb470_0 .var "A_u", 7 0;
|
12 |
|
|
v0x1ccb510_0 .var "B", 7 0;
|
13 |
|
|
v0x1ccb590_0 .var "B_u", 7 0;
|
14 |
|
|
v0x1ccb610_0 .net "C", 0 0, v0x1c91380_0; 1 drivers
|
15 |
|
|
v0x1ccb690_0 .var "CLK", 0 0;
|
16 |
|
|
v0x1ccb710_0 .var "CLR", 0 0;
|
17 |
|
|
v0x1ccb790_0 .var "S", 3 0;
|
18 |
|
|
v0x1ccb810_0 .net "V", 0 0, v0x1c91060_0; 1 drivers
|
19 |
|
|
v0x1ccb890_0 .net/s "Y", 7 0, v0x1cb3600_0; 1 drivers
|
20 |
|
|
v0x1ccb910_0 .var "Y_u", 7 0;
|
21 |
|
|
v0x1ccb990_0 .net "Z", 0 0, v0x1c8a150_0; 1 drivers
|
22 |
|
|
v0x1ccba10_0 .var "aa", 7 0;
|
23 |
|
|
v0x1ccbab0_0 .var "bb", 7 0;
|
24 |
|
|
v0x1ccbbb0_0 .var "check_here", 0 0;
|
25 |
|
|
v0x1ccbc50_0 .var "clrc", 0 0;
|
26 |
|
|
v0x1ccbb30_0 .var/i "count", 31 0;
|
27 |
|
|
v0x1ccbd60_0 .var/i "errors_found", 31 0;
|
28 |
|
|
v0x1ccbcd0_0 .var "finished", 0 0;
|
29 |
|
|
v0x1ccbe80_0 .var/i "infile", 31 0;
|
30 |
|
|
v0x1ccbde0_0 .var "last_CLR", 0 0;
|
31 |
|
|
v0x1ccbfb0_0 .var "last_ss", 31 0;
|
32 |
|
|
v0x1ccbf00_0 .var "op1", 7 0;
|
33 |
|
|
v0x1ccc0f0_0 .var "op2", 7 0;
|
34 |
|
|
v0x1ccc030 .array "opcode_list", 15 0, 32 1;
|
35 |
|
|
v0x1ccc4b0_0 .var/i "outfile", 31 0;
|
36 |
|
|
v0x1ccc170_0 .var/i "random_count", 31 0;
|
37 |
|
|
v0x1ccc610_0 .var "random_mode", 0 0;
|
38 |
|
|
v0x1ccc530_0 .var/i "random_number", 31 0;
|
39 |
|
|
v0x1ccc780_0 .var/s "result", 7 0;
|
40 |
|
|
v0x1ccc690_0 .var "result_u", 7 0;
|
41 |
|
|
v0x1ccc900_0 .var "ss", 31 0;
|
42 |
|
|
v0x1ccc800_0 .var "started", 0 0;
|
43 |
|
|
v0x1ccc880_0 .var/i "success", 31 0;
|
44 |
|
|
E_0x1c90700 .event posedge, v0x1cbee90_0;
|
45 |
|
|
E_0x1cbe000 .event posedge, v0x1ccbcd0_0, v0x1cbee90_0;
|
46 |
|
|
E_0x1cbe950 .event edge, v0x1cbee90_0;
|
47 |
|
|
S_0x1ccaf50 .scope function, "bas" "bas" 2 480, 2 480, S_0x1c43f20;
|
48 |
|
|
.timescale -9 -12;
|
49 |
|
|
v0x1ccb030_0 .var "a1", 7 0;
|
50 |
|
|
v0x1ccb0d0_0 .var "bas", 7 0;
|
51 |
|
|
v0x1ccb170_0 .var "direction", 0 0;
|
52 |
|
|
v0x1ccb210_0 .var "shift_size", 7 0;
|
53 |
|
|
v0x1ccb290_0 .var "tmp", 7 0;
|
54 |
|
|
v0x1ccb330_0 .var/i "tmp2", 31 0;
|
55 |
|
|
TD_alu_tb.bas ;
|
56 |
|
|
%load/v 8, v0x1ccb030_0, 8;
|
57 |
|
|
%set/v v0x1ccb290_0, 8, 8;
|
58 |
|
|
%load/v 8, v0x1ccb210_0, 3; Only need 3 of 8 bits
|
59 |
|
|
; Save base=8 wid=3 in lookaside.
|
60 |
|
|
%mov 11, 8, 3;
|
61 |
|
|
%mov 14, 0, 29;
|
62 |
|
|
%set/v v0x1ccb330_0, 11, 32;
|
63 |
|
|
T_0.0 ;
|
64 |
|
|
%load/v 8, v0x1ccb330_0, 32;
|
65 |
|
|
%cmp/s 0, 8, 32;
|
66 |
|
|
%jmp/0xz T_0.1, 5;
|
67 |
|
|
%load/v 8, v0x1ccb170_0, 1;
|
68 |
|
|
%jmp/0xz T_0.2, 8;
|
69 |
|
|
%ix/load 1, 1;
|
70 |
|
|
%mov 4, 0, 1;
|
71 |
|
|
%load/x1p 16, v0x1ccb290_0, 7;
|
72 |
|
|
; Save base=16 wid=7 in lookaside.
|
73 |
|
|
%mov 8, 16, 7;
|
74 |
|
|
%load/v 16, v0x1ccb290_0, 1; Only need 1 of 8 bits
|
75 |
|
|
; Save base=16 wid=1 in lookaside.
|
76 |
|
|
%mov 15, 16, 1;
|
77 |
|
|
%set/v v0x1ccb290_0, 8, 8;
|
78 |
|
|
%jmp T_0.3;
|
79 |
|
|
T_0.2 ;
|
80 |
|
|
%ix/load 1, 7;
|
81 |
|
|
%mov 4, 0, 1;
|
82 |
|
|
%load/x1p 16, v0x1ccb290_0, 1;
|
83 |
|
|
; Save base=16 wid=1 in lookaside.
|
84 |
|
|
%mov 8, 16, 1;
|
85 |
|
|
%load/v 16, v0x1ccb290_0, 7; Only need 7 of 8 bits
|
86 |
|
|
; Save base=16 wid=7 in lookaside.
|
87 |
|
|
%mov 9, 16, 7;
|
88 |
|
|
%set/v v0x1ccb290_0, 8, 8;
|
89 |
|
|
T_0.3 ;
|
90 |
|
|
%load/v 8, v0x1ccb330_0, 32;
|
91 |
|
|
%mov 40, 8, 32;
|
92 |
|
|
%mov 72, 39, 1;
|
93 |
|
|
%subi 40, 1, 33;
|
94 |
|
|
%set/v v0x1ccb330_0, 40, 32;
|
95 |
|
|
%jmp T_0.0;
|
96 |
|
|
T_0.1 ;
|
97 |
|
|
%load/v 8, v0x1ccb290_0, 8;
|
98 |
|
|
%set/v v0x1ccb0d0_0, 8, 8;
|
99 |
|
|
%end;
|
100 |
|
|
S_0x1ccacf0 .scope function, "get_random_opcode" "get_random_opcode" 2 467, 2 467, S_0x1c43f20;
|
101 |
|
|
.timescale -9 -12;
|
102 |
|
|
v0x1ccadd0_0 .var "get_random_opcode", 32 1;
|
103 |
|
|
v0x1ccae50_0 .var/s "myseed", 31 0;
|
104 |
|
|
v0x1ccaed0_0 .var/i "tmp", 31 0;
|
105 |
|
|
TD_alu_tb.get_random_opcode ;
|
106 |
|
|
%vpi_func 2 472 "$random", 8, 32, v0x1ccae50_0;
|
107 |
|
|
%set/v v0x1ccaed0_0, 8, 32;
|
108 |
|
|
%load/v 40, v0x1ccaed0_0, 32;
|
109 |
|
|
%movi 72, 11, 32;
|
110 |
|
|
%mod 40, 72, 32;
|
111 |
|
|
%ix/get 3, 40, 32;
|
112 |
|
|
%load/av 8, v0x1ccc030, 32;
|
113 |
|
|
%set/v v0x1ccadd0_0, 8, 32;
|
114 |
|
|
%end;
|
115 |
|
|
S_0x1ccaa90 .scope function, "string2opcode" "string2opcode" 2 438, 2 438, S_0x1c43f20;
|
116 |
|
|
.timescale -9 -12;
|
117 |
|
|
v0x1ccab70_0 .var "opcode", 3 0;
|
118 |
|
|
v0x1ccabf0_0 .var "s", 31 0;
|
119 |
|
|
v0x1ccac70_0 .var "string2opcode", 3 0;
|
120 |
|
|
TD_alu_tb.string2opcode ;
|
121 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
122 |
|
|
%ix/load 3, 0;
|
123 |
|
|
%mov 4, 0, 1;
|
124 |
|
|
%load/av 40, v0x1ccc030, 32;
|
125 |
|
|
%cmp/u 8, 40, 32;
|
126 |
|
|
%mov 8, 4, 1;
|
127 |
|
|
%jmp/0xz T_2.4, 8;
|
128 |
|
|
%set/v v0x1ccab70_0, 0, 4;
|
129 |
|
|
%jmp T_2.5;
|
130 |
|
|
T_2.4 ;
|
131 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
132 |
|
|
%ix/load 3, 1;
|
133 |
|
|
%mov 4, 0, 1;
|
134 |
|
|
%load/av 40, v0x1ccc030, 32;
|
135 |
|
|
%cmp/u 8, 40, 32;
|
136 |
|
|
%mov 8, 4, 1;
|
137 |
|
|
%jmp/0xz T_2.6, 8;
|
138 |
|
|
%movi 8, 1, 4;
|
139 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
140 |
|
|
%jmp T_2.7;
|
141 |
|
|
T_2.6 ;
|
142 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
143 |
|
|
%ix/load 3, 9;
|
144 |
|
|
%mov 4, 0, 1;
|
145 |
|
|
%load/av 40, v0x1ccc030, 32;
|
146 |
|
|
%cmp/u 8, 40, 32;
|
147 |
|
|
%mov 8, 4, 1;
|
148 |
|
|
%jmp/0xz T_2.8, 8;
|
149 |
|
|
%movi 8, 9, 4;
|
150 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
151 |
|
|
%jmp T_2.9;
|
152 |
|
|
T_2.8 ;
|
153 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
154 |
|
|
%ix/load 3, 2;
|
155 |
|
|
%mov 4, 0, 1;
|
156 |
|
|
%load/av 40, v0x1ccc030, 32;
|
157 |
|
|
%cmp/u 8, 40, 32;
|
158 |
|
|
%mov 8, 4, 1;
|
159 |
|
|
%jmp/0xz T_2.10, 8;
|
160 |
|
|
%movi 8, 2, 4;
|
161 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
162 |
|
|
%jmp T_2.11;
|
163 |
|
|
T_2.10 ;
|
164 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
165 |
|
|
%ix/load 3, 3;
|
166 |
|
|
%mov 4, 0, 1;
|
167 |
|
|
%load/av 40, v0x1ccc030, 32;
|
168 |
|
|
%cmp/u 8, 40, 32;
|
169 |
|
|
%mov 8, 4, 1;
|
170 |
|
|
%jmp/0xz T_2.12, 8;
|
171 |
|
|
%movi 8, 3, 4;
|
172 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
173 |
|
|
%jmp T_2.13;
|
174 |
|
|
T_2.12 ;
|
175 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
176 |
|
|
%ix/load 3, 4;
|
177 |
|
|
%mov 4, 0, 1;
|
178 |
|
|
%load/av 40, v0x1ccc030, 32;
|
179 |
|
|
%cmp/u 8, 40, 32;
|
180 |
|
|
%mov 8, 4, 1;
|
181 |
|
|
%jmp/0xz T_2.14, 8;
|
182 |
|
|
%movi 8, 4, 4;
|
183 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
184 |
|
|
%jmp T_2.15;
|
185 |
|
|
T_2.14 ;
|
186 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
187 |
|
|
%ix/load 3, 5;
|
188 |
|
|
%mov 4, 0, 1;
|
189 |
|
|
%load/av 40, v0x1ccc030, 32;
|
190 |
|
|
%cmp/u 8, 40, 32;
|
191 |
|
|
%mov 8, 4, 1;
|
192 |
|
|
%jmp/0xz T_2.16, 8;
|
193 |
|
|
%movi 8, 5, 4;
|
194 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
195 |
|
|
%jmp T_2.17;
|
196 |
|
|
T_2.16 ;
|
197 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
198 |
|
|
%ix/load 3, 6;
|
199 |
|
|
%mov 4, 0, 1;
|
200 |
|
|
%load/av 40, v0x1ccc030, 32;
|
201 |
|
|
%cmp/u 8, 40, 32;
|
202 |
|
|
%mov 8, 4, 1;
|
203 |
|
|
%jmp/0xz T_2.18, 8;
|
204 |
|
|
%movi 8, 6, 4;
|
205 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
206 |
|
|
%jmp T_2.19;
|
207 |
|
|
T_2.18 ;
|
208 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
209 |
|
|
%ix/load 3, 7;
|
210 |
|
|
%mov 4, 0, 1;
|
211 |
|
|
%load/av 40, v0x1ccc030, 32;
|
212 |
|
|
%cmp/u 8, 40, 32;
|
213 |
|
|
%mov 8, 4, 1;
|
214 |
|
|
%jmp/0xz T_2.20, 8;
|
215 |
|
|
%movi 8, 7, 4;
|
216 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
217 |
|
|
%jmp T_2.21;
|
218 |
|
|
T_2.20 ;
|
219 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
220 |
|
|
%ix/load 3, 8;
|
221 |
|
|
%mov 4, 0, 1;
|
222 |
|
|
%load/av 40, v0x1ccc030, 32;
|
223 |
|
|
%cmp/u 8, 40, 32;
|
224 |
|
|
%mov 8, 4, 1;
|
225 |
|
|
%jmp/0xz T_2.22, 8;
|
226 |
|
|
%movi 8, 8, 4;
|
227 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
228 |
|
|
%jmp T_2.23;
|
229 |
|
|
T_2.22 ;
|
230 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
231 |
|
|
%ix/load 3, 10;
|
232 |
|
|
%mov 4, 0, 1;
|
233 |
|
|
%load/av 40, v0x1ccc030, 32;
|
234 |
|
|
%cmp/u 8, 40, 32;
|
235 |
|
|
%mov 8, 4, 1;
|
236 |
|
|
%jmp/0xz T_2.24, 8;
|
237 |
|
|
%movi 8, 10, 4;
|
238 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
239 |
|
|
%jmp T_2.25;
|
240 |
|
|
T_2.24 ;
|
241 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
242 |
|
|
%ix/load 3, 11;
|
243 |
|
|
%mov 4, 0, 1;
|
244 |
|
|
%load/av 40, v0x1ccc030, 32;
|
245 |
|
|
%cmp/u 8, 40, 32;
|
246 |
|
|
%mov 8, 4, 1;
|
247 |
|
|
%jmp/0xz T_2.26, 8;
|
248 |
|
|
%movi 8, 11, 4;
|
249 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
250 |
|
|
%jmp T_2.27;
|
251 |
|
|
T_2.26 ;
|
252 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
253 |
|
|
%ix/load 3, 12;
|
254 |
|
|
%mov 4, 0, 1;
|
255 |
|
|
%load/av 40, v0x1ccc030, 32;
|
256 |
|
|
%cmp/u 8, 40, 32;
|
257 |
|
|
%mov 8, 4, 1;
|
258 |
|
|
%jmp/0xz T_2.28, 8;
|
259 |
|
|
%movi 8, 12, 4;
|
260 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
261 |
|
|
%jmp T_2.29;
|
262 |
|
|
T_2.28 ;
|
263 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
264 |
|
|
%ix/load 3, 13;
|
265 |
|
|
%mov 4, 0, 1;
|
266 |
|
|
%load/av 40, v0x1ccc030, 32;
|
267 |
|
|
%cmp/u 8, 40, 32;
|
268 |
|
|
%mov 8, 4, 1;
|
269 |
|
|
%jmp/0xz T_2.30, 8;
|
270 |
|
|
%movi 8, 13, 4;
|
271 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
272 |
|
|
%jmp T_2.31;
|
273 |
|
|
T_2.30 ;
|
274 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
275 |
|
|
%ix/load 3, 14;
|
276 |
|
|
%mov 4, 0, 1;
|
277 |
|
|
%load/av 40, v0x1ccc030, 32;
|
278 |
|
|
%cmp/u 8, 40, 32;
|
279 |
|
|
%mov 8, 4, 1;
|
280 |
|
|
%jmp/0xz T_2.32, 8;
|
281 |
|
|
%movi 8, 14, 4;
|
282 |
|
|
%set/v v0x1ccab70_0, 8, 4;
|
283 |
|
|
%jmp T_2.33;
|
284 |
|
|
T_2.32 ;
|
285 |
|
|
%load/v 8, v0x1ccabf0_0, 32;
|
286 |
|
|
%ix/load 3, 15;
|
287 |
|
|
%mov 4, 0, 1;
|
288 |
|
|
%load/av 40, v0x1ccc030, 32;
|
289 |
|
|
%cmp/u 8, 40, 32;
|
290 |
|
|
%mov 8, 4, 1;
|
291 |
|
|
%jmp/0xz T_2.34, 8;
|
292 |
|
|
%set/v v0x1ccab70_0, 1, 4;
|
293 |
|
|
T_2.34 ;
|
294 |
|
|
T_2.33 ;
|
295 |
|
|
T_2.31 ;
|
296 |
|
|
T_2.29 ;
|
297 |
|
|
T_2.27 ;
|
298 |
|
|
T_2.25 ;
|
299 |
|
|
T_2.23 ;
|
300 |
|
|
T_2.21 ;
|
301 |
|
|
T_2.19 ;
|
302 |
|
|
T_2.17 ;
|
303 |
|
|
T_2.15 ;
|
304 |
|
|
T_2.13 ;
|
305 |
|
|
T_2.11 ;
|
306 |
|
|
T_2.9 ;
|
307 |
|
|
T_2.7 ;
|
308 |
|
|
T_2.5 ;
|
309 |
|
|
%load/v 8, v0x1ccab70_0, 4;
|
310 |
|
|
%set/v v0x1ccac70_0, 8, 4;
|
311 |
|
|
%end;
|
312 |
|
|
S_0x1cca7b0 .scope module, "this_record" "test_vector" 2 135, 2 41, S_0x1c43f20;
|
313 |
|
|
.timescale -9 -12;
|
314 |
|
|
P_0x1c3ef28 .param/l "DWIDTH" 2 42, +C4<01000>;
|
315 |
|
|
P_0x1c3ef50 .param/l "OPWIDTH" 2 43, +C4<0100>;
|
316 |
|
|
v0x1cca890_0 .var/s "A", 7 0;
|
317 |
|
|
v0x1cca910_0 .var/s "B", 7 0;
|
318 |
|
|
v0x1cca990_0 .var "S", 31 0;
|
319 |
|
|
v0x1ccaa10_0 .var "Y", 7 0;
|
320 |
|
|
S_0x1cca4d0 .scope module, "next_record" "test_vector" 2 136, 2 41, S_0x1c43f20;
|
321 |
|
|
.timescale -9 -12;
|
322 |
|
|
P_0x1c5f7a8 .param/l "DWIDTH" 2 42, +C4<01000>;
|
323 |
|
|
P_0x1c5f7d0 .param/l "OPWIDTH" 2 43, +C4<0100>;
|
324 |
|
|
v0x1cca5b0_0 .var/s "A", 7 0;
|
325 |
|
|
v0x1cca630_0 .var/s "B", 7 0;
|
326 |
|
|
v0x1cca6b0_0 .var "S", 31 0;
|
327 |
|
|
v0x1cca730_0 .var "Y", 7 0;
|
328 |
|
|
S_0x1cab560 .scope module, "alu_inst0" "alu" 2 139, 3 4, S_0x1c43f20;
|
329 |
|
|
.timescale -9 -12;
|
330 |
|
|
P_0x1cbf098 .param/l "DWIDTH" 3 6, +C4<01000>;
|
331 |
|
|
P_0x1cbf0c0 .param/l "OPWIDTH" 3 7, +C4<0100>;
|
332 |
|
|
L_0x1cca180 .functor BUFZ 1, v0x1ccb710_0, C4<0>, C4<0>, C4<0>;
|
333 |
|
|
v0x1cc9140_0 .net "A", 7 0, v0x1ccb3d0_0; 1 drivers
|
334 |
|
|
v0x1cc91f0_0 .net "B", 7 0, v0x1ccb510_0; 1 drivers
|
335 |
|
|
v0x1cc92a0_0 .alias "C", 0 0, v0x1ccb610_0;
|
336 |
|
|
v0x1cc9350_0 .net "CLK", 0 0, v0x1ccb690_0; 1 drivers
|
337 |
|
|
v0x1cc9400_0 .net "CLR", 0 0, v0x1ccb710_0; 1 drivers
|
338 |
|
|
v0x1cc9480_0 .net "S", 3 0, v0x1ccb790_0; 1 drivers
|
339 |
|
|
v0x1cc9500_0 .alias "V", 0 0, v0x1ccb810_0;
|
340 |
|
|
v0x1cc95b0_0 .alias "Y", 7 0, v0x1ccb890_0;
|
341 |
|
|
v0x1cc9660_0 .alias "Z", 0 0, v0x1ccb990_0;
|
342 |
|
|
v0x1cc9710_0 .net "add_AB", 0 0, L_0x1cccaa0; 1 drivers
|
343 |
|
|
v0x1cc9790_0 .net "and_AB", 0 0, L_0x1ccd430; 1 drivers
|
344 |
|
|
v0x1cc9810_0 .net "clr_ALL", 0 0, L_0x1ccd010; 1 drivers
|
345 |
|
|
v0x1cc9890_0 .net "clr_C", 0 0, C4; 0 drivers
|
346 |
|
|
v0x1cc9910_0 .net "clr_V", 0 0, C4; 0 drivers
|
347 |
|
|
v0x1cc9a10_0 .net "clr_Z", 0 0, C4; 0 drivers
|
348 |
|
|
v0x1cc9a90_0 .net "cmp_AB", 0 0, L_0x1cccd20; 1 drivers
|
349 |
|
|
v0x1cc9990_0 .net "cpl_A", 0 0, L_0x1ccd1f0; 1 drivers
|
350 |
|
|
v0x1cc9ba0_0 .net "cpl_B", 0 0, L_0x1ccd4d0; 1 drivers
|
351 |
|
|
v0x1cc9b10_0 .net "dec_A", 0 0, L_0x1ccd150; 1 drivers
|
352 |
|
|
v0x1cc9cc0_0 .net "dec_B", 0 0, L_0x1ccd0b0; 1 drivers
|
353 |
|
|
v0x1cc9c20_0 .net "inc_A", 0 0, L_0x1cccb40; 1 drivers
|
354 |
|
|
v0x1cc9df0_0 .net "inc_B", 0 0, L_0x1cccbe0; 1 drivers
|
355 |
|
|
v0x1cc9d40_0 .net "load_inputs", 0 0, v0x1cc8940_0; 1 drivers
|
356 |
|
|
v0x1cc9f30_0 .net "load_outputs", 0 0, v0x1cc89f0_0; 1 drivers
|
357 |
|
|
v0x1cc9e70_0 .net "mul_AB", 0 0, L_0x1ccd2b0; 1 drivers
|
358 |
|
|
v0x1cca080_0 .net "or_AB", 0 0, L_0x1ccd350; 1 drivers
|
359 |
|
|
v0x1cc9fb0_0 .net "reset", 0 0, L_0x1cca180; 1 drivers
|
360 |
|
|
v0x1cca1e0_0 .net "sl_AB", 0 0, L_0x1cccdc0; 1 drivers
|
361 |
|
|
v0x1cca100_0 .net "sr_AB", 0 0, L_0x1cccee0; 1 drivers
|
362 |
|
|
v0x1cca350_0 .net "sub_AB", 0 0, L_0x1cccc80; 1 drivers
|
363 |
|
|
v0x1cca260_0 .net "xor_AB", 0 0, L_0x1ccd5d0; 1 drivers
|
364 |
|
|
S_0x1cc7aa0 .scope module, "controller" "alu_controller" 3 53, 4 4, S_0x1cab560;
|
365 |
|
|
.timescale -9 -12;
|
366 |
|
|
P_0x1c91288 .param/l "OPBITS" 4 36, C4<00000000000000000000000000010000>;
|
367 |
|
|
P_0x1c912b0 .param/l "OPWIDTH" 4 35, +C4<0100>;
|
368 |
|
|
v0x1cc7b80_0 .alias "add_AB", 0 0, v0x1cc9710_0;
|
369 |
|
|
v0x1cc80f0_0 .alias "and_AB", 0 0, v0x1cc9790_0;
|
370 |
|
|
v0x1cc8170_0 .alias "clk", 0 0, v0x1cc9350_0;
|
371 |
|
|
v0x1cc81f0_0 .alias "clr", 0 0, v0x1cc9810_0;
|
372 |
|
|
v0x1cc82a0_0 .alias "clr_C", 0 0, v0x1cc9890_0;
|
373 |
|
|
v0x1cc8350_0 .alias "clr_V", 0 0, v0x1cc9910_0;
|
374 |
|
|
v0x1cc83d0_0 .alias "clr_Z", 0 0, v0x1cc9a10_0;
|
375 |
|
|
v0x1cc8480_0 .alias "cmp_AB", 0 0, v0x1cc9a90_0;
|
376 |
|
|
v0x1cc8530_0 .alias "cpl_A", 0 0, v0x1cc9990_0;
|
377 |
|
|
v0x1cc85e0_0 .alias "cpl_B", 0 0, v0x1cc9ba0_0;
|
378 |
|
|
v0x1cc8660_0 .alias "dec_A", 0 0, v0x1cc9b10_0;
|
379 |
|
|
v0x1cc8710_0 .alias "dec_B", 0 0, v0x1cc9cc0_0;
|
380 |
|
|
v0x1cc8790_0 .alias "inc_A", 0 0, v0x1cc9c20_0;
|
381 |
|
|
v0x1cc8840_0 .alias "inc_B", 0 0, v0x1cc9df0_0;
|
382 |
|
|
v0x1cc8940_0 .var "load_inputs", 0 0;
|
383 |
|
|
v0x1cc89f0_0 .var "load_outputs", 0 0;
|
384 |
|
|
v0x1cc88c0_0 .alias "mul_AB", 0 0, v0x1cc9e70_0;
|
385 |
|
|
v0x1cc8b00_0 .var "next_opcode", 3 0;
|
386 |
|
|
v0x1cc8a70_0 .alias "opcode", 3 0, v0x1cc9480_0;
|
387 |
|
|
v0x1cc8c20_0 .var "opcode_sel", 65537 0;
|
388 |
|
|
v0x1cc8b80_0 .alias "or_AB", 0 0, v0x1cca080_0;
|
389 |
|
|
v0x1cc8d50_0 .alias "reset", 0 0, v0x1cc9fb0_0;
|
390 |
|
|
v0x1cc8ca0_0 .alias "sl_AB", 0 0, v0x1cca1e0_0;
|
391 |
|
|
v0x1cc8e90_0 .alias "sr_AB", 0 0, v0x1cca100_0;
|
392 |
|
|
v0x1cc8dd0_0 .alias "sub_AB", 0 0, v0x1cca350_0;
|
393 |
|
|
v0x1cc8fe0_0 .var "this_opcode", 3 0;
|
394 |
|
|
v0x1cc8f10_0 .alias "xor_AB", 0 0, v0x1cca260_0;
|
395 |
|
|
E_0x1c64dd0 .event edge, v0x1cc8fe0_0;
|
396 |
|
|
E_0x1c65100/0 .event edge, v0x1cc75f0_0;
|
397 |
|
|
E_0x1c65100/1 .event posedge, v0x1cbee90_0;
|
398 |
|
|
E_0x1c65100 .event/or E_0x1c65100/0, E_0x1c65100/1;
|
399 |
|
|
L_0x1cccaa0 .part v0x1cc8c20_0, 0, 1;
|
400 |
|
|
L_0x1cccb40 .part v0x1cc8c20_0, 1, 1;
|
401 |
|
|
L_0x1cccbe0 .part v0x1cc8c20_0, 9, 1;
|
402 |
|
|
L_0x1cccc80 .part v0x1cc8c20_0, 2, 1;
|
403 |
|
|
L_0x1cccd20 .part v0x1cc8c20_0, 3, 1;
|
404 |
|
|
L_0x1cccdc0 .part v0x1cc8c20_0, 4, 1;
|
405 |
|
|
L_0x1cccee0 .part v0x1cc8c20_0, 5, 1;
|
406 |
|
|
L_0x1ccd010 .part v0x1cc8c20_0, 6, 1;
|
407 |
|
|
L_0x1ccd150 .part v0x1cc8c20_0, 7, 1;
|
408 |
|
|
L_0x1ccd0b0 .part v0x1cc8c20_0, 8, 1;
|
409 |
|
|
L_0x1ccd2b0 .part v0x1cc8c20_0, 10, 1;
|
410 |
|
|
L_0x1ccd1f0 .part v0x1cc8c20_0, 11, 1;
|
411 |
|
|
L_0x1ccd430 .part v0x1cc8c20_0, 12, 1;
|
412 |
|
|
L_0x1ccd350 .part v0x1cc8c20_0, 13, 1;
|
413 |
|
|
L_0x1ccd5d0 .part v0x1cc8c20_0, 14, 1;
|
414 |
|
|
L_0x1ccd4d0 .part v0x1cc8c20_0, 15, 1;
|
415 |
|
|
S_0x1caa800 .scope module, "datapath" "alu_datapath" 3 85, 5 2, S_0x1cab560;
|
416 |
|
|
.timescale -9 -12;
|
417 |
|
|
P_0x1c9fa88 .param/l "ALU_WIDTH" 5 40, +C4<01000>;
|
418 |
|
|
L_0x1c52560 .functor NOT 8, v0x1ca4970_0, C4<00000000>, C4<00000000>, C4<00000000>;
|
419 |
|
|
L_0x1ccdd30 .functor AND 1, L_0x1ccdb30, L_0x1ccdc30, C4<1>, C4<1>;
|
420 |
|
|
L_0x1ccda30 .functor AND 1, L_0x1ccdd30, L_0x1ccdd90, C4<1>, C4<1>;
|
421 |
|
|
L_0x1cbe250 .functor AND 1, L_0x1ccda30, L_0x1ccde30, C4<1>, C4<1>;
|
422 |
|
|
L_0x1ccc710 .functor AND 1, L_0x1cccc80, L_0x1ccdfd0, C4<1>, C4<1>;
|
423 |
|
|
L_0x1ccdbd0 .functor OR 1, L_0x1ccc710, L_0x1ccd4d0, C4<0>, C4<0>;
|
424 |
|
|
L_0x1cca2e0 .functor NOT 8, v0x1ca52c0_0, C4<00000000>, C4<00000000>, C4<00000000>;
|
425 |
|
|
L_0x1c657d0 .functor AND 1, L_0x1cce070, L_0x1cccb40, C4<1>, C4<1>;
|
426 |
|
|
L_0x1ccdcd0 .functor AND 1, L_0x1c657d0, L_0x1cce210, C4<1>, C4<1>;
|
427 |
|
|
L_0x1c52ce0 .functor OR 1, L_0x1cccc80, L_0x1cccb40, C4<0>, C4<0>;
|
428 |
|
|
L_0x1c43610 .functor OR 1, L_0x1c52ce0, L_0x1cccbe0, C4<0>, C4<0>;
|
429 |
|
|
L_0x1cce1b0 .functor OR 1, L_0x1ccd430, L_0x1ccd350, C4<0>, C4<0>;
|
430 |
|
|
L_0x1ccebe0 .functor AND 1, L_0x1cce940, L_0x1cceae0, C4<1>, C4<1>;
|
431 |
|
|
L_0x1ccec40 .functor AND 1, L_0x1cce1b0, L_0x1ccebe0, C4<1>, C4<1>;
|
432 |
|
|
L_0x1cce480 .functor OR 1, L_0x1cccdc0, L_0x1cccee0, C4<0>, C4<0>;
|
433 |
|
|
L_0x1cceb80 .functor OR 1, L_0x1ccd5d0, L_0x1cccd20, C4<0>, C4<0>;
|
434 |
|
|
L_0x1cce7f0 .functor AND 1, L_0x1cccaa0, L_0x1ccefd0, C4<1>, C4<1>;
|
435 |
|
|
L_0x1ccf140 .functor AND 1, L_0x1cce7f0, L_0x1ccf2e0, C4<1>, C4<1>;
|
436 |
|
|
L_0x1ccd930 .functor AND 1, L_0x1ccf140, L_0x1ccf070, C4<1>, C4<1>;
|
437 |
|
|
L_0x1cce2b0 .functor AND 1, L_0x1ccd930, L_0x1ccf520, C4<1>, C4<1>;
|
438 |
|
|
L_0x1ccf7b0 .functor AND 1, L_0x1cce2b0, L_0x1ccf460, C4<1>, C4<1>;
|
439 |
|
|
L_0x1ccf660 .functor OR 1, L_0x1ccd430, L_0x1ccd350, C4<0>, C4<0>;
|
440 |
|
|
L_0x1ccf210 .functor OR 1, L_0x1ccf660, L_0x1ccd5d0, C4<0>, C4<0>;
|
441 |
|
|
L_0x1ccf1a0 .functor OR 1, L_0x1ccf210, L_0x1ccd4d0, C4<0>, C4<0>;
|
442 |
|
|
L_0x1ccf5c0 .functor OR 1, L_0x1ccf1a0, L_0x1ccd010, C4<0>, C4<0>;
|
443 |
|
|
L_0x1ccf750 .functor OR 1, L_0x1cccdc0, L_0x1cccee0, C4<0>, C4<0>;
|
444 |
|
|
L_0x1ccf950 .functor BUFZ 8, v0x1ca4970_0, C4<00000000>, C4<00000000>, C4<00000000>;
|
445 |
|
|
L_0x1ccf3f0 .functor BUFZ 8, v0x1ca52c0_0, C4<00000000>, C4<00000000>, C4<00000000>;
|
446 |
|
|
v0x1ca48f0_0 .alias "A", 7 0, v0x1cc9140_0;
|
447 |
|
|
v0x1ca4970_0 .var "Areg", 7 0;
|
448 |
|
|
v0x1ca5240_0 .alias "B", 7 0, v0x1cc91f0_0;
|
449 |
|
|
v0x1ca52c0_0 .var "Breg", 7 0;
|
450 |
|
|
v0x1c91300_0 .alias "C", 0 0, v0x1ccb610_0;
|
451 |
|
|
v0x1c91380_0 .var "Creg", 0 0;
|
452 |
|
|
v0x1c90fe0_0 .alias "V", 0 0, v0x1ccb810_0;
|
453 |
|
|
v0x1c91060_0 .var "Vreg", 0 0;
|
454 |
|
|
v0x1cb3580_0 .alias "Y", 7 0, v0x1ccb890_0;
|
455 |
|
|
v0x1cb3600_0 .var "Yreg", 7 0;
|
456 |
|
|
v0x1c8a0d0_0 .alias "Z", 0 0, v0x1ccb990_0;
|
457 |
|
|
v0x1c8a150_0 .var "Zreg", 0 0;
|
458 |
|
|
v0x1c88220_0 .net *"_s102", 0 0, C4<1>; 1 drivers
|
459 |
|
|
v0x1c882a0_0 .net *"_s104", 0 0, C4<0>; 1 drivers
|
460 |
|
|
v0x1c98fa0_0 .net *"_s108", 0 0, L_0x1cceb80; 1 drivers
|
461 |
|
|
v0x1c8a7f0_0 .net *"_s110", 0 0, C4<0>; 1 drivers
|
462 |
|
|
v0x1c98f20_0 .net *"_s112", 0 0, C4<1>; 1 drivers
|
463 |
|
|
v0x1c9d500_0 .net *"_s116", 0 0, L_0x1ccefd0; 1 drivers
|
464 |
|
|
v0x1c9d580_0 .net *"_s118", 0 0, L_0x1cce7f0; 1 drivers
|
465 |
|
|
v0x1c9d1e0_0 .net *"_s12", 7 0, C4<00000000>; 1 drivers
|
466 |
|
|
v0x1c8a870_0 .net *"_s120", 0 0, L_0x1ccf2e0; 1 drivers
|
467 |
|
|
v0x1c9cec0_0 .net *"_s122", 0 0, L_0x1ccf140; 1 drivers
|
468 |
|
|
v0x1c9cf40_0 .net *"_s124", 0 0, L_0x1ccf070; 1 drivers
|
469 |
|
|
v0x1c9cba0_0 .net *"_s126", 0 0, L_0x1ccd930; 1 drivers
|
470 |
|
|
v0x1c9cc20_0 .net *"_s128", 0 0, L_0x1ccf520; 1 drivers
|
471 |
|
|
v0x1c9d260_0 .net *"_s130", 0 0, L_0x1cce2b0; 1 drivers
|
472 |
|
|
v0x1c9f2c0_0 .net *"_s132", 0 0, L_0x1ccf460; 1 drivers
|
473 |
|
|
v0x1c9f340_0 .net *"_s134", 0 0, L_0x1ccf7b0; 1 drivers
|
474 |
|
|
v0x1c9ef60_0 .net *"_s137", 0 0, L_0x1ccf810; 1 drivers
|
475 |
|
|
v0x1c9efe0_0 .net *"_s138", 0 0, L_0x1ccf660; 1 drivers
|
476 |
|
|
v0x1c9f620_0 .net *"_s14", 7 0, L_0x1c52560; 1 drivers
|
477 |
|
|
v0x1c9e8a0_0 .net *"_s140", 0 0, L_0x1ccf210; 1 drivers
|
478 |
|
|
v0x1c9e920_0 .net *"_s142", 0 0, L_0x1ccf1a0; 1 drivers
|
479 |
|
|
v0x1c9e540_0 .net *"_s144", 0 0, L_0x1ccf5c0; 1 drivers
|
480 |
|
|
v0x1c9e5c0_0 .net *"_s146", 0 0, C4<0>; 1 drivers
|
481 |
|
|
v0x1c9ec00_0 .net *"_s148", 0 0, L_0x1ccf750; 1 drivers
|
482 |
|
|
v0x1c9ec80_0 .net *"_s150", 0 0, L_0x1ccfae0; 1 drivers
|
483 |
|
|
v0x1c9de80_0 .net *"_s152", 0 0, L_0x1ccfd50; 1 drivers
|
484 |
|
|
v0x1c9df00_0 .net *"_s156", 0 0, C4<1>; 1 drivers
|
485 |
|
|
v0x1c9db40_0 .net *"_s158", 0 0, C4<0>; 1 drivers
|
486 |
|
|
v0x1c9dbc0_0 .net *"_s16", 7 0, C4<00000000>; 1 drivers
|
487 |
|
|
v0x1c9d820_0 .net *"_s18", 7 0, C4<11111111>; 1 drivers
|
488 |
|
|
v0x1c9d8c0_0 .net *"_s20", 7 0, L_0x1ccd790; 1 drivers
|
489 |
|
|
v0x1c9c880_0 .net *"_s22", 7 0, L_0x1ccd890; 1 drivers
|
490 |
|
|
v0x1c9c900_0 .net *"_s24", 7 0, L_0x1ccd990; 1 drivers
|
491 |
|
|
v0x1cb2c00_0 .net *"_s28", 0 0, L_0x1ccdb30; 1 drivers
|
492 |
|
|
v0x1cb2c80_0 .net *"_s30", 0 0, L_0x1ccdc30; 1 drivers
|
493 |
|
|
v0x1c5f800_0 .net *"_s32", 0 0, L_0x1ccdd30; 1 drivers
|
494 |
|
|
v0x1c5f880_0 .net *"_s34", 0 0, L_0x1ccdd90; 1 drivers
|
495 |
|
|
v0x1c39a10_0 .net *"_s36", 0 0, L_0x1ccda30; 1 drivers
|
496 |
|
|
v0x1c51680_0 .net *"_s38", 0 0, L_0x1ccde30; 1 drivers
|
497 |
|
|
v0x1cb38c0_0 .net *"_s40", 0 0, L_0x1cbe250; 1 drivers
|
498 |
|
|
v0x1cb3940_0 .net *"_s42", 7 0, C4<11111111>; 1 drivers
|
499 |
|
|
v0x1c427e0_0 .net *"_s44", 7 0, L_0x1ccded0; 1 drivers
|
500 |
|
|
v0x1c65600_0 .net *"_s46", 0 0, L_0x1ccdfd0; 1 drivers
|
501 |
|
|
v0x1cb3380_0 .net *"_s48", 0 0, L_0x1ccc710; 1 drivers
|
502 |
|
|
v0x1cb3400_0 .net *"_s50", 0 0, L_0x1ccdbd0; 1 drivers
|
503 |
|
|
v0x1cc4a10_0 .net *"_s52", 7 0, L_0x1cca2e0; 1 drivers
|
504 |
|
|
v0x1c3ef80_0 .net *"_s54", 0 0, L_0x1cce070; 1 drivers
|
505 |
|
|
v0x1cb3120_0 .net *"_s56", 0 0, L_0x1c657d0; 1 drivers
|
506 |
|
|
v0x1cb31a0_0 .net *"_s58", 0 0, L_0x1cce210; 1 drivers
|
507 |
|
|
v0x1c64800_0 .net *"_s60", 0 0, L_0x1ccdcd0; 1 drivers
|
508 |
|
|
v0x1c64880_0 .net *"_s62", 7 0, C4<00000000>; 1 drivers
|
509 |
|
|
v0x1cb2ec0_0 .net *"_s64", 7 0, C4<00000000>; 1 drivers
|
510 |
|
|
v0x1cb2f40_0 .net *"_s66", 7 0, L_0x1cce340; 1 drivers
|
511 |
|
|
v0x1c9f6a0_0 .net *"_s68", 7 0, L_0x1cce3e0; 1 drivers
|
512 |
|
|
v0x1c9e1e0_0 .net *"_s70", 7 0, L_0x1cce500; 1 drivers
|
513 |
|
|
v0x1c9e280_0 .net *"_s74", 0 0, L_0x1c52ce0; 1 drivers
|
514 |
|
|
v0x1c8a650_0 .net *"_s76", 0 0, L_0x1c43610; 1 drivers
|
515 |
|
|
v0x1c8a6f0_0 .net *"_s78", 0 0, C4<1>; 1 drivers
|
516 |
|
|
v0x1cb2970_0 .net *"_s80", 0 0, C4<0>; 1 drivers
|
517 |
|
|
v0x1cb2a10_0 .net *"_s84", 0 0, L_0x1cce1b0; 1 drivers
|
518 |
|
|
v0x1c90e50_0 .net *"_s86", 0 0, L_0x1cce940; 1 drivers
|
519 |
|
|
v0x1c90ef0_0 .net *"_s88", 0 0, L_0x1cceae0; 1 drivers
|
520 |
|
|
v0x1c8a950_0 .net *"_s90", 0 0, L_0x1ccebe0; 1 drivers
|
521 |
|
|
v0x1c8a9f0_0 .net *"_s92", 0 0, L_0x1ccec40; 1 drivers
|
522 |
|
|
v0x1c5f680_0 .net *"_s95", 7 0, L_0x1cced40; 1 drivers
|
523 |
|
|
v0x1c5f720_0 .net *"_s96", 0 0, L_0x1cce480; 1 drivers
|
524 |
|
|
v0x1c39880_0 .net *"_s98", 7 0, L_0x1ccee90; 1 drivers
|
525 |
|
|
v0x1c39920_0 .alias "add_AB", 0 0, v0x1cc9710_0;
|
526 |
|
|
v0x1c514e0_0 .net "adderORsel", 0 0, L_0x1ccede0; 1 drivers
|
527 |
|
|
v0x1c51560_0 .net "adderXORsel", 0 0, L_0x1cceca0; 1 drivers
|
528 |
|
|
v0x1c515e0_0 .net "adder_in_a", 7 0, L_0x1ccda90; 1 drivers
|
529 |
|
|
v0x1c42630_0 .net "adder_in_b", 7 0, L_0x1cce5a0; 1 drivers
|
530 |
|
|
v0x1c426b0_0 .net "adder_out", 7 0, v0x1ca4bb0_0; 1 drivers
|
531 |
|
|
v0x1c42730_0 .net "alu_out", 7 0, L_0x1ccef30; 1 drivers
|
532 |
|
|
v0x1c65440_0 .alias "and_AB", 0 0, v0x1cc9790_0;
|
533 |
|
|
v0x1c654c0_0 .net "carry", 0 0, L_0x1ccf8b0; 1 drivers
|
534 |
|
|
v0x1c65540_0 .net "carry_in", 0 0, L_0x1cce110; 1 drivers
|
535 |
|
|
v0x1cc4840_0 .net "carry_out", 8 0, v0x1c9c590_0; 1 drivers
|
536 |
|
|
v0x1cc48c0_0 .alias "clk", 0 0, v0x1cc9350_0;
|
537 |
|
|
v0x1cc4940_0 .alias "clr", 0 0, v0x1cc9810_0;
|
538 |
|
|
v0x1c3eda0_0 .alias "clr_C", 0 0, v0x1cc9890_0;
|
539 |
|
|
v0x1c3ee20_0 .alias "clr_V", 0 0, v0x1cc9910_0;
|
540 |
|
|
v0x1c3eea0_0 .alias "clr_Z", 0 0, v0x1cc9a10_0;
|
541 |
|
|
v0x1c64610_0 .alias "cmp_AB", 0 0, v0x1cc9a90_0;
|
542 |
|
|
v0x1c64690_0 .alias "cpl_A", 0 0, v0x1cc9990_0;
|
543 |
|
|
v0x1c64710_0 .alias "cpl_B", 0 0, v0x1cc9ba0_0;
|
544 |
|
|
v0x1cc73b0_0 .alias "dec_A", 0 0, v0x1cc9b10_0;
|
545 |
|
|
v0x1cc7450_0 .alias "dec_B", 0 0, v0x1cc9cc0_0;
|
546 |
|
|
v0x1cc7090_0 .alias "inc_A", 0 0, v0x1cc9c20_0;
|
547 |
|
|
v0x1cc7130_0 .alias "inc_B", 0 0, v0x1cc9df0_0;
|
548 |
|
|
v0x1cc71b0_0 .alias "load_inputs", 0 0, v0x1cc9d40_0;
|
549 |
|
|
v0x1cc7250_0 .alias "load_outputs", 0 0, v0x1cc9f30_0;
|
550 |
|
|
v0x1cc72d0_0 .net "logic0", 7 0, C4<00000000>; 1 drivers
|
551 |
|
|
v0x1cc7820_0 .net "logic1", 7 0, C4<00000001>; 1 drivers
|
552 |
|
|
v0x1cc74d0_0 .alias "mul_AB", 0 0, v0x1cc9e70_0;
|
553 |
|
|
v0x1cc7570_0 .alias "or_AB", 0 0, v0x1cca080_0;
|
554 |
|
|
v0x1cc75f0_0 .alias "reset", 0 0, v0x1cc9fb0_0;
|
555 |
|
|
v0x1cc7690_0 .net "shifter_carry", 0 0, v0x1cbf130_0; 1 drivers
|
556 |
|
|
v0x1cc7710_0 .net "shifter_direction", 0 0, L_0x1ccff00; 1 drivers
|
557 |
|
|
v0x1cc7790_0 .net "shifter_inA", 7 0, L_0x1ccf950; 1 drivers
|
558 |
|
|
v0x1cc7c30_0 .net "shifter_inB", 7 0, L_0x1ccf3f0; 1 drivers
|
559 |
|
|
v0x1cc7cb0_0 .net "shifter_out", 7 0, v0x1cb3c30_0; 1 drivers
|
560 |
|
|
v0x1cc78a0_0 .alias "sl_AB", 0 0, v0x1cca1e0_0;
|
561 |
|
|
v0x1cc7920_0 .alias "sr_AB", 0 0, v0x1cca100_0;
|
562 |
|
|
v0x1cc79a0_0 .alias "sub_AB", 0 0, v0x1cca350_0;
|
563 |
|
|
v0x1cc7a20_0 .alias "xor_AB", 0 0, v0x1cca260_0;
|
564 |
|
|
E_0x1c8e490 .event posedge, v0x1cc75f0_0, v0x1cbee90_0;
|
565 |
|
|
L_0x1ccd790 .functor MUXZ 8, v0x1ca4970_0, C4<11111111>, L_0x1ccd0b0, C4<>;
|
566 |
|
|
L_0x1ccd890 .functor MUXZ 8, L_0x1ccd790, C4<00000000>, L_0x1cccbe0, C4<>;
|
567 |
|
|
L_0x1ccd990 .functor MUXZ 8, L_0x1ccd890, L_0x1c52560, L_0x1ccd1f0, C4<>;
|
568 |
|
|
L_0x1ccda90 .functor MUXZ 8, L_0x1ccd990, C4<00000000>, L_0x1ccd4d0, C4<>;
|
569 |
|
|
L_0x1ccdb30 .reduce/nor L_0x1cccc80;
|
570 |
|
|
L_0x1ccdc30 .reduce/nor L_0x1cccb40;
|
571 |
|
|
L_0x1ccdd90 .reduce/nor L_0x1ccd1f0;
|
572 |
|
|
L_0x1ccde30 .reduce/nor L_0x1ccd4d0;
|
573 |
|
|
L_0x1ccded0 .functor MUXZ 8, v0x1ca52c0_0, C4<11111111>, L_0x1ccd150, C4<>;
|
574 |
|
|
L_0x1ccdfd0 .reduce/nor L_0x1cccb40;
|
575 |
|
|
L_0x1cce070 .reduce/nor L_0x1cccc80;
|
576 |
|
|
L_0x1cce210 .reduce/nor L_0x1ccd4d0;
|
577 |
|
|
L_0x1cce340 .functor MUXZ 8, L_0x1cce5a0, C4<00000000>, L_0x1ccd1f0, C4<>;
|
578 |
|
|
L_0x1cce3e0 .functor MUXZ 8, L_0x1cce340, C4<00000000>, L_0x1ccdcd0, C4<>;
|
579 |
|
|
L_0x1cce500 .functor MUXZ 8, L_0x1cce3e0, L_0x1cca2e0, L_0x1ccdbd0, C4<>;
|
580 |
|
|
L_0x1cce5a0 .functor MUXZ 8, L_0x1cce500, L_0x1ccded0, L_0x1cbe250, C4<>;
|
581 |
|
|
L_0x1cce110 .functor MUXZ 1, C4<0>, C4<1>, L_0x1c43610, C4<>;
|
582 |
|
|
L_0x1cce940 .reduce/nor L_0x1cccdc0;
|
583 |
|
|
L_0x1cceae0 .reduce/nor L_0x1cccee0;
|
584 |
|
|
L_0x1cced40 .part v0x1c9c590_0, 1, 8;
|
585 |
|
|
L_0x1ccee90 .functor MUXZ 8, v0x1ca4bb0_0, v0x1cb3c30_0, L_0x1cce480, C4<>;
|
586 |
|
|
L_0x1ccef30 .functor MUXZ 8, L_0x1ccee90, L_0x1cced40, L_0x1ccec40, C4<>;
|
587 |
|
|
L_0x1ccede0 .functor MUXZ 1, C4<0>, C4<1>, L_0x1ccd350, C4<>;
|
588 |
|
|
L_0x1cceca0 .functor MUXZ 1, C4<1>, C4<0>, L_0x1cceb80, C4<>;
|
589 |
|
|
L_0x1ccefd0 .reduce/nor L_0x1ccd430;
|
590 |
|
|
L_0x1ccf2e0 .reduce/nor L_0x1ccd350;
|
591 |
|
|
L_0x1ccf070 .reduce/nor L_0x1ccd5d0;
|
592 |
|
|
L_0x1ccf520 .reduce/nor L_0x1ccd4d0;
|
593 |
|
|
L_0x1ccf460 .reduce/nor L_0x1ccd010;
|
594 |
|
|
L_0x1ccf810 .part v0x1c9c590_0, 8, 1;
|
595 |
|
|
L_0x1ccfae0 .functor MUXZ 1, L_0x1ccf8b0, v0x1cbf130_0, L_0x1ccf750, C4<>;
|
596 |
|
|
L_0x1ccfd50 .functor MUXZ 1, L_0x1ccfae0, C4<0>, L_0x1ccf5c0, C4<>;
|
597 |
|
|
L_0x1ccf8b0 .functor MUXZ 1, L_0x1ccfd50, L_0x1ccf810, L_0x1ccf7b0, C4<>;
|
598 |
|
|
L_0x1ccff00 .functor MUXZ 1, C4<0>, C4<1>, L_0x1cccee0, C4<>;
|
599 |
|
|
S_0x1cb1d80 .scope module, "adder" "alu_adder" 5 163, 6 3, S_0x1caa800;
|
600 |
|
|
.timescale 0 0;
|
601 |
|
|
P_0x1cb1eb8 .param/l "ADDER_WIDTH" 6 17, +C4<01000>;
|
602 |
|
|
L_0x1cce9e0 .functor BUFZ 8, L_0x1cd00c0, C4<00000000>, C4<00000000>, C4<00000000>;
|
603 |
|
|
L_0x1ccfc50 .functor BUFZ 8, L_0x1cd0120, C4<00000000>, C4<00000000>, C4<00000000>;
|
604 |
|
|
L_0x1ccfcb0 .functor BUFZ 8, L_0x1cd0180, C4<00000000>, C4<00000000>, C4<00000000>;
|
605 |
|
|
L_0x1cd00c0 .functor XOR 8, L_0x1ccda90, L_0x1cce5a0, C4<00000000>, C4<00000000>;
|
606 |
|
|
L_0x1cd0180 .functor AND 8, L_0x1ccda90, L_0x1cce5a0, C4<11111111>, C4<11111111>;
|
607 |
|
|
L_0x1cd0120 .functor OR 8, L_0x1ccda90, L_0x1cce5a0, C4<00000000>, C4<00000000>;
|
608 |
|
|
v0x1cad830_0 .alias "ORsel", 0 0, v0x1c514e0_0;
|
609 |
|
|
v0x1cae3a0_0 .alias "XORsel", 0 0, v0x1c51560_0;
|
610 |
|
|
v0x1cb25c0_0 .net "XandY", 7 0, L_0x1cd0180; 1 drivers
|
611 |
|
|
v0x1c9f980_0 .net "XorY", 7 0, L_0x1cd0120; 1 drivers
|
612 |
|
|
v0x1c9c490_0 .net "XxorY", 7 0, L_0x1cd00c0; 1 drivers
|
613 |
|
|
v0x1cad030_0 .net "and_result", 7 0, L_0x1ccfcb0; 1 drivers
|
614 |
|
|
v0x1cad0b0_0 .alias "carry_in", 0 0, v0x1c65540_0;
|
615 |
|
|
v0x1c9c590_0 .var "carry_out", 8 0;
|
616 |
|
|
v0x1c9c610_0 .var "i", 31 0;
|
617 |
|
|
v0x1ca5010_0 .net "or_result", 7 0, L_0x1ccfc50; 1 drivers
|
618 |
|
|
v0x1ca5090_0 .alias "x", 7 0, v0x1c515e0_0;
|
619 |
|
|
v0x1ca4de0_0 .net "xor_result", 7 0, L_0x1cce9e0; 1 drivers
|
620 |
|
|
v0x1ca4e60_0 .alias "y", 7 0, v0x1c42630_0;
|
621 |
|
|
v0x1ca4bb0_0 .var "z", 7 0;
|
622 |
|
|
E_0x1c8dd60/0 .event edge, v0x1cad830_0, v0x1cae3a0_0, v0x1c9f980_0, v0x1cb25c0_0;
|
623 |
|
|
E_0x1c8dd60/1 .event edge, v0x1c9c490_0, v0x1c9c590_0, v0x1ca4e60_0, v0x1ca5090_0;
|
624 |
|
|
E_0x1c8dd60 .event/or E_0x1c8dd60/0, E_0x1c8dd60/1;
|
625 |
|
|
S_0x1ca6660 .scope module, "shifter" "alu_barrel_shifter" 5 173, 7 2, S_0x1caa800;
|
626 |
|
|
.timescale -9 -12;
|
627 |
|
|
P_0x1caa938 .param/l "DWIDTH" 7 10, +C4<01000>;
|
628 |
|
|
v0x1cbf130_0 .var "c", 0 0;
|
629 |
|
|
v0x1cbee90_0 .alias "clk", 0 0, v0x1cc9350_0;
|
630 |
|
|
v0x1cbe2f0_0 .alias "direction", 0 0, v0x1cc7710_0;
|
631 |
|
|
v0x1c5ffa0_0 .alias "x", 7 0, v0x1cc7790_0;
|
632 |
|
|
v0x1c3a350_0 .alias "y", 7 0, v0x1cc7c30_0;
|
633 |
|
|
v0x1c52ab0_0 .var "y_tmp", 7 0;
|
634 |
|
|
v0x1cb3c30_0 .var "z", 7 0;
|
635 |
|
|
E_0x1c8f5d0 .event negedge, v0x1cbee90_0;
|
636 |
|
|
.scope S_0x1cc7aa0;
|
637 |
|
|
T_3 ;
|
638 |
|
|
%wait E_0x1c65100;
|
639 |
|
|
%load/v 8, v0x1cc8d50_0, 1;
|
640 |
|
|
%jmp/0xz T_3.0, 8;
|
641 |
|
|
%movi 8, 6, 4;
|
642 |
|
|
%ix/load 0, 4;
|
643 |
|
|
%assign/v0 v0x1cc8fe0_0, 0, 8;
|
644 |
|
|
%jmp T_3.1;
|
645 |
|
|
T_3.0 ;
|
646 |
|
|
%load/v 8, v0x1cc8a70_0, 4;
|
647 |
|
|
%ix/load 0, 4;
|
648 |
|
|
%assign/v0 v0x1cc8fe0_0, 0, 8;
|
649 |
|
|
T_3.1 ;
|
650 |
|
|
%jmp T_3;
|
651 |
|
|
.thread T_3;
|
652 |
|
|
.scope S_0x1cc7aa0;
|
653 |
|
|
T_4 ;
|
654 |
|
|
%wait E_0x1c64dd0;
|
655 |
|
|
%ix/load 0, 65538;
|
656 |
|
|
%assign/v0 v0x1cc8c20_0, 0, 0;
|
657 |
|
|
%ix/load 0, 1;
|
658 |
|
|
%assign/v0 v0x1cc8940_0, 0, 0;
|
659 |
|
|
%load/v 8, v0x1cc8fe0_0, 4;
|
660 |
|
|
%cmpi/u 8, 6, 4;
|
661 |
|
|
%jmp/1 T_4.0, 6;
|
662 |
|
|
%cmpi/u 8, 0, 4;
|
663 |
|
|
%jmp/1 T_4.1, 6;
|
664 |
|
|
%cmpi/u 8, 1, 4;
|
665 |
|
|
%jmp/1 T_4.2, 6;
|
666 |
|
|
%cmpi/u 8, 9, 4;
|
667 |
|
|
%jmp/1 T_4.3, 6;
|
668 |
|
|
%cmpi/u 8, 7, 4;
|
669 |
|
|
%jmp/1 T_4.4, 6;
|
670 |
|
|
%cmpi/u 8, 8, 4;
|
671 |
|
|
%jmp/1 T_4.5, 6;
|
672 |
|
|
%cmpi/u 8, 2, 4;
|
673 |
|
|
%jmp/1 T_4.6, 6;
|
674 |
|
|
%cmpi/u 8, 3, 4;
|
675 |
|
|
%jmp/1 T_4.7, 6;
|
676 |
|
|
%cmpi/u 8, 12, 4;
|
677 |
|
|
%jmp/1 T_4.8, 6;
|
678 |
|
|
%cmpi/u 8, 13, 4;
|
679 |
|
|
%jmp/1 T_4.9, 6;
|
680 |
|
|
%cmpi/u 8, 14, 4;
|
681 |
|
|
%jmp/1 T_4.10, 6;
|
682 |
|
|
%cmpi/u 8, 10, 4;
|
683 |
|
|
%jmp/1 T_4.11, 6;
|
684 |
|
|
%cmpi/u 8, 11, 4;
|
685 |
|
|
%jmp/1 T_4.12, 6;
|
686 |
|
|
%cmpi/u 8, 15, 4;
|
687 |
|
|
%jmp/1 T_4.13, 6;
|
688 |
|
|
%cmpi/u 8, 4, 4;
|
689 |
|
|
%jmp/1 T_4.14, 6;
|
690 |
|
|
%cmpi/u 8, 5, 4;
|
691 |
|
|
%jmp/1 T_4.15, 6;
|
692 |
|
|
%load/v 8, v0x1cc8fe0_0, 4;
|
693 |
|
|
%ix/load 0, 4;
|
694 |
|
|
%assign/v0 v0x1cc8b00_0, 0, 8;
|
695 |
|
|
%jmp T_4.17;
|
696 |
|
|
T_4.0 ;
|
697 |
|
|
%ix/load 0, 1;
|
698 |
|
|
%ix/load 1, 6;
|
699 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
700 |
|
|
%jmp T_4.17;
|
701 |
|
|
T_4.1 ;
|
702 |
|
|
%ix/load 0, 1;
|
703 |
|
|
%ix/load 1, 0;
|
704 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
705 |
|
|
%ix/load 0, 1;
|
706 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
707 |
|
|
%ix/load 0, 1;
|
708 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
709 |
|
|
%jmp T_4.17;
|
710 |
|
|
T_4.2 ;
|
711 |
|
|
%ix/load 0, 1;
|
712 |
|
|
%ix/load 1, 1;
|
713 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
714 |
|
|
%ix/load 0, 1;
|
715 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
716 |
|
|
%ix/load 0, 1;
|
717 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
718 |
|
|
%jmp T_4.17;
|
719 |
|
|
T_4.3 ;
|
720 |
|
|
%ix/load 0, 1;
|
721 |
|
|
%ix/load 1, 9;
|
722 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
723 |
|
|
%ix/load 0, 1;
|
724 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
725 |
|
|
%ix/load 0, 1;
|
726 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
727 |
|
|
%jmp T_4.17;
|
728 |
|
|
T_4.4 ;
|
729 |
|
|
%ix/load 0, 1;
|
730 |
|
|
%ix/load 1, 7;
|
731 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
732 |
|
|
%ix/load 0, 1;
|
733 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
734 |
|
|
%ix/load 0, 1;
|
735 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
736 |
|
|
%jmp T_4.17;
|
737 |
|
|
T_4.5 ;
|
738 |
|
|
%ix/load 0, 1;
|
739 |
|
|
%ix/load 1, 8;
|
740 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
741 |
|
|
%ix/load 0, 1;
|
742 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
743 |
|
|
%ix/load 0, 1;
|
744 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
745 |
|
|
%jmp T_4.17;
|
746 |
|
|
T_4.6 ;
|
747 |
|
|
%ix/load 0, 1;
|
748 |
|
|
%ix/load 1, 2;
|
749 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
750 |
|
|
%ix/load 0, 1;
|
751 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
752 |
|
|
%ix/load 0, 1;
|
753 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
754 |
|
|
%jmp T_4.17;
|
755 |
|
|
T_4.7 ;
|
756 |
|
|
%ix/load 0, 1;
|
757 |
|
|
%ix/load 1, 3;
|
758 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
759 |
|
|
%ix/load 0, 1;
|
760 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
761 |
|
|
%jmp T_4.17;
|
762 |
|
|
T_4.8 ;
|
763 |
|
|
%ix/load 0, 1;
|
764 |
|
|
%ix/load 1, 12;
|
765 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
766 |
|
|
%ix/load 0, 1;
|
767 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
768 |
|
|
%ix/load 0, 1;
|
769 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
770 |
|
|
%jmp T_4.17;
|
771 |
|
|
T_4.9 ;
|
772 |
|
|
%ix/load 0, 1;
|
773 |
|
|
%ix/load 1, 13;
|
774 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
775 |
|
|
%ix/load 0, 1;
|
776 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
777 |
|
|
%ix/load 0, 1;
|
778 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
779 |
|
|
%jmp T_4.17;
|
780 |
|
|
T_4.10 ;
|
781 |
|
|
%ix/load 0, 1;
|
782 |
|
|
%ix/load 1, 14;
|
783 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
784 |
|
|
%ix/load 0, 1;
|
785 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
786 |
|
|
%ix/load 0, 1;
|
787 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
788 |
|
|
%jmp T_4.17;
|
789 |
|
|
T_4.11 ;
|
790 |
|
|
%ix/load 0, 1;
|
791 |
|
|
%ix/load 1, 10;
|
792 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
793 |
|
|
%ix/load 0, 1;
|
794 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
795 |
|
|
%ix/load 0, 1;
|
796 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
797 |
|
|
%jmp T_4.17;
|
798 |
|
|
T_4.12 ;
|
799 |
|
|
%ix/load 0, 1;
|
800 |
|
|
%ix/load 1, 11;
|
801 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
802 |
|
|
%ix/load 0, 1;
|
803 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
804 |
|
|
%ix/load 0, 1;
|
805 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
806 |
|
|
%jmp T_4.17;
|
807 |
|
|
T_4.13 ;
|
808 |
|
|
%ix/load 0, 1;
|
809 |
|
|
%ix/load 1, 15;
|
810 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
811 |
|
|
%ix/load 0, 1;
|
812 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
813 |
|
|
%ix/load 0, 1;
|
814 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
815 |
|
|
%jmp T_4.17;
|
816 |
|
|
T_4.14 ;
|
817 |
|
|
%ix/load 0, 1;
|
818 |
|
|
%ix/load 1, 4;
|
819 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
820 |
|
|
%ix/load 0, 1;
|
821 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
822 |
|
|
%ix/load 0, 1;
|
823 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
824 |
|
|
%jmp T_4.17;
|
825 |
|
|
T_4.15 ;
|
826 |
|
|
%ix/load 0, 1;
|
827 |
|
|
%ix/load 1, 5;
|
828 |
|
|
%assign/v0/x1 v0x1cc8c20_0, 0, 1;
|
829 |
|
|
%ix/load 0, 1;
|
830 |
|
|
%assign/v0 v0x1cc8940_0, 0, 1;
|
831 |
|
|
%ix/load 0, 1;
|
832 |
|
|
%assign/v0 v0x1cc89f0_0, 0, 1;
|
833 |
|
|
%jmp T_4.17;
|
834 |
|
|
T_4.17 ;
|
835 |
|
|
%jmp T_4;
|
836 |
|
|
.thread T_4, $push;
|
837 |
|
|
.scope S_0x1cb1d80;
|
838 |
|
|
T_5 ;
|
839 |
|
|
%wait E_0x1c8dd60;
|
840 |
|
|
%load/v 8, v0x1cad0b0_0, 1;
|
841 |
|
|
%ix/load 0, 1;
|
842 |
|
|
%ix/load 1, 0;
|
843 |
|
|
%assign/v0/x1 v0x1c9c590_0, 0, 8;
|
844 |
|
|
%set/v v0x1c9c610_0, 0, 32;
|
845 |
|
|
T_5.0 ;
|
846 |
|
|
%load/v 8, v0x1c9c610_0, 32;
|
847 |
|
|
%cmpi/u 8, 8, 32;
|
848 |
|
|
%jmp/0xz T_5.1, 5;
|
849 |
|
|
%ix/getv 1, v0x1c9c610_0;
|
850 |
|
|
%load/x1p 8, v0x1c9c490_0, 1;
|
851 |
|
|
; Save base=8 wid=1 in lookaside.
|
852 |
|
|
%ix/getv 1, v0x1c9c610_0;
|
853 |
|
|
%load/x1p 9, v0x1c9c590_0, 1;
|
854 |
|
|
; Save base=9 wid=1 in lookaside.
|
855 |
|
|
%load/v 10, v0x1cae3a0_0, 1;
|
856 |
|
|
%and 9, 10, 1;
|
857 |
|
|
%xor 8, 9, 1;
|
858 |
|
|
%ix/getv 1, v0x1c9c610_0;
|
859 |
|
|
%jmp/1 t_0, 4;
|
860 |
|
|
%ix/load 0, 1;
|
861 |
|
|
%assign/v0/x1 v0x1ca4bb0_0, 0, 8;
|
862 |
|
|
t_0 ;
|
863 |
|
|
%ix/getv 1, v0x1c9c610_0;
|
864 |
|
|
%load/x1p 8, v0x1cb25c0_0, 1;
|
865 |
|
|
; Save base=8 wid=1 in lookaside.
|
866 |
|
|
%ix/getv 1, v0x1c9c610_0;
|
867 |
|
|
%load/x1p 9, v0x1c9c590_0, 1;
|
868 |
|
|
; Save base=9 wid=1 in lookaside.
|
869 |
|
|
%load/v 10, v0x1cad830_0, 1;
|
870 |
|
|
%or 9, 10, 1;
|
871 |
|
|
%ix/getv 1, v0x1c9c610_0;
|
872 |
|
|
%load/x1p 10, v0x1c9f980_0, 1;
|
873 |
|
|
; Save base=10 wid=1 in lookaside.
|
874 |
|
|
%and 9, 10, 1;
|
875 |
|
|
%or 8, 9, 1;
|
876 |
|
|
%ix/load 0, 1;
|
877 |
|
|
%load/vp0 9, v0x1c9c610_0, 32;
|
878 |
|
|
%ix/get 1, 9, 32;
|
879 |
|
|
%jmp/1 t_1, 4;
|
880 |
|
|
%ix/load 0, 1;
|
881 |
|
|
%assign/v0/x1 v0x1c9c590_0, 0, 8;
|
882 |
|
|
t_1 ;
|
883 |
|
|
%ix/load 0, 1;
|
884 |
|
|
%load/vp0 8, v0x1c9c610_0, 32;
|
885 |
|
|
%set/v v0x1c9c610_0, 8, 32;
|
886 |
|
|
%jmp T_5.0;
|
887 |
|
|
T_5.1 ;
|
888 |
|
|
%jmp T_5;
|
889 |
|
|
.thread T_5, $push;
|
890 |
|
|
.scope S_0x1ca6660;
|
891 |
|
|
T_6 ;
|
892 |
|
|
%wait E_0x1c8f5d0;
|
893 |
|
|
%load/v 8, v0x1c5ffa0_0, 8;
|
894 |
|
|
%set/v v0x1cb3c30_0, 8, 8;
|
895 |
|
|
%set/v v0x1cbf130_0, 0, 1;
|
896 |
|
|
%load/v 16, v0x1c3a350_0, 3; Only need 3 of 8 bits
|
897 |
|
|
; Save base=16 wid=3 in lookaside.
|
898 |
|
|
%mov 8, 16, 3;
|
899 |
|
|
%mov 11, 0, 5;
|
900 |
|
|
%set/v v0x1c52ab0_0, 8, 8;
|
901 |
|
|
T_6.0 ;
|
902 |
|
|
%load/v 8, v0x1c52ab0_0, 8;
|
903 |
|
|
%cmp/u 0, 8, 8;
|
904 |
|
|
%jmp/0xz T_6.1, 5;
|
905 |
|
|
%load/v 8, v0x1cbe2f0_0, 1;
|
906 |
|
|
%jmp/0xz T_6.2, 8;
|
907 |
|
|
%ix/load 1, 1;
|
908 |
|
|
%mov 4, 0, 1;
|
909 |
|
|
%load/x1p 16, v0x1cb3c30_0, 7;
|
910 |
|
|
; Save base=16 wid=7 in lookaside.
|
911 |
|
|
%mov 8, 16, 7;
|
912 |
|
|
%load/v 16, v0x1cb3c30_0, 1; Only need 1 of 8 bits
|
913 |
|
|
; Save base=16 wid=1 in lookaside.
|
914 |
|
|
%mov 15, 16, 1;
|
915 |
|
|
%set/v v0x1cb3c30_0, 8, 8;
|
916 |
|
|
%load/v 8, v0x1cb3c30_0, 1; Only need 1 of 8 bits
|
917 |
|
|
; Save base=8 wid=1 in lookaside.
|
918 |
|
|
%set/v v0x1cbf130_0, 8, 1;
|
919 |
|
|
%jmp T_6.3;
|
920 |
|
|
T_6.2 ;
|
921 |
|
|
%ix/load 1, 7;
|
922 |
|
|
%mov 4, 0, 1;
|
923 |
|
|
%load/x1p 16, v0x1cb3c30_0, 1;
|
924 |
|
|
; Save base=16 wid=1 in lookaside.
|
925 |
|
|
%mov 8, 16, 1;
|
926 |
|
|
%load/v 16, v0x1cb3c30_0, 7; Only need 7 of 8 bits
|
927 |
|
|
; Save base=16 wid=7 in lookaside.
|
928 |
|
|
%mov 9, 16, 7;
|
929 |
|
|
%set/v v0x1cb3c30_0, 8, 8;
|
930 |
|
|
%ix/load 1, 6;
|
931 |
|
|
%mov 4, 0, 1;
|
932 |
|
|
%load/x1p 8, v0x1cb3c30_0, 1;
|
933 |
|
|
; Save base=8 wid=1 in lookaside.
|
934 |
|
|
%set/v v0x1cbf130_0, 8, 1;
|
935 |
|
|
T_6.3 ;
|
936 |
|
|
%load/v 8, v0x1c52ab0_0, 8;
|
937 |
|
|
%mov 16, 8, 8;
|
938 |
|
|
%mov 24, 0, 24;
|
939 |
|
|
%subi 16, 1, 32;
|
940 |
|
|
%set/v v0x1c52ab0_0, 16, 8;
|
941 |
|
|
%jmp T_6.0;
|
942 |
|
|
T_6.1 ;
|
943 |
|
|
%jmp T_6;
|
944 |
|
|
.thread T_6;
|
945 |
|
|
.scope S_0x1caa800;
|
946 |
|
|
T_7 ;
|
947 |
|
|
%wait E_0x1c8e490;
|
948 |
|
|
%load/v 8, v0x1cc75f0_0, 1;
|
949 |
|
|
%jmp/0xz T_7.0, 8;
|
950 |
|
|
%ix/load 0, 8;
|
951 |
|
|
%assign/v0 v0x1ca4970_0, 0, 0;
|
952 |
|
|
%ix/load 0, 8;
|
953 |
|
|
%assign/v0 v0x1ca52c0_0, 0, 0;
|
954 |
|
|
%ix/load 0, 8;
|
955 |
|
|
%assign/v0 v0x1cb3600_0, 0, 0;
|
956 |
|
|
%ix/load 0, 1;
|
957 |
|
|
%assign/v0 v0x1c8a150_0, 0, 1;
|
958 |
|
|
%ix/load 0, 1;
|
959 |
|
|
%assign/v0 v0x1c91380_0, 0, 0;
|
960 |
|
|
%ix/load 0, 1;
|
961 |
|
|
%assign/v0 v0x1c91060_0, 0, 0;
|
962 |
|
|
%jmp T_7.1;
|
963 |
|
|
T_7.0 ;
|
964 |
|
|
%load/v 8, v0x1cc71b0_0, 1;
|
965 |
|
|
%jmp/0xz T_7.2, 8;
|
966 |
|
|
%load/v 8, v0x1ca48f0_0, 8;
|
967 |
|
|
%ix/load 0, 8;
|
968 |
|
|
%assign/v0 v0x1ca4970_0, 0, 8;
|
969 |
|
|
%load/v 8, v0x1ca5240_0, 8;
|
970 |
|
|
%ix/load 0, 8;
|
971 |
|
|
%assign/v0 v0x1ca52c0_0, 0, 8;
|
972 |
|
|
T_7.2 ;
|
973 |
|
|
%load/v 8, v0x1cc7250_0, 1;
|
974 |
|
|
%jmp/0xz T_7.4, 8;
|
975 |
|
|
%load/v 8, v0x1c42730_0, 8;
|
976 |
|
|
%ix/load 0, 8;
|
977 |
|
|
%assign/v0 v0x1cb3600_0, 0, 8;
|
978 |
|
|
T_7.4 ;
|
979 |
|
|
%load/v 8, v0x1cc4940_0, 1;
|
980 |
|
|
%jmp/0xz T_7.6, 8;
|
981 |
|
|
%ix/load 0, 8;
|
982 |
|
|
%assign/v0 v0x1ca4970_0, 0, 0;
|
983 |
|
|
%ix/load 0, 8;
|
984 |
|
|
%assign/v0 v0x1ca52c0_0, 0, 0;
|
985 |
|
|
%ix/load 0, 8;
|
986 |
|
|
%assign/v0 v0x1cb3600_0, 0, 0;
|
987 |
|
|
%ix/load 0, 1;
|
988 |
|
|
%assign/v0 v0x1c91380_0, 0, 0;
|
989 |
|
|
T_7.6 ;
|
990 |
|
|
%load/v 8, v0x1c3eea0_0, 1;
|
991 |
|
|
%jmp/0xz T_7.8, 8;
|
992 |
|
|
%ix/load 0, 1;
|
993 |
|
|
%assign/v0 v0x1c8a150_0, 0, 0;
|
994 |
|
|
T_7.8 ;
|
995 |
|
|
%load/v 8, v0x1c3eda0_0, 1;
|
996 |
|
|
%jmp/0xz T_7.10, 8;
|
997 |
|
|
%ix/load 0, 1;
|
998 |
|
|
%assign/v0 v0x1c91380_0, 0, 0;
|
999 |
|
|
T_7.10 ;
|
1000 |
|
|
%load/v 8, v0x1c3ee20_0, 1;
|
1001 |
|
|
%jmp/0xz T_7.12, 8;
|
1002 |
|
|
%ix/load 0, 1;
|
1003 |
|
|
%assign/v0 v0x1c91060_0, 0, 0;
|
1004 |
|
|
T_7.12 ;
|
1005 |
|
|
%load/v 8, v0x1c42730_0, 8;
|
1006 |
|
|
%cmpi/u 8, 0, 8;
|
1007 |
|
|
%jmp/0xz T_7.14, 4;
|
1008 |
|
|
%ix/load 0, 1;
|
1009 |
|
|
%assign/v0 v0x1c8a150_0, 0, 1;
|
1010 |
|
|
%jmp T_7.15;
|
1011 |
|
|
T_7.14 ;
|
1012 |
|
|
%ix/load 0, 1;
|
1013 |
|
|
%assign/v0 v0x1c8a150_0, 0, 0;
|
1014 |
|
|
T_7.15 ;
|
1015 |
|
|
%load/v 8, v0x1c654c0_0, 1;
|
1016 |
|
|
%ix/load 0, 1;
|
1017 |
|
|
%assign/v0 v0x1c91380_0, 0, 8;
|
1018 |
|
|
T_7.1 ;
|
1019 |
|
|
%jmp T_7;
|
1020 |
|
|
.thread T_7;
|
1021 |
|
|
.scope S_0x1c43f20;
|
1022 |
|
|
T_8 ;
|
1023 |
|
|
%movi 8, 6382692, 32;
|
1024 |
|
|
%ix/load 1, 0;
|
1025 |
|
|
%ix/load 3, 0;
|
1026 |
|
|
%set/av v0x1ccc030, 8, 32;
|
1027 |
|
|
%movi 8, 1768842081, 32;
|
1028 |
|
|
%ix/load 1, 0;
|
1029 |
|
|
%ix/load 3, 1;
|
1030 |
|
|
%set/av v0x1ccc030, 8, 32;
|
1031 |
|
|
%movi 40, 1768842082, 32;
|
1032 |
|
|
%ix/load 1, 0;
|
1033 |
|
|
%ix/load 3, 9;
|
1034 |
|
|
%set/av v0x1ccc030, 40, 32;
|
1035 |
|
|
%movi 72, 7566690, 32;
|
1036 |
|
|
%ix/load 1, 0;
|
1037 |
|
|
%ix/load 3, 2;
|
1038 |
|
|
%set/av v0x1ccc030, 72, 32;
|
1039 |
|
|
%movi 72, 6516080, 32;
|
1040 |
|
|
%ix/load 1, 0;
|
1041 |
|
|
%ix/load 3, 3;
|
1042 |
|
|
%set/av v0x1ccc030, 72, 32;
|
1043 |
|
|
%movi 72, 6386540, 32;
|
1044 |
|
|
%ix/load 1, 0;
|
1045 |
|
|
%ix/load 3, 4;
|
1046 |
|
|
%set/av v0x1ccc030, 72, 32;
|
1047 |
|
|
%movi 72, 6386546, 32;
|
1048 |
|
|
%ix/load 1, 0;
|
1049 |
|
|
%ix/load 3, 5;
|
1050 |
|
|
%set/av v0x1ccc030, 72, 32;
|
1051 |
|
|
%movi 72, 6515826, 32;
|
1052 |
|
|
%ix/load 1, 0;
|
1053 |
|
|
%ix/load 3, 6;
|
1054 |
|
|
%set/av v0x1ccc030, 72, 32;
|
1055 |
|
|
%movi 72, 1684366177, 32;
|
1056 |
|
|
%ix/load 1, 0;
|
1057 |
|
|
%ix/load 3, 7;
|
1058 |
|
|
%set/av v0x1ccc030, 72, 32;
|
1059 |
|
|
%movi 104, 1684366178, 32;
|
1060 |
|
|
%ix/load 1, 0;
|
1061 |
|
|
%ix/load 3, 8;
|
1062 |
|
|
%set/av v0x1ccc030, 104, 32;
|
1063 |
|
|
%movi 136, 7173484, 32;
|
1064 |
|
|
%ix/load 1, 0;
|
1065 |
|
|
%ix/load 3, 10;
|
1066 |
|
|
%set/av v0x1ccc030, 136, 32;
|
1067 |
|
|
%movi 136, 1668312161, 32;
|
1068 |
|
|
%ix/load 1, 0;
|
1069 |
|
|
%ix/load 3, 11;
|
1070 |
|
|
%set/av v0x1ccc030, 136, 32;
|
1071 |
|
|
%movi 168, 6385252, 32;
|
1072 |
|
|
%ix/load 1, 0;
|
1073 |
|
|
%ix/load 3, 12;
|
1074 |
|
|
%set/av v0x1ccc030, 168, 32;
|
1075 |
|
|
%movi 168, 28530, 32;
|
1076 |
|
|
%ix/load 1, 0;
|
1077 |
|
|
%ix/load 3, 13;
|
1078 |
|
|
%set/av v0x1ccc030, 168, 32;
|
1079 |
|
|
%movi 168, 7892850, 32;
|
1080 |
|
|
%ix/load 1, 0;
|
1081 |
|
|
%ix/load 3, 14;
|
1082 |
|
|
%set/av v0x1ccc030, 168, 32;
|
1083 |
|
|
%movi 168, 1668312162, 32;
|
1084 |
|
|
%ix/load 1, 0;
|
1085 |
|
|
%ix/load 3, 15;
|
1086 |
|
|
%set/av v0x1ccc030, 168, 32;
|
1087 |
|
|
%end;
|
1088 |
|
|
.thread T_8;
|
1089 |
|
|
.scope S_0x1c43f20;
|
1090 |
|
|
T_9 ;
|
1091 |
|
|
%movi 8, 10000, 32;
|
1092 |
|
|
%set/v v0x1ccc170_0, 8, 32;
|
1093 |
|
|
%set/v v0x1ccc610_0, 1, 1;
|
1094 |
|
|
%vpi_call 2 127 "$display", "Generating %0d random inputs", v0x1ccc170_0;
|
1095 |
|
|
%end;
|
1096 |
|
|
.thread T_9;
|
1097 |
|
|
.scope S_0x1c43f20;
|
1098 |
|
|
T_10 ;
|
1099 |
|
|
%set/v v0x1ccb690_0, 0, 1;
|
1100 |
|
|
T_10.0 ;
|
1101 |
|
|
%delay 10000000, 0;
|
1102 |
|
|
%load/v 8, v0x1ccb690_0, 1;
|
1103 |
|
|
%inv 8, 1;
|
1104 |
|
|
%set/v v0x1ccb690_0, 8, 1;
|
1105 |
|
|
%jmp T_10.0;
|
1106 |
|
|
%end;
|
1107 |
|
|
.thread T_10;
|
1108 |
|
|
.scope S_0x1c43f20;
|
1109 |
|
|
T_11 ;
|
1110 |
|
|
%wait E_0x1cbe950;
|
1111 |
|
|
%jmp T_11;
|
1112 |
|
|
.thread T_11, $push;
|
1113 |
|
|
.scope S_0x1c43f20;
|
1114 |
|
|
T_12 ;
|
1115 |
|
|
%set/v v0x1ccbd60_0, 0, 32;
|
1116 |
|
|
%end;
|
1117 |
|
|
.thread T_12;
|
1118 |
|
|
.scope S_0x1c43f20;
|
1119 |
|
|
T_13 ;
|
1120 |
|
|
%wait E_0x1cbe000;
|
1121 |
|
|
%load/v 8, v0x1ccbcd0_0, 1;
|
1122 |
|
|
%jmp/0xz T_13.0, 8;
|
1123 |
|
|
%load/v 8, v0x1ccbd60_0, 32;
|
1124 |
|
|
%cmp/s 0, 8, 32;
|
1125 |
|
|
%jmp/0xz T_13.2, 5;
|
1126 |
|
|
%vpi_call 2 174 "$display", "Test FAILED with %d ERRORs [%0t] ", v0x1ccbd60_0, $time;
|
1127 |
|
|
%jmp T_13.3;
|
1128 |
|
|
T_13.2 ;
|
1129 |
|
|
%vpi_call 2 176 "$display", "Test PASSED ";
|
1130 |
|
|
T_13.3 ;
|
1131 |
|
|
%vpi_call 2 179 "$fclose", v0x1ccbe80_0;
|
1132 |
|
|
%vpi_call 2 180 "$fclose", v0x1ccc4b0_0;
|
1133 |
|
|
%vpi_call 2 181 "$finish";
|
1134 |
|
|
T_13.0 ;
|
1135 |
|
|
%jmp T_13;
|
1136 |
|
|
.thread T_13;
|
1137 |
|
|
.scope S_0x1c43f20;
|
1138 |
|
|
T_14 ;
|
1139 |
|
|
%delay 1000, 0;
|
1140 |
|
|
%vpi_func 2 192 "$fopen", 8, 32, "alu_test.txt", "r";
|
1141 |
|
|
%set/v v0x1ccbe80_0, 8, 32;
|
1142 |
|
|
%set/v v0x1ccbcd0_0, 0, 1;
|
1143 |
|
|
%set/v v0x1ccbb30_0, 0, 32;
|
1144 |
|
|
%set/v v0x1ccb710_0, 1, 1;
|
1145 |
|
|
%set/v v0x1ccc800_0, 0, 1;
|
1146 |
|
|
T_14.0 ;
|
1147 |
|
|
%vpi_func 2 203 "$feof", 8, 32, v0x1ccbe80_0;
|
1148 |
|
|
%nor/r 8, 8, 32;
|
1149 |
|
|
%load/v 9, v0x1ccc610_0, 1;
|
1150 |
|
|
%inv 9, 1;
|
1151 |
|
|
%and 8, 9, 1;
|
1152 |
|
|
%load/v 9, v0x1ccc610_0, 1;
|
1153 |
|
|
%load/v 10, v0x1ccc170_0, 32;
|
1154 |
|
|
%cmp/s 0, 10, 32;
|
1155 |
|
|
%mov 10, 5, 1;
|
1156 |
|
|
%and 9, 10, 1;
|
1157 |
|
|
%or 8, 9, 1;
|
1158 |
|
|
%jmp/0xz T_14.1, 8;
|
1159 |
|
|
%load/v 8, v0x1ccbb30_0, 32;
|
1160 |
|
|
%mov 40, 8, 32;
|
1161 |
|
|
%mov 72, 39, 1;
|
1162 |
|
|
%addi 40, 1, 33;
|
1163 |
|
|
%set/v v0x1ccbb30_0, 40, 32;
|
1164 |
|
|
%load/v 8, v0x1ccc610_0, 1;
|
1165 |
|
|
%jmp/0xz T_14.2, 8;
|
1166 |
|
|
%vpi_func 2 216 "$random", 8, 32;
|
1167 |
|
|
%set/v v0x1ccc530_0, 8, 32;
|
1168 |
|
|
%load/v 8, v0x1ccc530_0, 32;
|
1169 |
|
|
%set/v v0x1ccba10_0, 8, 8;
|
1170 |
|
|
%vpi_func 2 223 "$random", 8, 32;
|
1171 |
|
|
%set/v v0x1ccc530_0, 8, 32;
|
1172 |
|
|
%load/v 8, v0x1ccc530_0, 32;
|
1173 |
|
|
%set/v v0x1ccbab0_0, 8, 8;
|
1174 |
|
|
%vpi_func 2 230 "$random", 8, 32;
|
1175 |
|
|
%set/v v0x1ccc530_0, 8, 32;
|
1176 |
|
|
%load/v 8, v0x1ccc530_0, 32;
|
1177 |
|
|
%set/v v0x1ccae50_0, 8, 32;
|
1178 |
|
|
%fork TD_alu_tb.get_random_opcode, S_0x1ccacf0;
|
1179 |
|
|
%join;
|
1180 |
|
|
%load/v 8, v0x1ccadd0_0, 32;
|
1181 |
|
|
%set/v v0x1ccc900_0, 8, 32;
|
1182 |
|
|
%vpi_func 2 237 "$random", 8, 32;
|
1183 |
|
|
%set/v v0x1ccc530_0, 8, 32;
|
1184 |
|
|
%load/v 8, v0x1ccc530_0, 32;
|
1185 |
|
|
%set/v v0x1ccbc50_0, 8, 1;
|
1186 |
|
|
%load/v 8, v0x1ccc170_0, 32;
|
1187 |
|
|
%mov 40, 8, 32;
|
1188 |
|
|
%mov 72, 39, 1;
|
1189 |
|
|
%subi 40, 1, 33;
|
1190 |
|
|
%set/v v0x1ccc170_0, 40, 32;
|
1191 |
|
|
%jmp T_14.3;
|
1192 |
|
|
T_14.2 ;
|
1193 |
|
|
%vpi_func 2 248 "$fscanf", 8, 32, v0x1ccbe80_0, "%b %b %s %b", v0x1ccba10_0, v0x1ccbab0_0, v0x1ccc900_0, v0x1ccbc50_0;
|
1194 |
|
|
%set/v v0x1ccc880_0, 8, 32;
|
1195 |
|
|
T_14.4 ;
|
1196 |
|
|
%load/v 8, v0x1ccc880_0, 32;
|
1197 |
|
|
%cmpi/u 8, 0, 32;
|
1198 |
|
|
%mov 8, 4, 1;
|
1199 |
|
|
%vpi_func 2 249 "$feof", 9, 32, v0x1ccbe80_0;
|
1200 |
|
|
%nor/r 9, 9, 32;
|
1201 |
|
|
%and 8, 9, 1;
|
1202 |
|
|
%jmp/0xz T_14.5, 8;
|
1203 |
|
|
%vpi_func 2 251 "$fgetc", 8, 32, v0x1ccbe80_0;
|
1204 |
|
|
%set/v v0x1ccc880_0, 8, 32;
|
1205 |
|
|
%vpi_func 2 252 "$fscanf", 8, 32, v0x1ccbe80_0, "%b %b %s %b", v0x1ccba10_0, v0x1ccbab0_0, v0x1ccc900_0, v0x1ccbc50_0;
|
1206 |
|
|
%set/v v0x1ccc880_0, 8, 32;
|
1207 |
|
|
%jmp T_14.4;
|
1208 |
|
|
T_14.5 ;
|
1209 |
|
|
T_14.3 ;
|
1210 |
|
|
%load/v 8, v0x1ccbb30_0, 32;
|
1211 |
|
|
%cmpi/u 8, 1, 32;
|
1212 |
|
|
%jmp/0xz T_14.6, 4;
|
1213 |
|
|
%vpi_call 2 257 "$display", "**** Start of Test ****";
|
1214 |
|
|
T_14.6 ;
|
1215 |
|
|
%wait E_0x1c8f5d0;
|
1216 |
|
|
%delay 5000000, 0;
|
1217 |
|
|
%load/v 8, v0x1ccba10_0, 8;
|
1218 |
|
|
%set/v v0x1ccb3d0_0, 8, 8;
|
1219 |
|
|
%load/v 8, v0x1ccbab0_0, 8;
|
1220 |
|
|
%set/v v0x1ccb510_0, 8, 8;
|
1221 |
|
|
%load/v 8, v0x1ccc900_0, 32;
|
1222 |
|
|
%set/v v0x1ccabf0_0, 8, 32;
|
1223 |
|
|
%fork TD_alu_tb.string2opcode, S_0x1ccaa90;
|
1224 |
|
|
%join;
|
1225 |
|
|
%load/v 8, v0x1ccac70_0, 4;
|
1226 |
|
|
%set/v v0x1ccb790_0, 8, 4;
|
1227 |
|
|
%load/v 8, v0x1ccbc50_0, 1;
|
1228 |
|
|
%set/v v0x1ccb710_0, 8, 1;
|
1229 |
|
|
%load/v 8, v0x1ccba10_0, 8;
|
1230 |
|
|
%set/v v0x1cca5b0_0, 8, 8;
|
1231 |
|
|
%load/v 8, v0x1ccbab0_0, 8;
|
1232 |
|
|
%set/v v0x1cca630_0, 8, 8;
|
1233 |
|
|
%load/v 8, v0x1ccc900_0, 32;
|
1234 |
|
|
%set/v v0x1cca6b0_0, 8, 32;
|
1235 |
|
|
%wait E_0x1c90700;
|
1236 |
|
|
%load/v 8, v0x1ccb710_0, 1;
|
1237 |
|
|
%inv 8, 1;
|
1238 |
|
|
%load/v 9, v0x1ccc800_0, 1;
|
1239 |
|
|
%inv 9, 1;
|
1240 |
|
|
%and 8, 9, 1;
|
1241 |
|
|
%jmp/0xz T_14.8, 8;
|
1242 |
|
|
%wait E_0x1c90700;
|
1243 |
|
|
%wait E_0x1c90700;
|
1244 |
|
|
%set/v v0x1ccc800_0, 1, 1;
|
1245 |
|
|
T_14.8 ;
|
1246 |
|
|
%jmp T_14.0;
|
1247 |
|
|
T_14.1 ;
|
1248 |
|
|
%set/v v0x1ccbcd0_0, 1, 1;
|
1249 |
|
|
%end;
|
1250 |
|
|
.thread T_14;
|
1251 |
|
|
.scope S_0x1c43f20;
|
1252 |
|
|
T_15 ;
|
1253 |
|
|
%set/v v0x1ccbbb0_0, 0, 1;
|
1254 |
|
|
%end;
|
1255 |
|
|
.thread T_15;
|
1256 |
|
|
.scope S_0x1c43f20;
|
1257 |
|
|
T_16 ;
|
1258 |
|
|
%wait E_0x1c90700;
|
1259 |
|
|
%delay 5000000, 0;
|
1260 |
|
|
%load/v 8, v0x1cca5b0_0, 8;
|
1261 |
|
|
%ix/load 0, 8;
|
1262 |
|
|
%assign/v0 v0x1cca890_0, 0, 8;
|
1263 |
|
|
%load/v 8, v0x1cca630_0, 8;
|
1264 |
|
|
%ix/load 0, 8;
|
1265 |
|
|
%assign/v0 v0x1cca910_0, 0, 8;
|
1266 |
|
|
%load/v 8, v0x1cca6b0_0, 32;
|
1267 |
|
|
%ix/load 0, 32;
|
1268 |
|
|
%assign/v0 v0x1cca990_0, 0, 8;
|
1269 |
|
|
%load/v 8, v0x1cca730_0, 8;
|
1270 |
|
|
%ix/load 0, 8;
|
1271 |
|
|
%assign/v0 v0x1ccaa10_0, 0, 8;
|
1272 |
|
|
%load/v 8, v0x1ccc800_0, 1;
|
1273 |
|
|
%load/v 9, v0x1ccb710_0, 1;
|
1274 |
|
|
%inv 9, 1;
|
1275 |
|
|
%and 8, 9, 1;
|
1276 |
|
|
%jmp/0xz T_16.0, 8;
|
1277 |
|
|
%load/v 8, v0x1cca890_0, 8;
|
1278 |
|
|
%set/v v0x1ccbf00_0, 8, 8;
|
1279 |
|
|
%load/v 8, v0x1cca910_0, 8;
|
1280 |
|
|
%set/v v0x1ccc0f0_0, 8, 8;
|
1281 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1282 |
|
|
%ix/load 3, 0;
|
1283 |
|
|
%mov 4, 0, 1;
|
1284 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1285 |
|
|
%cmp/u 8, 40, 32;
|
1286 |
|
|
%mov 8, 4, 1;
|
1287 |
|
|
%jmp/0xz T_16.2, 8;
|
1288 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1289 |
|
|
%load/v 16, v0x1ccc0f0_0, 8;
|
1290 |
|
|
%add 8, 16, 8;
|
1291 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1292 |
|
|
%jmp T_16.3;
|
1293 |
|
|
T_16.2 ;
|
1294 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1295 |
|
|
%ix/load 3, 1;
|
1296 |
|
|
%mov 4, 0, 1;
|
1297 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1298 |
|
|
%cmp/u 8, 40, 32;
|
1299 |
|
|
%mov 8, 4, 1;
|
1300 |
|
|
%jmp/0xz T_16.4, 8;
|
1301 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1302 |
|
|
%mov 16, 8, 8;
|
1303 |
|
|
%mov 24, 0, 24;
|
1304 |
|
|
%addi 16, 1, 32;
|
1305 |
|
|
%set/v v0x1ccc780_0, 16, 8;
|
1306 |
|
|
%jmp T_16.5;
|
1307 |
|
|
T_16.4 ;
|
1308 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1309 |
|
|
%ix/load 3, 9;
|
1310 |
|
|
%mov 4, 0, 1;
|
1311 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1312 |
|
|
%cmp/u 8, 40, 32;
|
1313 |
|
|
%mov 8, 4, 1;
|
1314 |
|
|
%jmp/0xz T_16.6, 8;
|
1315 |
|
|
%load/v 8, v0x1ccc0f0_0, 8;
|
1316 |
|
|
%mov 16, 8, 8;
|
1317 |
|
|
%mov 24, 0, 24;
|
1318 |
|
|
%addi 16, 1, 32;
|
1319 |
|
|
%set/v v0x1ccc780_0, 16, 8;
|
1320 |
|
|
%jmp T_16.7;
|
1321 |
|
|
T_16.6 ;
|
1322 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1323 |
|
|
%ix/load 3, 2;
|
1324 |
|
|
%mov 4, 0, 1;
|
1325 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1326 |
|
|
%cmp/u 8, 40, 32;
|
1327 |
|
|
%mov 8, 4, 1;
|
1328 |
|
|
%jmp/0xz T_16.8, 8;
|
1329 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1330 |
|
|
%load/v 16, v0x1ccc0f0_0, 8;
|
1331 |
|
|
%sub 8, 16, 8;
|
1332 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1333 |
|
|
%jmp T_16.9;
|
1334 |
|
|
T_16.8 ;
|
1335 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1336 |
|
|
%ix/load 3, 3;
|
1337 |
|
|
%mov 4, 0, 1;
|
1338 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1339 |
|
|
%cmp/u 8, 40, 32;
|
1340 |
|
|
%mov 8, 4, 1;
|
1341 |
|
|
%jmp/0xz T_16.10, 8;
|
1342 |
|
|
%load/v 8, v0x1ccb890_0, 8;
|
1343 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1344 |
|
|
%jmp T_16.11;
|
1345 |
|
|
T_16.10 ;
|
1346 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1347 |
|
|
%ix/load 3, 4;
|
1348 |
|
|
%mov 4, 0, 1;
|
1349 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1350 |
|
|
%cmp/u 8, 40, 32;
|
1351 |
|
|
%mov 8, 4, 1;
|
1352 |
|
|
%jmp/0xz T_16.12, 8;
|
1353 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1354 |
|
|
%set/v v0x1ccb030_0, 8, 8;
|
1355 |
|
|
%load/v 8, v0x1ccc0f0_0, 8;
|
1356 |
|
|
%set/v v0x1ccb210_0, 8, 8;
|
1357 |
|
|
%set/v v0x1ccb170_0, 0, 1;
|
1358 |
|
|
%fork TD_alu_tb.bas, S_0x1ccaf50;
|
1359 |
|
|
%join;
|
1360 |
|
|
%load/v 8, v0x1ccb0d0_0, 8;
|
1361 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1362 |
|
|
%jmp T_16.13;
|
1363 |
|
|
T_16.12 ;
|
1364 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1365 |
|
|
%ix/load 3, 5;
|
1366 |
|
|
%mov 4, 0, 1;
|
1367 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1368 |
|
|
%cmp/u 8, 40, 32;
|
1369 |
|
|
%mov 8, 4, 1;
|
1370 |
|
|
%jmp/0xz T_16.14, 8;
|
1371 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1372 |
|
|
%set/v v0x1ccb030_0, 8, 8;
|
1373 |
|
|
%load/v 8, v0x1ccc0f0_0, 8;
|
1374 |
|
|
%set/v v0x1ccb210_0, 8, 8;
|
1375 |
|
|
%set/v v0x1ccb170_0, 1, 1;
|
1376 |
|
|
%fork TD_alu_tb.bas, S_0x1ccaf50;
|
1377 |
|
|
%join;
|
1378 |
|
|
%load/v 8, v0x1ccb0d0_0, 8;
|
1379 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1380 |
|
|
%jmp T_16.15;
|
1381 |
|
|
T_16.14 ;
|
1382 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1383 |
|
|
%ix/load 3, 6;
|
1384 |
|
|
%mov 4, 0, 1;
|
1385 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1386 |
|
|
%cmp/u 8, 40, 32;
|
1387 |
|
|
%mov 8, 4, 1;
|
1388 |
|
|
%jmp/0xz T_16.16, 8;
|
1389 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1390 |
|
|
%load/v 16, v0x1ccc0f0_0, 8;
|
1391 |
|
|
%cmp/u 8, 16, 8;
|
1392 |
|
|
%mov 8, 4, 1;
|
1393 |
|
|
%jmp/0 T_16.18, 8;
|
1394 |
|
|
%mov 9, 0, 8;
|
1395 |
|
|
%jmp/1 T_16.20, 8;
|
1396 |
|
|
T_16.18 ; End of true expr.
|
1397 |
|
|
%load/v 17, v0x1ccb890_0, 8;
|
1398 |
|
|
%jmp/0 T_16.19, 8;
|
1399 |
|
|
; End of false expr.
|
1400 |
|
|
%blend 9, 17, 8; Condition unknown.
|
1401 |
|
|
%jmp T_16.20;
|
1402 |
|
|
T_16.19 ;
|
1403 |
|
|
%mov 9, 17, 8; Return false value
|
1404 |
|
|
T_16.20 ;
|
1405 |
|
|
%set/v v0x1ccc780_0, 9, 8;
|
1406 |
|
|
%jmp T_16.17;
|
1407 |
|
|
T_16.16 ;
|
1408 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1409 |
|
|
%ix/load 3, 7;
|
1410 |
|
|
%mov 4, 0, 1;
|
1411 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1412 |
|
|
%cmp/u 8, 40, 32;
|
1413 |
|
|
%mov 8, 4, 1;
|
1414 |
|
|
%jmp/0xz T_16.21, 8;
|
1415 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1416 |
|
|
%mov 16, 8, 8;
|
1417 |
|
|
%mov 24, 0, 24;
|
1418 |
|
|
%subi 16, 1, 32;
|
1419 |
|
|
%set/v v0x1ccc780_0, 16, 8;
|
1420 |
|
|
%jmp T_16.22;
|
1421 |
|
|
T_16.21 ;
|
1422 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1423 |
|
|
%ix/load 3, 8;
|
1424 |
|
|
%mov 4, 0, 1;
|
1425 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1426 |
|
|
%cmp/u 8, 40, 32;
|
1427 |
|
|
%mov 8, 4, 1;
|
1428 |
|
|
%jmp/0xz T_16.23, 8;
|
1429 |
|
|
%load/v 8, v0x1ccc0f0_0, 8;
|
1430 |
|
|
%mov 16, 8, 8;
|
1431 |
|
|
%mov 24, 0, 24;
|
1432 |
|
|
%subi 16, 1, 32;
|
1433 |
|
|
%set/v v0x1ccc780_0, 16, 8;
|
1434 |
|
|
%jmp T_16.24;
|
1435 |
|
|
T_16.23 ;
|
1436 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1437 |
|
|
%ix/load 3, 10;
|
1438 |
|
|
%mov 4, 0, 1;
|
1439 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1440 |
|
|
%cmp/u 8, 40, 32;
|
1441 |
|
|
%mov 8, 4, 1;
|
1442 |
|
|
%jmp/0xz T_16.25, 8;
|
1443 |
|
|
%load/v 8, v0x1ccb890_0, 8;
|
1444 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1445 |
|
|
%jmp T_16.26;
|
1446 |
|
|
T_16.25 ;
|
1447 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1448 |
|
|
%ix/load 3, 11;
|
1449 |
|
|
%mov 4, 0, 1;
|
1450 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1451 |
|
|
%cmp/u 8, 40, 32;
|
1452 |
|
|
%mov 8, 4, 1;
|
1453 |
|
|
%jmp/0xz T_16.27, 8;
|
1454 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1455 |
|
|
%inv 8, 8;
|
1456 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1457 |
|
|
%jmp T_16.28;
|
1458 |
|
|
T_16.27 ;
|
1459 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1460 |
|
|
%ix/load 3, 12;
|
1461 |
|
|
%mov 4, 0, 1;
|
1462 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1463 |
|
|
%cmp/u 8, 40, 32;
|
1464 |
|
|
%mov 8, 4, 1;
|
1465 |
|
|
%jmp/0xz T_16.29, 8;
|
1466 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1467 |
|
|
%load/v 16, v0x1ccc0f0_0, 8;
|
1468 |
|
|
%and 8, 16, 8;
|
1469 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1470 |
|
|
%jmp T_16.30;
|
1471 |
|
|
T_16.29 ;
|
1472 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1473 |
|
|
%ix/load 3, 13;
|
1474 |
|
|
%mov 4, 0, 1;
|
1475 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1476 |
|
|
%cmp/u 8, 40, 32;
|
1477 |
|
|
%mov 8, 4, 1;
|
1478 |
|
|
%jmp/0xz T_16.31, 8;
|
1479 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1480 |
|
|
%load/v 16, v0x1ccc0f0_0, 8;
|
1481 |
|
|
%or 8, 16, 8;
|
1482 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1483 |
|
|
%jmp T_16.32;
|
1484 |
|
|
T_16.31 ;
|
1485 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1486 |
|
|
%ix/load 3, 14;
|
1487 |
|
|
%mov 4, 0, 1;
|
1488 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1489 |
|
|
%cmp/u 8, 40, 32;
|
1490 |
|
|
%mov 8, 4, 1;
|
1491 |
|
|
%jmp/0xz T_16.33, 8;
|
1492 |
|
|
%load/v 8, v0x1ccbf00_0, 8;
|
1493 |
|
|
%load/v 16, v0x1ccc0f0_0, 8;
|
1494 |
|
|
%xor 8, 16, 8;
|
1495 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1496 |
|
|
%jmp T_16.34;
|
1497 |
|
|
T_16.33 ;
|
1498 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1499 |
|
|
%ix/load 3, 15;
|
1500 |
|
|
%mov 4, 0, 1;
|
1501 |
|
|
%load/av 40, v0x1ccc030, 32;
|
1502 |
|
|
%cmp/u 8, 40, 32;
|
1503 |
|
|
%mov 8, 4, 1;
|
1504 |
|
|
%jmp/0xz T_16.35, 8;
|
1505 |
|
|
%load/v 8, v0x1ccc0f0_0, 8;
|
1506 |
|
|
%inv 8, 8;
|
1507 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1508 |
|
|
T_16.35 ;
|
1509 |
|
|
T_16.34 ;
|
1510 |
|
|
T_16.32 ;
|
1511 |
|
|
T_16.30 ;
|
1512 |
|
|
T_16.28 ;
|
1513 |
|
|
T_16.26 ;
|
1514 |
|
|
T_16.24 ;
|
1515 |
|
|
T_16.22 ;
|
1516 |
|
|
T_16.17 ;
|
1517 |
|
|
T_16.15 ;
|
1518 |
|
|
T_16.13 ;
|
1519 |
|
|
T_16.11 ;
|
1520 |
|
|
T_16.9 ;
|
1521 |
|
|
T_16.7 ;
|
1522 |
|
|
T_16.5 ;
|
1523 |
|
|
T_16.3 ;
|
1524 |
|
|
%load/v 8, v0x1ccbfb0_0, 32;
|
1525 |
|
|
%movi 40, 6515826, 32;
|
1526 |
|
|
%cmp/u 8, 40, 32;
|
1527 |
|
|
%mov 8, 4, 1;
|
1528 |
|
|
%load/v 9, v0x1ccbde0_0, 1;
|
1529 |
|
|
%or 8, 9, 1;
|
1530 |
|
|
%jmp/0xz T_16.37, 8;
|
1531 |
|
|
%load/v 8, v0x1ccb890_0, 8;
|
1532 |
|
|
%set/v v0x1ccc780_0, 8, 8;
|
1533 |
|
|
T_16.37 ;
|
1534 |
|
|
%load/v 8, v0x1cca990_0, 32;
|
1535 |
|
|
%set/v v0x1ccbfb0_0, 8, 32;
|
1536 |
|
|
%load/v 8, v0x1cca890_0, 8;
|
1537 |
|
|
%set/v v0x1ccb470_0, 8, 8;
|
1538 |
|
|
%load/v 8, v0x1cca910_0, 8;
|
1539 |
|
|
%set/v v0x1ccb590_0, 8, 8;
|
1540 |
|
|
%load/v 8, v0x1ccb890_0, 8;
|
1541 |
|
|
%set/v v0x1ccb910_0, 8, 8;
|
1542 |
|
|
%load/v 8, v0x1ccc780_0, 8;
|
1543 |
|
|
%set/v v0x1ccc690_0, 8, 8;
|
1544 |
|
|
%load/v 8, v0x1ccbbb0_0, 1;
|
1545 |
|
|
%inv 8, 1;
|
1546 |
|
|
%set/v v0x1ccbbb0_0, 8, 1;
|
1547 |
|
|
%load/v 8, v0x1ccb890_0, 8;
|
1548 |
|
|
%load/v 16, v0x1ccc780_0, 8;
|
1549 |
|
|
%cmp/u 8, 16, 8;
|
1550 |
|
|
%inv 4, 1;
|
1551 |
|
|
%mov 8, 4, 1;
|
1552 |
|
|
%load/v 9, v0x1ccc780_0, 8;
|
1553 |
|
|
%and/r 9, 9, 8;
|
1554 |
|
|
%cmp/u 9, 2, 1;
|
1555 |
|
|
%mov 9, 6, 1;
|
1556 |
|
|
%or 8, 9, 1;
|
1557 |
|
|
%load/v 9, v0x1ccc780_0, 8;
|
1558 |
|
|
%or/r 9, 9, 8;
|
1559 |
|
|
%cmp/u 9, 3, 1;
|
1560 |
|
|
%mov 9, 6, 1;
|
1561 |
|
|
%or 8, 9, 1;
|
1562 |
|
|
%load/v 9, v0x1ccb890_0, 8;
|
1563 |
|
|
%and/r 9, 9, 8;
|
1564 |
|
|
%cmp/u 9, 2, 1;
|
1565 |
|
|
%mov 9, 6, 1;
|
1566 |
|
|
%or 8, 9, 1;
|
1567 |
|
|
%load/v 9, v0x1ccb890_0, 8;
|
1568 |
|
|
%or/r 9, 9, 8;
|
1569 |
|
|
%cmp/u 9, 3, 1;
|
1570 |
|
|
%mov 9, 6, 1;
|
1571 |
|
|
%or 8, 9, 1;
|
1572 |
|
|
%jmp/0xz T_16.39, 8;
|
1573 |
|
|
%vpi_call 2 404 "$display", "[%0t ps] A:%h[u%h] S:%s[%b] B:%h[u%h] = Y:%h [u%h] expected %h [u%h] -- ERROR Output Y is wrong", $time, v0x1cca890_0, v0x1ccb470_0, v0x1cca990_0, v0x1ccb790_0, v0x1cca910_0, v0x1ccb590_0, v0x1ccb890_0, v0x1ccb910_0, v0x1ccc780_0, v0x1ccc690_0;
|
1574 |
|
|
%load/v 8, v0x1ccbd60_0, 32;
|
1575 |
|
|
%mov 40, 8, 32;
|
1576 |
|
|
%mov 72, 39, 1;
|
1577 |
|
|
%addi 40, 1, 33;
|
1578 |
|
|
%set/v v0x1ccbd60_0, 40, 32;
|
1579 |
|
|
%jmp T_16.40;
|
1580 |
|
|
T_16.39 ;
|
1581 |
|
|
%vpi_call 2 408 "$display", "[%0t ps] A:%h[u%h] S:%s[%b] B:%h[u%h] = Y:%h [u%h] expected %h [u%h]", $time, v0x1cca890_0, v0x1ccb470_0, v0x1cca990_0, v0x1ccb790_0, v0x1cca910_0, v0x1ccb590_0, v0x1ccb890_0, v0x1ccb910_0, v0x1ccc780_0, v0x1ccc690_0;
|
1582 |
|
|
T_16.40 ;
|
1583 |
|
|
%movi 8, 1, 32;
|
1584 |
|
|
%load/v 40, v0x1ccbd60_0, 32;
|
1585 |
|
|
%cmp/s 8, 40, 32;
|
1586 |
|
|
%jmp/0xz T_16.41, 5;
|
1587 |
|
|
%vpi_call 2 413 "$display", "Maximum error count of %d reached...Terminating simulation", v0x1ccbd60_0;
|
1588 |
|
|
%vpi_call 2 414 "$finish";
|
1589 |
|
|
T_16.41 ;
|
1590 |
|
|
T_16.0 ;
|
1591 |
|
|
%load/v 8, v0x1ccb710_0, 1;
|
1592 |
|
|
%set/v v0x1ccbde0_0, 8, 1;
|
1593 |
|
|
%jmp T_16;
|
1594 |
|
|
.thread T_16;
|
1595 |
|
|
.scope S_0x1c43f20;
|
1596 |
|
|
T_17 ;
|
1597 |
|
|
%vpi_call 2 505 "$dumpfile", "alu_tb.vcd";
|
1598 |
|
|
%vpi_call 2 506 "$dumpvars";
|
1599 |
|
|
%end;
|
1600 |
|
|
.thread T_17;
|
1601 |
|
|
# The file index is used to find the file name in the following table.
|
1602 |
|
|
:file_names 8;
|
1603 |
|
|
"N/A";
|
1604 |
|
|
"";
|
1605 |
|
|
"/home/leonous/projects/verilog/ecpu/components/alu/tb/alu_tb.v";
|
1606 |
|
|
"/home/leonous/projects/verilog/ecpu/components/alu/rtl/verilog/alu.v";
|
1607 |
|
|
"/home/leonous/projects/verilog/ecpu/components/alu/rtl/verilog/alu_controller.v";
|
1608 |
|
|
"/home/leonous/projects/verilog/ecpu/components/alu/rtl/verilog/alu_datapath.v";
|
1609 |
|
|
"/home/leonous/projects/verilog/ecpu/components/alu/../adder/alu_adder.v";
|
1610 |
|
|
"/home/leonous/projects/verilog/ecpu/components/alu/../barrel_shifter/simple/barrel_shifter_simple.v";
|