HDLRuby 2.0.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (224) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.travis.yml +5 -0
  4. data/.yardopts +1 -0
  5. data/Gemfile +4 -0
  6. data/HDLRuby.gemspec +36 -0
  7. data/LICENSE.txt +21 -0
  8. data/README.md +2774 -0
  9. data/README.pdf +0 -0
  10. data/Rakefile +10 -0
  11. data/bin/console +14 -0
  12. data/bin/setup +8 -0
  13. data/exe/hdrcc +3 -0
  14. data/lib/HDLRuby/alcc.rb +137 -0
  15. data/lib/HDLRuby/backend/hruby_allocator.rb +69 -0
  16. data/lib/HDLRuby/backend/hruby_c_allocator.rb +76 -0
  17. data/lib/HDLRuby/hdr_samples/adder.rb +7 -0
  18. data/lib/HDLRuby/hdr_samples/adder_assign_error.rb +11 -0
  19. data/lib/HDLRuby/hdr_samples/adder_bench.rb +27 -0
  20. data/lib/HDLRuby/hdr_samples/adder_gen.rb +7 -0
  21. data/lib/HDLRuby/hdr_samples/adder_nodef_error.rb +7 -0
  22. data/lib/HDLRuby/hdr_samples/addsub.rb +19 -0
  23. data/lib/HDLRuby/hdr_samples/addsubz.rb +22 -0
  24. data/lib/HDLRuby/hdr_samples/alu.rb +47 -0
  25. data/lib/HDLRuby/hdr_samples/calculator.rb +48 -0
  26. data/lib/HDLRuby/hdr_samples/counter_bench.rb +83 -0
  27. data/lib/HDLRuby/hdr_samples/dff.rb +9 -0
  28. data/lib/HDLRuby/hdr_samples/dff_bench.rb +66 -0
  29. data/lib/HDLRuby/hdr_samples/dff_counter.rb +20 -0
  30. data/lib/HDLRuby/hdr_samples/include.rb +14 -0
  31. data/lib/HDLRuby/hdr_samples/instance_open.rb +23 -0
  32. data/lib/HDLRuby/hdr_samples/mei8.rb +256 -0
  33. data/lib/HDLRuby/hdr_samples/mei8_bench.rb +309 -0
  34. data/lib/HDLRuby/hdr_samples/multer_gen.rb +8 -0
  35. data/lib/HDLRuby/hdr_samples/multer_seq.rb +29 -0
  36. data/lib/HDLRuby/hdr_samples/neural/a.rb +9 -0
  37. data/lib/HDLRuby/hdr_samples/neural/a_sub.rb +5 -0
  38. data/lib/HDLRuby/hdr_samples/neural/bw.rb +23 -0
  39. data/lib/HDLRuby/hdr_samples/neural/counter.rb +16 -0
  40. data/lib/HDLRuby/hdr_samples/neural/dadz.rb +9 -0
  41. data/lib/HDLRuby/hdr_samples/neural/dadz_sub.rb +4 -0
  42. data/lib/HDLRuby/hdr_samples/neural/forward.rb +153 -0
  43. data/lib/HDLRuby/hdr_samples/neural/forward_sub.rb +62 -0
  44. data/lib/HDLRuby/hdr_samples/neural/forward_sub_rand.rb +41 -0
  45. data/lib/HDLRuby/hdr_samples/neural/forward_sub_rand_typedef.rb +47 -0
  46. data/lib/HDLRuby/hdr_samples/neural/mem.rb +30 -0
  47. data/lib/HDLRuby/hdr_samples/neural/random.rb +23 -0
  48. data/lib/HDLRuby/hdr_samples/neural/selector.rb +29 -0
  49. data/lib/HDLRuby/hdr_samples/neural/sigmoid.rb +20 -0
  50. data/lib/HDLRuby/hdr_samples/neural/z.rb +33 -0
  51. data/lib/HDLRuby/hdr_samples/prog.obj +256 -0
  52. data/lib/HDLRuby/hdr_samples/ram.rb +18 -0
  53. data/lib/HDLRuby/hdr_samples/register_with_code_bench.rb +98 -0
  54. data/lib/HDLRuby/hdr_samples/rom.rb +10 -0
  55. data/lib/HDLRuby/hdr_samples/struct.rb +14 -0
  56. data/lib/HDLRuby/hdr_samples/sumprod.rb +29 -0
  57. data/lib/HDLRuby/hdr_samples/sw_encrypt_bench.rb +103 -0
  58. data/lib/HDLRuby/hdr_samples/sw_encrypt_cpu_bench.rb +261 -0
  59. data/lib/HDLRuby/hdr_samples/sw_encrypt_cpusim_bench.rb +302 -0
  60. data/lib/HDLRuby/hdr_samples/system_open.rb +11 -0
  61. data/lib/HDLRuby/hdr_samples/tuple.rb +16 -0
  62. data/lib/HDLRuby/hdr_samples/with_channel.rb +118 -0
  63. data/lib/HDLRuby/hdr_samples/with_class.rb +199 -0
  64. data/lib/HDLRuby/hdr_samples/with_decoder.rb +17 -0
  65. data/lib/HDLRuby/hdr_samples/with_fsm.rb +34 -0
  66. data/lib/HDLRuby/hdr_samples/with_reconf.rb +103 -0
  67. data/lib/HDLRuby/hdrcc.rb +623 -0
  68. data/lib/HDLRuby/high_samples/_adder_fault.rb +23 -0
  69. data/lib/HDLRuby/high_samples/_generic_transmission2.rb +146 -0
  70. data/lib/HDLRuby/high_samples/adder.rb +21 -0
  71. data/lib/HDLRuby/high_samples/adder_common_errors.rb +25 -0
  72. data/lib/HDLRuby/high_samples/addsub.rb +33 -0
  73. data/lib/HDLRuby/high_samples/addsubz.rb +37 -0
  74. data/lib/HDLRuby/high_samples/after.rb +28 -0
  75. data/lib/HDLRuby/high_samples/all_signals.rb +29 -0
  76. data/lib/HDLRuby/high_samples/alu.rb +61 -0
  77. data/lib/HDLRuby/high_samples/anonymous.rb +41 -0
  78. data/lib/HDLRuby/high_samples/before.rb +28 -0
  79. data/lib/HDLRuby/high_samples/blockblock.rb +26 -0
  80. data/lib/HDLRuby/high_samples/bugs/dadz.rb +22 -0
  81. data/lib/HDLRuby/high_samples/bugs/misample_instan.rb +20 -0
  82. data/lib/HDLRuby/high_samples/bugs/misample_updown.rb +22 -0
  83. data/lib/HDLRuby/high_samples/bugs/sample_add.rb +16 -0
  84. data/lib/HDLRuby/high_samples/bugs/sample_barrel.rb +13 -0
  85. data/lib/HDLRuby/high_samples/bugs/sample_daice.rb +57 -0
  86. data/lib/HDLRuby/high_samples/bugs/sample_kumiawase.rb +52 -0
  87. data/lib/HDLRuby/high_samples/bugs/sample_multi.rb +18 -0
  88. data/lib/HDLRuby/high_samples/bugs/sample_sub.rb +14 -0
  89. data/lib/HDLRuby/high_samples/bugs/z2.rb +32 -0
  90. data/lib/HDLRuby/high_samples/case.rb +32 -0
  91. data/lib/HDLRuby/high_samples/case2.rb +30 -0
  92. data/lib/HDLRuby/high_samples/change.rb +23 -0
  93. data/lib/HDLRuby/high_samples/clocks.rb +35 -0
  94. data/lib/HDLRuby/high_samples/comparer.rb +21 -0
  95. data/lib/HDLRuby/high_samples/conditionals.rb +29 -0
  96. data/lib/HDLRuby/high_samples/dff.rb +23 -0
  97. data/lib/HDLRuby/high_samples/each.rb +28 -0
  98. data/lib/HDLRuby/high_samples/exporter.rb +42 -0
  99. data/lib/HDLRuby/high_samples/functions.rb +60 -0
  100. data/lib/HDLRuby/high_samples/if_seq.rb +26 -0
  101. data/lib/HDLRuby/high_samples/inherit_as_dff.rb +32 -0
  102. data/lib/HDLRuby/high_samples/inherit_dff.rb +36 -0
  103. data/lib/HDLRuby/high_samples/instance.rb +37 -0
  104. data/lib/HDLRuby/high_samples/memory.rb +64 -0
  105. data/lib/HDLRuby/high_samples/multi_file.rb +27 -0
  106. data/lib/HDLRuby/high_samples/overload.rb +32 -0
  107. data/lib/HDLRuby/high_samples/paper_after.rb +49 -0
  108. data/lib/HDLRuby/high_samples/ram.rb +27 -0
  109. data/lib/HDLRuby/high_samples/registers.rb +139 -0
  110. data/lib/HDLRuby/high_samples/rom.rb +23 -0
  111. data/lib/HDLRuby/high_samples/scopeblockname.rb +37 -0
  112. data/lib/HDLRuby/high_samples/scopescope.rb +26 -0
  113. data/lib/HDLRuby/high_samples/shift.rb +31 -0
  114. data/lib/HDLRuby/high_samples/shift2.rb +40 -0
  115. data/lib/HDLRuby/high_samples/simple_instance.rb +31 -0
  116. data/lib/HDLRuby/high_samples/test_all.sh +10 -0
  117. data/lib/HDLRuby/high_samples/typedef.rb +24 -0
  118. data/lib/HDLRuby/high_samples/values.rb +70 -0
  119. data/lib/HDLRuby/high_samples/vector.rb +22 -0
  120. data/lib/HDLRuby/high_samples/with_decoder.rb +30 -0
  121. data/lib/HDLRuby/high_samples/with_fsm.rb +46 -0
  122. data/lib/HDLRuby/high_samples/with_pipe.rb +43 -0
  123. data/lib/HDLRuby/high_samples/with_seq.rb +25 -0
  124. data/lib/HDLRuby/hruby_bstr.rb +1085 -0
  125. data/lib/HDLRuby/hruby_check.rb +317 -0
  126. data/lib/HDLRuby/hruby_db.rb +432 -0
  127. data/lib/HDLRuby/hruby_error.rb +44 -0
  128. data/lib/HDLRuby/hruby_high.rb +4103 -0
  129. data/lib/HDLRuby/hruby_low.rb +4735 -0
  130. data/lib/HDLRuby/hruby_low2c.rb +1986 -0
  131. data/lib/HDLRuby/hruby_low2high.rb +738 -0
  132. data/lib/HDLRuby/hruby_low2seq.rb +248 -0
  133. data/lib/HDLRuby/hruby_low2sym.rb +126 -0
  134. data/lib/HDLRuby/hruby_low2vhd.rb +1437 -0
  135. data/lib/HDLRuby/hruby_low_bool2select.rb +295 -0
  136. data/lib/HDLRuby/hruby_low_cleanup.rb +193 -0
  137. data/lib/HDLRuby/hruby_low_fix_types.rb +437 -0
  138. data/lib/HDLRuby/hruby_low_mutable.rb +1803 -0
  139. data/lib/HDLRuby/hruby_low_resolve.rb +165 -0
  140. data/lib/HDLRuby/hruby_low_skeleton.rb +129 -0
  141. data/lib/HDLRuby/hruby_low_with_bool.rb +141 -0
  142. data/lib/HDLRuby/hruby_low_with_port.rb +167 -0
  143. data/lib/HDLRuby/hruby_low_with_var.rb +302 -0
  144. data/lib/HDLRuby/hruby_low_without_bit2vector.rb +88 -0
  145. data/lib/HDLRuby/hruby_low_without_concat.rb +162 -0
  146. data/lib/HDLRuby/hruby_low_without_connection.rb +113 -0
  147. data/lib/HDLRuby/hruby_low_without_namespace.rb +718 -0
  148. data/lib/HDLRuby/hruby_low_without_outread.rb +107 -0
  149. data/lib/HDLRuby/hruby_low_without_select.rb +206 -0
  150. data/lib/HDLRuby/hruby_serializer.rb +398 -0
  151. data/lib/HDLRuby/hruby_tools.rb +37 -0
  152. data/lib/HDLRuby/hruby_types.rb +239 -0
  153. data/lib/HDLRuby/hruby_values.rb +64 -0
  154. data/lib/HDLRuby/hruby_verilog.rb +1888 -0
  155. data/lib/HDLRuby/hruby_verilog_name.rb +52 -0
  156. data/lib/HDLRuby/low_samples/adder.yaml +97 -0
  157. data/lib/HDLRuby/low_samples/after.yaml +228 -0
  158. data/lib/HDLRuby/low_samples/before.yaml +223 -0
  159. data/lib/HDLRuby/low_samples/blockblock.yaml +48 -0
  160. data/lib/HDLRuby/low_samples/bugs/sample_add.yaml +97 -0
  161. data/lib/HDLRuby/low_samples/bugs/sample_daice.yaml +444 -0
  162. data/lib/HDLRuby/low_samples/bugs/sample_kumiawase.yaml +332 -0
  163. data/lib/HDLRuby/low_samples/bugs/sample_sub.yaml +97 -0
  164. data/lib/HDLRuby/low_samples/bugs/seqpar.yaml +184 -0
  165. data/lib/HDLRuby/low_samples/case.yaml +327 -0
  166. data/lib/HDLRuby/low_samples/change.yaml +135 -0
  167. data/lib/HDLRuby/low_samples/clocks.yaml +674 -0
  168. data/lib/HDLRuby/low_samples/cloner.rb +22 -0
  169. data/lib/HDLRuby/low_samples/comparer.yaml +85 -0
  170. data/lib/HDLRuby/low_samples/conditionals.yaml +133 -0
  171. data/lib/HDLRuby/low_samples/dff.yaml +107 -0
  172. data/lib/HDLRuby/low_samples/each.yaml +1328 -0
  173. data/lib/HDLRuby/low_samples/exporter.yaml +226 -0
  174. data/lib/HDLRuby/low_samples/functions.yaml +298 -0
  175. data/lib/HDLRuby/low_samples/generic_transmission.yaml +597 -0
  176. data/lib/HDLRuby/low_samples/inherit_as_dff.yaml +125 -0
  177. data/lib/HDLRuby/low_samples/inherit_dff.yaml +107 -0
  178. data/lib/HDLRuby/low_samples/load_yaml.rb +11 -0
  179. data/lib/HDLRuby/low_samples/memory.yaml +678 -0
  180. data/lib/HDLRuby/low_samples/namespace_extractor.rb +23 -0
  181. data/lib/HDLRuby/low_samples/overload.yaml +226 -0
  182. data/lib/HDLRuby/low_samples/paper_after.yaml +431 -0
  183. data/lib/HDLRuby/low_samples/port_maker.rb +14 -0
  184. data/lib/HDLRuby/low_samples/ram.yaml +207 -0
  185. data/lib/HDLRuby/low_samples/registers.yaml +228 -0
  186. data/lib/HDLRuby/low_samples/rom.yaml +2950 -0
  187. data/lib/HDLRuby/low_samples/shift.yaml +230 -0
  188. data/lib/HDLRuby/low_samples/shift2.yaml +2095 -0
  189. data/lib/HDLRuby/low_samples/simple_instance.yaml +102 -0
  190. data/lib/HDLRuby/low_samples/test_all.sh +43 -0
  191. data/lib/HDLRuby/low_samples/typedef.yaml +115 -0
  192. data/lib/HDLRuby/low_samples/values.yaml +577 -0
  193. data/lib/HDLRuby/low_samples/variable_maker.rb +14 -0
  194. data/lib/HDLRuby/low_samples/vector.yaml +56 -0
  195. data/lib/HDLRuby/low_samples/with_seq.yaml +188 -0
  196. data/lib/HDLRuby/low_samples/yaml2hdr.rb +10 -0
  197. data/lib/HDLRuby/low_samples/yaml2vhd.rb +19 -0
  198. data/lib/HDLRuby/sim/Makefile +19 -0
  199. data/lib/HDLRuby/sim/hruby_sim.h +590 -0
  200. data/lib/HDLRuby/sim/hruby_sim_calc.c +2362 -0
  201. data/lib/HDLRuby/sim/hruby_sim_core.c +589 -0
  202. data/lib/HDLRuby/sim/hruby_sim_list.c +93 -0
  203. data/lib/HDLRuby/sim/hruby_sim_vizualize.c +91 -0
  204. data/lib/HDLRuby/sim/hruby_value_pool.c +64 -0
  205. data/lib/HDLRuby/std/channel.rb +354 -0
  206. data/lib/HDLRuby/std/clocks.rb +165 -0
  207. data/lib/HDLRuby/std/counters.rb +82 -0
  208. data/lib/HDLRuby/std/decoder.rb +214 -0
  209. data/lib/HDLRuby/std/fsm.rb +516 -0
  210. data/lib/HDLRuby/std/pipeline.rb +220 -0
  211. data/lib/HDLRuby/std/reconf.rb +309 -0
  212. data/lib/HDLRuby/test_hruby_bstr.rb +2259 -0
  213. data/lib/HDLRuby/test_hruby_high.rb +594 -0
  214. data/lib/HDLRuby/test_hruby_high_low.rb +99 -0
  215. data/lib/HDLRuby/test_hruby_low.rb +934 -0
  216. data/lib/HDLRuby/v_samples/adder.v +10 -0
  217. data/lib/HDLRuby/v_samples/dff.v +12 -0
  218. data/lib/HDLRuby/v_samples/ram.v +20 -0
  219. data/lib/HDLRuby/v_samples/rom.v +270 -0
  220. data/lib/HDLRuby/version.rb +3 -0
  221. data/lib/HDLRuby.rb +11 -0
  222. data/makedoc +1 -0
  223. data/metadata.yaml +4 -0
  224. metadata +299 -0
@@ -0,0 +1,97 @@
1
+ ---
2
+ Type:
3
+ name: void
4
+ ---
5
+ Type:
6
+ name: bit
7
+ ---
8
+ SystemT:
9
+ name: addI::T_
10
+ inputs:
11
+ - SignalI:
12
+ name: ina
13
+ type:
14
+ TypeVector:
15
+ name: ''
16
+ base: bit
17
+ range:
18
+ - 15
19
+ - 0
20
+ - SignalI:
21
+ name: inb
22
+ type:
23
+ TypeVector:
24
+ name: ''
25
+ base: bit
26
+ range:
27
+ - 15
28
+ - 0
29
+ outputs:
30
+ - SignalI:
31
+ name: result
32
+ type:
33
+ TypeVector:
34
+ name: ''
35
+ base: bit
36
+ range:
37
+ - 16
38
+ - 0
39
+ inouts: []
40
+ scope:
41
+ Scope:
42
+ name: ''
43
+ scopes: []
44
+ inners: []
45
+ systemIs: []
46
+ connections:
47
+ - Connection:
48
+ left:
49
+ RefName:
50
+ type:
51
+ TypeVector:
52
+ name: ''
53
+ base: bit
54
+ range:
55
+ - 16
56
+ - 0
57
+ ref:
58
+ RefThis:
59
+ type: void
60
+ name: result
61
+ right:
62
+ Binary:
63
+ type:
64
+ TypeVector:
65
+ name: ''
66
+ base: bit
67
+ range:
68
+ - 16
69
+ - 0
70
+ operator: "+"
71
+ left:
72
+ RefName:
73
+ type:
74
+ TypeVector:
75
+ name: ''
76
+ base: bit
77
+ range:
78
+ - 15
79
+ - 0
80
+ ref:
81
+ RefThis:
82
+ type: void
83
+ name: ina
84
+ right:
85
+ RefName:
86
+ type:
87
+ TypeVector:
88
+ name: ''
89
+ base: bit
90
+ range:
91
+ - 15
92
+ - 0
93
+ ref:
94
+ RefThis:
95
+ type: void
96
+ name: inb
97
+ behaviors: []
@@ -0,0 +1,444 @@
1
+ ---
2
+ Type:
3
+ name: bit
4
+ ---
5
+ SystemT:
6
+ name: saikoroI::T_
7
+ inputs:
8
+ - SignalI:
9
+ name: ck
10
+ type: bit
11
+ - SignalI:
12
+ name: reset
13
+ type: bit
14
+ - SignalI:
15
+ name: enable
16
+ type: bit
17
+ outputs:
18
+ - SignalI:
19
+ name: lamp
20
+ type:
21
+ TypeVector:
22
+ name: ''
23
+ base: bit
24
+ range:
25
+ - 6
26
+ - 0
27
+ inouts: []
28
+ scope:
29
+ Scope:
30
+ scopes: []
31
+ inners:
32
+ - SignalI:
33
+ name: cnt
34
+ type:
35
+ TypeVector:
36
+ name: ''
37
+ base: bit
38
+ range:
39
+ - 2
40
+ - 0
41
+ systemIs: []
42
+ connections: []
43
+ behaviors:
44
+ - Behavior:
45
+ events:
46
+ - Event:
47
+ type: posedge
48
+ ref:
49
+ RefName:
50
+ ref:
51
+ RefThis: {}
52
+ name: ck
53
+ - Event:
54
+ type: posedge
55
+ ref:
56
+ RefName:
57
+ ref:
58
+ RefThis: {}
59
+ name: reset
60
+ block:
61
+ Block:
62
+ mode: par
63
+ inners: []
64
+ statements:
65
+ - If:
66
+ condition:
67
+ Binary:
68
+ operator: "=="
69
+ left:
70
+ RefName:
71
+ ref:
72
+ RefThis: {}
73
+ name: reset
74
+ right:
75
+ Value:
76
+ type:
77
+ TypeVector:
78
+ name: ''
79
+ base: bit
80
+ range:
81
+ - 0
82
+ - 0
83
+ content:
84
+ BitString:
85
+ str: '1'
86
+ 'yes':
87
+ Block:
88
+ mode: par
89
+ inners: []
90
+ statements:
91
+ - Transmit:
92
+ left:
93
+ RefName:
94
+ ref:
95
+ RefThis: {}
96
+ name: cnt
97
+ right:
98
+ Value:
99
+ type:
100
+ TypeVector:
101
+ name: ''
102
+ base: bit
103
+ range:
104
+ - 2
105
+ - 0
106
+ content:
107
+ BitString:
108
+ str: '0001'
109
+ 'no':
110
+ noifs:
111
+ - - Binary:
112
+ operator: "=="
113
+ left:
114
+ RefName:
115
+ ref:
116
+ RefThis: {}
117
+ name: enable
118
+ right:
119
+ Value:
120
+ type:
121
+ TypeVector:
122
+ name: ''
123
+ base: bit
124
+ range:
125
+ - 0
126
+ - 0
127
+ content:
128
+ BitString:
129
+ str: '1'
130
+ - Block:
131
+ mode: par
132
+ inners: []
133
+ statements:
134
+ - If:
135
+ condition:
136
+ Binary:
137
+ operator: "<="
138
+ left:
139
+ RefName:
140
+ ref:
141
+ RefThis: {}
142
+ name: cnt
143
+ right:
144
+ Value:
145
+ type:
146
+ TypeVector:
147
+ name: ''
148
+ base: bit
149
+ range:
150
+ - 2
151
+ - 0
152
+ content:
153
+ BitString:
154
+ str: '0110'
155
+ 'yes':
156
+ Block:
157
+ mode: par
158
+ inners: []
159
+ statements:
160
+ - Transmit:
161
+ left:
162
+ RefName:
163
+ ref:
164
+ RefThis: {}
165
+ name: cnt
166
+ right:
167
+ Value:
168
+ type:
169
+ TypeVector:
170
+ name: ''
171
+ base: bit
172
+ range:
173
+ - 2
174
+ - 0
175
+ content:
176
+ BitString:
177
+ str: '0001'
178
+ 'no':
179
+ Block:
180
+ mode: par
181
+ inners: []
182
+ statements:
183
+ - Transmit:
184
+ left:
185
+ RefName:
186
+ ref:
187
+ RefThis: {}
188
+ name: cnt
189
+ right:
190
+ Binary:
191
+ operator: "+"
192
+ left:
193
+ RefName:
194
+ ref:
195
+ RefThis: {}
196
+ name: cnt
197
+ right:
198
+ Value:
199
+ type:
200
+ TypeVector:
201
+ name: ''
202
+ base: bit
203
+ range:
204
+ - 2
205
+ - 0
206
+ content:
207
+ BitString:
208
+ str: '0001'
209
+ noifs: []
210
+ - Behavior:
211
+ events: []
212
+ block:
213
+ Block:
214
+ mode: par
215
+ inners: []
216
+ statements:
217
+ - Case:
218
+ value:
219
+ RefName:
220
+ ref:
221
+ RefThis: {}
222
+ name: cnt
223
+ whens:
224
+ - - Value:
225
+ type:
226
+ TypeVector:
227
+ name: ''
228
+ base: bit
229
+ range:
230
+ - 2
231
+ - 0
232
+ content:
233
+ BitString:
234
+ str: '0001'
235
+ - Block:
236
+ mode: par
237
+ inners: []
238
+ statements:
239
+ - Transmit:
240
+ left:
241
+ RefName:
242
+ ref:
243
+ RefThis: {}
244
+ name: lamp
245
+ right:
246
+ Value:
247
+ type:
248
+ TypeVector:
249
+ name: ''
250
+ base: bit
251
+ range:
252
+ - 6
253
+ - 0
254
+ content:
255
+ BitString:
256
+ str: '0001000'
257
+ - - Value:
258
+ type:
259
+ TypeVector:
260
+ name: ''
261
+ base: bit
262
+ range:
263
+ - 2
264
+ - 0
265
+ content:
266
+ BitString:
267
+ str: '0010'
268
+ - Block:
269
+ mode: par
270
+ inners: []
271
+ statements:
272
+ - Transmit:
273
+ left:
274
+ RefName:
275
+ ref:
276
+ RefThis: {}
277
+ name: lamp
278
+ right:
279
+ Value:
280
+ type:
281
+ TypeVector:
282
+ name: ''
283
+ base: bit
284
+ range:
285
+ - 6
286
+ - 0
287
+ content:
288
+ BitString:
289
+ str: '1000001'
290
+ - - Value:
291
+ type:
292
+ TypeVector:
293
+ name: ''
294
+ base: bit
295
+ range:
296
+ - 2
297
+ - 0
298
+ content:
299
+ BitString:
300
+ str: '0011'
301
+ - Block:
302
+ mode: par
303
+ inners: []
304
+ statements:
305
+ - Transmit:
306
+ left:
307
+ RefName:
308
+ ref:
309
+ RefThis: {}
310
+ name: lamp
311
+ right:
312
+ Value:
313
+ type:
314
+ TypeVector:
315
+ name: ''
316
+ base: bit
317
+ range:
318
+ - 6
319
+ - 0
320
+ content:
321
+ BitString:
322
+ str: '0011100'
323
+ - - Value:
324
+ type:
325
+ TypeVector:
326
+ name: ''
327
+ base: bit
328
+ range:
329
+ - 2
330
+ - 0
331
+ content:
332
+ BitString:
333
+ str: '0100'
334
+ - Block:
335
+ mode: par
336
+ inners: []
337
+ statements:
338
+ - Transmit:
339
+ left:
340
+ RefName:
341
+ ref:
342
+ RefThis: {}
343
+ name: lamp
344
+ right:
345
+ Value:
346
+ type:
347
+ TypeVector:
348
+ name: ''
349
+ base: bit
350
+ range:
351
+ - 6
352
+ - 0
353
+ content:
354
+ BitString:
355
+ str: '1010101'
356
+ - - Value:
357
+ type:
358
+ TypeVector:
359
+ name: ''
360
+ base: bit
361
+ range:
362
+ - 2
363
+ - 0
364
+ content:
365
+ BitString:
366
+ str: '0101'
367
+ - Block:
368
+ mode: par
369
+ inners: []
370
+ statements:
371
+ - Transmit:
372
+ left:
373
+ RefName:
374
+ ref:
375
+ RefThis: {}
376
+ name: lamp
377
+ right:
378
+ Value:
379
+ type:
380
+ TypeVector:
381
+ name: ''
382
+ base: bit
383
+ range:
384
+ - 6
385
+ - 0
386
+ content:
387
+ BitString:
388
+ str: '1011101'
389
+ - - Value:
390
+ type:
391
+ TypeVector:
392
+ name: ''
393
+ base: bit
394
+ range:
395
+ - 2
396
+ - 0
397
+ content:
398
+ BitString:
399
+ str: '0110'
400
+ - Block:
401
+ mode: par
402
+ inners: []
403
+ statements:
404
+ - Transmit:
405
+ left:
406
+ RefName:
407
+ ref:
408
+ RefThis: {}
409
+ name: lamp
410
+ right:
411
+ Value:
412
+ type:
413
+ TypeVector:
414
+ name: ''
415
+ base: bit
416
+ range:
417
+ - 6
418
+ - 0
419
+ content:
420
+ BitString:
421
+ str: '1110111'
422
+ default:
423
+ Block:
424
+ mode: par
425
+ inners: []
426
+ statements:
427
+ - Transmit:
428
+ left:
429
+ RefName:
430
+ ref:
431
+ RefThis: {}
432
+ name: lamp
433
+ right:
434
+ Value:
435
+ type:
436
+ TypeVector:
437
+ name: ''
438
+ base: bit
439
+ range:
440
+ - 6
441
+ - 0
442
+ content:
443
+ BitString:
444
+ str: xxxxxxx