Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • soclabs/nanosoc_tech
1 result
Show changes
......@@ -2,16 +2,16 @@
04
00
30
85
0B
71
0A
00
00
8D
0B
79
0A
00
00
8F
0B
7B
0A
00
00
00
......@@ -42,8 +42,8 @@
00
00
00
91
0B
7D
0A
00
00
00
......@@ -54,140 +54,140 @@
00
00
00
93
0B
7F
0A
00
00
95
0B
81
0A
00
00
97
0B
83
0A
00
00
97
0B
C7
04
00
00
97
0B
D7
04
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
97
0B
83
0A
00
00
00
......@@ -250,11 +250,11 @@ AB
43
18
47
9C
10
11
00
00
BC
30
11
00
00
......@@ -322,7 +322,7 @@ B5
D1
00
F0
BF
79
FE
10
BD
......@@ -332,7 +332,7 @@ BD
D1
00
F0
F0
AA
FE
10
BD
......@@ -342,7 +342,7 @@ BD
D1
00
F0
E3
9D
FF
10
BD
......@@ -352,7 +352,7 @@ BD
D1
00
F0
E6
A0
FF
10
BD
......@@ -368,10 +368,10 @@ BD
B5
10
BD
01
00
F0
21
F8
DB
FF
11
46
FF
......@@ -380,12 +380,12 @@ F7
FF
00
F0
BB
FB
01
4A
F9
00
F0
39
F8
F3
FF
03
B4
FF
......@@ -396,8 +396,8 @@ FF
BC
00
F0
29
FD
9F
FC
F0
B5
00
......@@ -408,248 +408,150 @@ B0
97
01
97
D4
A2
02
97
EA
A2
03
97
51
68
10
68
92
68
03
04
90
3D
46
3E
46
05
06
92
04
05
91
D2
E8
A0
00
F0
EB
A3
FE
D5
EB
4C
01
20
A0
60
EA
A0
00
F0
E8
9D
FE
01
21
D9
48
09
03
01
60
EF
49
00
01
60
D7
4C
02
20
08
60
68
03
28
15
DC
D6
4D
04
20
08
60
A0
68
00
28
04
06
D0
D5
A0
04
A8
C1
5D
EB
48
00
F0
D7
FE
00
20
20
60
61
20
28
5A
FD
A6
60
20
69
7F
1C
E0
68
00
28
04
0D
D0
D5
E8
A0
00
F0
CD
FE
00
20
20
61
60
68
03
28
EA
DD
60
69
03
28
05
DA
01
26
31
46
D4
A0
B8
FD
EF
48
00
F0
F0
54
FD
02
E0
E1
A0
00
F0
BC
FE
00
25
01
20
A0
60
E4
A0
00
F0
B6
FE
C0
49
02
20
08
60
04
20
08
60
A0
68
00
28
0A
D0
E4
A0
00
F0
AB
FE
03
A8
C1
5D
BC
48
00
F0
70
FD
00
20
A0
60
7F
1C
E0
68
00
28
0E
D0
E4
A0
00
F0
CD
FD
EC
48
00
F0
69
FD
69
46
A9
48
55
01
46
EA
ED
A0
00
F0
C4
AF
FD
00
20
E0
E6
60
6D
1C
0B
2D
DD
E2
DB
69
46
E6
01
A9
EA
A0
00
F0
BB
A7
FD
03
04
A9
68
46
01
A8
00
F0
9D
89
FE
00
28
03
04
D0
01
26
E7
20
00
90
EB
A0
00
F0
81
6C
FE
01
21
EF
F3
48
09
03
C9
02
01
60
49
......@@ -665,8 +567,10 @@ EF
01
60
00
2E
02
98
00
28
00
D0
08
20
......@@ -674,590 +578,778 @@ D0
B0
F0
BD
00
20
07
B0
F0
BD
F0
B5
00
24
85
8B
B0
00
94
8E
A0
02
94
20
00
68
90
04
90
26
46
E3
05
90
BD
A2
06
90
51
68
10
68
92
68
01
90
03
92
02
91
E5
A0
00
F0
63
4B
FE
E7
A0
C7
4F
00
F0
60
FE
97
48
61
21
01
60
05
24
25
46
0E
E0
04
2C
01
DA
61
21
29
60
0A
2C
08
DD
61
27
28
38
46
2F
60
00
F0
25
0B
FD
01
00
28
08
D1
01
D0
0A
2C
F7
DC
28
AE
31
5D
38
46
39
60
64
1C
00
F0
1E
02
FD
01
00
28
06
F7
D0
C1
4F
3C
46
38
46
00
F0
18
FD
02
FC
FC
00
28
08
03
D0
0F
E0
DD
E4
A0
00
F0
3D
31
FE
28
05
E0
01
20
01
46
00
F0
13
FD
01
26
07
E0
E0
90
EC
A0
00
F0
35
FE
5A
FD
C0
4F
38
46
00
F0
0B
FD
E8
FC
01
28
0B
D0
02
20
01
46
00
90
00
98
64
1C
30
42
D0
D0
E1
E6
A0
00
F0
29
FE
28
46
00
F0
0F
4E
FD
28
38
46
00
F0
04
FD
DD
FC
01
46
E5
A0
00
F0
4F
FD
28
04
D0
06
E0
38
46
00
F0
FD
E4
FC
00
28
01
D0
01
20
02
90
A9
4C
20
F5
E7
38
46
00
F0
E0
FC
00
FD
20
26
38
46
00
F0
F6
CF
FC
01
46
E1
A0
00
F0
3D
FD
20
28
09
D1
38
46
00
F0
EF
D7
FC
00
28
01
D0
02
20
02
90
04
98
00
04
A9
48
55
01
0E
28
46
E2
A0
00
F0
CA
FC
28
32
FD
6D
1C
20
46
00
F0
DE
C4
FC
00
28
FA
D0
28
0A
D1
38
46
00
F0
D9
BB
FC
01
46
28
05
D0
0C
2E
03
DA
01
A8
80
5D
20
60
76
1C
0C
2D
DE
DB
04
A9
E0
A0
00
F0
24
1B
FD
28
46
01
A9
04
A8
00
F0
D2
FC
FD
FD
00
28
1E
03
D0
28
46
E3
A0
00
F0
D5
FC
20
46
E2
FD
02
E0
00
F0
CE
FC
98
00
28
FA
00
D0
02
20
46
00
0B
B0
F0
C9
FC
01
46
CB
BD
70
B5
84
B0
00
25
E9
A0
00
F0
10
D5
FD
20
46
0F
21
EF
48
00
F0
C2
C6
FC
01
24
89
4E
00
28
0D
D0
94
01
94
02
94
23
46
22
46
20
21
30
46
03
94
00
F0
C4
5D
FC
02
98
00
28
0E
1A
D0
01
46
C8
E8
A0
00
F0
01
C0
FD
06
E0
04
20
02
90
E0
E7
08
21
C4
A0
00
F0
F9
FC
04
20
05
B0
F0
BD
CE
A0
00
F0
C3
FD
00
20
05
B0
F0
BD
F0
B5
8B
B0
00
20
00
90
04
90
05
90
35
A2
06
90
51
68
10
68
92
68
01
90
03
92
02
91
C9
A0
00
F0
AF
FD
3F
4F
00
24
25
46
38
46
00
F0
6F
FC
00
28
08
D1
94
01
AE
31
5D
38
46
39
60
64
1C
00
F0
66
FC
00
28
F7
D0
3C
94
02
94
03
94
89
4C
01
23
1A
46
38
20
21
20
46
00
F0
60
4C
FC
00
28
03
11
D0
C8
E7
A0
00
F0
95
AF
FD
05
E0
01
02
20
01
46
05
43
00
90
2D
12
D0
A0
00
F0
BE
FC
64
4F
38
01
20
04
B0
70
BD
30
46
00
F0
4C
84
FC
01
28
0C
D0
02
20
01
46
00
90
CA
E8
A0
00
F0
B2
D1
FC
00
26
38
E0
E7
20
46
00
F0
40
7C
FC
01
28
04
D0
0D
E0
38
46
F2
A0
00
F0
47
C9
FC
F4
EA
E7
38
46
00
F0
43
FC
20
04
A9
B0
70
BD
FD
48
55
01
46
CA
A0
00
F0
9E
FC
6D
1C
6A
20
46
00
F0
30
FC
00
28
0A
29
02
D1
38
46
40
6A
B8
28
01
D0
01
20
70
47
00
F0
27
FC
20
70
47
F8
48
01
6A
21
29
02
D1
40
6A
B8
28
05
01
D0
0C
2E
03
DA
01
A8
80
5D
20
60
76
1C
0C
2D
D9
DB
04
A9
C8
A0
70
47
00
F0
87
FC
20
70
47
F4
48
01
A9
6A
21
29
02
D1
40
6A
B8
28
01
D0
01
20
70
47
00
20
70
47
10
B5
00
F0
5B
FB
EE
48
00
F0
6E
FD
EB
48
01
6A
21
29
10
D1
40
6A
B8
28
0D
D1
E7
48
01
6A
21
29
09
D1
40
6A
B8
28
06
D1
E2
48
01
6A
20
29
02
D1
40
6A
B8
28
06
D0
E3
A0
00
F0
56
FD
00
F0
8B
FB
00
20
10
BD
FF
F7
75
FF
04
A8
46
FF
F7
F1
FE
04
43
FF
F7
94
FE
20
43
07
D0
01
46
E9
A0
00
F0
74
FC
00
F0
79
FB
00
20
10
BD
EF
A0
00
F0
3D
FD
F7
E7
10
B5
3F
4C
20
46
00
F0
0C
FC
01
28
07
D1
34
49
08
60
48
68
40
1C
48
60
20
46
00
F0
06
FC
10
BD
10
B5
41
4C
20
46
00
F0
FC
FB
02
28
08
D1
2C
49
01
20
08
61
48
69
40
1C
48
61
20
46
00
F0
F5
FB
10
BD
10
B5
26
49
01
20
C8
60
2D
48
00
F0
FD
FB
10
BD
10
B5
22
49
01
20
88
60
33
48
00
F0
F8
FB
10
BD
F0
B5
00
24
85
B0
00
94
16
A0
02
94
00
68
04
90
26
46
D5
A0
00
F0
FF
FC
D9
A0
00
F0
FC
FC
1F
48
61
21
01
60
05
46
0E
E0
04
2C
01
DA
61
21
29
60
0A
2C
08
DD
61
27
28
46
2F
60
00
F0
C1
FB
01
28
01
D0
0A
2C
F7
DC
28
46
00
F0
BA
FB
01
28
06
D0
1D
4F
38
46
00
F0
B4
FB
02
28
01
D0
95
AF
E1
98
9E
E1
A5
E1
00
00
68
65
6C
......@@ -1286,6 +1378,11 @@ E1
00
00
00
00
00
00
30
0A
2D
20
53
......@@ -1295,15 +1392,13 @@ E1
65
20
34
61
62
20
4F
76
65
72
72
75
6E
54
58
2F
52
58
20
49
52
......@@ -1311,14 +1406,11 @@ E1
0A
00
00
00
E1
00
E0
00
00
00
30
00
40
00
40
......@@ -1327,40 +1419,68 @@ E0
52
54
20
54
52
58
20
4F
76
65
72
72
75
6E
20
49
52
51
00
55
41
52
54
20
52
58
2E
2E
2E
2E
64
61
74
61
20
4F
72
65
63
65
69
76
65
64
2E
2E
2E
2E
20
00
00
00
50
00
40
25
63
0A
00
0A
53
74
72
72
75
69
6E
67
20
49
52
51
72
65
63
65
69
76
65
64
3A
20
25
73
0A
0A
00
00
2A
2A
......@@ -1380,175 +1500,215 @@ E0
2A
2A
20
55
41
52
54
20
52
58
20
4F
76
65
72
53
74
72
75
69
6E
67
73
20
45
72
72
6F
72
2C
20
45
72
72
44
6F
72
20
43
4E
6F
64
65
3A
20
28
30
78
25
78
29
00
55
41
52
54
20
52
58
20
4F
76
65
72
72
75
6E
74
20
50
4D
61
73
73
65
64
74
63
68
21
00
80
E1
00
E0
0A
2D
20
53
74
61
67
65
20
34
62
32
20
53
69
6D
70
6C
65
20
54
72
61
6E
73
6D
69
73
73
69
6F
6E
20
2D
20
54
58
2F
20
61
6E
64
20
52
58
20
49
52
51
54
65
73
74
0A
00
00
55
41
52
54
58
20
42
75
66
66
65
72
20
46
75
6C
6C
20
2E
2E
2E
72
65
73
74
61
72
74
69
6E
67
20
74
72
61
6E
73
6D
69
73
73
69
6F
6E
00
00
00
2A
2A
20
54
58
45
53
54
20
46
41
49
52
51
4C
45
44
20
2E
2E
2E
2E
64
61
74
61
2A
2A
2C
20
73
45
72
72
6F
72
20
43
6F
64
65
6E
74
3A
20
28
30
78
25
78
29
00
00
00
55
41
52
54
20
52
58
20
49
52
51
42
75
66
66
65
72
20
46
75
6C
6C
20
2E
2E
2E
2E
64
61
74
61
20
72
65
63
65
69
76
65
69
6E
67
20
64
2E
61
74
61
2E
2E
2E
20
00
00
00
50
00
40
25
63
0A
00
0A
53
43
68
61
72
61
63
74
65
72
69
6E
67
73
20
72
65
......@@ -1563,7 +1723,7 @@ E0
25
73
0A
0A
00
00
00
2A
......@@ -1583,6 +1743,15 @@ E0
20
2A
2A
2C
20
45
72
72
6F
72
20
3A
20
53
74
......@@ -1593,7 +1762,7 @@ E0
73
20
44
6F
4F
20
4E
6F
......@@ -1606,194 +1775,237 @@ E0
68
21
00
80
E1
00
E0
0A
53
74
61
67
65
20
33
20
50
6F
6C
6C
69
6E
67
00
00
00
00
0A
2D
20
53
74
61
67
65
20
33
61
31
20
4F
76
65
72
72
75
6E
55
41
52
54
20
50
6F
6C
49
6E
69
74
69
61
6C
69
7A
61
74
69
6F
6E
67
0A
00
00
00
00
10
01
40
55
41
52
54
58
20
42
75
66
66
65
72
30
20
4F
76
65
72
72
75
49
6E
69
74
69
61
6C
69
7A
61
74
69
6F
6E
20
4F
63
63
75
72
72
46
61
69
6C
65
64
0A
00
00
52
58
20
42
75
66
66
65
72
20
4F
76
65
72
72
75
6E
20
4F
63
63
75
72
72
65
64
00
00
0A
2D
20
53
74
61
67
65
20
33
62
20
54
58
20
26
20
52
58
20
49
55
41
52
51
54
31
20
50
6F
6C
49
6E
69
74
69
61
6C
69
7A
61
74
69
6F
6E
67
20
46
61
69
6C
65
64
0A
00
00
00
00
55
41
52
54
58
30
20
49
52
51
20
53
6E
69
74
69
61
74
6C
69
73
65
64
20
53
75
63
63
65
73
73
66
75
6C
6C
79
20
28
42
61
75
64
20
44
69
76
69
64
65
72
20
6F
66
3A
20
25
64
29
0A
00
00
00
55
41
52
58
54
31
20
49
52
51
20
53
6E
69
74
69
61
74
6C
69
73
65
64
20
53
75
63
63
65
73
73
66
75
6C
6C
79
20
28
42
61
75
64
20
44
69
76
69
64
65
72
20
6F
66
3A
20
25
64
29
0A
00
00
00
C0
1F
01
40
C0
5F
00
40
C0
4F
00
40
AC
11
00
00
2A
2A
20
......@@ -1802,159 +2014,55 @@ E0
53
54
20
46
41
53
4B
49
4C
50
50
45
44
20
2A
2A
2C
20
50
6F
6C
6C
69
6E
67
20
55
41
52
54
65
73
74
20
45
72
72
6F
72
20
43
6F
64
65
3A
20
28
30
78
25
78
29
00
00
50
6F
6C
6C
69
6E
67
20
54
65
73
74
20
50
61
73
73
65
64
00
0A
53
74
61
67
65
20
32
20
53
69
6D
70
6C
65
20
54
72
61
6E
73
6D
69
73
73
69
6F
6E
20
2D
2F
20
55
41
52
54
58
20
61
6E
64
20
52
58
31
20
54
65
73
74
0A
00
00
54
58
2F
20
42
75
66
66
65
72
47
50
49
4F
20
46
75
6C
6C
31
20
2E
2E
2E
72
65
73
74
61
72
74
69
6E
67
20
6F
74
72
20
61
76
61
6E
73
6D
69
73
73
69
6F
6E
6C
61
62
6C
65
00
00
00
......@@ -1983,7 +2091,7 @@ E0
6F
72
20
43
63
6F
64
65
......@@ -1995,867 +2103,475 @@ E0
25
78
29
0A
00
00
00
52
58
2A
2A
20
42
75
66
66
54
45
53
54
20
50
41
53
53
45
44
20
2A
2A
0A
00
00
0A
53
74
61
67
65
72
20
46
75
33
20
50
6F
6C
6C
20
2E
2E
2E
72
65
63
65
69
76
69
6E
67
00
00
00
00
0A
2D
20
64
61
53
74
61
2E
2E
2E
67
65
20
25
63
0A
00
0A
43
68
61
72
33
61
63
74
65
72
73
20
72
65
63
65
69
4F
76
65
64
3A
72
72
75
6E
20
25
73
50
6F
6C
6C
69
6E
67
0A
00
00
00
6E
00
40
A0
00
F0
B7
39
FB
02
E0
00
98
00
28
00
D0
02
20
0B
B0
F0
BD
70
B5
84
B0
00
25
75
A0
46
00
F0
AA
FB
0F
21
7B
48
00
F0
9B
FA
01
24
7A
4E
00
94
01
94
02
94
23
46
22
46
20
21
30
46
03
94
00
F0
32
FA
00
28
1A
D0
74
26
07
E0
43
A0
00
F0
95
31
FB
01
25
00
94
01
94
02
94
03
94
78
4C
01
23
1A
46
20
21
20
38
46
00
F0
21
07
FA
00
28
11
D0
75
A0
00
F0
84
FB
02
20
05
43
00
2D
12
D0
01
20
04
B0
70
BD
00
90
00
98
64
1C
30
46
42
00
D1
2F
E6
44
A0
00
F0
59
FA
01
24
FB
28
46
76
A0
00
F0
A6
0A
FA
E0
E7
20
28
46
00
F0
51
FA
FF
F9
01
46
80
48
A0
00
F0
9E
4A
FA
EA
E7
00
20
04
B0
70
BD
8A
48
01
6A
20
29
02
D1
40
6A
B8
28
01
D0
01
20
70
47
46
00
20
70
47
86
48
01
6A
21
29
02
D1
40
6A
B8
28
01
D0
01
20
70
47
F0
F8
F9
00
20
70
47
81
48
01
6A
21
29
02
D1
40
6A
B8
28
01
D0
01
20
70
47
00
02
90
48
4C
20
70
47
10
B5
46
00
F0
74
FB
F9
7B
48
20
46
00
F0
43
FB
79
48
01
6A
21
29
10
D1
40
6A
B8
28
0D
D1
74
48
01
6A
21
29
09
D1
40
6A
B8
28
06
D1
70
48
F1
F9
01
6A
20
29
02
D1
40
6A
B8
28
06
D0
70
46
45
A0
00
F0
2B
FB
38
FA
20
46
00
F0
72
EA
F9
00
28
01
D0
02
20
10
BD
FF
F7
75
FF
04
46
FF
F7
62
FD
02
90
04
43
FF
F7
B0
FC
98
00
04
43
FF
F7
20
FC
20
43
07
D0
01
0E
28
46
75
A0
00
F0
C5
F9
28
46
FA
00
F0
5D
D9
F9
00
20
10
BD
7B
A0
00
F0
0F
FB
F7
E7
10
B5
2E
4C
20
28
FA
D0
28
46
00
F0
DE
D4
F9
01
46
32
A0
00
F0
1F
FA
28
46
00
F0
CD
F9
00
28
1E
D0
28
07
D1
7B
49
08
60
48
68
40
1C
48
60
20
46
00
F0
D8
D0
F9
10
BD
10
B5
2F
4C
20
46
00
F0
CE
C9
F9
02
00
28
08
D1
73
49
01
20
08
61
48
69
40
1C
48
61
FA
D0
20
46
00
F0
C7
C4
F9
10
BD
10
B5
6D
49
01
20
C8
60
1C
48
46
2E
A0
00
F0
CF
F9
10
BD
10
B5
69
49
01
0B
FA
20
88
60
21
48
46
00
F0
CA
F9
10
BD
F9
00
00
2A
2A
20
54
45
53
54
28
0D
D0
20
46
41
49
4C
45
44
20
2A
2A
2C
20
45
72
72
6F
72
20
3A
20
53
74
72
69
6E
67
73
20
44
4F
20
4E
6F
74
20
4D
61
74
63
68
21
00
00
00
00
0A
53
74
61
67
65
20
31
20
55
41
52
54
20
49
6E
69
74
69
61
6C
69
7A
61
74
69
6F
6E
0A
00
00
00
F0
BF
F9
02
98
00
10
28
0E
D0
01
40
00
40
00
40
55
41
52
54
30
20
49
6E
69
74
69
61
6C
69
7A
61
74
69
6F
6E
20
46
61
69
6C
65
64
0A
00
00
00
00
00
50
2C
A0
00
40
55
41
52
54
31
F0
FC
F9
06
E0
04
20
49
6E
69
74
69
61
6C
69
7A
61
74
69
6F
6E
02
90
E0
E7
08
21
28
A0
00
F0
F4
F9
04
20
46
61
69
6C
65
64
0A
05
B0
F0
BD
32
A0
00
F0
BE
FA
00
20
05
B0
F0
BD
00
00
55
41
52
54
30
58
20
49
6E
69
74
69
61
6C
69
73
42
75
66
66
65
64
72
20
53
4F
76
65
72
72
75
6E
20
4F
63
63
65
73
73
66
75
6C
6C
79
72
72
65
64
00
00
52
58
20
28
42
61
75
64
66
66
65
72
20
44
69
4F
76
69
64
65
72
72
75
6E
20
6F
66
3A
20
25
4F
63
63
75
72
72
65
64
29
0A
00
00
00
55
41
52
54
31
0A
2D
20
49
6E
69
53
74
69
61
6C
69
73
67
65
64
20
53
75
63
63
65
73
73
66
75
6C
6C
79
33
62
20
28
42
61
75
64
54
58
20
44
69
76
69
64
65
72
26
20
6F
66
3A
52
58
20
25
64
29
49
52
51
20
50
6F
6C
6C
69
6E
67
0A
00
00
00
C0
1F
01
40
C0
5F
00
40
C0
4F
00
40
38
12
00
00
2A
2A
20
54
45
53
54
58
20
53
4B
49
50
50
45
44
20
2A
2A
20
55
41
52
54
20
30
51
20
2F
53
74
61
74
75
73
3A
20
55
41
25
64
0A
00
00
00
50
00
40
52
54
20
31
20
2F
58
20
47
50
49
4F
20
31
52
51
20
6E
6F
53
74
20
61
76
61
69
6C
61
62
6C
65
00
74
75
73
3A
20
25
64
0A
00
00
2A
......@@ -2877,13 +2593,26 @@ C0
2A
2C
20
50
6F
6C
6C
69
6E
67
20
54
65
73
74
20
45
72
72
6F
72
20
63
43
6F
64
65
......@@ -2895,33 +2624,28 @@ C0
25
78
29
0A
00
00
2A
2A
50
6F
6C
6C
69
6E
67
20
54
45
53
54
65
73
74
20
50
41
53
53
45
44
20
2A
2A
0A
00
00
00
00
61
73
73
65
64
00
30
04
49
03
......@@ -2939,9 +2663,9 @@ C0
70
47
00
E1
F5
05
1C
4E
0E
18
00
00
......@@ -2978,8 +2702,8 @@ E7
47
00
00
75
0B
61
0A
00
00
C1
......@@ -3008,7 +2732,7 @@ C0
B2
00
F0
1E
36
F8
10
BD
......@@ -3016,11 +2740,11 @@ BD
B5
00
F0
20
42
F8
00
F0
18
30
F8
10
BD
......@@ -3036,42 +2760,96 @@ C0
B2
00
F0
10
28
F8
10
BD
FE
E7
41
20
10
2E
48
00
21
81
60
2E
49
40
01
08
61
01
22
8A
21
81
60
0E
49
08
61
2D
48
03
21
01
61
81
60
2C
49
20
20
88
61
70
47
2C
48
2A
49
01
60
0D
2B
49
81
61
01
21
C1
60
C3
21
81
60
01
69
C9
07
FC
D0
24
49
20
20
88
61
21
48
00
21
81
60
30
21
01
61
03
21
81
60
70
47
0A
1D
49
8A
68
D2
07
04
D0
4A
68
D2
......@@ -3082,13 +2860,59 @@ D1
60
70
47
17
4A
53
68
DB
07
FC
D1
10
60
08
60
70
47
13
4B
15
48
59
68
42
68
89
07
C9
17
92
07
D2
17
49
1C
52
1C
11
42
F5
D1
59
68
89
07
01
D5
18
68
03
E0
41
68
89
07
FC
01
D5
00
68
......@@ -3096,24 +2920,48 @@ C0
B2
70
47
04
0A
48
04
22
41
21
82
68
C9
D2
07
04
D0
42
68
D2
07
FC
D1
02
01
60
FE
E7
03
4A
53
68
DB
07
FC
D1
11
60
01
60
F7
E7
00
60
00
40
6A
18
00
00
00
E0
00
......@@ -3122,6 +2970,18 @@ E0
10
01
40
8E
0C
01
00
00
20
00
40
24
F4
00
00
01
68
08
......@@ -3652,7 +3512,7 @@ FF
46
FF
F7
7A
C0
F9
00
28
......@@ -3982,8 +3842,8 @@ B5
E0
FF
F7
15
FE
D1
FD
40
1C
08
......@@ -4002,8 +3862,8 @@ D1
20
FF
F7
0B
FE
C7
FD
10
BD
00
......@@ -4424,8 +4284,8 @@ F8
46
FF
F7
43
FD
FF
FC
00
28
02
......@@ -4442,8 +4302,8 @@ BD
BD
00
00
7B
FA
F3
F9
FF
FF
01
......@@ -4560,7 +4420,7 @@ B0
B5
FF
F7
E2
9E
FC
60
BC
......@@ -4606,10 +4466,10 @@ C0
46
20
46
FE
F7
C0
FF
F7
06
F8
10
BD
00
......@@ -4758,7 +4618,7 @@ BD
00
00
00
B8
2C
12
00
00
......@@ -4774,7 +4634,7 @@ B8
01
00
00
D8
4C
12
00
00
......@@ -4815,9 +4675,9 @@ D8
00
00
00
E1
F5
05
1C
4E
0E
00
00
00
......
......@@ -2,15 +2,15 @@
04
00
30
25
41
1A
00
00
2D
49
1A
00
00
2F
4B
1A
00
00
......@@ -42,7 +42,7 @@
00
00
00
31
4D
1A
00
00
......@@ -54,139 +54,139 @@
00
00
00
33
4F
1A
00
00
35
51
1A
00
00
37
1A
51
14
00
00
37
1A
8D
14
00
00
37
1A
97
16
00
00
37
1A
D3
16
00
00
B7
D3
17
00
00
F3
17
0F
18
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
2F
18
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
37
53
1A
00
00
......@@ -250,12 +250,12 @@ AB
43
18
47
B4
1F
98
21
00
00
D4
1F
B8
21
00
00
10
......@@ -322,7 +322,7 @@ B5
D1
01
F0
0D
51
FD
10
BD
......@@ -332,7 +332,7 @@ BD
D1
01
F0
3E
82
FD
10
BD
......@@ -350,22 +350,22 @@ B5
BD
01
F0
85
FE
65
FF
11
46
FF
F7
F7
FF
01
00
F0
CA
F8
F4
FE
01
F0
9D
FE
7D
FF
03
B4
FF
......@@ -376,7 +376,7 @@ FF
BC
01
F0
83
91
FC
00
20
......@@ -396,43 +396,43 @@ F8
B5
00
26
34
35
46
F4
A0
01
F0
47
FD
27
FE
FC
A0
01
F0
44
FD
24
FE
4F
FE
48
45
20
B8
21
81
60
01
20
FD
4A
49
20
21
11
24
0C
60
FD
4D
68
4F
78
61
2E
20
01
F0
76
9C
FC
BF
F3
......@@ -450,57 +450,55 @@ F3
28
FA
DB
F4
49
41
20
B8
88
60
A8
B8
68
00
28
00
D1
64
6D
1C
F3
49
00
20
88
B8
60
F3
48
20
21
01
04
60
F2
F3
A0
01
F0
21
FD
02
FE
01
21
ED
4D
EE
48
89
03
29
01
60
EB
48
4C
51
22
82
20
A0
60
2E
22
02
20
20
60
02
20
60
02
20
60
BF
F3
......@@ -522,61 +520,59 @@ F3
28
FA
DB
E4
4F
B8
BA
68
00
28
2A
00
D1
A4
AD
1C
E3
48
00
20
B8
27
87
60
01
20
E1
49
80
21
E2
48
89
03
08
01
60
E8
A0
01
F0
FE
FC
EB
48
DF
FD
EC
49
10
21
01
20
08
61
42
4A
68
0A
02
43
42
60
D9
4A
11
60
D7
DA
4A
10
60
4B
23
93
22
A2
60
43
4A
68
8B
43
82
43
4A
60
BF
F3
......@@ -586,11 +582,11 @@ BF
F3
6F
8F
43
4A
68
0B
43
02
43
4A
60
BF
F3
......@@ -601,222 +597,102 @@ F3
6F
8F
02
20
21
BF
F3
6F
8F
40
49
1C
78
28
29
FA
DB
BB
68
CF
4A
91
68
00
2B
29
00
D1
24
2D
1D
53
61
68
9B
89
07
00
D4
08
34
C8
4F
3A
35
21
68
6B
46
1A
19
70
C8
48
00
22
82
60
C7
48
0D
46
01
97
60
D4
A0
01
F0
CA
FC
C2
C9
49
38
14
08
60
63
20
B8
60
CF
4B
58
68
A8
43
58
60
BF
F3
6F
8F
BF
F3
6F
8F
58
68
28
43
58
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
BF
F3
6F
8F
40
1C
78
28
FA
DB
58
68
A8
43
58
60
BF
F3
6F
8F
BF
F3
6F
8F
58
68
28
43
58
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
BF
F3
6F
8F
40
1C
78
28
FA
DB
AC
4F
B8
68
00
28
00
D1
10
34
A8
49
48
61
68
80
89
07
05
04
D5
08
21
68
6A
46
10
19
70
48
61
68
80
89
07
F9
FA
D4
00
20
B8
97
60
01
20
A4
4A
80
21
C3
4B
89
03
10
19
60
41
20
88
21
A1
60
5D
CE
49
48
61
58
4B
68
A8
83
43
58
4B
60
00
20
78
57
61
00
2C
2D
04
D0
21
29
46
B2
CA
A0
01
F0
D3
FB
01
63
FC
00
26
30
46
......@@ -832,161 +708,219 @@ B5
46
00
90
B8
D4
48
87
42
02
D1
05
06
46
B7
4E
D3
4D
03
E0
B6
4D
AF
D2
4E
B7
42
35
1F
D1
CF
4D
D1
B3
4E
B5
A0
01
F0
64
FC
22
20
28
82
FD
21
21
31
61
29
30
69
22
29
21
28
00
D0
01
24
22
20
30
29
61
30
28
69
22
21
28
00
D0
A4
1C
B4
D0
A0
01
F0
55
FC
89
49
00
20
C8
74
FD
C6
48
02
22
87
42
0E
D1
A6
48
01
21
C1
60
08
00
21
01
61
08
01
60
41
60
A2
48
02
60
11
E0
CB
48
01
F0
63
FD
01
20
A8
F8
BD
BE
48
87
42
09
D1
9D
48
00
21
C1
60
02
20
B0
01
23
03
61
01
60
41
60
99
49
08
20
28
08
60
42
05
20
28
B0
60
02
20
A8
60
70
68
C1
07
68
68
40
80
07
01
43
00
D5
24
1D
00
41
20
71
68
89
07
FC
D5
31
68
00
28
C9
B2
0D
D0
01
28
10
D0
30
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
BF
F3
6F
8F
40
1C
02
78
28
F3
FA
DB
70
68
00
28
11
AB
48
87
42
09
D1
0D
E0
A7
8B
48
01
F0
2F
FC
01
20
F8
BD
41
68
00
29
00
D0
D1
08
34
01
20
E5
E7
42
29
EF
40
68
00
28
0C
D0
10
34
ED
E7
0A
E0
A5
48
87
42
07
D1
85
48
41
68
00
29
00
D1
08
34
00
68
00
28
F2
D1
F0
68
00
28
......@@ -994,67 +928,37 @@ E7
D0
20
34
9F
A0
01
F0
1D
FC
41
20
28
60
42
20
28
60
43
20
28
60
68
E8
68
40
07
00
D4
28
00
D0
40
34
00
20
71
68
89
07
FC
D5
31
68
80
07
00
D4
80
34
28
C9
68
C0
B2
23
D0
40
1C
02
41
28
F5
DB
68
68
40
07
01
D4
D0
FF
34
01
34
E8
68
40
68
80
07
02
D5
......@@ -1064,217 +968,169 @@ FF
34
02
34
11
20
A8
60
E8
68
40
07
02
D4
A0
A0
01
20
80
02
24
18
7A
F0
0A
FD
91
48
83
14
87
42
0E
09
D1
57
48
01
21
C1
60
72
49
00
21
01
20
C8
60
08
61
01
08
60
41
48
60
52
6E
49
0B
02
20
08
60
11
0B
E0
41
29
00
D0
80
34
01
20
CF
E7
71
8C
48
87
42
09
08
D1
4E
6B
48
00
21
C1
60
01
22
02
61
01
60
41
60
49
49
50
03
67
48
08
21
01
60
BF
F3
4F
8F
BF
F3
6F
8F
01
20
B0
60
02
20
A8
60
70
68
C0
07
02
D1
68
68
40
80
07
02
D5
01
20
C0
80
02
24
18
65
48
87
42
05
D1
42
20
30
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
BF
F3
6F
8F
40
1C
78
28
FA
DB
5A
48
00
01
68
00
28
08
D1
E4
29
02
D0
01
21
C9
02
64
18
06
E0
61
48
87
42
03
D1
3E
57
48
40
68
00
28
F6
02
D0
01
20
A8
60
02
20
B0
60
C1
02
3A
48
01
60
49
00
01
60
37
48
00
21
C1
60
01
61
6B
A0
01
F0
AB
FB
41
20
28
60
42
20
28
60
03
24
18
68
68
40
80
07
02
D5
D4
01
20
40
03
24
18
70
68
80
07
FC
D5
70
28
68
00
07
C0
B2
42
28
02
D5
D0
01
20
80
03
24
18
70
68
00
07
FC
D5
F0
68
00
80
07
02
D5
......@@ -1284,29 +1140,43 @@ C0
03
24
18
22
20
B0
60
F0
68
00
07
28
02
D4
D0
01
20
00
04
24
18
43
E8
68
00
28
02
D0
01
20
40
04
24
18
74
A0
01
F0
A8
FC
60
4B
9F
42
0A
D1
20
41
48
00
21
......@@ -1320,25 +1190,25 @@ C1
60
41
60
1C
3C
48
51
03
04
21
01
60
0C
0B
E0
3D
5A
48
87
42
09
08
D1
19
3A
48
01
21
C1
22
C2
60
00
21
......@@ -1348,36 +1218,166 @@ C1
60
41
60
15
49
B8
14
08
35
48
02
60
01
20
B0
60
0A
20
A8
60
43
20
30
60
BF
F3
4F
6F
8F
BF
F3
6F
8F
70
02
20
BF
F3
6F
8F
40
1C
78
28
FA
DB
01
21
89
04
4A
00
9F
42
09
D1
2B
48
03
68
00
2B
00
D0
64
18
40
68
00
28
0C
D1
A4
18
0A
E0
45
48
87
42
07
D1
24
48
43
68
00
2B
00
D0
64
18
00
68
00
28
F2
D0
F0
68
00
28
02
D5
D0
01
20
00
05
24
18
E8
68
00
28
02
D0
01
20
40
04
93
E0
93
E0
05
24
18
68
68
80
07
02
D4
01
20
80
05
24
18
28
68
C0
B2
43
28
02
D0
01
20
C0
05
24
18
68
68
80
07
02
D5
01
20
00
06
24
18
45
A0
01
F0
42
FC
00
21
8F
E0
55
41
52
......@@ -1498,39 +1498,10 @@ E0
10
01
40
0A
2D
20
55
41
52
4E
4F
54
20
32
20
52
58
20
6F
76
65
72
66
6C
6F
77
20
49
52
51
00
00
00
45
52
52
4F
52
20
3A
20
......@@ -1560,6 +1531,23 @@ E0
65
64
20
2D
20
6E
49
52
51
20
6E
6F
74
20
77
69
72
65
64
20
28
30
78
......@@ -1591,14 +1579,9 @@ E0
52
58
20
6F
76
65
72
66
6C
6F
77
49
52
51
20
74
65
......@@ -1606,32 +1589,25 @@ E0
74
00
00
00
2D
20
54
58
20
77
69
74
68
6F
75
74
72
71
20
6F
76
65
72
66
6E
61
62
6C
6F
77
00
00
65
00
68
20
08
22
00
00
2D
......@@ -1639,19 +1615,19 @@ E0
54
58
20
77
69
74
68
20
6F
76
65
72
66
6C
6F
77
71
20
64
69
73
61
62
6C
65
00
00
00
00
2D
......@@ -1659,93 +1635,207 @@ E0
52
58
20
6F
76
69
72
71
20
65
6E
61
62
6C
65
00
2D
20
52
58
20
69
72
66
71
20
64
69
73
61
62
6C
6F
77
65
00
00
00
00
FD
4A
D1
60
11
61
11
60
51
60
01
23
B3
60
02
27
AF
60
70
68
C0
07
02
D1
68
68
80
07
02
D5
01
20
40
06
24
18
01
44
20
80
04
9F
42
05
D1
30
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
BF
F3
6F
8F
40
1C
78
28
FA
49
49
DB
10
68
00
29
08
D1
28
02
D0
01
20
80
06
24
18
06
E0
F8
49
8F
42
03
D1
F5
49
09
50
68
00
29
F6
28
02
D0
F3
48
01
20
C0
06
24
18
68
68
80
07
02
D4
01
20
00
21
C1
60
07
24
18
28
68
C0
B2
44
28
02
D0
01
61
20
40
07
24
18
68
68
80
07
02
D5
01
60
41
20
80
07
24
18
F0
68
00
28
02
D1
E8
68
00
28
02
D0
01
20
C0
07
04
43
B1
60
A9
60
B1
60
70
68
68
80
07
03
D5
30
28
68
68
70
68
80
07
FB
D4
01
21
ED
D7
48
09
03
60
07
60
04
21
01
60
49
00
08
21
01
60
00
......@@ -1754,12 +1844,12 @@ ED
D0
21
46
EA
48
D3
A0
01
F0
FB
F9
20
FA
01
20
00
......@@ -1772,154 +1862,122 @@ F8
BD
F8
B5
07
46
00
20
04
01
46
00
90
E5
27
D9
4C
DA
48
87
3D
46
A1
42
02
D1
06
26
46
04
46
07
E0
4D
03
E0
DF
4E
B7
06
46
B1
42
1F
D1
E0
4D
E1
04
D0
D6
48
01
F0
3E
FB
01
20
F8
BD
D4
A0
01
F0
8A
FA
21
39
FB
20
20
30
61
31
69
21
20
29
00
D0
01
24
28
25
20
61
28
20
69
21
20
28
00
D0
A4
AD
1C
E0
D2
A0
01
F0
7C
FA
D7
4B
9F
42
0F
D1
D2
48
2B
FB
B0
68
01
21
C1
08
43
B0
60
B0
68
C0
07
00
21
01
61
01
60
41
60
DD
49
D1
2D
1D
A0
68
02
20
21
08
43
A0
60
11
E0
DC
48
01
F0
6B
FA
01
20
F8
BD
CB
48
87
42
09
D1
C8
48
A0
68
80
07
00
21
C1
60
01
22
02
61
01
60
41
60
D4
49
08
20
08
60
05
20
B0
60
02
20
A8
60
35
70
68
69
68
C0
07
89
02
D1
60
68
80
07
08
43
00
D5
24
1D
10
35
41
20
30
......@@ -1944,173 +2002,151 @@ F3
28
FA
DB
BC
48
87
42
09
D1
B6
48
01
68
00
29
00
D1
08
34
40
70
68
00
28
0C
D0
10
34
0A
E0
B2
48
87
42
C0
07
02
D1
B0
48
41
60
68
80
07
00
29
00
D1
08
34
00
D4
20
35
20
68
00
28
F2
D1
F0
61
68
C0
B2
89
07
00
D5
40
35
41
28
00
D0
20
34
E8
80
35
BF
A0
01
F0
F5
FA
B0
68
00
28
00
D0
40
34
68
68
80
07
08
40
00
D4
80
34
28
B0
60
B0
68
C0
B2
41
28
07
01
D0
FF
34
35
01
34
35
70
68
C0
07
02
D1
60
68
80
07
02
D5
FF
34
35
FF
34
35
02
34
B1
A0
01
F0
12
FA
A2
48
87
35
42
09
D1
9D
49
00
20
C8
60
08
61
08
60
48
30
60
A9
49
BF
F3
6F
8F
BF
F3
6F
8F
02
20
08
60
0B
E0
99
48
87
42
08
D1
96
49
00
20
C8
60
08
61
08
60
48
BF
F3
6F
8F
40
1C
78
28
FA
DB
60
A2
49
08
68
80
07
02
D5
01
20
08
60
80
02
2D
18
B1
68
01
20
B0
01
43
B1
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
A8
60
BF
F3
6F
8F
40
1C
78
28
FA
DB
70
68
C0
07
02
D1
68
60
68
80
07
......@@ -2118,11 +2154,35 @@ D1
D5
01
20
C0
02
2D
18
A4
A0
01
F0
B7
FA
A0
68
02
21
88
43
A0
60
A0
68
80
07
01
D5
C8
02
24
2D
18
42
43
20
30
60
......@@ -2146,61 +2206,57 @@ F3
28
FA
DB
85
48
01
70
68
00
29
02
D0
01
21
C9
C0
07
02
64
18
82
48
40
D1
60
68
00
28
80
07
02
D0
D5
01
20
00
40
03
24
2D
18
A0
68
68
80
07
08
43
A0
60
BF
F3
6F
8F
BF
F3
6F
8F
02
D4
01
20
BF
F3
6F
8F
40
03
24
18
1C
78
28
FA
DB
70
68
C0
B2
42
28
07
02
D0
01
20
80
03
24
18
68
D1
60
68
80
07
......@@ -2208,516 +2264,503 @@ D0
D5
01
20
C0
80
03
24
2D
18
F0
68
00
28
02
D0
01
20
00
04
24
18
E8
B0
60
A0
60
60
68
00
28
02
D0
01
80
07
03
D5
20
40
68
60
68
80
07
FB
D4
00
2D
04
24
18
85
D0
29
46
86
A0
01
F0
B0
3F
F9
71
4B
9F
42
0A
D1
6C
01
27
38
46
F8
BD
F7
B5
92
B0
05
46
00
20
0E
90
0B
90
89
48
0E
46
1E
C8
05
AF
1E
C7
00
21
C1
68
09
90
87
A0
01
F0
60
FA
2D
20
01
22
02
61
F0
E1
F8
20
20
01
F0
DE
F8
60
41
60
77
49
08
20
08
60
0B
61
4C
8D
42
01
D1
0D
46
03
E0
67
48
87
A5
42
08
16
D1
65
48
01
22
C2
60
00
21
01
25
46
0C
46
2E
61
28
69
B0
42
01
60
41
60
70
48
02
60
D0
01
20
B0
60
0A
20
A8
60
43
0B
90
26
61
20
30
60
BF
F3
6F
8F
BF
F3
6F
8F
69
B0
42
02
20
BF
F3
6F
8F
40
D0
0B
98
80
1C
78
28
FA
DB
0B
90
A8
68
01
21
18
46
89
04
4B
00
87
42
09
D1
55
48
02
68
00
2A
00
D0
64
18
40
08
43
A8
60
A8
68
00
28
0C
D1
E4
18
0A
E0
51
48
87
42
C0
07
D1
4F
48
42
68
00
2A
00
D0
64
18
00
68
00
28
F2
06
D0
08
E0
76
A0
01
F0
68
00
28
02
D0
38
FA
01
20
15
B0
F0
BD
0B
98
00
05
24
18
E8
1D
0B
90
A0
68
00
28
02
D0
01
20
40
05
24
18
68
21
08
43
A0
60
A0
68
80
07
02
D4
01
0B
98
08
30
0B
90
00
20
80
05
24
18
28
68
C0
B2
43
28
02
D0
01
20
C0
05
24
18
68
68
80
07
02
D5
01
20
00
06
24
18
55
A0
46
0D
90
05
A8
01
F0
49
F9
3A
4A
00
21
D1
60
11
61
11
60
51
60
01
23
B3
60
02
27
AF
60
70
68
C0
38
FA
07
02
D1
46
68
68
80
C0
07
02
D5
01
20
40
09
D1
0D
98
B8
42
06
24
18
44
20
30
D2
0D
99
05
A8
40
5C
28
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
BF
F3
6F
8F
0D
98
40
1C
78
28
FA
DB
10
68
00
28
02
D0
01
20
80
06
24
18
50
68
00
28
02
D0
01
20
C0
06
24
18
68
0D
90
60
68
80
07
02
D4
01
0A
D5
20
00
07
24
18
28
68
C0
C1
B2
44
68
46
81
55
14
98
00
28
02
D0
08
46
01
20
40
07
24
18
68
F0
8B
F8
76
1C
BE
42
E2
D3
00
27
68
46
87
55
80
07
02
D5
19
47
70
87
70
C7
70
69
46
05
A8
01
20
80
07
24
18
F0
68
00
28
02
D1
E8
68
31
FA
00
28
02
D0
01
20
C0
07
04
43
B1
0B
98
10
30
0B
90
AF
60
A9
A7
60
68
68
80
07
03
D5
0B
98
00
28
68
68
68
80
07
FB
D4
14
48
03
60
08
21
01
60
07
60
01
60
00
2C
06
D0
21
01
46
2C
5F
A0
01
F0
47
B7
F8
01
20
00
0E
90
F8
15
B0
F0
BD
00
0E
98
F8
15
B0
F0
BD
F8
FF
B5
01
46
93
B0
00
27
0C
4C
08
48
3D
23
0E
93
0B
93
44
4B
1C
46
A1
3C
34
F0
CC
05
94
08
97
07
96
06
95
DB
6C
1E
4C
09
93
1E
4B
A0
42
02
D1
26
25
46
04
1C
46
60
02
E0
06
98
42
15
D1
1D
46
B1
29
61
28
69
88
42
5D
D0
2D
48
01
F0
D7
F8
D0
01
20
F8
BD
00
00
0B
90
22
61
20
69
90
42
02
D0
0B
98
80
1C
0B
90
A8
68
01
21
08
43
A8
60
A8
68
C0
07
01
D0
A2
E0
98
E0
9D
E0
00
00
00
30
00
50
00
40
80
E1
00
E0
F8
05
45
52
52
4F
52
20
3A
20
75
61
72
74
20
69
6E
74
65
72
72
75
70
74
20
65
6E
61
62
6C
65
20
66
61
69
6C
65
64
20
28
30
78
25
78
29
0A
00
00
00
00
00
40
00
40
00
50
00
40
C4
21
00
00
55
41
52
54
20
54
58
20
26
20
52
58
20
49
52
51
65
6E
61
62
6C
65
20
74
65
......@@ -2726,14 +2769,27 @@ F8
00
00
00
00
2D
20
62
6F
74
68
20
54
58
20
69
61
6E
64
20
52
58
20
61
72
71
65
20
65
6E
......@@ -2741,13 +2797,9 @@ F8
62
6C
65
64
00
00
E1
00
E0
24
20
00
00
2D
......@@ -2755,10 +2807,6 @@ E0
54
58
20
69
72
71
20
64
69
73
......@@ -2766,35 +2814,15 @@ E0
62
6C
65
64
00
00
00
00
2D
20
52
58
20
69
72
71
20
65
6E
61
62
6C
65
00
2D
20
52
58
20
69
72
71
20
64
69
73
......@@ -2802,7 +2830,7 @@ E0
62
6C
65
00
64
00
00
00
......@@ -2819,16 +2847,6 @@ E0
72
74
20
69
6E
74
65
72
72
75
70
74
20
65
6E
61
......@@ -2852,62 +2870,140 @@ E0
0A
00
00
94
20
00
00
E0
1F
00
53
69
6D
70
6C
65
20
74
65
73
74
00
FE
A0
01
F0
79
F8
45
52
52
4F
52
3A
20
49
6E
70
75
74
20
30
70
61
31
72
61
6D
65
74
65
72
20
69
6E
76
61
6C
69
64
20
29
00
D0
01
25
69
6E
20
66
75
6E
63
74
69
6F
6E
20
27
73
69
6D
70
6C
65
5F
75
61
72
74
5F
74
65
73
74
27
2E
00
00
45
52
52
4F
52
20
3A
20
73
69
6D
70
6C
65
20
74
65
73
74
20
66
61
69
6C
65
64
20
28
30
78
25
78
29
0A
00
D0
AD
1C
FC
A0
00
F8
48
01
F0
6B
F8
B0
68
19
F9
01
21
08
43
B0
60
20
17
B0
68
C0
07
F0
BD
0B
98
00
D1
2D
1D
0B
90
A0
68
02
......@@ -2920,1046 +3016,974 @@ A0
68
80
07
00
02
D4
0B
98
08
35
70
30
0B
90
00
20
06
46
0D
90
05
A8
01
F0
19
F9
07
46
68
68
C0
07
02
09
D1
0D
98
B8
42
06
D2
0D
99
05
A8
40
5C
28
60
68
80
07
00
D5
10
35
41
20
30
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
BF
F3
6F
8F
0D
98
40
1C
78
28
FA
DB
70
68
C0
07
02
D1
0D
90
60
68
80
07
00
D4
20
35
09
D5
20
68
61
68
69
46
C0
B2
89
07
00
D5
40
35
41
28
88
55
16
99
00
29
01
D0
80
35
E9
A0
01
00
F0
35
F8
B0
68
40
08
40
6D
FF
76
1C
BE
42
E3
D3
00
B0
60
B0
27
68
C0
07
01
D0
FF
35
01
35
46
87
55
80
19
47
70
68
C0
07
87
70
C7
70
69
46
05
A8
01
F0
13
F9
00
28
02
D1
D0
0B
98
10
30
0B
90
AF
60
68
80
A7
60
0B
98
00
28
07
02
D5
FF
35
D0
01
46
D3
A0
00
F0
99
FF
35
02
35
42
01
20
30
60
BF
F3
6F
8F
BF
F3
6F
8F
02
0E
90
17
B0
F0
BD
0E
98
17
B0
F0
BD
F0
B5
91
B0
00
20
BF
F3
6F
8F
40
1C
78
28
FA
DB
60
68
80
07
02
04
46
0F
90
D5
48
01
20
80
02
2D
18
B1
68
AE
01
20
46
14
31
2E
C9
2E
C6
41
6A
05
91
01
43
B1
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
BF
F3
6F
8F
40
1C
78
46
28
FA
DB
70
68
C0
07
02
D1
60
68
31
2E
C9
08
AE
2E
C6
80
07
02
D5
01
20
C0
02
2D
18
6B
0C
90
CE
A0
00
01
F0
F7
AF
F8
00
26
75
00
01
A8
08
AF
41
5F
7A
5F
00
23
CE
48
FF
A0
68
02
21
88
F7
C1
FE
00
28
01
D0
01
20
04
43
A0
60
A0
68
80
07
08
A8
42
5F
01
D5
AF
79
5F
00
23
C8
48
52
1C
FF
F7
B4
FE
00
28
01
D0
02
2D
18
20
04
43
08
A8
42
5F
79
5F
00
23
C2
48
52
1E
FF
F7
A8
FE
00
28
01
D0
04
20
30
60
BF
F3
6F
8F
BF
F3
6F
8F
02
04
43
00
2C
08
D0
32
46
21
46
BD
A0
00
F0
4D
FF
01
20
BF
F3
6F
8F
40
00
24
0F
90
03
E0
79
5F
C6
A0
00
F0
45
FF
76
1C
78
28
FA
0A
2E
C7
DB
70
68
C0
07
02
D1
B5
49
00
22
8A
60
C8
48
82
60
68
80
07
53
1E
0B
61
0E
69
1D
0B
AE
42
00
D0
01
24
C4
4E
0E
61
0E
69
C4
4F
BE
42
01
D0
02
D5
26
34
43
0A
61
09
69
00
29
01
20
40
D0
04
21
0C
43
03
2D
18
A0
68
61
01
69
A9
42
01
D0
08
21
0C
43
BC
49
01
61
01
69
BC
4B
99
42
01
D0
10
21
0C
43
A0
60
BF
F3
6F
8F
BF
F3
6F
8F
02
20
BF
F3
6F
8F
40
1C
78
61
00
69
00
28
FA
DB
70
68
C0
07
02
D1
60
68
80
07
02
D5
01
D0
20
80
03
2D
18
00
20
B0
60
A0
60
60
68
80
07
03
D5
20
68
60
68
80
07
FB
D4
00
2D
04
43
00
2C
07
D0
29
21
46
B0
B6
A0
00
F0
0D
0E
FF
01
27
38
46
F8
20
0F
90
11
B0
F0
BD
F7
B5
92
0F
98
11
B0
05
F0
BD
F8
B5
06
46
00
20
0E
90
0B
90
B3
48
0E
25
2C
46
1E
C8
05
AF
1E
C7
B9
A0
01
F0
34
F8
30
68
00
28
00
D0
01
24
70
68
09
90
B1
A0
00
F0
A0
FF
2D
20
28
00
F0
DB
FE
20
20
D0
A4
1C
B0
68
00
28
00
D0
24
1D
F0
D8
FE
AF
68
00
28
00
D0
08
34
30
69
00
28
00
D0
10
34
9E
49
B0
4C
8D
8A
4A
B2
48
8E
42
01
D1
0D
0A
46
03
02
E0
A5
86
42
16
00
D1
25
46
0C
02
46
2E
61
28
69
B0
42
1F
27
FF
01
D1
19
08
6D
04
28
00
D0
01
20
0B
90
26
61
20
69
B0
42
02
34
48
6D
00
28
00
D0
40
34
88
6D
00
28
00
D0
0B
98
80
1C
0B
90
A8
68
34
C8
6D
00
28
01
21
08
43
A8
60
A8
68
C0
07
06
D0
08
E0
A2
A0
00
F0
78
FF
34
01
20
15
B0
F0
BD
0B
98
00
1D
0B
90
A0
68
02
21
34
08
43
A0
60
A0
68
80
07
6E
21
28
02
D4
0B
98
08
30
0B
90
00
20
06
46
0D
90
05
A8
00
F0
78
D0
FF
07
46
68
68
C0
07
09
D1
0D
98
34
FF
34
02
34
48
6E
B8
42
06
D2
0D
99
05
A8
40
5C
28
60
0D
98
40
1C
0D
90
60
68
02
D0
01
20
80
07
0A
D5
02
24
18
88
6E
1B
28
02
D0
01
20
68
C1
B2
68
46
81
55
14
98
C0
02
24
18
C8
6E
00
28
02
D0
08
46
01
20
00
03
24
18
08
6F
0D
28
02
D0
01
20
40
03
24
18
48
6F
F0
85
FE
76
1C
BE
42
E2
D3
00
27
68
46
87
55
28
02
D0
01
20
80
19
47
70
87
70
C7
70
69
46
03
24
18
88
6F
05
A8
00
F0
71
FF
00
28
02
D0
0B
98
10
30
0B
90
AF
60
A7
60
0B
98
00
28
07
D0
01
46
8B
A0
20
C0
03
24
18
C8
6F
B1
28
02
D0
01
20
00
04
24
18
00
F0
85
FE
01
20
0E
90
15
B0
F0
BD
0E
98
15
B0
F0
BD
FF
B5
93
B0
83
00
23
0E
93
0B
93
6E
4B
1C
46
3C
34
F0
CC
05
94
08
97
07
96
06
95
9B
18
DB
6C
19
1E
6D
4C
09
93
F6
43
1E
65
5E
6D
4B
A0
42
02
D1
25
46
F6
43
5E
65
80
1C
46
02
E0
98
42
15
D1
1D
46
29
61
0C
28
F3
D3
08
6D
04
28
69
88
42
01
D0
01
20
0B
90
22
61
20
69
90
42
02
D0
0B
98
80
1C
0B
90
A8
68
01
21
08
04
43
A8
60
A8
68
C0
07
06
D0
08
E0
78
48
6D
00
F0
F3
FE
28
01
D0
40
20
17
B0
F0
BD
0B
98
00
1D
0B
90
A0
68
02
21
08
04
43
A0
60
A0
68
88
6D
00
28
01
D0
80
07
20
04
43
C8
6D
00
28
02
D4
0B
98
08
D0
FF
20
01
30
0B
90
00
04
43
08
6E
21
28
02
D0
01
20
06
46
0D
90
05
A8
00
F0
F3
FE
07
46
68
68
C0
07
09
D1
0D
98
B8
42
06
D2
0D
99
05
A8
40
5C
02
04
43
48
6E
B8
28
60
0D
98
40
1C
0D
90
60
68
02
D0
01
20
80
07
09
D5
02
04
43
88
6E
1B
28
02
D0
01
20
68
69
46
C0
B2
88
55
16
99
02
04
43
C8
6E
00
29
01
28
02
D0
01
20
00
03
04
43
08
6F
0D
28
02
D0
01
20
40
03
04
43
48
6F
F0
28
02
D0
01
FE
76
1C
BE
42
E3
D3
00
27
68
46
87
55
20
80
19
47
70
87
70
C7
70
69
46
03
04
43
88
6F
05
A8
00
F0
ED
FE
00
28
02
D0
0B
98
10
30
0B
90
AF
60
A7
60
0B
98
00
01
20
C0
03
04
43
C8
6F
B1
28
07
02
D0
01
46
53
A0
00
F0
01
FE
01
20
0E
90
17
B0
F0
BD
0E
98
17
B0
F0
BD
F0
B5
91
B0
00
20
04
46
0F
90
04
43
00
2C
48
01
AE
01
46
14
31
2E
C9
2E
C6
41
6A
05
91
01
04
D0
21
46
28
31
2E
C9
08
AE
2E
C6
80
6B
0C
90
4D
63
A0
00
F0
89
46
FE
00
26
75
00
01
A8
08
AF
41
5F
7A
5F
00
23
23
48
FF
F7
5B
FF
97
E0
55
41
52
54
20
65
6E
61
62
6C
65
20
74
65
73
74
00
00
00
00
2D
20
62
6F
74
68
20
54
58
25
28
46
F8
BD
6A
49
0A
20
88
61
6E
64
70
47
69
48
01
6A
20
52
58
29
02
D1
40
6A
B8
28
01
D0
01
20
61
72
65
70
47
00
20
65
6E
61
62
6C
65
70
47
10
B5
64
48
01
6A
21
29
02
D1
41
6A
B8
29
05
D0
01
6A
61
A0
00
F0
28
FE
01
20
10
BD
00
20
10
BD
10
B5
69
48
01
6A
21
29
02
D1
41
6A
B8
29
05
D0
01
6A
66
A0
00
00
2D
F0
18
FE
01
20
54
58
10
BD
00
20
64
69
73
61
62
6C
65
64
10
BD
70
B5
00
F0
A3
FD
6D
48
00
F0
42
FF
5E
48
01
6A
21
29
02
D1
41
6A
B8
29
02
D0
01
6A
5B
A0
09
E0
4C
49
00
2D
20
52
58
20
64
69
73
61
62
6C
65
64
0A
6A
21
2A
02
D1
4A
6A
B8
2A
04
D0
09
6A
49
A0
00
F0
F8
FD
C9
E0
C1
E0
78
21
00
00
45
......@@ -3970,17 +3994,15 @@ E0
20
3A
20
75
62
61
72
74
75
64
20
74
65
6E
61
62
6C
65
73
74
20
66
61
......@@ -3998,93 +4020,131 @@ E0
0A
00
00
C4
1E
00
00
53
69
6D
70
6C
94
20
00
00
44
61
74
61
20
74
72
61
6E
73
66
65
72
20
74
65
73
74
0A
00
00
40
00
40
00
50
00
40
45
52
52
4F
52
20
3A
20
49
6E
70
42
61
75
74
64
20
70
61
72
61
6D
74
65
20
74
65
72
73
74
20
69
6E
76
66
61
6C
69
6C
65
64
20
69
6E
28
30
78
25
78
29
20
66
75
6E
63
61
74
20
6C
6F
6F
70
20
25
64
0A
00
00
00
00
2D
20
62
61
75
64
64
69
76
20
3D
20
25
64
20
64
6F
6E
20
27
73
69
6D
70
6C
65
5F
75
61
72
74
5F
74
65
73
74
27
2E
0A
00
00
00
00
00
50
00
40
C3
AA
55
FF
C3
AA
05
00
99
66
FF
AA
99
66
0F
00
45
52
......@@ -4094,17 +4154,19 @@ C4
20
3A
20
73
69
6D
70
6C
65
42
61
75
64
20
72
61
74
65
73
74
20
72
2F
77
20
66
61
......@@ -4122,10 +4184,36 @@ C4
0A
00
00
94
1F
00
00
2D
20
63
68
65
63
6B
20
69
6E
69
74
69
61
6C
20
76
61
6C
75
65
73
00
00
00
60
00
40
45
52
52
......@@ -4134,15 +4222,19 @@ C4
20
3A
20
62
69
6E
69
74
69
61
75
64
6C
20
74
76
61
6C
75
65
73
74
20
66
61
......@@ -4162,943 +4254,951 @@ C4
00
00
00
00
10
01
40
C0
1F
01
40
C0
5F
00
40
43
4D
53
44
61
74
61
4B
5F
55
41
52
54
31
5F
42
41
53
45
20
74
72
61
6E
73
66
65
72
2B
20
30
78
46
45
30
20
3D
20
25
30
32
78
2C
20
74
65
73
78
70
65
63
74
65
64
20
30
78
32
31
0A
00
C0
4F
00
28
01
D0
01
20
04
40
43
08
A8
42
5F
01
AF
79
4D
53
44
4B
5F
00
23
FC
48
55
41
52
1C
FF
F7
B5
FE
00
28
01
D0
02
20
04
43
08
A8
42
5F
79
54
30
5F
42
41
53
45
20
2B
20
30
78
46
45
30
20
3D
20
25
30
32
78
2C
20
65
78
70
65
63
74
65
64
20
30
78
32
31
0A
00
23
F6
48
52
1E
FF
F7
A9
FE
00
28
01
D0
04
20
04
43
21
00
2C
08
00
E8
49
0A
6A
20
2A
02
D1
49
6A
B8
29
06
D0
32
46
21
46
F1
E6
A0
00
F0
1C
FD
01
20
00
24
0F
90
03
E0
79
5F
FA
A0
5E
FE
00
F0
14
07
FD
76
1C
0A
2E
00
DA
2D
E7
E8
20
70
BD
F1
49
00
22
8A
08
60
FB
48
82
60
53
1E
0B
C8
60
08
61
0E
69
1D
0B
AE
42
00
D0
01
24
F7
4E
0E
88
60
48
61
0E
69
F7
4F
BE
42
01
D0
02
26
34
43
EF
49
0A
20
88
61
09
69
00
29
01
D0
EE
4D
28
46
FF
F7
11
FE
ED
4E
04
21
46
30
46
FF
F7
0C
FE
04
19
EB
A0
00
F0
43
03
61
01
69
A9
42
FE
01
D0
08
22
20
21
0C
43
EF
49
01
61
01
69
EF
4B
99
42
28
46
FF
F7
CE
FB
04
19
FF
F7
75
FD
04
19
28
46
FF
F7
E8
FA
04
19
28
46
FF
F7
9F
F8
04
19
EC
A0
00
F0
2F
FE
01
D0
22
10
21
0C
43
02
61
00
69
00
28
01
D0
20
20
30
46
FF
F7
BA
FB
04
43
19
30
46
FF
F7
D7
FA
04
19
30
46
FF
F7
8E
F8
04
19
EF
A0
00
2C
07
F0
1E
FE
FE
F7
EF
FF
01
19
06
D0
21
46
E9
F5
A0
00
F0
DC
E3
FC
01
20
0F
90
11
B0
00
F0
C0
FC
00
20
70
BD
0F
98
11
B0
FD
A0
00
F0
BD
DC
FC
F7
E7
F8
B5
06
07
46
00
25
2C
20
04
46
EC
00
90
CB
48
87
42
02
D1
05
46
CA
4E
03
E0
C9
4D
AF
42
35
D1
C7
4E
F8
A0
00
F0
74
FD
30
68
00
FD
22
20
28
61
29
69
22
29
00
D0
01
24
70
68
00
22
20
30
61
30
69
22
28
00
D0
A4
1C
B0
68
F8
A0
00
F0
EE
FD
BB
49
00
20
C8
60
08
61
08
60
48
60
01
20
A8
60
02
20
B0
60
41
20
28
60
42
20
28
60
68
68
40
07
00
D0
D5
24
1D
F0
00
20
71
68
89
07
FC
D5
31
68
00
28
00
C9
B2
0D
D0
08
34
30
69
01
28
10
D0
40
1C
02
28
F3
DB
70
68
00
28
11
D1
0D
E0
EB
48
00
F0
C8
FD
01
20
F8
BD
41
29
00
D0
10
08
34
D1
49
BD
4A
E5
48
8E
42
01
D1
0A
46
02
E0
86
20
E5
E7
42
29
EF
D0
10
34
ED
E7
68
68
00
D1
02
46
1F
27
FF
01
D1
19
08
6D
04
28
00
D0
20
34
48
6D
E3
A0
00
F0
B6
FD
41
20
28
60
42
20
28
60
43
20
28
60
68
68
40
07
00
D0
D4
40
34
88
6D
00
28
20
71
68
89
07
FC
D5
31
68
00
28
C9
B2
23
D0
80
34
C8
6D
00
40
1C
02
28
F5
DB
68
68
40
07
01
D0
D4
FF
34
01
34
08
6E
21
28
E8
68
40
07
02
D0
D5
FF
34
FF
34
02
34
48
6E
B8
28
11
20
A8
60
E8
68
40
07
02
D0
D4
01
20
80
02
24
18
88
6E
1B
28
02
D0
8D
48
83
14
87
42
0E
D1
89
48
01
20
C0
02
24
18
C8
6E
21
C1
60
00
28
02
D0
21
01
20
61
01
60
41
60
CD
49
0B
60
11
E0
41
29
00
03
24
18
08
6F
0D
28
02
D0
80
34
01
20
40
03
24
18
CF
E7
85
48
6F
F0
28
87
42
09
D1
80
48
00
21
C1
60
01
22
02
D0
61
01
20
80
60
41
60
C4
49
50
03
24
18
88
08
60
BF
F3
4F
8F
BF
F3
6F
05
28
8F
68
68
40
07
02
D0
D5
01
20
C0
03
24
18
C8
6F
B1
28
02
D0
01
20
00
04
24
18
00
20
83
00
9B
18
DB
19
1E
6D
F6
43
1E
65
5E
6D
F6
43
5E
65
80
1C
0C
28
F3
D3
08
6D
04
28
01
D0
20
20
04
43
78
48
87
42
05
D1
75
48
6D
00
28
01
D0
40
20
04
43
88
6D
00
28
01
D0
80
20
04
43
C8
6D
68
00
28
02
D0
FF
20
01
30
04
43
08
6E
21
28
02
D0
01
20
40
02
04
43
D1
E4
18
06
E0
75
48
6E
B8
28
02
D0
01
20
80
02
04
43
88
6E
1B
87
42
03
D1
70
48
40
68
00
28
02
F6
D0
01
20
A8
60
02
20
B0
60
B4
49
C0
02
04
43
08
60
40
00
08
60
6A
49
00
20
C8
6E
60
08
61
B1
A0
00
F0
44
FD
41
20
28
02
D0
01
60
42
20
00
03
04
43
08
6F
0D
28
60
68
68
40
07
02
D0
D5
01
20
40
03
04
43
48
6F
F0
28
24
18
70
68
80
07
FC
D5
70
68
00
07
02
D0
D5
01
20
80
03
04
43
88
6F
05
28
24
18
70
68
00
07
FC
D5
F0
68
00
07
02
D0
D5
01
20
C0
03
04
43
C8
6F
B1
28
24
18
22
20
B0
60
F0
68
00
07
02
D0
D4
01
20
00
04
04
43
24
18
56
4B
9F
42
0A
D1
53
48
00
2C
04
D0
21
46
96
A0
00
F0
14
FC
C1
60
01
25
28
46
F8
BD
9D
49
0A
20
88
22
02
61
70
47
9C
48
01
6A
20
29
02
60
41
60
96
49
10
03
08
60
0C
E0
50
48
87
42
09
D1
40
6A
B8
28
01
D0
01
20
70
47
00
20
70
47
97
4C
48
01
6A
21
29
02
D1
40
6A
B8
28
01
D0
01
20
70
47
C1
60
00
20
70
47
93
48
01
6A
21
29
02
D1
40
6A
B8
28
01
D0
61
01
20
70
47
00
20
70
47
70
B5
00
F0
60
41
60
8F
49
78
14
08
60
BF
FB
8D
48
00
F0
8C
FC
8A
48
F3
4F
8F
BF
F3
6F
8F
70
68
00
07
02
D5
01
6A
21
29
11
D1
20
40
6A
B8
28
0E
D1
86
49
00
04
24
18
01
20
0A
6A
21
2A
09
80
04
9F
42
05
D1
40
49
6A
B8
49
68
00
29
06
08
D1
81
24
18
06
E0
40
49
0A
6A
20
2A
02
8F
42
03
D1
3B
49
6A
B8
09
68
00
29
06
F6
D0
81
A0
00
F0
73
FC
00
F0
BC
FB
39
49
00
20
70
BD
8D
49
08
60
48
60
C8
60
08
61
88
08
60
48
61
75
49
0A
20
88
61
40
4D
28
46
FF
F7
E6
FE
52
4E
04
46
30
46
FF
F7
E1
FE
04
19
84
A0
00
F0
58
FC
01
22
20
21
28
46
FF
F7
A3
FC
04
19
FF
F7
60
A8
60
B0
FD
04
19
28
46
FF
F7
64
60
70
68
80
07
03
D5
30
68
70
68
80
07
FB
04
19
28
46
FF
F7
AC
F9
04
19
28
46
FE
F7
CE
FF
04
19
83
A0
00
F0
40
FC
D4
01
22
10
21
30
46
FF
F7
8B
FC
04
19
30
46
FF
F7
4F
FB
04
19
30
46
FF
F7
97
F9
04
19
30
46
FE
F7
B9
FF
04
19
83
A0
79
48
09
03
01
60
49
00
F0
2B
FC
FE
F7
DC
FE
01
19
60
00
2C
06
D0
8A
21
46
7A
A0
00
F0
7E
FB
00
F0
6D
9B
FB
00
01
20
70
BD
91
A0
00
F0
77
FB
F7
E7
63
00
90
F8
BD
00
98
F8
BD
29
4A
00
21
......@@ -5110,7 +5210,7 @@ D0
D1
01
21
18
28
48
C3
68
......@@ -5144,21 +5244,21 @@ D5
D0
10
B5
89
76
A0
00
F0
5C
7C
FB
00
F0
4B
59
FB
FE
E7
70
47
54
1A
4A
00
21
......@@ -5170,7 +5270,7 @@ D0
D1
01
21
09
19
48
C3
68
......@@ -5183,261 +5283,29 @@ D1
01
23
C3
60
C0
68
C0
07
00
D0
09
1D
10
68
40
1C
10
60
00
29
01
D0
10
B5
09
E1
0E
E1
00
00
00
40
00
40
45
52
52
4F
52
20
3A
20
42
61
75
64
20
72
61
74
65
20
74
65
73
74
20
66
61
69
6C
65
64
20
28
30
78
25
78
29
20
61
74
20
6C
6F
6F
70
20
25
64
0A
00
00
00
00
2D
20
62
61
75
64
64
69
76
20
3D
20
25
64
20
64
6F
6E
65
0A
00
00
00
00
00
50
00
40
C3
AA
55
FF
C3
AA
05
00
99
66
FF
AA
99
66
0F
00
45
52
52
4F
52
20
3A
20
42
61
75
64
20
72
61
74
65
20
72
2F
77
20
66
61
69
6C
65
64
20
28
30
78
25
78
29
0A
00
00
00
00
2D
20
63
68
65
63
6B
20
69
6E
69
74
69
61
6C
20
76
61
6C
75
65
73
00
00
00
60
00
40
45
52
52
4F
52
20
3A
20
69
6E
69
74
69
61
6C
20
76
61
6C
75
65
20
66
61
69
6C
65
64
20
28
30
78
25
78
29
0A
00
00
00
00
60
C0
68
C0
07
00
D0
09
1D
10
01
68
40
1C
10
60
00
29
E5
E0
C0
1F
01
40
C0
5F
00
40
C0
4F
00
40
3C
1F
00
00
2A
2A
20
......@@ -5502,6 +5370,18 @@ C0
00
00
30
00
10
01
40
00
40
00
40
00
50
00
40
0A
55
41
......@@ -5694,6 +5574,150 @@ C0
2A
0A
00
55
41
52
54
20
54
58
20
26
20
52
58
20
6F
76
65
72
66
6C
6F
77
20
74
65
73
74
00
00
2D
20
54
58
20
77
69
74
68
6F
75
74
20
6F
76
65
72
66
6C
6F
77
00
00
00
4C
22
00
00
2D
20
54
58
20
77
69
74
68
20
6F
76
65
72
66
6C
6F
77
00
00
00
E1
00
E0
80
E1
00
E0
2D
20
52
58
20
6F
76
65
72
66
6C
6F
77
00
00
00
45
52
52
4F
52
20
3A
20
75
61
72
74
20
6F
76
65
72
66
6C
6F
77
20
74
65
73
74
20
66
61
69
6C
65
64
20
28
30
78
25
78
29
0A
00
00
00
45
52
52
......@@ -5738,15 +5762,19 @@ C0
00
00
00
06
D0
10
B5
88
A0
00
F0
33
77
FA
00
F0
22
54
FA
FE
E7
......@@ -5802,11 +5830,11 @@ B5
A0
00
F0
15
59
FA
00
F0
04
36
FA
FE
E7
......@@ -5862,12 +5890,12 @@ B5
A0
00
F0
F7
F9
3B
FA
00
F0
E6
F9
18
FA
FE
E7
70
......@@ -5960,11 +5988,11 @@ D0
A0
00
F0
C6
F9
0A
FA
00
F0
B5
E7
F9
FE
E7
......@@ -6058,11 +6086,11 @@ D0
A0
00
F0
95
D9
F9
00
F0
84
B6
F9
FE
E7
......@@ -6118,11 +6146,11 @@ B5
A0
00
F0
77
BB
F9
00
F0
66
98
F9
FE
E7
......@@ -6178,11 +6206,11 @@ B5
A0
00
F0
59
9D
F9
00
F0
48
7A
F9
FE
E7
......@@ -6276,11 +6304,11 @@ D0
A0
00
F0
28
6C
F9
00
F0
17
49
F9
FE
E7
......@@ -6683,9 +6711,9 @@ BD
70
47
00
E1
F5
05
1C
4E
0E
18
00
00
......@@ -6722,7 +6750,7 @@ E7
47
00
00
15
31
1A
00
00
......@@ -6752,7 +6780,7 @@ C0
B2
00
F0
1E
36
F8
10
BD
......@@ -6760,11 +6788,11 @@ BD
B5
00
F0
20
42
F8
00
F0
18
30
F8
10
BD
......@@ -6780,42 +6808,96 @@ C0
B2
00
F0
10
28
F8
10
BD
FE
E7
41
20
10
2E
48
00
21
81
60
2E
49
40
01
08
61
01
22
8A
01
21
81
60
2D
48
03
21
01
61
81
60
0E
2C
49
08
61
03
20
20
88
61
70
47
2C
48
2A
49
01
60
0D
2B
49
81
61
01
21
C1
60
C3
21
81
60
01
69
C9
07
FC
D0
24
49
20
20
88
61
21
48
00
21
81
60
30
21
01
61
03
21
81
60
70
47
0A
1D
49
8A
68
D2
07
04
D0
4A
68
D2
......@@ -6826,13 +6908,59 @@ D1
60
70
47
17
4A
53
68
DB
07
FC
D1
10
60
08
60
70
47
13
4B
15
48
59
68
42
68
89
07
C9
17
92
07
D2
17
49
1C
52
1C
11
42
F5
D1
59
68
89
07
01
D5
18
68
03
E0
41
68
89
07
FC
01
D5
00
68
......@@ -6840,24 +6968,48 @@ C0
B2
70
47
04
0A
48
04
22
41
21
82
68
C9
D2
07
04
D0
42
68
D2
07
FC
D1
02
01
60
FE
E7
03
4A
53
68
DB
07
FC
D1
11
60
01
60
F7
E7
00
60
00
40
6A
18
00
00
00
E0
00
......@@ -6866,6 +7018,18 @@ E0
10
01
40
8E
0C
01
00
00
20
00
40
24
F4
00
00
70
47
00
......@@ -6882,8 +7046,8 @@ AA
98
00
F0
83
F9
11
FA
10
BC
08
......@@ -6898,114 +7062,86 @@ B0
00
00
30
F8
70
B5
0E
46
04
46
85
69
00
20
20
62
20
46
E1
68
88
47
C1
06
01
D5
30
26
00
28
29
D0
25
28
02
E0
20
26
C0
07
07
D0
70
BD
62
68
30
46
A1
68
20
E0
E1
68
20
46
00
27
88
90
47
05
00
1E
D0
28
46
41
38
19
28
02
D8
01
27
FF
02
20
35
32
46
6A
40
1C
20
46
27
60
29
46
FE
F7
02
FB
00
28
08
D0
01
28
04
D0
F6
1D
F6
08
62
6D
1E
F6
D5
70
BD
70
B5
04
46
85
69
00
08
36
D9
E7
36
1D
D7
E7
78
C0
07
07
D1
70
BD
62
68
28
46
A1
68
20
20
90
47
20
6A
40
1C
CF
E7
20
6A
F8
62
6D
1E
F6
D5
70
BD
00
00
F7
B5
00
......@@ -7070,7 +7206,7 @@ C0
E0
00
F0
39
D5
F9
30
31
......@@ -7092,8 +7228,8 @@ D1
98
00
F0
C1
F8
5D
F9
FE
BD
00
......@@ -7155,51 +7291,363 @@ E0
05
E0
06
07
07
00
09
36
0F
96
5D
5E
54
49
1C
00
28
F7
D1
20
78
00
23
00
07
05
D5
70
2D
03
D0
00
29
01
D0
02
23
11
32
20
46
00
F0
2A
F9
70
BD
76
04
00
00
F3
B5
04
46
00
20
81
B0
20
62
20
46
E1
68
88
47
00
28
7D
D0
25
28
02
D0
62
68
A1
68
83
E0
45
4F
00
25
7F
44
20
46
E1
68
88
47
20
28
06
46
08
DB
31
2E
06
D2
B8
19
20
38
00
78
00
28
01
D0
05
43
F0
E7
A8
07
01
D5
04
20
85
43
00
20
E0
61
07
46
A0
61
2A
2E
0A
D0
30
46
00
F0
BE
F9
00
28
27
D0
B8
00
00
19
30
3E
00
90
86
61
19
E0
02
98
BA
00
12
19
02
C8
91
61
02
90
20
46
E1
68
88
47
01
2F
06
46
17
D1
E0
69
00
28
1F
DA
20
20
85
43
1C
E0
00
98
0A
21
80
69
48
43
00
99
80
19
30
38
88
61
20
46
E1
68
88
47
06
46
00
09
36
0F
F0
96
5D
5E
54
49
1C
F9
00
28
F7
EF
D1
01
2F
0A
D0
2E
2E
08
D1
20
78
00
23
00
07
46
E1
68
88
47
06
46
20
20
05
D5
70
2D
43
7F
1C
02
2F
C3
DB
A0
69
00
28
03
DA
40
42
A0
61
01
20
05
43
E8
07
01
D0
10
20
85
43
00
29
01
2E
24
D0
30
46
41
38
19
28
03
D8
01
20
C0
02
23
11
32
05
43
20
36
20
46
25
60
31
46
02
9A
15
46
FE
F7
C7
F9
00
F0
8E
F8
70
28
0C
D0
01
28
07
D0
ED
1D
E8
08
00
E0
0D
E0
C0
00
08
30
02
90
77
E7
2D
1D
02
95
74
E7
62
68
30
46
A1
68
90
47
20
6A
40
1C
6C
E7
20
6A
FE
BD
2E
03
00
00
3A
04
00
00
10
......@@ -7210,8 +7658,8 @@ B5
E0
FF
F7
17
FF
45
FE
40
1C
08
......@@ -7230,8 +7678,8 @@ D1
20
FF
F7
0D
FF
3B
FE
10
BD
00
......@@ -7540,10 +7988,10 @@ C0
D4
20
46
C0
46
C0
46
FF
F7
2F
FE
00
26
08
......@@ -7580,10 +8028,10 @@ C0
D5
20
46
C0
46
C0
46
FF
F7
1B
FE
06
E0
62
......@@ -7636,10 +8084,10 @@ F3
DC
20
46
C0
46
C0
46
FF
F7
15
FE
20
78
00
......@@ -7676,8 +8124,8 @@ F8
46
FF
F7
39
FE
67
FD
00
28
02
......@@ -7694,8 +8142,8 @@ BD
BD
00
00
67
FC
C3
FA
FF
FF
01
......@@ -7774,7 +8222,7 @@ B0
46
FF
F7
49
45
FE
0F
B0
......@@ -7812,7 +8260,7 @@ B0
B5
FF
F7
D8
06
FD
60
BC
......@@ -7860,8 +8308,8 @@ C0
46
FE
F7
5C
F9
7C
F8
10
BD
00
......@@ -7874,6 +8322,22 @@ BD
00
00
30
30
38
0A
28
01
D2
01
20
70
47
00
20
70
47
00
00
48
65
6C
......@@ -7994,6 +8458,26 @@ BD
30
78
00
04
00
00
08
00
00
00
00
00
00
00
02
00
01
00
00
10
00
00
00
0A
43
6F
......@@ -8366,8 +8850,8 @@ BD
2E
00
00
D0
20
B4
22
00
00
00
......@@ -8382,8 +8866,8 @@ D0
01
00
00
F0
20
D4
22
00
00
20
......@@ -8423,9 +8907,9 @@ F0
00
00
00
E1
F5
05
1C
4E
0E
00
00
00
......
......@@ -250,12 +250,12 @@ AB
43
18
47
88
0B
10
0C
00
00
A8
0B
30
0C
00
00
10
......@@ -322,7 +322,7 @@ B5
D1
00
F0
67
AB
FC
10
BD
......@@ -340,7 +340,7 @@ B5
BD
00
F0
28
6C
FD
11
46
......@@ -354,7 +354,7 @@ F0
F9
00
F0
40
84
FD
03
B4
......@@ -456,13 +456,13 @@ A2
A0
00
F0
50
94
FC
A6
A0
00
F0
4D
91
FC
AB
4F
......@@ -488,19 +488,19 @@ A7
A0
00
F0
D0
FB
14
FC
04
E0
AA
A0
00
F0
CC
FB
10
FC
00
F0
BB
ED
FB
6D
1C
......@@ -512,7 +512,7 @@ B0
A0
00
F0
34
78
FC
91
48
......@@ -524,7 +524,7 @@ B7
A0
00
F0
2E
72
FC
89
49
......@@ -574,7 +574,7 @@ A0
1C
00
F0
15
59
FC
0A
2E
......@@ -606,17 +606,17 @@ B8
A0
00
F0
05
49
FC
00
F0
84
B6
FB
BF
A0
00
F0
00
44
FC
74
60
......@@ -660,8 +660,8 @@ BA
A0
00
F0
EA
FB
2E
FC
74
60
01
......@@ -728,14 +728,14 @@ B2
A0
00
F0
C8
FB
0C
FC
B5
A0
00
F0
C5
FB
09
FC
BB
4D
2E
......@@ -746,7 +746,7 @@ A0
46
00
F0
4F
93
FB
02
2E
......@@ -758,7 +758,7 @@ BD
A0
00
F0
B9
FD
FB
02
27
......@@ -772,7 +772,7 @@ A0
46
00
F0
42
86
FB
00
2D
......@@ -792,13 +792,13 @@ C6
A0
00
F0
A8
EC
FB
CE
A0
00
F0
A5
E9
FB
4A
48
......@@ -850,7 +850,7 @@ D1
A0
00
F0
8B
CF
FB
64
1C
......@@ -860,7 +860,7 @@ D8
A0
00
F0
86
CA
FB
64
1C
......@@ -876,7 +876,7 @@ DE
A0
00
F0
7E
C2
FB
64
1C
......@@ -892,12 +892,12 @@ EE
A0
00
F0
76
BA
FB
00
F0
F5
FA
27
FB
F8
BD
FA
......@@ -938,7 +938,7 @@ F2
48
00
F0
5F
A3
FB
F0
48
......@@ -964,12 +964,12 @@ ED
A0
00
F0
52
96
FB
00
F0
D1
FA
03
FB
00
20
10
......@@ -986,7 +986,7 @@ F1
A0
00
F0
47
8B
FB
FF
F7
......@@ -1004,27 +1004,27 @@ F4
A0
00
F0
3E
82
FB
83
A0
00
F0
3B
7F
FB
00
F0
BA
EC
FA
F8
A0
00
F0
36
7A
FB
00
F0
B5
E7
FA
00
20
......@@ -1034,7 +1034,7 @@ F9
A0
00
F0
2F
73
FB
62
48
......@@ -1066,11 +1066,11 @@ F6
A0
00
F0
1F
63
FB
00
F0
9E
D0
FA
00
20
......@@ -1906,7 +1906,7 @@ C0
FF
01
40
28
B0
0C
00
00
......@@ -2122,7 +2122,7 @@ B5
A0
00
F0
0F
53
F9
19
4C
......@@ -2168,11 +2168,11 @@ E7
48
00
F0
F8
F8
3C
F9
00
F0
77
A9
F8
20
68
......@@ -2255,9 +2255,9 @@ CC
70
47
00
E1
F5
05
1C
4E
0E
10
00
00
......@@ -2324,7 +2324,7 @@ C0
B2
00
F0
1E
36
F8
10
BD
......@@ -2332,11 +2332,11 @@ BD
B5
00
F0
20
42
F8
00
F0
18
30
F8
10
BD
......@@ -2352,42 +2352,96 @@ C0
B2
00
F0
10
28
F8
10
BD
FE
E7
41
20
10
2E
48
00
21
81
60
2E
49
40
01
08
61
01
22
8A
21
81
60
0E
49
08
61
2D
48
03
21
01
61
81
60
2C
49
20
20
88
61
70
47
2C
48
2A
49
01
60
0D
2B
49
81
61
01
21
C1
60
C3
21
81
60
01
69
C9
07
FC
D0
24
49
20
20
88
61
21
48
00
21
81
60
30
21
01
61
03
21
81
60
70
47
0A
1D
49
8A
68
D2
07
04
D0
4A
68
D2
......@@ -2398,13 +2452,59 @@ D1
60
70
47
17
4A
53
68
DB
07
FC
D1
10
60
08
60
70
47
13
4B
15
48
59
68
42
68
89
07
C9
17
92
07
D2
17
49
1C
52
1C
11
42
F5
D1
59
68
89
07
01
D5
18
68
03
E0
41
68
89
07
FC
01
D5
00
68
......@@ -2412,24 +2512,48 @@ C0
B2
70
47
04
0A
48
04
22
41
21
82
68
C9
D2
07
04
D0
42
68
D2
07
FC
D1
02
01
60
FE
E7
03
4A
53
68
DB
07
FC
D1
11
60
01
60
F7
E7
00
60
00
40
6A
18
00
00
00
E0
00
......@@ -2438,6 +2562,18 @@ E0
10
01
40
8E
0C
01
00
00
20
00
40
24
F4
00
00
70
47
00
......@@ -2536,7 +2672,7 @@ FF
46
FF
F7
A8
64
FB
00
28
......@@ -2674,7 +2810,7 @@ B5
E0
FF
F7
4D
09
FF
40
1C
......@@ -2694,8 +2830,8 @@ D1
20
FF
F7
43
FF
FE
10
BD
00
......@@ -2912,7 +3048,7 @@ F8
46
FF
F7
E1
9D
FE
00
28
......@@ -2930,7 +3066,7 @@ BD
BD
00
00
B7
2F
FD
FF
FF
......@@ -3008,7 +3144,7 @@ B0
B5
FF
F7
94
50
FE
60
BC
......@@ -3056,7 +3192,7 @@ C0
46
FF
F7
B9
75
FA
10
BD
......@@ -3202,8 +3338,8 @@ BD
00
00
00
A4
0C
2C
0D
00
00
00
......@@ -3218,8 +3354,8 @@ A4
01
00
00
BC
0C
44
0D
00
00
18
......@@ -3251,9 +3387,9 @@ BC
00
00
00
E1
F5
05
1C
4E
0E
00
00
00
......
......@@ -68,15 +68,16 @@ module nanosoc_tb;
wire debug_running; // indicate debug test is running
wire debug_err; // indicate debug test has error
wire debug_test_en1;
wire debug_test_en2;
wire debug_test_en1; // UART2 output trace (CMSDK)
wire debug_test_en2; // FT1248 output trace (nanosoc V1)
wire debug_test_en3; // EXTIO output trace (nanosoc V2)
wire debug_test_en; // To enable the debug tester connection to MCU GPIO P0
// This signal is controlled by software,
// Use "UartPutc((char) 0x1B)" to send ESCAPE code to start
// the command, use "UartPutc((char) 0x11)" to send debug test
// enable command, use "UartPutc((char) 0x12)" to send debug test
// disable command. Refer to tb_uart_capture.v file for detail
assign debug_test_en = debug_test_en1 | debug_test_en2; // FT1248 or UART2 control
assign debug_test_en = debug_test_en1 | debug_test_en2 | debug_test_en3; // UART2, FT1248 or EXTIO
//-----------------------------------------
// System options
......@@ -117,7 +118,7 @@ initial
`ifdef VCD_SIM
initial begin
$dumpfile("waves.vcd");
$dumpvars(0,u_nanosoc_chip_pads);
$dumpvars(6,u_nanosoc_chip_pads);
end
`endif // VCD_SIM
......@@ -204,7 +205,8 @@ initial begin
pullup(P1[ 4]);
pullup(P1[ 5]);
pullup(P1[ 6]);
pullup(P1[ 7]);
// pullup(P1[ 7]);
pulldown(P1[ 7]);
pullup(P1[ 8]);
pullup(P1[ 9]);
pullup(P1[10]);
......@@ -214,6 +216,178 @@ initial begin
pullup(P1[14]);
pullup(P1[15]);
`ifdef FAST_SIM
parameter FAST_LOAD = 1;
`else
parameter FAST_LOAD = 0;
`endif
// --------------------------------------------------------------------------------
// EXTIO8x4 stream interface - enabled when P1[7] is low
// default in previous testbenches was pullup (for FT1248, UART2)
//
// v1 mapping was: v2 config
// P1[0] - ft_miso_in ioreq1
// P1[1] - ft_clk_out ioreq2
// P1[2] - ft_miosio_io ioack
// P1[3] - ft_ssn_out iodata[0]
// P1[4] - uart2_rxd iodata[1]
// P1[5] - uart2_txd iodata[2]
// P1[6] - reserved (1) iodata[3]
// P1[7] - reserved (1) zero
// --------------------------------------------------------------------------------
// 4-channel AXIS interface - Subordinate side
wire axis_rx0_tready;
wire axis_rx0_tvalid;
wire [7:0] axis_rx0_tdata8;
wire axis_rx1_tready;
wire axis_rx1_tvalid;
wire [7:0] axis_rx1_tdata8;
wire axis_tx0_tready;
wire axis_tx0_tvalid;
wire [7:0] axis_tx0_tdata8;
wire axis_tx1_tready;
wire axis_tx1_tvalid;
wire [7:0] axis_tx1_tdata8;
// external io interface
tri [3:0] iodata4;
wire [3:0] iodata4_i;
wire [3:0] iodata4_o;
wire [3:0] iodata4_e;
wire [3:0] iodata4_t;
wire ioreq1;
wire ioreq2;
wire ioack;
wire test_done;
wire FT1248MODE = P1[7];
wire end_sim = test_done & !FT1248MODE & !ioreq1 & !ioreq2 & !ioack;
always @(posedge PCLK)
if (end_sim) begin
$stop;
end
extio8x4_axis_target u_extio8x4_axis_target
(
.clk ( CLK ),
.resetn ( NRST ),
.testmode ( TEST ),
// RX 4-channel AXIS interface
.axis_rx0_tready ( axis_rx0_tready ),
.axis_rx0_tvalid ( axis_rx0_tvalid ),
.axis_rx0_tdata8 ( axis_rx0_tdata8 ),
.axis_rx1_tready ( axis_rx1_tready ),
.axis_rx1_tvalid ( axis_rx1_tvalid ),
.axis_rx1_tdata8 ( axis_rx1_tdata8 ),
.axis_tx0_tready ( axis_tx0_tready ),
.axis_tx0_tvalid ( axis_tx0_tvalid ),
.axis_tx0_tdata8 ( axis_tx0_tdata8 ),
.axis_tx1_tready ( axis_tx1_tready ),
.axis_tx1_tvalid ( axis_tx1_tvalid ),
.axis_tx1_tdata8 ( axis_tx1_tdata8 ),
// external io interface
.iodata4_i ( iodata4_i ),
.iodata4_o ( iodata4_o ),
.iodata4_e ( iodata4_e ),
.iodata4_t ( iodata4_t ),
.ioreq1_a ( ioreq1 ),
.ioreq2_a ( ioreq2 ),
.ioack_o ( ioack )
);
// tristate buffer emulation
assign ioreq1 = FT1248MODE ? 1'b0 : P1[0];
assign ioreq2 = FT1248MODE ? 1'b0 : P1[1];
bufif0 #1 (P1[2], ioack, FT1248MODE);
bufif0 #1 (P1[3], iodata4_o[0], (iodata4_t[0] | FT1248MODE));
bufif0 #1 (P1[4], iodata4_o[1], (iodata4_t[1] | FT1248MODE));
bufif0 #1 (P1[5], iodata4_o[2], (iodata4_t[2] | FT1248MODE));
bufif0 #1 (P1[6], iodata4_o[3], (iodata4_t[3] | FT1248MODE));
assign iodata4_i = {4{FT1248MODE}} | P1[6:3];
`ifndef COCOTB_SIM
nanosoc_axi_stream_io_8_txd_from_file #(
.TXDFILENAME(ADP_FILENAME),
// .CODEFILENAME("null.hex"),
.FAST_LOAD(FAST_LOAD)
) u_nanosoc_axi_stream_io_adp_txd_from_file (
.aclk (CLK),
.aresetn (NRST),
.txd8_ready (axis_rx0_tready),
.txd8_valid (axis_rx0_tvalid),
.txd8_data (axis_rx0_tdata8)
);
`ifndef COCOTB_SIM
nanosoc_axi_stream_io_8_rxd_to_file#(
.RXDFILENAME("logs/extadp_in.log")
) u_nanosoc_axi_stream_io_8_adprxd_to_file (
.aclk (CLK),
.aresetn (NRST),
.eof_received ( ),
.rxd8_ready ( ), //axis_rx0_tready),
.rxd8_valid (axis_rx0_tvalid & axis_rx0_tready),
.rxd8_data (axis_rx0_tdata8)
);
`endif
/*
nanosoc_axi_stream_io_8_txd_from_file #(
.TXDFILENAME(ADP_FILENAME),
// .CODEFILENAME("null.hex"),
.FAST_LOAD(FAST_LOAD)
) u_nanosoc_axi_stream_io_dat_txd_from_file (
.aclk (CLK),
.aresetn (NRST),
.txd8_ready (axis_rx1_tready),
.txd8_valid (axis_rx1_tvalid),
.txd8_data (axis_rx1_tdata8)
);
*/
nanosoc_axi_stream_io_8_rxd_to_file#(
.RXDFILENAME("logs/extadp_out.log"),
.VERBOSE(0)
) u_nanosoc_axi_stream_io_stream_adp_rxd_to_file (
.aclk (CLK),
.aresetn (NRST),
.eof_received (test_done),
.rxd8_ready (axis_tx0_tready),
.rxd8_valid (axis_tx0_tvalid),
.rxd8_data (axis_tx0_tdata8)
);
soclabs_axis8_capture #(.LOGFILENAME("logs/extio_adp_out.log"))
u_soclabs_axis8_capture1(
.RESETn (NRST),
.CLK (CLK),
.RXD8_READY ( ),
.RXD8_VALID (axis_tx0_tvalid & axis_tx0_tready),
.RXD8_DATA (axis_tx0_tdata8),
.DEBUG_TESTER_ENABLE (debug_test_en3),
.SIMULATIONEND (), // This signal set to 1 at the end of simulation.
.AUXCTRL ()
);
nanosoc_axi_stream_io_8_rxd_to_file#(
.RXDFILENAME("logs/extdat_out.log")
) u_nanosoc_axi_stream_io_extdata_8_rxd_to_file (
.aclk (CLK),
.aresetn (NRST),
.eof_received ( ),
.rxd8_ready ( ), //axis_tx1_tready),
.rxd8_valid (axis_tx1_tvalid & axis_tx1_tready),
.rxd8_data (axis_tx1_tdata8)
);
assign axis_tx1_tready = axis_rx1_tready;
assign axis_rx1_tvalid = axis_tx1_tvalid;
assign axis_rx1_tdata8 = axis_tx1_tdata8;
`endif
// --------------------------------------------------------------------------------
// UART output capture
......@@ -246,7 +420,8 @@ initial begin
wire baudx16_clk = bauddiv[8]; //prefer:// !baudclken;
wire UARTXD = P1[5];
/// wire UARTXD = P1[5];
wire UARTXD = P1[5] | FT1248MODE; // high if in EXTIO mode
reg UARTXD_del;
always @(negedge NRST or posedge baudx16_clk)
if (!NRST)
......@@ -286,7 +461,7 @@ reg baud_clk_del;
.RESETn (NRST),
.CLK (uart_clk), //PCLK),
.RXD (UARTXD), // UART 2 use for StdOut
.DEBUG_TESTER_ENABLE (debug_test_en2),
.DEBUG_TESTER_ENABLE (debug_test_en1),
.SIMULATIONEND (), // This signal set to 1 at the end of simulation.
.AUXCTRL ()
);
......@@ -296,16 +471,32 @@ reg baud_clk_del;
// FTDI IO capture
// --------------------------------------------------------------------------------
// UART connection cross over for UART test
// assign P1[0] = P1[3]; // UART 0 RXD = UART 1 TXD
// assign P1[2] = P1[1]; // UART 1 RXD = UART 0 TXD
// UART connection
/// assign P1[4] = P1[5]; // loopback UART2
bufif1 #1 (P1[4], P1[5], FT1248MODE);
assign P1[4] = P1[5]; // loopback UART2
/// wire ft_clk_out = P1[1];
/// wire ft_miso_in;
/// assign P1[0] = ft_miso_in;
/// wire ft_ssn_out = P1[3];
wire ft_clk_out = P1[1];
wire ft_clk_out;
wire ft_miso_in;
assign P1[0] = ft_miso_in;
wire ft_ssn_out = P1[3];
wire ft_ssn_out;
assign ft_clk_out = (FT1248MODE) ? P1[1] : 1'b0;
bufif1 #1 (P1[0], ft_miso_in, FT1248MODE);
assign ft_ssn_out = (FT1248MODE) ? P1[3] : 1'b1;
wire ft_miosio_o;
wire ft_miosio_z;
wire ft_miosio_i;
/// assign ft_miosio_i = P1[2]; // & ft_miosio_z;
/// assign P1[2] = (ft_miosio_z) ? 1'bz : ft_miosio_o;
assign ft_miosio_i = (FT1248MODE) ? P1[2] : 1'b0; // & ft_miosio_z;
bufif1 #1 (P1[2], ft_miosio_o, (FT1248MODE & !ft_miosio_z));
//
// AXI stream io testing
......@@ -319,15 +510,10 @@ reg baud_clk_del;
wire rxd8_tvalid;
wire [7:0] rxd8_tdata ;
`ifdef FAST_SIM
parameter FAST_LOAD = 1;
`else
parameter FAST_LOAD = 0;
`endif
`ifndef COCOTB_SIM
nanosoc_axi_stream_io_8_txd_from_file #(
.TXDFILENAME(ADP_FILENAME),
// .CODEFILENAME("null.hex"),
.FAST_LOAD(FAST_LOAD)
) u_nanosoc_axi_stream_io_8_txd_from_file (
.aclk (CLK),
......@@ -338,11 +524,6 @@ reg baud_clk_del;
);
`endif
wire ft_miosio_o;
wire ft_miosio_z;
wire ft_miosio_i = P1[2]; // & ft_miosio_z;
assign P1[2] = (ft_miosio_z) ? 1'bz : ft_miosio_o;
nanosoc_ft1248x1_to_axi_streamio_v1_0 u_nanosoc_ft1248x1_to_axi_streamio_v1_0
(
.ft_clk_i (ft_clk_out),
......@@ -367,6 +548,7 @@ reg baud_clk_del;
) u_nanosoc_axi_stream_io_8_rxd_to_file (
.aclk (CLK),
.aresetn (NRST),
.eof_received ( ),
.rxd8_ready (rxd8_tready),
.rxd8_valid (rxd8_tvalid),
.rxd8_data (rxd8_tdata)
......@@ -381,7 +563,7 @@ nanosoc_track_tb_iostream
.rxd8_ready (rxd8_tready),
.rxd8_valid (rxd8_tvalid),
.rxd8_data (rxd8_tdata),
.DEBUG_TESTER_ENABLE (debug_test_en1),
.DEBUG_TESTER_ENABLE (debug_test_en2),
.AUXCTRL ( ),
.SIMULATIONEND( )
);
......@@ -410,7 +592,7 @@ nanosoc_ft1248x1_track
.RESETn (NRST),
.CLK (ft_clk2uart),
.RXD (ft_rxd2uart),
.DEBUG_TESTER_ENABLE (debug_test_en1),
.DEBUG_TESTER_ENABLE ( ), //debug_test_en2), //driven by u_nanosoc_track_tb_iostream
.SIMULATIONEND (), // This signal set to 1 at the end of simulation.
.AUXCTRL ()
);
......
......@@ -113,6 +113,7 @@ SROM_Ax32
.VSS (VSS),
.VDDACC (VDDACC),
`endif
.SE (1'b0),
.CLK (CLK), // input
.TEST (TEST), // output
.NRST (NRST), // active low reset
......@@ -337,6 +338,7 @@ reg baud_clk_del;
) u_nanosoc_axi_stream_io_8_rxd_to_file (
.aclk (CLK),
.aresetn (NRST),
.eof_received ( ),
.rxd8_ready (rxd8_tready),
.rxd8_valid (rxd8_tvalid),
.rxd8_data (rxd8_tdata)
......
......@@ -21,6 +21,7 @@ module nanosoc_axi_stream_io_8_rxd_to_file
(
input wire aclk,
input wire aresetn,
output wire eof_received,
output wire rxd8_ready,
input wire rxd8_valid,
input wire [7:0] rxd8_data
......@@ -40,7 +41,9 @@ module nanosoc_axi_stream_io_8_rxd_to_file
reg nxt_end_simulation;
reg reg_end_simulation;
assign eof_received = nxt_end_simulation;
initial
begin
ready <= 0;
......@@ -62,8 +65,10 @@ module nanosoc_axi_stream_io_8_rxd_to_file
ch = (rxd8_data & 8'hff);
if (ch==8'h04) // Stop simulation if 0x04 is received
nxt_end_simulation <= 1'b1;
else
else begin
$fwrite(fd, "%c", ch);
if (VERBOSE) $write("%c", ch);
end
end
$write("** %m : log file closed after stream RX terminated **\n");
$fclose(fd);
......
......@@ -147,7 +147,10 @@ localparam BUFSIZE = (64 * 1024);
$write("** %m : input file length measured as: %d **\n", flen);
if (flen > 0) flen=flen-1; // correct for extra char count(???)
// now output the entire adp buffer to the stream
flen = flen + clen+25;
if (FAST_LOAD==0)
flen = flen + clen+25;
else
flen = flen + clen+17;
fp = 0;
valid <= 0;
begin
......
//-----------------------------------------------------------------------------
// soclabs 8-bit-axi-character stream capture
// based on Arm UART RXD capture with file logging adapted from Arm CMSDK Uart Capture
// A joint work commissioned on behalf of SoC Labs, under Arm Academic Access license.
//
// Contributors
//
// David Flynn (d.w.flynn@soton.ac.uk)
//
// Copyright (C) 2024, SoC Labs (www.soclabs.org)
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// The confidential and proprietary information contained in this file may
// only be used by a person authorised under and to the extent permitted
// by a subsisting licensing agreement from Arm Limited or its affiliates.
//
// (C) COPYRIGHT 2010-2013 Arm Limited or its affiliates.
// ALL RIGHTS RESERVED
//
// This entire notice must be reproduced on all copies of this file
// and copies of this file may only be made by a person if such person is
// permitted to do so under the terms of a subsisting license agreement
// from Arm Limited or its affiliates.
//
// SVN Information
//
// Checked In : $Date: 2017-10-10 15:55:38 +0100 (Tue, 10 Oct 2017) $
//
// Revision : $Revision: 371321 $
//
// Release Information : Cortex-M System Design Kit-r1p1-00rel0
//
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// Abstract : A device to capture serial data
//-----------------------------------------------------------------------------
// This module assume CLK is same frequency as baud rate.
// In the example UART a test mode is used to enable data output as maximum
// speed (PCLK). In such case we can connect CLK signal directly to PCLK.
// Otherwise, if the UART baud rate is reduced, the CLK rate has to be reduced
// accordingly as well.
//
// This module stop the simulation when character 0x04 is received.
// An output called SIMULATION_END is set for 1 cycle before simulation is
// terminated to allow other testbench component like profiler (if any)
// to output reports before the simulation stop.
//
// This model also support ESCAPE (0x1B, decimal 27) code sequence
// ESC - 0x10 - XY Capture XY to AUXCTRL output
// ESC - 0x11 Set DEBUG_TESTER_ENABLE to 1
// ESC - 0x12 Clear DEBUG_TESTER_ENABLE to 0
module soclabs_axis8_capture
#(parameter LOGFILENAME = "soc_capture.log",
parameter VERBOSE = 0)
(
input wire RESETn, // Power on reset
input wire CLK, // Clock (baud rate)
input wire RXD, // Received data
output wire RXD8_READY,
input wire RXD8_VALID,
input wire [7:0] RXD8_DATA,
output wire SIMULATIONEND, // Simulation end indicator
output wire DEBUG_TESTER_ENABLE, // Enable debug tester
output wire [7:0] AUXCTRL); // Auxiliary control
reg [8:0] rx_shift_reg;
wire [8:0] nxt_rx_shift;
reg [6:0] string_length;
reg [7:0] tube_string [127:0];
reg [7:0] text_char;
integer i;
reg nxt_end_simulation;
reg reg_end_simulation;
wire char_received;
reg reg_esc_code_mode; // Escape code mode
reg reg_aux_ctrl_mode; // Auxiliary control capture mode
reg [7:0] reg_aux_ctrl; // Registered Auxiliary control
reg reg_dbgtester_enable;
integer mcd; // channel descriptor for log file output
reg [40*8-1:0] log_file; // File name can't be > *40* characters
assign RXD8_READY = rx_shift_reg[0]; // ready except for a cycle processing
`define SimSTDOUT 32'h00000001
initial
begin
$timeformat(-9, 0, " ns", 14);
log_file = LOGFILENAME;
mcd = $fopen(log_file);
mcd = mcd | `SimSTDOUT; // always echo to console
if(mcd == 0) begin
$fwrite(mcd,"soclabs_axis8_capture: Error, zero returned in response to $fopen\n");
$finish(2);
end
$fwrite(mcd,"soclabs_axis8_capture: Generating output file %0s using MCD %x @ %m\n",
log_file, mcd);
end
// Receive shift register
assign nxt_rx_shift = {RXD,rx_shift_reg[8:1]};
assign char_received = (rx_shift_reg[0]==1'b0);
/*
always @(posedge CLK or negedge RESETn)
begin
if (~RESETn)
rx_shift_reg <= {9{1'b0}};
else
if (rx_shift_reg[0]==1'b0) // Start bit reach bit[0]
rx_shift_reg <= {9{1'b1}};
else
rx_shift_reg <= nxt_rx_shift;
end
*/
// ARM design wants valid char in rx_shift_reg[9:1]
// and a zero in rx_shift_reg[0] to indicate valid start bit (so preset back to 1 after a clock cycle)
always @(posedge CLK or negedge RESETn)
begin
if (~RESETn)
rx_shift_reg <= {9{1'b1}};
else if (rx_shift_reg[0]== 1'b0) // if LSB zero, preset a clock cycle later
rx_shift_reg <= {9{1'b1}};
else if (rx_shift_reg[0] & RXD8_VALID) //ready and valid data capture
rx_shift_reg[8:0] <= {RXD8_DATA[7:0], 1'b0};
end
// Escape code mode register
always @(posedge CLK or negedge RESETn)
begin
if (~RESETn)
reg_esc_code_mode <= 1'b0;
else // Set to escape mode if ESC code is detected
if (char_received & (reg_esc_code_mode==1'b0) & (rx_shift_reg[8:1]==8'h1B))
reg_esc_code_mode <= 1'b1;
else if (char_received)
reg_esc_code_mode <= 1'b0;
end
// Aux Ctrl capture mode register
always @(posedge CLK or negedge RESETn)
begin
if (~RESETn)
reg_aux_ctrl_mode <= 1'b0;
else // Set to Aux control capture mode if ESC-0x10 sequence is detected
if (char_received & (reg_esc_code_mode==1'b1) & (rx_shift_reg[8:1]==8'h10))
reg_aux_ctrl_mode <= 1'b1;
else if (char_received)
reg_aux_ctrl_mode <= 1'b0;
end
// Aux Ctrl capture data register
always @(posedge CLK or negedge RESETn)
begin
if (~RESETn)
reg_aux_ctrl <= {8{1'b0}};
else // Capture received data to Aux control output if reg_aux_ctrl_mode is set
if (char_received & (reg_aux_ctrl_mode==1'b1))
reg_aux_ctrl <= rx_shift_reg[8:1];
end
assign AUXCTRL = reg_aux_ctrl;
// Debug tester enable
always @(posedge CLK or negedge RESETn)
begin
if (~RESETn)
reg_dbgtester_enable <= 1'b0;
else // Enable debug tester if ESC-0x11 sequence is detected
if (char_received & (reg_esc_code_mode==1'b1) & (rx_shift_reg[8:1]==8'h11))
reg_dbgtester_enable <= 1'b1;
else if (char_received & (reg_esc_code_mode==1'b1) & (rx_shift_reg[8:1]==8'h12))
// Disable debug tester if ESC-0x12 sequence is detected
reg_dbgtester_enable <= 1'b0;
end
assign DEBUG_TESTER_ENABLE = reg_dbgtester_enable;
// Message display
always @ (posedge CLK or negedge RESETn)
begin: p_tube
if (~RESETn)
begin
string_length = 7'b0;
nxt_end_simulation <= 1'b0;
for (i=0; i<= 127; i=i+1) begin
tube_string [i] = 8'h00;
end
end
else
if (char_received)
begin
if ((rx_shift_reg[8:1]==8'h1B) | reg_esc_code_mode | reg_aux_ctrl_mode )
begin
// Escape code, or in escape code mode
// Data receive can be command, aux ctrl data
// Ignore this data
end
else if (rx_shift_reg[8:1]==8'h04) // Stop simulation if 0x04 is received
nxt_end_simulation <= 1'b1;
else if ((rx_shift_reg[8:1]==8'h0d)|(rx_shift_reg[8:1]==8'h0A))
// New line
begin
tube_string[string_length] = 8'h00;
if (VERBOSE != 0)
$fwrite(mcd,"%t UART<%m>: ",$time);
for (i=0; i<= string_length; i=i+1)
begin
text_char = tube_string[i];
$fwrite(mcd,"%s",text_char);
end
$fwrite(mcd,"\n");
string_length = 7'b0;
end
else
begin
tube_string[string_length] = rx_shift_reg[8:1];
string_length = string_length + 1;
if (string_length >79) // line too long, display and clear buffer
begin
tube_string[string_length] = 8'h00;
if (VERBOSE != 0)
$fwrite(mcd,"%t UART<%m>: ",$time);
for (i=0; i<= string_length; i=i+1)
begin
text_char = tube_string[i];
$fwrite(mcd,"%s",text_char);
end
$fwrite(mcd,"\n");
string_length = 7'b0;
end
end
end
end // p_TUBE
// Delay for simulation end
always @ (posedge CLK or negedge RESETn)
begin: p_sim_end
if (~RESETn)
begin
reg_end_simulation <= 1'b0;
end
else
begin
reg_end_simulation <= nxt_end_simulation;
if (reg_end_simulation==1'b1)
begin
if (VERBOSE != 0)
$fwrite(mcd,"%t stream_capture<%m>: Test Ended\n",$time);
else
$fwrite(mcd,"Test Ended\n");
$stop;
end
end
end
assign SIMULATIONEND = nxt_end_simulation & (~reg_end_simulation);
endmodule